搞过PLC项目的人都知道,调试现场最绝望的不是程序写错了,而是通讯连不上。屏幕上一片红,设备离线,客户在旁边等着,你盯着电缆发呆。明明昨天还好好跑着,今天就突然不通了,这种事在工控现场太常见了。
PLC通讯故障看似千奇百怪,但拆开来看,无非就是物理层、参数配置、协议匹配三个层面的问题。只要按步骤排查,绝大多数故障都能在半小时内定位。下面这套七步法,是我在多个项目现场踩坑后总结出来的,从最基础的物理层开始,逐步往上查,避免一上来就钻到软件里找不到方向。
二、第一步:核对通信参数通讯参数不匹配是故障率最高的原因,没有之一。主站和从站的五个灵魂参数必须完全一致:波特率、站号(从站地址)、数据位、停止位、校验位。任何一个不对,通讯直接挂红灯。
常见的坑:波特率9600和19200差一位就是鸡同鸭讲;主站叫1号从站以为自己是2号;数据位7位和8位导致数据错位;奇校验和偶校验互相不认。
排查方法很简单:打开PLC编程软件,把主站和从站的通信参数分别截图,放在一起逐项对比。别相信自己的记忆,相信截图。特别是更换过设备或者重新下载过程序之后,参数可能被覆盖成了默认值,这种低级错误经常发生。
三、第二步:检查物理层接线90%的通讯故障都是物理层的问题,这句话不是夸张。软件配置再完美,电缆一断全白搭。
RS485通讯最常见的问题就是A和B接反。485的两根线有极性,A接A、B接B,不能反。有些设备的标注不统一,有的叫A/B,有的叫D+/D-,还有的标TX+/TX-,对接之前一定要确认清楚。如果不确定,直接用万用表量一下电压,A线比B线高约0.2V到0.5V是正常的。
长距离通讯必须加120欧终端电阻。不加终端电阻的后果是信号反射,导致数据出错或者时通时断。终端电阻只加在总线两端,中间节点不能加,加了反而出问题。
以太网通讯要检查网线是否插紧、网口指示灯是否正常亮起。如果用的是工业交换机,看看交换机的端口状态灯,确认链路是否建立。网线质量差或者水晶头压得不好,也会导致连接不稳定,用测线仪测一下。
四、第三步:确认网络配置IP地址、子网掩码和网关是Modbus TCP和Profinet通讯的基础。主站和从站必须在同一网段,否则根本ping不通。
先用电脑ping一下从站设备的IP地址,能ping通说明网络层没问题,ping不通就回头查IP配置和物理连接。如果ping得通但通讯还是不通,问题大概率在协议层。
端口号也要确认。Modbus TCP默认端口502,有些设备可以自定义端口,如果主站和从站端口不一致就连不上。
五、第四步:用测试工具隔离问题在接实际PLC之前,先用测试软件验证通讯参数是否正确。Modbus通讯推荐用Modbus Poll和Modbus Slave这对工具,一个模拟主站一个模拟从站,在电脑上就能完成全链路测试。
如果用Modbus Poll能读到从站数据,说明从站设备和通讯参数都没问题,故障在PLC程序的配置上。如果Modbus Poll也读不到,问题就在从站设备本身或者物理连接上。这种隔离测试能帮你快速缩小排查范围,不用在现场来回试错。
六、第五步:检查寄存器地址映射通讯参数都对、连接也通了,但读出来的数据不对,这时候要查寄存器地址映射。Modbus的四种寄存器类型容易搞混:线圈(0x)、离散输入(1x)、输入寄存器(3x)、保持寄存器(4x)。
最常见的问题是地址偏移。有些设备手册上写的地址是从1开始编号的,而Modbus协议内部的地址从0开始。比如手册上写的保持寄存器40001,在程序里对应的实际地址是0。差了一个,读出来的数据就全错了。
另外一个坑是数据类型。同一个寄存器,有的设备存的是16位整数,有的是32位浮点数(占两个寄存器),读取方式不一样。如果读出来一个莫名其妙的数字,先确认数据类型和字节序是否正确。
七、第六步:排查干扰问题通讯时通时断,白天正常晚上出问题,或者变频器一启动通讯就断,这些症状八成是电磁干扰。
干扰源的排查思路:看通讯线有没有和动力线平行走线,距离够不够。变频器输出线是最大的干扰源,通讯线必须和它保持至少20厘米以上的距离,最好穿金属管走线。
通讯线的屏蔽层要单端接地,不要两端都接地,否则形成地环路反而引入干扰。如果现场干扰实在严重,可以考虑用磁环或者信号隔离器来抑制干扰。
八、第七步:查看诊断缓冲区如果前面六步都查过了还是找不到问题,去看PLC的诊断缓冲区。西门子S7-1200/1500的诊断缓冲区会记录所有通讯错误的具体类型和发生时间,比如"连接超时""远程站点无响应""CRC校验错误"等。这些信息比你在那瞎猜有用得多。
Profinet通讯还可以通过TIA Portal的拓扑视图查看设备状态,绿色表示正常,红色表示离线,黄色表示诊断报警。点击具体设备能看到详细的诊断信息。
如果从站设备也有诊断功能,同时查看从站侧的错误日志。有些故障是双向的,只看一端可能找不到根因。
九、几个实用小技巧第一,随身带一个USB转485转换器和一根网线,这是现场调试的标配。没有硬件工具,排查就只能靠猜。
第二,养成记录参数的习惯。每次调通一套设备,把通信参数、寄存器地址、数据类型截图保存。下次出问题时直接翻记录,不用重新查手册。
第三,现场改参数之前先备份原配置。改错了还能恢复回去,别把自己改进死胡同。
通讯故障排查的核心原则就是从底层往上查,先硬件后软件,先简单后复杂。按这个思路走,大部分故障都能快速定位,不用在现场耗一整天。
联系我们
邮箱:rencai.guuo@plcwb.com
电话:18501512500
网址:https://www.ttplc.com/


