Skip to main content

PROFIsafe 状态和诊断

可以在输出端诊断 PROFIsafe 通信的状态和安全控制器检测到的问题DiagCode驱动程序功能块(见下文)。

诊断代码

DiagCode 参数分为两类:

  • 16#8xxx对于与传输通信的状态(见通信与传输状态

  • 16#Cxxx错误状态(见错误状态 )

通信与传输状态

在与变速箱通讯的状态下,诊断代码可具有以下值:

DiagCode = 16#80xx,xx 包含ProfisafeHost以及ProfisafeHostV26根据PROFIsafeHost规范:

xx 的值

描述

16#01

(初始化)“System start”:系统启动后ProfisafeHost的初始状态。

16#02

(初始化)“Prepare Message”:准备下一条消息F-Device

16#03

(初始化)“Await Device Ack”:等待F-Device的响应。

16#04

(初始化)“Check Device Ack”:检查 F 设备的响应(CRC、连续数、F 设备错误)

16#05

(数据交换)“Prepare Message”:准备下一条消息F-Device

16#06

(数据交换)“Await Device Ack”:等待设备确认的响应F-Device

16#07

(数据交换)“Check Device Ack”:检查 F 设备的响应(CRC、连续数、F-Device错误)

16#08

(错误处理)“Prepare Message”:准备下一条消息F-Device

16#09

(错误处理)“Await Device Ack”:等待F-Device

16#0A

(错误处理)“Check Device Ack”:检查 F 设备的响应(CRC、连续数、F-Device错误)

16#0B

(错误处理)“Wait Delay Time”:无传输(响应的看门狗时间)

  • 16#0116#07:这些诊断代码在运行过程中存在DiagCode IEC 应用程序中的输出。

  • 16#0816#0916#0A, 和16#0B:这些诊断代码永远不会存在DiagCode IEC 应用程序中的输出,因为 PROFIsafeHost 堆栈处于错误状态,并且显示诊断代码类型16#Cxxx

在诊断输出处显示错误状态

ProfisafeHostProfisafeHostV26功能块在诊断输出处显示错误状态时具有不同的行为。

  • 功能块:ProfisafeHost

    如果有两个错误ProfisafeHost如果同时存在多个功能块,则仅显示优先级最高的错误。错误的优先级根据错误类别分配:

    1. 错误类别16#C0xx(最高优先级)

    2. 错误类别16#C1xx

    3. 错误类别16#C2xx(最低优先级)

  • 功能块:ProfisafeHostV26

    首先检测到的错误将作为诊断字保留在功能块的输出中,直到被确认为止。

诊断代码在错误状态下可采用以下值(分为3个错误类别):

配置和初始化错误ProfisafeHostProfisafeHostV26

DiagCode = 16#C0xx(配置和初始化错误ProfisafeHost ); xx 包含一个额外的特定于错误的错误代码

xx 的值

描述

16#00

无效调用ProfisafeHost

16#01

指向 F 参数的指针无效。

16#02

实例数据的值无效

16#03

F 参数的数量不正确。

16#04

CRC 的配置长度(F_CRC_Length参数)不受支持。

16#05

F 参数的数量无效。

16#06

F 参数的长度与 F_Block_ID F 参数。

16#07

ProfisafeHost版本 (F_Par_Version实例化的功能块不支持(参数)。

16#08

无效值 F_Par_CRC F 参数

16#09

无效的 F_Parameter F_WD_Time = 0

16#0A

无效的 F_Parameter F_Source_Address

16#0B

无效的 F_Parameter F_Dest_Address

16#20

I/O 电报长度无效

ProfisafeHost:4≤电报长度≤16

ProfisafeHostV26:5≤电报长度≤128

16#30

无法初始化下级 I/O 系统。配置数据发生内部错误。

错误状态ProfisafeHostProfisafeHostV26

DiagCode = 16C1xx(错误状态ProfisafeHost ); xx 包含额外的主机错误特定错误代码

xx 的值

描述

16#01

仅适用于ProfisafeHost

检测到短路错误;输出电报ProfisafeHost堆栈已作为输入电报接收(环回错误)

16#02

看门狗错误;在 F_WD_Time (F-看门狗时间)

注意:当 F-Host 和F-Device由于配置不正确而无法实现。

16#03

收到的电报有 CRC 错误

16#04

仅适用于ProfisafeHost

ProfisafeHost堆栈正在等待操作员确认。

OA_Req_S = TRUE输出信号给应用程序,表明在发生错误后已重新建立安全通信并且需要确认重新启动。

F 设备的错误状态

DiagCode = 16#C2xx(错误状态F-Device已传输至主站);xx 包含状态字节(参见 PROFIsafe 规范,第 7.1.3 章)CODESYS PROFIsafe 设备。位 0、位 5、位 6 和位 7 被 F-Host 堆栈屏蔽。可同时设置多个位。

位在 xx

描述

位 0

未使用

位 1

F 模块中存在错误,或者F-Device ( Device_Fault)。

位 2

CRC 通信错误(CE_CRC

CRC 错误包括初始化和通信错误的所有可能变体。

位 3

超时错误(WD-timeout )

位 4

故障安全值已激活(FV-activated )

位 5

未使用

位 6

未使用

位 7

未使用