news 2026/5/8 16:51:35

一文搞懂Modbus 含完整原理、全功能码详解、五大工程落地及OTA升级案例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一文搞懂Modbus 含完整原理、全功能码详解、五大工程落地及OTA升级案例

文章目录

  • 前言
  • 问题:
  • 一、Modbus 整体核心基础原理
    • 1.1 通信架构
    • 1.2 四类核心寄存器(物理量唯一底层载体)
    • 1.3 Modbus RTU 标准报文结构
  • 二、Modbus RTU 官方标准时隙规定(V1.02 标准版)
    • 2.1 基础参数定义
    • 2.2 核心时隙规则
    • 2.3 全波特率时隙参数对照表
  • 三、拓展功能码详细定义、原理、帧格式、报文示例与工程适用场景
    • 3.1 0x07 读异常状态(仅串口RTU/ASCII,TCP不支持)
      • 3.1.1 功能与原理
      • 3.1.2 适用场合
      • 3.1.3 标准帧格式
      • 3.1.4 实战报文示例
      • 3.1.5 状态字节说明
    • 3.2 0x08 诊断功能(仅串口)
      • 3.2.1 功能与原理
      • 3.2.2 适用场合
      • 3.2.3 子功能码定义
      • 3.2.4 标准帧格式
      • 3.2.5 实战报文示例(回环测试)
    • 3.3 0x0C 读取通信事件日志(仅串口)
      • 3.3.1 功能与原理
      • 3.3.2 适用场合
      • 3.3.3 标准帧格式
      • 3.3.4 实战报文示例
    • 3.4 0x11 报告从站ID(仅串口)
      • 3.4.1 功能与原理
      • 3.4.2 适用场合
      • 3.4.3 标准帧格式
      • 3.4.4 实战报文示例
    • 3.5 0x14 / 0x15 读写文件记录
      • 3.5.1 功能与原理
      • 3.5.2 适用场合
      • 3.5.3 帧格式(0x14读文件)
      • 3.5.4 报文示例
    • 3.6 0x16 屏蔽写寄存器
      • 3.6.1 功能与原理
      • 3.6.2 适用场合
      • 3.6.3 标准帧格式
      • 3.6.4 实战示例
    • 3.7 0x17 读写多寄存器
      • 3.7.1 功能与原理
      • 3.7.2 适用场合
      • 3.7.3 标准帧格式
      • 3.7.4 实战报文示例
    • 3.8 0x2B MEI 扩展功能码
      • 3.8.1 功能与原理
      • 3.8.2 适用场合
      • 3.8.3 通用帧格式
      • 3.8.4 常用MEI类型
      • 3.8.5 OTA拓展报文示例(完整复用前文规范)
  • 四、五大完整工程落地案例(含完整报文、逐字解析、工作流程)
    • 案例1:温湿度变送器模拟量采集(0x04 读输入寄存器)
      • 场景说明
      • 通信完整流程
      • 请求报文
      • 响应报文
    • 案例2:电磁阀开关量控制与状态回读(0x05写单线圈+0x01读线圈)
      • 场景说明
      • 开阀控制请求报文(0x05)
      • 状态回读请求报文(0x01)
    • 案例3:变频器参数读写配置(0x03读保持寄存器+0x06写单寄存器)
      • 场景说明
      • 读取运行频率请求报文
      • 写入50Hz频率请求报文
    • 案例4:串口通信参数读取与批量配置
      • 场景说明
      • 寄存器映射定义
      • 读取串口参数请求报文
      • 读取响应报文
      • 批量修改串口参数(0x10 多寄存器写入)
    • 案例5:Modbus 0x2B MEI 完整固件OTA在线升级(分包传输+会话管理+收尾重启)
      • 5.1 OTA基础规范
      • 5.2 OTA专属子命令全集
      • 5.3 全流程标准报文与详解
      • 5.4 OTA核心约束与容错机制
  • 五、全文统一技术总结
  • 附录:Modbus 核心实用附表(工程速查)
    • 附录1:不同波特率下的典型时隙数值(实用对照表)
    • 附录2:寄存器与物理量极简口诀
    • 附录3:Modbus 功能码 + 寄存器类型 + 现实物理参数 一一对应表

前言

