Pc-Trace

<< 2024年5月 >>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31






Pc-Trace
PC-Trace

< next 2017年2月の記事
>>2017年2月の記事一覧

3Dプリンター 「Sprinter」 から 「Merlin」 へ

破損して到着した「LCD」を引き出しにそのまま放置してあったため、だんだんと手狭になり、利用する方向に梶を切った。

まずは基板がショートしない程度の簡易ケースをプリント。
次にこれまで利用してきた「Sprinter」から、カナ表示をサポートした「Merlin」へ「Firmware」の載せ換え。

「Merlin」での変更箇所が多くて、チェック漏れに気づかずホームポジションへ動作させた瞬間、"ブヒーン!"と言う、当てつけがましい異常音とともにZ軸とX軸が高速で移動し、ストップするなどのトラブルも複数回。

現在、無事に作業を終え、プリントが再開された。

【LCDパワーON】


【無事にカナで表示された】


LCDに表示されるカナメニューの一覧を下に掲げてみた。
結構あるもんだと関心すること頻り。

----------------------------------------------------
// "カードガソウニュウサレマシタ" ("Card inserted")
// "カードガアリマセン" ("Card removed")
// Max length 8 characters
// "メイン" ("Main")
// "ジドウカイシ" ("Autostart")
// "モーターデンゲン オフ" ("Disable steppers")
// "ゲンテンフッキ" ("Auto home")
// "Xジク ゲンテンフッキ" ("Home X")
// "Yジク ゲンテンフッキ" ("Home Y")
// "Zジク ゲンテンフッキ" ("Home Z")
// "ゲンテンフッキチュウ" ("Homing XYZ")
// "レベリングカイシ" ("Click to Begin")
// "ツギノソクテイテンヘ" ("Next Point")
// "レベリングカンリョウ" ("Leveling Done!")
// "トリヤメ" ("Cancel")
// "キジュンオフセットセッテイ" ("Set home offsets")
// "オフセットガテキヨウサレマシタ" ("Offsets applied")
// "キジュンセット" ("Set origin")
// "PLA ヨネツ" ("Preheat PLA")

// "PLA スベテヨネツ" (" All")
// "PLA ベッドヨネツ" (" Bed")
// "セッテイ" (" conf")
// "ABS ヨネツ" ("Preheat ABS")

// "ABS スベテヨネツ" (" All")
// "ABS ベッドヨネツ" (" Bed")
// "セッテイ" (" conf")
// "カネツテイシ" ("Cooldown")
// "デンゲン オン" ("Switch power on")
// "デンゲン オフ" ("Switch power off")
// "オシダシ" ("Extrude")
// "ヒキコミセッテイ" ("Retract")
// "ジクイドウ" ("Move axis")
// "ベッドレベリング" ("Level bed")
// "Xジク イドウ" ("Move X")
// "Yジク イドウ" ("Move Y")
// "Zジク イドウ" ("Move Z")
// "エクストルーダー" ("Extruder")
// "0.1mm イドウ" ("Move 0.1mm")
// " 1mm イドウ" ("Move 1mm")
// " 10mm イドウ" ("Move 10mm")
// "ソクド" ("Speed")
// "Zオフセット" ("Bed Z")
// "ノズル" ("Nozzle")
// "ベッド" ("Bed")
// "ファンソクド" ("Fan speed")
// "トシュツリョウ" ("Flow")
// "セイギョ" ("Control")
// " サイテイ" (" Min")
// " サイコウ" (" Max")
// " ファクター" (" Fact")

// "ジドウオンドセイギョ" ("Autotemp")

// "ジドウオンド" ("Autotemp")

// "オン " ("On ")
// "オフ " ("Off")




// "センタク" ("Select")

// "カソクド mm/s2" ("Accel")
// "Xジク ヤクド mm/s" ("Vx-jerk")
// "Yジク ヤクド mm/s" ("Vy-jerk")
// "Zジク ヤクド mm/s" ("Vz-jerk")
// "エクストルーダー ヤクド" ("Ve-jerk")
// "サイダイオクリソクド " ("Vmax ")
// "サイショウオクリソクド" ("Vmin")
// "サイショウイドウソクド" ("VTrav min")
// "サイダイカソクド " ("Amax ")

