G80固定サイクルキャンセル指令の極意と衝突防止設定
Fanuc、Siemens、MitsubishiにおけるG80固定サイクルキャンセルの重要パラメータやエラーPS0044、P230の解決策を徹底解説。段取り前のモーダルパラメータ検証により、再現性の低下や不良品発生を防ぎ、繰り返し精度を確実に保証します。
はじめに
ドリル加工後にG80キャンセルコマンドの指令を怠ると、CNCコントローラは極めて危険なモーダル状態(モーダルグループ09/10)のまま保持され、後続ブロックでワーククランプやチャック爪の回避を目的とした早送り移動(X軸・Y軸)を指令した瞬間、主軸が突如として uncommanded(意図しない)急降下を開始し、回転中のチャックや治具クランプに高速ドリルが猛烈な速度で突っ込む壊滅的な機械衝突(ハードクラッシュ)を引き起こす。この主軸やタレットの予期せぬ位置決め動作は、超硬ドリルを一瞬で粉砕し、主軸ベアリングを深刻に変形させて高精度ワークを一瞬にして廃棄処分(不良品発生)へと追い込む。段取り前にFanucの7612番パラメータ(RSH)や7700番パラメータ(HBR)、あるいはMitsubishiの#19001パラメータ(Syn.tap(,S)cancel)を確認することで、このコマンドで最も多い非計画停止を防げる。このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見される。このようなモーダルの解除漏れによる再現性の低下や不良品発生を完全に防止するためには、段取り段階でG80コマンドが最終穴座標の直後にスタンドアロンブロックとして正しくプログラムされているかを厳密に検証することが、ロット間の繰り返し精度を保証し安定した製品品質を維持するための不可欠な防壁である。
技術概要
| 機能特徴 | 技術仕様 |
|---|---|
| コマンドコード | G80 (固定サイクルキャンセル / ドリリングサイクルキャンセル) |
| モーダルグループ | グループ 09 (Fanuc M / Mitsubishi) / グループ 10 (Fanuc T / Siemens) — モーダルサイクルキャンセル |
| サポートブランド | Fanuc, Siemens, Mitsubishi |
| 重要パラメータ | Fanuc: 7612#0 (RSH), 7700#0 (HBR), 25651#0 (OST), 7731#0 (EFX); Siemens: $SCS_ISO_M_DRILLING_TYPE; Mitsubishi: #19001, #1223 |
| 主要な制約事項 | メモリ内のアクティブな送り速度 (F) および主軸速度 (S) は保持されます。主軸およびクーラントの周辺動作は、MTB (工作機械メーカー) の PLC ラダー構成によって決定されます。 |
クイックリード
- 穴加工用の canned cycle の最終座標の直後に、独立したブロックで明示的な
G80コマンドをプログラムします。 - canned cycle がアクティブな状態では、Fanuc の
PS0044アラームの発生を防ぐため、絶対に基準点復帰 (G28/G30) を指令しないでください。 - Group 01 motion コマンドを cycle コールと同一の NC ブロック内にプログラムすることは避けてください。実行前に cycle がキャンセルされる implicit なキャンセル(解除)トリガーとして作用するためです。
- 同期タップの戻り動作中に spindle speed (,S) を保持するかキャンセルするかを制御するために、Mitsubishi の
#19001のような機械固有のパラメータを確認してください。 - Siemens アラーム
61815または Mitsubishi アラームP155の発生を防ぐため、canned cycle に入る前にG40を使用してアクティブな cutter radius compensation (G41/G42) を解除してください。 - Siemens アラーム
12722の発生を防ぐため、同一ブロック内にG80とG65/G66を組み合わせるなどのマクロ呼び出しや cycle 呼び出しをスタックしないでください。
基本概念
G80 コマンドは、CNC コントローラのメモリから modal な座標値、peck 増加量、retract 高さ、および dwell 時間をクリーンに消去 (purge) するために設計された極めて重要な modal キャンセルコードです。canned cycle (G81 から G89 までのドリル、タップ、ボーリング cycle など) は modal な動作であり、アクティブな状態を維持し、その後に入力されるすべての座標でプログラムされた移動を繰り返します。G80 を発行することにより、プログラマーは自動 cycle が完了したことをコントローラに伝え、アクティブな G-code グループを標準の直線または円弧の補間位置決め (interpolation) にリセットします。この無効化により、その後の移動中に機械が予期しない穴あけ動作を実行するのを防ぎます。
安全に使用するためには、プログラマーが遷移移動を実行する前に、アクティブな modal 状態を積極的に検証することが義務付けられています。G80 を省略すると機械は armed(起動準備状態)のままとなり、後続の直線移動が新しい穴座標として解釈されます。これにより、工具がワーククランプ、fixture、または chuck に直接衝突し、工具の破損、spindle の曲がり、ワークのスクラップ化を招く危険性があります。プログラマーは、工具交換を開始したりサブプログラムを呼び出したりする前に、キャンセルコマンドが明示的に入力されていることを確認する必要があります。この modal のクリーンアップは、g62-g63-corner-override-tapping のようなコーナー制御ロジックによって管理される同期タップ cycle から、標準の interpolation モードに移行する際に特に重要です。
コマンド構造
G80 コマンドは通常、cycle シーケンス内の最終ホールの座標の直後に、独立したブロックとしてプログラムされます。標準の構文では、アクティブな cycle グループを無効にするための追加のアドレス値や座標は必要ありません。実行されると、すべてのアクティブな canned cycle データが正常にクリアされ、後続のブロックが標準の移動命令として厳密に解釈されるようになります。
制御装置のブランドや特定のソフトウェアオプションによっては、G80 は補助アドレスを受け取ることができます。たとえば、特殊な同期機能や高度な電子ギア (electronic gearing) を利用する場合、G80 はその機能をシフトして、特定の退避またはデカップリング (結合解除) の引数を受け入れます。プログラマーは、コントローラの構成に一致する正しい構文フォーマットを適用するようにしなければなりません。
コマンド構文フォーマット:
- 標準モーダルキャンセル (全ブランド共通):
G80; - Fanuc EGB 位相同期キャンセル:
G80 R_; - Fanuc 2対 EGB 同期キャンセル:
G80.5 β0;(βはサーボ軸の従属軸を表します) - Siemens 独立 ISO Dialect キャンセル:
G80; - Mitsubishi 独立グループ 09 キャンセル:
G80;
キャンセル動作に影響を与える制御パラメータ
| ブランド | パラメータ | 詳細説明および設定値 |
|---|---|---|
| Fanuc | 7612#0 (RSH) / 7700#0 (HBR) | 機械リセット時の EGB 同期モード終了条件: 0 はリセット時に同期をキャンセル。1 は同期を保持 (G80/G80.5 が必要)。 |
| Fanuc | 25651#0 (OST) | オシレーション cycle 中に G80/リセットが実行された際の後退挙動: 0 はオシレーション軸を R 点に移動して停止。1 は直ちに停止。 |
| Fanuc | 7731#0 (EFX) | EGB / フレキシブル同期のコマンドセット選択: 0 は G80 および G81 を使用。1 は G80.4 および G81.4 を使用。 |
| Siemens | $SCS_ISO_M_DRILLING_TYPE | ISO dialect cycle 内の後退距離を定義するシステム変数。 |
| Mitsubishi | #19001 同期タップ(,S)キャンセル | 同期タップ戻り動作中に spindle speed (,S) を保持するかキャンセルするかを選択: 0 は回転数を保持。1 は G80 で spindle speed をキャンセル。 |
| Mitsubishi | #1223 aux07/bit6 | 同期タップの spindle speed 制御のための #19001 と連動するハンドシェイクパラメータ (#19001 と同期)。 |
ブランド別応用
Fanuc での応用
Fanuc システムにおいて、G80 は modal なキャンセルコマンドであり、メモリからアクティブなグループ 09 の canned cycle を消去 (purge) して、後続の座標位置決めブロックで spindle が突入しないようにします。第一に、Fanuc は機械リセット時の EGB 同期モード終了条件を指定するために、パラメータ 7612#0 (RSH) またはパラメータ 7700#0 (HBR) を組み込んでいます。第二に、Fanuc はアクティブなオシレーション cycle 中に G80 が実行されたときの後退動作を管理するために、パラメータ 25651#0 (OST) を統合しています。
G-code は通常、穴加工パターンの最終座標の直後に、独立したブロックとして G80; と指令され、基準位置復帰が指令される前に cycle を無効にします。
| カテゴリ | パラメータ / アラーム / バージョン | 技術詳細 |
|---|---|---|
| パラメータ | Parameter 7612#0 (RSH) | 機械リセット時の EGB 同期モード終了条件: 0 はリセット時に同期をキャンセル。1 は同期を保持。 |
| パラメータ | Parameter 7700#0 (HBR) | EGB 同期モードの保持: RSH と連携し、明示的にキャンセルされない限り同期を維持。 |
| パラメータ | Parameter 25651#0 (OST) | オシレーション cycle 時の後退挙動: 0 はオシレーション軸を R 点に後退させて停止。1 は直ちに停止。 |
| パラメータ | Parameter 7731#0 (EFX) | EGB コマンドセット選択: 0 は G80/G81 を使用。1 は G80.4/G81.4 を使用。 |
| アラームコード | Alarm PS0044 (Alarm 044) | G80 によるキャンセルを行わずに、canned cycle アクティブ中に基準位置復帰 (G27-G30) が指令された。 |
| アラームコード | Alarm PS0187 (Alarm 187) | G80 による事前キャンセルを行わずに、標準のドリル cycle がアクティブな状態でホブ同期 (G81/G81.4) が開始された。 |
| バージョン差異 | M シリーズ vs T シリーズ | M シリーズは G80 をグループ 09 (ドリリング、ボーリング、タッピング) にマップ。T シリーズは G80 をグループ 10 (ドリリング cycle) にマップ。 |
| バージョン差異 | EGB オプション | 搭載された機械で、専用のバリアント G80.4 (ホブ同期キャンセル) および G80.5 (EGB 2対同期キャンセル) を使用可能。 |
警告: 基準位置復帰 (G28/G30) を指令する前に G80 コマンドを省略すると、アラーム PS0044 がトリガーされ、安全状態の競合により即座に機械が停止し、生産が中断されます。
Siemens での応用
Siemens Sinumerik コントローラは、G80 を実装して機械を即座に標準のモーションモードに戻し、modal な固定 cycle を終了します。極めて重要な点として、Siemens は座標をキャプチャして標準のシステム変数に再マッピングする ISO dialect パーサーを介して G80 を処理します。spindle および軸の速度制限は NCK (数値制御カーネル) によって厳密に監視され、コントローラは ISO dialect cycle 内の後退距離を管理するためにシステム変数 $SCS_ISO_M_DRILLING_TYPE を統合しています。
Siemens ISO Dialect モードにおいて、G80 は通常、独立したブロック G80; としてプログラムされるか、安全な早送り後退とプログラムエンドブロックを組み合わせて G00 G80 Z50 M30; のように指令されます。
| カテゴリ | パラメータ / アラーム / バージョン | 技術詳細 |
|---|---|---|
| パラメータ | $SCS_ISO_M_DRILLING_TYPE | ISO dialect cycle 内の後退距離を定義するシステム変数。実数値。 |
| アラームコード | Alarm 12722 | 同一の NC ブロック内に、複数の ISO dialect マクロまたは cycle 呼び出し (G80 と G65/G66 など) をスタックした。 |
| アラームコード | Alarm 61815 | canned cycle 呼び出し時に、cutter radius compensation (G41/G42) がアクティブになっている。 |
| アラームコード | Alarm 61819 | 後退時の衝突リスク (後退動作中に工具がプログラムされた輪郭を侵害している)。 |
| バージョン差異 | ISO Dialect モード | G80 は、ISO Dialect M および T (システム A, B, C) を通じて、グループ 10 「ドリル cycle オフ」に普遍的にマップされている。 |
| バージョン差異 | シェルサイクルバックエンド | Siemens は ISO dialect パラメータをシステム変数経由でキャプチャし、非表示のネイティブな Siemens 標準 cycle (CYCLE381M/CYCLE383T) に転送。 |
警告: 工具補正の競合およびアラーム 61815 のトリガーを防ぐため、canned cycle に入る前に cutter radius compensation G41/G42 が G40 で完全に解除されていることを確認してください。
Mitsubishi での応用
Mitsubishi システムは、G80 を使用してアクティブな穴加工モードを終了し、CNC のメモリから modal データを消去 (purge) します。極めて重要な点として、Mitsubishi は spindle speed (,S) のキャンセル動作を決定するためにパラメータ #19001 を備え、キャンセル中のタップ spindle speed を制御するためのハンドシェイクパラメータとして #1223 aux07/bit6 を備えています。
G-code は通常、グループ 09 状態をクリアするために G80; とプログラムされるか、ブロック内にグループ 01 の interpolation コマンドがプログラムされたときに implicit にキャンセルされます。
| カテゴリ | パラメータ / アラーム / バージョン | 技術詳細 |
|---|---|---|
| パラメータ | Parameter #19001 | 同期タップ(,S)キャンセル: 0 は同期タップ戻り時にタップ回転数を保持。1 は G80 でタップ回転数をキャンセル。 |
| パラメータ | Parameter #1223 aux07/bit6 | 同期タップの spindle speed 制御用に #19001 と連携するハンドシェイクパラメータ。範囲: 0 または 1。 |
| アラームコード | Alarm P230 | 固定 cycle がアクティブなままで、G80 による解除を行わずに G, M, S, T, または B マクロコードを呼び出した。 |
| アラームコード | Alarm P29 | アクティブな cycle 中に、互換性のない modal コマンド (G61.2 高精度スプライン、G51.1 ミラーイメージなど) を実行した。 |
| バージョン差異 | M システム vs L system | M システムはパンチタップ (G84.5/G74.5) やねじ切り面取り (G187) をキャンセル。L システムは面取り面加工 (G185) などの旋削穴 cycle をキャンセル。 |
警告: G80 キャンセルを実行する前にユーザーマクロコード (G, M, S, T, または B 経由) の呼び出しを試みると、Mitsubishi コントローラは実行を一時停止し、アラーム P230 を発生させて spindle の動きを停止します。
ブランド比較
| 比較項目 | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| バックエンドアーキテクチャ | ハードコードされた canned cycle ロジックを直接実行します。 | シェルサイクルバックエンドがパラメータをキャプチャし、ネイティブな SINUMERIK cycle (CYCLE381M または CYCLE383T など) にマッピングします。 | 標準のハードウェア cycle または専用のカスタムルーチン。 |
| 暗黙のキャンセル (解除) | 任意の Group 01 移動コマンド (G00, G01, G02, G03) がプログラムされると、ドリリング canned cycle をアボート (中止) します。 | 第1グループの任意の G 機能 (G00, G03, G33 など) による広範なキャンセル。 | Group 01 の直線/円弧補間移動を、手動の G80 コマンドと全く同じように処理します。 |
| 同期 / EGB デカップリング | 専用の位相同期キャンセル (G80 R1 / G80 R2) または 2対 EGB 同期キャンセル (G80.5) として機能します。 | — (no source) | 同期タップにおいて spindle speed (,S) を選択的に保持またはキャンセルするために、パラメータ #19001 および #1223 とネイティブに統合されています。 |
| アドレスのゼロクリア | — (no source) | — (no source) | キャンセル時に、専用の切粉排出パラメータ (D主軸番号、E周波数) を即座に消去してゼロクリアします。 |
技術解析
各ブランドのアーキテクチャを分析すると、canned cycle データがどのように管理され、キャンセルされるかについて実質的な違いが明らかになります。Siemens は、独自のシェルサイクルバックエンドを介して他と明確に一線を画しています。ISO G-code canned cycle がプログラムされると、コントローラはハードコードされた ISO ロジックを実行しません。代わりに、アドレスをインターセプトして内部システム変数に格納し、CYCLE381M のようなネイティブの Sinumerik バックグラウンド cycle を実行します。このシェルサイクルアーキテクチャにより実行が抽象化され、座標系の整合性が維持されます。G80 を受信すると、Siemens 制御はバックエンドの cycle 実行を終了し、標準のチャネル座標を復元します。
Mitsubishi 制御は、完全にユニークな専用アドレスのゼロクリア挙動を備えています。G80 が実行されると、制御装置は専用 of 切粉排出動作のために指定された主軸選択アドレス (D) と周波数 (E) を即座にゼロにリセットします。このアドレスクリア機構により、残留するチップブレイキングの変数がメモリに残るのを防ぎ、その後の標準的な輪郭移動との競合を回避します。さらに、Mitsubishi はパラメータ #19001 とパラメータ #1223 を組み合わせて利用し、同期タップ cycle の終了後にタップ主軸速度 (,S) をクリアするか保持するかをオペレータが選択できるようにし、主軸状態の衛生管理に対するきめ細かい制御をプログラマーに提供しています。
対照的に、Fanuc は G80 を重要な二重の目的を果たすようにマッピングしています。ドリリングのキャンセルコードとして普遍的に認識されている一方で、電子ギアボックス (EGB) またはホビングオプションを装備した機械では、G80 は位相同期キャンセルコマンドとして機能するように動的にシフトします。G80 R1 または G80.5 としてプログラムされた場合、マスター軸とスレーブ軸の間の電子ギア結合を物理的にデカップリング (結合解除) します。これにより、Fanuc は単一の modal G-code を使用して、ドリリング cycle の無効化と同期軸のデカップリングの両方を処理でき、アクティブなコードグループの構造を合理化しています。
プログラム例
Fanuc プログラム例
G90 G54 G00 X0 Y0 Z50.0 S1500 M03;
G43 H01 Z10.0 M08;
G99 G81 Z-20.0 R2.0 F150.0;
X25.0 Y25.0;
X50.0 Y50.0;
G80 G00 Z50.0 M09;
空運転 (dry run): この Fanuc プログラムを実行すると、コントローラは最初に絶対座標を確立し、主軸を 1500 RPM で回転させながら開始位置 X0 Y0 に早送りします。工具長補正 H01 が適用され、クーラントを有効にした状態で工具先端が Z10.0 に配置されます。G81 コマンドにより、グループ 09 モーダル状態に入り、Z 軸に 150.0 mm/min で Z-20.0 まで突入し、次に Z2.0 の R 面に急速後退するように指令します。コントローラはこれらの canned cycle パラメータを保持します。後続のブロックでは、工具は X25.0 Y25.0 および X50.0 Y50.0 に移動します。各位置で、制御装置はアクティブなモーダル状態の下で新しい座標を検出し、主軸の突入自動動作を繰り返します。最後に G80 ブロックが実行され、モーダルな深さ、送り、および後退パラメータが即座に消去 (purge) され、標準のグループ 01 早送り動作が復元され、サイクルを繰り返すことなく工具が Z50.0 に安全に後退し、クーラントが無効になります。
Siemens プログラム例
G90 G54 G00 X0 Y0 Z50.0 S1200 M03;
G00 Z10.0 M08;
G99 G83 Z-30.0 R3.0 F200.0;
X30.0 Y30.0;
G80 G00 Z50.0 M09;
空運転: Siemens Sinumerik ISO dialect パーサーの下で、コントローラは主軸を 1200 RPM で起動し、Z50.0 の原点への早送り動作を開始します。工具は Z10.0 に下降し、クーラントを有効にします。G83 ブロックが解析されると、コントローラは座標パラメータ (Z-30.0、R3.0、F200.0) をシステム変数に格納し、ネイティブの CYCLE383T シェルサイクルをトリガーして深穴 peck 穴あけ動作を実行します。工具は設定された深さまでペック動作を行い、Z3.0 に後退します。X30.0 Y30.0 に移動すると、バックエンドの cycle が自動的に2つ目のホールを実行します。最後に G80 を含むブロックが解析され、コントローラはシェルサイクルの変数を即座に無効にし、チャネルを標準の直線移動に戻します。工具は Z50.0 に安全に早送りされ、M09 によりクーラントの流れが無効になります。
Mitsubishi プログラム例
G90 G54 G00 X0 Y0 Z50.0 S1000 M03;
G00 Z10.0 M08;
G91 G83 X-50. Z-50. R-50. Q-10. P3000 F2000 K3 D1 E2;
G80 G90 G00 Z50.0 M09;
空運転: この Mitsubishi のインクリメンタル (増分) ドリリングプログラムにおいて、工具は X0 Y0 Z50.0 に早送りされ、主軸をオンにします。工具は Z10.0 に移動し、クーラントをオンにします。G83 コマンドによりグループ 09 モーダル動作が有効になり、インクリメンタルなパラメータである、ペック深さ Q-10., dwell P3000 (3秒), 送り F2000, 繰り返し3回 (K3), 主軸選択 D1, および切粉排出周波数 E2 を使用した peck ドリリングシーケンスを実行します。工具はインクリメンタルに突入、一時停止、ペック、および後退を繰り返します。最後に G80 コマンドが実行されます。Mitsubishi コントローラは、アクティブなドリリング cycle のモーダル状態を即座にクリアし、D および E のチップブレイキングパラメータをゼロクリアします。G90 により絶対位置決めが復元され、クーラントをオフにした状態で工具を Z50.0 に安全に早送りさせることができます。
エラー解析
| ブランド & アラームコード | トリガー発生条件 | オペレータの確認症状 | 根本的な原因と対策 |
|---|---|---|---|
Fanuc アラーム PS0044 | canned cycle が有効なまま、基準位置復帰 (G27-G30) が指令された。 | CNC チャネルが即座に停止し、CRT 画面に PS0044 REFERENCE POSITION RETURN ERROR が表示されます。 | プログラマーが最終ホールの座標の後に G80 コマンドを省略した。対策: ドリリングパターンの直後に、明示的な G80; ブロックを挿入します。 |
Fanuc アラーム PS0187 | 標準のドリル cycle がアクティブな状態で、事前の G80 キャンセルなしにホブ同期 (G81/G81.4) が開始された。 | spindle の回転が停止し、コントローラが PS0187 HOBBING CYCLE conflict をトリガーします。 | ドリル cycle 状態がメモリ内で modal のまま保持されており、EGB 同期コマンドと競合した。対策: G81/G81.4 を呼び出す前に G80; をプログラムしてモーダルレジスタを消去 (purge) します。 |
Siemens アラーム 12722 | 同一のブロック内に複数の ISO dialect マクロまたは cycle 呼び出し (G80 と G65/G66、または M マクロなど) をスタックした。 | チャネルの解析が停止し、Alarm 12722: Illegal stacking of macro/cycle calls が表示されます。 | G80 コマンドが単一のブロック内でマクロ呼び出しと組み合わされた。対策: G80; コマンドを専用の独立したブロックにプログラムします。 |
Siemens アラーム 61815 | canned cycle 呼び出し時に cutter radius compensation (G41/G42) がアクティブになっている。 | プリプロセッサが軸移動をロックアウトし、Alarm 61815: Cutter compensation active in cycle が点滅します。 | プログラマーがツールノーズ/cutter radius compensation の解除を怠った。対策: canned cycle ブロックの前に G40; コマンドをプログラムします。 |
Mitsubishi アラーム P230 | 固定 cycle がまだ有効な状態で、G, M, S, T, または B マクロコードを呼び出した。 | 実行が即座にフリーズし、画面に P230 MACRO CALL IN FIXED CYCLE が表示されます。 | アクティブなドリル cycle がキャンセルされる前に、プログラマーがマクロサブプログラムの実行を試みた。対策: マクロを呼び出す前に G80; を挿入して cycle をクリアします。 |
Mitsubishi アラーム P29 | アクティブな cycle 中に、互換性のない modal コマンド (G61.2 高精度スプライン、G51.1 ミラーイメージなど) を実行した。 | アクティブなチャネルがフィードホールド状態になり、P29 ILLEGAL G-CODE IN FIXED CYCLE が表示されます。 | ドリル cycle がモーダルの状態で、互換性のない高度な輪郭補間モードが有効化された。対策: G61.2 または G51.1 を指令する前に G80; をプログラムして cycle をキャンセルします。 |
実務応用ノウハウ
G80によるモーダルキャンセルの実行を怠ったまま、位置復帰指令(G28/G30)やユーザーマクロ(G65/G66)を呼び出すと、CNCシステムは瞬時に制御競合と判断してFanucアラームPS0044(基準位置復帰エラー)やMitsubishiアラームP230(マクロ呼出エラー)をトリガーし、自動運転サイクルを即座に強制遮断する。また、ねじ切りやドリル加工の段取りにおいて、パラメータの検証を怠ることは致命的な結果を招く。段取り前にFanucの7612番パラメータ(RSH)や7700番パラメータ(HBR)、あるいはMitsubishiの#19001パラメータ(Syn.tap(,S)cancel)を確認することで、このコマンドで最も多い非計画停止を防げる。このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見される。特に、同期タップ時の主軸回転数(,S)の保持/キャンセル動作を決定するMitsubishiパラメータ #19001 や #1223 aux07/bit6 の整合性、さらにSiemensの $SCS_ISO_M_DRILLING_TYPE 変数による後退距離の設定ミスは、1ロット目の良品完了後に生じる2ロット目からの微小な座標ズレや再現性の低下、最終的な不良品発生の主原因となる。実務においては、G41/G42カッター径補正がアクティブな状態で固定サイクルに入ることがないよう必ずG40による事前解除を徹底し、且つG80を独立ブロックとしてプログラムの最終穴座標の直後に明記して modal データを完全にクリーンアップすることが、ワーククランプやタレットの衝突を物理的に防ぎ、製品の繰り返し精度と量産ラインの安全性を極限まで高めるための鉄則である。
関連コマンド
G73, G74, G76, G81–G89: modal な G80 コマンドによって無効化される、穴加工およびねじ切り canned cycle の完全なスイートを表します。G80.4 / G80.5(Fanuc): 電子ギアボックス (EGB) およびフレキシブル同期関係を終了するために使用される、特別な Fanuc コマンドバリアント。G00, G01, G02, G03: 3つのすべての制御装置ブランドにおいて、implicit なキャンセル(解除)トリガーとして動作する標準の Group 01 interpolation コマンド。CYCLE381M / CYCLE383T / CYCLE840(Siemens): G80 または cycle 呼び出しが発行されたときに、翻訳された ISO パラメータを受信する、ネイティブな Siemens Sinumerik バックグラウンド cycle。G185 / G187(Mitsubishi): G80 を介して動的にキャンセルされる、Mitsubishi システムの旋削仕様の面取り cycle およびねじ切りミーリング cycle。
おわりに
CNCマシニング加工におけるモーダル衛生(modal hygiene)の維持は、高価な主軸やインデックスタレットといった機械設備を物理的な衝突から防ぎ、長時間の自動運転においてロットばらつきを極小化するための絶対的な必要条件である。量産現場において非計画停止による致命的な損失を回避し、高い生産安定性を確保するためには、段取り前にFanucの7612番パラメータやMitsubishiの#19001パラメータを確認することで、このコマンドで最も多い非計画停止を防げる。このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見される。G00やG01といったグループ01指令による暗黙的なキャンセル機能も存在するが、これはあくまでプログラミング上の補助機能であり、意図しない主軸の急降下やタレット衝突を完全に防ぐためには、常にG80を単一ブロックで明示的にプログラムする実務運用手順(SOP)を標準化すべきである。エンコーダ信号や位置パラメータの定期的な健全性診断、そしてG80によるモーダルの完全なクリーンアッププロセスを徹底することが、量産工程における再現性の低下や不良品発生を排除し、卓越したロット繰り返し精度と最高水準の製品安定性を継続的に勝ち取るための唯一の道である。
よくある質問
G80による固定サイクルキャンセルを忘れた状態でG28等の基準位置復帰を指令すると、Fanuc制御盤で「PS0044」アラームが発生して自動運転が非計画停止するのはなぜですか?
固定サイクル(G81〜G89)がアクティブな状態では、CNCコントローラは内部で穴加工のモーダル位置(R点やZ点、切り込み量等)と退避高さデータを保持し続けています。このモーダル状態をG80で解除しないままG28やG30による絶対原点への基準位置復帰をプログラムすると、コントローラ内部で「穴加工サイクルの戻り動作」と「物理的な絶対原点復帰の軸移動」との間で高度な制御座標の衝突が発生します。システムは機械の物理的損傷を防ぐため、安全機能(インターロック)としてAlarm PS0044をトリガーして即座にチャネルをシャットダウンします。実務対応として、必ずドリルの最終加工ブロックの直後に単独で「G80;」をプログラムし、軸移動や工具交換を指令する前にモーダルレジスタを確実にクリーンアップしてください。
複数ロットの量産加工において、G80による明示的なキャンセルを省略し、G00やG01のGroup 01 motionコマンドによる暗黙的なキャンセルに依存した場合、製品の繰り返し精度が低下し不良品発生に繋がるリスクはありますか?
はい、極めて高いリスクが存在します。FanucやSiemens、Mitsubishiの各制御盤は、G00やG01の入力時にアクティブな固定サイクルを自動的に解除する「暗黙的デセレクト(implicit cancellation)」を備えていますが、この動作はコントローラが新しいモーダルGコードを受け取った時点で初めて成立します。もし段取り替え時やプログラム修正時に、Gコード接頭辞(G00/G01)を記述せずに単に座標値のみを移動指令ブロックに記述してしまった場合、コントローラは依然として「固定サイクルが有効」と見なし、その移動先座標で自動的にドリル plunged 加工(主軸の急降下)を実行してしまいます。これによりワーククランプや治具との激しい衝突が発生し、ロット2枚目以降で寸法ばらつきが生じるなど再現性の低下と製品欠陥を誘発します。実務対応として、暗黙のキャンセル機能に一切依存せず、固定サイクルの終了時には必ず「G80;」を独立ブロックで記述してモーダル状態を能動的に死滅させるプログラミング規則を徹底してください。
MitsubishiのCNCシステムで、G80キャンセル後に同期タップ加工用の主軸速度(,S)がクリアされずにモーダルメモリに残留し、後続の contour 切削で予期せぬ主軸回転を引き起こす場合のパラメータ変更手順は?
Mitsubishiシステム(Mシリーズ等)の初期設定では、G80によるサイクル解除を実行しても、同期タップ(G84.5等)で適用された主軸回転数や、タップ専用の送り/主軸同期速度(,S)がモーダルレジスタに残留する設定になっています。これにより、ねじ切り完了後の通常ミリング加工や位置決め動作中に、予期せぬタイミングで主軸がタップ仕様の回転速度で動き出し、工具損傷やピッチのむしれといった加工再現性の低下を引き起こします。これを防ぐためには、パラメータ #19001(Syn.tap(,S)cancel)を「1」に設定し、さらにハンドシェイクパラメータ #1223 aux07/bit6 の整合性を確認してください。この設定により、G80が実行された瞬間に同期タップ主軸速度(,S)も能動的にゼロクリアされます。実務対応として、機械のセットアップ時に#19001パラメータを必ず「1」に変更して同期タップ仕様 of モーダルクリーンアップ挙動を標準化し、ロット全体での加工再現性を保証してください。
まだ解決しませんか?
このトピックについて、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を用いた障害物回避など、量産時のロット間再現性を高め不良品発生を防ぐための実務ノウハウを紹介します。