本文档整合 Modbus 全部核心技术知识点,包含通信原理、寄存器模型、RTU 官方时隙标准、基础+拓展全功能码释义、五大工业落地实战案例(模拟量采集、开关量控制、变频器参数配置、串口参数读写配置、0x2B MEI 固件OTA在线升级)。覆盖工业现场调试、开发、故障排查、设备远程升级全场景,可直接作为标准技术手册使用。

问题:

1、modbus功能码与实际参数怎么对应?
2、主站连续下发请求,从站处理不过来丢帧,怎么处理?

一、Modbus 整体核心基础原理

1.1 通信架构

Modbus 为标准主从一问一答通信架构,是工业自动化领域开源免费、应用最广泛的事实通用标准,1979年由 Modicon(现施耐德电气)发布。通信规则严格固定:仅主站(上位机/PLC/工控机)主动下发请求报文,从站(仪表、传感器、变频器、IO模块)不会主动上传任何数据,全程遵循「请求→应答」机制,无请求则无通信数据。

主流通信链路适配:Modbus RTU(RS485/RS232 串口)、Modbus TCP。其中 RTU 为工业现场最常用模式。

1.2 四类核心寄存器(物理量唯一底层载体)

Modbus 所有现场物理信号、设备控制指令、设备配置参数,全部依托四类固定寄存器存储,无额外自定义存储区域,四类寄存器属性、用途、对应物理场景完全固定:

  • 线圈 Coils(0区|1位、可读写):用于设备开关量输出控制,适配继电器通断、电磁阀开关、风机/水泵启停、阀门开关等硬件输出动作。

  • 离散输入 Discrete Inputs(1区|1位、只读):用于外部开关量信号采集,适配急停按钮、限位开关、光电传感器、接近开关、门禁干接点等外部输入信号。

  • 输入寄存器 Input Registers(3区|16位、只读):用于工业模拟量采集,适配温度、湿度、压力、流量、液位、电压、电流、功率、转速、介质浓度等连续变化的物理量。

  • 保持寄存器 Holding Registers(4区|16位、可读写):设备核心配置存储区,用于存放设备运行参数、阈值参数、变频频率、温控设定值、串口通信参数、设备校准参数等可自定义修改的配置数据。

1.3 Modbus RTU 标准报文结构

Modbus RTU 无固定帧头、帧尾标识,依靠总线时隙区分报文边界,完整 ADU(应用数据单元)结构:从站地址(1字节) + 功能码(1字节) + 数据域(N字节) + CRC16校验(2字节)

各字段作用:从站地址用于总线设备寻址、功能码定义通信行为、数据域存放读写地址/数量/设备数据、CRC16校验保证报文传输完整性,杜绝干扰导致的数据错误。

二、Modbus RTU 官方标准时隙规定(V1.02 标准版)

2.1 基础参数定义

Modbus 串口通信标准字符帧格式:1起始位 + 8数据位 + 1校验位 + 1停止位,单字符固定11bit

单字符传输时间公式:Tchar = 11 / 波特率 (s),所有时隙阈值均基于该参数计算。

2.2 核心时隙规则

  • T1.5 帧内间隔:同一帧报文内部,相邻两个字节的传输间隔必须小于1.5倍 Tchar。若超时,接收端判定当前帧异常、数据残缺,直接丢弃整帧数据。作用:保证单帧报文数据连续传输。

  • T3.5 帧间间隔:两帧独立报文之间,总线空闲时长必须大于3.5倍 Tchar。总线满足该空闲时间,代表上一帧传输彻底结束,下一帧为全新有效报文。作用:RTU 唯一帧边界判定标准,是串口通信不丢帧、不串帧的核心。

2.3 全波特率时隙参数对照表

波特率Tchar(ms)T1.5(ms)T3.5(ms)工程建议延时
96001.1461.724.01≥5ms
192000.5730.862.00≥2.5ms
1152000.0950.1430.333≥0.5ms

工程通用强制规则:波特率≥19200的高波特率场景,单片机、嵌入式设备定时器精度不足,统一固定参数:T1.5=750us,T3.5=1.75ms,规避帧粘连、误丢帧问题。

三、拓展功能码详细定义、原理、帧格式、报文示例与工程适用场景

