网站地图
技术支持

RS-485 与 Modbus 图解:位移传感器如何接入工业总线

发布时间:2026-08-05 点击次数:0

RS-485 与 Modbus 图解:位移传感器如何接入工业总线

差分多点 · 终端与偏置 · 半双工/全双工 · 主从轮询 · RTU 帧 · 寄存器模型

易测电气 · 工业通信与传感器接口专题

在工业自动化里,RS-485Modbus 是一对出镜率最高的组合:前者解决"信号怎么稳稳传远"的物理层问题,后者解决"设备之间说什么、怎么问答"的应用协议问题。对做位移检测、做设备集成的工程师来说,把位移传感器通过 RS-485 + Modbus RTU 接到 PLC 上是日常操作。本文从现场视角,把 RS-485 的差分、多点、终端,与 Modbus 的主从轮询、报文帧、寄存器模型一次讲清,并说明传感器通常怎么挂到这条总线上。

01 RS-485 是什么:把信号传得又远又稳

RS-485(TIA/EIA-485)是一种差分、多点的串行通信物理层标准。它不规定"传什么内容",只负责"如何在电气上可靠地传输比特"。和常被一起提到的 RS-232 相比,RS-485 用差分信号取代单端信号,因此抗干扰能力强、传输距离远(可达约 1200 米),还能在一条总线上挂接几十个节点。

图1:RS-232 单端点对点 与 RS-485 差分多点总线 对比 RS-232 设备A 设备B GND 单端 · 点对点 · ≤15m RS-485 A B 差分 · 多点总线 · ≤1200m
图 1 RS-232 vs RS-485

RS-232 是单端电平、点对点,距离短、抗扰差,多用于早期串口设备之间一对一连接;RS-485 则用 A、B 两根线差分传输,支持多点总线,是工业现场远距离、多设备组网的首选。正因如此,RS-485 成了工业通信里出镜率最高的物理层之一——位移传感器配 RS-485 接口后,也能一根总线挂到 PLC 上,省掉每台设备单独拉一根线的麻烦。

现场经验:传感器若安装在变频器、伺服电机附近,粉尘油污和电磁干扰都很重,正是 RS-485 差分��扰能力最能派上用场的地方,比 RS-232 稳妥得多。

02 差分电平:抗干扰的根本

RS-485 的核心是差分信号:数据不是用单根线对地的电压表示,而是用 A、B 两线之间的电压差来表示 0 和 1。

图2:RS-485 差分电平,A 线与 B 线反向,差值 V(A)-V(B) 决定逻辑 1 或 0 A 线 B 线 V(A)−V(B) 逻辑 1 (> +200mV) 逻辑 0 (< −200mV) 噪声容限:A、B 同时 受扰,差值不变
图 2 RS-485 差分电平(A − B)

当外界噪声同时耦合到紧靠在一起的 A、B 两线上时(共模干扰),接收端只看两线之差,噪声被自然抵消。一般约定 V(A)−V(B) 大于 +200mV 为一个逻辑态、小于 −200mV 为另一态,中间留有较宽的噪声容限。这正是 RS-485 能在电机、变频器遍布的车间里跑出上千米的物理基础。对带 RS-485 输出的位移传感器来说,这意味着即便测头离控制柜有上百米,位置数据依然能稳定回传。

03 多点总线:终端电阻与偏置

RS-485 采用总线型拓扑:所有节点挂在同一对 A/B 主干线上。为了保证信号质量,有两个电阻配置必须重视——终端电阻与偏置电阻。

图3:RS-485 总线两端接 120 欧姆终端电阻,首端加偏置电阻确定空闲电平 A B 偏置 上拉Vcc/下拉GND 120Ω 终端 两端接 120Ω 终端匹配阻抗;偏置电阻确定空闲电平
图 3 RS-485 多点总线:终端与偏置

总线两端各接一个 120Ω 终端电阻,用来匹配双绞线特征阻抗、吸收末端反射,这点和 CAN 一致。此外,由于 RS-485 收发器在空闲(无人发送)时总线处于高阻态,电平不确定,容易被噪声误触发,因此还需要一组偏置电阻(上拉到电源、下拉到地),把空闲电平拉到一个确定的"隐性"状态。终端和偏置没配好,是 RS-485 现场最常见的通信不稳来源。把多台位移传感器挂到同一条总线时,务必只在最远两端接终端电阻,中间节点不接,否则总线负载过重会拖垮整条链路。

04 半双工与全双工:2 线还是 4 线

RS-485 有两种接线方式,对应不同的收发模式:

