Skip to main content
CNC.wiki

G50スケーリングキャンセル:Fanuc・Siemens・Mitsubishi設定ガイド

CNCミーリングにおけるG50スケーリングキャンセルの設定とトラブル解決法を解説。Fanucの8072番やSiemensのMD 22914等のパラメータ設定、円弧補間時のアラームP70対策、量産ロットでの繰り返し精度を向上させる実務ノウハウを網羅。

Hakan Gündoğdu
Hakan Gündoğdu

CNC CARE 共同創業者

はじめに

テーブル上のワーク固定クランプやバイスジョー、あるいは回転するスピンドルチャックが配置された加工エリアにおいて、G51スケーリングモード(縮小率が適用された状態)のままプログラムのリセットやM30、非常停止が発生し、制御装置が自動的にG50スケーリングキャンセル状態に復帰した際、オペレータがG51ブロックを再呼び出しせずに加工を再開すると、工具はスケーリングされていない実寸(1:1)で走行を開始します。この突発的な座標スケールの変化により、工具は想定された加工領域を大きく超えて移動し、超硬切削インサートを粉砕し、スピンドル軸や機械構造部へ激しく衝突する致命的なハードコリジョン(hard collision)を引き起こします。このパラメータが未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見される。特に、段取り前に8072番パラメータを確認することで、このコマンドで最も多い非計画停止を防げる。スケーリング解除のタイミングやパラメータ設定を誤ると、バッチごとの寸法再現性の低下や不良品発生を招き、量産加工における信頼性と繰り返し精度を大きく損なうことになります。

技術概要

属性仕様スペック
コマンドコードG50 (Fanuc, Mitsubishi, Siemens ISO Dialect) / SCALE (Siemens Native)
モーダルグループグループ11 (Fanuc/Mitsubishi modal)、グループ18 (Siemens ISO Dialect modal)、またはネイティブSiemensフレーム解除 (SCALE)
適用ブランドFanuc, Siemens, Mitsubishi
重要パラメータFanuc Parameter No. 3401 (Bits GSC/GSB), Parameter No. 8072 (SCALING P); Siemens MD 22914 ($MC_AXES_SCALE_ENABLE), MD 18800 ($MN_MM_EXTERN_LANGUAGE); Mitsubishi Parameter #8072 SCALING P, Parameter #1151 rstint
主な制約事項スケーリングは、カッター補正量(工具長補正または工具径補正)には適用されません。G50は安全な退避位置の別ブロックでプログラミングしてください。円弧補間 (G02/G03) は、アクティブなスケーリングが不均等であるか、または1つの平面軸のみに設定されている場合は制限され、プログラムエラーをトリガーします。送り速度 (F) および主軸速度 (S) はスケーリングされず、手動で再計算する必要があります。

クイックリード

  • 機械原点復帰を実行する前に、すべての有効な G51 スケーリング座標を解除するために、安全な高さで G50 を別ブロックでプログラミングしてください。
  • G51 は幾何軸にのみ影響し、F 値はスケーリングされないため、スケーリング有効時はプログラムされた送り速度を手動で再計算してスケーリングしてください。
  • G-code プログラムエラーを防ぐため、円弧補間 (G02/G03) を実行する前に、平面の双方の軸に均等なスケーリング係数を適用してください。
  • Siemens SINUMERIK 制御で G50 または G51 をプログラミングする前に、外部言語パラメータ MD 18800 が有効化されていることを確認してください。
  • 経路計算の失敗を避けるため、座標スケーリングを有効にする前に、必ずアクティブなカッター補正 (G40) を解除してください。
  • プログラムのリセット、M30 コマンド、または非常停止により、制御装置は自動的に G50 スケーリングキャンセルモードに復帰します。

基本概念

マシニングセンタで G51 スケーリングを有効にすると、プログラムされたワークの幾何形状を拡大または縮小するための強力な数学的ツールが提供されます。中心点とスケーリング係数を指定することで、プログラマーは座標点を再計算することなく、材料の収縮に対応したり、ネストされた同一の形状を加工したりするようにツールパスを適合させることができます。G50 コマンドはこの座標変換をキャンセルし、座標計算を標準の 1:1 スケールに復元します。

