対象者:小ロット多品種生産に従事している入社1~3年未満の技術者
この記事では、NCプログラムの基本からマクロプログラムの作成方法までをわかりやすく解説します。具体的なサンプルプログラムも用意しましたので、実際の業務に応用してみてください。
1. NCプログラム作成の基本
NCプログラムは、機械に加工指示を与えるための言語です。初心者が最初に押さえるべきポイントは以下の3つです。
- 座標系の理解
加工物の位置を正確に指定するため、Gコードを使用して座標を設定します。- G17: XY平面選択
- G90: 絶対座標指定
- G91: 増分座標指定
- 加工順序の構築
以下の流れでプログラムを作成します。- 原点復帰
- 加工条件の設定(切削速度や回転数)
- 加工動作の指示
- プログラム終了
- 基本的なGコードとMコード
代表的なGコードとMコードを覚えるだけで基本操作が可能です。- G01: 直線補間
- G02/G03: 円弧補間
- M03/M04: 主軸正転・逆転
- M30: プログラム終了
サンプルNCプログラム
以下は、10mm径の穴を3か所開けるプログラム例です。
O0001 (プログラム番号)
G21 (ミリ単位)
G17 G90 (XY平面、絶対座標)
G0 G54 X0 Y0 (原点復帰)
M03 S1000 (主軸正転、1000回転/分)
G43 H1 Z5.0 (工具長補正、Z方向5mm)
M08 (クーラントON)
G81 R2.0 Z-10.0 F100.0 (穴あけサイクル)
X0 Y0 (位置1)
X20 Y0 (位置2)
X40 Y0 (位置3)
G80 (固定サイクル解除)
M09 (クーラントOFF)
G0 Z50 (工具退避)
M30 (プログラム終了)
プログラムのポイント
- G81: 穴あけの固定サイクルを利用
- X, Y座標: 穴を開ける位置を指定
- F100.0: 加工送り速度(100mm/分)
2. マクロプログラムの基本
マクロプログラムは、汎用性を高め、作業効率を向上させるためのカスタマイズされたプログラムです。特に、小ロット多品種生産では、同じ形状を異なるサイズや位置で繰り返し加工する場合に便利です。
基本的な構文
- #番号: 変数(データを保存)
- GOTO: 指定行へのジャンプ
- IF: 条件分岐
サンプルマクロプログラム
以下は、複数サイズの穴を一括加工するマクロプログラムの例です。
O0002 (マクロプログラム例)
#1=10.0 (穴の直径)
#2=3 (穴の数)
#3=0.0 (開始X位置)
#4=20.0 (X方向の間隔)
G21 (ミリ単位)
G17 G90 (XY平面、絶対座標)
M03 S1000 (主軸正転)
G43 H1 Z5.0 (工具長補正)
N10
IF[#2LE0]GOTO20 (穴の数が0以下なら終了)
G81 R2.0 Z-10.0 F100.0
X#3 Y0
G80
#3=[#3+#4] (次のX位置を計算)
#2=[#2-1] (穴の数を1減らす)
GOTO10
N20
M09 (クーラントOFF)
G0 Z50 (工具退避)
M30 (プログラム終了)
プログラムのポイント
- #1, #2, #3, #4: 変数を使い、簡単に設定を変更可能
- 条件分岐 (IF): 穴の数が0になるまでループ処理
3. マクロプログラムの応用:加工後の自動寸法測定と補正
小ロット多品種生産では、加工後の精度確認が重要です。以下のプログラムは、主軸プローブを使用して加工後の寸法を測定し、誤差を補正する例です。
サンプルプログラム
O0003 (測定と補正のマクロ)
G21 (ミリ単位)
G90 G17 (絶対座標、XY平面)
M06 T1 (工具交換)
G0 G54 X0 Y0 Z50 (原点復帰)
(PROBING START)
G65 P9810 Z50.0 F200.0 (プローブのセット)
G65 P9811 X10.0 Y10.0 Z-10.0 (寸法測定)
#500=[#5061-10.0] (測定値と目標値の差を計算)
IF[#500GT0.02]THEN #501=[#500*(-1)] (補正量を計算)
IF[#500LT-0.02]THEN #501=[#500*(-1)]
G10 L20 P1 R#501 (オフセットデータを更新)
M30 (プログラム終了)
プログラムのポイント
- G65 P9811: 寸法測定用のプローブサイクル
- #500: 加工後の寸法誤差
- G10: オフセット値を補正
4. まとめと実践アドバイス
NCプログラムやマクロプログラムの活用により、小ロット多品種生産での効率が大幅に向上します。今回のサンプルプログラムを基に、以下を試してみてください。
- サンプルを加工機に入力し動作確認
- 加工対象の形状やサイズに合わせてカスタマイズ
- 測定データを基にした補正機能の追加検討
現場でのプログラム作成は、経験を重ねるほど効率的かつ精度の高いものになります。まずはシンプルなプログラムから始め、徐々にマクロの活用範囲を広げていきましょう。