G40・G41・G42ノーズおよび刃先R補正完全ガイド:機械衝突を防ぐ極意
G40、G41、G42コマンドによるCNC工具径・ノーズR補正を安全に運用する方法を解説。Fanuc、Siemens、Mitsubishiのパラメータ設定(19607番、#8157等)や干渉アラーム(PS0041、P153)の回避手順を網羅し、不良品発生や機械衝突を防ぎます。
はじめに
CNCマシニングセンタでの精密輪郭加工や旋盤でのテーパー切削において、工具径補正(G41/G42)の起動・キャンセルコマンドのプログラム上の不備は、回転チャック、バイスジョー、ワーク固定用クランプといった治具類や、隣接するダブルタレットへの刃具の激しい衝突、または過剰切削によるワークの食い込みといった致命的な加工ミスに直結します。特に、工具半径やノーズRのオフセット値、あるいは干渉チェックに関連するパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見されるという「再現性の低下」による深刻な問題が引き起こされます。しかし、段取り前に19607番パラメータ(CAV)や#8157番パラメータを確認することで、このコマンドで最も多い非計画停止を防げるのです。G40、G41、G42の挙動の違いと各コントローラ(Fanuc、Siemens、Mitsubishi)における特性を正しく理解し、適切なパラメータ管理を行うことこそが、不良品発生を完全に防ぎ、ロット生産における高い信頼性と繰り返し精度を維持するための絶対的な前提条件です。
技術概要
| 仕様項目 | 詳細 |
|---|---|
| Gコード指令 | G40(補正キャンセル)、G41(工具径・刃先R補正 左)、G42(工具径・刃先R補正 右) |
| モーダルグループ | グループ07(モーダル) |
| 対応コントローラ | Fanuc、Siemens、Mitsubishi |
| 重要パラメータ | Fanuc:5003(SUP/SUV 起動/キャンセルタイプ)、19607#5(CAV 干渉自動回避);Siemens:OFFN(輪郭オフセット量)、$TC_DP6(工具半径);Mitsubishi:#8157(ノーズR補正タイプB)、#1289 ext25 bit0(微小コーナー丸め) |
| 主な運動学的制約 | 補正の起動(G41/G42)およびキャンセル(G40)は、必ず直線補間ブロック(G00またはG01)でプログラミングする必要があります。補正が有効な間は、アクティブな加工平面(G17/G18/G19)を切り替えてはなりません。 |
クイックリード
- 補正の起動(G41/G42)およびキャンセル(G40)コマンドは、有効な補正ベクトルを作成してアラームを防ぐために、必ず直線補間移動ブロック(G00またはG01)に記述してください。
- ベクトルエラーを防止するため、起動ブロックでプログラムする直線移動の距離は、物理的な工具半径またはノーズRよりも確実に大きくなるようにしてください。
- 工具径補正の有効中は、アクティブな加工平面(G17、G18、またはG19)を絶対に切り替えないでください。平面を変更する前に、必ずG40キャンセルを実行してください。
- 交点計算を妨げる座標移動のないブロック(一時停止やMコードなど)の連続挿入を避け、先読み(look-ahead)バッファを監視してください。
- Siemensにおいて、インラインの
OFFN=パラメータを使用して直接輪郭オフセット量をプログラムすることで、荒加工や仕上げ加工のパスを迅速に生成します。 - 旋盤システムにおいて、手動でのG41/G42の切り替えを行うことなく、想定刃先位置に基づいて正しいノーズR補正方向を自動的に検出・適用するMitsubishi独自のG46コマンドを使用します。
- 過剰切削(オーバーカット)が検出されたときに、アラームPS0041で停止させる代わりに、動的に工具経路を再計算して加工サイクルを継続させるFanucのパラメータ19607番bit 5(CAV)を有効にします。
基本概念
G41およびG42コマンドの実務的なプログラミング効果は、工具の物理的な中心経路を、プログラムされた数学的な形状プロファイルから工具半径またはノーズRの分だけ動的にシフトさせることです。これにより、プログラマーはすべての角度や輪郭に対して中心線オフセットを手動で計算することなく、図面の寸法から直接G-codeを記述することができます。
補正ベクトルを正しく生成または解除するために、過渡ブロック(G41/G42による起動とG40によるキャンセル)は、移動距離が工具半径またはオフセット量を超える直線補間移動コマンド(g01-linear-interpolation)でなければなりません。補正が有効な状態で、円弧補間パス(G02/G03)で起動/キャンセルを試みたり、加工平面(g17-g18-g19-plane-selection)を切り替えたりすると、すべてのブランドでアラームがトリガーされます。
CNCシステムは、工具経路間の交点ベクトルを計算するために、後続のブロックを事前に読み込むことに依存しています。移動のないブロック(複数の一時停止、補助機能、Mコードなど)を連続して実行しすぎると、交点の数学的計算が破綻し、アラームがトリガーされたりワークピースに予期せぬ削り込み(食い込み)が生じたりするため、オペレータは先読み(look-ahead)バッファを維持する必要があります。
コマンド構造
補正の起動はモーダルであり、工具の進行方向に対する軌跡の側を制御します。G41がアクティブな場合、工具オフセットはプログラムされた輪郭の左側に計算されます。G42がアクティブな場合、オフセットは工具経路を輪郭の右側にシフトします。補正をキャンセルするためにG40を使用することは、機械を直接的な非補正座標移動状態に戻すために必須です。
CNCマシンがマシニングセンタ(Mシリーズ)か旋盤(Tシリーズ)かによって、補正アドレスと加工平面の扱いが異なります。マシニングセンタでは平面選択(G17、G18、またはG19)が必要であり、DまたはHアドレスのオフセット番号を介して半径値を関連付けます。旋盤はZX平面(通常はG18)でノーズR補正をネイティブに適用し、Tコードのオフセットレジスタから値を直接読み込みます。
各ブランド環境における構文構造:
- Fanucミーリング:
G17 G41 X_ Y_ D_;(またはHオフセット) - Fanuc旋削:
G18 G42 X_ Z_; - Siemens:
G1 G41 X_ Y_ OFFN=_; - Mitsubishiミーリング:
G17 G41 X_ Y_ D_; - Mitsubishi旋削:
G18 G42 X_ Z_; - Mitsubishi自動方向:
G46 X_ Z_; - Mitsubishiベクトル補正:
G41 X_ Y_ I_ J_; - 共通のキャンセル:
G40 X_ Y_;またはG40 X_ Z_;
| ブランド | アドレス / パラメータ | 説明 | 有効な選択肢 / 範囲 |
|---|---|---|---|
| 共通 | X, Y, Z | アクティブな平面で位置決めを行うための座標。 | 数値座標 |
| 共通 | D / H | オフセットレジスタの選択番号。 | 整数オフセットID(例:D01, H01) |
| Siemens | OFFN | 等距離パスに適用される直接的な輪郭オフセット量(代しろ)。 | 数値オフセット値(例:OFFN=2.5) |
| Mitsubishi | I, J, K | 起動/キャンセルベクトルを手動でシフトするためのカスタム座標成分。 | 数値方向ベクトル成分 |
ブランド別応用
Fanuc
Fanuc制御装置は、詳細なシステム構成レジスタを通じて工具ノーズおよび工具径補正を管理します。パラメータ5003および5008は、移動中にこれらの補正ベクトルがどのように生成および評価されるかの基礎を形成します。具体的には、パラメータ5003はベクトルの起動形状を決定し、パラメータ5008は方向チェック中の反応を制御します。
使用されるGコードコマンドは、補正キャンセルのためのG40、経路の左側にオフセットするためのG41、右側にオフセットするためのG42です。マシニングセンタでは、最初にアクティブな加工平面(通常はXY平面の場合はG17)を設定する必要があり、径オフセットはDコードを使用して指定します(例:G17 G41 X50.0 Y50.0 D01 F200.0;)。
- パラメータ5003番bit 0(SUP)およびbit 1(SUV): 起動およびキャンセルベクトルの数学的挙動を決定します。これらのビットの組み合わせにより、タイプA(次または前のブロックに対して垂直なベクトル)、タイプB(交点ベクトル出力)、またはタイプC(移動が指令されなくてもブロックに対して垂直にシフト)が選択されます。
- パラメータ5008番bit 1(CNC): 補正後の移動方向がプログラムされた経路と90度から270度異なる場合の干渉チェック中のCNCの反応を決定します。値が0の場合はアラームを発生させ、値が1の場合はアラームを抑制します。
- パラメータ19607番bit 5(CAV): 干渉自動回避を制御します。値が0の場合、過剰切削が検出されるとアラーム(PS0041)で機械が停止し、値が1の場合、干渉の発生を防ぐために工具経路をその場でインテリジェントに変更します。
- アラーム PS0034 (NO CIRC ALLOWED IN ST-UP/EXT BLK): 円弧補間モード(G02/G03)がアクティブなときに、起動(G41/G42)またはキャンセル(G40)コマンドを実行しようとした場合にトリガーされます。
- アラーム PS0037 (CAN NOT CHANGE PLANE IN G41/G42): 工具径補正または刃先R補正の有効中に、アクティブな補正平面(G17、G18、またはG19)が切り替えられた場合にトリガーされます。
- アラーム PS0041 (INTERFERENCE IN CRC / CUTTER COMPENSATION): 補正が有効な間に物理的な軸移動のないブロックが2つ以上連続して指定された場合など、コントローラが過剰切削(オーバーカット)が発生すると計算した場合にトリガーされます。
- バージョンの違い: Mシリーズ(マシニングセンタ)とTシリーズ(旋盤)のアーキテクチャ間には根本的な違いが存在します。Mシリーズ制御装置は、特定の半径オフセット値を呼び出すために
DまたはHアドレスに大きく依存し、G17/G18/G19平面をアクティブに管理する必要があります。ZX平面にネイティブなTシリーズシステムは、工具形状/摩耗オフセットと仮想刃先位置(仮想コーナR位置番号1〜9)の両方を呼び出すためにTコードを利用し、個別のDコードを必要とせずに補正をネイティブに統合します。
警告: G41またはG42がアクティブな間、移動のないブロックが連続して先読み(look-ahead)バッファを枯渇させないように注意してください。バッファが不足するとコントローラの交点計算が破綻し、PS0041アラームで生産が停止します。
Siemens
Siemens制御装置は、高度な運動学的パス処理とインラインの幾何形状変更を備えた工具半径補正(TRC)を実装しています。工具の物理的な幾何形状を設定するために使用される主要なシステム変数は、$TC_DP1および$TC_DP6です。
アクティブな工具補正は、G41(輪郭の左側の加工)またはG42(右側の加工)を使用して呼び出され、G40を使用してキャンセルされます。プログラマーは、G1 G41 Y50 F200 OFFN=1.5; のように、OFFN= アドレスを使用して起動ブロック内で直接インライン輪郭オフセット量を適用できます。
- パラメータ OFFN: プログラムされた輪郭に対して垂直な方向のオフセット(代しろ)を適用するオプションパラメータであり、荒仕上げ用の等距離パスを生成するのに便利です。
- システム変数 $TC_DP1 から $TC_DP6: 工具データを定義するシステム変数。
$TC_DP1は工具タイプ(例:ミーリング工具タイプの場合は 120)、$TC_DP6は工具半径を指定します。 - 設定データ SD42900、SD42920、SD42940、SD42950: 工具長および摩耗長のミラーリングを設定し、平面変更時に一定の長さを維持するための設定データ。
- アラーム 10751「danger of collision due to tool radius compensation」(工具半径補正による衝突の危険): 隣接するブロックのオフセット曲線間の交点を制御装置が計算できない場合にトリガーされます(たとえば、
G461戦略を使用しており、有効なパスを解決できない場合など)。 - アラーム 10757「changing the compensation plane while tool radius compensation is active not possible」(工具半径補正の有効中は補正平面の変更不可):
G40でTRCを解除する前に、プログラムがアクティブな加工平面(G17、G18、またはG19)を変更しようとした場合にトリガーされます。 - アラーム 10753 / 10754「selection / deselection of the tool radius compensation only possible in linear block」(工具半径補正の起動/解除は直線ブロックでのみ可能):
G00早送りまたはG01直線送り補間を使用しないブロックでG41、G42、またはG40がプログラミングされた場合にトリガーされます。 - バージョンの違い: Siemens制御装置がISOダイアレクトTモードで動作している場合、直線ブロックにおいて
I、J、およびKアドレスを使用して、ブロックの終端反応に影響を与えるベクトルを動的にプログラムできます。この拡張ベクトル機能は、ISOダイアレクトのオリジナルモードでは使用できません。さらに、ミーリング半径補正機能は、ISOダイアレクトのオリジナルモードとネイティブのSiemens 840D slモードの間で厳格に互換性がなく、注意深いプログラム翻訳が必要です。
警告: プログラマーは、衝突のない退避経路が確実に保証されるようにG40ブロックの終点を常に選択しなければなりません。また、補正が有効な間に工具オフセットのD0をプログラミングすることは避けてください。安全なキャンセルが行われる代わりにエラー10750がトリガーされます。
Mitsubishi
Mitsubishiコントローラは、マシンパラメータ#8157を介して起動時の軌跡を管理し、パラメータ#1289によって微小コーナーの丸め挙動を定義する、極めて柔軟なパス制御を提供します。
補正はG41またはG42を使用して有効化され、G40を使用して解除されます。旋盤システムでは、G46コマンドにより、G46 X50. Z100. ; のように仮想刃先位置に基づいて自動的に方向が識別されます。
- パラメータ #8157(ノーズR補正タイプB): 起動およびキャンセルベクトルの軌跡を選択します。設定が0(タイプA)の場合、交点処理を行うことなく指令ベクトルに対して垂直なオフセットベクトルにパスを変換します。設定が1(タイプB)の場合、指令ブロックと次のブロックの間の交点演算処理を行います。
- パラメータ #1289 ext25/bit 0: 微小コーナーでの外側丸めを実行するための判定基準を決定します。0は従来の方法を適用し、1は1度以下の微小なコーナー角度を丸めるための特別な方法を適用します。
- パラメータ #8071 3-D CMP: Mシステムにおける3次元工具半径補正の分母定数「p」の値を定義します。座標計算において使用されます:Vx = (i × r) / p、Vy = (j × r) / p、Vz = (k × r) / p。
- アラーム P151 (円弧エラー): 補正モードが直線ではなく円弧コマンドによってキャンセルされた場合、あるいは補正開始時に機械がアクティブな円弧モードにあるときに
I, J, Kタイプのベクトルが指令された場合にトリガーされます。 - アラーム P153 (干渉チェック): プログラムされた進行方向と補正後の進行方向が逆転した場合(ノーズR径よりも狭い溝をカットする場合など)に発生します。
- アラーム P112 (違法平面選択): 工具半径補正がアクティブにパスを制御している間に、平面選択コマンド(G17、G18、G19)または軸名スイッチ(G111)が実行された場合にトリガーされます。
- アラーム P608 (スキップ指令エラー): ノーズRまたは工具半径補正が有効な間にG31スキップ機能が指令された場合にトリガーされます。
- バージョンの違い: 荒削りサイクル(G70、G71、G72、G73)を実行する旋盤(L)システムでは、仕上げ形状にすでに補正量が含まれているため、ノーズR補正モードが一時的に自動キャンセルされた状態で切削が行われ、サイクルの完了時に自動的に補正モードに戻ります。さらに、高度な3次元工具半径補正(G41.2/G42.2)や、マシニングセンタでの旋削加工に特にノーズR補正を適用する機能は、マシニングセンタ(M)システムでネイティブにサポートされています。
警告: G41またはG42がアクティブな間、プログラマーは座標移動のないブロックを4つ以上連続して実行してはなりません。これによりMitsubishi制御装置は先読み(プレリード)を中断せざるを得なくなり、カッターが所定のパスから外れて食い込みを発生させます。
ブランド比較
| 比較項目 | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| インライン輪郭オフセット量 | — (情報源なし) | 起動ブロックで OFFN=... を使用して直接サポート。 | — (情報源なし) |
| 起動 / キャンセルベクトルモード | パラメータ5003番の詳細ビットでタイプA、B、またはCベクトルを選択。 | NORM、KONT、KONTC、およびKONTTの運動制御によって制御。 | パラメータ#8157でタイプA(垂直)またはタイプB(交点)ベクトルを選択。 |
| 交点処理の回避対策 | CAVパラメータ(19607#5)により、その場で工具経路を動的に変更してアラームを回避。 | G461で補助円を挿入し、G462で接線を延長して交点を解決。 | 移動のないブロックが4つ以上連続すると先読みが中断され、削り込みが発生。 |
| 旋削自動方向モード | — (情報源なし) | — (情報源なし) | 旋盤システムで G46 自動方向指令によりサポート。 |
| 手動ベクトル変更 | G38でベクトル保持を指定、G39でコーナー円弧を挿入。 | — (情報源なし) | G40/G41/G42ブロックに I, J, K ベクトルを追加してパスをオーバーライド可能。 |
| スキップ指令の互換性 | 補正がアクティブな間はG31スキップ機能は使用不可(アラームを誘発)。 | — (情報源なし) | 補正がアクティブな間にG31を実行するとアラーム P608 がトリガー。 |
技術解析
Fanucの工具径補正の処理は、その深くて詳細なパラメータのカスタマイズ性によって極めて明確に定義されています。第一に、Fanucはパラメータ19607番bit 5(CAV)を介して「干渉自動回避」機能を有意に提供しています。過剰切削が数学的に検出されたときに機械をただ停止させる代わりに、この機能は加工サイクルを維持しながら食い込みを物理的に回避するよう工具経路をその場でインテリジェントに再計算し変更します。第二に、Fanucは起動およびキャンセルベクトルがワークピースに対して物理的にどのように描かれるかをプログラマーに厳密に制御させます。パラメータ5003(SUPおよびSUVビット)を修正することにより、タイプA、タイプB、およびタイプCの起動挙動を切り替えることができ、工具が交点に向けてスイープするか、あるいは次のブロックに垂直にプランジするかを選択し、非常に具体的な治具の制約に完全に適応できます。最後に、Fanucは干渉チェックロジックそのもの(パラメータ5008番のCNCビット)に対する明示的なパラメータ制御を提供し、複雑な微細加工形状において誤ってアラームがトリガーされる場合に、角度チェックや方向チェックをオペレータが個別に無効にできるようにします。
Siemens制御装置は、強力な高水準幾何形状変更ツールと洗練されたアプローチ/退避戦略を提供することで差別化されています。独自のインライン OFFN 輪郭オフセット量により、プログラマーはプログラム座標を変更したり複雑なマクロ構造を実行したりすることなく、荒加工オフセットを迅速に構成できます。さらに、Siemensは G461 および G462 コマンドを介して拡張退避戦略を提供します。隣接する2つのブロックのオフセット曲線間に有効な数学的交点が見つからない場合、これらのコマンドは制御装置に補助円を動的に挿入させるか、あるいは直線の接線を介してパスを延長させ、生産を即座に停止させるのではなく安全に輪郭ループを閉じます。また、Siemensは完全な解除を行うことなく補正オフセットを一時的にフリーズするための CUTCONON および CUTCONOF コマンドも提供しています。
Mitsubishiは、旋盤加工と手動ベクトル調整を合理化するために特別に設計された工具経路制御で傑出しています。非常に際立った挙動の1つは、旋盤システムにおける G46 コマンドのネイティブ統合です。複雑な輪郭加工中にプログラマーに常にG41とG42の切り替えを強制するのではなく、G46はプログラムされた移動ベクトルと事前設定された仮想刃先位置を分析することにより、正しいノーズR補正方向を自動的に決定します。さらに、MitsubishiはG41、G42、またはG40ブロック内に I、J、および K アドレスを直接追加して、起動またはキャンセルベクトルの角度を手動でオーバーライドし、ダミーの直線位置決め動作の必要性を排除できる点でユニークです。
プログラム例
これら3つの制御システムの実務におけるプログラミングの具体的な相違点を示すため、現場での工具補正起動およびキャンセルシーケンスの事例を以下に紹介します。
Fanuc ミーリングプログラム例
O1001 (FANUCミーリング補正例) ;
N10 G90 G21 G40 G80 (安全ブロック:絶対指令、mm、補正キャンセル、サイクルキャンセル) ;
N20 T01 M06 (工具交換:10mmフラットエンドミルをロード) ;
N30 S1200 M03 (主軸正転起動 1200 rpm) ;
N40 G00 X0.0 Y-20.0 Z10.0 (ワーク外側の早送り位置決め) ;
N50 G01 Z-5.0 F150.0 (切削深さまで切り込み送り) ;
N60 G41 X20.0 Y0.0 D01 F250.0 (工具径補正左をオフセットレジスタD01で起動) ;
N70 Y50.0 (ワークピースの左端に沿って送り) ;
N80 X80.0 (上端に沿って送り) ;
N90 Y0.0 (右端に沿って送り) ;
N100 X0.0 (下端に沿って送り) ;
N110 G40 X-20.0 Y-20.0 (直線ブロックで工具径補正をキャンセル) ;
N120 G00 Z100.0 M05 (早送り退避および主軸停止) ;
N130 M30 ;
空運転 (dry run)動作解析:
- 制御装置は安全ブロックをパースし、ミリメートル単位の絶対座標を確立し、工具径補正がキャンセルされていること(
G40)を確認します。 - 工具交換ブロック(
T01 M06)で工具をロードし、主軸を1200 rpmで起動します。 - 各軸はワーク境界外の安全な開始点
X0.0 Y-20.0 Z10.0へ早送りで移動します。 - 工具はZ軸方向に
-5.0まで150 mm/minで送り移動します。 - ブロック
G41 X20.0 Y0.0 D01 F250.0において、制御装置は工具径補正左(G41)を起動します。工具はX0.0 Y-20.0からX20.0 Y0.0まで直線移動します。この直線運動の間に、制御装置はレジスタD01に保存されている半径オフセット値(例:5.0 mm)を使用して、輪郭に対して垂直な補正ベクトルを作成します。 - 工具が輪郭ブロック(
Y50.0、X80.0、Y0.0、X0.0)に沿って移動するにつれて、物理的な中心経路はプログラムされた座標プロファイルの左側に正確に5.0 mmだけシフトされます。 - 輪郭の終点に達すると、ブロック
G40 X-20.0 Y-20.0がパースされます。制御装置は工具中心のオフセットベクトルを安全に分解しながら退避座標への直線移動を実行し、工具中心を補正のない正確な位置X-20.0 Y-20.0に戻します。
Siemens 旋盤プログラム例
; SIEMENS 旋削補正例
N10 G90 G95 G40 G18 (絶対座標、一回転送り、補正キャンセル、ZX平面)
N20 T01 D01 (旋削工具をロードし、オフセットレジスタD01を起動)
N30 G97 S1500 M3 (一定主軸速度1500 rpm、主軸正転)
N40 G0 X100.0 Z10.0 (外径外側の開始点へ早送り)
N50 G1 Z2.0 F0.2 (切削開始位置まで送り)
N60 G42 X40.0 Z0.0 (刃先R補正右を起動)
N70 G1 X50.0 Z-5.0 (アクティブな補正を伴うテーパー切削)
N80 G1 Z-30.0 (外径旋削)
N90 G1 X90.0 (端面端部へ逃げ)
N100 G40 G0 X120.0 Z20.0 (早送りで刃先R補正をキャンセル)
N110 M30
空運転の動作解析:
- 機械は絶対位置決め、一回転送り、および旋削用のZX平面(
G18)に構成されています。補正はG40でキャンセルされます。 - アクティブな旋削工具と、レジスタ
D01内の関連する幾何形状/摩耗データがT01 D01を介してロードされます。 - 主軸が1500 rpmで起動します。安全な導入位置を確立するために、各軸は
X100.0 Z10.0へ早送りされます。 - 0.2 mm/revで軸が
Z2.0まで送り移動します。 - ブロック
N60 G42 X40.0 Z0.0は刃先R補正右(G42)を係合します。この直線ブロックの間、制御装置は変数$TC_DP6からノーズ半径値を読み取り、工具先端の接触点とプログラムされたテーパー開始点とを一致させるための開始補正ベクトルを計算します。 - 工具は
X40.0 Z0.0からX50.0 Z-5.0へのテーパー切削を実行し、工具ノーズを斜面に対して自動的に正接に保ちます。 - 工具経路がノーズ半径によって動的にシフトされ、アンダーカットを防ぎながら、外径が
Z-30.0まで旋削され、X90.0まで端面加工されます。 - ブロック
N100 G40 G0 X120.0 Z20.0は、直線早送りブロックで補正をキャンセル(G40)します。制御装置は、オフセットベクトルを安全に消滅させながら、工具先端をX120.0 Z20.0へ退避させます。
Mitsubishi カスタムベクトル付きミーリングプログラム例
%
O2001 (MITSUBISHIベクトル補正例) ;
N10 G90 G21 G40 G17 (絶対指令、mm、補正キャンセル、XY平面) ;
N20 T02 M06 (工具交換:12mmフラットエンドミルをロード) ;
N30 S1000 M03 (主軸正転起動 1000 rpm) ;
N40 G00 X0.0 Y-30.0 Z15.0 (開始座標へ早送り) ;
N50 G01 Z-10.0 F180.0 (切削深さまでZ軸送り) ;
N60 G41 X30.0 Y0.0 I15.0 J10.0 D02 F200.0 (カスタムIおよびJベクトル座標で工具径補正左を起動) ;
N70 Y60.0 (補正経路に沿って送り) ;
N80 X100.0 (上部輪郭に沿って送り) ;
N90 G40 X0.0 Y-30.0 I10.0 J-10.0 (手動キャンセルベクトルで補正をキャンセル) ;
N100 G00 Z50.0 M05 (Z軸退避および主軸停止) ;
N110 M30 ;
%
空運転の動作解析:
- ブロック1はアクティブなすべての工具半径補正をキャンセルし、絶対座標モードでの標準XY平面プログラミングを確立します。
- 工具交換が実行されて工具2がロードされ、主軸が1000 rpmでアクティブになります。
- 各軸は、安全な軸位置決めを確実にするために、座標
X0.0 Y-30.0 Z15.0へ早送り位置決めされます。 - Z軸は180 mm/minで深さ
-10.0まで切り込み送りされます。 - ブロック
G41 X30.0 Y0.0 I15.0 J10.0 D02 F200.0は工具半径補正左(G41)を起動します。通常の垂直アプローチベクトルを使用する代わりに、MitsubishiはI15.0およびJ10.0アドレスを解釈してカスタムの開始ベクトルオフセット角度を強制し、カッターが隣接するワーク固定用の治具クランプを回避するように傾斜した軌跡に沿ってパーツ面にアプローチすることを保証します。 - カッターは輪郭
Y60.0およびX100.0に沿って移動し、レジスタD02の半径値を使用して中心オフセット距離を維持します。 - プロファイルの終点で、
G40 X0.0 Y-30.0 I10.0 J-10.0が実行されます。制御装置はI`とJ`座標を使用して特定の退避進出角度を駆動し、パーツのコーナーを安全に回避し、アクティブなベクトルをキャンセルしながら軸をX0.0 Y-30.0の未補正座標に戻します。
エラー解析
| ブランド | アラームコード | 発生条件 | オペレータから見た症状 | 根本原因 / 対策 |
|---|---|---|---|---|
| Fanuc | PS0034 | 円弧補間ブロック(G02/G03)の内部で補正を起動(G41/G42)またはキャンセル(G40)しようとした場合。 | CNCが即座に軸移動を停止し、赤色の点滅で「NO CIRC ALLOWED IN ST-UP/EXT BLK」というエラーを表示します。 | 制御装置は曲線境界上で起動ベクトルを作成できません。対策: G41、G42、またはG40を、円弧の前後の直線移動ブロック(G00またはG01)に移動してください。 |
| Fanuc | PS0041 | 過剰切削(過干渉)が数学的に計算された場合。多くの場合、物理的な軸移動を伴わないブロックを2つ以上連続してプログラミングすることによって発生します。 | 主軸は回転し続けますが、軸がフリーズし、画面に「INTERFERENCE IN CRC / CUTTER COMPENSATION」と表示されます。 | 連続する一時停止やMコードなどにより座標更新の先読みバッファが枯渇し、パスの計算が破綻します。対策: Mコードを整理し、連続する一時停止を排除するか、動的なパス回避のためにCAVパラメータ(19607#5)を有効にしてください。 |
| Siemens | アラーム 10751 | 制御装置の衝突監視システムが、隣接するブロックのオフセット曲線間に有効な数学的交点を見つけられない場合。 | 自動運転が即座に中断され、「Danger of collision due to tool radius compensation」と点滅表示されます。 | 輪郭形状がアクティブなカッター半径に対して狭すぎるか、G461戦略によるパス解決に失敗しています。対策: 工具データを確認し、アクティブなカッター半径を小さくするか、G461/G462の拡張パス挿入戦略を実装してください。 |
| Siemens | アラーム 10757 | 工具半径補正が有効な間に、アクティブな加工平面(G17、G18、またはG19)を変更しようとした場合。 | プログラムがブロックの途中で停止し、「Changing the compensation plane while TRC is active is not possible」と表示されます。 | 加工平面の変更には座標のリセットが必要です。対策: 平面変更コマンドを実行する前に、G40コマンドをプログラムしてアクティブな補正を完全にキャンセルしてください。 |
| Mitsubishi | P153 | プログラムされた輪郭の進行方向と、補正後の進行方向が逆であると計算された場合。 | 軸が減速して完全に停止し、エラーパネルに「P153 Interference check」アラームが表示されます。 | 工具ノーズ半径の直径よりも狭い内溝やポケットを加工しようとした場合に発生します。対策: 溝幅に数学的に適合する小さな直径のカッターを使用するか、プログラムされた形状を修正してください。 |
| Mitsubishi | P608 | ノーズRまたは工具半径補正が有効な間に、G31スキップ機能が指令された場合。 | 加工が即座に中断され、「P608 Skip command error」と表示されます。 | スキップコマンドが工具経路の幾何形状チェックをバイパスします。対策: G31スキップブロックを実行する前に、G40キャンセルコマンドをプログラムして工具補正を無効にしてください。 |
実務応用ノウハウ
工具径補正・刃先R補正を安全かつ高精度に運用するためには、各制御装置特有のパラメータ設定および干渉アラームのメカニズムを熟知し、それをロット生産の品質向上へと結びつけることが重要です。補正有効中に座標移動を伴わないブロック(一時停止のG04やMコード指令など)を連続してプログラミングすると、コントローラ側のバッファが枯渇し、次の交点演算が停止します。この状態になると、Fanucでは過剰切削を防止するためのアラームPS0041が発生し、MitsubishiではP153(干渉チェック)アラームがトリガーされ、機械は加工途中で停止します。このような非計画停止を未然に防ぐため、Fanucのパラメータ19607番bit 5(CAV)を「1」に設定して干渉自動回避を有効にしておくか、あるいは段取り時にツールパスの先読みバッファを最適化するコード構成に修正してください。また、Mitsubishiシステムにおいて、パラメータ#8157(ノーズR補正タイプB)の設定を確認し、交点演算の挙動がタイプA(指令ベクトルに対して垂直)かタイプB(交点演算処理を行う)のどちらに設定されているかによって、起動時の工具アプローチ経路が大きく変化します。この設定がずれていると、ロット間で機械を切り替えた際にわずかなアプローチ軌跡の差が生じ、ワーク端面の再現性の低下を招きます。Siemensシステムにおいては、パラメータOFFNを使用した直接的なインライン輪郭オフセット設定や、工具半径を指定する system 変数$TC_DP6の摩耗オフセット値をロットごとに厳密に測定・更新することで、バイスジョーやクランプへの接近クリアランスを安全に保ちながら、長時間の連続運転時における加工寸法の一貫性と高い繰り返し精度を保証することができます。
関連コマンド
工具径補正および刃先R補正を効果的にプログラムするために、オペレータはGコードおよびヘルパールーチンの広範なネットワークを理解する必要があります。
- G38 (ベクトル保持): 軸移動中に現在の補正ベクトルを一時的に保持し、不要な再計算を防ぐためにFanucおよびMitsubishiシステムで使用されます。
- G39 (コーナー円弧補間): 鋭い外角の周りでの動きをスムーズにするために、FanucおよびMitsubishi制御装置で工具径補正中に過渡的なコーナー円弧を挿入します。
- G46 (ノーズR自動方向識別): 移動ベクトルに基づいて正しい左または右の補正方向を自動的に検出および適用するMitsubishi旋盤コマンド。
- G41.2 / G42.2 (3次元工具半径補正): 垂直方向の表面補正を処理するために、FanucおよびMitsubishi Mシリーズシステムで補正を3次元空間に拡張します。
- G450 / G451 (コーナー過渡挙動選択): 外角において、過渡円(G450)の挿入と等距離パスの交差(G451)の切り替えを行うためにSiemensシステムで使用されます。
- G01 (直線補間): 直線的な切削座標を実行し、起動/キャンセルベクトルを遷移させるために使用されます。
- G17、G18、G19 (平面選択): 半径方向オフセットが数学的に投影されるアクティブな加工平面を確立します。
- G28 (基準位置復帰): 補正キャンセル後に安全に軸を原点に戻し、パーツとの干渉領域から脱出するための標準的なゼロリターン。
おわりに
工具径補正(G41/G42)および補正キャンセル(G40)の正しいコード実装と厳密なシステムパラメータ設定は、CNC加工における機械破損リスクをゼロにし、過酷なロット量産現場で高い繰り返し精度を担保するための基盤です。各マシンのコントローラ設定(Fanucのパラメータ5003番、Siemensの$TC_DP6、Mitsubishiのパラメータ#8157)の状態を事前に点検し、補正がアクティブな加工平面内で十分な直線アプローチ距離(工具半径以上の移動)が確保されているかをワークシートに記録することを日常の標準作業手順(SOP)として義務付けてください。加工を開始する前にグラフィック画面や低速での空運転によって補正の起動・キャンセルの軌跡を確実に検証する体制を構築することが、再現性の低下や不良品発生を防ぎ、長期間にわたる量産サイクルでの安全運転と最高品質の製品供給をお約束します。
よくある質問
工具径補正(G41/G42)の起動時にアプローチ経路がわずかに変化してロットの寸法ばらつきが生じるのはなぜですか?
これは制御コントローラ内の起動ベクトル生成パラメータ(Fanucパラメータ5003番やMitsubishiパラメータ#8157)の設定が、同一工場内の機械間で統一されていないことが原因です。このアプローチ軌跡の微小な差異による再現性の低下を防ぐため、段取り替えの際には必ず補正の startup vector 設定を確認し、アプローチ方向を揃えるための直線導入距離を工具半径の「1.5倍以上」プログラムに記述して実行してください。
補正が有効な輪郭の途中でMコードや一時停止(G04)を入れた際、加工が停止(PS0041やP153アラーム)する対策は?
これは非移動ブロックの連続挿入によって制御装置の先読み(プレリード)バッファが枯渇し、交点ベクトル計算が破綻したために発生します。加工経路の途中にどうしても補助指令を挿入しなければならない場合は、バッファ切れを防ぐために連続する非移動コマンドを同一ブロックにまとめるか、Fanucパラメータ19607#5(CAV)を有効にしてその場で自動干渉回避計算を行わせる対策を実施してください。
Siemens制御で荒加工の代しろを残したまま工具径補正を設定する最も手軽な方法はありますか?
Siemens独自のインラインパラメータ OFFN= をG41またはG42の指令ブロックに直接付加することで、プログラムの座標値を一切変更することなく、指定した値の均等なオフセット量を適用した荒加工経路を作成できます。CAMデータを再生成したり複数のDオフセットレジスタを管理する手間を省き、段取り時間を大幅に削減するために、仕上げ前の半仕上げ加工において OFFN=1.5 のように安全な取りしろを入力するコード運用を取り入れてください。
まだ解決しませんか?
このトピックについて、AIアシスタントに自然言語で質問できます。検証済みの情報源に基づいており、ハルシネーションはありません。

- CNC CARE Co-Founder (May 2025 - Present)
- Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
- Reis CNC Service Engineer (2003 - 2005)
- Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)
CNC工作機械業界のあらゆる分野で25年以上の経験を持ち、ブランドに依存しないコンサルティング、エンジニアリング、純正部品サービスを提供するCNC CAREの共同創業者として活動を続けています。
関連記事
このトピックに関する他の記事
Siemens CYCLE800の使い方:平面旋回とツールアライメント
SiemensのCYCLE800による3+2軸加工をマスターしましょう。平面旋回、ツールアライメント、パラメータ設定から、アラーム61190や61153といったエラーのトラブルシューティングまで詳しく解説します。
Siemens CYCLE72 パスミーリング: 輪郭加工の設定とプログラム解説
SinumerikのCYCLE72輪郭ミーリングを徹底解説。_KNAMEや_VARIの正しいパラメータ設定、シミュレーション時のアラーム61123回避方法、チャッククランプ確認によるアラーム700017防止まで、機械停止や不良品発生を防ぐ実務ノウハウを紹介します。
Siemens CYCLE952旋削サイクルの設定とプログラム解説
SinumerikのCYCLE952輪郭旋削サイクルを徹底解説。_PRGや_CONRによるブランク境界定義、アラーム61051/61059の回避方法、および設定データSD55212による自動メモリ管理の設定手順まで詳しく紹介します。
Siemens SLOT1/SLOT2溝フライスcycleプログラミング
Siemens製Sinumerikの溝加工cycleSLOT1・SLOT2のプログラミングを解説。パラメータ設定、Alarm 61000を防ぐ工具半径補正、VARIを用いた障害物回避など、量産時のロット間再現性を高め不良品発生を防ぐための実務ノウハウを紹介します。