21 ユニット 4:CNC 言語と構造
目的
この単元を完了すると、次のことができるようになります:
- プログラム リストの説明を確認する
- プログラムの形式を理解する
- レター アドレス コマンド コードの説明
- 特殊文字コードの定義について説明する
- G &M コードを理解する
CNC プログラムは、記述された順序で実行される命令をリストします。本のように、左から右、上から下に読みます。 CNC プログラムの各文は、aBlock と呼ばれる個別の行に書かれています。ブロックは、安全性、予測可能性、読みやすさを促進する特定の順序で配置されるため、標準的なプログラム構造を順守することが重要です。
ブロックは次の順序で配置されます:
- プログラム開始
- ロードツール
- スピンドルオン
- クーラントオン
- 部品の上に素早く配置
- 機械加工
- クーラントオフ
- スピンオフ
- 安全な位置に移動
- プログラムを終了
上記の手順は、1 つのツールのみを使用して 1 つの操作を実行する、最も単純なタイプの CNC プログラムを表しています。複数のツールを使用するプログラムは、それぞれに対してステップ 2 から 9 を繰り返します。
セクションG &M コードの表 3 と表 4 可能であれば覚えておくべき最も一般的な G コードと M コードを示します。
他の言語と同様に、G コード言語にも規則があります。たとえば、一部のコードはモーダルです。つまり、ブロック間で変化しない場合は繰り返す必要はありません。一部のコードは、使用方法と使用場所によって意味が異なります。
これらのルールはこの章でカバーされていますが、言語のすべてのニュアンスを学習することを気にしないでください。 CNC プログラムを適切にフォーマットして書き込むのは、CAD/CAM ソフトウェア ポスト プロセッサの仕事です。
プログラム形式
表 1 のプログラム:以下は、正方形の輪郭を機械加工し、穴を開けます。
ブロック | 説明 | 目的 |
% O1234 (T1 0.25 エンドミル) G17 G20 G40 G49 G80 G90 | プログラムの開始。 プログラム番号 (プログラム名)。 オペレーター向けのツールの説明。 マシンがセーフ モードであることを確認するための安全ブロック。 | プログラムを開始 |
T1 M6 S9200 M3 | ツール #1 をロードします。 スピンドル速度 9200 RPM、時計回り。 | ツールの変更 |
G54 M8 G00 X-0.025 Y-0.275 G43 Z1.H1 Z0.1 G01 Z-0.1 F18. | フィクスチャ オフセット #1 を使用します。 クーラントオン。 部分の上で急速に。 安全な平面まで迅速に、工具長オフセット #1 を使用してください。 飛行機に素早く送ります。 18 IPM の切削深さまでラインを移動します。 | 位置に移動 |
G41 Y0.1 D1 F36. Y2.025 X2.025 Y-0.025 X-0.025 G40 X-0.4 G00 Z1. | CDC 左、リード線、直径。オフセット #1、36 IPM。 行移動。 行移動。 行移動。 行移動。 リードアウト ムーブで CDC をオフにします。 急いで安全な飛行機へ。 | 機械の輪郭 |
M5 M9 (T2 0.25 ドリル) T2 M6 S3820 M3 | スピンオフ。 クーラントオフ。 オペレーター向けのツールの説明。 ツール #2 をロードします。 スピンドル速度 3820 RPM、時計回り。 | ツールの変更 |
M8 X1. Y1. G43 Z1.H2 Z0.25 | クーラントオン。 穴の上で急速に。 工具長さオフセット 2 を使用して、安全な平面にすばやく移動します。 飛行機に素早く送ります。 | 位置に移動 |
G98 G81 Z-0.325 R0.1 F12. G80 Z1. | ドリル穴 (缶詰) サイクル、深さ Z-.325、F12。 ドリル サイクルをキャンセルします。 急いで安全な飛行機へ。 | ドリル穴 |
M5 M9 G91 G28 Z0 G91 G28 X0 Y0 G90 M30 % | スピンオフ。 クーラントオフ。 Z のマシン ホーム ポジションに戻ります。 XY でマシンのホーム ポジションに戻ります。 絶対位置決めモードにリセットします (安全のため)。 プログラムを最初にリセットします。 プログラムを終了します。 | プログラム終了 |
レター アドレス コマンド コード
コマンドブロックは、レターアドレスコマンドを使用して工作機械を制御します。いくつかは複数回使用され、同じブロックに出現する G コードに基づいて意味が変わります。
コードは、取り消されるか変更されるまで有効であることを意味するモーダルか、現在のブロックでのみ有効であることを意味する非モーダルのいずれかです。ご覧のとおり、文字アドレスの多くは論理的な方法で選択されています (ツールは T、スピンドルは S、送り速度は F など)。
以下の表は、最も一般的なレター アドレス コマンド コードの一覧です。
表 2:レター アドレス コマンド コード
変数 | 説明 | 定義 |
A | A軸(X軸を中心とした回転軸)の絶対位置または増分位置 | A、B、C – 4/5 軸回転運動
それぞれ X、Y、または Z 軸を中心とした回転。角度は度単位で、小数点以下 3 桁までの精度です。 |
B | B 軸 (Y 軸を中心とした回転軸) の絶対位置または増分位置 | Aと同じ |
C | C 軸 (Z 軸を中心とした回転軸) の絶対位置または増分位置 | Bと同じ |
D | カッター補正に使用される直径または半径オフセットを定義します |
工具径の摩耗とたわみを補正するために使用します。D には工具番号と同じ整数が付きます (T5 は D5 を使用するなど)。小数点は使用しません。これは常に G41 または G42 および XY 移動 (決して円弧ではない) と組み合わせて使用されます。呼び出されると、コントロールはレジスタを読み取り、ツール パスをレジスタ内の値だけ左 (G41) または右 (G42) にオフセットします。 |
E | 旋盤でのねじ切りの精密な送り速度 |
|
F | 送り速度を定義します |
ライン、円弧、またはドリル サイクルを加工するときの送り速度を設定します。送り速度は、インチ/分 (G94 モード) または逆時間 (G93 モード) で指定できます。送り速度は小数点以下 3 桁までの精度 (タップ サイクルの場合) で、小数点が必要です。 |
G | 準備コマンドのアドレス | G コマンドは、多くの場合、必要な動作の種類 (例:高速位置決め、直線送り、円送り、固定サイクル) または使用するオフセット値をコントロールに伝えます。 G02 X2.Y2.I.50J0. |
H | 工具長オフセットを定義します; C 軸に対応するインクリメンタル軸 (ターンミルなど) |
このコードは、コントロールのツール長オフセット (TLO) レジスタを呼び出します。コントロールは、TLO と Fixture Offset Z 値を組み合わせて、パーツ データムに対するツールの位置を認識します。常に整数 (H1、H2 など)、G43、および Z 座標が付随します。 |
私 | G02 または G03 円弧コマンドの X 軸の円弧サイズを定義します。 一部の固定サイクル内のパラメーターとしても使用されます。 |
円弧移動 (G2/G3) の場合、これは円弧の始点から円弧の中心までの増分 X 距離です。一部のドリル サイクルでは、オプションのパラメータとして I も使用されます。
|
J | G02 または G03 円弧コマンドの Y 軸の円弧サイズを定義します。 一部の固定サイクル内のパラメーターとしても使用されます。 |
円弧移動 (G2/G3) の場合、これは円弧の始点から円弧の中心までの増分 Y 距離です。一部のドリル サイクルでは、オプション パラメータとして J も使用されます。
|
K | G02 または G03 円弧コマンドの Z 軸の円弧サイズを定義します。 また、L アドレスに等しい、いくつかの固定サイクル内のパラメーターとしても使用されます。 |
anarcmove (G2/G3) の場合、これは円弧の始点から円弧の中心までの増分 Z 距離です。 G17 平面では、これはらせん移動の増分 Z 距離です。一部のドリル サイクルでは、オプション パラメータとして J も使用されます。
|
L | 固定サイクル ループ カウント; G10で編集するレジスタの指定 | 固定サイクル ループ カウント:各位置での固定サイクルの繰り返し (「ループ」) の数を定義します。別の整数でプログラムされていない限り、1 であると想定されます。L の代わりに K アドレスが使用されることがあります。増分位置決め (G91) では、一連の等間隔の穴は、個々の位置ではなく、ループとしてプログラムできます。G10use:編集するレジスタの指定 (ワーク オフセット、工具半径オフセット、工具長オフセットなど)。 |
M | その他の機能 |
その意味を決定する整数が常に付随します。コードの各ブロックで許可される M コードは 1 つだけです。 M コードの拡張定義は、この章の後半に記載されています。 |
N | プログラム内の行 (ブロック) 番号; G10で変更するシステムパラメータ番号 |
ブロック番号により、CNC プログラムが読みやすくなります。サブプログラムのない CAD/CAM で生成されたプログラムでは、ほとんど必要ありません。それらは制御メモリを占有するため、ほとんどの 3D プログラムはブロック番号を使用しません。ブロック番号は、5 文字までの小数点なしの整数です。テープの開始/終了文字 (%) の前には表示できず、通常はコメントのみのブロックの前には表示されません。 |
O | プログラム名 |
プログラムは、プログラム番号によって制御装置に保存されます。これは、文字 O が前に付いた整数で、小数点以下の桁数はありません。
|
P | さまざまな G および M コードのパラメーター アドレスとして機能します |
秒単位の滞留 (遅延)。特定のドリル サイクル内で使用されない限り、G4 を伴う。
|
Q | 固定サイクルのペック インクリメント |
ペック ドリル サイクルのパスごとの増分送り距離。
|
R | 円弧半径のサイズを定義するか、固定サイクルでリトラクトの高さを定義します |
円弧は、円弧半径 R または I、J、K ベクトルを使用して定義できます。 IJK は R よりも信頼性が高いため、代わりに IJK を使用することをお勧めします。 Ri はドリル サイクルでも戻り面の Z 値として使用されます。
|
S | モードに応じて、スピンドル速度または表面速度のいずれかの速度を定義します |
毎分回転数 (RPM) のスピンドル速度。これは小数点のない整数値であり、常に M03 (主軸を時計回りに) または M04 (主軸を反時計回りに) と組み合わせて使用されます。
|
T | ツールの選択 |
ツールを選択します。常に M6 (工具交換コード) を伴う整数値です。 |
う | X 軸に対応するインクリメンタル軸 (通常、旋盤グループ A コントロールのみ) 一部のマシンの滞留時間も定義します。 | これらの制御では、X と U はそれぞれ G90 と G91 を不要にします。これらの旋盤では、代わりに G90 が荒加工用の固定サイクル アドレスになります。 |
V | Y軸に対応する増分軸 | 2000 年代まで、U と W を使用するほとんどの旋盤には Y 軸がなく、V を使用しなかったため、V アドレスはほとんど使用されませんでした。 ) ライブ旋盤ツーリングとターンミル加工の急増により、V アドレスの使用は以前ほどまれではなくなりましたが (Smid2008 は例を示しています)、今でもよくあることです。 |
W | Z 軸に対応するインクリメンタル軸 (通常、旋盤グループ A コントロールのみ) | これらの制御では、Z と W はそれぞれ G90 と G91 を不要にします。これらの旋盤では、代わりに G90 が荒加工用の固定サイクル アドレスになります。 |
X | X 軸の絶対位置または増分位置。 |
X 軸の座標データ。小数点以下 4 桁まで使用でき、末尾のゼロは使用されません。座標はモーダルであるため、変更されない場合は後続のブロックで繰り返す必要はありません。 |
はい | Y 軸の絶対位置または増分位置 | Y 軸の座標データ。 G01 Y2.250 F20. |
Z | Z 軸の絶対位置または増分位置 | Z 軸の座標データ。 |
特殊文字コードの定義
以下は、一般的に使用される特殊文字、その意味、使用、および制限のリストです。
% – プログラムの開始または終了
すべてのプログラムは、ブロック自体の % で始まり、% で終わります。このコードは、テープ巻き戻し文字と呼ばれます (紙テープを使用してプログラムをロードした時代からの名残り)。
( ) – コメント
オペレーターへのコメントは、すべて大文字で括弧で囲む必要があります。コメントの最大長は 40 文字で、すべて大文字です。
(T02:5/8 END MILL)
/ – ブロック削除
コントロールのブロック削除スイッチがオンの場合、この文字の後のコードは無視されます。
/ M00
; – ブロックの終わり
この文字は、CNC プログラムをテキスト エディタ (キャリッジ リターン) で読み取った場合には表示されませんが、プログラムをマシン コントロールに表示すると、コードの各ブロックの最後に表示されます。
N8 Z0.750;
G &M コード
G&M コードは、CNC プログラムの内容の大部分を占めています。コードの各クラスの定義と、最も重要なコードの特定の意味については、次に説明します。
Gコード
G で始まるコードは、特定の種類の動作に備えて機械を準備するため、準備語と呼ばれます。
表 3:G コード
コード | 説明 |
G00 | 急速な動き。フライス加工以外の動きのために機械を配置するために使用されます。 |
G01 | 指定された送り速度でのライン モーション。 |
G02 | 時計回りの弧。 |
G03 | 反時計回りの円弧。 |
G04 | 住む。 |
G28 | マシンのホーム ポジションに戻ります。 |
G40 | カッター径補正 (CDC) オフ。 |
G41 | カッター径補正 (CDC) 左。 |
G42 | カッター径補正 (CDC) 右。 |
G43 | 工具長オフセット (TLO)。 |
G54 | フィクスチャ オフセット #1. |
G55 | フィクスチャ オフセット #2. |
G56 | フィクスチャ オフセット #3. |
G57 | フィクスチャ オフセット #4. |
G58 | フィクスチャ オフセット #5. |
G59 | フィクスチャ オフセット #6. |
G80 | ドリル サイクルをキャンセルします。 |
G81 | シンプルなドリル サイクル。 |
G82 | ドウェル付きのシンプルなドリル サイクル。 |
G83 | ペック ドリル サイクル。 |
G84 | サイクルをタップします。 |
G90 | 絶対座標プログラミング モード。 |
G91 | インクリメンタル座標プログラミング モード。 |
G98 | ドリル サイクルは初期点 (R) に戻ります。 |
G99 | ドリル サイクルが基準面に戻る (最後の Z 高さ) |
Mコード
M で始まるコードは雑語と呼ばれます。それらは、クーラントやスピンドル方向などの機械補助オプションを制御します。コードの各ブロックに表示できる M コードは 1 つだけです。
表 4:M コード
コード | 説明 |
M00 | プログラムを停止します。続行するにはサイクル開始ボタンを押してください。 |
M01 | オプションの停止。 |
M02 | プログラムの終了。 |
M03 | 時計回りにスピンドル。 |
M04 | 反時計回りにスピンドル。 |
M05 | 主軸停止。 |
M06 | ツールを変更してください。 |
M08 | クーラントオン。 |
M09 | クーラントオフ。 |
M30 | プログラムを終了し、Cycle Start を押して再度実行してください。 |
G コード定義の選択 (拡張)
G00 – 素早い動き
このコードは、指定されたポイントまでできるだけ速く移動するようにマシンに命令します。これは常に座標位置で使用され、モーダルです。 G01 とは異なり、G00 は軸が直線的に移動するように調整しません。むしろ、各軸は満足するまで最大速度で移動します。これにより、以下の図 18 に示すようなモーションが発生します。
G00 X0. Y0.
図 1. G00 MotionCaution:一部のマシンの急速な速度は 1 を超える可能性があります。不適切なオフセットまたは座標移動は、オペレーターが非常停止を押すよりも速く機械をクラッシュさせます。初めてプログラムを実行するときは、機械で早送りオーバーライドを使用します。直線運動は直線運動です:G コードは運動に関するものであり、パート プログラムで見られる最も一般的な種類の運動は、直線運動または直線運動です。モーションは、モーダルな G コードのもう 1 つの機能です。コントローラに G コードを使用してどのようなモーションが必要かを伝えると、コントローラは、別の G コードを使用して変更するように指示するまで、常にその種類のモーションを作成することを覚えています。
高速ポジショニングの場合は G00; Rapids Motion はマシンと同じ速さで動きます。カッターを空気で次の切断位置に移動するために使用します。
より遅い切削動作の場合は G01。カットするために、送り動作を遅くします。 「F」G コードによって設定された送り速度。
F-word =「Feedrate」の「F」。
S ワード =「Spindle Speed」の「S」、アドレスは rpm です。
X、Y、Z による直線運動の指定:
G00 または G01 を指定してもモーションは発生しません。最終的にどこに移動するかをコントローラに指示するときに、予想されるモーションのタイプをコントローラに伝えるだけです。実際のモーションでは、X、Y、および Z ワードを使用して目的地を指定する必要があります。パート 0 に移動するには、次のようなコマンドを発行します:
G00 X0 Y0 Z0 または もっとゆっくりしたい場合は G01 を使用 G01 X0 Y0 Z0 F40.
補間された動きまたは補間された動き、線上に複数の座標を指定する場合、機械の複数の軸が同時に動いていることを意味します。実際、コントローラーは、カッターが目的地まで直線をたどり、送り速度で移動するように、それらすべてを互いに正確に適切な速度で移動させます。
同じ目的地を指定するが、座標を複数の行に分散する場合、各行は個別の移動になります:
G00 X0 Y0 (Z を一定に保ちながら、X0 Y0 まで一手で移動)
Z0 (X と Y を一定に保ちながら、Z0 に一度に移動)
G00 と G01 はモーダルなので、モードを変更したい場合にのみ指定する必要があります。
Z 軸:
補間された移動の概念は、Z 軸に関する興味深い問題を引き起こします。多くの場合、他の軸 (X および Y) と連携して動作するのではなく、切削深さ軸を単独で移動することをお勧めします。カッターが工作物や固定具に近づくと、問題 (衝突) が発生するかどうか。最初に X と Y に移動してから Z に移動すると、偶発的な衝突が発生しようとしているかどうかを判断する方がはるかに簡単です。また、切断を開始したい場所の真上に来るまでカッターを高く保つと、クランプのように突き出ているランダムな物体にぶつかる可能性がはるかに低くなります.
G02 と G03 の円運動は開始モードです:
G02 は、時計回りの円弧のモードを確立します。
G03 は、反時計回りの円弧のモードを確立します。
G02 または G03 モードが確立され、2 つのエンドポイントと、各エンドポイントから等距離にある必要がある中心を識別することによって、円弧が G コードで定義されます。エンドポイントは簡単です。現在のコントロール ポイント、またはブロックが開始された位置によって、1 つの終点が確立されます。もう 1 つは、XYZ 座標によって確立することができます。中心は、I、J、または K を使用して円弧の開始点から中心までの相対オフセットを確立することによって最も一般的に識別されます。
時計回りの円弧の例:
図 2. IJK を使用したアークの中心
この円弧は X0Y2 から始まります。 X2.Y0 で終了します。その中心は X0Y0 です。次のように G コードで指定できます:
G02 (時計回りの円弧モードの設定)
X2Y0 I0J-2.0
半径「R」を使用した中心。
円の半径を指定するだけで中心。円の半径は 2 であるため、G コードは次のようになります:
G02 X2Y0 R2
G17/G18/G19 – 平面指定
円弧は、コマンド G17 (XY)、G18 (XZ)、または G19 (YZ) で指定された平面上に存在する必要があります。 G17 がマシンのデフォルトです。
図 3. 平面の指定
G40/G41/G42 – カッター径補正 (CDC)
CDC は、精密な CNC 機械加工の鍵であり、プログラムされたパスから左 (G41) または右 (G42) にマシンを方向転換するように命令することにより、オペレーターがツールの摩耗とたわみを補正できるようにします。 G40 はカッター補正をキャンセルします。オフセット量は、CNC 制御 D レジスタに入力されます。ウェア レジスタは、コントロールがすべての動きで参照するテーブルのようなものと考えることができます。
表 5:直径オフセット レジスタ
工具径オフセット | 値 |
D1 | 0.0125 |
D2 | 0.0000 |
D3 | 0.0000 |
D4 | 0.0000 |
D5 | 0.0000 |
D6 | 0.0000 |
D レジスタの値は工作機械のオペレータによって計算されます。工作機械のオペレータは、部品の形状の仕上がりサイズを監視し、それらを印刷物と比較して、部品を仕様内に保つために必要に応じてレジスタに差を入力します。偏差がない場合、レジスタはゼロに設定されます。
G01 G41 D1 X1.0 Y.25 F40.
G43 – 工具長補正
G43 は工具長補正を有効にします。常に H コードと Z 移動が伴います。ここで、H は読み取るツール長オフセット (TLO) レジスタであり、Z はパーツ データムを参照して移動する高さです。
(TLO) は、コントロール上のテーブルのように考えることができます:
表 6:ワーク オフセット
工具長レジスタ | Z |
H1 | 10.236 |
H2 | 4.7510 |
H3 | 6.9652 |
H4 | 7.6841 |
H5 | 12.4483 |
H6 | 8.2250 |
TLO はコントロールのアクティブな治具オフセットと組み合わされるため、マシンはツールの先端がパーツ データムに対してどこにあるかを認識します。
G43 H1 Z1.
G54 – ワーク オフセット
ワーク オフセットは、機械のホーム X、Y、Z 位置からパーツ データムまでの距離を保持する CNC 制御内のデータ レジスタです。これらのオフセットは、コントロール上のテーブルのように考えることができます:
表 7:ワーク オフセット
ワーク オフセット | X | はい | Z |
G54 | 14.2567 | 6.6597 | 0.0000 |
G55 | 0.0000 | 0.0000 | 0.0000 |
G56 | 0.0000 | 0.0000 | 0.0000 |
G57 | 0.0000 | 0.0000 | 0.0000 |
G58 | 0.0000 | 0.0000 | 0.0000 |
G59 | 0.0000 | 0.0000 | 0.0000 |
X 値と Y 値は、機械のホームからパーツ データム XY までの距離を表します。 Z 値は、ツールの基準点 (たとえば、1-2-3 ブロックの上部) とパーツの Z データムからの距離です。
G54 X0. Y0.
単体テスト
1.CNCプログラムリスト命令を記述してください。
2. すべての CNC プログラムは何で始まり何で終わるのですか?
3.レターアドレスコマンドコードを記述してください。
4. 特殊文字コードを 3 つ挙げてください。
5. G コードと M コードを記述します。
6. G00 G90 G54 X0 Y0 と記述してください。
7. G00 G90 G43 H1 Z1 を記述してください。
8. G00 と G01 の違いは何ですか?
9. G02 と G03 の違いを説明してください。
10. F と S の単語を説明してください。
産業技術