昌晖YR-GF系列高性能智能仪表在通信时使用标准MODBUS协议,本文对YR-GF系列仪表通信协议做详细介绍,用户在做通信连接时,还需要下载YR-GF系列仪表的“通信地址”配合使用。
YR-GF系列仪表通信协议采用标准ModBus协议,采用RTU(十六进制数)传输模式。ModBus协议是一种主-从式协议。任何时刻只有一个设备能够在线路上进行发送。由主站管理信息交换,且只有主站能发起。主站会依次对从站进行轮流查询。只有当从站地址与轮询地址相匹配,从站才能回复消息。从站之间不能进行直接通信。协议桢中不包含任何消息报头及消息结束符,消息的开始和结束依靠间隔时间来识别,当间隔时间长于或等于3.5个字符时,即作为检测到桢结束。如果网络内没有与查询地址相一致的从站或从站接收时CRC校验出错,主站将不会接收到返回桢,这时主站根据超时设定判断是否超时,如超时,作出重发或弹出异常错误窗口动作。
协议桢定义
从站地址:地址必须在1-247之间;在同个主站网络中每个从站地址必须唯一;0为广播地址,从站接收消息并作相应处理,但不能回复消息。
功能代码:包含读、写寄存器。
数据:以二进制代码传输。
CRC16:循环冗余校验,校验从从站地址到数据区最后一个字节,计算多项式码为A001(hex)。
通讯口设置
通讯方式:异步串行通讯接口,如RS485,RS232等
波特率:2400-9600bps(可由设定仪表二级参数自由更改,设定仪表二级参数BUAD,默认9600)见表6
字节数据格式 HEX
◆ 一位起始位
◆ 八位数据位
◆ 一位停止位
◆ 无校验
消息桢格式(读、写功能是从主站角度定义的)
①读寄存器桢
②读寄存器返回桢
③写寄存器桢
④写寄存器返回桢
⑤错误返回桢
⑥功能代码表 表1
⑦错误代码表 表2
⑧寄存器地址表(只读寄存器) 表3
寄存器地址表说明:
a、所有数据类型为有符号整型(两字节)。
b、通信传输中带小数点的数据全部用整数代替如:1.000 代替为1000(即忽略小数点,比如27.9代替为279)。
c、全部寄存器数据在传输过程中用十六进制数表示,先传高字节,再传低字节,如传送279,先传01H,再传23H。
d、读测量显示值,如果输入信号是热电阻或热电偶、小数点为1时,读到124,即为12.4
⑨寄存器地址表(二级菜单寄存器) 表4
⑩测量输入状态表 表5
⑪波特率表 表6