G54.1付加ワーク座標系のCNC設定と衝突防止ガイド
CNC制御盤でのG54.1付加ワーク座標系の設定手順とアラーム回避法を解説。Fanucの1274番、SiemensのMD28080、Mitsubishiの1274番パラメータの検証手順や、シングルブロック停止時の衝突防止など量産精度を高める実務ノウハウ。
はじめに
自動運転サイクルの一時停止(シングルブロック停止)中に、オペレータがワーク座標系オフセット(ゼロオフセット)の測定値を画面上で修正またはG10で書き換え、ブロック切り替えを行わずにそのまま自動運転を再開すると、ツールタレットが未補正の古い座標軌道上を移動し、テーブル上のバイスジョーやワーククランプ、あるいは回転するスピンドルチャック爪へ最高急送り速度で激突する深刻な衝突事故を引き起こします。この瞬間的なハードコリジョンは、超硬工具を粉砕し、ボールねじや軸ガイドを歪ませて軸過負荷アラーム(Alarm PS0033など)を発報させて突発的な非計画停止を招くだけでなく、仕掛品を一瞬にして廃却処分(ruined scrap)の不良品にしてしまいます。アライメントの狂いに起因する寸法再現性の低下や不良品発生を未然に防ぐため、オペレータは自動運転サイクルを実行する前に空運転 (dry run)でG54.1のシフトをシングルブロックでテストすべきです。このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見されるという重大な生産リスクに直結します。段取り前に1274番パラメータ(Fanucの1274番、Mitsubishiの#1274パラメータ等)を確認することで、このコマンドで最も多い非計画停止を防げる。これにより、ロット間における高い加工信頼性と繰り返し精度を担保することができます。
技術概要
| 技術仕様 | 詳細内容 |
|---|---|
| コマンドコード | G54.1(またはマッピング時のG54 Pn) |
| モーダルグループ | モーダル。Fanuc: グループ14(フライス) / グループ12(旋盤); Siemens(ISO): グループ14; Mitsubishi: グループ12 |
| 対応ブランド | Fanuc, Siemens, Mitsubishi |
| 重要パラメータ | Fanuc: 1274 Bit 5, 1151, 5040 Bit 3; Siemens: MD 28080, MD 18800, MD 20734; Mitsubishi: #1274 Bit 5, #1151, #1210 |
| 主な制約事項 | G54.1にはPアドレスの指定が必須であり、省略できません。同一ブロック内での二重Pコマンドは不可。 |
クイックリード
- 必ずPアドレスを指定する: G54.1コマンドにおいてPアドレスの指定は必須です。省略すると実行が停止し、Alarm PS0033またはプログラムエラー P33が発生します。
- 1274番パラメータのBit 5を構成する: パラメータ1274のBit 5を1に設定することで、標準のG54 Pn構文を拡張座標系にマッピングできます。標準選択のままにする場合は0に設定します。
- リセット時のモーダル初期化を無効化する: パラメータ1151(rstint)またはMitsubishiの#1151を0(OFF)に設定することで、NCリセット実行後もアクティブな座標系のモーダル選択を保持できます。
- シングルブロック停止中のG10更新を避ける: シングルブロック停止中にG10を用いてプログラム的にオフセット値を書き換えても、次のブロックまで適用されず、座標のずれや衝突のリスクが生じます。
- Siemensでコンパイラモードを切り替える: G291を実行してISO Dialectモードに切り替えてG54 Pn座標選択を有効にし、G290を指令してネイティブのSiemensゼロオフセット(G505〜G599)に戻します。
- Mitsubishiで基準位置復帰を実行する: 高精度モードにおいてプログラムエラー P34またはP39を防ぐため、G54.1を呼び出す前に各軸の基準位置復帰が完了していることを確認します。
基本概念
G54.1拡張ワーク座標系を実装することで、CNC機械において柔軟なマルチパーツ原点シフトアーキテクチャが実現します。プログラミングにおける実務上の効果は、絶対プログラム座標が選択されたPn基準原点へと動的にシフトすることであり、これによりオペレータは大規模な複数ワーク治具、横形マシニングセンタ上のトモバイン(tombstone)治具、またはマルチステーションバイスを運転できるようになります。座標系を移行する際、アクティブな工具長補正および刃先R補正(カッター補正)はキャンセルされません。代わりに、これらは新しいG54.1座標に対して動的に計算され適用されます。これにより、個別の治具にクランプされた数十個の部品に対して、単にPアドレスをインデックスして輪郭サブプログラムを呼び出すだけで、同一の加工パスを繰り返すことができ、メモリ使用量を劇的に削減し、図面換算エラーを防止できます。
拡張ゼロオフセットの実用的なプログラミングは、極めて多用途でマルチレベルの座標変換構造を確立します。個別の部品に対してローカライズされたワークゼロ点を定義することで、対称的な輪郭や複数のセットアップを機械ベッド上で動的に加工できます。旋盤加工において、ゼロオフセットはチャックの締め付け・クランプ座標を定義します。マシニングセンタにおいて、オフセットは機械原点から治具クランプまたはバイスジョー上にあるワークゼロ点までの物理的距離を表します。アクティブなゼロオフセットを交互に切り替え(G54、G55、またはG505〜G599の呼び出しなど)と単一のサブプログラムを実行するだけで、対称的な輪郭をテーブル上で連続して加工することができ、プログラムサイズを劇的に削減できます。
コマンド構造
拡張座標系を選択するには、プログラムはアブソリュートモードG90においてG54.1を指令し、Pアドレスを使用して対象の座標オフセットを指定します。Pアドレスはインデックスとして機能し、特定のメモリレジスタから値を読み取るよう制御装置に指示します。パラメータ設定が許可している場合、標準のG54コマンドをこれらの拡張システムに直接マッピングすることができ、レガシープログラムを簡素化できます。
拡張座標系オフセットのプログラムによる更新は、G10 L20を使用して書き込まれます。このデータ入力モードでは、制御装置は指定されたP番号のオフセットレジスタ内の座標値を上書きします。このプログラムによる制御は、自動化されたセル運転、マクロベースの座標シフト、および鋳物の芯出し(アライメント)補正に特に有用です。
FanucおよびMitsubishiの構文:
G90 G54.1 Pn G00 X_ Y_ Z_ ;
Siemens ISO Dialectの構文:
G90 G54 Pn G00 X_ Y_ Z_ ;
プログラム可能データ入力の構文:
G90 G10 L20 Pn X_ Y_ Z_ ;
パラメータとアドレス:
| アドレス | 説明 |
|---|---|
| Pn | 拡張座標系番号を指定します(仕様に応じてP1〜P48、またはP1〜P300)。G54.1コマンドにおいてPアドレスは必須であり、省略できません。 |
| X, Y, Z | 選択された拡張座標系原点から測定された絶対軸ターゲット座標を指定します。 |
| L20 | 拡張ワーク座標系オフセットのデータ入力を指定します。既存のオフセットレジスタを上書きします。 |
ブランド別応用
Fanuc
Fanuc制御装置では、フライス加工用のモーダルグループ14および旋盤加工用のモーダルグループ12の下で追加のワーク座標系を構成します。パラメータ1274のBit 5のような標準パラメータ値はG54 Pnマッピングを有効にし、パラメータ1151はリセット時の挙動を制御します。
絶対急送り位置決めモードで座標系P5を選択するには、G90 G54.1 P5 G00 X100.0 Y50.0 Z10.0 ; とプログラミングします。プログラムによるオフセット更新は、G10 L20を使用して実行されます。
| 設定タイプ | パラメータ / アラーム / オプション | 技術仕様および挙動 |
|---|---|---|
| パラメータ | Parameter No. 1274 Bit 5 (ext10/bit5) | G54 Pnが拡張座標系を選択するか(1)、標準座標系を選択するか(0)を決定します。 |
| パラメータ | Parameter No. 1151 (rstint) | モーダルGコードリセットイニシャル。0(OFF)の場合、リセット時にモーダル選択が保持されます。 |
| パラメータ | Parameter No. 5040 Bit 3 (TCT) | 工具交換タイプ。G54.1アクティブ時に工具長補正G43/G44を有効にするには1にする必要があります。 |
| アラーム | Alarm PS0033 | Pコード Gコード二重指令 / P省略。G54.1でPアドレスが省略された場合、またはPコードが二重にプログラムされた場合にトリガーされます。 |
| アラーム | Alarm PS0035 | 設定値範囲外 / オプションなし。オプションが無効な場合、または範囲外のP値が呼び出された場合にトリガーされます。 |
| アラーム | Alarm P241 | 無効な変数番号。オプションが無効な状態で300セットオフセット用の変数#101001〜#115950にアクセスした際にトリガーされます。 |
| アラーム | Alarm P653 | サブパートシステムにおける無効なGコード。サブパートシステム内でワーク座標系選択が指令された場合にトリガーされます。 |
| バージョンによる違い | G52ローカルオフセットの継承 | 現代の制御装置では、G52オフセットはワーク座標系(WCS)の変更後も保持されます。ソフトウェアバージョンD4以前では、これはプログラムエラー(P438)をトリガーします。 |
| バージョンによる違い | オフセット変数マップ | 48セットおよび96セットのオフセットは変数#7001〜#8900にマッピングされます。拡張300セットのオフセットは#101001〜#116000にマッピングされます。 |
警告: Pアドレスを指定せずにG54.1 Pnをプログラミングしようとすると、機械の実行が即座に停止し、Alarm PS0033が発生します。
Siemens
Siemens制御装置は、設定可能フレームG505〜G599として拡張ゼロオフセットをネイティブに実装しています。これらのフレームは、MD 28080やMD 18800などのマシンデータパラメータによって管理されます。
ISO Dialectモードでは、G90 G54 P5 G00 X100.0 Y50.0 Z10.0 ; とプログラムして座標系P5を選択します。ネイティブのSiemensモードでは、G505 G90 G00 X100.0 Y50.0 Z10.0 ; と指令します。
| 設定タイプ | パラメータ / アラーム / オプション | 技術仕様および挙動 |
|---|---|---|
| パラメータ | MD 28080 $MC_MM_NUM_USER_FRAMES | 制御メモリ内の設定可能ゼロオフセットフレームの総数を構成します(1〜93、または最大100)。 |
| パラメータ | MD 18800 $MN_MM_EXTERN_LANGUAGE | 外部NC言語の有効化。ISO Dialectコードをコンパイルするには1に設定する必要があります。 |
| パラメータ | MD 20734 $MC_EXTERN_FUNCTION_MASK (Bit 13) | G10オフセット書き込み実行時に内部プリプロセッサストップ(STPPRE)を強制します。 |
| パラメータ | MD 20734 $MC_EXTERN_FUNCTION_MASK (Bit 3) | ISOダイアレクトパーサーによって検出された構文エラーが即座にアラームを生成するかどうかを構成します。 |
| パラメータ | MD 20150 $MC_GCODE_RESET_VALUES | リセット時または電源ON時のデフォルトGコードグループ値(G500やG54など)を構成します。 |
| アラーム | Alarm 14800 | 送り速度F = 0で座標シフト下での軸移動を実行した場合に発生します。解決するには送り速度F > 0をプログラミングします。 |
| アラーム | Alarm 61800 | MD 18800が無効な状態でISO Dialectコマンド(G291, G10)を実行した場合に発生。MD 18800 = 1に設定します。 |
| アラーム | Alarm 61811 | NCブロックに無効または未認可のISO軸識別子が含まれている場合に発生します。 |
| アラーム | Alarm 61815 | サイクルまたはWCS呼び出しブロックの前に工具径補正(G40)がアクティブになっていない場合に発生します。 |
| アラーム | Alarm 12080 | 構文エラー / 未認識のブロック。例:MD 20734 Bit 3 = 0の状態でISOモード下でネイティブG500を実行した場合。 |
| バージョンによる違い | 840D sl 対 802D sl | コンパクトな802D sl制御装置では、MD 10604などのパラメータが読み取り専用にロックされています。840D slでは自由に変更可能です。 |
| バージョンによる違い | ネイティブ 対 ISO Dialect | ネイティブゼロオフセット(G505〜G599)はグローバルユーザーフレームスタック$P_UIFRにマッピングされます。ISO DialectはG54 P1〜P100をこれらと全く同じフレームにマッピングします。 |
警告: G291 ISO dialectモードがアクティブな間は、コンパイラインタプリタを切り替えることなくネイティブゼロオフセットを実行しないでください。実行するとAlarm 12080防ぐことができません。
Mitsubishi
Mitsubishi制御装置では、グループ12の下で追加のワーク座標系を構成します。パラメータ#1274のbit 5およびリセットイニシャルパラメータ#1151がオフセット挙動を管理します。
座標系P5を選択するには、G90 G54.1 P5 G00 X100.0 Z50.0 ; とプログラミングします。プログラムによるオフセット更新は、G10 L20を使用して実行されます。
| 設定タイプ | パラメータ / アラーム / オプション | 技術仕様および挙動 |
|---|---|---|
| パラメータ | Parameter #1274 ext10/bit5 | 1に設定した場合、標準のG54 Pnを拡張ワーク座標系選択として構成します。 |
| パラメータ | Parameter #1151 rstint | リセットイニシャル。0(OFF)の場合、リセット1の後もアクティブなWCS座標コマンドが保持されます。 |
| パラメータ | Parameter #1210 RstGmd/bitF | モーダルGコードリセット設定。リセット時にモーダル選択を初期化するか保持するかを設定します。 |
| パラメータ | Parameter #1003 iunit | 入力設定単位。座標入力分解能(BからE)および設定境界を定義します。 |
| アラーム | プログラムエラー (P33) | G54.1でのPアドレスの省略、二重Pの衝突、または設定フォーマットエラー。単一のPが指定されていることを確認してください。 |
| アラーム | プログラムエラー (P35) | オプションが無効な状態でのG54.1呼び出し、または範囲外のPn値の使用(例:48セット有効時にP49を呼び出す)。 |
| アラーム | プログラムエラー (P172) | 拡張ワーク座標系オプションが無効な状態でG10 L20プログラム更新を実行した場合に発生します。 |
| アラーム | プログラムエラー (P241) | 300セットオプションが無効な状態で300セットオフセット用の変数#101001〜#11595nを使用した場合に発生します。 |
| アラーム | プログラムエラー (P438) | ソフトウェアバージョンD4以前において、G54.1モーダルがアクティブな間にG52ローカル座標シフトを実行した場合に発生します。 |
| アラーム | プログラムエラー (P653) | アクティブなサブパートシステム内部でワーク座標系選択が指令された場合に発生します。 |
| バージョンによる違い | 旧式 対 現代 (M800/M80) | バージョンD4以前では、G54.1の下でのG52ローカルオフセットは厳密にブロックされます(エラーP438)。現代のバージョンでは許可され、WCS変更後もオフセットが引き継がれます。 |
| バージョンによる違い | M80V Type B シリーズ | アクティブな高速・高精度モード中の拡張WCS選択、ワーク取付け誤差補正、またはサブパート制御をブロックします(エラーP39またはP34)。 |
| バージョンによる違い | オフセット変数マップ | 標準の48/96セットオフセットは変数#7001〜#8900にマッピングされます。拡張300セットは#101001〜#116000にマッピングされます。 |
警告: プログラムによるオフセット入力(G10 L20)をキャンセルし、通常の実行座標モードを復元するには、G11を指令します。
ブランド比較
| 比較項目 | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| 構文とアドレス | G54.1 Pn(P1〜P48/P300)を使用して選択。パラメータ1274 Bit 5の設定により、代替のG54 Pnを拡張オフセットにマッピング可能。 | ISOモード(G291): G54 Pn選択。ネイティブモード(G290): G505〜G599選択。 | G54.1 Pn(P1〜P48/P300)を使用して選択。パラメータ#1274 Bit 5の設定により、代替 G54 Pn を拡張オフセットにマッピング可能。 |
| モーダルリセット | パラメータ1151 = 0の場合、リセット時も保持されます。 | MD 20150を介して、Gグループ14のリセット時の挙動を構成します。 | パラメータ#1151 = 0の場合、リセット時も保持されます。 |
| ローカルオフセット | ローカルシフト(G52)は、拡張WCS座標の変更後も保持されます。 | TRANS / ATRANSを使用して累積されたプログラム可能フレーム変換。 | ローカルシフト(G52)は、拡張座標の変更後も保持されます。 |
| 複数部品システム | サブパートシステム内では禁止されています。 | バイリンガルインタプリタの切り替え(G290/G291)。 | サブパートシステム内では禁止されています。 |
| 高度な機能 | フラットな変数レジスタ(例:#7001, #101001)。 | 配列構造を持つフレームスタック論理(例:$P_UIFR)。 | バイリンガルプログラムフォーマット切り替え(G188/G189)、逆転運転(G127)の統合。 |
技術解析
3つの重要なプログラムおよびアーキテクチャ上の挙動が、Fanucの拡張座標処理をSiemensおよびMitsubishiの制御から明確に区別しています。第一に、Fanucはすべてのワーク座標系選択を単一のプログラムフロー内でネイティブに解析します。Siemensがバイリンガル切り替え式コンパイラモデルで動作し、G54.1やG10 L20コマンドを含むブロックをコンパイルするためにG291を介してコンパイラをISO Dialectモードに切り替え、その後G290を介してネイティブのSINUMERIKモードに戻す必要があるのに対し、Fanucはコンパイラの切り替えを必要とせずにワーク座標選択およびプログラムデータ入力をネイティブにコンパイル・解析します。第二に、Fanucはローカル座標系を拡張座標にわたって永続的かつ継承される状態として管理します。ローカル座標シフト(G52)がアクティブな場合、拡張ワーク座標系番号Pnを変更してもローカルシフトはリセットまたはキャンセルされず、ローカル座標オフセット量は自動的に新しいPn座標系に継承されます。Siemensは、設定可能なゼロオフセットをマルチレベルスタック内の独立したフレームとして扱い、アクティブなゼロオフセットを変更すると、アディティブフレーム(ATRANS)を介して明示的に再呼び出しまたは管理されない限り、アクティブなプログラム可能変換が解除されます。第三に、Fanucはプログラムベース of 変更のために、システム変数にリンクされたよりフラットなレジスタシフトアーキテクチャを使用します。Fanucでは、プログラマーは標準の数学マクロ式内で、専用のシステム変数(例:#7001〜#794n、または#101001以降)を使用して、動的に座標オフセットを読み書きできます。Siemensはゼロオフセットを調整可能なユーザーフレームとして管理し、オフセットはフラットな変数レジスタではなく、構造化されたフレーム演算によって管理される配列のようなフレーム変数($P_UIFR[18]など)を使用して編集されます。
3つの重要なプログラムおよびアーキテクチャ上の挙動が、ゼロオフセット処理においてSiemens制御をFanucおよびMitsubishiの制御から明確に区別しています。第一に、Siemensはバイリンガル切り替え式コンパイラモデル(G290/G291)上で動作します。FanucおよびMitsubishi制御が単一の連続するプログラムフロー内で座標オフセットとレジスタシフトをネイティブに解釈するのに対し、SiemensはプログラマーがG10オフセット入力やG54 Pn座標選択などのレガシーISOスタイルを含むブロックをコンパイルするために、G291を介してコンパイラをISO Dialectモードに明示的に切り替えることを要求します。その後、プログラムはG290を指令してネイティブのSINUMERIKモードに戻し、高度なパラメータ付フレーム(TRANS/ROT/SCALE/MIRROR)およびネイティブのゼロオフセットを処理する必要があります。第二に、Siemensはゼロオフセットをマルチレベルの「フレーム」メモリスタックの動的かつモジュール式のコンポーネントとして管理します。FanucおよびMitsubishiがワーク座標系をモノリシックな絶対位置として扱うのに対し、Siemensではプログラマーが同一ブロック内でアクティブな設定可能フレーム(G54やG505など)の上にプログラム可能絶対オフセット(TRANS)またはアディティブモディファイア(ATRANS)を動的に連結できます。これらのアクティブなフレームは、パラメータに応じて、抑制コマンド(G53, G153, SUPA, またはG500)を使用してグローバルまたは選択的に抑制することもでき、極めて高いプログラミングの柔軟性を提供します。第三に、Siemensはブロックスキップレベルを個別の独立したチャンネルとして扱います。/ と /1 のスキップ文字が全く同じブロックスキップレベルを表す標準のISO制御(FanucやMitsubishiなど)とは異なり、Siemensのインタプリタは / と /1 を完全に個別のスキップレベルとして扱い、これらはインターフェースを介して個別に有効にする必要があります。オペレータがこれら2つのスキップスタイルを含むレガシープログラムを、スキップレベルを個別に構成せずにSiemens制御上で実行した場合、スキップされるように設計されたブロックが実行され、予期しない軸移動や壊滅的なワーク衝突を引き起こす危険性があります。
3つの重要なプログラムおよびアーキテクチャ上の挙動が、拡張ゼロオフセット移行時においてMitsubishiのワーク座標およびモーダル処理をFanucおよびSiemensの制御から明確に区別しています。第一に、MitsubishiはG54.1座標モーダルと手動任意逆転運転(G127)機能を動的に統合しています。手動任意逆転運転(G127)がアクティブな場合、オペレータは手動ハンドルを逆回転させて工具を退避させることができます。この逆転トレース中、Mitsubishiのモーションカーネルは、専用のモーダル情報記憶ブロックを使用してアクティブなG54.1 WCS座標オフセットを追跡および維持し、軸のドリフトを防ぎ、座標の安全性を維持します。Fanuc制御はこのような座標状態を回復できる手動任意ハンドルロールバックをサポートしておらず、Siemensはネイティブフレームロールバック中にWCSモーダルを完全に解除します。第二に、Mitsubishiは標準のG54.1ワーク座標系選択をバイモーダルプログラムフォーマット切替コンパイラ(G188/G189)と統合しています。G188を指令すると、インタプリタはマシニングセンタフォーマット(Mシステム)に切り替わり、Gコードモーダルテーブルを初期化し、グループ12のワーク座標選択をグループ14へ動的にマッピングします。G189を指令すると、コンパイラは旋盤システムフォーマット(Lシステム)に戻り、座標レジスタをグループ12旋盤フォーマットへ動的に再マッピングします。FanucおよびSiemens制御は、このような統合されたバイモーダルGコードフォーマットコンパイラを欠いています。第三に、Mitsubishiは拡張座標モードにおいてローカルシフトを実行する際、バージョン管理されたソフトウェアロック(P438)を適用します。ソフトウェアバージョンD4以前を実行するM800/M80/E80シリーズ of Mitsubishi CNCにおいて、拡張ワーク座標系(G54.1 Pn)モーダルがアクティブな間にG52ローカル座標系オフセットを実行することは厳密にブロックされ、プログラムエラー(P438)をトリガーします。FanucおよびSiemens制御はこの特定のソフトウェアバージョン限定インターロックを持たず、ローカル座標オフセットおよびフレームオフセットはバージョンベースのコンパイルエラーを発生させることなく動的に計算されます。
プログラム例
; Fanuc:
G90 G54.1 P5 G00 X100.0 Y50.0 Z10.0 ; 絶対急送り位置決めモードで拡張WCS P5を選択
G90 G10 L20 P12 X-150.0 Y-100.0 Z-80.0 ; G10 L20を介してG54.1 P12のオフセットレジスタをプログラム的に上書き
#7041 = -250.0 ; システム変数を使用してWCS P3のX軸に絶対座標を直接書き込み
#7042 = -120.0 ; システム変数を使用してWCS P3のY軸に絶対座標を直接書き込み
空運転 (dry run)
このFanucブロックの空運転中、制御装置は最初のブロックを解析し、アクティブな座標系を拡張ワーク座標系P5に切り替えます。軸はP5原点を基準として、絶対モード(G90)でX100.0、Y50.0、Z10.0へ急送り(G00)移動します。次のブロックで、制御装置はG10 L20を実行し、メモリ内の拡張座標系P12のX、Y、ZレジスタにオフセットX-150.0、Y-100.0、Z-80.0をプログラム的に更新します。最後に、変数#7041および#7042が上書きされ、拡張座標系P3のX軸およびY軸のオフセット値がシステム変数レジスタに直接更新されます。
; Siemens:
G291 ; コンパイラインタプリタをISO Dialectモードに切り替え
G90 G54 P5 G00 X100.0 Y50.0 Z10.0 ; 拡張座標系5を選択し、工具を急送り位置決め
G10 L20 P12 X-150.0 Y-100.0 Z-80.0 ; ISO Dialect: WCS P12のオフセットをプログラム的に上書き
G290 ; インタプリタをネイティブのSiemensモードに戻す
G505 G90 G00 X100.0 Y50.0 Z10.0 ; ネイティブモード: 第1拡張設定オフセットを選択(P1に相当)
空運転
このSiemensプログラムの空運転中、インタプリタは最初にG291を実行して、後続のコマンドをISO Dialectコンパイラを使用してコンパイルします。次に、制御装置はG54 P5をアクティブにして第5拡張ワーク座標系を選択し、絶対急送り位置決め移動をX100.0、Y50.0、Z10.0へ実行します。3番目のブロックはG10 L20を指令し、拡張ゼロオフセットP12のオフセットレジスタをプログラム的に書き換えます。その後、コンパイラはG290を介してネイティブのSINUMERIKモードに戻ります。最後のブロックで、ネイティブのゼロオフセットG505(第1拡張フレーム、すなわちP1に直接対応)が指令され、工具を座標X100.0、Y50.0、Z10.0へ急送り位置決めします。
; Mitsubishi:
G90 G54.1 P5 G00 X100.0 Z50.0 ; 絶対急送り位置決めモードで拡張ワーク座標系P5を選択
G90 G10 L20 P12 X-150.0 Z-80.0 ; G10を介してG54.1 P12のワークオフセットレジスタをプログラム的に更新
#7001 = -250.0 ; システムマクロ変数を使用してG54.1 P1の第1軸(X軸)オフセット値を直接更新
空運転
このMitsubishiプログラムの空運転中、機械は最初の絶対急送りブロック(G90 G00)を解析して拡張座標系P5を選択し、工具をX100.0、Z50.0に位置決めします。次のブロックで、プログラム可能座標データ入力コマンドG10 L20が、拡張座標系P12のXおよびZ軸オフセットをメモリ内でX-150.0およびZ-80.0に更新します。3番目のブロックは、マクロ変数を使用してシステム変数#7001に直接-250.0を書き込み、これにより拡張座標系P1のX軸オフセット値が即座に変更されます。
エラー解析
| ブランド | アラームコード | トリガー条件 | オペレータに現れる症状 | 根本原因 / 対策 |
|---|---|---|---|---|
| Fanuc | Alarm PS0033 | 必須のPアドレスを指定せずにG54.1を実行した場合、同一ブロック内で二重のPコマンドを使用した場合、またはext10/bit5 = 1の状態でG54 Pnを実行した場合。 | 機械はインタプリタフォールトにより即座に実行を停止します。 | 単一のPアドレスが指定され、省略されていないことを確認し、Pの二重使用を確認してください。 |
| Fanuc | Alarm PS0035 | オプションが無効な状態でG54.1を選択しようとした場合、または範囲外のP値を使用した場合(例:48セットのみアクティブ時にP49を呼び出す)。 | プログラムの実行が停止し、設定範囲エラーが表示されます。 | 有効なP範囲を呼び出し、拡張ワーク座標系オプションが有効であることを確認してください。 |
| Siemens | Alarm 12080 | インタプリタを切り替えることなく、ISOモード下でネイティブのSiemensコマンドを実行した場合、またはネイティブのSiemensモード(G290)下でISOコマンド(G10 L20またはG54.1)を実行した場合。 | インタプリタが処理を中断し、認識できない構文ブロックエラーを表示します。 | G10または標準のG54 Pnを呼び出す前に、G291を挿入してISO Dialectモードに切り替えてください。 |
| Siemens | Alarm 14800 | 固定送り速度が無効な状態で、送り速度F = 0で座標シフト下での軸移動を実行した場合。 | 軸の動作が即座に停止し、軌道速度警告が表示されます。 | NCプログラムブロックで有効な送り速度F > 0をプログラミングしてください。 |
| Mitsubishi | プログラムエラー (P438) | ソフトウェアバージョンD4以前において、拡張ワーク座標系G54.1モーダルがアクティブな間にG52ローカル座標シフトを実行した場合。 | インタプリタがサイクルを停止し、ローカル座標シフトエラーを発生させます。 | ソフトウェアバージョンをアップグレードしてG54.1モーダル下でのG52を許可するか、G52の使用を避けてください。 |
| Mitsubishi | プログラムエラー (P33) | G54.1でのPアドレスの省略、二重Pの衝突、または設定フォーマットエラー。 | 加工サイクルが実行直前に即座に停止します。 | ブロック内でPアドレスが指定されていることを確認し、複数のPアドレスを避けてください。 |
実務応用ノウハウ
自動運転の実行中に、ワーク座標系(WCS)オフセットの更新データをシングルブロック停止の段階で登録し、ブロック更新を行わずに再スタートすると、未補正の移動データに基づいて軸が暴走し、ツールタレットがチャックやバイスジョー、ワーククランプへ激突する致命的な機械クラッシュを誘発します。この衝突により、超硬工具の粉砕、ボールねじの破損、高電流過負荷アラーム(Alarm PS0033やAlarm 14800、Program Error P33等)の発生が引き起こされ、生材は修復不能な廃却部品(ruined scrap)となります。特に、このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見されるという再現性の低下や不良品発生のリスクを招きます。このトラブルを防止し、ロット間の寸法安定性を維持するためには、段取り前に必ずパラメータ設定(FanucおよびMitsubishiの1274番パラメータ、SiemensのMD 28080等)が機械アライメントと一致しているかを検証しなければなりません。具体的には、FanucではParameter 1151(rstint)や5040 Bit 3を0または1の適正値に構成し、SiemensではMD 20734のBit 13を有効にしてG10によるオフセット書き換え時に自動的にプリプロセッサストップ(STPPRE)を機能させ、さらにMitsubishiではG52ローカルシフトとの競合によるProgram Error (P438)を防ぐためにソフトバージョン(D4以前か以降か)を確認します。オペレータは自動運転の開始前に必ずプログラムを空運転で実行し、WCSモーダルと工具補正 of 干渉がないかを目視チェックすることが重要です。
関連コマンド
- G54: 追加座標系が呼び出される前に、プライマリワーク座標系を選択する標準ゼロオフセット1。
- G53: 軸を安全に位置決めるために、アクティブなワークオフセットを一時的に抑制する機械座標系選択コマンド。
- G52: アクティブなG54.1座標系の上に二次シフトオフセットを確立するローカル座標系設定。
- G58: 5番目の標準ワーク座標系を定義する設定可能ゼロオフセット5。
- G59: 6番目の標準ワーク座標系を定義する設定可能ゼロオフセット6。
おわりに
G54.1付加ワーク座標系を効果的に活用し、量産現場でのロット間における繰り返し精度を保証するためには、単にG-codeを記述するだけでなく、システムパラメータと段取り手順の標準化を確実に行うことが必要です。このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見される原因になります。段取り前に1274番パラメータを確認することで、このコマンドで最も多い非計画停止を防げる。アライメント不良に起因する再現性の低下や不良品発生のリスクを根絶するため、各プログラムの開始直前に安全退避コマンド(G53やSUPA等)を介してタレットを安全位置へ退避させ、かつ初品加工前にはプログラムを空運転でシングルブロック実行する検証手順を厳格にルール化してください。パラメータ設定(1274番やMD 28080等)の適合確認と、物理的なバイスジョー・ワーククランプ位置の定期測定を組み合わせることが、CNC加工システム全体の信頼性と製品寸法の一貫性を長期間維持するための最善策です。
よくある質問
G54.1付加ワーク座標系を用いた量産で、ロット切り替え後に製品寸法にばらつきが発生する場合のチェック項目は?
ロット間の寸法ばらつきを抑えるには、チャックやバイスジョーのクランプ力変動や工作物生材の寸法公差の確認が重要です G54.1は静的なオフセット値ですが、物理的な位置ずれがあると再現性の低下を招き不良品発生につながります。対策として、ロットの切り替え時には必ずダイヤルゲージで基準面の変位を再測定し、必要に応じてG54.1のレジスタ値をミリメートル単位でキャリブレーションする実務を段取り手順書に追加してください。
FanucやMitsubishiでG54.1指令時にPアドレスの代わりに標準のG54 Pn表記を使用するためのパラメータ設定方法は?
レガシープログラムとの互換性を持たせるため、FanucやMitsubishiのパラメータ1274番のBit 5(ext10/bit5)を「1」に設定することで、G54 P1〜P48といった記述をG54.1 P1〜P48へ直接マッピングできます。このパラメータが未検証のままだと、意図しない座標系が選択されツール衝突を引き起こす原因になります。実機の稼働前に、パラメータ画面で1274番パラメータの値を確認・変更した上で、必ず制御装置のコールドスタート(再起動)を実行してください。
G54.1コマンドを実行した際に発生する「Alarm PS0033」や「プログラムエラー (P33)」の具体的な解決ステップは?
これらのアラームは、G54.1指令ブロック内で必須となるPアドレスが欠落しているか、同一ブロック内にMコードや他のPアドレスを伴うコマンド(G04やG10など)が混在し衝突している場合に発生します。制御装置がPのインデックス値を読み込めず、非計画停止を引き起こします。解決策として、プログラムエディタで該当ブロックを確認し、G54.1とPアドレス(例:G54.1 P5)のみを独立した移動ブロックとして単独で指令するよう修正してください。
まだ解決しませんか?
このトピックについて、AIアシスタントに自然言語で質問できます。検証済みの情報源に基づいており、ハルシネーションはありません。

- CNC CARE Co-Founder (May 2025 - Present)
- Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
- Reis CNC Service Engineer (2003 - 2008)
- Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)
CNC工作機械業界のあらゆる分野で25年以上の経験を持ち、ブランドに依存しないコンサルティング、エンジニアリング、純正部品サービスを提供するCNC CAREの共同創業者として活動を続けています。
関連記事
このトピックに関する他の記事
Siemens G71/G710メトリック寸法プログラミング設定ガイド
Siemens SINUMERIK制御におけるG71およびG710メトリック寸法設定のプログラミング方法を解説。MD 10240パラメータ検証から、Alarm 14800や12080などの構文エラー回避、回転軸FGREFファクタ計算、空運転による軌道検証まで徹底解説します。
G69バランスカット解除:CNC旋盤の座標復帰と干渉防止
Fanuc、Siemens、Mitsubishi制御のCNC旋盤におけるG69バランスカットキャンセル(解除)コマンドのプログラミング方法を解説。対向刃物台の同期制御を安全に解除し、チャック爪や治具への激突事故やアラーム停止を確実に防ぐ手順とパラメータ設定を網羅。
G70 CNC仕上ã’サイクル完全解説:構文・パラメータ・障害対ç–
CNC旋盤ã®G70仕上ã’サイクルを徹底解説。Fanucã€Siemens CYCLE95ã€Mitsubishiã®æ§‹æ–‡ã®é•ã„ã€PS0322・PS0325アラームã®å›é¿æ³•ã€ãƒ‘ラメータè¨å®šã€è¡çªäº‹æ•…を防ã安全ãªé€€é¿çµŒè·¯ãƒ—ãƒã‚°ãƒ©ãƒŸãƒ³ã‚°ã‚’詳述。
G69座標系回転・ミラーイメージ解除のNCプログラミング
Fanuc、Siemens、MitsubishiのCNC旋盤におけるG68対向タレットミラーおよび座標回転のG69キャンセル機能を解説。#1202や#1119パラメータの検証、P29・M01 1036アラーム防止、刃物台衝突回避と量産ロットの繰り返し精度向上を図る実務ノウハウ。