NCのMコードとは|誰でもわかる!NCプログラムを徹底解説|工作機械のいろは

工作機械を制御する際、切削軸やテーブルの移動など「軸を動かす」指令はGコードが担いますが、それ以外に主軸の回転・停止、工具交換、冷却液(クーラント)のON/OFFなど、加工を実現するための補助動作を制御するのがMコードです。Mコードは見た目はシンプルですが、機械の安全性や加工精度、段取り時間に直結する非常に重要な命令群です。本記事では、Mコードの役割、使い方、代表的なコードと使用例、運用時のポイントをわかりやすく解説します。

Mコードの基本構造と1行1命令の原則

Mコードは「M+数字(通常2桁)」という形式で記述されます。例えばM03、M08などが代表例です。理解しておきたい特徴は以下の通りです。

  • 1行1命令の原則:多くのNC制御装置では、1行(1ブロック)に複数のMコードを記述することが制限されています。
  • モーダルとワンショット:主軸起動(M03)など継続的に作用するものはモーダル、一方でM30のようにその行だけで完結する命令はワンショットです。
  • 仕様依存性:同じMコード番号でも、機械・制御装置によって動作が異なる場合があります。

よく使われるMコードと使用例

M00:プログラムストップ

プログラム実行を強制的に停止し、作業者の指示を待ちます。

N100 M00

M01:オプショナルストップ

オプショナルストップ機能がONの場合のみ停止します。

N150 M01

M02:プログラム終了(頭出しなし)

プログラムを終了し、次回開始には手動で先頭へ戻る必要があります。

N200 M02

M03:主軸正転(時計回り)

主軸を時計回りに回転させます。通常はSコードと組み合わせて使用します。

S1200 M03

M04:主軸逆転(反時計回り)

主軸を反時計回りに回転させる命令です。

S800 M04

M05:主軸停止

主軸の回転を停止します。

M05

M06:工具交換(ATC)

自動工具交換装置(ATC)を利用して工具を交換します。

T02 M06

M08:クーラント ON

冷却液(クーラント)を噴射開始します。

M08

M09:クーラント OFF

クーラントを停止させます。

M09

M30:プログラム終了(頭出しあり)

プログラムを終了し、次回開始時には自動で先頭行へ戻ります。

N300 M30

Mコード運用・導入時のチェックポイント

  • 同じ番号でも機械ごとに動作が異なるため、必ず機械マニュアルを確認しましょう。
  • 主軸停止(M05)、クーラント停止(M09)を行ってから工具交換(M06)を実行するなど、動作順序を正しく理解することが重要です。
  • プログラム中の停止命令(M00/M01)は衝突リスクを避けるため、位置や条件を明確にして使用します。
  • コメントやN番号を適切に付けることで、プログラムの管理・修正・トラブル対応が容易になります。
  • シミュレーションや試運転により、補助動作ミスによるトラブルを事前に防ぎます。
  • 現場スタッフ同士でMコードの理解レベルを揃え、教育や運用ルールを整備することが安全運用の鍵です。

まとめ

MコードはNCプログラムにおける「補助動作」を担う命令群であり、主軸回転、工具交換、クーラント制御、プログラム停止や終了など、加工プロセスの周辺動作を制御します。Gコードが軸の移動や加工パスを担当するのに対し、Mコードはその前後の準備や付属機能を管理する役割を担います。Mコードの正しい理解は、加工品質の向上、段取り時間の短縮、加工トラブルの回避に直結します。機械固有の仕様と合わせて理解し、適切に運用することで、より安全で効率的な加工が実現できます。