3D プリントのための G コードの基礎

3D プリントのための G コードの基礎
この投稿は Spectacled Bear によって 2021-11-24 08:11 に最後に編集されました。

はじめに: 新しい外国語を学ぶのと同じように、3D プリンターやその他の CNC マシンを頻繁に使用する場合は、G コードの構成と特定の命令の意味を理解することで、印刷の問題を解決できるだけでなく、ニーズに応じて印刷をカスタマイズすることもできます。
G-CODE は、機械に何をすべきかを指示する方法です。 1950 年代後半から人気があり、最も広く使用されているコンピュータ数値制御プログラミング言語です。ただし、心配しないでください。これは考えられる最もシンプルな言語の 1 つです。ループ、if 文、括弧、またはほとんどの 3D プリンターで使用される形式のその他の複雑なものはありません。スライサーでモデルを準備し、生成された G-CODE をテキスト エディターで開くと、それが 3D プリンターのファームウェアが読み取って実行するコマンドのリスト (行ごと) であることがわかります。
△ PrusaSlicer での G-CODE の可視化 この記事では、Antarctic Bear が 3D プリンターで最も一般的な G-CODE (Marlin ファームウェアと互換性あり) を紹介し、3D プリントの G-CODE の 95% を理解できるようにします。 RepRap ファームウェアを搭載したプリンター、または Mach 3 を搭載した CNC システムを実行している場合、一部のコマンドの実行が若干異なる場合がありますが、ファイルの全体的な外観は同じになります。
△Marlin G-CODEの例 それでは、Marlin-G-CODEを見てみましょう。前述したように、コードはファイルの先頭から末尾まで 1 行ずつ処理され、これらのファイルは通常、いくつかの基本情報を含むヘッダーで構成されます。次に、スライサーでカスタマイズできる開始 G-CODE が続き、その後に終了 G-CODE を含む印刷コマンドが続きます。通常、スライサーのすべての設定を含むテキスト ブロックもあります。このセクションは、設定ファイルを保存し忘れた場合や、他の人から非常にうまく印刷された G-CODE ファイルを受け取った場合に役立ちます。一部のスライサーでは、G-CODE ファイルをインポートし、設定に基づいてプロファイルを生成できますが、これは通常、G-CODE も同じスライサーを使用して作成された場合にのみ可能です。
注記<br /> ヘッダーや設定ブロックを見ると、すでに重要なことがわかります。これらの行は通常、セミコロンで始まります。行の先頭のセミコロンはコメントであることを意味するため、ファームウェアによって無視されます。コメントは行全体を占めることはできませんが、コードの読みやすさを向上させるために通常のコマンドの後に追加されます。スライサーでは、レイヤーや機能を見つけやすくするためにコメントが追加されることもあります。完全性を保つために、一部のファームウェアでは CNCG-CODE 標準に従って括弧内のコメントをサポートしていますが、このスタイルはほとんど使用されません。
△G-CODE内のコメント
構文<br /> G-CODEのコマンド構文を見てみましょう。各コマンドは文字で始まります。 G は準備コマンドの略で、通常は移動関連のタスクに使用されます。 M コマンド (その他のコマンド) は通常、設定を変更したり操作を実行したりするために使用されます。それに続く数字は特定のコマンドを表します。次に、G-CODE コマンド パラメータと説明文字が続き、その後にパラメータ値が続きます。
△G-CODE構文
G0 と G1 - 直線運動<br /> まず、軸の移動に使用される最も一般的なコマンドである G0 と G1 から始めましょう。 XYZ パラメータは移動する必要がある場所を定義し、E は押し出す材料の量を定義し、F は送り速度 (通常は mm/分) を定義します。 G0 と G1 はすべての軸に値が必要なわけではなく、一度設定するだけで、変更されるまで状態が維持されます。過去には、G0 は精度が要求されない高速移動に使用され、G1 はある位置から別の位置への調整された直線移動に使用されていました。しかし、現在の 3D プリンターでは、G0 と G1 はほぼ同じであり、G0 は移動動作に使用され、G1 は材料押し出し動作に使用されることが一般的に認められています。
△G0 & G1 - 直線運動
G90 & G91 - 位置決めモード<br /> G0 と G1 に関連する非常に重要なコマンド ペアは、G90 と G91 です。これらは、位置決めモードを絶対または相対に設定します。 G90 が設定されている場合、すべての移動はプリンタ座標系に対して絶対的になります。したがって、G0X50 Y50 はプリント ヘッドを X50 Y50 に移動し、G0 X100Y100 はプリント ヘッドを X100 Y100 に移動します。
△ 絶対位置決め G91 が設定されている場合、すべての動作は最後の位置を基準に行われます。したがって、原点 X0Y0 から開始して G0 X50 Y50 を送信すると、プリント ヘッドは X50Y50 に移動します。しかし、その後に G0 X100 Y100 を送信すると、プリント ヘッドは増分移動を行い、X150Y150 に留まります。
△相対・増分位置決め
G コード ファイル内のほとんどの動きは、絶対位置決めを使用して実行されます。相対的な位置決めが役立つ可能性があるのは、たとえば、G コードの終了時にノズルを持ち上げて印刷物から離したい場合です。したがって、モデルの高さに関係なく、G91 と G0Z10 は常にプリント ヘッドを 10 mm 上げます。次に、G90 を使用して絶対位置決めに戻すと、ノズルをプリント ベッドの端まで移動できます。
△ ノズルを持ち上げて移動させるスクリプト例の終了
M82 & M83 - 押し出し機位置決めモード<br /> 印刷動作には、コマンド ペア M82 と M83 も関連付けられています。少し奇妙に思えるかもしれませんが、押し出し機は 3D プリンターの 4 番目の軸であり、動作軸と同様に絶対位置から相対位置に切り替えることができます。 M82 は軸を絶対モードに設定し、M83 は軸を相対モードに設定します。この設定は、主に使用するスライサーの設定です。 CURA は主に絶対座標で押し出すため、M82 コマンドを使用しますが、PrusaSlicer はデフォルトで M83 を使用して相対押し出しを行います。議論は、累積的な相対誤差や、2 つのコマンドのうちどちらのほうが優れているかということではなく、どちらのスタイルを好むかということについてです。
△ 各種スライサーのGコード例
G28 - ホーム<br /> ほとんどの 3D プリンターは、位置フィードバックのないシンプルなステッピング モーターを軸に使用します。つまり、マシンの電源を入れたときに、マシンがどこにあるか分からないということです。そのため、プリンターで実行するすべての G-CODE ファイルには、基本的に先頭に G28 が含まれています。 G28 はホーミング手順を開始し、マシンは既知の位置の終点に移動し、すべての軸が 1 つずつホーミングされます。 X、Y、Z パラメータまたはそれらの組み合わせを追加することで、ファームウェアに 1 つの軸のみまたは両方の軸をホーム位置に戻すように指示できます。
軸を合わせるさまざまな方法
G29 - フラットベッド表面<br /> ベッド レベリング プローブを装備する 3D プリンターが増えており、レベリング プロセスの開始には G29 が使用されています。ベッドのプローブを開始する前に軸をホーム位置に戻す必要があるため、G28 と G29 は通常、順番に表示されます。
G92 - 現在の位置を設定<br /> ホーミングと同様に、コマンド G92 を使用すると、現在の位置を特定の値に設定できます。したがって、プリント ヘッドがどこにあっても、G92 X0 Y0 Z0 を送信すると、現在の位置が座標系の新しい原点であることがプリンターに通知されます。 3D プリントでは、絶対押し出しを使用する場合に G-CODE G92 が最も一般的であり、読みやすさを向上させるために押し出し軸がリセットされます。
△G92 例
M104 & M109 + M140 & M190 - 気温<br /> 次に、温度、具体的にはノズルとベッドの温度を見てみましょう。ノズル温度を設定するには、M104 と M109 に加えてパラメータ S を使用します。しかし、この 2 つのコマンドの違いは何でしょうか? M104 はノズルの温度を設定するだけで、その後は通常どおり G コードの実行が続行されます。一方、M109 は温度を設定し、その温度に達するまで G コードの実行を一時停止します。
△ノズル温度の設定 ベッド温度の設定と全く同じです。 M140 は単に希望する温度を設定するだけですが、M190 は温度を設定して、その温度に達するまで一時停止します。
△ホットベッドの温度を設定する ちなみに、この2つのコマンドのペアは、数字の4と9が1桁しか離れていないため、混同しやすいです。
△ 類似コマンド 基本的にどのスクリプトでも見つけることができます。セットアップ後、プリンターは適切な温度に達するまで待機してから印刷を開始します。プリンターがベッドとノズルを同時に加熱する必要がある場合は、コマンド M104、M140、M109、M190 を使用します。
△ ノズルとベッドを同時に加熱します。一部の機械では、材料の浸透を防ぐために、最初にベッドを加熱し、次にノズルを加熱します。この場合、スクリプトには通常、M140、M190、M104、M109 の順序が記載されます。
△ 最初にベッドを加熱し、次にノズルを加熱します。これで、ベッドとノズルが順番に加熱されるのを待ちたくない場合にスクリプトで何を変更すればよいかがわかりました。あるいは、特定の高度で M104 コマンドを G-CODE に手動で追加して、温度タワーをカスタマイズする人もいます。この場合、新しい温度は通常 1 層以内で到達するため、印刷を一時停止するとさらに問題が発生するため、M109 の使用はお勧めしません。
M106 - ファン速度の設定<br /> もう一つの重要なコマンドは、冷却ファンを制御するために使用される M106 です。パラメータ S の範囲は 0 ~ 255 で、速度を調整できます。たとえば、フルパワーは 255、ハーフパワーは 128 です。完全にシャットダウンしたい場合は、M106 S0 または専用コマンド M107 を使用します。
△ファン設定例
M84 - ステッパーを無効にする<br /> 最後のコマンドはM84です。プリンター制御を使用して軸を移動した後、位置が失われないようにステッピング モーターに電力が供給されたままになります。軸を手動で移動できるようにモーターを無効にしたい場合は、すべての軸に M84 を使用するか、X、Y、Z、E パラメータとともに M84 を使用して単一の軸をオフにします。
△ ステッピング モーターを無効にする これらの 10 個のコマンドまたはコマンド ペアを覚えておけば、スライサーによって生成される G-CODE のほとんどを理解し、印刷ルーチンを好みに合わせてカスタマイズできるようになります。もちろん、3D プリンターの実行プロセスには、さらに多くのコマンドが関係します。他にどのようなコマンドとその意味を知っていますか?他にどのコマンドが最も重要かつ実用的だと思いますか? コメント欄で Antarctic Bear に遠慮なく教えてください。

