OPC(OLE for Proe ss Control) 产生的背景
随着现场总线的发展,SCADA 系统,即数据采集与监视控制系统,已逐渐完成由集中式向分布式的转换。SCADA 系统大多数采用Client/ Server 模型,因此SCADA监控系统、MMI(人机接口) 等应用程序式通过驱动程序与现场设备通信的。驱动程序一般是动态链接库 (DLL) ,不同的厂商和不同的设备需要不同的驱动程序,同一设备为适应不同的应用程序可能也需要多种驱动程序,无论其内部结构如何,软件销售商正花费大量的时间和精力来跟踪新产品并开发新的驱动程序。这样就大大提高了SCADA 软件包的总成本,并且占用那些原来可以用来增强系统性能的资源。同时,DLL 不允许应用程序同时对同一设备进行访问。当选择新的SCADA系统、更新硬件时,就面临着硬件、驱动程序、SCADA 系统之间的兼容问题以及一些棘手的选择。驱动程序作为一种中间软件,它的标准化、兼容性在此时起着关键的作用。为此,一些与微软公司合作的自动化硬件和软件供应商联合定义了一种解决这些问题的新标准,即OPC。从更广泛的意义上看,在过程工业新的信息体系结构中,从现场智能设备管理层、过程控制网络层到管理层都包含了各种信息。在现场管理级,现场设备的智能化提供了丰富的现场信息,所有这些信息都必须以统一的方式提供给用户和各级应用程序。在过程管理级, SCADA 系统必须以统一的方式为操作员和工程师等决策者提供数据。在工厂管理级,采集过程信息,集成生产管理系统,必须为客户应用程序提供信息。因此,为了实现信息集成,关键是制定一种集中于数据访问而不是数据类型的开放的、有效的通信标准。定义OPC 的目的就是为应用程序访问工厂前台提供共同的方法,允许兼容的应用程序无缝的访问在生产环境中的数据。
OPC 技术的特点及其优势
OPC 是以微软公司的OLE/ COM和DCOM机制作为应用程序的通信标准,采用客户- 服务器结构。OPC 作为硬件和软件之间的一个中间接口,使不同的客户软件能够访问任意的数据源。开发商可以开发一个高度优化的、可重用的OPC 服务器访问底层的硬件,并将数据以OPC 接口方式提供任何的具有OPC 接口的客户端软件。
单从驱动程序来看,不像原来的SCADA 软件销售商为每一个新的协议开发客户驱动程序,现在的工作在软件销售商和硬件销售商之间做了划分。OPC 规范要求硬件销售商提供他们所发布的每一种新设备和协议的OPC 服务器, 为设备提供基本的协议接口, 并且具有OLE/ COM连接,一般用来完成数据采集、通信规约等预处理功能的前置处理部分设计成OPC 服务器。这样任何符合OPC 的客户都能以标准的方式访问服务器。
OPC规范要求每一个SCADA 软件供应商提供符合OPC 标准的客户,客户负责创建服务器的对象以及访问OPC 服务器暴露给客户的标准接口函数进行数据访问。这样不管现场设备以何种形式存在,客户都以统一的方式去访问,从而实现系统的开放性,易于实现与其他系统的接口。OPC 提供了OPC 规范两套接口方案,即COM接口和自动化。COM 接口效率高,通过该接口,客户能够发挥OPC 服务器的最佳性能,采用C ++ 语言的客户一般采用COM接口方案;自动化接口使解释性语言和宏语言访问OPC 服务器成为可能,采用VB 语言的客户一般采用自动化接口。然而自动化客户运行时需进行类型检查,这一点则大大牺牲了程序的运行速度,但却可以简化客户应用程序的实现。
OPC服务器由三类对象组成: 服务器( Server) 、组 (Group) 、数据项( Item) 。服务器对象拥有服务器的所有信息,同时也是组对象的容器。组对象拥有本组的所有信息,同时包容并在逻辑上组织OPC 数据项。OPC 组对象(Group) 提供了客户组织数据的一种方法。客户可进行读写,还可设置客户端的数据更新速率。当服务器缓冲区内数据发生改变时,OPC 将向客户发出通知,客户得到通知后再进行必要的处理,而无须浪费大量的时间进行查询。OPC 数据项是服务器端定义的对象,通常指向设备的一个寄存器单元。OPC 客户对设备寄存器的操作都是通过其数据项来完成的,通过定义数据项,OPC规范尽可能地隐藏了设备的特殊信息,也使OPC 服务器的通用性大大增强。OPC 数据项并不提供对外接口,客不能直接进行操作,所有操作都是通过组对象进行的。
OPC技术对工业控制系统影响和应用是基础性和革命性的, 在企业的信息集成,包括现场设备与监控系统之间、监控系统内部各组件之间、监控系统与企业管理系统之间、以及监控系统与Internet 之间的信息集成, OPC 作为连接件,按一套标准的COM对象、方法和属性,提供了方便的信息流通和交换。无论是管理系统还是控制系统,无论是PLC 上还是DCS ,或者是FCS ,都可以通过OPC 快速可靠地彼此交换信息。换句话说,OPC 是整个企业网络的数据接口规范,所以,OPC 提升了控制系统的功能,增强了网络的功能,提高了企业管理的水平。
由于OPC 技术的出现,使得监控软件不再依赖于具体的控制设备,因为不再需要考虑底层硬件的通信接口,设计一套监控软件也变得容易多了。这就使得众多的中小公司也能进入这个领域,推出单独的监控软件,让用户有更多地选择,而且对于监控软件,支持OPC 已经是一项基本的要求。当前市场上的几十种组态软件都是支持OPC 功能的,比如Intellutinon 公司的IFix ,国内的MCGS 等监控软件。
IFix 和MCGS 都是既可以作OPC 服务器, 又能作OPC 客户端的监控软件。IFix 性能稳定,对设备数据采集、实时数据处理、历史数据统计等有着强大丰富的功能,但价格昂贵,对系统要求高;而MCGS 功能简单而完全,易于操作,价格便宜,中文界面更适合于普遍的工业网的操作监视人员。所以实现两者的数据共享后,可以在工业局域网的管理级使用IFix 来实现完善的功能,在过程级使用MCGS 来简化操作,降低系统的使用资源,而且能节约成本。
1 目前已经开发的DCS系统接口如下:
1)Yokogawa:CENTUM B、CENTUM V、CENTUM Uxl、CENTUM XL、CENTUM CS、CS1000和CS3000;
2)Honeywell:S9000、TDC3000(CM50)、TDC3000(US)、TDC3000X(UxS)、TDC3000X(AxM)、PlantScape、TPS(GUS)、TPS(APP)和PKS;
3)Foxboro:I/A S;
4)ABB:MOD300、ADVANT500、AC800M和AC800F
5)Bailey:N-90和INFI-90
6)MOORE:MICRO II、APACS For Dos、APACS For Windows3.2、APACS For Windows NT和APACS+ R4;
7)Fisher-Rosemount:System III、PROVOX、Micro PROVOX和Delta V;
8)WestHouse:WDPF、MAX1000和EDPF-NT;
9)Hollysys:HS2000、FOCS、MACS和SmartPro;
10)Supcon:SupCon JX300和SupCon JX300X;
11)XinHua:XDPS-400
2 目前已经开发的SCADA系统上位机软件接口如下:
Wonderware Intouch
GE iFix
GE Cimplicity
SIEMENS WinCC
CIT Citect
RockWare RSView32
AisaControl KingView
3 变电站自动化&电网监控&电力综合自动化等系统接口
南瑞 NT2000、ISA300、RCS-9000和CAS2000等
南自 PS 6000
深中电 TranSys-200
北京四方 CSC2000
许继 XWGK-3100
ABB MicroSCADA
Solar TT4000
4 此外,还包括各种PLC、智能仪表等工业设备的接口