深圳计为自动化技术有限公司
Shenzhen Jiwei Automations Ltd.
![]()
/ 关于计为/
自2019年起号开始,计为仪表公众号坚持“内容为王、服务至上”。
定期分享物位测量的核心干货:从原理解析、应用案例,到选型维护指导,既有通俗易懂的基础百科,也有深度剖析的研发思路和成功实践。
覆盖化工、电力、环保、食品、制药、建材等多个行业的技术难点,助力每一位技术人快速成长。
喜欢就请点赞+转发,让更多同行一起来交流!
一
一场跨越半世纪的工业语言革命
在工业自动化领域,通信协议就像语言一样重要。 1979 年,Modicon 公司(现为施耐德电气 Schneider Electric)推出了 Modbus 协议,旨在解决不同设备之间“无法交流”的问题。
彼时,各厂商协议封闭、互不兼容。Modbus 的诞生,首次实现了工业设备间的标准化对话机制。
它的三大优势让它迅速流行至今:
开放免费—— 无需授权或许可;
结构简单—— 容易在硬件和软件上实现;
兼容性强—— 支持多品牌、多代际、多平台设备。
四十多年过去,Modbus 已不仅仅是通信协议,更是工业系统间的“桥梁语言”,从 PLC 到智能仪表、从 DCS 到云平台,几乎无处不在。
![]()
二
核心机制
Modbus 采用严格的 主从(Master-Slave)或客户端/服务器(Client-Server)模型。这一架构保证了通信的可预测性与控制性,是工业领域“
确定性通信”的典型代表。
1、主站(Master / Client)
主动发起通信请求(如“读寄存器”“写线圈”),主导通信节奏。常见为上位机、PLC 主机或 SCADA 系统。
2、从站(Slave / Server)
被动响应主站请求,不主动发言。常见为传感器、执行器、变频器、仪表等。通信关系是“一主多从”,一个网络中只允许存在一个主站,多达 247 个从站(地址范围 1~247)。
广播机制
地址 0 保留为“广播地址”,主站向地址 0 发送命令时,所有从站都会执行,但不会回复。这种机制常用于批量控制(如多设备同时复位)。
由控制中心统一发声,保证现场通信的确定性与安全性。
![]()
三
四大存储区与寄存器映射
Modbus 将设备数据抽象为四种类型的寄存器区,从逻辑上对应“开关量/模拟量”与“读/写权限”两维度分类。
存储区类型
数据类型
读写属性
地址示例
应用示例
线圈 (Coils)
开关量
读写
00001–09999
输出控制,如灯/阀开关
离散输入 (Discrete Inputs)
开关量
只读
10001–19999
传感器状态、限位信号
输入寄存器 (Input Registers)
模拟量
只读
30001–39999
温度、压力、转速等测量值
保持寄存器 (Holding Registers)
模拟量
读写
40001–49999
设定值、目标值、参数写入
相对地址与绝对地址
相对地址:协议使用(起始于 0),节省传输带宽;
绝对地址:供工程师配置使用(起始于 1),更直观易懂。
这种设计让上位机和下位机能以统一的结构模型映射数据,是实现跨品牌互操作的关键。
四
三大通信形态
1、 Modbus RTU
物理层:基于 RS-485(半双工)或 RS-232
波特率:常见为 9600 / 19200 / 38400 bps,主从必须一致
校验格式:
偶校验 + 1 停止位
奇校验 + 1 停止位
无校验 + 2 停止位
帧结构固定,无起止符,以 CRC-16 校验结尾。CRC 校验字节顺序为“小端序”(低字节在前,高字节在后)。
优势:高抗干扰能力;帧结构紧凑;传输距离可达 1200 米;支持多设备挂载(典型 32 台)。
适用场景:生产线设备、变频器控制、现场仪表通讯。
2、 Modbus ASCII
传输形式:ASCII 字符(0–9, A–F)
帧标识:以 “:” 开始,以 CRLF 结束
校验机制:LRC(纵向冗余校验)
LRC 校验通过累加和取反加一计算。由于字符化传输,调试直观,但帧长度是 RTU 的两倍,传输效率较低。
应用场景:低速通信、设备调试、教学实验。
3、 Modbus TCP
基于 TCP/IP 协议栈,使用端口 502。结构在 Modbus 应用层外增加 MBAP 报文头(7 字节):
字段
长度
含义
Transaction ID
2 字节
区分请求与响应对应关系
Protocol ID
2 字节
固定为 0(Modbus 协议)
Length
2 字节
后续数据长度
Unit ID
1 字节
设备地址(兼容 RTU 从站地址)
Modbus TCP 消除了传统串口的物理限制,实现:
高速通信(10/100 Mbps)
多客户端并发访问
跨网段、跨系统通信
它已成为连接 PLC、SCADA、云平台 的工业主流标准之一。
五
数据可靠性
在 Modbus 通讯中,为了确保数据在传输过程中的完整性与可靠性,系统采用了两种不同的校验方式:CRC(Cyclic Redundancy Check,循环冗余校验)和 LRC(Longitudinal Redundancy Check,纵向冗余校验)。这两种校验方式分别对应 Modbus RTU 模式和 ASCII 模式,能够在高噪声的工业现场环境中有效保证数据传输的稳定与正确。
校验方式:CRC-16(Modbus RTU)
在 RTU 模式下,系统使用 CRC 校验。CRC 校验基于多项式除法算法,通常采用生成多项式 0xA001。其计算范围从从站地址开始,直至数据域结束,不包含起始位与 CRC 本身。计算结果为 2 个字节,其中低字节在前,高字节在后(Little-Endian 格式)。CRC 的本质是通过多项式余数检测传输误码,其错误检测能力远高于简单的奇偶校验,能够有效识别单点错误和突发位错误,保证通讯的可靠性。
原理说明:
CRC 校验基于二进制多项式除法算法,用于检测通信过程中可能出现的数据传输错误。其生成多项式为0x8005,反射形式为0xA001。该算法能够通过多项式余数对数据帧进行检验,错误检测能力明显优于奇偶校验,可有效识别单点错误及连续位错误,从而显著提升通信的可靠性。
计算范围:
从从站地址(Address)到数据域(Data)的全部字节,即不包含起始位、停止位以及 CRC 校验码本身。
初始值与输出:
初始寄存器值设定为0xFFFF。计算结束后得到 16 位结果(2 字节),按低字节在前、高字节在后(Little-Endian 格式)发送。
典型算法步骤(概述):
将 CRC 寄存器置为 0xFFFF;
逐字节(从从站地址开始)对要校验的数据与 CRC 寄存器进行异或;
对每个字节执行 8 次循环:
- 若 CRC 寄存器最低位为 1,则右移一位后与多项式 0xA001 进行异或;
- 否则直接右移一位;对后续每个字节重复上述操作,直至所有数据处理完毕;
最终输出 CRC 校验码,低字节在前,高字节在后。
C 语言示例代码:
![]()
使用提示:
在上传或接收数据时,务必保证发送顺序与接收端保持一致(低字节先发,高字节后发)。建议在调试过程中保留故障数据帧,以便后续进行 CRC 校验比对与通信异常排查。
![]()
校验方式:LRC(Longitudinal Redundancy Check)
原理说明:
LRC(纵向冗余校验)用于Modbus ASCII 模式下的数据校验。其算法思想是通过对整个数据块进行纵向冗余检测,以发现数据帧在传输过程中可能出现的整体性错误。
计算方法:
对所有数据字节逐一求和,仅保留结果的低 8 位;随后对该值执行按位取反并加 1(即取其二补码),得到最终的1 字节校验值。
输出格式:
该校验字节会转换为两位 ASCII 字符,并与数据帧一同发送,用于接收端的校验比对。
特点说明:
与 CRC 相比,LRC 实现简单,适用于 ASCII 通信模式下的低速或高可靠性数据传输场景,能有效检测通信帧的累积性错误。
典型算法示例:
![]()
六
典型应用场景
应用领域
典型设备
通信方式
特点
智能制造
PLC、机器人、HMI
Modbus TCP
远程控制与数据采集
能源管理
智能电表、温控器
RTU / TCP
能耗监控、负载优化
楼宇自控
空调、新风、照明
RTU
BMS 系统集成
水处理
流量计、泵站
RTU
稳定高抗干扰
边缘计算
工业网关、采集模块
TCP / MQTT
数据上云、远程监控
随着物联网的普及,越来越多的系统采用 Modbus + MQTT + OPC UA 的混合架构,实现云端可视化与预测性维护。
![]()
七
未来趋势
1、Secure Modbus —— 加密通信
引入 TLS 层和身份认证,防止监听与伪造,提升工业安全性。
2、Modbus over MQTT —— 云端桥接
通过 MQTT 网关将 Modbus 数据封装上传,实现云端实时监控。
3、 智能网关与边缘AI
新一代网关不仅转发协议,还可在边缘侧完成数据预处理、AI 推理、告警上报。
4、多协议融合
与 OPC UA、REST API、Profinet 等融合,实现从 OT 到 IT 的全栈互联。
八
结语
“没有 Modbus,工业世界就像每个厂牌说不同方言的地球。”
Modbus 以简单、稳定、兼容的设计理念,支撑了数十年的工业通信体系。
如今,它正在通过云化、安全化、智能化升级,继续成为智能制造与工业互联网的“通用语言”。
无论工业协议如何演进,Modbus 的确定性逻辑与开放精神,仍将是工业通信体系最宝贵的遗产。
想了解更多工业通信与自动化技术?
关注【计为仪表】,一起探索智能制造的下一公里。如果觉得本文对您有帮助,欢迎点个赞,感谢!
PROFILE
计为技术工程师
陈工
![]()
陈工,是计为自动化资深工程师,长期专注于液位测量设备的现场应用与技术改进,具备丰富的工程实践经验。曾多次参与石化、电力等行业项目,对雷达液位计、磁翻板液位计等仪表的选型、安装与故障分析有深入研究,尤其擅长解决密封、振动、温差等极端工况下的安装问题,帮助客户提升系统稳定性与测量可靠性。
![]()
![]()
![]()
计为专注于物位测量仪表的研发与生产,提供可靠的自动化解决方案。拥有50+项国家专利,荣获国家高新技术企业认证。
封面丨小黄
文字丨陈工
图片丨阿刀
审核丨小田
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.