004 基于XML和OPC的工业控制系统集成的研究

更新时间:2023-07-18 20:15:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

XML和OPC

科 技 论 坛

中国科技信息2006年第2期    CHINA SCIENCE AND TECHNOLOGY INFORMATION Jan.2006

基于XML和OPC的工业控制系统集成的研究

朱晓梅 韩红军 南京工业大学信息科学与工程学院 210009

摘 要:本文提出了一种结合OPC和XML技术的工业控制系统集成方案,重点研究了工业控制系统集成的框架,并详细分析了其中的核心部件—中间件。XML的引入扩展了OPC的应用,实现了各种工业控制系统的横向集成和企业范围内的应用程序与工业控制系统的纵向集成。关键词:OPC ;XML;工业控制系统;集成

统的方法,并且OPC DA采用二进制数据传输

机制,提供了较高的数据传输性能。OPC DA的功能主要体现在控制传统现场设备级与过程管理级间的系统集成以及各种现场系统可以以OPC为桥梁互换信息实现控制系统的横向集成。

XML DA屏蔽了各种现场系统提供的数据的异构性,为远程用户或跨平台用户提供了统一的访问现场系统的方法。XML DA提供了非持续的远程连接性和平台无关性。XML DA的主要功能体现在高层应用程序与过程管理级和现场设备级的纵向集成。

杂的相互独立的功能代替60种简单的相互关联的功能,因此中间件在处理客户的某个方法调用时需要向底层的OPC DA服务器发出一系列相关功能请求,再把多次从OPC服务器获得的数据根据MOX的功能要求重新组合,最后作为方法调用结果返回给客户;另一方面,由于两个规范在一些数据类型的定义上存在差别,因此还要映射成对应的数据类型表示。它相当于一个桥接的作用实现OPC DA的请求和信息与OPC XMLDA的请求和信息的相互转换。

背景

工业自动化领域已经从专用的软件和硬件接口时代步入了多厂商控制系统无缝集成的时代。OPC(OLE for Process Control)是一个工业自动化中的软件接口标准,它基于Microsoft的COM/DCOM技术。OPC提供了现场设备、控制系统和企业范围内的应用程序间的即插即用和互操作性。目前OPC已成为全球范围内事实上的工业标准。但是OPC并不是在任何地方都适用,在一些情况下存在着局限性:

(1)由于OPC是基于微软的COM/DCOM,这一本质决定了OPC很难跨越微软系统平台,实现多平台的互操作性;(2)通过Internet与OPC服务器进行通信的客户端面临与服务器进行通信的潜在障碍。端口80是为HTTP网络通信保留的,而DCOM不使用端口80,这样导致了DCOM的调用会被防火墙阻塞。这些不足之处大大地限制了OPC在实际中的应用和进一步的发展。

目前XML(eXtensible Markup Language)已成为一种开放的、平台无关的数据编码和数据交换方式。OPC和XML的出现将为工业控制系统集成提供一个新的方向。

本文提出了一种结合OPC和XML技术的工业控制系统集成方案,重点研究了工业控制系统集成的框架和总体设计,并详细分析了其中的核心部件—中间件。

2. 中间件的数据通信设计

2.1 中间件与多个OPC DA服务器的通信中间件实现对OPC的数据集成必须能够与基于COM的OPC DA服务器的通信。OPC服务器的本质上是分布在不同计算机上的COM组件,客户通过这些COM接口与COM组件通信,实现数据的访问;另一方面,大多数操作系统都有自己的Web Service平台,目前最流行的就是微软操作系统的.NET平台,微软的Visual Studio .NET 是一个强大的开发XML Web Service的集成工具,我们选择了微软的VS.NET平台来开发中间件系统。

由基金会提供的OPC Automation2.0 自动化DLL可以包装所有符合OPC DA规范的OPCDA Server的自定义接口。.NET中提供的Interop服务可以实现COM组件特别是自动化对象与.NET应用程序的集成。

中间件作为一个OPC客户端能够连接多个OPC DA 服务器。为了保证每个与客户连接的OPC服务器的独立性即某个服务器的失败并不影响与客户通信的其他服务器,中间件为每个OPC服务器分配了一个单线程公寓,采用多线程机制来保证通信的实时性和安全性。

