本仪表通讯协议遵守MODBUS-RTU通讯规约,1个起始位,8个数据位,一个停止位。 以下指令定义假设仪表参数为:仪表地址设置为 1、通讯波特率9600、无效验位、小数点1位、单位MPa、仪表显示值500.0MPa。指令中读指令、写指令中的地址及数据均为高字节在前、低字节在后;CRC检验低字节在前,高字节在后。 【读压力值】 命令:01 03 00 04 00 01 C5 CB 指令说明:01(仪表地址) 03(读命令)00 04(仪表通讯地址)00 01(读一个参数)84 0A(CRC16效验码) 响应: 01 03 02 13 88 B5 12 指令说明:01(仪表地址) 03(读命令)02(读取的字节数,1个参数为2,2个参数为4 ....)13 88(13 88为16进制数13为高字节88为低字节转为10进制数刚好为5000)B5 12(CRC16效验码) 【零飘调整】 命令:01 06 00 05 00 01 58 0B 指令说明:01(仪表地址) 06(写指令)00 05(仪表通讯地址)00 01(零飘调整代码)58 0B(CRC16效验码) 响应: 01 06 00 05 00 01 58 0B 指令说明:01(仪表地址) 06(写指令)00 05(仪表通讯地址)00 01(零飘调整代码)58 0B(CRC16效验码) 【读参数值】 命令: 01 03 XX XX 00 01 CRC1 CRC2 指令说明:01(仪表地址) 03(读命令)XX XX(参数地址:参见表2)00 01(读一个参数)CRC1 CRC2(CRC16效验码:低字节在前,高字节在后) 响应:01 03 02 XX XX CRC1 CRC2 指令说明:01(仪表地址) 03(读命令)02(读取的字节数,1个参数为2,2个参数为4 ....)XX XX(返回的参数值:高位在前,低位在后)CRC1 CRC2(CRC16效验码:低字节在前,高字节在后) 【写参数值】 命令: 01 06 XX XX data1 data2 CRC1 CRC2 指令说明:01(仪表地址) 03(读命令)XX XX(参数地址:参见表2)data1 data2(写入的参数:高字节在前,低字节在后。见表2)CRC1 CRC2(CRC16效验码:低字节在前,高字节在后) 响应:01 06 XX XX data1 data2 CRC1 CRC2 指令说明:01(仪表地址) 03(读命令)XX XX(参数地址)data1 data2(写入的参数:高字节在前,低字节在后。见表2)CRC1 CRC2(CRC16效验码:低字节在前,高字节在后) 表2:参数地址及数据 参数名称 | 内容 | 地址(Hex) | 数据(data1,data2) | Addr | 变送板地址 | 00 00 | 1~255 | baud | 变送板波特率 | 00 01 | 1-2400 2-4800 3-9600 4-19200 | Unit | 测量单位 | 00 02 | 0-m 1-kPa 2-MPa 3-℃ 4-L 5-bar 6-psi 7 Pa | Dot | 测量数据小数点位数 | 00 03 | 取值范围:0-4 | | 测量值 | 00 04 | | Zero | 零飘 | 00 05 | | Parity | 校验位 | 00 06 | 0-None 1-Odd 2-Even | Loc | 密码验证 | 00 0A | 密码: 38 79 |
【写参数步骤】 ①密码验证,密码为38 79H,即发送命令: 01 06 00 0A 38 79 7B EA ②写需要修改的参数,例如修改变送板地址 为2时,命令:01 06 00 00 00 02 08 0B 注意:写参数时,密码认证只需1次,在不断电情况下,其他参数可继续修改而无需再次进行认证。断电后,则需重新认证后方可改变参数。 注意: 1.返回压力数据2个字节,高字节在前,低字节在后。 2.返回压力值为16进制有符号数,高位为符号位。 3.负数为二进制补码,高位为1。 |