路面传感器ModBus RTU通讯协议
1、物理端口定义
起始位——1bit
停止位——1bit
数据位——8bits
校验位——none
波特率——9600bps
2、内存地址映射
寄存器地址
含义
操作
0
设备地址(1~246)
读写
1
无意义
只读
2
路面温度x100
只读
3
积水深度x100
只读
4
冰厚度x100
只读
5
雪厚度x100
只读
6
湿滑系数x100
只读
7
路面状态码
只读
8
硬件状态码
只读
3、寄存器说明
可以通过读保持寄存器命令(0x03),获取以下寄存器数值; 写单个保持寄存器命令(0x06),修改设备地址。
地址0 modbus设备地址 无符号整型
地址范围 1~246。修改地址后,重新上电生效。
地址
内容
含义
0
0x0001
地址为1
地址2 路面温度 有符号整型
数值为实际温度乘以100。
地址
内容
含义
2
0x07EE
20.3摄氏度
地址3 积水深度 无符号整型
数值为实际深度乘以100。
地址
内容
含义
3
0x00FA
2.5mm
地址4 冰厚度 无符号整型
数值为实际厚度乘以100。
地址
内容
含义
4
0x0140
3.2mm
地址5 雪厚度 无符号整型
数值为实际厚度乘以100。
地址
内容
含义
5
0x01AE
4.3mm
地址6 湿滑系数 无符号整型
数值为实际数值乘以100。
地址
内容
含义
6
0x0052
0.82
地址7 路面状态 无符号整型
地址
内容
含义
7
0x0106
雪 报警
数值含义
W(警告) 高字节
S(路面状态) 低字节
0 NO WARNING (无警告)
0 ERROR(出错)
1 WARNING (警告)
1 DRY(干)
2 ALARM (报警)
2 MOIST(潮)
3 FROST WARNING (霜警告)
3 WET(湿)
4 OBSTRUCT(阻挡警告)
4 预留
5 FROST(霜)
6 SNOW(雪)
7 ICE(冰)
8 预留
9 SLUSHY(冰水混合)
地址8 硬件状态 无符号整型
地址
内容
含义
8
0x0040
测距模块异常
数值含义 高字节(十六进制)
镜头及模块状态 高四位
硬件状态 低四位
0 接收器窗清洁
0 硬件OK
1 警告-接收器窗污染
1 CPU硬件警告
2 报警-接收器窗污染严重
2 激光器警告
4 测距模块异常
x
4、通信示例
读取路面状态
TX:01 03 00 00 00 09 85 CC - 01:设备地址 - 03:读保持寄存器功能码 - 00 00:寄存器地址 - 00 09:读取寄存器个数 - 85 CC:CRC校验码 RX:01 03 12 00 01 00 00 08 FB 00 06 00 00 00 00 00 51 00 02 00 00 B2 24 - 01:设备地址 - 03:03功能码 - 12:数据字节,18 - 00 01:地址寄存器数据,1 - 00 00:寄存器2数据,暂时无用 - 08 FB:温度寄存器数据,22.99度 - 00 06:水深寄存器数据,0.06mm - 00 00:冰厚寄存器数据,0.00mm - 00 00:雪厚寄存器数据,0.00mm - 00 51:湿滑系数寄存器数据,0.81 - 00 02:路面状态码寄存器数据,02代表湿 - 00 00:硬件状态码寄存器数据,00代表硬件无异常 - B2 24:CRC校验码