// "カソクド" ("Accel")
// "XYジク ヤクド" ("Vx-jerk")
// "XYジク ヤクド" ("Vy-jerk")
// "Zジク ヤクド" ("Vz-jerk")
// "E ヤクド" ("Ve-jerk")
// "maxオクリソクド" ("Vmax ")
// "minオクリソクド" ("Vmin")
// "minイドウソクド" ("VTrav min")
// "maxカソク " ("Amax ")

// "ヒキコミカソクド" ("A-retract")
// "イドウカソクド" ("A-travel")
// "オンド" ("Temperature")
// "ウゴキセッテイ" ("Motion")
// "フィラメント" ("Filament")


// "フィラメントチョッケイ" ("Fil. Dia.")

// "フィラメントケイ" ("Fil. Dia.")

// "LCDコントラスト" ("LCD contrast")
// "メモリヘカクノウ" ("Store memory")
// "メモリカラヨミコミ" ("Load memory")
// "セッテイリセット" ("Restore failsafe")
// "リフレッシュ" ("Refresh")
// "ジョウホウガメン" ("Info screen")
// "ジュンビセッテイ" ("Prepare")
// "チョウセイ" ("Tune")
// "イチジテイシ" ("Pause print")
// "プリントサイカイ" ("Resume print")
// "プリントテイシ" ("Stop print")
// "SDカードカラプリント" ("Print from SD")
// "SDカードガアリマセン" ("No SD card")
// "キュウシ" ("Sleep...")
// "シバラクオマチクダサイ" ("Wait for user...")
// "プリントサイカイ" ("Resuming print")
// "プリントガチュウシサレマシタ" ("Print aborted")
// "ウゴキマセン" ("No move.")
// "ヒジョウテイシ" ("KILLED. ")
// "テイシシマシタ" ("STOPPED. ")

// "ヒキコミリョウ mm" ("Retract mm")
// "ヒキコミリョウS mm" ("Swap Re.mm")
// "ヒキコミソクド mm/s" ("Retract V")
// "ノズルタイヒ mm" ("Hop mm")
// "ホショウリョウ mm" ("UnRet +mm")
// "ホショウリョウS mm" ("S UnRet+mm")
// "ホショウソクド mm/s" ("UnRet V")

// "ヒキコミリョウ" ("Retract mm")
// "ヒキコミリョウS" ("Swap Re.mm")
// "ヒキコミソクド" ("Retract V")
// "ノズルタイヒ" ("Hop mm")
// "ホショウリョウ" ("UnRet +mm")
// "ホショウリョウS" ("S UnRet+mm")
// "ホショウソクド" ("UnRet V")

// "ジドウヒキコミ" ("AutoRetr.")
// "フィラメントコウカン" ("Change filament")
// "SDカードサイヨミコミ" ("Init. SD card")
// "SDカードコウカン" ("Change SD card")
// "Zプローブ ベッドガイ" ("Z probe out. bed")

// "BLTouch ジコシンダン" ("BLTouch Self-Test")

// "BLTouch セルフテスト" ("BLTouch Self-Test")

// "BLTouch リセット" ("Reset BLTouch")
// "サキニ" ("Home") // Used as MSG_HOME " " MSG_X MSG_Y MSG_Z " " MSG_FIRST

// "ヲフッキサセテクダサイ" ("first")

// "ヲフッキサセヨ" ("first")

// "Zオフセット" ("Z Offset")
// "Xジク ビドウ" ("Babystep X")
// "Yジク ビドウ" ("Babystep Y")
// "Zジク ビドウ" ("Babystep Z")

// "イドウゲンカイケンチキノウ" ("Endstop abort")

// "イドウゲンカイケンチ" ("Endstop abort")

// "カネツシッパイ" ("Heating failed")
// "エラー:ジョウチョウサーミスターキノウ" ("Err: REDUNDANT TEMP")

// "エラー:ジョウチョウサーミスタ" ("Err: REDUNDANT TEMP")

