Skip to main content
CNC.wikiCNC.wiki

FanucのPMCアラームPC030・PC090・PC097の発生原因と解決手順

Fanuc製CNCのPMCアラームPC030、PC090、PC097の復旧手順を解説。SRAM復元、電源オンでのバッテリー交換、キープリレー設定など、ロット生産の繰り返し精度と加工信頼性を守るためのプロのトラブルシューティング手法を紹介します。

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

CNC CARE 共同創業者

はじめに

重荒加工中にNC装置のロジックが突然停止することは、工作機械、ワーク、そしてオペレーターにとって致命的なリスクとなります。FanucのPMC(プログラマブル・マシン・コントロール)システムがメモリエラーやハードウェア異常を検知すると、メインコンタクタが強制遮断(V-readyオフ)され、即座に非常停止(E-stop)状態に陥ります。この瞬間、制御軸の送りは減速停止することなく急停止し、主軸も急激に停止します。特にZ軸などの垂直軸では、機械ブレーキの保持力が不十分な場合、ヘッドの自重ドロップが発生し、チャックに固定された重切削中のワークやスピンドルを大破させる重大なクラッシュを引き起こします。また、鋳物など重量物を保持する治具のクランプ圧力が急激に喪失し、ワークの飛び出し事故に直面することもあります。このような予期せぬ非計画停止は、超硬インサートの破損や高価な合金素材への食い込みを引き起こし、加工の再現性と繰り返し精度を根本から揺るがす深刻な不良品発生の原因となります。

プログラムブロック内でのテープリーダーやデータフォーマットのパリティ不一致に起因する、Gコード解析エラーであるPS0001 TH errorとは異なり、PC030アラームはSRAMチップ上の物理的なパリティエラーを示しています。

技術概要

項目技術詳細
コマンドコード / アラームコードPC030 / PC090 / PC097
グループ / 分類PMCシステムアラーム(プログラマブル・マシン・コントロール診断エラー)
サポート対象ブランドFanuc
重要なパラメータキープリレー(K00〜K99、例: K17.1, K19.4)、タイマー(T000〜T255)、データテーブル(D0000〜D9999)、CNCパラメータ 8100 & 13101
主な制約事項RAMパリティエラー(PC030)は、制御不能な機械の動きを防ぐために、メインコンタクタを遮断して即座に非常停止状態を引き起こします。F-ROMへの書き込み操作は、ロジック競合を防ぐために機械が完全に停止している状態で実行する必要があります。

クイックリード

  • コンタクタ遮断: PMCシステムアラーム(PC030、PC090、PC097)は即座に非常停止を誘発し、メインコンタクタを介してサーボドライブへの給電を遮断します(V-readyオフ)。
  • バッテリーのメンテナンス: SRAMメモリ内容の消失を防ぐため、メインCPUカード上のリチウムバックアップバッテリーの交換は、必ずCNCシステムの電源が「オン」の状態で実行してください。
  • 外部バックアップ: 診断のためにメモリクリアを試みる前に、外部メモリカードに最新の SRAM.FDB および PMC1.LAD ファイルのコピーを保管してください。
  • ツールの適合性検証: ラダーロジックプログラムの再コンパイルやデバッグには FANUC LADDER-III を使用し、対象のコントローラシリーズがコンパイラ設定と適合していることを検証してください。
  • オンライン編集: 次回の電源再投入時にPC097チェックサムエラーが発生するのを防ぐため、オンライン編集の完了後は必ずF-ROMフラッシュメモリへの恒久的な書き込み操作を実行してください。
  • インターフェースアドレス: 物理的なCNCメモリをPMCスペースから隔離するため、厳格な G(CNCからPMC)および F(PMCからCNC)メモリマップを使用して、部品プログラムの構文と論理実行を明確に分離してください。

基本概念