图4:半双工 2 线(A/B,DE/RE 切换方向)与全双工 4 线(A/B/Y/Z,同时收发)对比 半双工(2 线) A B DE/RE 同一时刻 发或收 全双工(4 线) A B Y Z 同时收发 · 无需切换
图 4 半双工(2线) vs 全双工(4线)

最常见的是 2 线半双工:收发共用同一对 A/B 线,同一时刻只能发或只能收,因此需要用收发器的方向控制脚(DE/RE)来切换收发方向——切换时机没控制好就会"撞车"或丢数据。4 线全双工则收、发各用一对线,可以同时收发、无需切换方向,但布线更多。工业现场大多采用 2 线半双工,配合 Modbus 这类"一问一答"的协议天然契合。市面上带 RS-485/Modbus 的位移传感器,几乎都是 2 线半双工,接线最省、和 PLC 的 Modbus 主站对接也最成熟。

05 Modbus 登场:工业界的"普通话"

如果说 RS-485 解决了"怎么传",那 Modbus 解决的就是"说什么"。Modbus 是一种简单、开放的应用层协议,由 Modicon 于 1979 年提出,至今仍是工业设备互通的事实标准。它常见两种形态:跑在 RS-485/串口上的 Modbus RTU,以及跑在以太网上的 Modbus TCP。

图5:Modbus 主从结构,主站(PLC)轮询从站 1~247,从站被点名才应答 主站 PLC / 上位机 1 2 3 从站地址 1~247(被点名才应答) 查询 应答
图 5 Modbus 主从轮询机制

Modbus 是严格的主从结构:总线上只有一个主站(如 PLC 或上位机)主动发起通信,每个从站有唯一地址(1~247),平时绝不主动说话,只有被主站"点名"时才应答。这种"一问一答、轮流询问"的机制,配合 RS-485 半双工总线,从根本上避免了冲突——简单、确定、好排查,正是工业场景最看重的。把多台位移传感器挂到总线上时,每台分配一个不重复的从站地址(如 1 号磁致伸缩、2 号拉绳、3 号 LVDT),PLC 按地址轮询即可,互不打架。

06 Modbus RTU 报文帧

Modbus RTU 的一帧报文结构非常精简:

图6:Modbus RTU 帧 = 从站地址(1字节) + 功能码(1字节) + 数据(N字节) + CRC16(2字节),帧间静默≥3.5字符时间 从站地址 1 字节 功能码 1 字节 数据 N 字节 CRC16 2 字节 帧间静默 ≥ 3.5 字符时间(区分帧边界)
图 6 Modbus RTU 报文帧格式

一帧由从站地址(1 字节)、功能码(1 字节)、数据(N 字节)和 CRC16 校验(2 字节)组成。RTU 模式靠总线上至少 3.5 个字符时间的静默间隔来区分一帧的起止,因此对时序较敏感。功能码告诉从站"要做什么"(读还是写、读哪类数据),CRC 则保证数据没有在传输中出错。相比之下 Modbus TCP 把地址和校验交给了 TCP/IP,帧里改用 MBAP 报文头、不再需要 CRC。

落到传感器:PLC 用功能码 03 读某台位移传感器的保持寄存器(如 40001),返回的就是当前位置值(常见按 0.01 mm 或 0.1 mm 缩放);读取间隔、字节序(大端/小端)要和设备说明书写的一致,否则数值会错位。

07 数据模型与常用功能码

Modbus 把设备里的数据抽象成四类"寄存器",再用功能码去读写它们:

图7:Modbus 四类寄存器,按 位/字 × 只读/读写 划分:离散输入、线圈、输入寄存器、保持寄存器 只读 ▸ ▸ 读写 位 (bit) 字 (word) 离散输入 Discrete Inputs 线圈 Coils 输入寄存器 Input Registers 保持寄存器 Holding Registers
图 7 Modbus 数据模型:四类寄存器

简单记:按"位 / 字"和"只读 / 读写"两个维度,就分出了线圈(可读写的位,如继电器开关)、离散输入(只读的位,如开关量输入)、输入寄存器(只读的字,如传感器测量值)、保持寄存器(可读写的字,如设定参数)。日常用得最多的几个功能码如下表:

功能码名称作用对象操作
01读线圈线圈读多个开关量输出状态
02读离散输入离散输入读多个开关量输入状态
03读保持寄存器保持寄存器读多个可读写寄存器(最常用)
04读输入寄存器输入寄存器读多个只读测量值
05写单个线圈线圈控制单个开关量输出
06写单个寄存器保持寄存器写一个寄存器
0F / 10写多个线圈 / 寄存器线圈 / 保持寄存器批量写入