// "ネツボウソウ" ("THERMAL RUNAWAY")
// "エラー:サイコウオンチョウカ" ("Err: MAXTEMP")
// "エラー:サイテイオンミマン" ("Err: MINTEMP")

// "エラー:ベッド サイコウオンチョウカ" ("Err: MAXTEMP BED")
// "エラー:ベッド サイテイオンミマン" ("Err: MINTEMP BED")

// "エラー:ベッド サイコウオン" ("Err: MAXTEMP BED")
// "エラー:ベッド サイテイオン" ("Err: MINTEMP BED")
// "サキニ XY ヲフッキサセテクダサイ" or "サキニ XY ヲフッキサセヨ" ("G28 Z Forbidden")
// "プリンターハテイシシマシタ" ("PRINTER HALTED")
// "リセットシテクダサイ" ("Please reset")
// One character only
// One character only
// One character only
// "カネツチュウ" ("Heating...")
// "カネツカンリョウ" ("Heating done.")
// "ベッド カネツチュウ" ("Bed Heating.")
// "ベッド カネツカンリョウ" ("Bed done.")
// "デルタ コウセイ" ("Delta Calibration")
// "Xジク コウセイ" ("Calibrate X")
// "Yジク コウセイ" ("Calibrate Y")
// "Zジク コウセイ" ("Calibrate Z")
// "チュウシン コウセイ" ("Calibrate Center")
// "コノプリンターニツイテ" ("About Printer")
// "プリンタージョウホウ" ("Printer Info")
// "プリントジョウキョウ" ("Printer Stats")
// "セイギョケイジョウホウ" ("Board Info")
// "サーミスター" ("Thermistors")
// "エクストルーダースウ" ("Extruders")
// "ボーレート" ("Baud")
// "プロトコル" ("Protocol")
// "キョウタイナイショウメイ オン" ("Case light on")
// "キョウタイナイショウメイ オフ" ("Case light off")
// "プリントスウ" ("Print Count")
// "カンリョウスウ" ("Completed")
// "プリントジカンルイケイ" ("Total print time")
// "サイチョウプリントジカン" ("Longest job time")

// "フィラメントシヨウリョウルイケイ" ("Extruded total")

// "フィラメントソウシヨウリョウ" ("Extruded")

// "セッテイサイテイオン" ("Min Temp")
// "セッテイサイコウオン" ("Max Temp")

// "デンゲンシュベツ" ("Power Supply")

// "デンゲン" ("Power Supply")

// "モータークドウリョク" ("Drive Strength")

// "DACシュツリョク %" ("Driver %")

// "DACシュツリョク" ("Driver %")

// "メモリヘカクノウ" ("DAC EEPROM Write")
// "フィラメントコウカン" ("CHANGE FILAMENT")
// "ドウサヲセンタクシテクダサイ" ("CHANGE OPTIONS:")
// "サラニオシダス" ("Extrude more")
// "プリントサイカイ" ("Resume print")



// "コウカンヲカイシシマス" ("Wait for start")
// "シバラクオマチクダサイ" ("of the filament")
// "フィラメントヌキダシチュウ" ("Wait for")
// "シバラクオマチクダサイ" ("filament unload")
// "フィラメントヲソウニュウシ," ("Insert filament")
// "クリックスルトゾッコウシマス" ("and press button")
// "フィラメントソウテンチュウ" ("Wait for")
// "シバラクオマチクダサイ" ("filament load")
// "フィラメントオシダシチュウ" ("Wait for")
// "シバラクオマチクダサイ" ("filament extrude")
// "プリントヲサイカイシマス" ("Wait for print")
// "シバラクオマチクダサイ" ("to resume")


// "コウカンヲカイシシマス" ("Please wait...")
// "フィラメントヌキダシチュウ" ("Ejecting...")
// "ソウニュウシ,クリックシテクダサイ" ("Insert and Click")

// "ソウニュウシ,クリックセヨ" ("Insert and Click")
// "フィラメントソウテンチュウ" ("Loading...")
// "フィラメントオシダシチュウ" ("Extruding...")
// "プリントヲサイカイシマス" ("Resuming...")
----------------------------------------------------


「Arduino UNO」で、GRBLコントローラアプリケーションを試す その3

