485-rtu通信协议 Xlf-60fb通信协议
本仪表采用rs485串行通讯总线,modbus协议(rtu模式,执行标准:gb/z19582.1-2021);被动发送方式。通讯波特率可选择2400,4800,9600,192004种,出厂设置为9600。
1.RTU模式下每个字节(11位)的格式为: 每个字节的位:1个起始位
8个数据位,首先发送最低有效位,1个偶数校验位,1个停止位,帧校验字段:循环冗余校验(CRC)仪器地址:可选00~99
通讯波特率:可选范围为2400bps、4800bps、9600bps、19200bps。2、命令集: 在以下命令中,每个8位字节包含两个4位十六进制字符(0~9,a~F),也就是说,每两个字符代表一个8位字节。2.1. 读取测量值:
只读。每个通道的测量值使用32bit的浮点数(ieee-754标准格式)表示,占2个16bitd寄存器,高字节在前。 功能代码:0x03、0x04
寄存器地址:00:温度、02:压力;04:流量或主路流量 主机发送从属响应,其中: “aa”字符表示仪表的通讯地址。
“BBBB”字符表示开始参数读取的寄存器地址。“Dddd”字符表示该命令要读取的参数寄存器的数量。“EE”字符表示返回的数据字节数。数值等于dddd×2。“CC”字符表示CRC校验值。“数据”表示返回的测量值。
例:读取设备地址为01的仪表的温度测量值。仪表显示+123.4(16进制42f6cccd) 发送回复
十六进制十六进制
01040000000271cb01040442f6cccd9b5baa04bbbbddddccccaa04eedatacccc各测量值对应地址码表:
每个测量值的名称
旁路累积量(t);(无此通道保留数据为0)
流量超限累计或主回路超限累计(T)0e10温度(℃);压力(MPA);流量或主流(T/h);回水流量(T/h);(无此通道,保留数据为0)旁路流量(T/h);主要道路的累计计量或累计体积(T)回水的累计体积(T);(不含该通道的预留数据为0)地址码00020406080a0c旁路超限累加(T);(无此通道时,保留数据为0)12开关值1;14开关量2停电时间(0)流量或主回路电流值(4-20mA)16181a2 2。读取仪器参数的命令: 只读。参数地址从256开始编码(0x0100),每两个16位寄存器对表示1个参数。参数
起始地址等于手册参数列表中的“通信地址”乘以2加0x0100。如果温度输入的完整校正地址为0X11,则Modbus协议中的相应地址为0x0122。 功能码:0x03
主机发送从属响应,其中:
“aa”字符表示仪表的通讯地址。“bbbb”字符表示读测量值的起始地址
“Dddd”表示该命令要读取的参数的寄存器数(参数数)×2。“EE”字符表示返回的数据字节数。数值等于dddd×2。“CC”字符表示CRC校验值。
“data”表示返回的参数寄存器数值(32位的浮点数表示,ieee-754标准格式)。 AA03BBDDCCAA03EEDATACC示例:阅读设备地址为01的仪器的说明手册以及地址为0x01和0x02的两个参数的值
发送应答十六进制十六进制010301020004e435010308408ccccd4297000045a7仪表返回的0x01地址的参数数值为十六进制浮点数0x408ccccd,即十进制4.4。仪表返回的0x02地址的参数数值为十六进制浮点数0x42970000,即十进制75.5。2.3、异常返回 当仪器接收到主机发送的指令,处理过程中出现异常时,返回异常代码: 应答:aabbddcccc 其中:
“aa”字符表示仪表的通讯地址。
“BB”字符表示错误代码,其数值等于主机发送命令中的功能代码+0x80。“DD”字符表示异常代码,描述异常类型;下表
“ee”字符表示写入的包含参数数值的数据字节个数。数值上等于dddd×2。“cc”字符表示crc校验值。
Modbus异常代码01020304
名称非法功能非法数据地址非法数据值从站设备故障含义接收到的功能码是不允许的操作。接收到的数据地址是不允许的地址。接受到的数据域中包含的是不允许的值。当仪表正在试图执行请求的操作时,产生不可恢复的错误。
因篇幅问题不能全部显示,请点此查看更多更全内容