S7-1200作为IO控制器进行分布式IO设备的通信诊断功能

s7-1200 作为 io 控制器进行分布式 io 设备的通信诊断功能 本部分使用 cpu 1214c v4.4 和 et200sp 的 pn 通信为例进行说明(dp通信同样适用)。
硬件:
cpu 1214c dc/dc/dc,v4.4,一台
et200sp 分布式 io 站,pn 接口,两套
软件:
tia portal v16
1. 使用 tia portal 创建项目 使用 tia portal 创建一个新项目,正确配置,下载后,进入网络视图,所有站点状态正常。如图 1 所示。
图 1 网络视图
注意:分布式 io 为 pn 子站时,可在“网络概览”中可以查看分布式 io 的设备编号。
2. 使用 devicestates 指令对分布式 io 子站进行诊断 2.1 创建全局数据块,用于存储状态数据 在全局数据块中创建数据类型为 array of bool 数组,共计1024个元素,如图 2 所示。
『注意』对于dp主站系统,相关的诊断功能与profinet系统类似。只是需要使用dp系统兼容的变量,例如创建128个元素的 array of bool 数组,用于存储dp站的状态,类似情况下文不再赘述。
图 2 创建全局数据块
2.2 编程 在 ob1 中调用 devicestates 指令,双击 laddr 引脚,选择需要诊断的 io 系统,如图 3 所示。
图 3 调用 devicestates 指令
本例中选择pn io系统硬件标识符,并将 mode 设置为2,state 填写上述定义的全局数据块数组。如图 4 所示。
图 4 填写相应的引脚
表 1 devicestates 指令引脚说明
参数 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 位
2.3 测试 将程序下载到 plc 中。
监控全局数据块 devicestate。如图 5 所示。
图 5 io 系统正常
当 io device_2 故障时(掉电或网线拔除导致丢站),state[2]=1。如图 6 所示。
图 6 io device_2 故障
当 io device_1 和 io device_2 故障时(掉电或网线拔除导致丢站),state[1]=1 和 state[2]=1。如图 7 所示。
图 7 io device_1 和 io device_2 故障
3. 使用 modulestates 指令对分布式 io 子模块进行诊断 3.1 创建全局数据块,用于存储状态数据 在全局数据块中创建数据类型为 array of bool 数组,共计128个元素。如图 8 所示。
图 8 创建全局数据块
3.2 编程 在 ob1 中调用 modulestates 指令,双击 laddr 引脚,选择需要诊断的分布式 io 站。如图 9 所示。
图 9 调用 modulestates 指令
本例中选择pn io设备硬件标识符,并将 mode 设置为2,state 填写上述定义的全局数据块数组。如图 10 所示。
图 10 填写相应的引脚
表 2 modulestates指令引脚说明
参数 laddr 使用 laddr 参数通过站硬件标识符选择 io 设备或 dp 从站。
硬件标识符位于:
io 设备站或 dp 从站属性的网络视图中。
或数据类型为 hw_device(对于 io 设备)或 hw_dpslave(对于 dp 从站)的所列系统常量的 plc 变量表中。
参数 mode 使用 mode 参数可读取状态信息。可读取模块的下列一条状态信息:
1: 模块已组态
2: 模块故障
3: 模块禁用
4: 模块存在
5: 模块中存在故障。
参数 state state 参数输出使用 mode 参数选择的模块状态。
如果使用 mode 选择的状态适用于某个模块,那么下列位将设置为“1”:
位 0 = 1:组显示。至少一个模块的第 n 位设置为“1”。
位 n = 1:使用 mode 选择的状态将应用到插槽 n-1(例如:位 3 对应插槽 2)中的模块。
使用“bool”或“array of bool”作为数据类型:
要仅输出状态信息的组显示位,可在 state 参数中使用 bool 数据类型。
要输出所有模块的状态信息,请使用长度为 128 位的 array of bool。
3.3 测试 将程序下载到 plc 中。
监控全局数据块 modulestate。如图 11 所示。
图 11 分布式 io 站所有子模块正常
当 io device_1 站插槽编号1的子模块故障时(损坏或被拔除),state[2]=1。如图 12 所示。
图 12 插槽编号1子模块故障

热电偶校验仪工作原理_热电偶校验仪使用注意事项
EM仿真器在预测RF和微波电路中的应用研究
Tina Linux配置开发指南
华为在5G技术上已领先所有对手,中国实现了完全的超越
锂离子正极三剑客之一:锰酸锂
S7-1200作为IO控制器进行分布式IO设备的通信诊断功能
人工智能模型服务商如何去定位
AI与传感器融合 激起机器人“网络效应”
瑞萨低功耗的MCU、更安全、更丰富的外围器件的智能电表解决方案
国产芯片存储器的发展还要克服很多难关
7805系列的稳压器的好坏用指针式万用表如何判断
基于智能化的高速公路电力监控系统技术研究
一文了解AR、VR、MR及XR
springcloud微服务架构
Linux X的配置
苹果委托LG Display为其开发可折叠显示屏
中国eSIM市场仍处于早期发展阶段普及还尚需时日
简支梁冲击试验机的主要特点是怎样的
如何检测光电三极管
张力检测器的概念及功能