エラー
Modbus TCP で使用されるアジキューブでは、いくつかのタイプのエラーが発生することがあります。ホールディング・レジスタ HR_MODBUS_STATUS (アドレス64)ビットは、これらのタイプのエラーの状態を表します。
値 (バイナリ) |
名称 |
説明 |
---|---|---|
0b0001 |
アジキューブ Modbus エラー状態 |
値が 1 の場合は、 主な Modbus 例外コード を参照してください。 |
0b0010 |
内部の Modebus 通信エラー状態 |
値が 1 の場合は、 ホールディング・レジスタ:エラーコード を参照してください。 |
0b0100 |
アジキューブ警告状態 |
値が 1 の場合は、 アジキューブの警告とアラーム を参照してください。 |
0b1000 |
アジキューブアラーム状態 |
値が 1 の場合は、 アジキューブの警告とアラーム を参照してください。 |
エラー状態は、ホールディング・レジスタ HR_MODBUS_CONTROL に対応するビットに 1 を書き込むことでリセットすることが可能です。例えば、 0b0110
(10 進数で値 ‘6’ に対応)を書き込むと、アジキューブ Modbus エラー状態とアジキューブ警告状態の両方をリセットします。
主な Modbus 例外コード
Modbus の例外コードはプロトコル仕様書(http://www.modbus.org)に定義されています。これらの例外のサブセットはアジキューブに実装されています( 表 19 を参照)。Modbus プロトコルは、例外を Modbus メッセージを通して直接伝える責任があり、ホールディング・レジスタに設定されることはありません。
値 (十進数) |
名称 |
説明 |
1 |
不正な機能 |
クエリー(Query)で受信した機能コードは、スレーブ機器によって認識されない、または許可されます。 |
2 |
不正なデータアドレス |
必要なエンティティの一部または全部のデータアドレスが許可されていないか、スレーブに存在していません。 |
3 |
不正なデータ値 |
スレーブにより、値は受け入れられていません。 |
ホールディング・レジスタ:エラーコード
HR_MODBUS_ERROR_CODE は、現在のアジキューブ Modbus エラーを示します。
最初のバイト(マスク 0x00FF
)は、アジキューブ Modbus の実装にリンクされたエラーを示します( 表 20 を参照)。
値 (16進数) |
名称 |
説明 |
0x01 |
書き込みアクセスは許可されていません。 |
禁止されているか、インデックスが範囲外であるため、データを書き込むことができません。例えば、27 のような範囲外の値を持つシーケンス( HR_SELECT_VIBRATION_SET )を選択するような場合です。 |
2 バイト目(マスク 0xFF00
)は内部び Modbus 通信エラーコードを示します( 表 17 のエラーバイト値を参照)。内部の Modbus 通信エラーは、通常、誤った設定値で振動が始動されたときに発生します。
例えば、X 位置の値( HR_PLATFORM_CENTERING_X )が120%のように範囲外であるのにプラットフォームのセンタリングを始動する場合( HR_PLATFORM_CENTERING_TRIG )です。
アジキューブの警告とアラーム
アジキューブは、独自の警告とアラームを持ちます。それらはホールディング・レジスタ HR_WARNINGS と HR_ALARMS でそれぞれ読み取ることができます。