Duetファームウェアは、基本的なプログラミング構造を追加することが可能です。

数多くのメタコマンドを使用することができますが、
今回の記事では、その中でも特によく使われているコマンドを2つ紹介したいと思います。

注意事項

プログラミング構造を追加する前に、Duetのバージョンを確認してください。
バージョンは3.0.1以上である必要があります。


状態コマンド

このコマンドは、システムの現在の状態を確認するためのコマンドです。
具体的には、プリンタの稼働状況や、動作モードなどの情報を取得します。


下記のコードの場合、3Dプリンタが、state.statusの状態に応じて、自動的にベッドレベリングのリセットと再キャリブレーションを行います。
具体的に言うと、state.statusが「processing」(印刷中)や「paused」(一時停止中)でない場合にのみ、3Dプリンタは自動的にオートレベリングを行います。

if state.status !="processing" : 印刷中
if state.status !="paused" 一時停止中
G29 S2:既存のベッドレベリングのメッシュデータをリセット
G28:プリンタヘッドをホームポジションに移動
M561:オフセット設定のリセット
G29 S0:新たにオートベッドレベリングを実行
M400:すべての処理が完了するまで待機

この他にも、扉の開閉を検知し、扉が閉じられるまで動作しないようにすることも、状態コマンドを活用することで実現できます。

状態コマンドをうまく活用することで、より便利に3Dプリンタを使用できます。

ループコマンド

ループコマンドは、特定のコマンドやシーケンスを繰り返し実行するために使用されるメタコマンドです。この機能を利用することで、同じ動作を複数回行いたい場合や、条件に基づいて処理を繰り返したい場合に便利です。

私は過去に下記のような用途で使用したことがあります。

ループコマンドの使用体験

私は正方形の外周を一層のみをループさせてプリントしました。

まずは、1層を造形するときのコードを取得しました。移動コードが下記の赤色で囲んだところです。

そうして、ループのコマンドを追加します。
下記の例ではプリントヘッドはループを9回実行します。

さらに、下記のように記載することでZ軸を一層ずつ上昇させて造形することもできます。

G90コマンドは絶対座標を有効にします。
G91は、相対座標を有効にします。

今回の例では、相対座標にすることで現在のZ位置から0.2mm上昇させることができます。

そのため、9回実行した後、Z軸は1.8mm上昇していることになります。

他にも3Dプリンタの展示会でマシンの動きを見てもらうために、
1層目を造形する動きをループさせて、常に機械が動くようにしたこともあります。

このようにうまくメタコマンドを活用すれば、より効率的に造形ができるようになります。


『マディ』の極める!3Dプリント研究所をもっと見る

購読すると最新の投稿がメールで送信されます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です