登录
首页 PLC论坛 施耐德电气PLC
回帖 发帖
正文

主题:∞光分享∞053:十六进制转换为单精度浮点数的功能块

点击:806 回复:4

此贴内容来自<120例>1.4.4章节
同自定义功能块,需要手动添加,添加方法见 光分享 50
在现场应用中,会经常用到很多第三方仪表,比如电磁流量计等.而其数据的格式为单精度浮点数
而其通讯回传数据是十六进制数据,因此,在接收到仪表的回传数据之后需要将十六进制数据
转换为单精度浮点数的格式,在常规PLC指令中,是无法实现这个功能的,
以下是根据这个功能块进行编写的一个库文件,在现场使用时,可以直接进行调用.
附件 1.jpg
输入:dwhex 十六进制数据;
输出:rsinglefloating:转换后的浮点数.
下面以国产某品牌电磁流量计为例,讲解如何使用此功能块.
如下:
 例:读取流量计的测试值.
 请求数据:01 04 30 01 00 03 EE CB
 响应数据:01 04 30 01 00 03 00 12
          55 30 15 05 03 12
          14 CA 61 41
          45 87 D6 47
          02 00 C8 42
          3D FC
响应数据分析:
  55 30 15 05 03 12:读取的当前时间 2012年3月5日 15:30:55;
  14 CA 61 41 (转换时需要从右向左开始,即41 61 CA 14):瞬时流量=13.1118354m3/h;
  45 87 D6 47 (转换时需要从右向左开始,即47 D6 87 45):正累计流量=109838.5390625m3;
  02 00 C8 42 (转换时需要从右向左开始,即42 C8 00 02):反向累计流量=100.0000152m3;
程序如下如
附件 2.jpg
本例库文件
附件:
[本地下载]
19-11-19 18:50
这个能够直接转换非常方便,也很实用。
19-11-23 09:36
实用教程,很方便
19-11-23 09:51
我觉得somachine里面有很多很方便的功能块
有没有什么文件是专门介绍somachine里可以用的功能块的?
我记得还有twido开头的一系列功能块
19-11-23 21:37
抄书..我也没用过这个例程
19-11-23 21:39

工控新闻

更多新闻资讯