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
   30   31   32   33   34   35   36   37   38   39   40