プリント中に突然停電が起こった時を想像してみてください。
造形時間や材料が無駄になってしまうのはもちろん、もしも完成間近だったなら、精神に大きなダメージを受けると思います。
私自身も過去になんども経験したことがあります。
下記の動画ではプリントの途中で停電してしまったときの体験を撮影してみました。
(自分で電源を切ました)
こんな時、プリントを再開する方法が2つあります。
再開した後は操作に注意が必要です。「原点復帰」を行ってください。
停止中のノズルの周辺に造形途中のモデルなどの障害物があると、プリンターに接触してしまうことがあります。
原点復帰が問題なく実行されたことを確認したら、次のステップに進むことができます
リカバリーファイル
この機能が搭載された3Dプリンタであれば、再開は簡単です。
「停電後にプリントを再開する」機能を使って続行します。
停電後プリントはM916コードで実行されます。コードはSDカードにリカバリーファイルとして書き込まれたファイルを実行します。
再開の方法は、使用している3Dプリンタによって異なります。
機械によっては通電後に、画面に造形を続けるか選択肢が表示されるものもあります。
コードを手動で編集する
今回のブログはここからが本番です。
上記のようなリカバリー機能が搭載されていない3Dプリンタでも、プリントを再開することが可能です。
まずは、プリントがどこで停止したのか確認する必要があります。
停止点を見つけるには2つの方法があります。
レイヤーの数を使用する(Duet)
レイヤーの数を見るためにDuetWebcontrolを使わなければなりません。
レイヤーチャートで最後プリントされたレイヤーが表されます。

そして、レイヤー数をPrusaで探して高さの値を使用します
例えば、上の図で最後に造形されたレイヤーが28層目ということがわかります。そのため、29層目の途中でプリントが止まったということを意味します。
次にPrusaSlicerで29番目のレイヤーを探して、そのときのレイヤーの高さを使用します

今回の場合、29番目のレイヤー高さは4.68だとわかりました。

その後、Gコードファイルを開きます

Z=4.68の高さの時のコードを探します

探し出せたら、開始からその直前のコードをすべて削除します。


この例では、26ストロークから31791ストロークまでのコードを削除しました。
1~26行目までは、造形に必要なコードが含まれているためコードが入れられているため削除してはいけません。
下の図は変更した結果です。

再び造形を再開する前に注意することは、直前のZ軸の座標をチェックすることです。

例えば、この例では直前のZ軸座標の15.0がモデルと接触しない安全な高さです。ベッドが15mm下がった後、Zが4.68mmまで上昇しプリントが再開されます。
この時、すでにプリントされたモデルの高さがZ軸の最初の移動距離よりも大きい場合、プリントヘッドはモデルと接触してしまいます。そのため、プリントを再開する前には必ずチェックしてください。
もし、大きい場合は、基準の値をその数値よりも大きい値に変更してください。
再開時の様子
高さを測定して手動で追加する
レイヤー番号がわからない場合は、モデルの高さをノギスなどを使用して測定することで、Gコードからレイヤーの高さを見つけることができます。

手動で測定しているため、調べたレイヤー高さがGコードに無い場合がありますが、測定した高さに一番近いレイヤー高さの値を見つけてGコードを編集すれば大丈夫です。
注意すべきこと
G92コードは与えられた座標を示します。

「G92 E0」コードが表示されるたびに、カウントはゼロから開始されます。
つまり停電後は、カウントがリセットされE0になるということです。
再開時

この例の場合、Eが1894になるまで、プリンタは材料を押し出し続けます。
下記は実際にやってみた結果です。
G92 E0 ---停電したことでリセットされたコード
G1 E100 F600 ---停電直前のコード
この場合、E100になるまでフィラメントを押し出し続けます。
そのため、停電直前のEの値に大きい数が入力されているときは、Eの値をマニュアルで調整する必要があります。

先ほどの例の場合、デフォルトの値をE1890くらいに設定することで、余分な材料の押し出しを減らすことができます。
また、デフォルトのEの値が再開時のEの値を超えて入力してしまうと
G92 E200 ---手動で指定した値
G1 E100 F600 ---停電直前の値
フィラメントは100リトラクトされます。
そのため、Gコードを編集するときは間違えないように注意が必要です。
これらがどのように機能するかを理解することで、3Dプリンタを正しく安全に使用するのに役立つと思います!
『マディ』の極める!3Dプリント研究所をもっと見る
購読すると最新の投稿がメールで送信されます。