欧姆龙PLC通讯故障全面解析:90%的问题都出在这些环节上
一、通讯三件套:硬件、参数、协议
基本概念
搞通讯就像打电话,得有三样东西对得上: - 硬件:相当于手机有没有插SIM卡(比如RS232/485模块装没装对) - 参数:相当于电话号码拨对没有(波特率、数据位这些参数是不是两边一样) - 协议:相当于俩人说的语言对不对得上(HostLink协议、FINS协议这些)
重点看红色标注的接线位置和参数配置窗口
坑点实录
去年在饮料灌装线遇到个邪门事:PLC和触摸屏白天正常,一到晚上就抽风。后来发现产线照明用的LED电源干扰了485通讯线!重要的事情说三遍:屏蔽线要接地!屏蔽线要接地!屏蔽线要接地!
二、硬件连接那些坑
接线大全
接口类型 | 正确接法 | 作死接法 |
---|---|---|
RS232 | 2-3,3-2,5-5 | 直接怼同名针脚 |
RS485 | A-A,B-B | 把B线当GND用 |
以太网 | 直连线接法 | 随便找根网线 |
注意事项: - 带电插拔通讯模块?等着放烟花! - 485总线超过50米不加终端电阻?准备玩通讯丢包游戏
实战案例
某次给物流分拣系统加扫码枪,死活连不上PLC。最后发现厂家给的DB9头是公头,而PLC端口也是公头!用万用表量了下,原来2、3脚根本没交叉!
三、参数设置魔鬼细节
参数对照表
设备 | 波特率 | 数据位 | 停止位 | 校验 |
---|---|---|---|---|
CP1E PLC | 9600 | 7 | 2 | 偶校验 |
威纶通HMI | 9600 | 7 | 2 | 偶校验 |
扫码枪 | 115200 | 8 | 1 | 无 |
血泪教训: 有次把CX-Programmer里的通讯速率设成19200,结果在线监控时PLC直接死机!后来发现那个型号的CP1H最高只支持115200…
四、协议那些弯弯绕
协议选择指南
- HostLink
:适合老设备,像发电报一样一问一答
- FINS/TCP
:新项目首选,速度嗖嗖的
- Modbus
:要和其他品牌设备搞机的时候用
' HostLink命令示例
Dim cmd As String = "@00FA0000*" ' 读取D100开始10个字
' 注意地址要换算成十六进制,D100对应&H64
调试技巧: 用串口助手抓包时,看到返回代码是”00”表示正常,”0B”就是通讯格式错误。
五、常见故障排雷手册
故障现象VS解决方案
-
通讯超时: - 查接线:拿万用表量A-B线电压,正常在2-6V之间晃悠 - 看终端电阻:120Ω电阻并到总线两端
-
数据乱码: - 核对奇偶校验:就像普通话和方言混着说肯定出岔子 - 检查接地:别让屏蔽层变成天线!
-
时通时断: - 隔离干扰源:变频器、大功率设备都是通讯杀手 - 换带屏蔽的双绞线:普通网线在车间就是战五渣
六、作死行为排行榜
-
带电插拔通讯线(烧端口冠军)
-
不同电压等级的通讯模块直接怼(比如RS232接24V设备)
-
用普通导线代替屏蔽双绞线(干扰教你做人)
该动手了!
整台二手CP1E练手,淘宝50块买个USB转RS485转换器。试着: 1. 用CX-Programmer在线监控 2. 用串口助手收发HostLink命令 3. 故意把波特率设错观察故障现象