プログラマブル・マシン・コントロール(PMC)は、Fanuc製CNCアーキテクチャ内で高度に分離されたコプロセッサとして動作し、安全性に関わるシーケンスを実行して周辺の電気システムを管理します。このシステムはメインのCNCインターポレータ(補間器)と並行して動作し、Gコードの実行を物理的なハードウェア制御から隔離します。PMCの論理実行は、物理入力(Xアドレス)、物理出力(Yアドレス)、内部リレー(Rアドレス)、およびキープリレー(Kアドレス)という個別の書き方・アドレス分類に依存しています。キープリレーは非揮発性のビット(K00〜K99)であり、主電源が遮断された場合でも、自動運転再開許可やPMC画面の診断表示制御などのセットアップパラメータを保持します。

機械シーケンスにおける動的なタイミング測定や演算には、機能タイマー(T000〜T255)およびデータテーブルレジスタ(D0000〜D9999)が使用されます。タイマーは、物理的なリレーが完全に安定する時間を確保するため、1ミリ秒から最大99,999ミリ秒までの遅延間隔を制御します。データテーブルは2バイトの符号付きレジスタとして機能し、-32768から32767までの値を格納します。これらのレジスタは、生産上重要な変数、ツールマガジンの容量、またはラダーロジックの判断基準となる特定のアラーム識別コードなどを追跡します。

物理的な実行媒体は、高速な揮発性メモリと不揮発性ストレージで構成されています。PMCラダープログラムは、F-ROMとして知られる不揮発性フラッシュメモリ内に永続的に保持されます。起動時に、このコンパイル済みコードはリアルタイムの巡回処理(サイクリック処理)のために高速なシステムRAM(SRAM/DRAM)へコピーされます。スタティックRAM(SRAM)は、連続的なバッテリーバックアップを前提として、アクティブなレジスタやデータテーブルの状態を保存するためにも使用されます。バックアップバッテリーの電圧が低下するか、メモリ操作中にSRAMパリティチェックに失敗すると、PMCはロジックの暴走を防ぐために実行を即座に停止します。

コマンド構造

部品プログラムは、Gアドレス(G0000〜G7999)と呼ばれる特定のCNCからPMCへの信号を使用してPMCインターフェースと通信し、PMCはFアドレス(F0000〜F7999)と呼ばれるPMCからCNCへの信号を介してCNCに応答します。この境界線は、システムの安全を保護するために設計された厳格なインターフェースです。Gコードプログラムは、カスタムマクロや標準のMコードを介してGアドレスを設定し、タレットのインデックス操作や油圧チャックのロックなどの実行要求をPMCへ送信します。その応答として、PMCはFアドレスを更新して入力スイッチの検証結果を伝え、各制御軸のインターロックを解除します。

Gコード命令はPMCのハードウェアリレーに直接アクセスしたり、内部タイマーを変更したりすることはできないため、マクロ変数がプログラミングの橋渡し役として機能します。部品プログラムは書き込み命令を使用してCNCパラメータを変更し、PMCがそれを監視します。診断のオーバーライドは、非揮発性のキープリレーや特定のパラメータを使用しても構成できます。この物理システムインターフェースをセットアップするため、システムインテグレータはパラメータ No. 8100 でPMCパスを割り当て、パラメータ No. 13101 でI/Oリンクグループシーケンスを設定します。

; GコードからPMCへのインターフェース構文
M21                                  ; クランプ命令の実行(Gアドレスシーケンスのトリガー)
G04 P500                             ; 物理スイッチの登録完了を待つためのドウェル遅延
#3000 = 101                          ; マクロ変数 #3000 からCNCアラーム状態を生成
アドレスタイプ接頭辞データ範囲説明
CNCからPMCへのインターフェースGG0000 to G7999CNCからPMCロジックへ動作要求やモード信号を送信します
PMCからCNCへのインターフェースFF0000 to F7999CNCへステータスフラグ、インターロック解除トリガー、確認信号などを送信します
物理入力XX000 to X127外部スイッチ、ドアインターロック、圧力バルブ、押しボタンなどの状態を監視します
物理出力YY000 to Y127機械上の物理的なソレノイド、電磁接触器、積層信号灯などを駆動します
キープリレーKK00.0 to K99.7機械構成のセットアップに使用される、非揮発性のバイナリステータスビット(0または1)です
データテーブルDD0000 to D9999パラメータ、工具データ、または診断用アラームコードを格納する16ビット符号付き整数レジスタです