常规 01/02/03/04/05/06/0F/10 为基础读写功能码,以下为工业设备进阶调试、诊断、升级专用拓展功能码,仅串口RTU/ASCII模式支持(绝大部分不兼容Modbus TCP),多用于设备运维、故障诊断、日志读取、固件升级、精准位控等高阶场景。本节对所有拓展功能码逐项完整拆解:原理、适用场合、标准帧结构、请求帧、响应帧、实战示例、异常应答。

3.1 0x07 读异常状态(仅串口RTU/ASCII,TCP不支持)

3.1.1 功能与原理

0x07 功能码用于快速读取从站1字节8位全局异常状态字,无需读取多个保持/输入寄存器。从站将设备电源异常、传感器故障、过温、通信异常等所有故障标志压缩在8个Bit位中,主站单帧即可完成设备健康巡检,报文短小、轮询速度极快。

3.1.2 适用场合

批量仪表巡检、分布式传感器组网、低成本从站设备故障筛查、无人值守设备在线状态监测,适合需要高频、快速判断设备是否故障的场景。

3.1.3 标准帧格式

请求帧:从站地址(1B) + 0x07(1B) + CRC(2B)

正常响应帧:从站地址(1B) + 0x07(1B) + 异常状态字节(1B) + CRC(2B)

异常响应帧:从站地址(1B) + 0x87(1B) + 异常码(1B) + CRC(2B)

3.1.4 实战报文示例

请求(读取地址01设备异常状态):01 07 94 0B

正常响应(无故障,状态0x00):01 07 00 25 08

异常响应(设备功能不支持):01 87 01 81 90,0x01代表非法功能码

3.1.5 状态字节说明

Bit0Bit7由设备厂商自定义,通用规范:Bit0=传感器故障、Bit1=电源欠压、Bit2=过温故障、Bit3=通信异常、Bit4Bit7=厂商自定义故障位。

3.2 0x08 诊断功能(仅串口)

3.2.1 功能与原理

0x08 是 Modbus 标准诊断功能码,自带多个子功能码,用于总线链路检测、通信计数器清零、错误统计。核心原理:主站下发子功能指令,从站执行对应诊断动作并返回统计数据,用于定位总线干扰、报文丢失、链路异常问题。

3.2.2 适用场合

工程现场485总线调试、间歇性掉线排查、电磁干扰定位、总线稳定性压测、设备通信计数器复位校准。

3.2.3 子功能码定义

  • 0x00:返回查询数据(回环测试)

  • 0x01:重启通信选项,复位所有通信计数器

  • 0x02:返回从站诊断寄存器

  • 0x0A:清零总线错误与消息计数器

3.2.4 标准帧格式

请求帧:从站地址(1B) + 0x08(1B) + 子功能码(2B) + 数据域(2B) + CRC(2B)

正常响应帧:从站地址(1B) + 0x08(1B) + 子功能码(2B) + 返回数据(2B) + CRC(2B)

3.2.5 实战报文示例(回环测试)

请求:01 08 00 00 12 34 76 27

响应:01 08 00 00 12 34 76 27

说明:从站原样返回用户自定义数据 0x1234,证明链路收发正常、无干扰丢包。

3.3 0x0C 读取通信事件日志(仅串口)

3.3.1 功能与原理

0x0C 用于读取从站本地固化的通信事件日志,从站长期记录总线异常:CRC校验错误、帧长度错误、帧超时、字节丢失、总线冲突等异常记录。用于回溯历史通信故障,解决偶现、难以复现的通信不稳定问题。

3.3.2 适用场合

设备长期运维故障复盘、现场干扰偶发掉线定位、老旧设备通信劣化检测、自动化产线疑难通信BUG排查。

3.3.3 标准帧格式

请求帧:从站地址(1B) + 0x0C(1B) + CRC(2B)

正常响应帧:从站地址(1B) + 0x0C(1B) + 字节数(1B) + 日志数据(NB) + CRC(2B)

3.3.4 实战报文示例

请求:01 0C 04 0E

响应:01 0C 04 00 02 00 01 3F 45

解析:设备记录2次CRC错误、1次帧超时异常,可判定现场总线存在干扰。

3.4 0x11 报告从站ID(仅串口)

3.4.1 功能与原理

0x11 功能码用于读取从站完整设备身份信息,包含:从站地址、设备厂商ID、设备型号、固件版本、设备唯一序列号。属于设备身份核验指令,无需人工查看设备铭牌,总线直接读取设备信息。