アプリの準備が整ったところで「jwwcad」のデータから、早速「NC」データの作成にとりかかる。

「NCVC」のヘルプから、データ生成に必要な項目のみ設定する事に。
あくまで「GRBL」のコントロール・アプリケーションでシミュレートできる事が目的。

【jwwcadでの注意事項】
・・と言っても2つだけ。

1..原点を設定するレイヤーに「NCVC」で設定した名前を付ける。
2..図面を書くレイヤーに「NCVC」で設定した名前を付ける。

【最初に「jwwcad」の、2つのレイヤー名を設定しておく】
※少なくともトレース(切削)対象になる図面レイヤーだけでも名前を設定しておく必要がある。


【今回使う、猫戸のモッコを三つ葉でデザインした図面。すでに書き込みレイヤーとして2に移動してある】

サイズと尺度設定が終了したら、そのまま「jww」の属性で図面を保存。


【「NCVC」を起動して「開く」メニューから「jww」データ読み込む】
読み込んだ直後の画面。





ここで「NCVC」の設定を2つだけ。
「オプション」→「CADデータの読み込み設定」から、先に触れた、原点レイヤー名と、切削レイヤー名を設定しておく。
ここでは原点レイヤーに「ORIGIN」、切削レイヤーに「CAM」としてレイヤー名を設定した。


次に、
「オプション」→「切削パラメータの設定」から、NC生成オプションの設定。
まだアプリの詳しい使い方が分からないので、Z軸のアクションと原点の一部だけを変更してみた。


実際の設定については以下のように、ヘルプに詳しく記載されている。

ここで重要なのが切削原点(G92)のZ値とR点,切り込みパラメータの3つです.

図6 は工作機械を正面から見た図, 上下にZ 軸, 左右にX 軸です. ワークをセットしたあと, ワーク平面を基準にZ センサー等でZ 軸の位置決めを行います.
これを切削原点(G92)のZ値とします.Zセンサーの厚みが100mm なら100 と入力です.
センサーでの調整後, 好みの位置に移動させてもかまいません.
無論そのときは移動した座標値を入力して下さい.

次に切り込みですが, イメージ通り. ワークに何ミリ切り込むかという設定です.
最後にR点ですが,これは次のシマ,この例図5 加工条件の設定で言うと「N」を削って「C」に移動するときのZ値を指定します.Z軸の初期位置(原点)で移動してもかまわないのですが,初期位置は高く設定する傾向があるため,効率よく移動できる下限値と考えて下さい.
この設定ではワーク平面上空1mm の所で刃物が次のシマへ高速移動します.



設定が終了したら「ファイル」→「NCデータの生成」と進み、「標準生成」をクリック。
生成したデータの保存先と、NCデータの属性を指定したら一連の作業は完了する。



すべて"おまかせ"の全自動だが、これで本当にNCデータが生成できてしまうのはすごい!。


「NC生成後に開く」にチェックが入っていると、データ生成後、即座に結果を確認することが出来、下ような画面に切り替わる。


・・次はいよいよコントロール・アプリで「UNO」を使った「GRBL」シミュレーションの予定。


「Arduino UNO」で、GRBLコントローラアプリケーションを試す その2

前の続きから

UNO に USBケーブルを接続してドライバーが正しくインストールされたら「XLoader」を使って下の手順でFirmwareを書き込む。

1..UNOと、USBを接続してドライバーをインストール。


2..grblのファイルから「hex」のついたファイルを指定。
※ 通常のCNCとして動作させたい場合、"servo"対応で無い方を選択した方が良いかもしれない。



3..COMポートと、ボーレートを指定して「Upload」ボタンを押す。



NCデータをシミュレートする、GRBL CNCコントロールソフトの起動画面




jwwcadのデータからNCデータを作成する「NCVC」の起動画面


これ等のアプリケーションが揃ったところで、次回は実際にjwwcadを使ってNCデータを作成し、「Candle」でシミュレートしてみたい。

うまく行けば次に続く・・かも。


「Arduino UNO」で、GRBLコントローラアプリケーションを試す その1

予備で購入していた「Arduino UNO」で、GRBL。