ブランド別応用

Fanuc

Fanuc製アーキテクチャでは、CNCとPMCの間のインターフェースはGおよびFアドレスレジスタを介して厳格に管理されます。例えば、ツールチェンジサイクル中、CNCはツール準備を要求するために特定のGアドレスビットを設定し、PMCは物理スイッチを確認した上で、CNCのフィードホールドを解除するためにFアドレス確認ビットを返します。

Gコード環境からこれらの信号とやり取りするために、プログラマはMコードを使用するか、インターフェース状態が異常な場合にカスタムアラームを発生させるためにマクロ変数 #3000 に書き込みを行います。例えば、オペレータが治具をロックするために M21 を指令すると、PMCはキープリレー K02.1 と入力 X12.3 を検証してから、次のブロックの実行を許可します。

システム構成要素リソース / 変数標準設定値トラブルシューティングにおける役割
キープリレー構成K17.1バイナリ 1(有効)一時的な電圧降下後の自動運転再開シーケンスを制御します
キープリレー構成K19.4バイナリ 0(無効)旧シリーズのディスプレイで診断PMC画面をオーバーライド(表示制御)します
パス選択パラメータパラメータ No. 81000〜4複数系統システムにおいて特定のPMC処理パスを割り当てます
I/Oリンクグループパラメータパラメータ No. 131010〜32ネットワーク上のI/Oモジュールの通信マッピングを定義します
システムSRAMバックアップSRAM.FDBバイナリファイルレジスタ、パラメータ、および工具オフセットの完全なバックアップ
ラダーロジックファイルPMC1.LADバイナリファイルすべての機械周辺機能を制御するコンパイル済み論理プログラム

警告: 有効な SRAM.FDB バックアップファイルがメモリカードに存在しない状態でスタティックメモリ(SRAM)をクリアすると、システムパラメータ、ピッチエラー補正量、および工具オフセットリストが消去され、単純な診断再起動のはずが、数日間に及ぶ大がかりな再構築作業に発展してしまいます。

ブランド比較

Fanuc制御装置シリーズPMC記憶媒体ロジック実行方式チェックサム/パリティエラーの解決手順
旧世代シリーズ (0-C, 16i/18i/21i)物理EPROMまたはEEPROMマイクロチップ不揮発性メモリチップからの直接実行データセクタが損傷または破損している場合、物理的なEPROM/EEPROMチップの交換が必要です。
中位機種モダンシリーズ (0i-D/F)不揮発性F-ROM(フラッシュROM)起動時にコンパイル済みロジックをSRAM/DRAMにロードBOOTメニュー画面でメモリカードを使用して、PMC1.LAD からラダーロジックを復元します。
上位機種モダンシリーズ (30i/31i/32i-B)高速マルチパスF-ROMおよびDRAM動的メモリチェックを伴う高速並列コプロセッシングラダーロジックを再フラッシュするか破損したSRAMをクリアした上で、FANUC LADDER-IIIを介してコンパイル済みファイルをリロードします。

技術解析

Fanucのハードウェアの進化を評価すると、コンパイルされたラダーロジックがどのように格納され、処理されるかにおける大きな技術的シフトが浮き彫りになります。Fanuc 0-C、16i、18iシリーズなどの旧世代の制御装置では、PMCプログラムは物理的なEPROMまたはEEPROMチップに直接書き込まれていました。これらのチップは、紫外線や専用のライターを使用して消去し、マザーボード上のソケットに物理的に挿入する必要がありました。メモリの経年劣化やサージ電流が発生した際、これらの物理チップ上のセクタが永久的に損傷し、オペレータは代替チップの購入を余儀なくされました。これらのシステムでのチェックサムパリティエラーは、ソフトウェアコマンドでは解決できないハードウェア自体の故障でした。

PMCのハードウェア故障は、メインマザーボードの割り込みと密接に関連しています。プロセッサ全体のロック(フリーズ)が発生しているオペレータは、基板レベルの通信障害を切り分けるために、Fanucシステムアラーム ALM195、ALM196、ALM197 の診断ガイドを参照してください。