スケーリングの中心とスケーリング係数は、G51 ブロック内の特定の アドレスで定義されます。スケーリング中心の座標は、アクティブなワーク座標系(G54 〜 G59)に対して相対的に入力されます。スケーリング係数は、パラメータ P または I、J、K を使用して、すべての軸にグローバルに適用することも、個々の軸に独立して適用することもできます。最小指令単位は制御装置の分解能システムによって異なりますが、高精度なスケーリング係数を実現するために通常は小数点以下6桁までサポートされています。

工具径補正および工具長補正は、スケーリング計算が完了した後の物理的な形状に対して計算されます。つまり、スケーリング係数は G41/G42 カッター補正などのオフセット値には直接適用されません。標準的なプログラミングの実務では、スケーリングモードに入る前に、G40 を使用してすべてのカッター補正オフセットをキャンセルし、G50 によって標準寸法が復元された後に再ロードするように規定されています。

コマンド構造

座標スケーリングキャンセルの構文は単純ですが、その動作はアクティブなコンパイラモードおよびブランド構成に依存します。Fanuc、Mitsubishi、および ISO Dialect モードの Siemens では、G50 はグループ11またはグループ18のモーダルスケーリングをキャンセルします。ネイティブ Siemens SINUMERIK モードでは、パラメータなしで SCALE コマンドを発行することにより、絶対スケーリングキャンセルが実行されます。

G50 がプログラミングされると、すべての軸に対してアクティブなスケーリングモードがグローバルに終了します。スケーリング中心と係数を宣言するには、事前に G51 コマンドが有効になっている必要があります。現場での最良の結果を得るために、G50 は基準位置への復帰やプログラムの終了を行う前に、必ず安全な逃げ位置で別ブロックとしてプログラミングしてください。

  • G50 ; - スケーリングモードキャンセル (Fanuc, Mitsubishi, Siemens ISO モード)
  • G51 X__ Y__ Z__ P__ ; - 中心 X, Y, Z に対して共通係数 P によるスケーリング ON
  • G51 X__ Y__ Z__ I__ J__ K__ ; - 軸固有の係数 I, J, K によるスケーリング ON
  • SCALE ; - ネイティブ Siemens 絶対スケーリングキャンセル (すべてのスケーリング係数を 1:1 にリセット)
  • SCALE X__ Y__ Z__ ; - ネイティブ Siemens 絶対スケーリング ON
  • ASCALE X__ Y__ Z__ ; - ネイティブ Siemens 加算スケーリング ON

コマンドパラメータとアドレスレジスタは、プログラム実行中にスケーリング中心と係数を構成します。

  • X: X 軸におけるスケーリング中心の絶対座標。
  • Y: Y 軸におけるスケーリング中心の絶対座標。
  • Z: Z 軸におけるスケーリング中心の絶対座標。
  • P: すべての基本軸に適用される共通のスケーリング係数倍率(最小入力単位は 0.000001)。
  • I: 基本第1軸(X 軸)のスケーリング係数。
  • J: 基本第2軸(Y 軸)のスケーリング係数。
  • K: 基本第3軸(Z 軸)のスケーリング係数。

ブランド別応用

Fanuc

Fanuc 制御は、座標スケーリングを管理するために Gコードグループ11のモーダルコマンドに依存しています。アクティブな Gコードシステムは Parameter No. 3401 (Bits GSC/GSB) で構成され、Parameter No. 8072 はデフォルトのバックグラウンドスケーリング係数 P を設定します。Parameter No. 1013 の設定は、スケーリング座標計算のインクリメントシステムを構成します。

スケーリングの有効化には、スケーリング中心座標と係数アドレス P を指定した G51 を使用し、G50 はアクティブなスケーリングモードをキャンセルします。アクティブな平面の2つの軸のうち1つの軸のみでスケーリングがアクティブな状態で円弧補間コマンド (G02 または G03) が実行されると、制御装置は Program Error (P70) で停止します。

  • Parameter No. 3401 (Bits GSC/GSB): G50 のモーダルグループを決定する Gコードシステム A、B、または C を選択します。
  • Parameter No. 8072 (SCALING P): G51 ブロックから P または I/J/K が省略された場合のデフォルトのスケーリング係数。設定範囲:-99999999 〜 99999999(-99.999999 〜 99.999999 倍に相当)。
  • Parameter No. 1013: スケーリング座標計算のインクリメントシステムを定義します。
  • Program Error (P70): 平面の1軸のみでスケーリングがアクティブな状態でプログラムされた円弧補間 (G02/G03)。
  • Program Error (P35): 指令されたスケーリング係数が制限範囲(-99.999999 〜 99.999999 の外側)を超えています。
  • Program Error (P350): G51 スケーリングが指令されましたが、オプションがインストールされていません。
  • Lathe vs. Milling Difference: 旋盤システムでは、G50 は主軸速度クランプまたは座標プリセット用のグループ00非モーダルです。マシニングセンタ(ミーリング)では、G50 はグループ11のモーダルスケーリングキャンセルです。
  • Series 15 Program Format: Parameter No. 0001 Bit 1 (FCV) を 1 に設定すると Series 15 フォーマットが強制され、繰り返し固定サイクル中のスケーリングパラメータ評価が無効化されます。

