技术论坛

 回复:WinCC MODBUS/TCP接收64位浮点数问题

返回主题列表
作者 主题
yuanyx99
游士

经验值:244
发帖数:25
精华帖:0
楼主    2017-03-23 15:14:14
主题:WinCC MODBUS/TCP接收64位浮点数问题(已解决)

问题已解决,wincc7.3的modbus采集64位浮点数格式确实有问题,后来自己编写程序将字节位置调换以后解决了,具体格式为:

1、如果从站采用64位浮点数(不交换),则wincc接收到的数据需要按以下顺序交换字节位置:45670123

2、如果从站采用64位浮点数(交换),则wincc接收到的数据需要按以下顺序交换字节位置:23016745


有个项目,需要wincc用modbus通道接收一个modbus设备的数据,其中有一个数据采用的是double inverse(64位浮点数 高低位交换)格式。结果发现wincc的modbus接收64位浮点数不对,modbus slave设备采用double和double inverse两种格式wincc接收的数据都不对。连接参数里面那个(转换字类型数据为16位值)对64位浮点数没有影响,勾不勾选接收到的值都不变。


请问这个怎么解决啊?  怎样正确接收这个数据?


下面两张图是我用modbus slave模拟器模拟的数据,用modscan和wincc同时连接这个模拟器,modbusscan接收的数据正确,wincc接收的数据不对。






shine
至圣

经验值:19820
发帖数:8803
精华帖:39
1楼    2017-03-23 20:33:29
精华帖  主题:回复:WinCC MODBUS/TCP接收64位浮点数问题

64位浮点数不止2种排列

wincc用的是下图第二种



万泉河
至圣

经验值:29190
发帖数:10900
精华帖:131
6楼    2017-03-28 16:40:07
精华帖  主题:回复:WinCC MODBUS/TCP接收64位浮点数问题(已解决)

最常见的是流量计。。。


微信公众号:PLC标准化编程,ZHO6371995
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。