摘要:OPC技术是OLE技术在过程控制中的应用,它为开发应用程序的不同厂商提供了一项共同遵循的通信标准,从而大大减少了在系统集成过程中的重复开发,并提高了控制系统的性能。OPC代表了今后一段时间内过程控制系统通信标准的发展方向。
作为生产过程自动化的基础,过程控制系统从最初采用基地式仪表的就地控制,发展到采用单元组合式仪表的集中控制。随着计算机的出现和微型计算机性能/价格比的不断提高,集散控制系统(DCS)逐渐成为过程控制系统的主流。近年来,随着智能仪表及现场总线技术的引入,控制系统以计算机为中心的特征日益明显。
既然工业自动化体系,在硬件方面日趋计算机化,那么工业自动化系统的软件开发,亦必然会体现计算机领域的软件开发特点。在计算机领域,随着计算机技术的不断发展,应用程序和操作系统环境所具有的功能和复杂程度在迅速增加,传统的软件开发技术已难以适应软件开发的要求,面向对象技术成为重要的软件开发方法。面向对象方法具有良好的信息隐蔽性、模块独立性和可重用性,使应用程序的集成更加容易,而且能在不同软件厂商提供的应用程序中更为容易地对信息进行交换、合成和处理,可以大大提高软件的开发效率。在这方面微软的OLE(Object Linkingand Embedding)/COM(Component Object Module)技术是大家所熟知的面向对象开发的框架,并且已在计算机领域的软件开发中得到了卓有成效的应用。
OPC(OLEfor Process Control)是微软公司的对象链接和嵌入技术在过程控制方面的应用,为工业自动化软件面向对象的开发提供一项统一的标准。采用这项标准后,针对硬件的驱动程序不再由软件开发商开发,而是由硬件开发商根据硬件的特征提供统一的OPC接口程序。由于硬件开发商对自己的硬件特征了如指掌,从而能够最大限度地挖掘硬件的潜力,提高驱动程序的性能。采用OPC标准后,由硬件开发商提供统一的OPC接口程序,从而避免了开发重复性,使开发费用大大降低。
2 产生历程
1995年由来自Intellution、Fisher-Rosemount、Intuitive Technology、Opto22、Rockwell Software等5家控制类公司及它们的技术顾问微软公司共同发起成立了OPC标准化组织OPC Task Force,并将其起草的有关OPC标准的几项规定发布到其Web站点(www.industry.net/opc )上,向来自用户和制造商的260余个OPC评论单位征询意见,根据收集到的反馈意见,OPC Task Force对标准草案进行了修改,最后经其顾问微软公司的OLE专家进行认证,颁布了OPC1.0。
为进一步扩大OPC标准的影响,1996年在芝加哥举行的ISA/96会议上成立了OPC基金会(OPC Foundation),接替OPC Task Force的工作,以吸收更多的会员单位参加,使其真正成为一项为各方所接受的、开放的标准。OPC基金会下设:技术筹划委员会、市场筹划委员会、OPC1.01版修订委员会、一致性测试委员会、历史数据访问委员会、事务登录委员会、报警处理委员会、安全委员会、标准命名协议委员会等,开展与OPC标准有关的各方面的工作。现在最新的OPC标准是于1997年9月11日发布的OPC1.0A。
3 主体框架
OPC利用微软公司的COM/DCOM对象模型和ActiveX技术,为实现世界范围内所有的自动化软硬件的互操作性,提供一项规定。简而言之,它位于数据源和数据使用者之间,是不同制造商的产品之间进行对话的通行证。
3.1 对象和接口
OPC逻辑对象模型包括3类对象:OPC服务器对象、OPC组对象、OPC项目对象,每类对象都包括一系列接口,见图2(带[]的为可选项)。
此主题相关图片如下:
OPC服务器对象提供了一种访问数据源的方法,它通过IOPCServer,OPC Browser,IPersist File向客户提供接口。OPC组对象包含在OPC服务器对象中,并由客户端定义和维护,每个服务器可以包含多个组对象。OPC组对象可以通过IOPCGROUNP增加或删除OPC项目对象,OPC项目对象包含在OPC组对象中,1个组对象可以包含多个项目对象,它同样由客户端定义和维护。
OPC客户端与OPC服务器连接并通过接口与OPC服务器通信,OPC服务器对象向OPC客户端提供创建和操纵OPC组对象的功能。这些组允许OPC客户对它们要访问的数据进行组织。1个组可以作为1个单元被激活或失活。1个组也可以提供1种方法允许客户“订阅”项目列表,以便在项目变化时它能得到通知。
客户只能看到接口,所有的COM对象只能通过接口进行访问。这样,这里所描述的对象只是逻辑表示,可能与服务器的内部执行无关。
4.2 价格的下降
在传统的开发方式下,由于缺乏信息和数据共享的统一标准,驱动程序由软件厂商开发,每个驱动程序对应一个特定的硬件产品和一个特定的应用程序。这样每个软件开发商需要针对不同的硬件产品独立开发1套驱动程序,工作量变得非常庞大,而且各开发商重复开发,导致工业自动化软件的开发费用居高不下。采用OPC标准后,这项工作改由硬件厂商承担,提供统一的OPC接口程序,从而使整个系统的开发费用得以分散,工业自动化软件的价格也必将大幅度下降。 4.3 性能的改善
在OPC开发模式下,驱动程序由硬件厂商开发,由于硬件厂商了解自己产品的细节,所以提供的接口程序的性能与以前由软件厂商提供的驱动程序相比有了明显的改善。以往控制软件开发商的大部分精力花在了驱动程序的开发上,采用OPC标准后,这部分工作改由硬件产品供应商承担,软件开发商可以把精力集中在MMI、SCADA、MES等软件包的开发与集成上,提供性能更好的软件产品。
5 发展近况及前景
OPC标准的制定虽然主要由少数几家公司所推动,但是已制定的OPC标准由来自90多家公司的专家参与,并参考了来自200多个合作伙伴的评论意见,所以具有广泛的代表性。一批国际知名的控制类公司,如ABB、AspenTech、Eurotherm、Foxboro、Honeywell、National Instruments、Siemens、Toshiba、Johnson-Yokogawa、GEFanuc等相继宣布支持OPC标准。在这种情况下,毫无疑问OPC将会在控制领域发挥重大的作用,OPC将会成为大势所趋。
现在许多公司正在致力于利用OPC标准开发产品。Wonderware公司原来一直采用NetDDE开发其软件产品,并且做得相当成功,但鉴于OPC正在成为业界标准的形式,现在正逐步转向采用OPC标准开发其软件产品。USDATA公司开发了1种叫做OPC友好插座的产品,该产品允许任何符合OPC标准的对象加入到该公司的软件中。在已开发成功的Fisher-Rosemount的DeltaV过程系统中采用了OPC技术。Intellution作为OPC董事会成员,在推行OPC标准方面始终是不遗余力,现已利用OPC技术开发出了VisualBatch、FIXDynamics等组件产品。目前国内工业过程控制和仪器仪表行业在OPC标准的推广和应用方面尚没有见到有大的动作。我们认为,作为一项逐渐成型的过程控制领域软硬件接口的数据通信标准,OPC应当受到国内同行足够的重视。