参考: 1. 3Dプリント用Gコードを学ぶ
2. 3DプリントのためのGコードの基礎
G-CODE 基礎

<<:  常識を覆す「ゼロからの創造」!世界の金属・非金属材料のサポートフリー3Dプリント技術11種の目録

>>:  ORNLが超強力な砂構造物を印刷、現在ExOneが使用

推薦する

3Dプリントプレイヤーにとって、ハロウィーンはこう祝うべきだ

3D プリント愛好家にとって、ハロウィーンを祝う最良の方法はこれです... 10月30日夜多くの友...

3D プリンティングには明るい未来がありますが、どのような進化が必要でしょうか?

3Dプリンティングは多くの分野に関わっており、当然「産業革命」という使命を担っています。より基本的...

たった1999元/台! 3Dプリントファーマー高速生産ソリューション、Flashforge AD5M

「熊兄さん、私は数万元しか持っていないのですが、注文を受けるために3Dプリントファームを開きたいで...

マクドナルドは再び3Dプリントを使って心温まる広告を制作

2016 年 4 月、有名なファーストフード ブランドであるマクドナルドの英国法人は、新しい子供向...

3Dプリントされたシアノバクテリアを使って生体電気を生成する

2018年11月13日、アンタークティックベアは、スティーブンス工科大学の研究者がグラフェンを使っ...

