Modbus RTU 工具

生成 RTU 报文、解析消息、校验 CRC 和转换寄存器数据。连接串口设备需使用支持 Web Serial 的桌面浏览器。

选择当前任务

报文工具用于生成、解析及 CRC 校验;串口调试工具用于设备通信;数据转换器用于数值和字节序转换。

RTU 请求生成

常用

生成工具中列出的常用读写功能请求。

自动计算 CRC
寄存器数据类型
报文预览

RTU 报文解析

常用

检查完整 RTU 报文并验证 CRC。

报文字段
CRC 校验
寄存器数值

串口调试

通过浏览器中已授权的串口收发数据。

Web Serial 连接
接收数据
曲线图

十六进制与十进制转换

转换整数与 IEEE 754 浮点数,比较设备使用的字节顺序。

十六进制与十进制
IEEE 754 浮点数
ABCD / DCBA / BADC / CDAB
16、32、64 位类型
即时结果
复制数值
一键复制

RTU CRC 校验

在 RTU 工具内计算或验证 CRC-16/MODBUS。

CRC-16/MODBUS
十六进制报文输入
低字节在前

工具能力

在浏览器中处理报文
常用 Modbus 读写功能
整数与浮点数值
报文字段与校验结果
兼容桌面浏览器的串口访问
多种界面语言
复制生成的报文和数值
浏览器内计算

常见任务

检查设备通信

比较 PLC、驱动器、仪表或传感器的请求与响应。

示例
  • 验证读取请求
  • 核对寄存器数值
  • 分析异常响应

设备接入开发

按设备规范核对示例报文与数据格式。

示例
  • 检查报文字段
  • 确认字节序
  • 比较已知数值

排查故障

在已授权的设备测试中捕获并比较收发报文。

示例
  • 检查收到的报文
  • 观察数值变化
  • 导出采集结果

从一条报文开始

无需连接设备即可生成或解析报文。串口测试请使用兼容的桌面浏览器,并授权正确端口。

RTU 与寄存器基础

什么是 Modbus RTU?

Modbus RTU 是串行链路上的二进制报文格式,用于传输 Modbus 请求和响应,常见于 RS485 或 RS232。

要点

  • 二进制报文字节
  • CRC-16/MODBUS 差错校验
  • 串行链路上的设备地址
  • 需匹配通信时序和串口参数
RTU 报文结构

报文由设备地址、功能码、数据和 CRC 构成。

[设备地址][功能码][数据][CRC]
  • 设备地址:1 字节
  • 功能码:1 字节
  • 数据:字段由功能码决定
  • CRC:2 字节,低字节先发送
常用功能码
读取功能
  • 01:读取线圈
  • 02:读取离散输入
  • 03:读取保持寄存器
  • 04:读取输入寄存器
写入功能(十进制)
  • 05:写单个线圈
  • 06:写单个寄存器
  • 15(0x0F):写多个线圈
  • 16(0x10):写多个寄存器
CRC-16/MODBUS

CRC 校验设备地址、功能码和数据字节,可检测多种传输错误,但不能认证发送者或证明操作安全。

参数

  • 16 位差错校验
  • 反向多项式:0xA001
  • 初始值:0xFFFF
  • CRC 低字节先发送
数据类型与字节序

一个寄存器保存 16 位,如何将一个或多个寄存器解释为数值,由设备寄存器表规定。

  • 有符号整数使用补码:FFFF 按 INT16 为 -1,按 UINT16 为 65535。转换器对短 HEX 左侧补零,因此 FF 按 INT16 为 255。
  • IEEE 754 FLOAT32 为 32 位,FLOAT64 为 64 位。FLOAT32 在 ABCD 顺序下的 3F 80 00 00 表示 1。
  • 对于 A B C D 四字节:ABCD 保持顺序,DCBA 全部反转,BADC 在每个 16 位字内交换字节,CDAB 交换两个字。
  • 16、32、64 位数值分别占 1、2、4 个寄存器,字节和寄存器顺序以设备规范为准。
  • 转换器可精确处理所选范围内的 64 位整数,UINT64 范围为 0 至 18446744073709551615。
  • HEX 输入支持十六进制字符、可选的 0x 前缀及字节间空白。非法字符会报错,不会被静默删除。
  • 整数必须使用整数字符输入;FLOAT32、FLOAT64 还支持小数和科学计数法。
  • 用已知数值确认类型及字节序,结果看起来合理并不足以证明设置正确。
用于设备前,请按设备手册核对生成的报文和解析值。