0i-D、0i-F、および30i/31i-Bシリーズを含む現代のFanuc制御装置は、揮発性RAM(SRAMおよびDRAM)と組み合わせた柔軟なフラッシュメモリ(F-ROM)アーキテクチャに依存しています。起動シーケンス中、制御装置は高速なリアルタイム巡回実行のために、コンパイルされたラダーロジックを不揮発性F-ROMからDRAMにコピーします。診断パラメータ、リレー、およびカウンタは、バッテリーでバックアップされたSRAM内に維持されます。このアーキテクチャにより、機械を停止することなく高速な処理と直接的なオンラインのロジック変更が可能になりますが、電源変動に対する脆弱性も生じます。機械の停止中にバッテリー電圧が突然失われると、SRAMの内容が劣化し、再起動時にPC030 RAMパリティエラーを引き起こします。

このアーキテクチャは、一般にオンライン編集と呼ばれる、稼働中のオンラインロジック修正がどのように処理されるかも規定します。技術者は、機械が稼働している間に FANUC LADDER-III を使用してラダーロジックをリアルタイムで修正できます。しかし、これらの変更はあくまで揮発性のRAMスペース内に留まります。技術者がこれらの変更を完了したものの、不揮発性F-ROMを更新するための最終的なフラッシュ書き込み処理を実行しなかった場合、深刻なチェックサムの不一致が発生します。現在のアクティブなRAM内容と、保存されているF-ROM参照値が異なる状態になります。その結果、次回のシステム電源起動時に、制御装置はアクティブメモリ全体の巡回冗長検査(CRC)を実行して不一致を検出し、即座にPC097 CRCエラーを発生させます。

プログラム例

; Fanuc: #3000 = 101 (PMC ALARM PC030 RAM PARITY OCCURRED) ; Gコードマクロ変数から即座にCNCアラーム状態を発生させ、ツール移動を防止します
; Fanuc: M21 ; チャックまたはクランプにロックを指令し、フィードホールド解除前にキープリレー K02.1 と物理入力 X12.3 を検証するようPMCに要求します
; Fanuc: G04 P500 ; PMCハードウェアリレーが接触スイッチを認識するための十分な物理的時間を確保するため、500ミリ秒のドウェル遅延を指令します

このシーケンスの空運転 (dry run)での検証中、Gコード実行ユニットは各命令ブロックをステップバイステップで処理します。最初の行では、システムはマクロ変数 #3000 を監視します。外部の診断条件によって変数が101に設定されると、CNCは即座にツール移動を停止し、画面にアクティブなアラームメッセージを表示します。2行目は M21 を指令し、PMCに油圧チャックのロックを合図します。PMCロジックは、物理入力 X12.3(チャック閉確認リミットスイッチ)がオン(High)になり、キープリレー K02.1 が検証されるまで、軸移動を停止(フィードホールド)します。3行目はドウェル命令 G04 P500 を使用してツールの移動を正確に500ミリ秒間停止し、主軸回転が開始される前に物理的な接触部や近接スイッチが安定する時間を確保します。

エラー解析

ブランドアラームコード発生条件現象原因 / 対処方法
Fanuc PMCPC030リアルタイムのメモリ操作中に、PMC RAMパリティ不一致またはチェックサムエラーが発生メインコンタクタ遮断、赤色アラーム表示、システム停止し、「PC030 RAM PARITY」を表示電源が「オン」の状態でメイン基板上のリチウムバックアップバッテリーを交換。エラーが解消しない場合は、マザーボードのSRAMチップを確認。
Fanuc PMCPC090PMC CPUが認識不能、未コンパイル、または破損したラダー機能命令を検出PMCフェイル信号がアクティブになり、CNCは非常停止(E-stop)状態に遷移、ラダーロジックが実行停止互換性のあるバージョンの FANUC LADDER-III を使用してラダーロジックファイルを再コンパイルし、BOOTメニュー経由で正しいバイナリをアップロード。
Fanuc PMCPC097アクティブなPMCラダーのCRCチェックサムと、参照用の不揮発性F-ROM値との不一致主軸停止、制御軸サーボ駆動オフ、CNCは「PC097 LADDER CRC ERROR」を表示FANUC LADDER-III またはシステムBOOTメニューを介して、検証済みの PMC1.LAD ファイルを復元。I/O通信用ケーブルのシールド状態を確認。

