工业报文与注册工具 全部工具

Modbus-RTU 报文解析器

解析结果

Modbus RTU报文结构
用途设备地址功能码数据CRC校验
长度(字节)11可变(0-252)2
描述从机有唯一的地址,范围1-247.地址0是广播地址,从机不会应答主机要求从机执行的操作类型包含了命令的具体参数,格式和长度却决于功能码检查数据在传输过程中是否有错误
常用功能码详解
功能码名称数据类型作用
0x01读线圈寄存器位取得一组逻辑线圈的当前状态(ON/OFF)
0x02读离散输入寄存器位取得一组开关输入的当前状态(ON/OFF)
0x03读保持寄存器整型、浮点型、字符型在一个或多个保持寄存器中取得当前的二进制值
0x04读输入寄存器整型、浮点型在一个或多个输入寄存器中取得当前的二进制值
0x05写单个线圈寄存器位强置一个逻辑线圈的通断状态
0x06写单个保持寄存器整型、浮点型、字符型把具体二进制值装入一个保持寄存器
0x0F写多个线圈寄存器位强置一串连续逻辑线圈的通断
0x10写多个保持寄存器整型、浮点型、字符型把具体的二进制值装入一串连续的保持寄存器
工具介绍

Modbus-RTU 报文解析工具把十六进制 RTU 帧按字节拆分为从站地址、功能码、数据域与 CRC16 校验,并给出常用功能码的寄存器地址、数量或数值含义。

使用方法
  1. 从调试工具、网关或抓包软件复制十六进制报文,去掉无关前缀后粘贴到输入框。
  2. 确认字节间分隔符与大小写,必要时选择帧类型或波特率等附加参数。
  3. 点「解析」,在结果区查看地址域、功能码、数据域与校验值的分段表格。
  4. 对照下方报文结构说明核对每一段含义;校验失败时先检查是否多复制了空格或回车。
计算公式
RTU 帧:| 从站地址(1B) | 功能码(1B) | 数据域(nB) | CRC16(2B,低字节在前) |
读保持寄存器(03) 请求:地址(2B) + 寄存器数量(2B);响应:字节数(1B) + 数据(2B×N)
CRC16 初值 0xFFFF,多项式 0xA001,按字节低位先处理

RTU 依靠 3.5 个字符的静默间隔分帧,抓包时请确认一帧没有被拆开或粘连。

常用场景
现场联调
把主站下发的报文粘进来,确认地址、功能码与寄存器范围是否正确。
故障排查
用校验结果判断是报文传输错误还是终端返回了异常响应。
协议学习
对照结构表逐字节理解规约帧格式。
常见问题
功能码高位带 0x80 是什么意思?

表示异常响应,紧跟的一个字节是异常码(如 02 为非法数据地址)。

CRC 校验不通过?

检查是否多复制了帧间隔、空格或把 CRC 高低字节顺序弄反。

寄存器数值怎么换算?

按大端 16 位无符号数解析;有符号或浮点数需按设备点表再做转换。

以上内容仅用于说明本工具的使用方法与计算口径;财务、税务、贷款等结果均为估算,实际以官方或合同口径为准。