NCプログラムにおけるGコードとは?Mコードとの違いを実務視点で徹底解説

NCプログラムで最も重要な要素がGコード(準備機能)とMコード(補助機能)です。両者の役割を正しく理解することは、加工精度・段取り効率・トラブル回避に直結します。本記事では、GコードとMコードの定義、役割、主要コード一覧、使い分けのポイントまで体系的に解説します。
切削条件や工具選定の基礎は、工具の種類と選定ポイントに関して解説で詳しく解説していますので、あわせて参考にしてください。
Gコードとは|工具の動作や軌跡を制御する命令
Gコード(Preparatory Function:準備機能)は、NC工作機械における加工動作のモードや軌跡を指示するコードです。送り方式、位置決め方法、補間方式など、加工そのものに影響する設定を行います。
Gコードの役割
- 機械の動作モードを指定(絶対座標/相対座標)
- 工具の動き方を指定(直線補間/円弧補間)
- 工具交換位置・安全位置の管理
- 座標系の設定
主要なGコード一覧
| Gコード | 意味 |
|---|---|
| G00 | 早送り位置決め |
| G01 | 直線補間 |
| G02 / G03 | 円弧補間(CW / CCW) |
| G17 / G18 / G19 | 加工平面選択 |
| G90 / G91 | 絶対座標 / 相対座標 |
NCプログラムの基本構造は、切削加工の基礎に関して解説で詳しく解説しています。
Mコードとは|主軸・クーラントなど付帯機能を制御する命令
Mコード(Miscellaneous Function:補助機能)は、加工そのものではなく、機械の装置動作を制御する命令です。主軸の回転開始・停止、クーラントのON/OFF、チャック開閉などが含まれます。
主要なMコード一覧
| Mコード | 機能 |
|---|---|
| M03 / M04 | 主軸正転 / 逆転 |
| M05 | 主軸停止 |
| M06 | 工具交換 |
| M08 / M09 | クーラントON / OFF |
| M30 | プログラム終了+リセット |
加工中の主軸回転制御や停止タイミングの精度は、仕上げ面粗さに大きく影響します。
GコードとMコードの違い
両者の違いは以下の通りです。
| 項目 | Gコード | Mコード |
|---|---|---|
| 役割 | 工具の動作・軌跡を制御 | 機械の付帯動作を制御 |
| 加工結果への影響 | 大(寸法精度・形状精度に直結) | 中(加工品質や段取り効率に影響) |
| 例 | G01(直線補間)、G02(円弧) | M08(クーラント)、M06(工具交換) |
よくある質問
NCプログラムを作成する際の実務的注意点
1. G90とG91の混在は最も多いミス
絶対座標(G90)と相対座標(G91)の混在は干渉・クラッシュの主要因です。
2. Mコードはタイミングが重要
M05(主軸停止)は、ワークから工具が完全に離れた後に必ず配置します。
3. 工具長補正(G43)の記載漏れ
G43の記載漏れは工具突き出し事故の大きな原因になります。
4. 円弧補間(G02/G03)でのI・J誤記
円弧中心座標は符号ミスが多く、特にZ同時移動のある3軸加工では干渉リスクが上がります。

