中国自动化学会专家咨询工作委员会指定宣传媒体
文摘详情
gkongbbs

串口服务器和 PLC 通信时好时坏?串口侧、网络侧、协议侧三层排查一次讲清

http://www.gkong.com 2026-11-03 16:56 华允物联科技有限公司

在工业现场,最难处理的故障不是设备彻底失效,而是通信时好时坏:PLC的RUN灯常亮,上位机数据却隔几分钟才刷新一次;重启串口服务器后恢复,几小时后复发;严重时产线联锁停机,报警记录里查不到硬件故障。

更换串口服务器、甚至更换PLC通信模块之后问题依旧并不少见。原因在于,这一段通信并非两端直连的简单链路,而是横跨串口侧、网络侧、协议侧三层,任一层没对齐,症状都相似。

一、先给结论:多数“不稳定”属于匹配问题

这类故障中真正由硬件失效引起的只占少数,多数集中在接线、参数、时序三类可调整项上(具体占比待验证)。

三者按位置分落在不同层:接线、参数在串口侧与网络侧,时序在协议侧。排查的第一原则不是更换部件,而是先把偶发现象变成可复现现象。

二、串口侧:接线与参数

现场常用的两线制RS-485是半双工总线,对手拉手拓扑、终端匹配与共地较敏感。启停时的丢包通常指向共模电流与瞬态干扰;缺少 120 Ω 终端电阻造成的反射属于持续性缺陷,表现为速率越高、距离越长误码越多。

串口参数必须两端一致:波特率、数据位、停止位、校验位。不一致通常不是完全不通,而是间歇性乱码与偶发超时,易被误判为干扰。半双工场景还需留意收发切换延时,过快会截断帧头。

串口侧常见故障速查:

故障点

典型表现

处理动作

A/B 线接反或端子松动

完全不通,或时通时断

核对线序,紧固端子

末端未接 120 Ω 终端电阻

速率越高、距离越长,误码越多

总线两端各加一只 120 Ω 电阻

屏蔽层多点接地

大功率设备启停时出错

改为单端接地

串口参数与 PLC 不一致

间歇性乱码、偶发超时

逐项核对波特率、数据位、停止位、校验位

星形分支或支线过长

距离一拉长就不稳定

改为手拉手拓扑,缩短支线

一句话结论:串口侧的故障多为物理连接与参数一致性问题,逐项核对即可定位,通常不需要更换设备。

三、网络侧:连上了不等于通

串口服务器把串口字节流封装成TCP或UDP报文发送,数据长度或字符间隔满足其一即转发。PLC一帧报文内部的字符间隔大于设定打包间隔时,一帧会被拆成两包;间隔设得过长,连续几个请求又会被合并成一包。上位机协议栈对帧完整性敏感,拆包与粘包是偶发失败最直接的来源。

打包参数通常可在内置网页中调整,以华允 HY-E504四串口服务器为例,字符间隔打包默认5 ms,可调 1 ~ 300 ms。老型号 PLC 响应慢、报文被拆散时,增大打包间隔通常比反复重启更有效。

网络侧另一类问题是连接假死:TCP长连接空闲后被防火墙或NAT会话老化机制回收,ping仍可达,数据却不再传输。心跳包与断线重连策略针对的正是这一场景。

四、协议侧:Modbus的时序冲突与“假故障”

Modbus RTU是严格的主从问答式协议,一次请求对应一次应答。

上位机按固定周期轮询且开启超时重试时,若周期短于 PLC 的实际响应时间,上一帧应答可能迟到并与下一帧错位;多个主站同时访问同一串口,请求同样会在缓冲区排队。这类故障常在新增采集点后出现,实质是时序没留余量。

另一类是配置错误造成的假故障:寄存器地址0基还是1基未对齐、从站站号冲突、上位机用了PLC不支持的功能码。这些不涉及硬件,但报错往往指向通信超时。多从站系统中若只有个别从站配错,表现为部分点位周期性缺失,整体接近间歇性故障。

五、一个能直接套用的排查顺序

先划边界,再逐层收敛,三步可把范围缩到最小。

1、用 USB 转 RS-485 转换器将 PLC 直连电脑

若通信稳定,可排除 PLC 串口硬件故障。

2、将串口服务器改接至已确认通信正常的串口设备

若通信稳定,可排除串口服务器硬件故障。此处须使用已确认正常的对端设备,否则总线本身的故障会同时干扰判断。

3、从上位机连续ping串口服务器

发送一千个包,丢包为0且延时稳定,可排除链路可达性问题。默认ping间隔通常 1 秒,一千个包约需十几分钟,可用参数缩短。ping通只说明链路可达,若仍无法建立 TCP连接,还需确认端口是否被放行。

三条边界排除的是硬件嫌疑,打包与时序问题不在其中,需用抓包结果逐项对照。

六、选型时真正该看的三件事

排查后若确认要换设备,判断依据不是参数表长短,而是设备与现场条件的匹配程度。

1、隔离与防护。

现场有变频器、伺服、大电流接触器,就要看串口侧有没有电气隔离与浪涌防护;机柜里夏天能到六七十摄氏度,就要看工作温度范围。工业级串口服务器通常为 −40 ~ 85 ℃、5 ~ 36 V 供电。

2、协议模式。

只做透明传输,还是内置Modbus RTU与Modbus TCP的转换,取决于上位机期望收到的报文形式;多个上位机同时读同一个串口时,还要确认支持几路Socket、TCP Server最多接几个客户端。

3、可诊断性。

有没有丢包计数、连接状态显示、断线自动重连与看门狗。这一项直接决定下一次的排查耗时。

七、能力边界:换设备也解决不了的情况

串口服务器解决的是串口数据的网络化传输,不解析PLC协议的内容,也不改变PLC的响应能力。总线拓扑不合规、干扰源未屏蔽穿管,或PLC串口已老化时,只能缓解不能根治。毫秒级硬实时的运动控制场景通常也不适合透明传输,应评估现场总线或实时以太网方案。

八、常见问题

Q1、通信不稳定是不是串口服务器坏了?

多数不是。硬件失效只占少数,大头是接线、参数、时序三类可调整项,可先做三步边界划分。

Q2、大功率设备一启停就丢包,是什么原因?

通常指向接地电位差引起的共模电流与瞬态干扰,可先查屏蔽层的接地方式。

Q3、ping通是不是就说明网络没问题?

不是。ping只验证ICMP可达,TCP端口仍可能被防火墙拦截。

Q4、打包间隔设多大合适?

原则是大于PLC一帧报文内部的字符间隔,避免一帧被拆成两包。

九、小结

通信不稳定反映的往往不是单台设备的质量,而是整条链路的匹配程度。先分层再定位,最后才考虑更换设备;把接线、参数与时序落实到位,多数问题在现有条件下即可解决。

版权所有 工控网 Copyright©2026 Gkong.com, All Rights Reserved