3.4.2 适用场合

现场设备批量盘点、设备替换校验、固件升级前型号匹配、陌生总线设备识别、产线设备台账自动录入。

3.4.3 标准帧格式

请求帧:从站地址(1B) + 0x11(1B) + CRC(2B)

正常响应帧:从站地址(1B) + 0x11(1B) + 数据长度(1B) + 设备ID信息(N字节) + 状态字节(1B) + CRC(2B)

3.4.4 实战报文示例

请求:01 11 77 05

响应:01 11 06 10 01 02 03 04 01 AA BB

解析:返回设备型号、固件版本、序列号信息,状态字节0x01代表设备运行正常。

3.5 0x14 / 0x15 读写文件记录

3.5.1 功能与原理

0x14 读取文件记录、0x15 写入文件记录。该组功能码不操作标准寄存器,独立读写设备内部文件分区,支持大容量、结构化数据存储,突破16位寄存器数据长度限制。

3.5.2 适用场合

生产配方读写、传感器校准系数批量存储、设备运行日志导出、故障记录保存、大批量自定义参数存储。

3.5.3 帧格式(0x14读文件)

请求:从站地址 + 0x14 + 文件号 + 记录号 + 读取记录数量 + CRC

响应:从站地址 + 0x14 + 数据长度 + 文件数据 + CRC

3.5.4 报文示例

读文件请求:01 14 00 01 00 01 00 02 XX XX

读文件响应:01 14 04 11 22 33 44 XX XX

3.6 0x16 屏蔽写寄存器

3.6.1 功能与原理

普通写寄存器会覆盖整个寄存器数值,0x16 屏蔽写寄存器可以精准修改寄存器指定Bit位,其余Bit保持不变。运算公式:新值 = (旧值 & 与掩码) | 或掩码。无需先读再写,规避多主站轮询读写冲突。

3.6.2 适用场合

设备标志位控制、故障标志清零、功能开关单独置位、指示灯状态切换、阀门细分状态控制、单Bit独立配置,不影响寄存器其他状态位。

3.6.3 标准帧格式

请求帧:从站地址(1B) + 0x16(1B) + 寄存器地址(2B) + 与掩码(2B) + 或掩码(2B) + CRC(2B)

响应帧:原样返回请求帧数据

3.6.4 实战示例

需求:仅置位0号Bit,其余位不变

请求报文:01 16 00 10 FF FE 00 01 XX XX

原理:与掩码FF FE清除Bit0,或掩码0001置位Bit0,精准单点修改位状态。

3.7 0x17 读写多寄存器

3.7.1 功能与原理

0x17 是合并读写功能码,单条报文同时完成读寄存器+写寄存器。主站下发指令,先写入指定寄存器组,再读取另一组寄存器数据,一次通信完成两次操作,减少总线轮询次数、降低通信延迟。

3.7.2 适用场合

高实时性工控场景:变频器同步控参+读状态、温控仪下发PID参数+读取温度、闭环实时控制设备。

3.7.3 标准帧格式

请求:从站地址 + 0x17 + 读起始地址(2B) + 读数量(2B) + 写字节长度(1B) + 写起始地址(2B) + 写数量(2B) + 写入数据(NB) + CRC

响应:从站地址 + 0x17 + 读取数据字节数 + 读取寄存器数据 + CRC

3.7.4 实战报文示例

请求:单帧写入参数、同时读取设备运行状态

01 17 00 00 00 02 04 00 10 00 01 13 88 XX XX

响应:01 17 04 00 64 00 0A XX XX

3.8 0x2B MEI 扩展功能码

3.8.1 功能与原理

0x2B 为 Modbus 官方标准 MEI(Modbus Encapsulated Interface)封装扩展接口,不属于基础寄存器读写功能。通过不同 MEI 类型实现设备信息读取、时间同步、私有透传、固件OTA升级,是智能设备高阶拓展能力的标准载体。

3.8.2 适用场合

智能设备身份认证、远程固件升级、设备时间校准、自定义私有协议透传、设备运维、批量设备远程维护。

3.8.3 通用帧格式

请求帧:从站地址(1B) + 0x2B(1B) + MEI类型(1B) + 子命令(1B) + 数据域(NB) + CRC(2B)

