新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > OPC技术在液位控制中的应用解析

OPC技术在液位控制中的应用解析

作者:时间:2018-08-07来源:网络收藏

引言

本文引用地址:http://www.eepw.com.cn/article/201808/385766.htm

随着智能仪表和现场总线技术越来越多地应用于工业现场,计算机控制系统内部各软硬件间以及不同系统间需要进行大量的信息共享与交互。由于目前企业使用的控制系统往往由不同厂商开发,因此相互间的兼容性差。

虽然采用专用接口或数据库互连可实现部分信息交互,但因实施成本高、系统集成难度大,所以大家一直在探讨新的解决方法,OPC(OLE for process contr01)技术就是其中之一。

OPC规范是由AB、西门子等200多家自动化厂商与微软合作制定的一项工业标准。该标准定义了在微软操作系统下,不同程序、设备之间交换实时数据的方法,能将现场信号按照统一的标准与各厂商提供的软件无缝连接,同时对硬件制造商和软件开发商划分了界限,大大提高了控制系统的互操作性、适应性和可扩展性。

1 基于系统

1.1液位对象

液位对象是常见的工业过程被控对象,复杂液位对象具有时变、非线性、大滞后和不确定性等过程对象的典型特征。

本文提出的液位系统是一种基于的多级网络控制平台,并在其中嵌入了模糊控制算法,控制网络很好地实现了现场操作级、工程师站和专家站的信息共享。同时,通过Access数据库、VB等应用软件将专家知识库、过程模型、仿真图件及实际生产过程无缝地连接起来,组成了一种开放的、即插即用的工业实时监控系统。

本文所用对象为深圳固高公司的三容水箱系统,其双容液位部分结构如图1所示。

图1 液位对象结构

水由水泵从储水箱中抽出后,流经电磁阀、水柱1、手动阀1、水柱2、手动阀2,再回到储水箱。该对象的输入信号为电磁阀电压,输出信号为两水柱水位。各阀门的开度变化均可影响对象的非线性程度。

1.2系统的OPC结构

本文中的系统采用图2所示的网络结构。该系统由现场操作级、工程师站和专家站三级网络组成。

图2 液位控制系统网络结构

1.2.1现场操作级

现场操作级包括液位对象、数据采集卡和控制PC机。主要完成以下功能。

①液位传感器的静态标定与动态校准;

②液位信号的数据采集处理,并通过OPC协议将数据传输给工程师站和专家站;

③液位系统画面监控及控制方式的选择,包括手动与自动控制。

1.2.2工程师站

工程师站由3台控制PC机组成,装有RSView32、VB等高级应用软件,主要完成以下功能。

①集中显示液位控制系统所有可视化信息,包括各个水柱高度、电磁阀状态、控制模式和给定数值等;

②设置系统的初始化状态和复杂控制算法,并可在线修改各控制算法的参数;

③可改变整个系统各控制回路中的手动、自动控制模式;

④生成液位系统各种数据的班报、日报、月报和年报表。

1.2.3专家站

专家站计算机装有BSView32、Matlab、LabVIEW和Access数据库等高级应用程序,主要功能如下。

①管理整个控制系统,对突发错误作出相关处理;

②对系统进行建模仿真及优化计算;

③建立各项指标数据库,将历史数据、操作报告和报警信息存入数据库。

此外,由图2可知,专家站中预留了控制系统升级接口,日后其他开发人员开发不同的控制算法时,可以方便地与原有系统建立数据通信,无须再开发底层数据采集与通信程序,简化了开发步骤。

2 液位控制系统的OPC实现

液位系统的工程师站和专家站均采用了RSView32组态软件。在工程师站中,RSView32通过其自带的VBA程序开发系统进行模糊控制等复杂算法的运算;在专家站中,借助BSView32卓越的管理系统和数据库功能可以管理整个控制系统,建立各项指标数据库,存储历史数据。

由此可见,组态软件RSView32相当于一座中间桥梁,将现场操作级、工程师站和专家站连接了起来。因此,该液位系统需要解决3个核心问题:如何实现现场实时信号的采集、如何在组态软件BSView32中嵌入复杂控制算法以及如何实现工程师站与专家站组态软件之间的数据通信。

2.1数据采集

为了获取实时液位信号,我们采用VB编程操作数据采集卡采集现场数据。

本系统采用的是阿尔泰公司的PCI2006数据采集卡,它自带接受访问的底层驱动。因此,在正式编程之前,需要把开发商提供的模块文件PCI2006.bas加入到VB工程当中。通过VB程序采集数据的步骤和核心代码如下。

2.2组态软件OPC通信方法

现场操作级、工程师站和专家站计算机上都装有BSView32组态软件。该软件支持基于的数据交换。将现场操作级的RSView32设定为服务器,工程师站和专家站的BSView32设定为客户机,则现场数据和控制参数可以在3站之间双向传递。

在OPC服务器设定中,现场操作级计算机取名为Waterl,在RSView32中建立一个新的节点,则各项参数设置如表1所示。

表1 OPC服务器参数表

在客户机设定中,服务器计算机均为Water,则在工程师站和专家站上的RSView32中分别建立一个新的节点,各项参数设置如表2所示。

表2 客户机参数表

需要注意的是,客户机上OPC节点设定中的服务计算机名应当填入OPC服务器的计算机名称,且更新速率应该大于服务器中OPC节点的更新速率。

客户机上ILSView32中的标记需要连接到OPC服务器,并将对应的数据名称设定为来自设备的名称,节点名为Expert,地址填入现场操作站 RSView32中标记的名称。测试证明,ILSView32的OPC服务器最多可以同时连接10台用作OPC客户的RSView32计算机。

2.3组态软件与VB的通信方法

客户机的组态软件通过OPC技术与VB连接起来,实现复杂控制算法。VB在客户机上与组态软件BSView32的通信方法如下。

先在VB工具栏中的“工程引用”项加入Rock.well 0PC Automation 2.0,然后定义变量。

Const ServerName=“RSI.RSView320PCTagServer”

Dim Nodename as String //节点名即计算机名

Dim MyOPCServer as OPCServer //OPC服务器

Dim MyOPCGroup as OPCGmup //OPC组


上一页 1 2 下一页

关键词: OPC技术 液位控制

评论


技术专区

关闭