スケーリング有効時に基準位置復帰コマンド (G28 または G30) を実行すると、Fanuc 制御は中間点ベクトルをスケーリングします。軸の衝突を防ぐため、原点復帰の前に必ず G50 をプログラミングしてください。

Siemens

Siemens SINUMERIK 制御は、座標スケーリングを動的フレームメモリ構造の独立したコンポーネントとして管理します。プログラマーは G291 を介してインタープリタを ISO Dialect モードに切り替えることで G50/G51 を有効にします。これにはマシンデータパラメータ MD 18800 を 1 に設定する必要があります。ネイティブのスケーリングは SCALE および ASCALE ブロックを介して管理され、引数なしの SCALE はスケーリング係数を解除します。

ワーク原点オフセット非表示コマンド (G53, G153, SUPA) を呼び出すと、MD 10760 に依存して工具オフセットが抑制されます。プログラムの中断を防ぐため、テクノロジーサイクルを呼び出す前にオフセットが再ロードされていることを確認してください。

  • MD 22910 $MC_WEIGHTING_FACTOR_FOR_SCALE: プログラムされたスケーリング係数の基本単位を定義します。
  • MD 22914 $MC_AXES_SCALE_ENABLE: 指定された軸に対して軸方向スケーリング係数機能を有効にするために 1 に設定します。
  • MD 10760 $MN_G53_TOOLCORR: 座標フレーム非表示 (G53, G153, SUPA) 中に、工具長および半径補正を抑制するか保持するかを決定します。設定範囲:BYTE(2 〜 4、デフォルトは 2)。
  • MD 18800 $MN_MM_EXTERN_LANGUAGE: G291、G50、および G51 に必要な外部 NC コンパイラを有効にするために 1 に設定します。
  • Alarm 12080 "Syntax error": ネイティブ Siemens モード (G290) での G50 ブロックのプログラミング、またはスケーリング中のブロックスキップ文字のプログラミングや不正なフォーマット。
  • Alarm 14800: 評価結果がゼロ以下になる経路速度 (送り速度 F) をプログラミングしました。
  • Alarm 14011: G10.6 高速工具リトラクトを指令しましたが、リトラクトサブプログラム CYCLE3106.spf が NC メモリに存在しません。
  • Alarm 61800: MD 18800 が無効な状態で G291 への切り替え、または G50/G51 コマンドをプログラミングしようとしました。
  • SINUMERIK 840D sl vs. 802D sl: ブロックスキップレベルおよび空運転 (dry run) の挙動の動的調整は 840D sl で利用可能ですが、 802D sl ではハードロックされています。
  • Hardware Features: ハイエンドな 840D sl は、サイドスクリーンを最小化したマルチタッチパネルと、コンパクト/レガシーモデルではサポートされていない専用の「衝突回避 (Collision avoidance)」オプションを備えています。

ネイティブモードにおいてスケーリングのみを解除するために引数なしの SCALE コマンドを呼び出すと、すべてのフレームコンポーネントがリセットされ、アクティブなゼロ点シフト (TRANS) および座標回転 (ROT) が即座にクリアされます。

Mitsubishi

Mitsubishi 制御は、アクティブなフォーマットパラメータおよびリセット設定に従ってスケーリングキャンセルを実行します。モーダルリセット挙動は Parameter #1151 rstint および #1210 RstGmd によって制御され、これらによってリセット時にスケーリングキャンセルモーダル G50 が初期化されるかどうかが決定されます。アクティブな入力単位の設定は、Parameter #1003 iunit および Parameter #1041 I_inch を介して管理されます。