「GRBL」が何であるかは、まだ知識ゼロの状態。
CNCの制御に最もポピュラー?なオープンソースの「Firmware」程度しか理解していない。

どうやら「AxiDraw」で必要になるらしいのだが、すでにパーツをプリントしてしまったため、無理にでも覚えなくてはならなくなってしまった。



【準備】(すべてFree)

1..「Arduino UNO」に書き込む「GRBL・Firmware」を下のリンクから。
https://github.com/grbl/grbl

2..「ArduinoIDE」でうまく「UNO」に書き込めない場合は「XLoader」というアプリを使って、解凍した「GRBL」の中の、「hex」ファイルを指定して書き込むと良いらしいので、今回の「Firmware」の書き込みは、これを使用。
http://russemotto.com/xloader/

3..数あるCNCコントロールソフトの中から、画面がシンプルなCandle(キャンドル)を選択。
(AxiDrawで頻繁に登場する「GrblController」も同時にインストール)
https://github.com/Denvi/Candle
http://zapmaker.org/projects/grbl-controller-3-0/

4..NCのデータ作成を簡単なものから始めたいので、JwwcadのデータをCNCデータとして作成できる「NCVC」を使って見ることに。
http://s-gikan2.maizuru-ct.ac.jp/xcl/modules/d3downloads/

とりあえず、この準備のもとにシミュレートを始める事にした。

・・・次に続く。 ・・かも。
添付ファイル 添付ファイル


ちょっと息抜き。 (テーブル作成)

カメな進捗だが、3Dプリンター・テーブルの作り変え。

面積の広い「アクリル」テーブルでは、極端な温度の変化で僅かに歪む事を確認。
プリントする対象が、小型のモデルならそれほど影響は無いが、面積の広いモデルでは角の剥離や反りなどが発生し、精神的に結構なダメージを受ける。

最初でヒートベッドにしておくべきだった。



いつかは「ABS」のフィラメントも試してみたかったので丁度良い機会となった。


「AxiDraw」部品待ち

「ベアリング」に「ドライブシャフト」・・etc。
「AxiDraw」製作のための部品待ち!

少し時間がかかりそうなので、その間に「NC」を勉強する事に。
・・って!、 今更の話である。

後日談になるが、実は「SphereBot」や、「EggBot」、「Eggduino」と言った「Ardiono・Firmware」の動作が Servo 以外、すべてうまくいかなかった。
勘違いの原因は、UNOにSHIELDをセットし、そのまま上記の「Firmware」を書き込めばX,Y,Z,クローン(赤のソケット)のDriverが、うまく動いてくれるだろうという勝手な思い込みによるもの。

これでは過去の"覚え書き"が意味をなさないため、安定した動作と精度が確保出来た今、近日中(怪しい!)に「UNO」と「SHIELD」用に書き変えた、個人用のスケッチを公開する予定。
※無論、利用した場合の保証は無しだが。


「AxiDraw」・製作前の下調べ(今さら・・)

製作当たって、今さらだが、資料の拾い出しから。
販売元によるとV2はすでに生産を終了しているらしいが、製作対象の機種はV2に近い。
http://shop.evilmadscientist.com/productsmenu/858
「Evil Mad Scientist Laboratories」と、「IJ Instruments Ltd」が共同で開発したマシンのようである。

全文英語のため早くも"誤訳"や"誤解"、"ミス"連発の予感。
乗りかかった船では無く、本体パーツの大半をプリントしてしまったため、もはや下船できなくなってしまった。(自縛的手法とも。)

能書きはさておき、Drawingソフトは「EggBot」と同じく「Inkscape」を拡張(Windowなら "C:\Program Files\Inkscape\share\extensions" などのルートに投げ込む、「.inx」や、「.py」などの拡張子の付いたファイル)する事により「AxiDraw」のデータが生成、出力できるようになるらしい。
このあたりは「EggBot」と同じ。