响应帧:从站地址(1B) + 0x2B(1B) + MEI类型(1B) + 子命令(1B) + 状态码(1B) + 数据域 + CRC

3.8.4 常用MEI类型

  • 0x0E:读取设备标识信息

  • 0x0D:自定义固件OTA升级(本文专用)

  • 0x0F:设备时间同步

3.8.5 OTA拓展报文示例(完整复用前文规范)

开启OTA会话请求:01 2B 0D 01 00 00 00 XX XX

开启会话成功响应:01 2B 0D 01 00 00 00 XX XX

常规 01/02/03/04/05/06/0F/10 为基础读写功能码,以下为工业设备进阶调试、诊断、升级专用拓展功能码,仅部分智能仪表、嵌入式设备、高端工控设备支持。

四、五大完整工程落地案例(含完整报文、逐字解析、工作流程)

案例1:温湿度变送器模拟量采集(0x04 读输入寄存器)

场景说明

RS485总线挂载从站地址01的温湿度变送器,上位机周期性采集设备温度、湿度两组模拟量数据,数据存储在设备只读输入寄存器区域。

通信完整流程

  1. 总线空闲满足T3.5时隙,主站发起读取请求;2. 从站匹配地址、校验CRC、解析指令;3. 读取寄存器数据并打包响应;4. 主站校验报文、解析数值并换算物理量。

请求报文

01 04 00 00 00 02 71 CB

报文解析:01(从站地址)、04(读输入寄存器)、00 00(起始寄存器地址)、00 02(读取2个寄存器)、71 CB(CRC校验)

响应报文

01 04 04 00 1A 00 32 XX XX

报文解析:04(数据字节数)、00 1A=十进制26(温度2.6℃)、00 32=十进制50(湿度50%RH)

案例2:电磁阀开关量控制与状态回读(0x05写单线圈+0x01读线圈)

场景说明

从站地址02为电磁阀控制模块,上位机下发指令控制电磁阀启停,并回读线圈硬件状态,形成控制闭环,确认设备动作生效。

开阀控制请求报文(0x05)

02 05 00 00 FF 00 8C 09

参数释义:FF 00=线圈闭合(电磁阀开启),00 00=线圈断开(电磁阀关闭)

状态回读请求报文(0x01)

02 01 00 00 00 01 9D CA

功能:读取0号线圈实时硬件状态,校验控制指令是否执行成功。

案例3:变频器参数读写配置(0x03读保持寄存器+0x06写单寄存器)

场景说明

从站地址03为工业变频器,上位机读取设备当前运行频率,并下发指令将变频器设定频率修改为50Hz。设备运行参数、设定参数全部存储在保持寄存器。

读取运行频率请求报文

03 03 00 01 00 01 D5 CA

写入50Hz频率请求报文

03 06 00 02 13 88 XX XX

参数释义:1388(十六进制)=5000(十进制),对应频率50.00Hz,设备接收后刷新运行给定值。

案例4:串口通信参数读取与批量配置

场景说明

所有标准Modbus设备可通过内置保持寄存器存储自身串口通信参数,上位机可读写修改波特率、校验位、停止位、设备从站地址、应答超时,实现设备通信参数远程配置。参数修改后设备重启生效。

寄存器映射定义

  • 0x0000:波特率编号(1=1200、2=2400、3=4800、4=9600、5=19200、6=115200)

  • 0x0001:数据位、校验位、停止位组合参数

  • 0x0002:设备Modbus从站地址

  • 0x0003:设备应答超时时间(单位ms)

读取串口参数请求报文

01 03 00 00 00 04 44 09

读取响应报文

01 03 08 00 04 00 02 00 01 00 64 35 12

解析:当前设备波特率9600、偶校验+1停止位、从站地址1、应答超时100ms

批量修改串口参数(0x10 多寄存器写入)

修改需求:波特率115200、从站地址02、应答超时200ms,其余参数不变

写入报文:01 10 00 00 00 04 08 00 06 00 02 00 02 00 C8 XX XX

配置说明:报文下发成功后,必须重启设备,新串口参数方可生效,同时上位机需同步修改串口参数,保证通信匹配。

案例5:Modbus 0x2B MEI 完整固件OTA在线升级(分包传输+会话管理+收尾重启)

