3 面向过程控制的动态参数数据交换程序设计
为方便讨论问题、现举例说明。根据某生产自动化改造工程要求,需要对系统进行组态监控操作平台设计,采用组态软件ifix2.2和windows应用软件vb6.0,开发并实现基于dde机制的进程间数据交换,满足工业控制网scada工控计算机内部信息交换需要,为各应用程序通过共享内存交换信息,实现控制网络与信息网络的集成,并为进一步进行windows程序间的数据交换开发提供有借鉴意义的参考[3]。控制网络与信息网络的主要集成技术如图2所示。
3.1 dde信息交换的网络集成方法
通过共享存储器的dde技术为实现控制网络与信息网络的集成提供了技术支持,有很强的实时性。工程设计以工控计算机ipc作为通信处理机,该ipc机同时也是2个网络的工作站,跨接控制网络和信息网络,在沟通2个网络中起桥梁作用。通信处理机ipc用dde方法实现2个网络间各站点的通信,是整个集成网络的关键,它能实现以下功能:
(1) 搜集控制网络上各站点的实时数据信息,写入信息网络的数据库,以便信息网络用户浏览、查询;
(2) 将信息网络用户的控制信息及时下达至控制网络的指定工作站点。
基于通信处理机dde信息交换的网络集成方法如图3所示。
3.2 组态软件ifix与vb之间的dde实现
现场总线控制系统采用intellution公司开发的组态软件ifix2.2作为scada监控操作平台。ifix是一种工业自动化组态软件,它采用图形用户界面,提供了监控和数据采集功能,为操作人员和开发人员提供了良好的监控环境,可以实现对象自由组态及动态属性的在线配置、现场动态数据采集、数据处理、状态监控、报警、参数设置、报表生成、数据存储、接口等基本功能和网络管理功能。在各种操作系统上的版本共享相同的内核,允许在同一网络结构中运行建立在不同操作系统上的ifix版本。ifix包含大量图形工具,使用户能够快速地开发系统,而且它提供了强大的功能,包括实时过程的监视和监督控制、报警和报警管理、历史趋势,统计过程控制、基于用户的安全系统、方便的系统扩展、网络功能等。而vb6.0是微软公司推出的一个流行且强大的快速开发工具,在开发scada系统时,利用dde技术把两种工具有效的结合起来,更能发挥它们各自的优势,可以获取令人满意的结果。
系统分为监控子系统、数据采集子系统和数据交换子系统。以台湾磐仪工控机ipc1作为scada监控硬件平台。监控计算机通过挂在cc-link总线上的远程i/o模块和数据采集模块,即采集子系统与现场的监控仪表相联系。采集子系统负责将现场各智能仪表采集的数据采集上来;监控系统通过dde方式与采集子系统相联系,将现场的各种运行参数实时显示出来;监控系统根据需要给出控制命令,由采集子系统传达给挂在cc-link总线上的cc-link主控plc,plc负责现场各种设备的控制。数据交换子系统通过dde方式与监控子系统系统交换数据,将现场实时信息经由控制网络传达到信息网络。某车间监控层过程实时数据流向如图4所示。#p#分页标题#e#
ifix软件提供了强有力的dde客户和服务器支持。dde客户支持允许把来自其他应用。程序的信息传递到ifix软件中,用于数据库和画面;服务器支持允许把ifix软件的过程信息传递到其他应用程序中去处理。
(1) dde客户支持
ifix软件dde客户支持允许读写dde地址,利用ddei/o驱动器和块配置的dde地址,可以在过程数据库中插入来自其他应用程序、dde驱动程序或另一个scada节点的数据信息。
数据库中的这些信息可以按照以下方式使用:在链中传送数据、对dde数据进行报警和用dde数据制作趋势曲线。
dde客户支持允许在 ifix画面中直接使用dde,而不使用数据库中的点。即dde可以直接应用于数据链接、动态特性(前景颜色、边界颜色、x和y坐标、水平或垂直填充、可见性等)设置、x/y绘图、棒状图和命令语言。ifix作为客户dde的地址语法为:=application|topic|item例如现场设备点do1的i/o地址=vbserver|form1|text1,其中vbserver为vb开发的应用程序名,form1为主题名,text1为项目名。
(2) dde服务器支持
ifix软件作为服务器允许将它的实时数据或历史数据传送到其他dde客户应用程序中。使用ifix
dde服务器功能,需要首先启动dde服务器程序,即ifix软件的安装目录 ifix32下的dmdde.exe。ifix
作为服务器提供的dde编址语法如表1所示。
3.3 vb的dde链接属性
vb作为windows环境下非常流行的快速开发工具,与windows操作系统同出于微软一家,它理所当然地支持windows下的dde技术。用vb可以方便快捷地开发出dde客户或服务器的应用程序。
(1) vb的dde属性、dde事件和dde方法
vb中支持dde的对象有5类:窗体(form)、多文档窗体(mdiform)、标签(label)、文本框(textbox)和图片框(picturebox)。其中,窗体和多文档窗体可作为dde服务器即数据的提供者,label、textbox和picturebox等可以作为dde服务器即数据的接收者。vb为支持dde给发送端对象提供了2种dde属性和4种dde事件,给接收端对象提供了4种dde属性、4种dde事件和4种dde方法(见表2)。#p#分页标题#e#
(2) 利用vb开发dde客户/服务器应用程序
在利用vb开发dde客户/服务器应用程序中,欲建立dde链接,完全依赖对象的dde属性设置。vb分别作为dde客户和dde服务器时,dde属性的不同设置(见表3)。
(3) 动态数据交换的过程
dde管理器作为服务端通过驱动程序从plc的内存中采集到数据,与组态进行数据交换后又通过驱动程序写入plc的内存区,这一过程的示意图如图5所示。
(4) 动态数据交换的建立过程
dde工程的建立主要包括plc细节的描述、网络的设置、数据点的选取,其中主要是进行设备的配置和点的设置。接下来建立需要监控的点,并对其进行编辑,包括:定义监控点的名字、plc的类型、监控点在plc内存中的位置、数据的类型等。可根据plc机架上输入输出单元的点数来定义输入字和输出字,同时定义手动/自动控制标志位。
3.4 vb作为dde服务器、ifix 作为dde客户的实际链接
有些参数需要通过vb开发的应用程序vbserver把从远程现场采集的实时数据传输到ifix实现显示或制作趋势图,如油漆烘间的实测温度、纯水进口压力、循环水过滤器压力、颜料的实测浓度、电泳循环泵的转速和胶炉实测温度、一次抽风系统增压机的进口和出口压力、空气预热器蒸汽温度等参数。
在vbserver中,把采集到的实时数据赋给textbox(文本框),并把ifix中各点的dde地址的项目名设为对应的textbox(文本框)。如油漆烘间的实测温度,在ifix中点名为ai_oven_tem,其dde地址vbserver|formmain|txtoventem(其中vbserver是应用程序名,formmain是作为主题的窗体名,txtoventem是作为项目的文本框名称)。此时,ifix为客户,vb应用程序为服务器。
3.5 vb作为dde客户与dde服务器ifix的实际链接
通常情况下,现场的检测信号和运动参数的流向是从ifix传输到vb开发的应用程序vbsrvapp或其它的windows应用程序,再由windows应用程序或vbsrvapp以命令形式经ifix下达给远程现场的智能仪表或plc等远程的现场设备,如油漆烘间和胶炉各自的设定温度、纯水进口的设定压力、颜料的设定浓度等参数。
在vbserver中,把各个设定参数相应的textbox(文本框)的linkitem属性设置为对应的ifix的点,然后把从ifix的点传输到对应textbox(文本框)中的内容下达给远程现场设备。此时,vb应用程序为vbserver客户,ifix为服务器。#p#分页标题#e#
4 结束语
组态软件在工控dcada系统中处于重要位置,实现它与第三方软件的通信是系统成败的关键。文章中讨论的问题,是某自动化生产线改造中动态数据交换技术应用的总结,该生产线现运行良好,说明该设计是可行和有效的。
转载请注明出处。