本体の製作を急ぎたいので、取り急ぎ下記の一部のパーツを「Amazon」に発注した。
製作に必要なパーツ
2 nema 17 steppers ()
4 8mm smooth rods (two 400mm-long and two 320mm-long)
8 LM8UU
2 GT2 pulleys
10 F623ZZ bearings
1 micro servo SG90 (plus a 250mm cable extender)
1 Arduino UNO
1 CNCshield
2 Pololu stepsticks
1 GT2 belt ( 1.4 meters long )
2 M10 threaded rods (400mm-long each)
8 M10 nuts
8 30mm M3 screws with nuts
8 6mm M3 screws
4 16mm M3 screws with nuts
4 M3 washers
2 4mm OD, 100mm-long carbon fiber tubes
2 15mm M3 screws
1 12V 2A power supply
1 USB cable

2 の、「Pololu stepsticks」や、「4mm OD, 100mm-long carbon fiber tubes」などは入手が微妙なパーツだが、ボードは Arduino UNO
CNCshield だけで済ませたい。
「4mm OD, 100mm-long carbon fiber tubes」は、uxcell ステンレス丸棒 旋盤バー 丸棒旋盤バイトグレー HSS高速度鋼 ラウンド 4mmX 100mm 5個
を必要な長さにカットして代替品とすることにした。

次回へ・・。


意志の弱さをカメラに収めた。「AxiDraw」

前回、YouTubeで見かけたDrawing・machineは「AxiDraw」と言うらしい。
$450で販売もされていた。

今回も自作を目指して
Thingiverse
で公開されているデータをダウンロードしてプリント。

まだ全容も分からないうちに、自制無くパーツだけが揃っていく意志の弱さをデジカメに収めた。



■意思決定の弱さが二組のパーツを生み出す(汗)


ワンパターンだが、低コストで抑えるならこれだろう!



鏡面仕上げ?

「貼ってはがせて、また貼れる」ポスト・イット製品の3M(スリーエム)が開発した3Dプリンター専用のプラットフォームシート。・・・
・・・底面はつるつるの鏡面仕上げで研磨不要。印刷中は樹脂をがっちり固定して、反らずに印刷できます。

宣伝文句に負けて、試してみることにした
下のリンクが「Amazon」で購入したシート
3M 3Dプリンタープラットフォームシート(3枚入) ABS/PLA対応 3099AB

ビルドタックを使用しても、PLAで一番定着の悪かった「HICTOP」のフィラメントが一発で貼り付いた。
おまけに宣伝文句の通り、テーブルへの固定面が鏡面で仕上がり、これはもう手放せなくなりそうな予感。
問題は耐久性だが、コストが多少跳ね上がっても、うまく貼り付いてくれない時の精神的な苦痛から開放されるのであれば仕方ない。

写真では分かりにくいが、アクリルや、セロテープの表面と同じくらいの光沢。
ノズル痕は見えるものの、手で触ると”ツルツル”の鏡面仕上げ。
まだ使い始めたばかりであるが、10cm四方程度のプリントで反りは発生してない。(これまで同程度のサイズのプリントではテーブルから取り外したあと、ほんの僅かな反りが発生していた。)






PLAフィラメントの折れやすい季節

PLAでのプリントがやり辛い季節となった。
昼間順調にプリント出来ていたフィラメントが、夕方の急激な冷え込みにより、プリント中 "パシッ!" と音を立てて折れてしまい、プリントを中断する事も珍しくない。
折れたフィラメントの長さに多少の余裕がある場合、ジョブを一時停止し、再度設定し直す事でプリントを継続出来るが、何らかの事情でその場に居合わせなかった場合は「ノズル」の温度が異常に上がり、サーミスタによる非常停止がかかってしまう。
こうなっては再度、プリントをやり直すしか手がない。
・・とは言うものの、これまでの経験から折れ始めたフィラメントはネジレが最大になる周期で定期的に折れるようになり、継続して使う気にはなれない。
ドライヤーなどで一時的に温度を上げても数時間と持たず、低温でも折れないフィラメントに交換して作業を継続する場合、同色の持ち合わせが無いと写真のような結果になってしまう。(汗)

■フィラメントが途中で折れたため、柔らかいものに交換してプリント継続。


※ 角のマスキングテープは、プリント中に剥離が始まったために貼ったもの。
剥離したままプリントを継続すると、モデルが反り上がってしまう。


< next