对位移传感器而言,位置测量值通常放在输入寄存器(功能码 04)或保持寄存器(功能码 03)里,具体看设备是否允许主站回写标定参数;报警、到位等开关状态则多用离散输入(02)或线圈(01/05)。选型时务必向厂家要一份寄存器映射表,把"哪个地址是什么量、什么单位、什么字节序"写清楚,PLC 程序才好对接。

08 选型与设计要点

落到现场接线与板级设计,下面几条直接决定 RS-485 + Modbus 链路是否稳定可靠:

设计要点说明
终端电阻只在总线"两端"各接一个 120Ω;中间节点不要接,否则负载过重、信号衰减。
偏置电阻总线需一组失效保护偏置电阻,确保空闲时电平确定,避免噪声误触发。
方向控制半双工收发器的 DE/RE 切换要在发送前置高、发送完及时拉低,留足建立/释放时间。
手拉手布线节点应沿总线"手拉手"串接,避免星型和长支线(stub),减少反射。
共地与隔离长距离/不同设备间地电位差大时,用隔离 RS-485(隔离收发器 + 隔离电源)防止环流。
Modbus 参数主从两端波特率、数据位、校验、停止位必须一致;从站地址不能冲突。
超时与重试主站要设合理的应答超时与重试次数,应对偶发干扰,避免一帧出错就卡死。
传感器选型清单(向厂家确认这几项即可顺利接入):① 接口类型 RS-485/Modbus RTU;② 波特率与校验(常见 9600/19200,偶校验或无校验);③ 从站地址范围与默认地址;④ 寄存器映射表与字节序;⑤ 是否隔离、供电电压。

09 结语

一对双绞线、两个 120Ω 电阻、一问一答的轮询——RS-485 与 Modbus 用最朴素的方式,解决了工业现场"远距离、多设备、强干扰、要可靠"的核心诉求,几十年来支撑着无数自动化系统稳定运行。对做位移检测、做设备集成的工程师而言,读懂差分与终端偏置、读懂半双工方向切换、读懂 Modbus 的主从轮询与寄存器模型,就能在传感器接入 PLC 时又快又稳地定位问题。

10 常见问题(FAQ)

RS-485 和 Modbus 是什么关系?

RS-485 是物理层标准(TIA/EIA-485),只负责在电气上可靠地传输比特;Modbus 是应用层协议,规定设备之间说什么、怎么问答。两者常搭配使用:RS-485 解决怎么传,Modbus 解决说什么,最常见的组合是 Modbus RTU 跑在 RS-485 总线上。

RS-485 最远能传多远?

标准 RS-485 在较低波特率下传输距离可达约 1200 米;速率越高距离越短。实际工程中还要受线缆质量、终端电阻、环境干扰影响。

Modbus RTU 和 Modbus TCP 有什么区别?

Modbus RTU 跑在串口或 RS-485 上,帧尾用 CRC16 校验,靠 3.5 个字符时间的静默间隔来定帧边界;Modbus TCP 跑在以太网上,用 MBAP 报文头替代地址与校验,不再需要 CRC。两者功能码与寄存器模型一致。

位移传感器如何通过 Modbus 接入 PLC?

传感器作为从站,分配一个不重复的地址(1~247);PLC 作为主站,用功能码 03 读取传感器保持寄存器中的当前位置值,注意单位缩放与字节序。多台传感器可手拉手挂在同一总线,由 PLC 轮流轮询。

RS-485 总线为什么要在两端接 120Ω 终端电阻?

120Ω 用来匹配双绞线特征阻抗、吸收信号在末端的反射,避免波形畸变。只在总线最远两端各接一个;中间节点不接,否则加重负载、拖垮整条链路。

Modbus 从站地址范围是多少?

合法从站地址为 1~247(0 保留作广播,248~255 保留)。同一总线上的从站地址必须唯一,主站靠地址点名对应的���站。

易测电气的磁致伸缩、拉绳、LVDT、角度及本安防爆等位移传感器,多数提供 RS-485 / Modbus RTU 接口,可方便接入现有 PLC 与 SCADA 系统。需要具体型号的寄存器映射表、接线图或选型建议,欢迎联系我们。

—— 易测电气 · 工业通信与传感器接口专题 ——

版权所有:深圳市易测电气有限公司 备案号:粤ICP备19052563号 网安粤公网安备 44030602003587号 技术支持:星海互联