昆仑通态触摸屏功能——浮点数显示与科学计数法显示

目录

1、定义数据类型

2、新建脚本

 3、编写脚本

4、效果演示


前言

        工业现场中的设备数据一般会涉及到浮点数、整数等,我们在对这些数据进行监测时,有时候由于数据位数过多,为了能直观迅速的看清数据,因此会采用科学计数法来表示这些数据。昆仑通态触摸屏对数据显示的类型支持浮点数、整数显示以及字符串显示,并没有直接可以科学计数法显示的功能,因此需要编写脚本程序来实现此功能。


说明:触摸屏没有直接实现科学计数法显示的功能,我们可以将数据转化为字符串进行显示,科学计数法一般有两种表示方法

a × 10 b

a × E b

 根据自己需求可选择不同的表示形式进行显示,

思路如下:将浮点数进行计算后转化成字符串进行显示,这样显示的格式就不受影响了。

1、定义数据类型

        定义一个字符串来存放需要表示的数据,演示界面中a为原始数据,str为要显示的科学计数法字符串。

2、新建脚本

(1)打开运行策略>新建策略>循环策略,点击确定,打开新建的策略。

 (2)双击策略行,将循环时间改为100,点击确认

(3)右键选择新建策略行

 (4)脚本文件新建成功,双击脚本程序进行脚本编写

 3、编写脚本

(1)、计算科学计数法中a的值以及位数b的值

  a的值计算方法如下

//lga除以1是为了将小数部分去掉,\为除法运算,除法运算不保留余数,只保存整数位
a/10^(!Log10(a)\1)

        \frac{a}{10^{\frac{\lg a}{1}}}     

   b的值计算如下

//在下脚本中\为除法运算,除法运算不保留余数
!Log10(a)\1

(2)格式转化

将a的值格式化为浮点数,此脚本保证了所有的数据显示位数,具体使用方法请自行查询

!Format(a/10^(!Log10(a)\1),"0.00")

 此函数使用方法

将b的值转化为字符串 

!str((!Log10(a)\1))

此函数使用方法 

 (3)、设定显示格式

//显示的结果为X2=a*Eb,将E更改为10显示结果为X2=a*10b
str=!Format(a/10^(!Log10(a)\1),"0.00")+"E"+!str((!Log10(a)\1))

4、效果演示

(1)使用模拟功能进行效果演示,点击工程下载>启动运行

(2)大于1的浮点数效果如下

(3)小于1的显示如下,出现这种情况是因为小于1的数进行除以1的除法运算时结果为0,如果想要避免这种情况,可以将脚本进行改进 

(4)新脚本程序如下

(5)演示结果如下

仅供参考,如有问题欢迎指出,所写内容只为自己参考学习 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值