2.2 中间件内OPC与XML的映射OPC数据访问服务器由服务器对象(Server)、组(Group)和项(Item)组成的分层结构。 OPC的层次结构为我们实现OPC数据到XML之间的映射提供了基础。根据OPC的结构,我们可以采用XML Scheme或DTD来定义OPC数据。文献[6]中给出了数据的具体定义。

2.3 中间件与XML客户的通信

中间件提供了XML DA服务器的功能。考虑到基于Internet的访问性能问题和非持久的连接性,XML DA服务器的功能较少,根据XML DA规范要求,服务器必须提供:GetStatus, Browse,Read, Write, Subscribe, GetProperties,SubscriptionPolledRefresh,SubscriptionCance等八个功能。

为了保证互操作性,中间件必须为客户提供标准的功能接口和一致的通信协议。中间件的XML服务器本质上是一个WEB Service,它采用SOAP(简单对象访问协议)来定义传输数据格式。SOAP为分布式环境内点对点间交换结构化信息提供了一个简单轻量级的机制。同时中间

1.工业控制系统集成

1.1 工业控制系统集成

现代控制系统不再只是当初纯粹的集成电路控制模式,而是与现代计算机技术与网络通信技术紧密结合,步入现场总线控制的时代。现场总线是应用在生产现场、在微机化测量控制设备之间实现双向串行多节点数字通信的系统,也被称为开放式、数字化、多点通信的底层控制网络。现场总线技术从80年代发展至今已出现了多种标准的总线技术(如FF,Profibua,CAN,Lonworks等),并且各种总线技术具有一定的应用范围,出现了多种总线标准互补共存的局面。不同的总线标准采用不同的通信协议,不同的现场总线设备之间的互操作性往往需要付出很大代价;同时,传统的DCS系统和PLC等技术相对成熟,应用比较广泛,短时期内不可完全由FCS取代,在这种情况下急需一个统一的系统平台来实现各种控制系统的集成。

1.2 基于XML 和OPC的集成框架

图1表示了通过OPC和XML实现工业控制系统中各种系统(各种现场总线,DCS系统,PLC,分散I/O系统,SCADA)与远程或本地操作员界面或更高层次的应用程序间的数据交换和共享。这个框架同时实现了工控系统的横向以及纵向的系统集成。整个集成框架中考虑了OPC DA标准和XML DA标准各自的优势:

OPC DA 屏蔽了各种现场系统提供的数据的异构性,为本地用户提供了统一的访问现场系

图1 基于OPC和XML的工业控制系统集成

整个集成系统的核心技术是中间件技术。中间件实现了将多个OPC DA服务器升级为XMLDA服务器的快速方法。下面我们重点介绍中间件的设计和关键技术。

中间件在系统集成中扮演着如下的角色:第一,它是一个OPC DA Client,能够访问各种控制系统的不同OPC 服务器,并对它们进行统一的管理。这样,不管现场有多少个OPC服务器,客户端所要做的仅要与中间件进行通信,其他的工作交给中间件来完成。中间件再根据客户的请求通过COM/DCOM标准与现场的任何OPCDA服务器通信。这个功能可以解决OPC服务器的定位问题。另外,本地的OPC客户也可以直接与OPC服务器通信,并不一定要经过中间件。

第二,它是一个XML DA服务器,能够将现有的基于OPC DA标准的实时控制数据以XML方式暴露给互联网上的用户或者非微软平台的应用程序。OPC在XML DA规范中定义了工厂底层设备数据的XML 模式,同时为了确保互操作性还定义通信协议和发现机制以及错误处理。XML DA还采用了先进的XML相关标准和工具。在XML标准基础上采用了SOAP(SimpleObject Access Protocol)数据交换标准,以及在SOAP之上的WSDL(Web Services DescriptionLanguage)规范,这些规范保证了XML DA真正的互操作性。将控制数据进行XML编码再打包成SOAP消息可以穿越企业的防火墙,并且SOAP与具体平台无关。

第三,它是一个OPC DA网关,完成两个任务:一方面,为了提高数据访问性能和降低网络负担,OPC XML-DA规范将原先的OPC DA规范的功能从60余种减少到8种,也就是用8种复

(下转第14页)

XML和OPC

科 技 论 坛

中国科技信息2006年第2期    CHINA SCIENCE AND TECHNOLOGY INFORMATION Jan.2006

本文来源:https://www.bwwdw.com/article/1vp1.html

Top