Skip to main content

アプリケーションでの診断

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>.SetCommunicationStateCAA Device Diagnosis図書館)。

CANopenカーネルの状態

CANopenカーネル状態の照会を使用して、バス エラー、構成エラー、または監視エラーを検出できます。

国家は財産によって尋問される<name of CANopen Manager in device tree>.KernelStateまたは機能ブロックGET_CANOPEN_KERNEL_STATECAA CiA 405図書館)。

緊急

CIA405 機能ブロックを使用して緊急電報を受信できます。

  • RECV_EMCY : バス路線の全機器の緊急事態の受信

  • RECV_EMCY_DEV : 特定のデバイスの緊急事態の受信

定義済みエラーフィールドとエラーレジスタ

スレーブのオブジェクトディレクトリのオブジェクトは、SDO_READ4そしてSDO_READ_DATA CiA405 機能ブロック。

安全性診断

Safetyの場合、プレフィックス「S_」を持つ暗黙的に作成されたファンクションブロックが、診断用の対応する出力を提供します。これらのファンクションブロックを使用して、スレーブへのSRDO通信がアクティブかどうか、または安全状態に達したかどうかを定義できます。

さらに、この機能ブロックは、個々のスレーブのエラーを確認する入力や、 SRDO通信を一時的に非アクティブにする入力も提供します。

詳細については、以下を参照してください。CANopenManagerSIL2そしてCANRemoteDeviceSafe (FB)