Modbus 协议寄存器定义文档
一、协议基本配置
- 协议类型:Modbus RTU
- 从机地址:1
- 串口配置:
- 波特率:115200
- 数据位:8
- 校验位:无
- 停止位:1
二、读数据(功能码:04)
1. 实时显示数据
- 寄存器类型:输入寄存器
- 功能码:0x04
- 数据格式:单精度浮点数(32位,占2个寄存器)
线路 #1
| 寄存器地址 |
参数名 |
寄存器地址 |
参数名 |
寄存器地址 |
参数名 |
| 0x0000 |
Ua |
0x0012 |
Pt |
0x0024 |
PFa |
| 0x0002 |
Ub |
0x0014 |
Qa |
0x0026 |
PFb |
| 0x0004 |
Uc |
0x0016 |
Qb |
0x0028 |
PFc |
| 0x0006 |
Ia |
0x0018 |
Qc |
0x002A |
PFt |
| 0x0008 |
Ib |
0x001A |
Qt |
0x002C |
Uab |
| 0x000A |
Ic |
0x001C |
Sa |
0x002E |
Ubc |
| 0x000C |
Pa |
0x001E |
Sb |
0x0030 |
Uca |
| 0x000E |
Pb |
0x0020 |
Sc |
0x0032 |
Frq |
| 0x0010 |
Pc |
0x0022 |
St |
- |
- |
线路 #2
- 起始地址:0x0034
- 结束地址:0x0066
- 参数顺序:同线路 #1
线路 #3
- 起始地址:0x0068
- 结束地址:0x009A
- 参数顺序:同线路 #1
线路 #4
- 起始地址:0x009C
- 结束地址:0x00CE
- 参数顺序:同线路 #1
2. 模拟量输入(AI)
- 寄存器类型:输入寄存器
- 功能码:0x04
- 数据格式:单精度浮点数(32位)
| 寄存器地址 |
输入编号 |
| 0x00D0 |
Ai1 |
| 0x00D2 |
Ai2 |
| 0x00D4 |
Ai3 |
| 0x00D6 |
Ai4 |
| 0x00D8 |
Ai5 |
| 0x00DA |
Ai6 |
| 0x00DC |
Ai7 |
| 0x00DE |
Ai8 |
3. B码对时
- 寄存器类型:输入寄存器
- 功能码:0x04
- 数据格式:无符号16位整型
| 寄存器地址 |
位分配 |
内容 |
| 0x00E0 |
[15:8] = 秒 [7:0] = 分 |
秒/分 |
| 0x00E1 |
[15:8] = 时 [7:0] = 日 |
时/日 |
| 0x00E2 |
[15:8] = 月 [7:0] = 年 |
月/年 |
4. 数字量输入(开入)
- 寄存器类型:输入寄存器
- 功能码:0x04
- 寄存器地址:0x00E3
- 说明:共16路,每个bit位表示一路开入量
5. 事件总标记
- 寄存器类型:输入寄存器
- 功能码:0x04
- 寄存器地址:0x00E4
- 说明:当该位被置位时,表示有新事件,需要读取事件内容
三、读事件(功能码:03)
- 触发条件:事件总标记(0x00E4)被置位
- 寄存器类型:保持寄存器
- 功能码:0x03
- 寄存器地址范围:0x0000 ~ 0x0003
| 寄存器地址 |
数据名 |
格式 |
说明 |
| 0x0000 |
时间戳(低16位) |
32位无符号 |
占用0x0000~0x0001 |
| 0x0001 |
时间戳(高16位) |
|
|
| 0x0002 |
毫秒计时 |
16位无符号 |
|
| 0x0003 |
线路号+事件类型 |
16位无符号 |
高字节线路号,低字节事件类型 |
四、读输入数字量(开入)(功能码:02)
| 寄存器地址 |
说明 |
| 0x0000 |
16路开入量,每bit一路 |
| 0x0001 |
保留(16路) |
五、写数据(功能码:10,写多个保持寄存器)
1. 时间设置
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x0000
- 寄存器长度:2
- 说明:写入时间戳(32位)
2. 串口设置
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x0004
- 寄存器长度:16
- 说明:4路 × 4(8字节数据/2) = 16个寄存器
3. 线路定值设置
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x0014
- 寄存器长度:56
- 说明:4路 × 7类别 × 2(4字节数据/2) = 56个寄存器
4. AI通道设置
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x004C
- 寄存器长度:30
- 说明:12路 × 5字节数据 / 2 = 30个寄存器(整体下发)
5. AO通道设置
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x006A
- 寄存器长度:30
- 说明:12路 × 5字节数据 / 2 = 30个寄存器(整体下发)
6. AI报警设置
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x0088
- 寄存器长度:30
- 说明:12路 × 5字节数据 / 2 = 30个寄存器(整体下发)
7. 开出(写继电器输出)
- 寄存器类型:保持寄存器
- 功能码:0x10
- 起始地址:0x00A6
- 寄存器长度:1
- 数据格式:16位,每一位表示一路开出量
六、写开出(线圈)(功能码:05)
- 寄存器类型:线圈
- 功能码:0x05
- 起始地址:0x0000
- 寄存器长度:12
- 说明:单路线圈写操作(12路分别操作)