アプリケーションでの診断
CANopenの状態
デバイスのCANopen状態は、アプリケーション内で 3 つの方法で調べることができます。
GET_STATE機能ブロック(CAA CiA 405図書館)<name in device tree>.CANopenState財産 (3S CANopenStack図書館)<name in device tree>.GetDeviceState方法 (CAA Device Diagnosis図書館)このメソッドはCANopenの状態を返すのではなく、デバイスが動作しているかどうかの情報を返します。
CANopenStateそしてDEVICE_STATEは、ライブラリのドキュメントに記載されています。CANopenStack。
CANopenマネージャには、すべての必須およびオプションのスレーブがネットワーク内にあるかどうかを調べるプロパティもあります。OPERATIONAL状態。これらのプロパティは、条件が満たされた場合、設定フェーズ後に一度だけ設定されることに注意してください。その後スレーブに障害が発生した場合、これらのプロパティは設定されたままになります。
さらに、 CANopenの状態はファンクションブロックによって設定することもできる。NMT(図書館CAA CiA 405)または方法<name in device tree>.SetCommunicationState(CAA Device Diagnosis図書館)。
CANopenカーネルの状態
CANopenカーネル状態の照会を使用して、バス エラー、構成エラー、または監視エラーを検出できます。
国家は財産によって尋問される<name of CANopen Manager in device tree>.KernelStateまたは機能ブロックGET_CANOPEN_KERNEL_STATE(CAA CiA 405図書館)。
緊急
CIA405 機能ブロックを使用して緊急電報を受信できます。
RECV_EMCY: バス路線の全機器の緊急事態の受信RECV_EMCY_DEV: 特定のデバイスの緊急事態の受信
定義済みエラーフィールドとエラーレジスタ
スレーブのオブジェクトディレクトリのオブジェクトは、SDO_READ4そしてSDO_READ_DATA CiA405 機能ブロック。
安全性診断
Safetyの場合、プレフィックス「S_」を持つ暗黙的に作成されたファンクションブロックが、診断用の対応する出力を提供します。これらのファンクションブロックを使用して、スレーブへのSRDO通信がアクティブかどうか、または安全状態に達したかどうかを定義できます。
さらに、この機能ブロックは、個々のスレーブのエラーを確認する入力や、 SRDO通信を一時的に非アクティブにする入力も提供します。
詳細については、以下を参照してください。CANopenManagerSIL2そしてCANRemoteDeviceSafe (FB)