スケーリングの有効化にはスケーリング中心座標と係数アドレス P を指定した G51 を使用し、G50 はアクティブなスケーリングモードをキャンセルします。スケーリングオフセットのシステム変数は変数 #30080 〜 #30097 にマッピングされており、これらは旋盤システムでは無効化されています。

  • Parameter #8072 SCALING P: G51 ブロックからスケーリング係数が省略された場合のデフォルトのバックグラウンドスケーリング係数。設定範囲:-99999999 〜 99999999。
  • Parameter #1151 rstint: リセット時の初期構成:0(モーダルを保持)または 1(モーダルをキャンセル)。
  • Parameter #1210 RstGmd: モーダル Gコードリセット設定:リセット時にグループ11のスケーリング状態を初期化するか保持するかを制御します。
  • Parameter #1003 iunit: 指令分解能システムおよびアクティブな入力単位システムを選択します。
  • Parameter #1041 I_inch: アクティブな入力単位システム(メートル/インチ寸法)を選択します。
  • Program Error (P350): 制御システムにスケーリングソフトウェアオプションがインストールまたは有効化されていない状態で G51 スケーリングが指令されました。
  • Program Error (P35): 許容範囲外(-99.999999 〜 99.999999 の外側、またはゼロを除く -0.000001 〜 0.000001 の間)のスケーリング係数値がプログラミングされました。
  • Program Error (P70): アクティブな平面の2つの軸のうち1つの軸のみでスケーリングがアクティブな状態で G02 または G03 円弧補間が指令されました。
  • Lathe vs. Milling Difference: 旋盤システムでは、G50 は主軸速度クランプまたは座標設定用のグループ00非モーダルです。マシニングセンタ(ミーリング)では、G50 はグループ11のモーダルスケーリングキャンセルです。
  • M800/M80 Series Variables: #30080 〜 #30097 にマッピングされたスケーリングシステム変数は、マシニングセンタ(M)システムでは完全に有効ですが、旋盤(L)システムでは完全に無効(×印)です。

スケーリング有効時にワーク座標系設定 (G92) を実行すると、スケーリング中心がそのオフセット量だけ物理的にシフトし、その後のツールパスの偏差を引き起こします。

ブランド比較

比較項目FanucSiemensMitsubishi
スケーリング有効化GコードG51 (マシニングセンタ グループ11)ネイティブ: SCALE/ASCALE; ISO Dialect モード: G51 (グループ18)G51 (マシニングセンタ グループ11)
スケーリングキャンセルコマンドG50ネイティブ: SCALE (軸方向またはグローバル解除); ISO Dialect モード: G50G50
旋盤でのG50マッピング主軸速度最高クランプ設定または座標系設定 (グループ00非モーダル)— (no source)主軸速度最高クランプ設定または座標系設定 (グループ00非モーダル)
手動逆転走行との統合— (no source)— (no source)アクティブなスケーリングベクトルは有効なままであり、モーダル情報格納ブロック (G127) を使用して正常に復元されます
バイリンガルプログラム形式切り替えコンパイラ— (no source)G290/G291 を介したインタープリタ切り替えG188/G189 Gコードによる旋盤・マシニングセンタ形式の切り替え
グローバル抑制制御基準位置復帰 (G28/G30) 中の中間点で抑制MD 10760 に制御される G53, G153, SUPA フレームによる抑制基準位置復帰 (G28/G30) 中の中間点で抑制

技術解析

座標スケーリングキャンセルの分析により、Gコード変換を管理するための3つの異なるアーキテクチャ的手法が明らかになります。第一に、Fanuc および Mitsubishi 制御はスケーリングモードを切り替えるために Gコードグループ11のモーダル Gコード(G50/G51)に依存しています。これは、G50 が他のモーダルグループやオフセットレジスタに影響を与えることなくスケーリングのみをキャンセルすることを意味します。Siemens SINUMERIK 制御はネイティブモードで G50/G51 をバイパスし、スケーリングを独立したフレーム変換(SCALE または ASCALE)として処理します。ネイティブの Siemens モードにおいて引数なしの SCALE コマンドでスケーリングをキャンセルすると、アクティブなプログラム可能フレームのすべてのフレームコンポーネントがリセットされ、アクティブなゼロ点シフト(TRANS)および座標回転(ROT)が同時にクリアされます。

