微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > Labview > Labview 和 西门子1200 Modbus TCP通讯,如何实现浮点数的交互?

Labview 和 西门子1200 Modbus TCP通讯,如何实现浮点数的交互?

时间:10-02 整理:3721RD 点击:
Labview 和 西门子1200 Modbus TCP通讯,其通讯是按照一个保持寄存器进行的,也就是占2个字节,可以实现bool,int类型的数据传输,单PLC这边如果要传输real类型(占四个字节),通讯结果就不正确。各位大神帮帮忙,感谢!

小技巧:在传送bool量时,需要在Labview中交换高低字节,这样在PLC这边得到的Bool值才是正确的。

相互讨论哈,已发现一种方法!

拼接指令加上强制转换可以实现PLC到Labview的real传输,反过来还没找到方法哦。

傳送如果以字為單位,可以把4個字節分為高字和低字傳送

已经解决!谢谢

我也想知道啊 大神

将labview中的单精度浮点数转换为32位长整型,然后将32位长整型拆分为两个16位的整数(拆分数字命令),通过写入多个保持寄存器命令,就可向PLC写入real量。

已测试,完全正确!

先按字读上来,也就是说把PLC浮点,拆分成俩个字,读上来。读上来后进行字拼接,然后转换成单精度浮点。不懂加微信:362896182

是按照这种方式做的!谢谢

小编有没有源程序分享一下,不太明白你说的意思

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top