5.1 OTA基础规范

基于标准功能码0x2B,自定义专用OTA升级MEI类型:0x0D。适配Modbus RTU帧长限制,单包最大有效固件数据长度240字节。

标准完整升级流程:开启OTA会话 → 有序分包传输固件 → 结束会话完整性校验 → 重启设备进入Bootloader完成固件覆盖升级

5.2 OTA专属子命令全集

  • 0x01:开启OTA升级会话,初始化设备升级状态

  • 0x02:下发固件分包数据,核心传输指令

  • 0x03:结束OTA会话,设备校验固件MD5/CRC完整性,锁定固件镜像

  • 0x04:设备重启,跳转Bootloader执行固件升级覆盖

  • 0x05:查询设备当前OTA升级状态(空闲/升级中/校验成功/升级失败)

5.3 全流程标准报文与详解

1、开启OTA会话

请求:01 2B 0D 01 00 00 00 XX XX

响应:01 2B 0D 01 00 00 00 XX XX(00状态码代表会话开启成功)

2、固件分包下发标准帧

标准格式:从站地址 + 0x2B + 0x0D + 0x02 + 分包序号(2字节) + 数据长度(1字节) + 固件数据(240字节) + CRC16

首包示例:01 2B 0D 02 00 01 F0 [240字节固件数据] CRC

3、结束OTA会话

请求:01 2B 0D 03 00 00 00 XX XX

功能:所有固件分包传输完成,设备自动校验固件完整性,拒绝后续新数据包写入,防止固件损坏。

4、设备重启升级

请求:01 2B 0D 04 00 00 00 XX XX

设备响应成功后延时重启,Bootloader读取备份分区新固件,覆盖运行程序,完成OTA升级。

5、查询OTA状态

请求:01 2B 0D 05 00 00 00 XX XX

5.4 OTA核心约束与容错机制

  • 分包序号严格递增,断包、乱序包直接返回异常,支持断点续传,无需重新全量传输固件。

  • 全程严格遵循T1.5/T3.5时隙规则,避免分包粘连、丢包,保证升级稳定性。

  • 固件优先写入设备备份分区,不直接覆盖运行程序,升级失败自动回滚旧固件,杜绝设备变砖。

五、全文统一技术总结

  1. Modbus RTU 通信稳定性核心依赖T1.5帧内时隙、T3.5帧间时隙,是串口报文解析、防丢帧、防串帧的核心标准。

  2. 基础功能码覆盖常规采集与控制,拓展功能码实现设备诊断、日志读取、位精准控制、文件读写、远程OTA升级等高级功能。

  3. 五大工程案例完整覆盖工业现场最常用场景:模拟量采集、开关量闭环控制、设备参数配置、串口通信参数修改、设备远程固件升级,适配99%工业Modbus落地需求。

  4. 0x2B MEI 扩展协议是智能工控设备进阶功能的核心,可实现设备身份识别、私有数据透传、远程运维与升级,是高端设备必备拓展能力。

附录:Modbus 核心实用附表(工程速查)

附录1:不同波特率下的典型时隙数值(实用对照表)

基于标准11bit字符格式(1起始位+8数据位+1校验位+1停止位)计算,附带工程落地推荐延时,适配所有RTU串口设备。

波特率Tchar(ms)T1.5(ms) 帧内超时T3.5(ms) 帧间间隔工程推荐延时
12009.16713.7532.08≥35 ms
24004.5836.87516.04≥18 ms
48002.2923.4388.02≥10 ms
96001.1461.724.01≥5 ms
192000.5730.862.00≥2.5 ms
384000.2860.431.00≥1.25 ms
1152000.0950.1430.333≥0.5 ms

补充工程说明:高波特率(≥19200)设备定时器精度有限,行业统一固化阈值:T1.5=750μs,T3.5=1.75ms,规避帧粘连、误丢帧、报文解析异常问题。

附录2:寄存器与物理量极简口诀

专为现场调试、快速记忆设计,全覆盖Modbus常规通信场景:

  1. 02只读开关量:所有传感器按钮、限位、急停、外部干接点全用它

  2. 01读输出状态:查看继电器、电磁阀、风机水泵当前启停状态

  3. 04只读模拟量:温度、压力、流量、液位、电压、电流、功率等采集必用

  4. 03读写参数:设备设定值、阈值、频率、校准参数、通信参数全存储于此

  5. 05/0F 写开关:单点/批量控制现场继电器、电磁阀、阀门启停

  6. 06/10 写数值:单点/批量下发设备设定参数、阈值、配方数据

