2024-09-18
更新
志民 直人
技術営業、カスタマーサクセス
切削加工歴29年の1級機械加工技能士(精密器具製作/フライス盤/数値制御フライス盤)。金型・部品加工経験を持ち、CAD・CAMや各種工作機械に精通。設計からカスタマーサービスまで幅広く対応。製造現場改善や治具設計も得意。趣味は日曜大工、ゲーム。
数値制御で動作するNC工作機械を扱うには、NCプログラムを用いて指令する必要があります。NCプログラムにはGコードやMコードなどのコードがありますが、これらの内容を理解してプログラムしなければなりません。そこで今回は、NCプログラムのうちのGコードについて解説します。
Gコードとは、NCプログラムの一種で「準備機能」と呼ばれるものです。NC工作機械に指令を送り、ワークの加工が行えるようになります。
Gコードは「アドレスキャラクタ」と呼ばれるGのアルファベットと、後ろにつく2桁の数値を表示させることで、指令が送られます。新しい制御装置の場合は、Gコードを3桁やそれ以上の桁にしているものもあります。
Gコードは一般的にG00~G99までのコードがあります。種類が豊富で全てを把握するのは難しいものの、頻繁に使うGコードを覚えておけば、プログラム作成は可能です。
また、NCプログラムは事前にパソコン上でワークを切削できるシミュレーションソフトがあります。シミュレーションソフトを使えば、プログラムデータをNC工作機械に送る前に、仮想の加工を行えるので、不良品や工具の破損といったトラブルを防止できます。シミュレーションソフトは、トレーニング目的でも使うことが可能です。
Gコードには、指令の有効な範囲の違いによって「ワンショットGコード」と「モーダルGコード」の2種類に分けられます。
ワンショットGコードは、指定されたブロックに対してのみ有効なGコードのことを指します。Gコードにはそれぞれグループ分けがされており、グループによってワンショットとモーダルのどちらかに分類されます。
モーダルGコードは、指令されたブロックから持続して有効になるGコードのことを指します。有効な範囲は、同じグループのGコードが指令されるまでです。
ここでは、JIS B 6315-1で規定されている、NC工作機械でよく使用するGコードについて紹介します。Gコードは使用するNC工作機械により、コードの仕様が異なる場合があるので、ここで紹介するものはあくまで参考として見てください。
機能:位置決め
説明:指令した位置へ最大送り(例えば、早送り)で移動させるモード。このモードによってあらかじめプログラムした速度は無視されるが、キャンセルされない。各軸の運動は、同期しなくてもよい。
機能:直線補間
説明:一様な勾配又は制御軸に平行於な直進運動を指定する制御のモード。
機能:G02は時計回りの円弧補間、G03は反時計回りの円弧補間
説明:工具の運動面をそれと直角な軸の負方向に見たときの工具の運動が、円弧に沿って時計回り、もしくは反時計回りになるように制御する輪郭制御のモード。
機能:ドウェル(遅延)
説明:プログラムした時間又は主軸回転数だけ、次のブロックに入るのを遅らせる機能。
機能:G17はXY面の選択、G18はZX面の選択、G19はYZ面の選択
説明:同時に2軸を動作させる円弧補間、工具径補正などを行わせる面を選択するモード。
機能:今後とも指定しない、又は原点復帰
説明:原点復帰モードとして使用してもよい。
機能:工具径補正のキャンセル
説明:前に与えた工具径補正(直径又は半径)又は工具オフセットをキャンセルする指令。キャンセル後は補正しない工具経路となる。
機能:工具径補正、左
説明:工具の相対的な運動方向に向かって左側に工具経路を補正する指示。
機能:工具径補正、右
説明:工具の相対的な運動方向に向かって左側に工具経路を補正する指示。
機能:工具オフセット、正
説明:工具オフセットの値を関連するブロックの座標値に加算する指令。
機能:工具オフセット、負
説明:工具オフセットの値を関連するブロックの座標値に減算する指令。
機能:未指定又は工具長オフセットのキャンセル
説明:工具長オフセットのキャンセルとして使用してもよい。
機能:ワーク座標系選択
説明:工作物に定められた複数の右手直交座標系からの選択。
機能:固定サイクルのキャンセル
説明:固定サイクルをキャンセルする指令。
機能:固定サイクル
説明:中ぐり、穴あけ、ねじ立てなどの加工を行うために、あらかじめ定めた一連の作業シーケンスを実行させる指令。
<固定サイクルのコード内容>
機能:アブソリュートディメンション
説明:ブロック内の座標軸をアブソリュートディメンション(絶対座標)として与える指令。G90は、以後の位置指令が、常に原点からの距離であることを指令します。
機能:インクリメンタルディメンション
説明:ブロック内の座標軸をインクリメンタルディメンション(相対座標・増分座標)として与える指令。G91は、以後の位置指令が直前の位置からの距離であることを指令します。
固定サイクルとは、穴あけやタップ立てなど、頻繁に行う加工に対してあらかじめ設定した一連の動作を1ブロックにまとめたもののことを指します。JIS B 6315-1では、G81~G89のGコードが該当します。
Gコードの固定サイクルは、以下の動作から成り立ちます。
・X-Y軸の位置決め(G17 XY平面の場合)
・R点(リファレンス点、XY平面の場合Z軸の基準位置)レベルまでの早送り
・加工
・穴底位置の動作
・R点レベルまでの逃げ
・イニシャルレベル(固定サイクルの開始位置)までの逃げ
加工軸方向の移動量は、G90(アブソリュート)とG91(インクリメンタル)で異なります。
また、固定サイクルはG80を指令するとキャンセルされます。Gコードにはそれぞれグループが分類されていますが、グループ01のGコード、G00、G01、G02、G03の指令が行われた場合も固定サイクルはキャンセルされます。
正方形に移動するGコードのプログラム例
O0001(SAMPLE);
G90 G00 X0.Y0.;
G01 X10. Y0. F100.;
X10.Y10.;
X0.Y10.;
X0.Y0.;
%
上記は正方形に移動するGコードのプログラム例です。
次に上記で使用している記号や、そのほかに使用する場合のある記号の意味について見てみましょう。
・%、データスタート・データエンド
プログラムの始めに付く%はデータスタートを表す記号、プログラムの最後に付く%はデータエンドを表します。ただし、機器によっては必要としない場合もあります。
・O、プログラム番号
データスタートの次のブロックに来るのがOのプログラム番号です。アルファベットOに加えて最大で4文字(0000~9999)の数字が入ります。プログラム番号は、1つのプログラムに1つ記述する必要があります。
・()、コメント
プログラム番号の後ろに付く()は、コメントの意味を表し、NCでは読み込まれないものです。()は、プログラムの意味を分かりやすくするためのコメントとして便利です。
・;、EOB
プログラムの行の最後には「;(セミコロン)」が付きます。これは「EOB(エンドオブブロック)」と呼ばれるもので、行の頭から;までをブロックと呼びます。ただし、EOBはパソコンでプログラムを行った場合、設備に読み込ませる際に改行が;に変換されるので付ける必要はありません。
・N、シーケンス番号
各ブロックの最初には「シーケンス番号」と呼ばれる、アルファベットのNと数値が組み合わされたものが付いている場合もあります。シーケンス番号は、番号が順番に大きくなるようにプログラムの要所に付けておくと、編集の際に番号をサーチすることで、所定のブロックを探しやすくなるので便利です。シーケンス番号の順序や、付けるかどうかの選択は任意になります。
・S、主軸の回転数
アルファベットのS+数値の表記は、主軸の回転数(rpm)を意味します。
・F、送り速度
アルファベットのF+数値の表記は、送り速度(mm/min)を意味します。
・T、工具選択
アルファベットのT+数値は、その数値に該当するツールを呼び出します。Tは呼び出しだけで交換は行わないので、工具交換を行うにはMコードと合わせて使用します。
Mコードとは、「補助機能」と呼ばれるもので、NC工作機械を動かして加工するための指令を出すコードのことを指します。Gコードは準備機能であるのに対して、Mコードは補助をするための役割を持ちます。
MコードはアドレスキャラクタのMと、後ろにつく2桁の数字で表します。例えば「M03」と記述されているMコードは主軸正転を意味しており、M03に加えて指令した数値で回転を行います。ただし、MコードはNC工作機械のメーカーによって指令が異なる点に注意してください。
見積や調達にお困りの場合は、ぜひMitsuriをご活用ください!
図面をアップロードするだけで、加工できる工場から見積が届きます。
WEB上で見積~発注まで完結します。詳しくは下のボタンから!
金属加工のマッチングならMitsuri!
法人・個人問わずご利用できます。
Mitsuriでどんな取引が行われている?
新しい機能を使ってどう新規取引につなげる
そんな疑問に毎月メールでお届けします