冷热量表MODBUS-RTU通讯协议冷热量表使用了MODBUS-RTU通讯协议,MODBUS协议定义了校验码、数据序列等,MODBUS协议在一根通讯线上使用主从应答式连接(半双工)。MODBUS协议只允许在主机(PC,PLC等)和终端设备之间通讯,而不允许独立的终端设备之间的数据交换,这样各终端设备不会在它们初始化时占据通讯线路,而仅限于响应到达本机的查询信号。MODBUS-RTU格式无起始字符和结尾字符,但需要加等待时间,。(1)传输方式信息传输为异步方式,并以字节为单位,在主机和从机之间传递的通讯信息是11位字格式,包含1个起始位、8个数据位(最小的有效位先发送)、一个偶校验位、1个停止位。通讯波特率为2400。9600,8,1,无校验,地址改02(2)数据帧格式地址码功能码数据区CRC校验码1字节1字节n字节2字节地址码:地址码在帧的开始部分,由一个字节(8位二进制码)组成,十进制为0~255,在热量表中只使用1~247,其它地址保留。这些位标明了用户指定的终端设备的地址,该设备将接收来自与之相连的主机数据。每个终端设备的地址必须是唯一的,仅仅被寻址到的终端会响应包含了该地址的查询。功能码:功能码告诉了被寻址到的终端执行何种功能。下表列出了该系列仪表用到的功能码,以及它们的意义和功能。功能定义操作03H读数据寄存器获得多个寄存器的值06H预置寄存器设定值到寄存器中数据区:数据区包含了终端执行特定功能所需要的数据或者终端响应查询时采集到的数据。这些数据的内容可能是数值、参考地址或者设置值。例如:功能码告诉终端读取寄存器,数据区则需要指明从哪个寄存器开始及读取多少个数据。通信应用格式详解(1)功能码03H:读寄存器此功能允许用户获得设备采集与记录的数据及系统参数。主机一次请求的数据个数没有限制,但不能超出定义的地址范围。(2)功能码06H:写寄存器功能码06H允许用户改变寄存器的内容,该仪表中地址可用此功能号写入。热量表支持两条指令写热量表地址将地址为1的热表改成地址为13H热表指令具体代码如下:主机发送发送信息从机返回返回信息地址码01H地址码13H功能码06H功能码06H起始地址高字节06H起始地址高字节06H低字节07H低字节07H待写入数据高字节00H寄存器数量高字节00H低字节01HCRC校验码高字节FAH低字节13H低字节31HCRC校验码高字节79H低字节4EH读热量表数据:读地址为01H热量表多个寄存器数据具体代码如下:主机发送发送信息地址码01H功能码03H起始地址高字节00H低字节01H寄存器数量高字节00H低字节0CHCRC校验码高字节14H低字节0FH以下从机返回的寄存器数据皆为hex类型数据从机返回返回信息备注地址码01H功能码03H字节数18H寄存器数据(0001H)高字节00H数据内容:瞬时流量,字节数:4个,单位:,数值为:(0002H)高字节61H低字节4EH寄存器数据(0高字节03H数据内容:累计流量,字节数:4个,单位:003H)1m3,数值为:53673159m3低字节32H寄存器数据(0004H)高字节FCH低字节C7H寄存器数据(0005H)高字节00H数据内容:瞬时热量,字节数:4个,单位:
111MODBUS-RTU-HEX通讯协议06 (1) 来自淘豆网m.daumloan.com转载请标明出处.