釣りと3Dプリント完結編(gcode編集更新)
釣りが好きです。いろいろ事情があって、暇があると行く、というわけにもいかず、様子を見ていっています。
実は、9/18にも大鯛を釣り上げました。同じ場所(走水)で釣りあげました。超大型台風14号が来ていたので、絶対無理!と思い、仕掛けもエサも用意していませんでした。万が一大丈夫、となっても朝エサを買いに行けばいいね、ってことで。前日電話で確認をすると、風はないんですよね、とのことでしたが、絶対無理だろう、波も高いし。と思っていました。朝になっても連絡がないので、5:45に連絡すると、やっぱり、波がないんですよ、とのこと。え?これで事故になったらやばいね、どうする?ととっても迷い、近場でもいいから行くか、せっかくの3連休なので、ということで行ってきました。
台風に備え、海の中もエサを食いだめしておくか?となっているのでしょうか?同じ柳の下にドジョウはいない、といいますが、前回に続きほぼ同じ場所(水深25mほどの深さなので、アンカーを落として斜めにアンカーロープを張ると思い通りの場所にい続けることは、潮や風の影響を受けるため困難です)で、パートナーが1匹(70cm)、私が1匹(72cm)の真鯛を釣りました。でき過ぎです。今回は、真鯛2枚と大アジ1匹、中アジが6匹ほどの釣果でした。
スライスの改善
M600でフィラメントを交換した時に、必ずごみ(糞)のような押し出しが意図しない部分に発生します。Forumで複数のトピックスで議論されています(一つしか見つけられず)が、Marinの問題のようです。Miniだけの問題という記事も見つかりました。
現象を説明すると、以下の通りです。(と、理解しています。Forumの記事を見ると同様の記述がみられますので、きっとそうかと)
M600の時点の位置が記憶される
M600の設定は、Configuration_adv.hに従う。フィラメント交換のエクストルーダの位置などの設定がこのファイル内に存在する。設定は変更可能
フィラメント変更後に色切り替えのためにパージされる。普通はここでパージされたフィラメントのくずを取り除く
M600時点の位置にもどって、少し吐き出す
M600の説明はこちらで見られます。M600の条件出しまでは.…
Forumにおいて、gcodeで以下のような方法が提案されています。
M600の後でフィラメントを引き込む
G1 E-5 F3600.000
1レイヤー上げてM600。M600プロセスのあとの掃き出し(ブロブ)が直接プリント後のオブジェクトにすりつけられません)
こちらの記述が参考になると思います。
私のアプローチは別の方法です。
パージ用のオブジェクトを追加します。スライサのベッド上で右クリックするとシェイプの追加ができます。そこでboxを追加しました。
きっともっと小さいものでOKだと思います。重要なのは、今回で言うと下側の高さと合わせておくことです。今回、PLA部分は20mmの高さですので、ゴミ捨て場も20mmとします。普通にZ方向のサイズを20mmとすると、Z,Yも20mmとなります。本来は、Z方向のみ調整すべきでしたが、今回はテストということでとりあえずすべて20mmとしています。
重要なのは、最上位レイヤの最後のエクストルーダの位置です。スライス結果で、ゴミ捨て場が最後に描かれることを確認します。
複数のオブジェクトをプリントする際のプリントの順番は、基本的にはこちらのリストの上位からとなるようです。(今回確認しましたが、以前別の現象もあった気がしますので、今後確認して確定します)スライスよくわかりません。スライスの都合できっと移動が少なくなるように順番を設定しているようです。なので、ゴミ捨て場の位置を変更して(プリント対象とxy平面での関係を変えてスライスして)、M600の前にどこでプリントが終わるかを確認します。
(以下の図は、以前idとプリント順番が関連しているという仮定をした時に作成したもの。これで順番が変わるときもあるのですが.....)
idは、bodyが0、spoil partsが1となっています。下のバーを動かして、PLAのプリントの最後にゴミ捨て場が来ていることを念のため確認しておきます。
gcodeの修正(最終版)
なんとなく、やり方がスマートじゃないなというのが気になっていました。
PLAの最上面の高さが20.15mm、最後の行でlift Z:0.2mm上がっているので、意向が20.35mmが基準となってしまっているのです。余計に複雑なことになってしまっている気がします。
なので、以下のようにしました。
ファイル最後のほうにあるdisable fanの前にある、lift Zをコメントアウト
ファイル最後のほうにあるdisable fanの前に挿入するラインを追加(前回と同じ)
フィラメントを変更するためのM600および表示色を追加
イントロラインを1層目のイントロラインとは逆サイドに描く
先にプリントを終了した高さに移動し、原点に設定する
挿入元のラインを追加(前回と同じ)
; add TPU by Hana 目印を入れると後で見やすい
;G1 Z20.35 F720 ; lift Z リフトZの行を無効化
COLOR_CHANGE,T0,#12A61E gcode viewerでフィラメント色を見分けるためのコメント
M600 ; change filament ;フィラメント交換
M109 S225 ; エクストルーダの温度変更、wait
G1 Z30.15 F720 ; イントロライン描画のためにびゅーんと動かすのでZ位置を10mm高くする
G1 Y180 X179 F2400 ; イントロラインを向こう側に描くためにY位置を変更
; intro line イントロライン
G1 X170 F1000
G1 Z0.2 F720
G1 X110 E8 F900
G1 X40 E10 F700
G92 E0
G1 Z20.15 F720 ; lift Z ;以前プリントを中断したz位置に移動
G92 Z0 ;現在のZ位置を原点に変更
;ここに挿入元からラインを追加
詳細は、以前の記事をご覧ください。
こんな情報も見つけました。今回はPLAとTPUの温度はほとんど同じでしたので順番を気にしませんでしたが、M600の途中で温度を変えられないので、大幅にエクストルーダの温度が異なる場合には、M600の前に温度変更のコマンドを追加したほうが良いようです。
注意事項(再掲)
何度か失敗したことを念のため記します。PrusaMini+をずっと電源Onで使用しています。というのも、Octoprint経由でプリントするためです。また、Obicoでも、スライスしたデータをObico経由でOctopiに送信し、外出先からプリント開始することができます。どうしてもプリントしたいときに、オフィスにPCを持ち込み、自分のスマホでテザリングして、Obicoに送ってプリントします。Obico優れもの!
今回、G92をしようしましたが、G92での設定が、本体をリセットしないと残ってしまうのです。すると、次回のプリントが失敗します。
今回で言うと、G1 Z20.15 のあとでG92 Z0としていますので、Z=20.15が高さ0となっています。
次回以降のプリントはZ=20.15をZの原点としてスタートしてしまいます。(私も失敗し、因果関係をつきとめました)
本体をリセットするコマンドが見つかりませんでした。
出来上がったgcodeをPrintableにアップしようとしましたが、G92が入ったgcodeは認められていないようで、受け入れられませんでした。ということで、手修正のファイルをアップします。
いちおう、記録としてこちらにもファイルを置いておきます。(最新版がどれになるのかわからなくなっちゃうので)
gcodeファイル
ふた、本体上部(PLA, 0.6mmノズル)
保冷剤スペース(PLA)+接合部(TPU) 0.6mmノズル、G92使用 改訂版
スライサプロジェクトファイル
ふた、本体上部(PLA, 0.6mmノズル)
保冷剤スペース(PLA) 0.6mmノズル
接合部(TPU) 0.6mmノズル
いろいろ紆余曲折ありました。もし、もっとスマートな方法をご存じの方、是非ご教示くださいませ
ちなみに、昨日も釣りに行き、いろいろ反省点が見つかりました。ふたが勝手にスライドしてしまうので、知らないうちにふたが空いている。これについては、別モデルも設計、プリントしました。かっこいいかどうかは別にして、使えそうなものになりましたので、そちらもそのうち共有します!