咱拐个弯?昆仑通态HMI modbusRTU 的双精度浮点读取

咱拐个弯?昆仑通态HMI modbusRTU 的双精度浮点读取

01 应用背景

昨天,咱一优质资深老客户突然找到我,很严肃地跟我说有个非常严重并且非常着急的问题,能让咱多年资深工程师都无法解决的,那肯定的确是大问题,对话如下:

仔细一看,还真是64位双精度浮点数,但是咱触摸屏的mcgsPRO软件已经支持64位浮点数了啊,所有浮点型变量,都是按照双精度浮点来处理的:

但在modbusRTU驱动内,的确如客户所说,没有64位双精度浮点数的选项,是个大问题。

仔细想想,肯定又是开发部那群xx(文明用语,此处缺省为小伙伴)在偷懒,64位双精度浮点数目前应用不广,用得人少,所以就偷懒没做,但现在不是内部批斗的时候,得先找办法解决客户现场问题。


02 问题处理

聪明的小脑袋瓜子极速运转,一下子就出来了解决方案:

① 首先分开读64个位回来?然后自己按照IEEE-754标准来计算?

等等,但是mcgsPro没有64位浮点的IEEE-754标准计算指令啊,只有32位? 自己写脚本计算IEEE-754???




② 好像没有第二了,没啥办法了


03 结束语

既然没啥其他办法了,那咱就这样结束吧,等开发部那群小伙伴帮我支持64位双精度浮点再说吧,谢谢大家支持,谢谢大家白跑一趟。


开玩笑呢,怎么能让大家白跑一趟呢。 等开发部处理,重新修改驱动,那肯定一时半会搞不完,走流程都要那么久,客户工程师朋友还在现场等下班呢。


04 重新开始问题处理

聪明的小脑袋瓜子再次运转起来,雍正八阿哥(BUG)保佑,我想起来mcgsPro版内的modbusTCP驱动有支持64位浮点数,开发部的小伙伴偷懒没偷全,有漏网之鱼:

客官们可能就会说,你这是modbusTCP啊,流量计是modbusRTU的,难不成你还现在去买个RTU转TCP网关啊,蚊都训喇!遇事不要慌,我来看看。说起网关,剑指工控某位身家超2.7亿元的著名网友曾如此评价昆仑通态MCGS触摸屏: 这网关啥都好,就是多了个屏幕。


广告时间:

昆仑通态HMI配套的mcgsPro拥有丰富的通讯协议,串口、网口、物联网等,均有支持,配合软件内实时数据库变量系统,软件内可实现灵活的数据协议转换,例如modbusRTU转modbusTCP、各类PLC协议转modbus、各类modbus转MQTT、PLC协议转HTTP、modbus转数据库接口等等等等等等

软件是死的,人是活动,脑袋要懂得转弯。


新的方案破壳而出:

①使用modbusRTU串口驱动,按照2个32位整型把数据读回来

② 建立modbusTCP网口转发设备,按照2个32位整型转发处理,建立modbusTCP协议接口

③ 使用modbusTCP协议驱动读本机IP,直接读64位浮点数 简单来说,就是将modbusRTU读回来的数据原封不动的转给modbusTCP服务器端口,通过modbusTCP客户端来按照64位浮点数读取出来


05 实施步骤

① 使用modbusRTU串口驱动,按照2个32位无符号整型把数据读回来


② 建立modbusTCP网口转发设备,按照2个32位无符号整型转发处理,建立modbusTCP协议服务器接口

③ 使用modbusTCP客户端协议驱动读本机IP,直接读64位浮点数


④ 对应进行窗口组态,安排测试

按照想法设置好程序了,咱现在开始测试,测试前呢,先找来一段实际通讯的数据,按照数据帧数值来测试,因为我也不会算IEEE-754对吧,随便输几个数据出来结果也不知道对不对,所以我们参考下面这个modbuspoll通讯的数据:

对modbus比较熟的朋友应该就能看出来,0x 00 00 00 00 D0 00 40 74,转换成64位浮点数,就是333.0了,不熟的朋友请重看几遍曹总的剑指工控modbus详解公开课(请插入链接)。然后我们开始我们的实际测试,为了测试方便,我把两个32位整型地址的输入框,修改成16进制了:

实测满分!

06 结束语2

到最后有朋友可能会问了,我的屏没有网口怎么办?那我只能说一句:


免责申明:本机构号所载文章为本号原创或根据网络搜索编辑整理,文章版权归原作者所有。因转载众多,无法找到真正来源,如标错来源,或对于文中所使用的图片,资料,下载链接中所包含的软件,资料等,如有侵权,请跟我们联系协商或删除,谢谢!


本文为剑指工控原创技术类文章,2021年11月1日首次发表于《剑指工控》公众号。

特别鸣谢本文作者

阮旭芬

广州番禺 昆仑通态 莞福大区客户经理


本账号为《剑指工控》官方知乎账号。剑指工控由一群带有工控情结的技术青年组织在一起,他们都是在工控一线的技术达人,如果你是工控一线的工程师,如果你在日常工控工作当中会遇到种种的技术问题,如果你热爱工控技术和工控生活,欢迎加入我们,随手提出你的技术问题会有技术达人第一时间为你解答。可以分享你的工控喜怒哀乐,会有兄弟们跟你产生共鸣。可以获得最新的工控资讯,指明技术和行业路线,做到未雨绸缪。

欢迎大家关注我们的公众号 剑指工控(JZGKCHINA) ,更多的了解我们。

发布于 2021-11-01 14:52