Page 35 - 网络电信2023年2月刊
P. 35
的配方以格式的文件保存,方便下次的调用与修改。具体的配 图3 绑定列表
置步骤如下:
(1)打开Recipe Manager会出现模块定义、配方定义以及
单元定义三个窗口。
(2)在模块定义中,设定项目名以及所对应的数据类型。
(3)在单元定义中,定义单元中,相应项目所对应的变量名。
(4)在配方定义中,定义配方名,方便调用,可以对该配
方名下的配方进行手动设定,也可以通过Intouch界面中的配方
保存指令进行设定。
配方创建完成后,可以通过Recipe Manager(FileName,
UnitName, RecipeName)指令将改变后的配方保存到CSV文
件中;可以通过Recipe Manager(FileName, UnitName,
RecipeName)将保存的配方传送给相应的变量。
三、报表生成系统
Intouch报表的生成通常采用的方法有以下几种:
(1)通过Wonderware的HMI Report软件,该软件是需要额 在Intouch中,可以通过函数命令来实现与数据库的通信,
外付费的。 由于本文只需要将数据写入数据库即可,所以命令代码比较简
(2)使用Wonderware Intouch中的历史数据导出工具 单:
histdate,将InTouch生成的历史数据导出到CSV文件中,虽然 ResultCode=SQLConnect(ConnectionID,"DSN=MS Access
该文件也可以用Excel打幵,但是很难生成具有特定格式与布局 Database");链接数据库
的文件,灵活性不大。 ResultCode=SQLInsert(ConnectionID,"Recipe","RecipeT
(3)通过第三方软件来实现,如Intouch与数据库通信 ag");插入数据,
后,通过VB或者Labview软件实现数据库与Excel的通信。该方 ResultCode=SQLEnd(ConnectionID);断开链接。
法看是繁琐,可是灵活性很大,且不需要额外的费用。考虑
2.数据库与Labview通信
到VB编程相对复杂,所以本文选择通过图形化语言Labview来 Labview与c语言、JAVE语言一样都是一种程序开发环境,
实现,可分为三个部分:Intouch与数据库的通信、数据库与 所不同的是它采用的是图形方式编程,也就是所谓的G语言编
Labview通信以及Labview与Excel通信。 程,它以图标代替文本,这样就使编程变得更为简单。Labview
1.Intouch与Office Access数据库的通信 的出现至今已有30余年了,可是真正的我国流行还是最近几年
在Office Access中,创建一个名为Recipe的数据库,段名 的事情,目前它以被广发用在了教学、工业控制、工业测试等
是要存储的参数的名称,如进料速度和拉丝速度,如下图所示: 领域 [4-5] 。LabVIEW软件平台具有多种与数据库通信的方法,通
常用到的有四种:
图2 创建数据库Office Access表格
(1)、使用SQL Toolkit工具包实现对数据库的读写,该
工具包是LabVIEW自带的;
(2)、采用ActiveX控件调用Microsoft ADO对象从底层编
程实现;
(3)、利用VC++编写动态DLL链接库函数访问数据库,再
在LabVIEW中调用该DLL实现数据库的读写;
(4)、利用第三方工具包。
以上几种方法,究其本质都是一样的,都是在Microsoft
SQL Server数据库底层驱动程序的基础上,利用ODBC(Open
Database Connectivity)、ADO(ActiveX Data Objects)
或者DAO(Data Access Objects)调用API(Application
ProgrammingInterface)接口函数来操作数据库的。本文采用
的是第四种方法,该方法简单、方便,LabSQL工具包也是免费
的。为了便于软件模块化的设计,同时方便对数据库的底层驱
创建好数据库后,需要设置ODBC数据源,数据源名为MS
动和SQL查询语言不熟悉的用户使用,LabSQL将复杂的底层ADO
Access Database。并需要在Intouch的SQL访问管理器中绑定列 [6-7]
及SQL操作封装成一系列的LabSQL VIs功能函数 。数据库的
表,设定要与数据库通信的变量名以及该变量在数据库中所对应的
读取程序框图如图4所示。
列,如图3所示:
网络电信 二零二三年一、二月 67