avatar

码农随笔

用代码书写人生

  • 首页
  • C#
  • Java
  • 物联网
  • 架构
  • 运维
  • 杂谈
  • 关于
主页 Modbus协议
文章

Modbus协议

发表于 2026-02-3 更新于 2026-02- 3
作者 码农
2~2 分钟 阅读

工业自动化控制一般用PLC可编程逻辑控制器,配合DTU(数据传输单元)实现远程数据采集和控制。

Modbus协议是工业自动化控制中常用协议,PLC使用RS232/RS485串口通信用ModbusRTU协议(支持CRC校验),如果没有多余的串口可以使用TCP通信用ModbusTCP协议,TCP协议本身能保证数据的可靠性,不需要CRC校验。

Modbus协议核心是功能码+数据,它定义了三种PDU(协议数据单元):请求PDU、响应PDU、异常响应PDU;数据编码使用最高有效字节在低地址存储的方式表示地址和数据项,比如发送16位数据0x1234 先发送0x12然后是0x34,当然有些嵌入式开发工程师比较喜欢低字节在前这种字节序,具体数据格式需要参照文档说明。

对于ModbusRTU需要CRC16校验,即2个字节的校验数据,字节序是低字节在前,例如我们从地址0x0000读取0x0020个寄存器,十六进制指令是 0103000000204412,010300000020计算出的CRC是0x1244,低字节在前是4412。

可以访问 https://www.modbus.org/modbus-specifications 查看文档(英文)

或查阅相关国标(版权问题需要搜索标准号从网络下载):

GB/T 19582.1-2008 基于Modbus协议的工业自动化网络规范第1部分:Modbus应用协议

GB/T 19582.2-2008 基于Modbus协议的工业自动化网络规范第2部分:Modbus协议在串行连路上的实现指南

GB/T 19582.3-2008 基于Modbus协议的工业自动化网络规范第3部分:Modbus协议在TCP/IP上的实现指南

物联网
许可协议:  CC BY 4.0
分享

相关文章

2月 3, 2026

Modbus协议

工业自动化控制一般用PLC可编程逻辑控制器,配合DTU(数据传输单元)实现远程数据采集和控制。 Modbus协议是工业自动化控制中常用协议,PLC使用RS232/RS485串口通信用ModbusRTU协议(支持CRC校验),如果没有多余的串口可以使用TCP通信用ModbusTCP协议,TCP协议本身

12月 29, 2024

移动OneNET新平台接入指南

介绍移动新平台接入需要关注的几个方面

下一篇

移动OneNET新平台接入指南

上一篇

最近更新

  • Modbus协议
  • 移动OneNET新平台接入指南

热门标签

目录

©2026 码农随笔. 保留部分权利。

使用 Halo 主题 Chirpy