G-Code とは何か、機械での使用方法、SVG とラスター イメージからペン プロッター、レーザー彫刻機、3D プリンター、CNC ミル用の機械対応ファイルに至るまで、完全な生産パイプラインについて説明します。
G-Code (幾何学コード) は、CNC マシンを駆動するプレーンテキスト言語です。各ファイル (通常、.gcode、.nc、または.cnc) は、マシンにどこに移動するか、どのくらいの速度で移動するか、いつツールを起動するかを指示する一連の命令です。行は上から下に一度に 1 つずつ実行されます。
デザインを青写真、G-Code をターンバイターンのナビゲーションと考えてください。 3D プリンターでは JPG を処理できません。ペンプロッタは、文字「A」がどのようなものであるかを知りません。 G-Code は、あらゆる形状を基本的な動き (直線、円弧、ツールのオン/オフ コマンド) に分割することでこの問題を解決します。これらの動きは、どのモーション コントローラーでも確実に実行できます。
この規格の起源は 1950 年代の MIT にまで遡り、1963 年に RS-274 として正式に制定され、1982 年に ISO 6983 として国際的に公開されました。その古いものにもかかわらず、G-Code は趣味のデスクトップ プリンターから産業用 5 軸ミルに至るまで、製造の世界共通言語であり続けています。
各行 (ブロックと呼ばれます) は 1 つの完全な命令です。マシンはライン間の状態を記憶します。つまり、ライン 10 で設定された送り速度は、変更しない限りライン 200 でも有効のままです。これをモーダル状態と呼びます。
以下は、50×50mm の正方形を描画するペン プロッタ プログラムです。
G21 ; millimeters
G90;絶対位置決め
G0 Z5.0 ; lift pen
G0 X0 Y0 ; move to origin
M3 S1000 ; pen down
G1 X50.0 Y0 F2000
G1 X50.0 Y50.0
G1 X0 Y50.0
G1 X0 Y0
M5 ; pen up
M2 ; end
G1 X50.0 Y25.3 F1500 の内訳: G1 = 直線を引く、X50.0 Y25.3 = 目的地、F1500 = 1500 mm/分。 G1 は 1 回だけ表示されることに注意してください。G0 または別のモーション コマンドを作成するまで、後続の座標線はすべて自動的に再利用されます。セミコロンの後のものはコメントであり、マシンによって無視されます。
これらのコマンドは、趣味用の GRBL から産業用の Fanuc まで、事実上すべてのファームウェアで機能します。
GRBL は秒を使用します — G4 P1.5 は 1.5 秒間一時停止します。 Marlin はミリ秒を使用します。G4 P1500 は同じ一時停止です。間違った単位を使用すると、マシンが数分間ほとんど停止するかフリーズすることになります。常にファームウェアのドキュメントを確認してください。
プロッターはパスのみを認識し、ピクセル、塗りつぶし、生のテキストは認識しません。 Inkscape、Illustrator、または Affinity Designer を使用して、SVG ストローク パスを作成します。すべてのテキストをアウトラインに変換します。塗りつぶし、ビットマップ、効果を削除します。これらはコンバーターによって黙って無視されます。
重複したパスを結合し (ペンは同じ線を 2 回トレースします)、密集したノードを簡素化し、ドキュメントの寸法をピクセルではなくミリメートル単位で設定して、後で DPI スケーリングの問題が発生するのを回避します。
コンバーターは各パスを G1 の動きに変換し、切断されたストロークの間に M3/M5 のペンリフト コマンドを挿入します。最も重要な設定はパスの並べ替え、つまりストロークが描画される順序です。ソートが不十分だと、ペンがページ上で何千回もジグザグに動きます。最近傍ソートにより、密度の高いアートワークの移動時間を 50% 以上短縮できます。
Universal Gcode Sender (UGS) または bCNC を介して、ファイルを GRBL ファームウェアにストリーミングします。送信者は行を 1 つずつ配信します。 GRBL はそれぞれをステッピング モーター パルスに変換します。
ベクター モードは一定の出力でパスをトレースします。輪郭や彫刻された線の切断に使用します。ラスター モードはプリンターのように前後にスイープし、ピクセルごとにパワーを変化させます。写真や陰影のある塗りつぶしに使用します。 1 つのジョブで、別々のレイヤーで両方のモードを使用できます。
LightBurn や LaserGRBL などのツールは、レーザーを発射する場合は M3 S[値] を出力し、レーザーを停止する場合は M5 を出力します。ラスター モードでは、S 値が G1 ラインごとに変化し、グレースケールのグラデーションが再現されます。このためには、GRBL をレーザー モードでコンパイルする必要があります。これにより、速度ランピングが無効になり、瞬時の電力応答が可能になります。
パワーとスピードは素材によって大きく異なります。実際の作業を開始する前に、必ず同じ材料に対して小さな出力/速度グリッド テストを実行してください。
レーザー: 波長に応じた安全メガネを着用してください (CO2 = 10,600nm、ダイオード彫刻機 ≈ 450nm - これらには別のメガネが必要です)。換気を確保してください。彫刻では、ほぼすべての素材から有毒なガスが発生します。稼働中のレーザーを決して放置しないでください。 CNC: スピンドルを動かす前にワークピースをクランプします。固定されていないワークピースは高速で投げられる可能性があります。開始する前に緊急停止場所を確認してください。
Fusion 360、Blender、FreeCAD などでデザインします。 STL は標準の交換形式です。 STEP は、エンジニアリング部品のためのより正確な形状を実現します。
スライサー (PrusaSlicer、Cura、Bambu Studio) は、モデルを 0.1 ~ 0.3mm の水平レイヤーにカットし、ツールパス、サポート、充填、ブリッジを計算します。一般的な動きは、G1 X42.5 Y88.3 E0.0234 F4500 のようになります。フィラメントを正確に 0.0234mm 押し出しながらヘッドを動かします。スライサーは、印刷開始前にノズルとベッドを加熱するために、M109 および M190 も挿入します。
Marlin、Klipper、または RepRapFirmware がファイルを実行します。 Klipper は計算を Raspberry Pi にオフロードし、入力整形をサポートします。加速度計でフレームの共振を測定し、モーション コマンドからフィルタリングして除外することで、リンギング アーティファクトを軽減し、印刷速度の高速化を可能にします。
Fusion 360、SolidWorks、または FreeCAD を使用します。機械加工部品には 0.01 ~ 0.05mm の公差が必要なため、モデルの品質が部品の品質に直接影響します。
CAM ソフトウェア (Fusion 360 CAM、VCarve、Mastercam) を使用すると、工具、切削方法 (適応クリアリング、輪郭、ポケット加工)、切込み深さ、主軸速度、送り速度を指定できます。目標は、ビットを折ったり材料を焦がしたりすることなく、効率的に工具をかみ合わせることです。
産業用 CNC マシンは、それぞれ独自の方言 (Fanuc、Siemens Sinumerik、Heidenhain、Haas) を話します。 CAM ソフトウェア内のポストプロセッサは、汎用ツールパスをマシンが期待する正確な構文に変換します。間違ったポストプロセッサを使用すると、不良部品が生成されるだけでなく、機械がワークピースに衝突し、工具が破損し、安全上の危険が生じる可能性があります。
SVG パスは、Bézier 曲線、円弧、直線を使用します。 G1 は直線のみを描画します。そのため、コンバーターは次の 2 つの方法でギャップを埋める必要があります。
ファセット加工では、曲線を多数の小さな直線セグメントに分割します。より滑らかな曲線には短いセグメントが必要ですが、これはファイルが大きくなり、マシンのコマンド バッファーが追いつかない場合にモーションが途切れる可能性があることを意味します。
円弧フィッティングはよりスマートです。一連の短いセグメントが集合的に円を形成することを検出し、グループ全体を 1 つの G2 または G3 コマンドで置き換えます。 G1 360 行分の円が G-Code の 1 行になります。ファイルは最大 90% 縮小し、動きは完全にスムーズで、マシンは円弧全体にわたって連続速度を維持します。すべての GRBL ビルドが G2/G3 をサポートしているわけではありません。有効にする前に確認してください。
Illustrator は 72 DPI でエクスポートします。 v0.92 より前の Inkscape は 90 DPI を使用していました。最新のツールは 96 DPI を使用します。コンバーターが 96 DPI を想定しているが、ファイルが Illustrator からのものである場合、すべての寸法が 33% 大きすぎます。100mm 形状は 133mm にプロットされます。修正: コンバーターの DPI 設定をソース アプリに一致させるか、さらに良いことに、SVG ドキュメントのサイズをミリメートル単位で設定して、DPI を完全に無関係にします。
コア モーション コマンド (G0、G1、G2、G3) はどこでも機能します。それ以外のすべて (起動シーケンス、ツールの変更、コメント構文) はファームウェア ファミリによって異なります。プロ仕様の CNC マシンで間違ったコントローラーから G-Code を実行すると、間違った出力が生成されるだけでなく、ワークピースへの急速な衝突を引き起こす可能性があります。
写真にはピクセルのみが含まれており、パス データは含まれません。写真をプロットしたりベクトル彫刻したりする前に、SVG に変換する必要があります。一般的なアプローチ:
Pixel2Lines は、線画、ハッチング、点描など、ペン プロッターやレーザー彫刻機向けに構築されたプロフェッショナルなスタイルで、写真をきれいな機械対応の SVG に変換します。出力パスは個別のストロークとして構成され、ペンのリフトと移動時間を最小限に抑えます。
SVG を取得すると、SVG-to-G-Code サービスは、マシン プロファイル設定、プリフライト チェック、およびプレビュー アーティファクトを含む最終ファイルを生成します。
この 2 ステップのパイプライン (Pixel2Lines 経由で写真を SVG に、サービス経由で SVG から G-Code に) により、G-Code を手動で記述することなく、ラスター ソースから機械で準備されたレーザーまたはプロッター ファイルに移動します。
はい、単純な形状の場合、これは有益な練習になります。複雑な場合は、CAM ソフトウェアまたは専用コンバータを使用してください。
コアモーションコマンドはユニバーサルです。起動シーケンス、ツールの変更、拡張機能は大きく異なります。 GRBL プロッタ用の G-Code を Fanuc ミルで実行するには大幅な変更が必要な場合があります。また、産業機械で間違った方言を使用すると、クラッシュが発生する可能性があります。
GRBL は、Arduino クラスのマイクロコントローラー上で実行されるオープンソースの CNC ファームウェアです。これは、趣味のペン プロッター、DIY レーザー彫刻機、小型 CNC ルーターの標準です。加速を意識したモーション プランナーと先読みバッファリングを備えたコア RS-274 標準を実装しています。
ボールペン:5000~8000 mm/分フェルトペンまたは筆ペン: 2000–4000 mm/分。万年筆またはガラスペン先: 1500–3000 mm/分。最初に必ず紙くずでテストしてください。
はい。 GRBL レーザー モードでは、S は G1 ラインごとに変更できます。これが、ラスター彫刻が 1 回のスイープで滑らかなグレースケール グラデーションを再現する方法です。
HPGL (Hewlett-Packard Graphics Language) は、1970 年代から 90 年代にかけて HP ペン プロッターで使用されました。 2 文字のコマンド (PU = ペン アップ、PD = ペン ダウン、PA = プロット絶対値) と、ミリメートルやインチではなく 40/ミリメートルのプロッタ単位を使用します。最新のプロッタ ツールのほとんどは両方の形式を読み取ることができます。
NCViewer (ncviewer.com) が最も速いオプションです。ファイルを貼り付けると、即座にツールパスがレンダリングされます。 CAMotics は、CNC 作業の 3D マテリアル除去をシミュレートします。 Universal Gcode Sender にはパス プレビューが組み込まれています。常に画面上のシミュレーションに従い、安全な高さで物理的な予行演習を行ってください。
クリーンな SVG をアップロードし、レーザーまたはプロッター プロファイルを選択し、プリフライト レポートを確認して、プレビュー アーティファクトを含むマシン プロファイルの G-Code をダウンロードします。
SVG から G-Code サービスを開く
コメント
コメントを読み込み中...