CNC プログラミング言語 – G コードと M コード
CNC マシンという用語の頭字語 CNC は、Computer Numerical Control を意味します。通常、CNC 加工について考えるとき、CNC 工作機械を想像しますが、実際には、最新の CNC 機械はより広い用語を表します。産業用ロボットと一部のコンピューター制御の測定機も CNC マシンです。
1952 年、ジョン T. パーソンズが IMB (International Business Machines Corporation) および MIT (マサチューセッツ工科大学) と協力して、航空産業での部品の精密機械加工の必要性から、最初の CNC フライス加工を開発しました。機械。それ以来、よりスマートな工業生産が普及し、CNC プログラミング言語 (G コードと M コード) の台頭と使用に伴い、CNC 機械加工がすべての業界で利用できるようになりました。
GコードとMコードとは?
CNC 工作機械の開発の 70 年の歴史の中で、プログラミングには G コードや M コードだけでなく、さまざまなプログラミング言語が使用されてきました。このように、当初、パーソンズの草分け的なマシンは、ドリルで穴を開けたテープを使用してプログラムされ、その後、1956 年に、CNC 機械加工用の特別なプログラミング言語 (APT プログラミング言語) が開発されました。
RS-274、またはこの記事でも取り上げる G コードとしてよく知られているものは、同じ 10 年間に作成されました。 G コードは APT プログラミング言語から開発され、カッター (ツール) の位置やジオメトリ、およびスピンドル速度、冷却などのその他の非ジオメトリ マシン機能に関するデータが含まれていました。RS-274 機能 (G および M コード) は基本を継承しています。 APT プログラミング言語からわずかな変更を加えて、プログラムを短くし、機械制御ユニットにとってより便利にしました。
APT | G および M コード |
{X, Y, Z} に移動 | G1、G2、G3 {X、Y、Z} |
FEDRAT | F |
スピンドル CW /反時計回り | S M3 / M4 |
COOLNT オン / オフ | M8 M9 |
FINI | M30 |
RS-274 プログラミング言語は、主に G 機能 (G コード) で構成されているため、「G コード」と呼ばれることがよくあります。しかし、それ自体にも同様に重要な M 機能 (M コード) が含まれています。そのため、これらの用語を定義する必要があります。つまり、次の質問に明確かつ直接的に答える必要があります。
<オール>
G コードとは?
G コード、つまり G 機能は、M コードとは異なり、主にジオメトリの定義に関連しています。 「Gコード」という名前の「G」が「Geometry」という言葉を意味していることは明らかです。したがって、G コードには、座標系、作業平面、プログラミング単位の選択、プログラミング モード (絶対またはインクリメンタル) の設定、ラピッドおよび作業モードでのツールの移動などの機能が含まれます。
M コードとは?
M コードまたは M 機能とは、機械の動作に関連する機能を指します。 「Mコード」の「M」は「機械」を意味する言葉と言えます。通常、CNC マシンのプログラミングでは、次の機能をこれらの機能に含めることができます:主軸のオンとオフの切り替え、冷却のオンとオフ、自動工具交換など。
G コードと M コードの違いは何ですか?
これまでに説明したように、G コードは厳密にパーツの加工プロセスのジオメトリを指し、M コードは機械の個々の機能を指します。 G コードは「工具が工作物に対してどのように動くか」を表し、M コードは「加工プロセスで機械が何をするか」を表すと言えます。
RS-274 プログラミング言語の主要な G コードおよび M コード機能に加えて、多数の補助機能があります。
- X、Y、Z – 位置決め点の座標
- I、J、K – 始点と円の中心間の距離の座標 (以下の例では「CC」)
- F- 補間速度
- S- スピンドル速度
- T-ツール番号
- H- ツール高さオフセット番号
- D- 工具半径オフセット番号
基本的な G コードのリスト
主な機能 | 説明 | 補助機能 |
G0 | 迅速な位置決め (線形) | X、Y、Z |
G1 | 線形補間 | X、Y、Z、F |
G2 | 時計回りの円弧補間 | X、Y、Z、I、J、K、F |
G3 | 反時計回りの円弧補間 | X、Y、Z、I、J、K、F |
例 1:
G コードの文:G1 X10 Y50 F100
説明:ツールは、秒速 100 mm の速度で目的の点 (座標:X=10 mm、Y=50 mm) に直線移動します。
G コードの文:G2 X10 Y50 I10 J40 F100
説明:ツールは 1 秒あたり 100 mm の速度で目的の点 (座標:X=10 mm、Y=50 mm) まで円形 (時計回り) に移動します。開始点に対する円の中心位置:X 軸で +10 mm、Y 軸で +40 mm
G コードの文:G02 X50 Y10 I40 J-10 F75
説明:ツールは 75 ミリメートル/秒の速度で目的の点 (座標:X=50 mm、Y=10 mm) まで円形 (時計回り) に移動します。開始点に対する円の中心位置:X 軸で +40 mm、Y 軸で -10 mm。
主な機能 | 説明 | 補助機能 |
G17 | 作業平面の XY を選択 | / |
G18 | 作業平面の ZX を選択 | / |
G19 | 作業平面の YZ を選択 | / |
G20 | 単位:インチ (インチ) | / |
G21 | 単位:ミリメートル (mm) | / |
G41 | 工具径補正 – 左 | D、X、Y、Z |
G42 | 工具径補正 – 右 | D、X、Y、Z |
G40 | 工具径補正 – オフ | / |
G43 | 工具高さオフセット補正 | H、Z |
G49 | 工具高さオフセット補正 – オフ | / |
G54 | 機械座標系 | / |
G55 | 作業座標系 | / |
G56 | 作業座標系 | / |
G57 | 作業座標系 | / |
G58 | 作業座標系 | / |
G59 | 作業座標系 | / |
例 2:
G コードの文: G21 G17 G55
説明:プログラミング単位をミリメートルに設定します。 XY 作業平面の選択; G55 座標系の選択
G コードの文: G43 H1 Z100
説明:工具高さオフセット補正を H1 (「H1」は CNC マシンのメモリに工具高さの値が保存される位置) に設定し、新しい位置 (座標:Z=100 mm) を取得します。
G コードの文: G41 D1 X15
説明:左工具半径補正を D1 (「D1」は工具半径の値が CNC マシンのメモリに保存される位置) に設定し、新しい位置 (座標:X=15 mm) を取得します。ツールが目的の位置に移動している間、ツールはゆっくりと左に移動するため、ツールが目的の位置に到達すると、ツールの半径補正が完了します。
G コードの文: G40 G49
説明:工具径補正をキャンセルしています。工具高さオフセット補正のキャンセル
主な機能 | 説明 | 補助機能 |
G90 | アブソリュート プログラミング:ワーク座標系に対する座標 | / |
G91 | インクリメンタル プログラミング:現在位置の座標系 i に対する座標 | / |
ベーシックMコード一覧
主な機能 | 説明 | 補助機能 |
M00 | プログラム停止 | / |
M03 | スピンドルオン (時計回り) | S |
M04 | スピンドルオン (反時計回り) | S |
M05 | スピンドルオフ | / |
M06 | 自動化ツールの変更 | T |
M08 | クーラントオン | / |
M09 | クーラントオフ | / |
M30 | プログラムの終了 | / |
M98 | サブプログラム呼び出し | 「サブプログラム名」 |
M99 | サブプログラムから戻る | / |
CNC マシンのプログラミング方法
CNC プログラミングは、そのような機械で処理する必要がある部品の形状と技術に関する英数字形式のデータ (G および M コード) ですが、通常は機械メーカーが行う別のプログラミングでもあります。
G コードを使用した CNC マシンのプログラミングは、ほとんどが文ベースであり、G コードで記述されたプログラムの文を解釈して G 機能の説明が行われた前の例で見ることができます。 CNC プログラミング、つまり G および M コードの生成にはいくつかの方法があります。
<オール>手動プログラミング
手動 CNC プログラミングでは、機械、工具、機械付属品、処理モード、プログラミング命令の適用に関する自身の知識と経験に基づくプログラマーが、英数字プログラムを完成させるために必要な幾何学的および技術的情報を手動で書き込みます。手動プログラミングは、次の基本的なアクティビティとして編成できます。
- 処理、ベース、ツーリング計画の定義
- ルート計画の目的で、ワークショップの図面を使用して幾何学的情報を翻訳する
- ツール、および処理順序に従ってブロックに配置する
- フォーム プログラム シート (G コード) でのプログラムの作成と完成
- プログラム シートからコントロール ユニット メモリへの情報の転送
プログラミング中
CNC プログラミングの方法を絶えず改善するため、およびプログラミングを機械自体に配置したいという願望のために、CNC のより大規模で簡単なアプリケーションを実現するために、一部のメーカーは、機械で直接プログラミングをサポートする制御ユニットを提供しています。自体。 CNC の適用が始まった当初から、いわゆる MDI (手動データ入力) モードでマシン上で即座にプログラミングする可能性がありましたが、操作中のプログラミングはまったく新しいプログラミング方法です。
この方法では、それをサポートするコントロール ユニットに、G コードを使用した従来のプログラミングを回避する追加機能が組み込まれています。ここでのプログラミングは、キーボードとグラフィカル ユーザー インターフェイスを介したオペレータとコントロール ユニット間のインタラクティブな対話に帰着します。これにより、単純な処理輪郭と処理用の入力サイクルが生成されます。入力されたクエリに基づいてユニットを制御し、必要なツール パスの計算を実行し、G コードを自動的に生成します。
CAD/CAM システムを使用したプログラミング
たとえば、航空宇宙、軍事、およびその他の産業で使用される部品の形状は、多軸加工 (3 軸、4 軸、および 5 軸の CNC 加工) を必要とする 2 次サーフェスで非常に複雑です。 .このようなサーフェスを処理するための複雑なプログラムには、数千のブロック (文) が必要であり、その手書きは非常に難しく、時間がかかります。したがって、技術的な準備、つまり、G コードと M コードに基づいて上記の部品を加工するための CNC マシンのプログラミングにコンピューターを使用する必要がありました。
CAD / CAMプログラミングは、コンピューターCNCプログラミングとして分類できます。 CAD と CAM の統合により、特にプログラミングの簡素化という点で、NC プログラミングが改善されました。これで、プログラマーはジオメトリの定義について考える必要がなくなりました。それが CAD / CAM ソフトウェアの役割です。プログラマーに残されているのは、プログラム内のシステムとの積極的な対話を通じて、グリップ、ベース、クランプ、切削工具、処理モードなどの他の技術情報を追加することです。 CAD / CAM と CAPP (Computer Aided Process Planning) の統合があり、これらの要件に対するソリューションも開発されていることを強調しておく必要があります。
CAD / CAM 環境で機械をプログラミングする手順は次のようになります:
<オール>
結論
今日では、G および M 機能の知識を必要としないプログラミング方法 (操作中のプログラミングおよび CAD/CAM CNC プログラミング) がありますが、特殊な状況ではプログラミングを手動で行う必要がある場合があるため、プログラマーはそれらを知っておく必要があります。肯定的なことは、プログラミング言語の G コードと M コードが普遍的であると言えることです。つまり、G コードと M コードを知っていれば、すべての CNC マシンをプログラムでき、構文の違いを最小限に抑えることができます。 G および M コード。設計のためにプロの CNC プログラマーを見つけることを心配していますか?ご安心ください。WayKen は、CNC 機械加工業界で 20 年以上の経験を持ち、高度な製造技術と経験豊富な CNC エンジニアを備えたメーカーであり、製品設計のニーズを満たす準備ができています。今すぐ見積もりを入手!
CNCマシン
- CNCマシンのes
- GおよびMコード:CNCプログラミング言語を理解する
- G コードと M コードの違い
- プロのようにGコードとMコードを理解する[完全ガイド]
- CNC G コードの紹介
- CNC プログラミング サイクルまたは CNC 缶詰サイクルの長所と短所
- CNC プログラミングの原理と応用
- CNC プログラミング テクニック:効果的な方法とアプリケーションに関するインサイダー ガイド
- Hurco CNC マニュアル プログラミングとメンテナンスの無料ダウンロード
- G71 荒削りサイクル サンプル コード – CNC 旋盤プログラミング
- CNC プログラミングの基礎 – サンプル プログラム コードによるチュートリアル