M98, M99(サブプログラム呼出し、サブプログラム終了)
NCプログラムでは、メインプログラムの起動中に別のプログラムを呼び出して加工を行うことができます。「M98 P_ L_ 」の形式で記述され、P_ は呼び出すプログラムの番号になります。L_ はプログラムを実行する回数で、省略すると「L1」と同じになり1回だけ実行します。
サブプログラムの終わりに「M99」を記述することで、メインプログラムの「M98」が読み込まれたブロックに戻り、次のブロックから再開することができます。サブプログラム内でも、M02 や M30 が読み込まれるとプログラムが終了してしまいますので注意が必要です。
M98 の注意点
G65 のマクロ呼び出しとの大きな違いは、引数によって値を受け渡すことができないことです。したがって、メインのプログラムとサブプログラムで共通の変数を使う場合には十分な注意が必要です。
Mコードの詳細一覧
コード | 機能 |
---|---|
M00 | プログラムストップ |
M01 | オプショナルストップ |
M02 | プログラム終了 |
M03 | 主軸正転 |
M04 | 主軸逆転 |
M05 | 主軸停止 |
M06 | 工具交換 |
M08 | クーラントの吐出 |
M09 | クーラントの吐出停止 |
M19 | 主軸定位置停止 |
M20 | 自動電源しゃ断 |
M30 | プログラム終了と頭出し |
M33 | 工具収納 |
M98 | サブプログラム呼び出し |
M99 | サブプログラム終了 |
お知らせ
- 当サイトのPDF版を作成しました。教育資料やリファレンスとして使用して頂ければと思います。
→ NCプログラムの教科書 - 上級編も作成しました。
→ NCプログラム上級編