PROFIsafe 状态和诊断
可以在输出端诊断 PROFIsafe 通信的状态和安全控制器检测到的问题DiagCode
驱动程序功能块(见下文)。
诊断代码
这 DiagCode
参数分为两类:
16#8xxx
对于与传输通信的状态(见通信与传输状态16#Cxxx
错误状态(见错误状态 )
通信与传输状态
在与变速箱通讯的状态下,诊断代码可具有以下值:
DiagCode
= 16#80xx
,xx 包含ProfisafeHost
以及ProfisafeHostV26
根据PROFIsafeHost规范:
xx 的值 | 描述 |
---|---|
| (初始化)“System start”:系统启动后ProfisafeHost的初始状态。 |
| (初始化)“Prepare Message”:准备下一条消息F-Device |
| (初始化)“Await Device Ack”:等待F-Device的响应。 |
| (初始化)“Check Device Ack”:检查 F 设备的响应(CRC、连续数、F 设备错误) |
| (数据交换)“Prepare Message”:准备下一条消息F-Device。 |
| (数据交换)“Await Device Ack”:等待设备确认的响应F-Device |
| (数据交换)“Check Device Ack”:检查 F 设备的响应(CRC、连续数、F-Device错误) |
| (错误处理)“Prepare Message”:准备下一条消息F-Device。 |
| (错误处理)“Await Device Ack”:等待F-Device |
| (错误处理)“Check Device Ack”:检查 F 设备的响应(CRC、连续数、F-Device错误) |
| (错误处理)“Wait Delay Time”:无传输(响应的看门狗时间) |
16#01
到16#07
:这些诊断代码在运行过程中存在DiagCode
IEC 应用程序中的输出。16#08
,16#09
,16#0A
, 和16#0B
:这些诊断代码永远不会存在DiagCode
IEC 应用程序中的输出,因为 PROFIsafeHost 堆栈处于错误状态,并且显示诊断代码类型16#Cxxx
。
在诊断输出处显示错误状态
这ProfisafeHost
和ProfisafeHostV26
功能块在诊断输出处显示错误状态时具有不同的行为。
功能块:
ProfisafeHost
如果有两个错误
ProfisafeHost
如果同时存在多个功能块,则仅显示优先级最高的错误。错误的优先级根据错误类别分配:错误类别
16#C0xx
(最高优先级)错误类别
16#C1xx
错误类别
16#C2xx
(最低优先级)
功能块:
ProfisafeHostV26
首先检测到的错误将作为诊断字保留在功能块的输出中,直到被确认为止。
诊断代码在错误状态下可采用以下值(分为3个错误类别):
配置和初始化错误ProfisafeHost
和ProfisafeHostV26
DiagCode
= 16#C0xx
(配置和初始化错误ProfisafeHost
); xx 包含一个额外的特定于错误的错误代码
xx 的值 | 描述 |
---|---|
| 无效调用 |
| 指向 F 参数的指针无效。 |
| 实例数据的值无效 |
| F 参数的数量不正确。 |
| CRC 的配置长度( |
| F 参数的数量无效。 |
| F 参数的长度与 |
|
|
| 无效值 |
| 无效的 F_Parameter |
| 无效的 F_Parameter |
| 无效的 F_Parameter |
| I/O 电报长度无效
|
| 无法初始化下级 I/O 系统。配置数据发生内部错误。 |
错误状态ProfisafeHost
和ProfisafeHostV26
DiagCode
= 16C1xx
(错误状态ProfisafeHost
); xx 包含额外的主机错误特定错误代码
xx 的值 | 描述 |
---|---|
| 仅适用于 检测到短路错误;输出电报 |
| 看门狗错误;在 注意:当 F-Host 和F-Device由于配置不正确而无法实现。 |
| 收到的电报有 CRC 错误 |
| 仅适用于 这 这 |
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 ( |
位 2 | CRC 通信错误( CRC 错误包括初始化和通信错误的所有可能变体。 |
位 3 | 超时错误( |
位 4 | 故障安全值已激活( |
位 5 | 未使用 |
位 6 | 未使用 |
位 7 | 未使用 |