基于OPC的实时数据获取技术
- 格式:doc
- 大小:427.50 KB
- 文档页数:7
OPC(OLE for process control)作为标准软件接口,可以使各个生产商的设备和应用程序就能以统一的方式连接起来。
WinCC 既可以用作OPC 服务器提供数据,又可以作为OPC 客户机访问其他OPC 服务器中的数据。
WinCC集成的OPC服务器使得过程数据可由其它应用程序(OPC 客户机)访问。
在Excel中可以通过VBA脚本建立OPC 客户端,并通过OPC接口读取WinCC 中的数据,并将修改的数据写入WinCC。
1 OPC规范及功能OPC是一种一致的独立于制造商的软件接口。
OPC 接口基于Microsoft Windows 的COM(组件对象模型)和DCOM(分布式组件对象模型)技术。
另一方面,OPC XML 则基于Internet 标准XML、SOAP 和HTTP。
> COMCOM 是位于同一计算机上且属于不同程序的对象之间进行通讯时采用的标准协议。
服务端是提供服务的对象,比如提供数据。
客户端是使用由服务端提供的服务的应用程序。
> DCOMDCOM 代表COM 功能的扩展,从而允许对远程计算机上的对象的访问。
该接口允许在企业、管理办公室和生产的应用程序之间进行标准化的数据交换。
以前,访问过程数据的应用程序受限于通讯网络的访问协议。
使用OPC 标准软件接口,各个生产商的设备和应用程序就能以一致的方式连接起来。
OPC 客户端是访问过程数据、消息和OPC 服务端归档历史数据的应用程序。
访问需要通过OPC 软件接口。
OPC 服务端是一个程序,它为不同制造商的应用程序提供一个标准的软件接口。
OPC 服务端是在处理过程数据的应用程序、各种网络协议和用于访问这些数据的接口之间的中间层。
只有当设备的操作系统是基于Windows COM 和DCOM 技术时,才能使用OPC 软件接口进行数据交换。
目前,Windows 2000、Windows XP、Windows 2003 Server 和Windows VISTA 具有这些软件接口。
OPC技术OPC(OLE for Process Control, 用于过程控制的OLE)是一个工业标准,管理这个标准国际组织是OPC基金会,OPC基金会现有会员已超过220家。
遍布全球,包括世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司。
基于微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)技术。
OPC包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。
OPC全称是OLE for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。
在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。
由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。
通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。
在这种情况下,OPC标准应运而生。
OPC标准以微软公司的OLE技术为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是OLE 2技术,OLE 标准允许多台微机之间交换文档、图形等对象。
COM是Component Object Model的缩写,是所有OLE机制的基础。
COM是一种为了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。
这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。
例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk或其它语言编写对象访问程序。
在Windows NT4.0操作系统下,COM规范扩展到可访问本机以外的其它对象,一个应用程序所使用的对象可分布在网络上,COM的这个扩展被称为DCOM(Distributed COM)。
基于OPC的实时数据获取技术1 引言组态软件通过I/O驱动程序从现场I/O设备获得实时数据,对数据进行必要的处理后,一方面以图形方式直观地显示在计算机屏幕上,另一方面按照组态要求和操作人员的指令将控制数据送给I/O设备,对执行机构实施控制或调整控制参数[1,2]。
目前,企业办公自动化已经基本普及,Windows操作平台以及微软的COM/DCOM/OLE 技术已成为应用软件之间通信的事实上的标准。
在生产控制领域,DCS、SCADA、PLC等技术已经成熟,各种现场总线标准正在迅速推广。
但是,管控一体化存在一个严重的制约因素,即现场设备与应用软件之间难以实现开放的、无缝隙的连接。
在生产现场,存在着大量控制器和现场数字设备,这些设备来自不同的制造商,遵从不同的通讯标准,只能组成各自的控制系统,与特定的应用软件通讯。
虽然某些网络之间可通过协议转换实现互联,但并不具有普遍性。
传统的过程控制系统中,为使每一个应用程序与设备交换信息,必须为每个设备提供相应的驱动程序,在数据源与客户程序之间分别建立一对一的驱动连接,如图1所示。
图1 传统的应用软件与数据源接口方式由于设备多样性和驱动程序不兼容性,这种方式存在以下缺陷:(1) 应用程序开发者必须花费大量精力开发各种设备的驱动接口,计算机硬件厂家要为不同的应用软件编写不同的驱动程序,这种程序可复用程度低,不符合软件工程的发展趋势,典型的高级语言软件开发过程约有25~30%的时间用于编写这类接口,使开发时间和费用大大增加;(2) 设备不具有互操作性,使用中硬件的升级、变更和增加都可能造成驱动程序的变化,从而在维护过程中引起二次投资;(3) 由于每一驱动软件有各自的驱动程序,当多个应用软件读取同一数据源时,经常生冲突;(4) 设备厂商虽然可能提供驱动程序,但与用户开发应用软件往往不一致,限制了用户对软件和设备的自由选择。
可见,在现场设备与应用软件之间提供标准的接口,实现开放的、无缝隙的连接,是顺利推进企业管控一体化的关键。
OPC方案简介OPC(OLE for Process Control,过程控制的OLE)是工业自动化领域常用的通信协议,用于实现不同设备间的数据交换和控制。
本文档将介绍OPC的基本概念、工作原理和应用方案。
概述OPC是一种基于COM(Component Object Model,组件对象模型)的开放标准,提供了统一的接口和协议,使得不同供应商的设备和软件能够无缝地进行通信。
它的目的是简化工业自动化领域中数据交换和控制的复杂性,实现设备的互联互通。
OPC通常涉及两个角色:OPC客户端和OPC服务器。
OPC客户端与上层应用程序交互,向OPC服务器请求数据、发送控制命令;OPC服务器负责与设备通信,接收请求并返回数据。
OPC基本概念以下是OPC中的一些基本概念:OPC DAOPC DA(Data Access)是OPC的核心组件,用于实现数据的读取和写入。
它基于COM技术,提供了标准的接口用于获取和设置设备数据。
数据可以是实时数据、历史数据或计算得出的数据。
OPC HDAOPC HDA(Historical Data Access)扩展了OPC DA的功能,支持对历史数据的访问。
它包括数据检索、存档和查询等功能,使得用户能够方便地获取和分析历史数据。
OPC AEOPC AE(Alarm & Event)用于处理设备的报警和事件信息。
它提供了标准的接口和规范,使得用户能够方便地监控、记录和处理设备产生的报警和事件。
OPC UAOPC UA(Unified Architecture)是OPC的下一代标准,采用了面向服务的架构和现代化的通信机制,更加安全、可靠和易于使用。
它支持多平台、多操作系统,并提供了强大的安全和认证机制。
OPC工作原理OPC的工作原理可以简单描述为以下几个步骤:1.客户端应用程序向OPC服务器发送连接请求。
2.OPC服务器确认连接请求,并建立与客户端的通信连接。
3.客户端应用程序发送对设备的读写请求。
opc在建筑设备集成中的作用:
1.设备连接:OPC技术可以实现不同厂商、不同协议的建筑设备之间的连接,从而解
决设备之间的兼容性问题。
通过OPC接口,各种建筑设备可以相互通信和协同工作,实现设备的集成和互操作。
2.数据采集与监控:OPC技术可以实现建筑设备数据的实时采集和监控。
通过OPC接
口,可以获取设备的运行状态、故障信息、能耗数据等,从而实现对设备的实时监控和管理。
3.控制策略优化:OPC技术可以将建筑设备的控制系统进行集成,实现控制策略的优
化。
通过对设备的集中控制和调度,可以提高设备的运行效率,降低能耗,提高建筑的舒适性和安全性。
4.智能化管理:OPC技术可以实现建筑设备的智能化管理。
通过与其他智能化系统进
行集成,可以实现设备的自动化控制、远程监控、故障诊断和预警等功能,提高设备的管理效率和使用寿命。
5.开放性和扩展性:OPC技术具有开放性和扩展性的特点,可以与多种系统和平台进
行集成。
随着技术的发展和建筑设备的不断更新换代,OPC技术可以适应新的设备和系统,保证建筑设备集成的持续性和稳定性。
什么是OPC技术OPC全称是OLE for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。
在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。
由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。
通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。
在这种情况下,OPC标准应运而生。
OPC标准以微软公司的OLE技术为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是OLE 2技术,OLE标准允许多台微机之间交换文档、图形等对象。
COM是Component Object Model的缩写,是所有OLE机制的基础。
COM是一种为了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。
这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。
例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk或其它语言编写对象访问程序。
在Windows NT4.0操作系统下,COM规范扩展到可访问本机以外的其它对象,一个应用程序所使用的对象可分布在网络上,COM 的这个扩展被称为DCOM(Distributed COM)。
通过DCOM技术和OPC标准,完全可以创建一个开放的、可互操作的控制系统软件。
OPC 采用客户/服务器模式,把开发访问接口的任务放在硬件生产厂家或第三方厂家,以OPC服务器的形式提供给用户,解决了软、硬件厂商的矛盾,完成了系统的集成,提高了系统的开放性和可互操作性。
OPC服务器通常支持两种类型的访问接口,它们分别为不同的编程语言环境提供访问机制。
基于OPC的PLC与计算机通讯技术随着信息时代的到来,计算机技术在各行各业中发挥着越来越大的作用。
在工业自动化领域中,PLC(可编程逻辑控制器)作为控制计算机,已经成为自动化生产的核心。
而PLC与计算机之间的通讯技术,也是提高生产效率和降低生产成本的重要手段之一。
本文将介绍基于OPC协议的PLC与计算机通讯技术,让读者对该技术的原理和应用有更深入的了解。
一、基于OPC的PLC与计算机通讯技术的原理OPC是OLE for Process Control(面向过程控制的对象链接与嵌入技术)的缩写。
它是一个标准的通讯协议,可以实现不同设备之间的数据互通。
在工业自动化领域中,OPC被广泛应用于PLC与计算机之间的通讯。
OPC协议的原理是,将PLC中的数据通过OPC Server进行处理,然后通过OPC Client将数据传输到计算机中,实现PLC与计算机之间的数据交换。
OPC Server通常是由设备厂商提供的,用于与PLC设备进行通讯。
OPC Client则是计算机上安装的一个应用程序,用于与OPC Server进行通讯,并将数据传输到需要的数据收集器、分析器或其他应用程序中。
OPC技术的主要优势是实现了设备间的互操作性,不同厂商的设备可以通过相同的OPC协议进行通讯。
二、OPC技术在PLC与计算机通讯中的应用1、实时数据采集在生产过程中,PLC需要不断采集数据,并将这些数据发送给计算机进行处理。
OPC协议可以实现PLC与计算机之间的实时数据采集,提高企业生产效率和产品质量。
通过OPC技术,PLC可以将生产过程中的重要数据实时传送到计算机监测系统中,自动化监测数据的变化,尽早发现异常情况,实现快速反应,避免生产线停机造成的损失。
2、数据存储和分析PLC数据的存储和分析是提高生产效率和质量的重要手段之一。
通过OPC技术,PLC可以将实时采集到的数据上传到计算机,进行更深入的数据分析和建模。
采用现代分析软件,可以有效地根据PLC数据预测生产设备的故障,设定最佳工作参数和生产计划,提高生产效率和质量。
电力技术应用2 基于OPC 技术的电力监控系统2.1 系统结构在电力计算机监控系统设计中应用OPC 技术,基于数据采集与监视控制系统(Supervisory Control And Data Acquisition ,SCADA ),设计电力监控分层分布式系统,主要包括站控层、通信管理层、间隔层以及过程层,如图2所示。
在电力计算机监控系统设计中,系统间隔层主要负责向站控层传输所采集的电力系统各设备数据信息,并接收系统发布的相关控制指令。
通信管理层则利用RS-485总线、控制器局域网络(Controller Area Network ,CNA )总线与间隔层相连,接收间隔层传输的数据信息,经以太网完成站控层数据交互[3]。
站控层提供电力系统运行情况的人机界面,测量、管理、监督与控制电力系统过程性一次系统、间隔层二次系统与其他相关信息,监督管控站负责管理与显示运行信息,方便管理人员操控电力系统设备。
工程站负责系统运维功能,收集电力系统各类信息,经以太网上传至远方调度中心,接收中心下达的远程控制与调度指令。
2.2 监控系统模型基于OPC 技术的电力监控系统选用厂级监控信息系统(Supervisory Information System ,SIS )运行平台,从保障数据库安全视角出发,将浏览器/服务器(Browser/Server ,B/S )模型对比客户/服务器(Client Server ,C/S )模型,发现2种模型各有优势,最终选择B/S 与C/S 混合模型。
利用OPC C/S 服务器建立管理信息系统(Management Information System ,MIS )关系数据库,与SIS 数据实时互联,从而减少通信复杂性,保证SIS 和MIS 的独立可靠性。
可以在同一台服务器内布置OPC 历史数据服务器与实时/历史数据库,也可将其设置于SIS 的Web 服务器,其中实时/历史数据库与OPC 报警服务器连接。
OPC技术在企业实时数据库系统中的应用【摘要】工业生产信息化是未来企业信息化发展趋势。
面对不同的生产控制系统,如何有效的进行数据集成,消除“信息化孤岛”,为生产管理者提供有效的数据分析与应用,OPC(OLE For Process Control)技术提供了一个很好的方法。
通过采集多种控制系统的实时数据,实现生产全流程在线监控管理,提升企业管理效率和水平。
【关键词】OPC技术;TCP/IP协议1.前言随着信息技术的发展,数据库技术应用日益广泛,许多企业都建设了自动化控制系统,实时掌握运行数据,进行科学的分析和数据处理,提供优化决策,不仅能够合理的进行资源分配,还可以收获客观的经济回报。
伴随着企业的不断发展,扩建不同地域的工厂,配备多套不同厂家和型号生产设备和控制系统,导致生产控制系统层的“信息孤岛”现象,生产数据无法集中共享,从而使生产管理人员无法从整个生产工艺流程的角度去指导生产,优化工艺。
因此大型的石化企业建设分布式实时数据库系统,是迫切需要解决的问题。
2.数据集成技术2.1 常见技术比较在多控制系统的集成过程中,由于特定厂家的控制系统使用的控制网络和信息格式不一致,因此彼此之间不兼容,难以实现不同厂家的控制系统间以及控制系统与信息系统间的互操作。
解决不同系统间的集成问题有以下几种常见技术。
(1)DDE技术DDE(Dynamic Data Exchange)是在Windows平台下两个进程之间的数据交换及命令的传递,是基于消息的并且利用通常的Windows中的通信联络系统进行内部进程间的相互通信。
当通信数据量大时,数据刷新速度慢,容易出现死机现象。
因此,DDE只适合于配置简单的小型系统。
(2)ODBC技术ODBC(Open Database Connecticity,开放的数据库互连)是一个Microsoft 建议并开发的数据库访问API标准,目的是实现异构数据库的互连,为异构数据库提供一个框架,实现最大限度的互操作性。
基于OPC的实时数据获取技术1 引言组态软件通过I/O驱动程序从现场I/O设备获得实时数据,对数据进行必要的处理后,一方面以图形方式直观地显示在计算机屏幕上,另一方面按照组态要求和操作人员的指令将控制数据送给I/O设备,对执行机构实施控制或调整控制参数[1,2]。
目前,企业办公自动化已经基本普及,Windows操作平台以及微软的COM/DCOM/OLE 技术已成为应用软件之间通信的事实上的标准。
在生产控制领域,DCS、SCADA、PLC等技术已经成熟,各种现场总线标准正在迅速推广。
但是,管控一体化存在一个严重的制约因素,即现场设备与应用软件之间难以实现开放的、无缝隙的连接。
在生产现场,存在着大量控制器和现场数字设备,这些设备来自不同的制造商,遵从不同的通讯标准,只能组成各自的控制系统,与特定的应用软件通讯。
虽然某些网络之间可通过协议转换实现互联,但并不具有普遍性。
传统的过程控制系统中,为使每一个应用程序与设备交换信息,必须为每个设备提供相应的驱动程序,在数据源与客户程序之间分别建立一对一的驱动连接,如图1所示。
图1 传统的应用软件与数据源接口方式由于设备多样性和驱动程序不兼容性,这种方式存在以下缺陷:(1) 应用程序开发者必须花费大量精力开发各种设备的驱动接口,计算机硬件厂家要为不同的应用软件编写不同的驱动程序,这种程序可复用程度低,不符合软件工程的发展趋势,典型的高级语言软件开发过程约有25~30%的时间用于编写这类接口,使开发时间和费用大大增加;(2) 设备不具有互操作性,使用中硬件的升级、变更和增加都可能造成驱动程序的变化,从而在维护过程中引起二次投资;(3) 由于每一驱动软件有各自的驱动程序,当多个应用软件读取同一数据源时,经常生冲突;(4) 设备厂商虽然可能提供驱动程序,但与用户开发应用软件往往不一致,限制了用户对软件和设备的自由选择。
可见,在现场设备与应用软件之间提供标准的接口,实现开放的、无缝隙的连接,是顺利推进企业管控一体化的关键。
为此,在微软的倡导下,世界范围内处于主导地位的硬件和软件开发商组成了OPC基金会组织(OPC Fondation),制定硬件和应用软件之间的接口标准-OPC规范。
文章对有关问题作如下简要讨论。
2 OPC产生的背景OPC(OLE for process control)即用于过程控制领域的对象链接和嵌入技术,这一概念是由Fisher Rosemount公司1995年首次提出的,它借用了微软的OLE(Object Linking and Embedding)和COM(Component Object Model)/DCOM( Distributed Component Object Model ) 技术,并应用于过程控制中。
它为过程控制和工业自动化领域提供了一套标准的接口、属性和方法,是实现控制系统现场设备与过程监控级进行信息互连,实现控制系统开放性的关键技术[4,5]。
提出OPC技术最初是为了解决应用软件与各种设备驱动程序的通信问题,简化系统的I/O驱动开发方式。
没有采用OPC技术以前,对一个有M种应用程序、N种设备的系统,共需开发M×N个驱动程序,而OPC采用客户/服务器体系,为服务器与客户程序的链接提供统一、标准的接口规范。
采用了OPC技术以后,只需要开发M+N个与OPC的接口,如图2所示。
图2 采用OPC方式的应用软件与数据源接口方式正是OPC的这种数据访问特点使得使用OPC技术有很大的技术优势和经济优势。
它的优点概括起来大致有以下3个方面:开放性(Openness)、高生产率(Productivity)、和“即插即用”的可连接性(Connectivity),因此可以说OPC=Openness+Productivity+Connectivity。
3 OPC的应用模式及意义现在OPC技术的发展已经超出了原来取代驱动程序的初衷,而成为微软公司的制造业分布式网间应用程序体系结构(DNA-M, Distributed internet Application Architecture for Manufacturing)的核心,如图3所示。
图3 微软的DNA-M体系在这个体系结构中,作为核心的OPC就相当于一块软件“主板”,它能够直接连接现场的PLC、工业控制网络、数据采集和WindowsCE设备,通过快速有效的方式从现场获取实时数据。
PC机内的各种监视应用、控制应用、管理应用等则像是插在OPC主板上的软件“芯片”,这些芯片之间按照OPC协议进行通信,它们可以通过OPC获取现场的实时数据,也可以通过OPC彼此交换信息。
所以OPC为企业内部的信息交换提供了一个开放平台。
任何应用软件只要能够支持OPC接口就可以插入这块OPC主板,就像是将芯片插入到计算机主板中一样,只要芯片的管脚和协议遵从主板的要求,它就可以即插即用。
综合而言,采用OPC技术的意义在于:(1) 计算机硬件厂家只需要编写一套驱动程序、提供一套符合OPC Serve规范的程序组就可以满足不同用户的需要;(2) 对于一个应用程序,开发者只需要编写一个驱动接口,设备便可以连接不同的设备,软件开发商无需为硬件特性的修改或增加而重写驱动程序;(3) 用户在开发集成制造系统时有了更多的软件和设备选择余地。
在现场总线应用方面,OPC技术作为实现控制系统现场设备层与过程监控层进行信息交互,是实现控制系统开放性的关键技术,其应用模式如图4所示。
图4 OPC在现场总线下的应用模式有了OPC作为通用接口就可以把现场信号与SCADA上位监控软件、HMI人机界面软件方便地链接起来,还可以把它们与PC机的某些通用开发平台和应用软件平台链接起来,如:VB、VC、C++、Excel、Access等。
这几部分的信号传递关系如图5所示。
图5 OPC方式的连接示例OPC开发的目的是为了给工业控制系统应用程序之间的通讯建立一个接口标准,在工业控制设备与控制软件之间建立统一的数据存取规范,这个接口规范不但能够应用于单台计算机内部,而且可以支持网络上分布式应用程序之间通讯,以及不同平台上应用程序间的通讯。
OPC的基础-微软的OLE/COM及DCOM技术完全支持上述分布式应用和异构环境下应用的无缝集成。
OPC服务器在企业信息系统中的作用表现为,OPC服务器在底层控制系统中采用统一标准,实现了应用程序与现场设备的有效连接,发挥了桥梁作用,促进了企业现场控制层和过程监控层、生产管理层以及经营决策层的集成。
OPC服务器在企业信息系统内的作用如图6所示。
图6 OPC服务器在企业信息系统中的作用4 OPC的技术本质-COM/DCOM技术随着计算机软件科学的发展,应用系统功能日趋复杂,程序愈加庞大,软件开发的难度也更大。
为此,需要将应用程序化分为多个功能独立的模块,由各模块协同完成实际的任务。
这些模块被称为组件,它们可以被进行单独设计、编辑和调试,因此具有开放性、易升性、易维护等优点。
COM(Component Object Model)—组件对象模型,是由微软公司提出的编程模型,其设计目的是提高软件组态之间的互操作性并提高代码的可复用能力。
COM标准包括规范和实现两大部分,规范部分定义了组件之间通信的机制,这些规范不依赖于任何特定的语言和操作系统,具有语言无关性;COM标准的实现部分是COM 库,COM库为COM规范的具体实现提供了一些核心服务。
由于COM以客户/服务器模型为基础,因此具有良好的稳定性和很强的扩展能力。
在COM模型中,软件的功能被分解为一些组件,这些组件通过COM协议在一定条件下连接起来,实现相应的功能。
一般来说,COM对象可分为客户端和服务器两类,客户端通过COM 接口实现对服务器的访问。
DCOM(Distributed Component Object Model)—分布式组件对象模型是建立在COM之上的一种规范和服务,提供了一种使COM组件加入网络环境的透明网络协议,实现了在分布式计算环境下不同进程之间的通信与协作。
客户程序和COM组件程序进行交互的实体是COM对象。
COM对象类似C++中的对象的概念,它是某个类(class)的一个实例,包括一组逻辑相关函数的集合。
客户程序必须通过接口才能获得COM对象的服务。
基于上述技术,OPC技术具有如下特点:(1) 客户/服务器结构,端组件之间的通信由COM/DCOM提供底层支持,使底层的通信过程对客户端和服务器透明;(2) 标准的访问接口,接口标准由OPC基金会提供;(3) 高速可靠的数据通信,对于本地服务器的访问,如果采用奔腾P233CPU,典型的速度为每秒5000个数据项,此时客户端和服务器的总CPU负载为8%;(4) 可实现远程通信,由于应用微软的DCOM(分布式组件对象模型)技术,OPC可以方便地进行远程通信。
5 OPC的接口方式OPC规范提供了2套接口方案,即自定义接口(Custom Interface)和自动化接口(Automation Interface)。
自定义接口是一组COM接口,可以通过C/C++来进行开发的访问。
OPC基金会提供了标准的接口函数,但对于服务器端的开发,在不改动原有接口函数的基础上,也可以增加一些函数来扩展功能。
自动化接口是对自定义进一步封装,实际上是屏蔽了自定义的接口虚函数表,使自定义COM接口转换为自动化的OLE接口。
这两种接口的关系如图7所示。
对于服务器端开发,OPC技术规范规定OPC服务器必须提供自定义接口,而自动化接口可以有选择地提供。
对于客户端开发,可以选择访问两种接口的任意一种。
一般来说,自定义接口的功能比较强大,需要掌握COM技术,而自动化接口的开发比较容易,缺点是易受接口本身功能的限制。
图 7 OPC接口方式对比OPC服务器对象被分为3层结构:服务器对象(Sever)、组(Group)和项(Item)。
Server是Group的容器,Group 是Item的容器。
OPC规范定义了COM接口,规定了服务器程序和客户程序通过接口交互的标准,但并没有说明具体实现的方法。
OPC服务商必须根据各自硬件特性实现这些接口的成员函数。
不论定制接口还是自动化接口都可分为必选接口和可选接口。
必选接口包括了客户程序与服务器进行交换的最基本功能;可选接口则规定了一些额外的高级功能,可根据需要有选择地实现。
客户程序应通过查询接口的方式来判断服务器程序是否实现了可选接口的功能。
6 结束语采用OPC技术规范的产品实现了工业自动化系统之间的互操作、无缝集成和现场过程控制设备的即插即用,为这一领域的软件和硬件生产厂商以及最终用户带来了直接和明显的经济利益。
因此,国内工业自动化领域的研究机构和厂家应该加强OPC技术应用的研究,积极推广使用具有OPC接口标准软硬件产品,跟上世界先进自动化技术的潮流。