第二に、インタープリタの切り替え方法において Siemens と Fanuc/Mitsubishi が分かれます。Siemens はバイリンガルコンパイラモデルを採用しており、G291 を介してインタープリタを ISO Dialect モードに切り替えて G50 および G51 ブロックをコンパイルします。インタープリタをネイティブの SINUMERIK モードに戻すには G290 コマンドが必要であり、このモードでポケットサイクルやハイレベルのフレーム計算が実行されます。Mitsubishi は、標準の Gコードスイッチ G188 および G189 を使用して、旋盤とマシニングセンタのコードレイアウトを切り替え、Gコードテーブルを動的にリセットすることでフォーマット切り替えを実現します。Fanuc は、このような同一プログラム内でのコンパイラ切り替え機能を持たず、Gコードシステムの様式をハードコードするために背景パラメータ(Parameter No. 3401)に厳格に依存しています。

第三に、高度な機械機能との統合により、手動介入時における Mitsubishi 固有のモーダル処理が際立っています。手動任意逆転走行(G127)がアクティブな場合、Mitsubishi のモーションカーネルは、軸のドリフトを防ぐために専用のモーダル情報格納ブロックを使用してアクティブなスケーリングベクトル座標を保持および復元します。Siemens は、マシンデータ MD 10760 によって制御される SUPA、G153、または G53 移動中にフレームをグローバルに抑制します。Fanuc は、G28 または G30 原点復帰中の中間点で座標変換を厳格に抑制しますが、非モーダル座標に対する手動パルス発生器(手動ハンドル)の巻き戻し回復機能は統合されていません。

プログラム例

Fanuc Gコードプログラム例

N10 G90 G00 G54 X-100.0 Y-100.0 ; Rapid traverse to absolute start position
N20 G51 X-100.0 Y-100.0 P0.5 ; Activate scaling at center X-100 Y-100 with factor 0.5
N30 G01 X0 Y0 F150 ; Machine profile at 50% scale
N40 G40 G50 X0 Y0 ; Cancel cutter compensation and scaling mode before return coordinates
N50 G91 G28 X0 Y0 Z0 ; Return to reference home position

空運転の検証

  • Block N10: G54 座標系で軸を絶対座標(X-100.0, Y-100.0)に急速位置決めします。
  • Block N20: 物理的な旋回点(X-100.0, Y-100.0)を中心として、スケーリング係数 0.5(プログラムされたツールパスサイズを半分に縮小)で座標スケーリングを有効にします。
  • Block N30: 送り速度 150 mm/min の直線運動で工具を目標座標(X0, Y0)に移動します。スケーリング係数 0.5 が有効なため、実際の物理的な移動距離は 100 mm ではなく 50 mm になります。
  • Block N40: 工具径補正 (G40) とスケーリングモード (G50) をキャンセルし、座標乗数を標準の 1:1 の比率に復元します。
  • Block N50: Z, X, Y 原点位置へのインクリメンタルな機械基準位置復帰を実行し、中間座標の計算がスケーリングされていないことを確認します。

Siemens Gコードプログラム例

N10 G17 G54 T01 D01 M03 S1500 ; Select plane, zero offset, tool edge, start spindle
N20 TRANS X15 Y15 ASCALE X0.7 Y0.7 ; Native mode: Shift zero offset and scale XY contour by 0.7
N30 SCALE ; Native mode: Cancel scale factors and reset active programmable frame
N40 G291 ; Switch interpreter to ISO Dialect Mode to compile legacy codes
N50 G51 X0 Y0 P0.5 ; ISO mode: Activate scaling at center X0 Y0 with factor 0.5
N60 G50 ; ISO mode: Deactivate scaling and restore 1:1 path calculation

空運転の検証

  • Block N10: アクティブな作動平面 XY (G17) を選択し、G54 ワーク原点オフセットを有効にし、工具エッジ D01 をロードして、主軸を 1500 RPM で正転始動します。
  • Block N20: 現在のゼロ位置を X および Y 方向に 15 mm シフトし、双方の幾何軸に 0.7 の軸方向スケーリング係数を加算します。
  • Block N30: スケーリング係数をクリアし、プログラム可能フレームの座標変換をリセットします(N20 でプログラミングされたゼロ点シフトオフセットをクリア)。
  • Block N40: SINUMERIK 制御コンパイラのインタープリタを ISO Dialect モードに切り替えします。
  • Block N50: (X0, Y0) を中心としてスケーリング係数倍率 0.5(ツールパス寸法を半分に縮小)でスケーリングを有効にします。
  • Block N60: ISO Dialect モードでスケーリングを解除し、制御を標準の 1:1 の経路計算に戻すために G50 を指令します。

