第2章 物理层基础:RS-232/RS-422/RS-485标准详解

各位工程师朋友,咱们今天聊聊现场总线的物理层。说实话,我干了十几年现场调试,见过太多因为物理层没搞明白导致的奇葩故障。有的项目折腾了三天,最后发现就是一根线没接对。所以这一章,咱们把底子打扎实。

2.1 RS-232:老当益壮的点对点通信

RS-232是串口通信的老祖宗。它的信号是单端传输的,什么意思呢?就是一根信号线对地线,电压差决定逻辑电平。

  • 逻辑1(Mark):-3V ~ -15V
  • 逻辑0(Space):+3V ~ +15V

我记得刚入行那会儿,调试一台老式PLC,RS-232线缆长了点,大概15米,结果数据全是乱码。后来一查手册,RS-232的传输距离也就15米左右,再长就不靠谱了。所以它的典型应用场景就是:编程口、短距离调试、Modbus RTU(短距)

注意:RS-232只能接一台设备,点对点。别想着挂多个从站,那是RS-485的活。

2.2 RS-422:四线制的全双工方案

RS-422用了差分信号传输,抗干扰能力比RS-232强了一大截。它有两对线:一对发送(T+ / T-),一对接收(R+ / R-),所以能同时收发,也就是全双工。

我有个项目,在工厂里走线大概100米,环境里变频器、电机一大堆。用RS-232根本没法用,换成RS-422后,数据稳得很。它的典型参数:

参数 RS-422
传输方式 差分
最大节点数 1发10收(典型)
最大距离 1200米(@100kbps)
工作模式 全双工

不过现在RS-422用得少了,因为RS-485更灵活。但如果你需要全双工,又不想上以太网,RS-422还是个不错的选择。

2.3 RS-485:工业现场的总线之王

RS-485是目前工业现场最常用的串行总线。它也是差分信号,但只用一对线(A / B),通过半双工方式通信。最大的优势是:可以挂多个节点,最多32个(标准),用中继器还能扩展。

它的电气特性:

  • 逻辑1(A-B > +200mV)
  • 逻辑0(A-B < -200mV)
  • 共模电压范围:-7V ~ +12V

说白了,RS-485就是靠两根线之间的电压差来传数据。抗干扰能力比RS-232强太多。我调试过一个水泥厂的料位计网络,现场粉尘大、干扰强,用RS-485跑了300米,一点问题没有。

核心要点:RS-485是半双工,同一时刻只能一个设备发,其他设备收。所以需要主机轮询,或者用冲突检测机制。

2.4 终端电阻与偏置电阻

这两个电阻,是现场调试最容易踩坑的地方。我见过太多人,要么不接,要么乱接。

2.4.1 终端电阻

终端电阻的作用是消除信号反射。当信号在长线上传输时,遇到阻抗不匹配的地方就会反射,造成波形畸变。终端电阻就接在总线的最远端,阻值等于电缆的特性阻抗,通常是120Ω。

怎么判断要不要接?

  • 总线长度 < 50米:一般可以不接,但接了也没坏处
  • 总线长度 > 50米:必须接,否则数据会丢包
  • 波特率 > 115200bps:即使距离短,也建议接

我曾经在一个项目里,总线长度大概80米,没接终端电阻,结果每隔几分钟就丢一帧数据。查了两天才发现是反射问题。接上120Ω电阻后,稳如老狗。

2.4.2 偏置电阻

偏置电阻的作用是给总线提供一个确定的空闲电平。当总线上没有设备发送时,A、B线之间是悬空的,容易受干扰。偏置电阻把A线拉高、B线拉低,确保空闲时总线处于逻辑1状态。

偏置电阻的接法:

  • 在主机端,A线接上拉电阻到5V,B线下拉电阻到GND
  • 阻值通常取470Ω ~ 1kΩ
  • 如果总线上设备多,偏置电阻只需要加一处
我的习惯:只要总线长度超过30米,我就在主机端加偏置电阻。反正成本就几毛钱,但能省很多排查时间。

2.5 线缆选型与布线规范

线缆选型这事,很多人不重视。觉得只要是两根线就能跑RS-485。其实不然。

场景 推荐线缆 说明
短距离(< 50m) 普通双绞线 如CAT5网线中的一对
中距离(50-500m) 屏蔽双绞线 如Belden 9841
长距离(> 500m) 专用RS-485电缆 阻抗120Ω,低电容
强干扰环境 双屏蔽双绞线 如铠装电缆

布线规范方面,我总结了几条铁律:

  1. 远离强电:信号线和动力线至少保持30cm距离
  2. 避免平行走线:如果必须交叉,尽量垂直交叉
  3. 使用双绞线:双绞能有效抑制共模干扰
  4. 总线拓扑:必须是直线型,不能有星型或环形分支
  5. 分支长度:分支线越短越好,最好不超过1米

你想想看,如果布线不规范,再好的设备也白搭。我见过一个项目,为了省事,把RS-485线和220V电源线绑在一起走,结果通信时好时坏,最后全部重铺线才解决。

2.6 接地与屏蔽技术

接地是门大学问。接不好,反而引入干扰。

2.6.1 屏蔽层接地

屏蔽电缆的屏蔽层,应该单端接地还是双端接地?这个问题争论很多。我的经验是:

  • 低频信号(< 100kHz):单端接地,通常在主机端接地
  • 高频信号(> 100kHz):双端接地,但要注意地环路

RS-485通常工作在低频,所以我习惯单端接地。屏蔽层在主机端接大地,从站端悬空。这样能避免地环路电流。

2.6.2 信号地(GND)连接

很多人只接A、B两根线,不接GND。这在短距离时可能没问题,但长距离时容易出问题。因为设备之间的地电位可能不同,导致共模电压超出RS-485芯片的承受范围(-7V ~ +12V)。

我的建议:

  • 距离 < 100米:可以不接GND,但建议接
  • 距离 > 100米:必须接GND,或者使用隔离器
  • 如果设备之间有电位差:使用隔离型RS-485模块
避坑指南:我曾经在一个化工厂调试,总线上挂了8台仪表,距离200多米。没接GND,结果通信时断时续。用万用表一量,A、B线之间的共模电压有8V!后来加了隔离器,问题解决。所以,别省那根GND线。

2.7 本章知识体系

下面这张图,是我自己总结的物理层调试思路,你照着这个流程走,基本不会出大问题。

RS-485物理层调试知识体系 选择通信标准 RS-232(点对点) RS-422(全双工) RS-485(半双工) 终端电阻(120Ω) 偏置电阻(470Ω-1kΩ) 上下拉电阻 线缆选型 布线规范 拓扑结构 接地与屏蔽技术(单端/双端接地)

这张图把物理层调试的五个关键环节串起来了。从选择标准开始,到电阻配置、线缆选型、布线规范,最后是接地屏蔽。每一步都不能马虎。

调试口诀:先选标准再布线,终端偏置不能少。屏蔽接地要单端,双绞线缆抗干扰。

好了,物理层的基础就讲到这里。下一章咱们聊聊数据链路层,看看数据是怎么在总线上跑起来的。记住,物理层是地基,地基不牢,上面再好的协议也白搭。

专注资料整理