1.问题描述
大家知道目前为止WINCC Modbus TCPIP驱动是不支持64位浮点数的
但做项目往往会碰到从站使用这种类型数据,如累积流量值、电度量。那如何读取呢?
2.解决方法
Modbus协议以一系列具有不同特征的数据模型为基础。四个基本模型为:
对于一个64位浮点数,就是以16-bits word为数据模型,4个连续的保持寄存器。所以可以使用功能码0x03分别读取这4个连续的保持寄存器值,然后还原为原64位浮点数。
如以Modbus Slave为从站,设置WINCC要读取的64位浮点数,其保持寄存器地址为4x00001-4x00004。