Mitsubishi Gコードプログラム例

N10 G90 G00 G54 X-100.0 Y-100.0 ; Rapid traverse to absolute coordinate clearance values
N20 G51 X-100.0 Y-100.0 P0.5 ; Activates scaling at center X-100 Y-100 with factor 0.5
N30 G01 X0 Y0 F200 ; Machine profile at scaled size
N40 G50 G40 X0 Y0 M30 ; Cancels scaling and cutter compensation, returns to original coordinates and ends program

空運転の検証

  • Block N10: G54 システム内で絶対逃げ座標(X-100.0, Y-100.0)への急送り位置決め動作を実行します。
  • Block N20: 座標旋回点(X-100.0, Y-100.0)を中心として、スケーリング係数倍率 0.5(ツールパス移動距離を半分に縮小)で座標スケーリングを有効にします。
  • Block N30: 200 mm/min で目標座標(X0, Y0)への直線切削送りを実行します。物理的な工具移動経路は 50% のサイズに縮小されます。
  • Block N40: アクティブなスケーリングモード (G50) と工具径補正 (G40) をキャンセルし、座標を標準の 1:1 の比率にリセットして、プログラム実行を終了します (M30)。

エラー解析

ブランドアラームコードトリガー条件オペレータに現れる症状原因と解決策
FanucProgram Error (P70)平面の1つの軸のみでスケーリングがアクティブな状態で円弧補間 (G02/G03) が指令されました。平面計算アラームが表示され、サイクルが即座に停止します。円弧コマンドの前に G50 を使用してスケーリングモードをキャンセルするか、双方の平面軸に均等なスケーリング係数をプログラミングしてください。
FanucProgram Error (P35)指令されたスケーリング係数が制御装置の限界値(-99.999999 〜 99.999999 の外側)を超えています。制御装置が指令限界超過のメッセージを表示し、プログラムを停止します。許容限界範囲内に収まるようにスケーリング係数倍率を修正してください。
FanucProgram Error (P350)制御装置でスケーリングオプションが有効になっていない状態で、プログラム内で G51 スケーリングが呼び出されました。CNC がプログラムエラーコードを表示して停止します。スケーリングソフトウェアオプションを有効にするか、プログラムからスケーリングブロックを削除してください。
SiemensAlarm 12080 "Syntax error"ネイティブ Siemens モード (G290) で G50 ブロックをプログラミングしたか、ブロックスキップ文字または不正なフォーマットがプログラミングされました。主軸が停止し、構文エラーの警告が表示されます。G50 は ISO Dialect モード (G291) でのみプログラミングするか、構文フォーマットを修正してください。
SiemensAlarm 14800評価結果がゼロ以下になる経路速度 (送り速度 F) をプログラミングしました。経路速度警告が表示され、プログラムの実行が停止します。ゼロ以外の送り速度 F が指令され、プログラム内でアクティブであることを確認してください。
SiemensAlarm 61800MD 18800(外部言語コンパイラ)が無効な状態で、G291 または G50/G51 コマンドを実行しました。外部言語インタープリタ未検出のメッセージが表示され、NC が停止します。ISO Dialect コンパイラを有効にするために、マシンデータパラメータ MD 18800 を 1 に設定してください。
MitsubishiProgram Error (P350)スケーリングオプションがインストールまたは有効化されていない状態で、G51 スケーリングが呼び出されました。オプション欠落アラームが表示され、機械サイクルが停止します。スケーリングソフトウェアオプションを有効にするか、プログラムファイルを変更してください。
MitsubishiProgram Error (P35)許容範囲外(-99.999999 〜 99.999999 の外側、またはゼロを除く -0.000001 〜 0.000001 の間)のスケーリング係数値がプログラミングされました。係数パラメータ範囲外のメッセージが表示され、制御装置が停止します。安全な境界値の範囲内に収まるようにスケーリング係数を調整してください。
MitsubishiProgram Error (P70)アクティブな平面の2つの軸のうち1つの軸のみでスケーリングがアクティブな状態で、G02 または G03 円弧補間が指令されました。プログラム実行が中止され、画面にアラーム表示が現れます。双方の平面軸に均等なスケーリングを適用するか、円弧補間の前に G50 を指令してスケーリングをキャンセルしてください。

