问题:
如何避免调用 MBUS-INIT 时 S7-226 XM CPU 伴随出错消息“Cycle Time Monitoring Error”(循环时间监视错误)而停止?
解答:
如果有一个 HMI 设备(TD200)连接到 S7-226 XM 的端口 1,并且通过端口 0 初始化 MODBUS 从站协议,则可能出现系统出错消息“Cycle Time Monitoring Error”(循环时间监视错误)。
由于 CPU 226 XM 所具有的更大存储容量而导致内部执行的额外检查,与具有相同固件版本的 S7-226 相比,某些指令需要的处理时间可能更长。
补救措施:
在每个 MODBUS_INIT 调用前后使用指令“WDR”(复位监视时间)。
对该问题进行补救的其它方法:
- 降低 TD 200 的波特率。
- 调用 MODBUS_INIT 之前,在端口 1 将 Freeport 模式更改为 PPI/Master 模式和 1200 波特。然后将该参数复位至点到点接口(PPI/Slave)协议。
图 1:解决方案 2 的程序代码
必须执行“XMT”功能以便能够立即变更 Freeport 模式。
- 通过每 200 ms 被调用一次的“WDR”指令产生一个时间中断。
图 2:解决方案 3 的程序代码
注意事项:
如果扩展模块输出响应,必须复位这些模块的监视时间。这些模块的监视时间通常大于 1 秒。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc335521.html