4 CANopen
4.3 ネットワーク通信
4.3.9 エラーメッセージ(エマージェンシ)
エマージェンシメッセージは重大なエラー状態がデバイスに発生し、対処しなければならな いときや、他のデバイスに重要な情報を伝える必要がある場合は常に送信されます。
エマージェンシ・オブジェクトの構造や意味は次ページ「EMCYコード」表に説明されてお り、下位バイト−上位バイトの順でバスメッセージにコード化されます。
エマージェンシ・オブジェクトはエラーが修復した後もまた送信されます(エラーコード=
0x0000、エラーレジスタおよび追加コードの内容は「EMCY コード」表に記述されていま
す)。
ロードされた設定がデフォルト値の場合、電源投入後エマージェンシ・オブジェクトが送信 されます。これは次の2つの理由により生じます。
• 設定がまだセーブされていない(インデックス0x1010)
• セーブされた設定がバスコントローラで廃棄された。理由はモジュールが接続また は抜かれたため。
エラーメッセージ
EMCYコード表
バイト 0 1 2 3 7 名称 エラー
コード
エラー レジスタ
追加コード 意 味
0x0000* 0x00 00 00 00 00 00 「定義済みエラー領域」インデックス0x1003サブインデックス 0が”0”にセットされる、または全てのエラーがクリアされる。
バスコントローラは初期化される。理由:保存したコンフィグ レーションがない、または内部コンフィグレーションが実装コ ンフィグレーションと一致せず。
0x5000* 0x81 00 01 00 00 00 電源投入後またはノード//通信のリセット後ハードウェア構成 が変更された。
フラッシュにコンフィグレーションをセーブしたときエラーが 発生.
0x5000* 0x81 00 02 00 00 00 フラッシュエラー
0x5000* 0x81 00 03 PP LL SS
プログラムしたコンフィグレーションが実装品と一致せず。
PP:エラーが起きた実際のモジュールスロット位置 LL:エラーが起きたロジック上モジュールスロット位置 SS:エラー原因
00 09 00 00 00
0x5000* 0x81 エマージェンシ・メッセージのキューオーバーフロー
(エマージェンシ用Inhibitタイムが用いられたときのみ起こり うる)
0x5000* 0x81 00 0A 01 00 00 ゲートウェイモジュールが最大数を超えた、またはゲートウェ イモジュールによるプロセスイメージが最大サイズを超えた。
0x5000* 0x81 00 0A 02 00 00 メールボックスが最大サイズを超えた。
0x8100* 0x81 00 04 00 00 00 2つのSyncオブジェクト間の時間間隔が通信周期より長い 00 01 00 00 00
0x8110* 0x11 内部受信バッファオーバーフロー
オブジェクト0x67FEで定義したステータス変化。出力はエラ ーモード/エラー値オブジェクトで定義した通り切り換わる。
0x8110* 0x11 00 02 00 00 00 内部送信バッファオーバーフロー
オブジェクト0x67FEで定義したステータス変化。出力はエラ ーモード/エラー値オブジェクトで定義した通り切り換わる。
0x8120* 0x11 00 03 00 00 00 CANコントローラがエラーパッシブモードである
0x8130* 0x11 00 04 00 00 00 2つのノードガーディング・テレグラム間の時間がガードタイ ム×ライフタイムファクタより大きい
KK:時間オーバーフローを通知したノード 0x8130* 0x11 00 05 KK 00
00
2つのハートビート・テレグラム間の時間が設定値より大きい 0x81
0x8210* 00 05 SS II NN PDOが通信プロファイルで設定した値より小さいバイト数で 送信された
PDOデータは捨てられる。出力は変化せず。
SS:セット箇所値 – 設定値(インデックス0x1600 サブインデ ックス0)
II:実際値 – 送信バイト数 NN:PDO数(1...32)
0x8220* 0x81 00 08 SS II NN PDOが通信プロファイルで設定した値より大きいバイト数で 送信された
最初のnデータのみが用いられる(n=オブジェクトディクショ ナリで設定した全長)
SS:セット箇所値 – 設定値(全ての有効に設定したオブジェ クトの総バイト数)
II:実際値 – 送信バイト数 NN:PDO数(1…32)
0xFF00* 0x81 00 06 PP 00 00 内部バスエラー、STOPPEDステータスに移行 PP:モジュール位置
- DD:診断バイト - PP:モジュール位置 0xFF00* 0x81 DD 07 PP SK
NN
診断メッセージ
- SK:エラーステータスおよびチャンネル番号 - NN:現在のモジュールエラー数
*エラーコード:バイト0=下位バイト、バイト1=上位バイト
例:エラーコード0x8220: バイト0=0x20、バイト=0x82
エラーメッセージ
4.3.9.1 I/Oモジュールの診断メッセージ
診断機能付きのモジュールでエラーが起きた場合、診断ステータスはエマージェンシ・メッ セージによって送信されます。
現在のモジュールエラー数
ビット 0、1、2:モジュールのチャンネル番号を指定(チャンネル 0...7)
ビット 3:予約
ビット 7:検出またはクリアされたエラー
ビット 7=1:エラーを検出、ビット 7=0:エラーはクリアされた
モジュール位置
診断メッセージ識別子
モジュール固有診断バイト(アナログモジュール)
モジュール固有診断バイト(デジタルモジュール)
エラーがクリアされた場合”0”(つまり SK ビット 7=0)
診断メッセージ用追加コードの構造:
• 2チャンネルアナログ入力モジュール750-465、14番位置に接続、チャンネル0の電 流は20mA以上
図4-27:追加コードの構造 g012423e
例:
1エラー チャンネル0 エラー検出
14番目にモジュール挿入 診断メッセージ
電流>20.5mA エラーレジスタ エラーコード エマージェンシ・テレグラム
図4-28:エマージェンシ・テレグラム1 g012424e
• 最初のエラーに加えて、2チャンネルデジタル出力モジュール750-506に別のエラー が起きます。チャンネル1で断線、モジュールは17番目に接続。
エラーメッセージ
2エラー チャンネル1 エラー検出
17番目にモジュール挿入 診断メッセージ
ビット2がセット、断線 エラーレジスタ エラーコード エマージェンシ・テレグラム
図4-29:エマージェンシ・テレグラム2 g012425e
• 発生したエラー(デジタルモジュール750-506で断線)は修復されます。
図4-24:エマージェンシ・テレグラム1
1エラー チャンネル1 エラー修復
17番目にモジュール挿入 診断メッセージ
OKメッセージとして常に0 エラーレジスタ
エラーコード エマージェンシ・テレグラム
図4-30:エマージェンシ・テレグラム3 g012426x
メモ
診断付のデジタルモジュールに対し、診断データはプロセスイメージに追加でマッピング されます。上記の例で用いた750-506は出力プロセスイメージで4ビット(1ビット=出 力値、1ビット=未使用/チャンネル)をまた入力プロセスイメージで4ビット(2ビット
=診断/チャンネル・・断線、短絡)を使用しています。
I/O 概要