建恒公司超声波流量计从v9版本开始全面支持Modbus通讯协议,本文将介绍建恒超声波流量计DCT1188/DCT1158系列产品与西门子S7-200系列PLC通讯的方法和实例,方便大家做数据采集使用。首先,S7-200CPU必须安装西门子的Step7-Micro/WIN32 V3.2(以上) Instruction Library(指令库)。Modbus RTU功能是通过指令库中预先编好的程序功能块实现的,S7-200 CPU做主站必须由用户自己用自由口模式调用库指令进行编程实现。其次,建恒仪表的瞬时流量数据是用32位浮点数存储的,占用2个字,且低字在前,因此必须读回2个字,且需要将其高字和低字互换,即为浮点数的瞬时流量。而累积流量是32位长整型加上一个字的指数构成,采集的数据也需要将高字和低字互换。下面是一个采集建恒DCT1188/DCT1158系列仪表的瞬时流量和累积流量的例子:程序截屏:
其中:
VD1300 浮点数 瞬时流量
VD1320 有符号数 净累积量
VW1224 有符号数 净累积量的指数
下图是DCT1188/DCT1158仪表的数据字定义截图。
注意:每个Modbus的寄存器占用1个字(16位),通讯读上来后要将高字和低字进行交换就正确了。