実務応用ノウハウ

スケーリング係数(P値やI, J, K値)の設定矛盾や解除漏れが発生すると、円弧補間指令時にProgram Error(P70)やAlarm 12080といったアラームがトリガーされ、自動運転が突然停止します。この重大なトラブルは、特にFanuc Parameter No. 8072やSiemens MD 22914、あるいはMitsubishi Parameter #8072といった座標スケーリング設定値やMD 18800(外部言語有効化)が未検証のまま量産に入ると、2ロット目から寸法ばらつきが広がり、最終検査で初めて不良が発見される原因となります。段取り前に8072番パラメータを確認することで、このコマンドで最も多い非計画停止を防げる。

スケーリング実行中の座標系プリセット(G92)の不適切な挿入や、補正コード(G40)を介さない状態でのスケーリング切入は、制御システム変数(#30080〜#30097など)での座標オフセット演算を狂わせ、バッチごとの寸法再現性の低下や不良品発生の直接的な要因となります。Siemens SINUMERIKでは、ネイティブモードでの引数なしの SCALE 指令がTRANS(ワーク原点オフセット)やROT(座標回転)を含むフレーム全体を強制リセットしてしまうため、不要な干渉を防ぐためには外部言語モード(G291)下で個別に G50 を指令するか、MD 10760による工具補正退避の挙動を確認する必要があります。また、Mitsubishiシステムにおいて手動任意逆転走行(G127)から復帰する際にも、モーダル情報の整合性が保たれていないと軸のドリフトを招くため、スケーリングキャンセル(G50)の指令時には必ず安全退避位置で絶対位置決めを行い、プログラムされた幾何寸法と物理的な機械位置が完全に整合していることを確認する段取りプロセスを確立することが、ロット間の繰り返し精度を極限まで高めるために極めて重要です。

関連コマンド

  • G51: ピボット中心に対してワークの幾何形状を拡大または縮小するための、座標スケーリングの有効化(マシニングセンタにおいて Fanuc/Mitsubishi はグループ11、Siemens ISO Dialect はグループ18)。
  • SCALE / ASCALE: ネイティブ Siemens のフレーム変換における、絶対的または加算的なプログラマブル座標スケーリングコマンド。
  • G290 / G291: レガシー Gコードをコンパイルするための、Siemens 制御におけるネイティブ SINUMERIK モードまたは ISO Dialect モードのインタープリタ切り替えコマンド。
  • G188 / G189: Mitsubishi 制御における、旋盤とマシニングセンタの Gコードシステム間の指令フォーマット切り替え。
  • G28 / G30: 中間点座標においてアクティブなスケーリング係数を一時的に抑制する基準位置復帰。
  • G52 / G92: アクティブなスケーリング中心レジスタをシフトする、ローカル座標系設定および座標プリセットコマンド。
  • g40-compensation-cancel: 工具径補正を解除するコマンドで、スケーリングを有効にする前に実行する必要があります。リンク: g40-compensation-cancel
  • g41-cutter-radius-compensation: 工具径補正(左)を適用するコマンドで、スケーリング後のプログラム座標に基づいて補正ベクトルが計算されます。リンク: g41-cutter-radius-compensation
  • g49-tool-length-compensation-cancel: 工具長補正をキャンセルするコマンドで、安全な逃げ位置においてスケーリング解除と合わせて実行することが推奨されます。リンク: g49-tool-length-compensation-cancel

おわりに

量産工程においてG50スケーリングキャンセルを各加工プログラムの末尾に確実に記述することは、後続のプログラムが不適切な縮小率で走行するのを防ぎ、ロット間の繰り返し精度を極限まで引き上げるための基本原則です。Fanuc Parameter No. 8072やSiemens MD 22914、あるいはMitsubishi Parameter #8072、さらにはリセット時のモーダル保持を規定する#1210などの制御パラメータを段取り段階で確実にテスト・検証しておくことで、不要な位置決めエラーによるライン停止を未然に排除できます。オペレータの勘や手動操作でのモード復旧に頼るのではなく、プログラム内で明示的に補正キャンセル(G40)とスケーリングキャンセル(G50/SCALE)を対として管理する安全プロトコルを標準化することが、不良品発生を防ぎ、再現性の高い高品質な加工を維持するための最善策です。

よくある質問

スケーリング(G51)有効時に円弧補間(G02/G03)を実行するとアラームP70が発生するのはなぜですか?

円弧補間を実行するためには、補間を実行する平面(G17/G18/G19)内の2つの軸に設定されたスケーリング係数(倍率)が完全に同一である必要があるためです。片方の軸のみにスケーリングを掛けたり、不均等なスケーリング係数を指定したりすると、制御システムは正しい円弧半径を算出できずにアラームP70(またはアラーム12080)をトリガーします。実務的な対策として、スケーリング係数(P値またはI/J/K値)が平面の軸で一致しているかプログラムを再確認し、意図的に不均等な形状を得たい場合は円弧を細かな直線セグメント(G01)に近似展開するか、円弧加工の前にG50でスケーリングを一時キャンセルしてください。

スケーリングキャンセル(G50)がプログラムされているにもかかわらず、2ロット目の加工開始時にスケーリングが解除されず寸法不良が発生する原因は何ですか?

途中でプログラムのリセットや非常停止、またはM30でのプログラム終了が発生した際、制御装置のモーダルリセットパラメータの設定によっては前回のG51モーダル(スケーリング有効状態)がメモリに保持され、次のサイクル開始時に不要なスケーリングが適用されたまま加工が開始されてしまうことが原因です。特にMitsubishiのParameter #1210 (RstGmd) や #1151 (rstint)、SiemensのMD 20150などがリセット時にグループ11モーダルをキャンセル(初期状態G50に復帰)する設定になっていないと、ロット間の寸法再現性が低下します。対策として、プログラムの開始ブロック(安全ブロック)に必ず明示的なG50(またはSCALE)を記述し、パラメータの設定状況に関わらず初期化を行うプログラミング規則を徹底してください。

スケーリング有効時に実行したG28やG30の原点復帰動作で、想定外の経路を走行してワークや治具に干渉しそうになるのはなぜですか?

FanucやMitsubishiなどの制御システムでは、スケーリングがアクティブな状態でG28やG30を実行すると、指令された中間点(中間経路)の座標ベクトルに対してもスケーリング倍率が適用されてしまうためです。これにより、退避経路が予期せず短縮または拡大され、テーブル上のワーク固定クランプやバイスジョーへ干渉する危険性が生じます。干渉事故を防ぐための具体的なアクションとして、G28またはG30による基準位置復帰を行う前に、必ずG50スケーリングキャンセルを別ブロックで実行して1:1のスケールに戻し、退避動作がスケーリングの影響を受けないプログラムシーケンスに修正してください。

まだ解決しませんか?

このトピックについて、AIアシスタントに自然言語で質問できます。検証済みの情報源に基づいており、ハルシネーションはありません。

AIアシスタントに質問する
Hakan Gündoğdu
Hakan Gündoğdu
  • 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ファクタ計算、空運転による軌道検証まで徹底解説します。

FanucSiemensProgramming

G69バランスカット解除:CNC旋盤の座標復帰と干渉防止

Fanuc、Siemens、Mitsubishi制御のCNC旋盤におけるG69バランスカットキャンセル(解除)コマンドのプログラミング方法を解説。対向刃物台の同期制御を安全に解除し、チャック爪や治具への激突事故やアラーム停止を確実に防ぐ手順とパラメータ設定を網羅。

FanucSiemensProgramming

G70 CNC仕上げサイクル完全解説:構文・パラメータ・障害対策

CNC旋盤のG70仕上げサイクルを徹底解説。Fanuc、Siemens CYCLE95、Mitsubishiの構文の違い、PS0322・PS0325アラームの回避法、パラメータ設定、衝突事故を防ぐ安全な退避経路プログラミングを詳述。

FanucSiemensProgramming

G69座標系回転・ミラーイメージ解除のNCプログラミング

Fanuc、Siemens、MitsubishiのCNC旋盤におけるG68対向タレットミラーおよび座標回転のG69キャンセル機能を解説。#1202や#1119パラメータの検証、P29・M01 1036アラーム防止、刃物台衝突回避と量産ロットの繰り返し精度向上を図る実務ノウハウ。

FanucSiemensProgramming