Skip to main content

应用程序诊断

CANopen州

在应用程序中,可以通过三种不同的方式查询设备的CANopen状态:

  • GET_STATE功能块(CAA CiA 405图书馆)

  • <name in device tree>.CANopenState财产 (3S CANopenStack图书馆)

  • <name in device tree>.GetDeviceState方法 (CAA Device Diagnosis图书馆)

    该方法不返回CANopen状态,而是返回设备是否正在运行的信息。映射表CANopenStateDEVICE_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 功能块接收紧急电报。

预定义错误字段和错误寄存器

可以使用以下方式读取从站对象目录中的对象:SDO_READ4SDO_READ_DATA CiA405 功能块。

安全诊断

在安全模式下,隐式创建的、带有前缀“S_”的功能块提供相应的诊断输出。通过这些功能块,您可以定义与从从站的SRDO通信是否处于活动状态,或者是否已达到安全状态。

此外,该功能块还提供输入,用于确认单个从站的错误,以及暂时停用SRDO通信。

更多信息请参见:CANopenManagerSIL2CANRemoteDeviceSafe (FB)