电子说
多个设备通信中,查询系统中所有模块的特定状态信息。是否通信正常,故障时报警停机,设备网络视图如下。
使用指令“DeviceStates”用于查询 IO 系统中所有模块的特定状态信息,即:
1,PROFINET IO 系统中所有 IO 设备的状态信息
2,或 DP 主站系统中所有 DP 从站的状态信息
手册信息如下
参数 LADDR
使用 LADDR 参数通过硬件标识符选择 PROFINET IO 或 DP 主站系统。
硬件标识符位于:
PROFINET IO 或 DP 主站系统属性的网络视图中。
或数据类型为 HW_IOSYSTEM 的所列系统常量的 PLC 变量表中。
参数 MODE
使用 MODE 参数可读取状态信息。可读取整个 PROFINET IO 或 DP 主站系统的下列一条状态信息:
1:IO 设备/DP 从站已组态
2:IO 设备/DP 从站故障
3:IO 设备/DP 从站已禁用
4:IO 设备/DP 从站存在
5:出现问题的 IO 设备/DP 从站。例如:
维护要求或建议
不可访问
不可用
出现错误
参数 STATE
通过 STATE 参数,输出由 MODE 参数选择的 IO 设备/DP 从站的状态。
如果使用 MODE 选择的状态适用于 IO 设备/DP 从站,则在 STATE 参数中将下列位设置为“1”:
位 0 = 1:组显示。至少有一个 IO 设备/DP 从站的第 n 位设置为“1”。
位 n = 1:通过 MODE 选择的状态将应用到 IO 设备/DP 从站。
对于PROFINET IO 系统,第 n 位对应于相应 IO 设备的设备编号(请参见设备视图和网络视图中的 PROFINET 接口属性)。
对于 PROFINET DP 系统,第 n 位对应于 DP 从站的 PROFIBUS 地址(请参见设备视图和网络视图中的 DP 从站属性)。
使用“BOOL”或“Array of BOOL”作为数据类型:
要仅输出状态信息的组显示位,可在 STATE 参数中使用 BOOL 数据类型。
要输出所有 IO 设备/DP 从站的状态信息,请使用下列长度的 Array of BOOL:
对于 PROFINET IO 系统:1024 位
对于 DP 主站系统:128 位
步骤如下:
新建DB块,数据类型如下所示
从扩展指令-诊断-拖拽指令,填写DB块中新建的数据。
注意LADDR :硬件标识符查看方式
1:点击选项框,选择硬件变量,自动识别
2:点击系统变量,在详细视图中查看IO System. 257
因此LADDR为 257
其中第0位,代表整体故障。
第1-1023,代表第1到X的通信故障。
编辑:黄飞
全部0条评论
快来发表一下你的评论吧 !