如何将一个四字节的数 转换成一个浮点数

我现在碰到一个问题 用S71200读国网协议的电表,电表的协议时DLT645-1997 这种仪表收发数据都是按字节形式,而且每个数据不是连续的,比如对于一个数据 13589.20  是这样的我现在通过PLC读取 DB1.DBB1 放的是20  DB1.DBB2放的是 89  DB1.DBB3放的是 35  DB1.DBB4 放的是01现在如何把他们装到一个浮点数中,这样我做上位机时可以剩很多变量。如我把数放到 DB2.DBD0 13589.20 。因为不是MODBUS-RTU协议,所以不能直接读浮点数,而且数据是不连续的,DLT645-1997 这种协议的数据容器全部是字节。请用大家告诉我如何实现

最佳答案

你这应该是字符串,先转换成实数数值,然后db1.dbb4*10000.0+db1.dbb3*100.0+db1.dbb2+db1.dbb1/100.0就是你要的实数。

提问者对于答案的评价:
谢谢 我觉得我这个问题太2B了,我的本意是如何将 DB1.DBB0 DB1.DBB1 DB1.DBB2 DB1.DBB3  这四个字节转换完还放到 DB1.DBD0 太傻了这是不可能的。明白了 想多了  谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc204468.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月1日 下午7:55
下一篇 2017年11月1日 下午7:55

相关推荐

  • s71200 CANopen

    西 门子有 CANopen  库指令 吗?   现在要CM CANopen 编程…

    SIMATIC S7-1200 2017年6月11日
  • 无法建立到目标模块的链接

    连接以太网模块,用无线路由器连接或者用网线直接连接PLC,PLC型号为1215C。用ping功能ping PLC的IP地址能PING通。但是在软件上则不能寻找到PLC。 …

    2017年8月24日
  • 安装两个博途V14,V15可以吗?

    因有不同的用户程序,已经安装了博途V14,再安装V15.1,不用虚拟机可以同时安装两个V14,V15吗? 最佳答案 可以同时安装《STEP7 V14 安装的必要…

    2021年7月5日
  • TIA博途安装问题

    安装完博途,放入一个别人做好的项目出现如下,该怎么处理需要下载什么地址在哪,还有是否可以各个新的地址 图片说明:    最佳答案 原因是你没有安装WINCC&n…

    2017年8月24日
  • S7-1200如何清除密码?

    比如现在人家做了一个加了密码的1200程序,我现在想把PLC里的程序和密码一起清除掉,在S7-200里直接在工具里有个清除密码和程序按扭,但是在S7-1200里怎么清除啊,我看到要…

    SIMATIC S7-1200 2017年11月19日
  • 1200通讯能带几个伺服?

    PN口通讯能带几个伺服?4.1带四个?4.2以及以后得呢? 问题补充:你说的带16个的控制方式是怎么个方式?比如说其他是脉冲放向,有的是prifidriver, 有么有资…

    SIMATIC S7-1200 2017年6月5日
  • s7-1200中循环中断参数 STATUS怎么查看?

    s7-1200中循环中断参数 STATUS怎么查看?新人想知道如何对应说明查看参数 STATUS的含义,谢谢~ 图片说明:    &nbsp…

    2017年6月29日
  • S71200中的ASC转换

    为什么S71200中的ATH指令将ASC转换16进制显示的却不是ASC码表中的数值,有人用过吗?比如1转换过去怎样才能显示31这样的 最佳答案 1、我理解你需要的是S_CONV指令…

    2017年8月26日
  • 博图V12

    在 博图V12 中,左HMI画面时,库里的电机能做90度旋转吗?我想把水平电机做成垂直放的电机,,不会改,谢谢 最佳答案 因电脑配置太低,博图V12 …

    2017年11月4日
  • S7-1200报错,怎么解决

    在长治一个项目中,使用到S7-1200共3台,运行过程中均有报错,亮红灯的现象,监控为固件错误,断电重启后,又正常,系统拖动深井泵,这样致使水泵,频繁启停,以致已有一台水泵损坏,用…

    SIMATIC S7-1200 2017年11月18日