1 引言
随着计算机网络技术、控制技术、通信技术的发展,工业控制信息系统集成踏上了工业控制历史的舞台(信息集成即将控制系统和企业的上层管理系统结合到一起)。但是,随着现代工业的发展,工业现场可以采用的工业控制设备种类越来越丰富,包括分布式控制系统(DCS)、可编程逻辑控制器(PLC)、工业控制计算机、智能调节器等。如何实现工业控制计算机环境中的各个技术子系统之间信息的沟通和传递成为信息系统集成亟待解决的首要问题,这就需要一种能够有效进行数据访问和管理的开放标准,OPC正是在这样的背景下产生与发展起来。
2 OPC技术简介
OPC是为了解决应用软件和各种设备驱动程序的通讯而产生的一项工业技术规范和标准,它是Object Linking and Embedding(OLE)for Process Control的缩写,是微软公司的对象链接和嵌入技术在过程控制方面的应用。它采用客户/服务器体系,基于Microsoft的OLE/COM和DCOM(Distributed Component Object Model)技术,为硬件厂商和软件开发者提供了一套适合过程控制应用,支持过程数据访问、报警、事件与历史数据访问等功能的接口、便于不同供应商的软硬件实现“即插即用”的连接与系统集成。如图1所示。
2.1 OPC对象与接口
OPC规范中为OPC服务器规定了两套接口(如图2所示):定制接口和自动化接口。定制接口是OPC服务器必须提供的,而自动化接口是可选的。定制接口只支持用C/C++编写的客户应用,自动化接口则支持更上层的应用,如VB、VBA等应用程序。

按照功能的不同,OPC基金会发布的OPC规范说明的每套接口分为3类接口:
(1) OPC数据访问接口(OPC Data Access Interface,OPC DA):OPC DA中主要包括3类对象,分别是OPC Server,OPC Group,OPC Item。
(2) OPC报警和事件接口(OPC Alarm & Event Access Interface,OPC AE):OPC AE主要负责让服务器在特定事件和报警条件发生时及时通知客户,主要的对象有:OPC EventServer,OPC EventSubscripti和OPC EventAreaBrowser对象。
(3) OPC历史数据访问接口(OPC Historical Data AccessInterface,OPC HAD):历史数据服务器可以向需要历史数据的客户提供有关的历史信息源。
OPC标准规定了基本OPC对象有三个:OPC Server、OPC Group和OPC Item。其中OPC Server和OPC Group接口图如
3、图4所示。

图3 OPC服务器对象

图4 OPC组对象
2.2 OPC采集数据的方式
OPC客户获得的数据来自于OPC服务器缓存区,也可以来自于现场设备;从设备读取数据速度比缓存区慢一些,一般只在故障诊断或极特殊的情况下才会从设备读取数据。同步读取、数据更新时,数据可以来自OPC服务器缓存区或现场设备;数据订阅、异步读取数据直接从现场设备读取。
OPC客户采集数据的方式有如下几种。
(1) 同步读写数据 OPC服务器按照OPC应用程序的要求,把得到的数据结果作为参数返回给OPC应用程序,在得到结果之前OPC应用程序一直处于等待状态。
(2) 异步读写数据 OPC应用程序向OPC服务器发出请求后,可以不等待返回的结果处理其它事务。当OPC服务器完成数据访问时,触发OPC应用程序的异步访问完成事件,将数据访问结果传送给OPC应用程序。读写过程如图5所示。

图5 异步数据访问处理
(3) 数据订阅 这种方式OPC服务器处于主动状态,服务器按一定的更新周期更新OPC服务器的数据缓冲器的数据,如果数据与前次相比变化幅度大于允许变化幅度(也称为死区,DeadBand),则自动通过一个回调(IadivsSink::OndataChange或IOPCDataCallback::OnDataChange)向客户发送数据。读写过程如图6所示。

图6 订阅方式数据采集
(4) 数据更新 OPC客户强制OPC服务器读取一个有效组所有活动的Item,并通过一个回调向客户发送数据。数据更新机能只对有效组才可用。
3 OPC技术在某钢厂改造工程中的应用
在传统的钢厂监控系统中,要监测的设备种类很多,而且现场总线的应用也不一样,进行工程改造的目的就是为了将这些分散的子系统有效地集成起来,同时,扩大生产规模,增加一些控制设备。图7为基于OPC的过程控制系统结构图。

图7 基于OPC的过程控制系统结构
传统的过程控制系统是一对一的系统,任何一种HMI等上位监控软件或其它应用软件在使用某种硬件设备时都需要开发专用的驱动程序。新增应用软件或者硬件设备带来的只会是驱动程序种类的迅速增长。基于OPC技术的过程控制系统则可以完美地解决传统方式中的上述问题。任何一种设备只需要提供一种驱动就可以供任何软件系统使用,轻松实现系统的扩展。从图7中可以看出,OPC解决了现场总线系统中异构网段之间数据交换的问题,还可作为访问专有数据库的中间件。OPC便于集成不同的数据,为控制系统向管理系统升级提供了方便。而且,OPC使控制软件能够与硬件分别设计、生产和发展,并有利于独立的第三方软件供应商产生与发展,从而形成新的社会分工,有更多的竞争机制,为社会提供更多更好的产品。
4 结语
采用基于COM/DCOM技术的OPC规范,能提高计算机控制软件系统的开放性能,各应用程序之间通过标准的OPC接口进行访问控制。OPC技术改变了原有的控制系统模式,给国内系统生产厂商提出了一个发展的机遇和挑战,符合OPC规范的软、硬件也已被广泛应用,给工业自动化领域带来了勃勃生机。
|