简介: 摘 要:在对提出了基于 OPC XML的建筑智能化系统集成模型,对 .NET实现 OPC XML Web服务的技术框架进行了研究。采用 Advosol公司提供的 OPCCOM服务器来模拟一个智能建筑中央系统监控设备的 OPC COM服务器,利用 OPC XML Web服务来对上述 OPC COM服务器进行访问,开发客户端应用程序实现了对 OPC XML Web服务的调用,验证了基于 OPCXML Web服务的建筑智能化系统集成模型的可行性。 关键词: OPC XML;建筑智能化;集成;技术;实现 1 OPC XML支持 Internet的跨平台集成 目前在过程控制领域,很多公司在各种商业利益和竞争压力的驱使下纷纷将各种智能设备监控、维护、管理应用向 Internet迁移,以增强企业产品在业务操作和高层管理决策方面的灵活性,最大程度地满足各种用户需求。 利用 OPC XML技术来实现任何文件格式数据的 Internet共享和交换,从而在控制系统和信息系统方面获得较高的集成度,实现从底层的控制系统到高层的应用程序的纵向信息系统集成,为实时数据嵌入基于 Web服务的应用程序中提供更好的方式,进一步满足对各种信息的共享和交换需要,因此, OPC XML使得从控制层到管理层系统集成变得非常容易。 另外, OPC XML提供了通过 Internet发布 OPC数据信息和自动化过程控制系统集成提供更为广泛的连接能力,为非 Microsoft操作系统平台发布 OPC数据信息提供一种数据信息转换机制 。 2 基于 OPC XML的建筑智能化系统集成模型 目前,建筑智能化系统集成内容相当广泛,涉及到楼宇自控系统、安防系统、消防报警系统等多个子系统,但是子系统与子系统之间、系统运行与管理之间往往相互分割,难以协同,成为一个个“信息孤岛”,无法满足符合人性化的 4A( Anywhere, Anytime, Anyhow, Value-Added)智能建筑管理或服务需求,更无法满足基于 Web的一体化智能建筑系统集成需求。如何实现智能建筑的高层信息集成以突破各子系统独立运行带来信息交换上的瓶颈,使各应用系统之间,实现高度融合和协调运行,从而满足与建筑内的设备、办公、信息沟通、管理、服务的全面、动态的 4A需求,已成为行业关注的热点,智能建筑已进入基于 Internet的一体化信息集成的时代。 基于 COM/DCOM的 OPC早期技术 OPC DA和 OPC DX虽然带来了更大的开放性、互联性、高效性,智能设备即插即用,实现灵活、高效、方便地获取数据。但是, OPC DA和 OPC DX并不适合于客户端通过 Internet访问现场设备数据,不能有效解决前面提到的一体化、人性化的 4A智能建筑管理或服务需求。利用 OPC XML技术,将 OPC XML Web服务的技术优势引入建筑智能化领域,提出了如图 2所示基于 OPC XML的建筑智能化系统集成模型,能够完整地解决基于 Internet的一体化智能建筑系统集成需求。 该应用模型的主要设计目标是:集成智能建筑中已有的分散的子系统,让其中的底层智能设备横跨 Internet工作,将管理、分析、控制等功能集成到统一的界面上,实现各个智能建筑子系统的集成管理及协同工作,实现与建筑内的设备、办公、信息沟通、管理、服务的全面、动态的 4A需求。 3 模型核心技术 OPC XML Web服务的实现 OPC XML Web服务是基于 OPC XML的建筑智能化系统集成应用模型的核心。 OPC XML Web服务最常见的实现形式就是 XML-DA服务器端网关,即将 OPC DA服务器作为一个 .NET Web服务来实现。网关安装在 OPC-DA服务器端。通过网关, XML-DA客户端能够从远程访问 OPC DA服务器,带有 OPC服务器的设备不必升级。接下来以 XML-DA服务器端网关的实现方式为例来进行模型核心技术实现。 XML-DA服务器端网关是将 OPC DA服务器作为一个 .NET Web服务来实现。因为 OPC COM DA设备的实质就是将设备数据用 COM曝露出来,数据是存储在设备数据库里的,实现 XML-DA服务器端网关时无须关心底层现场设备的细节。 OPC XML Web服务服务器下面连接的子系统采用 Advosol公司提供的 OPCCOM服务器来模拟。安装 XDANetSrv开发软件包后就自动安装了一个名为“ TS.DA3CBCS DA Server”的。 PC DA服务器,它是一个 DOOM组件。在接下来的实验中,用它来模拟智能建筑中央系统监控设备的 OPC COM服务器。这样,就可以将注意力主要放在高层的信息集成,即实现 OPC XML Web服务和应用。 Visual Studio.NET是一套完整的开发工具,用于生成 ASP Web应用程序、 XML Web服务、桌面应用程序和移动应用程序。 .NET Framework框架封装了实现 Web服务的协议,简化了 XML Web服务和 ASP Web应用程序的开发。模型的技术实现采用 .NET的 Web服务开发工具,包括: Microsoft .NET Framework SDK, Microsoft XML 4.0 Parser and SDK, MicrosoftSOAP Toolkit 2.0, Microsoft UDDI SDK v1.5.2。 Web服务描述语言工具( Wsdl.exe):从 Web服务描述语言( WSDL)文件、 XML架构定义( XSD)架构文件和 .discomap发现文档生成 XML Web服务和 XML Web服务客户端的代码。 Web服务发现工具( Disco.exe):发现位于 Web服务器上的 XML Web服务的 URL,并在本地磁盘上保存与每个 XML Web服务相关的文档。 XML架构定义工具( Xsd.exe):生成遵从 www联合会( W3C)提出的 XML架构定义( XSD)语言的 XML架构。此工具从 XSD架构文件生成公共语言运行库类和数据集类。 由此建立基于 .NET的 OPC XML-DA Web服务的软件开发环境:服务器端, Windows 2003/2000/XP, IIS( Internet Information Services), ASP.NET and the .NETFramework, DCOM, RAD环境, Microsoft Visual Studio .NET;客户端应用程序可以运行在 Windows95/98/ ME/ NT/ 2000/2003上。 C#是微软为 .NET平台量身订做的语言,特别适合组件的开发,对于模型实现,采用 C#语言进行程序设计。 XML Web服务建立在 .NET Framework和公共语一言运行库之上,由于 XML Web服务的基础结构是遵照 SOAP, XML和 WSDL等行业标准生成的,这使来自其他平台的客户端可以和 XM L Web服务进行交互。只要客户端可以发送根据服务说明进行格式化、符合标准的 SOAP消息,该客户端就可以调用使用 ASP NET创建的 XML Web服务,而与该客户端所驻留的平台无关。 XM L Web服务不是用来替代 DCOM的,它是一个消息处理基础结构,用于通过使用 XML行业标准跨平台进行通信。 在 .NET框架下,可以通过如图 3所示的技术路线来实现 OPC XML-DA Web服务。在 OPC XML-DA Web服务器端: OPC FOUNDATION提供了标准的 OPCXML DA WSDL,可以使用微软的工具 WSDL.EXE导入自动生成代理,也可以直接在 VS.NET里面添加 WEB引用。导入过后自动生成了一些供客户端使用的代理,并建立主干 Web服务程序,它是 Web服务框架的一部分,它为框架建立接口代码。 OPC XML-DA服务供应商根据相应的 OPC XML-DA规格和应用需求来实现具体的 Web服务程序。 OPCXML-DA服务器开发者不需要 XML和 SOAP方面的知识。 OPC XML-DA Web客户端:开发 OPC XML-DA客户端应用不需要 XML和 SOAP方面的知识,开发者通常不使用 Web服务的 SOAP方法接口描述。使用 Web服务说明的 WSDL文档,用 Wsdl.exe工具创建一个代理类,客户端可以调用该代理类的方法来执行 Web服务。 Web引用是一个已经生成的代理类,它在本地表示 XML Web服务公开的功能。该代理类定义的方法表示 XML Web服务所公开的实际方法。当客户端应用程序创建了代理类的一个实例时,它就能够调用 XML Web服务方法,就好像 XML Web服务是一个可在本地使用的组件一样。 Web引用简化了 XML Web服务客户端应用程序的开发。 参考文献 [ 1] 王波,卿晓霞 .智能建筑导论[ M] .北京 :高等教育出版社 ,2005. [ 2] 王波.智能建筑办公自动化系统[ M] .北京 :人民交通出版社 ,2004. [ 3] 高亮.OPC技术在智能建筑系统集成中的应用[ J] .智能建筑 ,2006,( 13) . [ 4] 徐智勇,李德华 ,许立梓 .用 OPC实现 IBMS集成[ J] .白动化技术与应用 ,2005,( 2) .