3Dプリンター の一覧に戻る

3Dプリンターの出力を途中から継続する方法(レジューム)


当ページは、レジュームの成功例とその方法を紹介するもので、成功を保証するものではありません。
作業は自己責任にて行ってください。

概要と手順、ポイント

gcode を修正して、3Dプリンターの出力を途中から継続する方法を説明します。(レジューム)
対象機種は BIBO 3D & cura ですが、gcodeを解釈して動作するタイプの機械であれば、
行うことは同じですので、適宜読み替えて実施できます。

gcode修正の大まかな手順は以下です。

1、既に出力済みのレイヤーまで削除する
2、再開始時に衝突しないように、最初に高さ(Z軸)を下げるための命令を追加する

ポイントは以下です。

a、温度設定などは残す必要があるので、gcodeの冒頭部分は残す
b、継続時の安定のために速度を変更する

aは gcode にて、bは手動で行います。

まず、gcode をメモ帳で開きます

当該の gcode ファイルをメモ帳で開きます。念のためバックアップを取ってください。

CTRL+Fを押し、「LAYER」にて冒頭から検索して、

LAYER_COUNT の行を見つけます。

例えばこのようになっています。

;LAYER_COUNT:1000
;LAYER:0

;LAYER_COUNT:1000 は、このオブジェクトの出力の層が1000までであることを表しています。
;LAYER:0 は、最初の層の出力の開始を表しています。0からですので、層の総数は 1001 です。

出力がどの高さで止まってしまったのかを確認します

本体の液晶表示に、Z の表記が残っているのであれば、その高さからやり直すことになります。
プログレスバーが表示され、オプションボタンが表示されている画面に、T (時間)と Z(高さ)の表示があります。
その Z の方です。単位は単純に mm(ミリメートル)です。
もし残っていなければ、定規で測って、そのあたりからやり直すことになります。

※ 停止位置の把握のためにも、WEBカメラで液晶を記録していると良いですね

このページでは、Z の値は、30.6 だとして説明します。

目的の高さが、何番目の層(レイヤー)であるかを調べます

レイヤー番号(LAYER:番号)の1,2行下に、その層のZ軸移動のための行があります。
LAYER で検索し、キーボードのF3を押していくと、LAYER番号ごとに検索されて行きますので、
目的のZの値のところまで進んでください。

例えば、以下のように Z の値(30.6)が見つかったとします。

;LAYER:500
M107
G0 F3600 X-22.571 Y-1.091 Z30.6

このように LAYER:500 のところに目的の Z の値があれば、
目的の層(レイヤー)は500だということが分かります。

不要な行(既にプラ出力が完了した分の行)を削除することで、停止した層を頭出しします

先ほどの冒頭の、LAYER:0の行から、LAYER:0の行を含めて、LAYER:500の直前の行までを削除します。

すると、

;LAYER_COUNT:1000
;LAYER:500

のようになりましたね。これで、頭出しは完了です。

ヘッドや軸が出力オブジェクトに衝突しないように、Z軸をあらかじめ下げます。

;LAYER_COUNT の行の少し前、8,9行前に、T0 という行があります。さらにその下に、G28 という行を
見つけてください。

その、G28の行の下に、1行新規の行を追加します。以下のように記述します。

G1 Z目的の値

この例では、Z は 30.6 ですので、

G1 Z30.6

とします。

変更前

G21 ;metric values
G90 ;absolute positioning
M107 ;start with the fan off
G28 X0 Y0 ;move X/Y to min endstops
G28 Z0 ;move Z to min endstops
G1 Z2.0 F400 ;move the platform down 15mm
T0
G92 E0
G28
G1 Y0 F1200 E0
G92 E0
M117 BIBO Printing...
G92 E0
G92 E0
G1 F1500 E-6.5
;LAYER_COUNT:1000
;LAYER:0
M107
G0 F3600 X-22.571 Y-1.091 Z0.3

変更後

G21 ;metric values
G90 ;absolute positioning
M107 ;start with the fan off
G28 X0 Y0 ;move X/Y to min endstops
G28 Z0 ;move Z to min endstops
G1 Z2.0 F400 ;move the platform down 15mm
T0
G92 E0
G28
G1 Z30.6
G1 Y0 F1200 E0
G92 E0
M117 BIBO Printing...
G92 E0
G92 E0
G1 F1500 E-6.5
;LAYER_COUNT:1000
;LAYER:500
M107
G0 F3600 X-22.571 Y-1.091 Z30.6


レジュームの安定のために、全体の速度を下げます

開始後すぐに、機械の液晶タッチパネルにて、速度を 33%ないし50%に下げてください。
次の層に進んだら(Zが変化したら)戻してください。

しかし、プリントの際に起きる様々な問題は、速度を落とすだけで結構改善しますので、
難易度が高いような形状を出力する際は、時間が許せば、速度を下げたまま出してみてください。

その他

行の冒頭が ; (セミコロン) になっている行は注釈行で、目印・説明のために記述されています。
実際は消しても影響がありません。
行の途中に ; があれば、それ以降(右側)の文字も注釈として扱われ、プログラムに影響を及ぼしません。

私の場合は、レジュームの開始時に電源ボタンに手をかけておいて、出力オブジェクトが軸に衝突しそうだったら
電源を消して gcode を修正する。を何度か繰り返しましたが、動作中の電源の切断は故障の原因になる
可能性がありますので、良い手段だとは言えません。

追記:cura バージョン 4.2.1

私の使っている環境にて、今までのバージョンでは、各レイヤーの宣言直後に 各レイヤーのZ軸が設定されていましたが、
このバージョンから、レイヤーの宣言直前になっていました。
LAYER行のすぐ下あたりに見つからなければ、このバージョンに限らず、チェックしてみてください。

T0
G92 E0
G28
G1 30.6 ;<ここに一行挿入して追加します。
G1 Y0 F1200 E0
G92 E0
M117 BIBO Printing...
M141 S28
G92 E0
G92 E0
G1 F1500 E-6.5
;LAYER_COUNT:1000
;LAYER:0
M107
G0 F3600 X0.014 Y-15.347 Z0.3
;TYPE:SKIRT
(中略)
G1 F1500 E2160.80205
;MESH:NONMESH

G0 F600 X-.637 Y21.228 Z30.6 ;<ここに Z軸が宣言されています。
G0 F7200 X-1.485 Y19.747
G0 X-9.068 Y9.73
;TIME_ELAPSED:3818.502866
;LAYER:101 <この行がレイヤー宣言です。
;TYPE:SUPPORT
G1 F1500 E2167.30205
G1 F3600 X-10.229 Y10.004 E2167.36156

この場合も、ヘッダ部分の T0 の下の G28 を探し
その下に G1 にて Zの高さを設定します。

そして、LAYER_COUNT と LAYER:0 の行の下の行から、Zが定義されている行の直前までを削除してください。
上のリストの赤文字の行にあたる部分です。



3Dプリンター の一覧に戻る

Information of This Page
picture 3Dプリンターの出力を途中から継続する方法(レジューム) pubdate:


© 2021
Author : FloatGarden