第二章:硬件基础——串口RS-232/RS-485与以太网RJ45接口的物理层对比与选型

做Modbus迁移,第一个绕不开的问题就是:物理层怎么选?

说白了,你原来用串口线连得好好的设备,现在要改成以太网。但串口和以太网,根本就不是一个世界的东西。我见过太多人,买了个以太网模块回来,插上发现通讯不上,最后查了半天——原来是电平不匹配。

嗯,这一章我们就来把这事彻底讲清楚。

2.1 串口家族:RS-232 与 RS-485 的恩怨情仇

先说说串口。Modbus RTU/ASCII 跑在串口上,这是最经典的模式。但串口本身分两种:RS-232 和 RS-485。很多人以为它们差不多,其实差远了。

2.1.1 RS-232:老大哥,但腿短

RS-232 是最早的串口标准。我记得刚入行那会儿,调试PLC还得用DB9接口的编程线,就是那种两头都是9针母头的线。RS-232 的特点是:单端传输。什么意思?就是一根信号线对地线,电压差来代表逻辑0和1。

  • 逻辑1: -3V ~ -15V
  • 逻辑0: +3V ~ +15V

你看,它用的是负逻辑,而且电压范围还挺大。这带来的问题就是:抗干扰能力差。我在一个工厂里遇到过,RS-232线拉了15米,数据就开始乱跳。后来一查,旁边就是变频器的动力电缆。

⚠ 避坑指南: RS-232 的可靠传输距离一般不超过15米。如果你现场设备距离超过这个数,别硬撑,换RS-485或者直接上以太网。

2.1.2 RS-485:工业现场的常青树

RS-485 就不一样了。它用的是差分信号——两根线(A和B)之间的电压差来决定逻辑。这招很聪明,因为外部干扰会同时作用在两根线上,差值基本不变。所以RS-485的抗干扰能力比RS-232强了一个数量级。

  • 逻辑1: A线比B线高 +0.2V 以上
  • 逻辑0: A线比B线低 -0.2V 以上

而且RS-485支持多点通讯。一条总线上可以挂32个节点(标准值,有些芯片能到256个)。我做过一个项目,一条RS-485总线挂了18个温湿度传感器,距离最远的那个离主机有800米,照样跑9600波特率,稳得很。

💡 个人经验: RS-485布线时,记得在总线两端各加一个120欧姆的终端电阻。我曾经偷懒没加,结果通讯时好时坏,查了两天才发现是信号反射的问题。

2.2 以太网RJ45:速度与距离的降维打击

说完串口,再来看以太网。RJ45接口,也就是我们常说的网口。它用的是差分信号,但比RS-485更复杂——因为它有4对差分线(8根线),而且支持全双工。

以太网的物理层标准很多,但工业现场最常见的是10/100BASE-TX。它只用两对线:一对发,一对收。速度是10Mbps或100Mbps。你想想看,串口最高也就115200bps,差了将近1000倍。

距离方面,标准以太网是100米(用超五类或六类网线)。超过100米怎么办?加交换机,或者用光纤。我有个项目,车间跨度200多米,中间加了一台工业交换机,完美解决。

参数 RS-232 RS-485 以太网 (10/100BASE-TX)
传输方式 单端 差分 差分
最大距离 15米 1200米 100米
最大节点数 1对1 32~256 理论上无限制(通过交换机)
典型速率 9600~115200 bps 9600~115200 bps 10/100 Mbps
抗干扰能力
全双工 是(但需额外线) 半双工 全双工

2.3 选型决策:什么时候该换?什么时候不该换?

好,现在问题来了:我到底要不要把串口设备换成以太网?

我个人习惯是这么判断的:

  1. 看距离: 超过15米,别用RS-232。超过100米,别用普通以太网(除非加交换机或光纤)。RS-485在1200米以内都还行。
  2. 看节点数: 超过32个设备,RS-485就有点吃力了。这时候以太网加交换机是更好的选择。
  3. 看速度: 如果数据量不大(比如温度、压力这些慢变量),串口完全够用。但如果要传波形、图片或者大量历史数据,老老实实上以太网。
  4. 看成本: 串口芯片便宜,线缆也便宜。以太网芯片贵一些,但交换机现在也白菜价了。
🔑 核心原则: 能不改就不改,改了就要彻底。如果只是把串口转成以太网,但协议还是Modbus RTU,那其实没发挥以太网的优势。真正迁移,是要把协议也升级成Modbus TCP。

2.4 物理层对比总结:一张图看懂

下面这张图,是我自己画的。它把三种物理层的核心差异和适用场景串在了一起。你看完应该就能明白,为什么我说“选型不是拍脑袋,而是算账”。

Modbus物理层选型决策树 你的设备需要什么? 距离 < 15米? 需要高速/多节点? 是 → RS-232 否 → RS-485 是 → 以太网 否 → 保持串口 节点 > 32? 距离 > 1200米? 换以太网 加中继器或换光纤 距离 > 100米? 需要实时性? 加交换机/光纤 考虑工业以太网协议 总结:没有最好的接口,只有最合适的方案 距离、节点数、速度、成本——四个维度综合评估

2.5 实战中的那些坑

最后,分享几个我踩过的坑,希望能帮你省点时间。

  • 接地问题: RS-485的屏蔽层,到底接不接地?我的经验是:单端接地。两端都接地,反而容易形成地环路,引入干扰。我曾经在一个项目里,两端都接了地,结果通讯误码率高达10%。去掉一端后,立马恢复正常。
  • 网线质量: 工业现场别用那种几块钱一根的成品网线。我建议用超五类或六类屏蔽网线,自己做水晶头。别嫌麻烦,稳定比什么都重要。
  • 波特率匹配: 串口转以太网时,很多人忘了检查波特率。两边必须一致,否则数据全是乱码。我见过有人把9600和19200混着用,折腾了一下午才发现。
💡 一个小技巧: 如果你不确定现场干扰大不大,可以先拿一个USB转RS-485的调试工具,接上电脑,用Modbus Poll软件扫一遍。如果误码率超过1%,那就老老实实上以太网。

好了,物理层的事就聊到这儿。下一章我们讲协议层——Modbus RTU 和 Modbus TCP 到底有什么区别?为什么说TCP才是未来?到时候见。


公众号:蓝海资料掘金营,微信deep3321