场景速记总结:采模拟用04、采开关用02、控开关用05/0F、设参数用06/10、读设备状态用01、读配置参数用03

附录3:Modbus 功能码 + 寄存器类型 + 现实物理参数 一一对应表

功能码十六进制寄存器类型读写属性对应现实物理参数 / 现场信号典型设备应用
010x01线圈 Coils开关量输出状态;继电器通断、接触器启停、电磁阀开关、风机水泵运行状态、阀门开闭状态PLC输出模块、继电器IO模块、变频器启停端子、配电柜输出
020x02离散输入 Discrete Inputs只读外部开关量输入状态;接近开关、光电开关、限位开关、急停按钮、门禁开关、设备故障干接点现场传感器、远程IO输入模块、设备故障检测、安全防护信号采集
030x03保持寄存器 Holding Registers设备内部配置参数、运行设定值;变频器频率、温控阈值、PID参数、设备通信地址、波特率、保护限值、校准参数变频器、温控仪、智能仪表、PLC、各类智能工控设备
040x04输入寄存器 Input Registers只读现场实时采集模拟物理量;温度、湿度、压力、流量、液位、电压、电流、功率、转速、介质浓度、重量温湿度变送器、压力/流量传感器、电表、称重模块、水质检测仪
050x05单线圈 Coil单点开关量控制;单点继电器吸合断开、单点电磁阀启停、单路设备开关控制单点远程控制、末端执行器单点操作
060x06单保持寄存器 Holding Register单点设备参数下发;设定运行频率、温控目标、压力报警阈值、延时时间、通信参数单参数配置调试、设备单点参数校准
150x0F多线圈 Coils批量开关量控制;多路继电器、风机、水泵、阀门一次性批量启停多路IO模块、配电柜批量设备控制、流水线设备联动
160x10多保持寄存器 Holding Registers批量设备参数下发;多组PID参数、保护阈值、生产配方、通信参数批量配置设备批量调试、生产线配方下载、多参数统一配置
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 16:50:57

朋友圈不刷屏也能卖断货?我试了3个月的真实心得

朋友圈想卖东西,又怕好友拉黑你?大多数人以为多发广告就能出单,结果只是自己感动自己。我换了个思路——不刷屏,反而卖得更快。下面拆解这套玩法。第一步:认知破局——朋友圈是“会客厅”不是“广告牌”别把自己当推销…

作者头像 李华
网站建设 2026/5/8 16:50:51

AI记忆革命:Gemini3.1Pro能否直接改写知识?

如果你最近持续关注 2026 年的 AI 行业动态,会发现一个越来越明显的趋势:大模型不再只是“会不会回答”,而是开始进入“能不能被精准修改”的阶段。 像 KULAAI(dl.877ai.cn) 这类 AI 聚合平台,在这个阶段就…

作者头像 李华
网站建设 2026/5/8 16:50:35

Go语言怎么做协程调度_Go语言协程调度原理教程【经典】

goroutine 不会卡死整个线程是因为 GMP 模型实现动态解耦:G 绑定 P,P 可被空闲 M 抢占接管;阻塞时 M 脱离 P,其他 M 立即续跑其余 G,配合 netpoller 和异步抢占机制保障并发响应。goroutine 为什么不会卡死整个线程&am…

作者头像 李华
网站建设 2026/5/8 16:49:01

观察使用Taotoken聚合调用后月度AI模型API成本支出的明细与变化

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 观察使用Taotoken聚合调用后月度AI模型API成本支出的明细与变化 作为项目技术负责人,我们在一个多月前决定将多个AI应用…

作者头像 李华
网站建设 2026/5/8 16:48:39

2026外卖系统选型红黑榜:从技术架构看懂你的业务天花板

“做个外卖小程序多少钱?” “SaaS和源码我该怎么选?”如果你还在问这些问题,说明你对外卖系统的认知还停留在“工具”层面。但残酷的现实是:外卖系统不是工具,它是你整个商业模式的技术地基。一个错误的地基选择&…

作者头像 李华