一、创作背景
前一段时间,有个做工控自动化行业朋友有个问题想让我解决一下,就是要计算酒的体积,他说酒精在不同酒精度数,不同温度时对应的密度不同,计算酒的体积数据无法固定,他们将酒不同度数例如42°、55°、65°的酒在0-80度环境温度进行切片得出了很多酒精密度,数据有一两万条,现在想获取环境温度后,知道当前酒度数,想计算体积,但是PLC无法计算如此大量数据,一条一条敲代码也不现实,想让我解决一下。
二、想法
我在了解后问清楚用的触摸屏为MCGS。我就想到可以用触摸屏进行数据处理,plc只需读取当前酒的密度数据即可计算。mcgs屏幕为tpc7022ni物联网屏幕。
三、编程
1、下载好编程软件mcgs pro 3.3.6.6353 SP1.3,选择好触摸屏型号,新建一个用户窗口“窗口0”,在实时数据里面新建4个变量,查询数据-浮点数、查询结果-浮点数、查询按钮-整数、数据查询错误码-整数,如下图
2、数据处理
将想要查询的数据进行用表格建立,我用的wps,建立一个excel,将数据温度填写到第一列,将对应的酒密度填写到第二列,我随便填写些数据进行测试,如图
将填写好的数据进行另存为txt格式,方便触摸屏脚本处理,另存为:查表数据.txt,如下图
另存好后我们查看一下txt文本内容,会是以下固定格式:第一列温度数据,两个空格后,最后一列为密度数据,这样数据我们就处理好了。
因为我没有触摸屏实物,只能用触摸屏的模拟器进行模拟,触摸屏模拟时候U盘路径为软件安装的McgsPro\Program\export文件夹下,因为我安装的是D盘,所以文件路径D:\McgsPro\Program\export,将转换好的TXT文件复制到U盘路径下
3、触摸屏编程:数据导入到触摸屏,和数据导出到U盘
为了以后方便数据处理,可以用U盘将数据导入到mcgs触摸屏中,和导出数据到U盘进行更改数据,具体操作如下
在触摸屏窗口0中建立两个按钮,分别是导入数据按钮和导出数据到U盘按钮。
导入导出数据我们用脚本进行编写,用到脚本:!FileCopystr(Source,strTarget),具体脚本说明如下
!FileCopy(strSource,strTarget)
函数意义: 将路径为strSource的文件复制到路径为strTarget的文件(支持文件夹拷贝)
参 数: strSource,字符串,输入,源文件路径
strTarget,字符串,输入,目标文件路径
返 回 值: 整数
= 0,成功
< 0,失败
失败返回值:
= -201,目标路径与源路径相同
= -203,读写失败
= -205,磁盘空间不足
= -206,源文件或路径不存在
= -208,创建文件夹失败
= -209,输入路径错误
= -220,目标路径中存在与待创建文件夹同名的文件
= -227,源路径为文件,目标路径下存在同名的文件夹
= -228,源路径为文件夹,目标路径为文件或目标路径下存在同名的文件
= -229,目标路径为源路径的子文件夹
= -1021,U盘未插入
实