PMCインターロックが遮断されると、制御軸のサーボモータは指令の基準を見失います。この突然の指令消失により、急激な減速フィードバックによるドライブ側のアラームである DS1512過速度アラーム などの二次障害が引き起こされることがあります。

実務応用ノウハウ

制御システムの長期的な信頼性と繰り返し精度を維持するためには、パラメータ管理と予防保全の徹底が不可欠です。例えば、段取り前にシステムパラメータ No.13101(I/Oリンクグループ構成)や No.8100(パスPMC構成)を確認し、キープリレー K17.1(自動運転再開許可)や K19.4(PMC診断画面表示制御)が正確に設定されているか検証することで、PMCシステムに起因する最も多い非計画停止を未然に防ぐことができます。これらの設定が不適切であると、量産中の2ロット目以降で寸法ばらつきなどの不具合が顕在化し、最終検査での不良品発生を招くことになります。

特に深刻なエラーであるPC030 RAMパリティアラームは、CPUカード上のリチウムバックアップバッテリーの電圧低下(バッテリーロー状態)を数週間にわたって放置した結果、週末のシャットダウン中にSRAMメモリ内容が劣化することで発生します。このバッテリー交換は、必ずCNCシステムの電源が『オン』の状態で行う必要があります。電源がオフの状態で交換すると、SRAMデータが瞬時に消失し、パラメータや工具オフセットを含むすべてのシステム構築情報が完全にクリアされてしまいます。また、制御盤内のアース不良やI/O通信ケーブルのシールド劣化は、高速ツールマガジンのインデックス動作や主軸制動時の高負荷運転下で電気的ノイズを引き起こし、一時的なPC097チェックサムエラーを誘発します。量産ラインの稼働率と再現性を守るために、定期的な予防点検とSRAM.FDBおよびPMC1.LADファイルの外部カードへのバックアップを常時保管することを強く推奨します。

関連コマンド

  • M06(工具交換): 工具タレットやマガジンアームをインデックス駆動するPMCシーケンスロジックを起動します。CNCはGアドレスを介して選択工具を指令し、PMCは物理的なスイッチ(タレットクランプセンサーなど)の状態を確認した上で、完了フラグをFアドレスでCNCへ返信します。
  • M03(主軸正転起動): PMCロジック内で主軸の正転指令をデコードします。PMCは、安全インターロック(制御盤扉やドアの閉状態など)が満たされていることを検証した上で、スピンドルアンプの接触器をONにします。
  • G10 L50(パラメータ書き込み): Gコードシステムパラメータやレジスタ値を、プログラム上でPMCメモリテーブルに書き込みます。これにより、オペレータによる手動入力を行うことなく、部品プログラムから直接PMCデータレジスタ(Dアドレス)を更新できます。
  • M99(リセット/リワインド): サイクル数を同期させ、サブプログラムからの復帰を制御します。PMCはこのMコードを監視して、部品カウンタの更新、各種キープリレーフラグのクリア、およびシステムタイマーのリセットを実行します。

おわりに

Fanuc製CNC工作機械の稼働率を最大化し、長期にわたりロット間での寸法公差や加工精度(繰り返し精度)を完全に維持するには、PMCメモリの組織的な予防保全が鍵となります。毎年定期的なスケジュールでバックアップバッテリーの交換を電源ON状態で実施すること、そして常に最新のSRAM.FDBとPMC1.LADファイルを制御盤内の物理カードに二重に保存しておくことが、不測の事態における迅速なリカバリーを実現します。また、FANUC LADDER-IIIを用いたラダーロジックの修正時には、ターゲットPMCモデルとコンパイラ設定の整合性を厳密に確認し、すべてのオンライン編集結果をF-ROMへ確実に書き込むことで、PC097などの致命的なパリティエラーや非計画的なライン停止を防止できます。これらの堅牢な運用ルールを徹底することが、高品質なモノづくりと生産現場の信頼性を約束します。

