1.应用的基本信息
项目主要采用S7-1511-1PN CPU、ET200SP分布式I/O、G120C Profinet版本变频器。
其中分布式IO包含 DI 16x24VDC ST模块2个、DQ 16x24VDC/0.5A ST模块 2个、AI 8xI 2/4 线制 BA模块两个、AI 4xRTD/TC 2 线制、3 线制、4 线制 HF模块4个、AQ 4xU/I ST模块2个、CM PtP(空闲端口,3964R,USS,Modbus RTU)通讯模块1个。通过采集流量、温度、压力等数据,实现整个系统的温度、流量和压力稳定控制。该项目为新开发工艺,本人作为该项目自控部分负责人,负责程序编写和现场调试。

2.问题描述
ET200SP分布式I/O是使用 CM PtP(空闲端口,3964R,USS,Modbus RTU)通讯模块 与现场欧姆龙温控表做Modbus RTU,经常偶发性发生通讯故障,数据不能正常交互,重启系统后恢复正常。
3.问题的分解和解决
3.1初步怀疑干扰问题,排查系统接地状况、等电位状况,未见明显异常,使用示波器检查波形无畸变,不存在干扰现象。
使用串口检测工工具监控报文,发现每当出现通讯异常时,报文存在丢码现象、且每次丢失的都是报文末尾的CRC校验码。
经过多次观察发现,每当ET200SP模块单独断电后再送电发生该故障。已找到问题的根本原因,就有了解决方案。
3.2故障或问题处理
0B86 Rack or station failure组织块增加 Modbus_Comm_Load。


4.经验总结
分布式IO应用一定要增加IO模块异常的处理程序。