上場企業広雲達の3Dプリント事業は211%増の1893万元に急伸したが、依然として損失

2018年8月28日、南極熊は、中国の比較的本格的な3Dプリントコンセプト株である広雲達(3002...

吉林大学の張志輝教授のチーム - インテリジェントバイオニック構造:付加製造を通じて自然とテクノロジーを結びつける

出典: 中国機械工学ジャーナル我が国では、30年以上にわたって積層造形(ラピッドプロトタイピング)技...

ニュース放送:3Dプリンター機器は2021年に前年比27.7%増加し、わが国のデジタル経済発展は急加速に入った

出典: CCTVニュース南極熊は、2022年1月21日、中央テレビの「ニュース放送」番組で、最新デー...

SLM SOLUTIONSとASSEMBRIXはブロックチェーン暗号化技術を使用して3Dプリントの普及を促進します

この投稿は Bingdunxiong によって 2023-6-7 11:40 に最後に編集されました...

Wu Jingjun、付加製造:物理的に架橋されたハイドロゲルの効率的な光硬化 3D プリント

出典: 高分子科学の最前線ハイドロゲルは、ソフトロボット、組織工学の足場、フレキシブルセンサーなどの...

Vibrant Nondestructive Testing が 3D プリントされた極超音速推進システム部品を評価

極超音速技術を実現するためには、高性能な材料を開発するか、既存の材料を革新的な方法で活用する必要があ...