电磁流量计MODBUS通信帧格式说明

如题,我用单片机和电磁流量计通信,用modbus的RTU格式帧,单片机发帧为0x01,0x04,0x10,0x10,0x00,0x01,0x34,0xCF,按照我买型号的使用说明可以读到瞬时流量,而实际上当流量计空管的时候我读出来的帧为01,04,02,80,00,d8,f0,也就是说流量计的瞬时流量为8000。我不清楚这个数据代表的具体流量为多少,为什么第一位有个8,我应该读几个寄存器,谁使用过电磁流量计,帮忙回答一下这些问题,谢啦!

先看你发的数据包0x01 0x04 0x10 0x10 0x00 0x01 0x34 0xCF
站地址0x01,功能码0x04 起始地址为0x10 0x10数量0x00 0x01(1个Word) 校验码0x34 0xCF
(不需要理解)
回的数据包站地址0x01,功能码0x04 ,返回数据数量0x02(2个Byte) 返回的数值是0x80 0x00(换算成十进制是128 0实际流量值再根据你流量计实际情况确认是高8位在前还是低8位在前确定1280/128)校验码0xD8 0xF0
(不需要理解)追问

协议我知道,我不知道这个流量计空管时为什么会读出8000,以及这四位代表的具体含义(即如何转换为十进制流量值)。流量及型号是EMFM HFD3000,您用过么?是否遇到过类似情况?

追答

没用过,建议这种问题直接给客服打个电话就问出来了,一分钟应该就能搞定。。。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-15
现有一台电磁流量计和一台家用电脑,电磁流量计有485通讯 是modbus标准协议。电脑本身 没有 485 接口,所以 你得转换!用 RS232 转 RS485 或者 USB
相似回答