よくある質問

ロット間の寸法ばらつきや繰り返し精度の低下を招くPMCタイマーパラメータの確認方法は?

ロットごとの寸法ばらつきは、タイマーパラメータ T000〜T255 の設定値が機械的なリレーや電磁弁の応答遅延とズレている場合に発生します。G04によるドウェル(一時停止)命令と各PMCタイマー値の応答特性を診断画面でリアルタイムに比較検証し、機械的な馴染みや経年変化に合わせたタイマー定数の微調整を定期点検項目に追加してください。

機械の週末シャットダウン後にPC030 RAMパリティエラーが発生する原因と対策は?

これは制御盤の電源オフ中に、CPU基板上のリチウム電池の電圧低下により揮発性SRAMのデータ保持限界を超えてパリティ情報が破損したことが原因です。週末の電源遮断を行う前に、必ず診断画面でバッテリー電圧を確認し、年1回の定期シャットダウン点検時に電源オン状態のまま新品のリチウムセルへ予防交換するプロセスを標準作業手順書(SOP)に組み込んでください。

オンラインラダー編集後に電源を再投入するとPC097 CRCエラーが出るのはなぜですか?

オンライン編集によるラダーロジックの変更が、揮発性のRAMメモリ上にのみ留まり、不揮発性のF-ROMフラッシュメモリへの『フラッシュ書き込み(F-ROM書込)』処理が未完了のまま電源が切られたため、起動時の整合性チェック(CRC)で不一致と判定されたからです。オンライン編集を完了した直後に、必ずFANUC LADDER-IIIまたはNC操作パネルからF-ROMへの恒久的なフラッシュ書き込みコマンドを実行し、データが完全に同期されたことを確認してから主電源を遮断してください。

まだ解決しませんか?

このトピックについて、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 - 2005)
  • Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)

CNC工作機械業界のあらゆる分野で25年以上の経験を持ち、ブランドに依存しないコンサルティング、エンジニアリング、純正部品サービスを提供するCNC CAREの共同創業者として活動を続けています。

関連記事

このトピックに関する他の記事

G73とG83ペックドリルサイクル:深穴ミリング完全ガイド

Fanuc、Siemens、MitsubishiにおけるG73高速ペックおよびG83深穴ドリルサイクルを徹底解説。ロット間寸法ばらつきを防ぐパラメータ5114設定、アラームPS0045原因と対策、再現性の高い加工ノウハウを網羅。

MitsubishiFanucProgramming

G50.2とG51.2ポリゴン加工のプログラミングと安全な同期パラメータ設定

Fanuc、Siemens、MitsubishiのCNC旋盤におけるG50.2・G51.2ポリゴン加工のプログラミング解説。同期パラメータ(7610、#1501)の設定、クランプ診断、アラーム回避手順など、量産時の寸法ばらつきを防ぎ繰り返し精度を高めるノウハウを徹底網羅。

SiemensMitsubishiProgramming

G31スキップ機能とCNCプローブ測定プログラム:ファナック・シーメンス・三菱

ファナック、シーメンス、三菱のG31スキップ機能とプローブ測定プログラムの構築手順。クラッシュを防ぐG40設定やサーボ遅れパラメータ(SEA/SEB)の補正により、量産後半のロット間での寸法ばらつきを防ぎ、繰り返し精度と加工再現性を劇的に向上させる実務ノウハウを徹底解説。

SiemensMitsubishiProgramming

G07.1シリンダ補間のプログラミング方法とアラーム対策

Fanuc、Siemens、三菱CNCにおけるG07.1シリンダ補間の完全ガイド。軸マッピングパラメータの設定方法、G00指令によるPS0176やP481アラームの原因と解決策、干渉を防止する安全なプログラミング手法を徹底解説。

SiemensMitsubishiProgramming