基于OPC XML-DA的现场总线远程监控系统的设计

时间:2011-08-08

    摘要:针对传统客户/服务器模式的现场总线监控系统中存在的问题,提出了三层架构B/S模式的现 场总线远程监控系统,并着重探讨了基于Web Service的OPC XML-DA系统的框架模型和体系结构。,分析了系统在Internet通信中的信息安全性。

  1 引言

  信息技术的发展,使得自动化系统结构逐步形成全分布网络集成自控系统。现场总线正是顺应这一形势发展起来的新技术。现场总线(Fieldbus)是近年来迅速发展起来的一种工业数据总线,它主要解 决工业现场的智能化仪器仪表、控制器、执行机构等现场设备间的数字通信以及这些现场控制设备和高 级控制系统之间的信息传递问题。由于现场总线简单、可靠、经济实用等一系列突出的优点,因而受到了许多标准团体和计算机厂商的高度重视。利用Internet对现场进行远程的实时监控是当前控制领域的热点,实现工业实时数据Web浏览也是工业信息监控发展的必然趋势。近年来,随着Internet的迅速发展 及控制自动化技术的不断提高,企业的信息化程度也越来越被企业所重视。远程监控作为企业信息系统 的一部分,可以使企业信息系统向Internet上延伸,综合的实现企业信息系统中过程监控层的“远程组 态”、“报警提示”、“实时历史曲线”以及与ERP集成等多种功能。企业充分利用计算机、互联网等现代信息技术,将企业的生产、经营及管理流程在线实现,并使企业真正可以在线获得完整而及时的信息 。

  传统基于OPC的现场总线监控系统所设计的客户/服务器结构模式,把数据采集者视为OPC服务器,其他的访问端视为OPC客户端。通常,客户端包含大部分业务逻辑。如果系统业务逻辑仅仅使用或需要一个简单的数据源时,这种结构能够运行得很好。然而当系统需要具有可扩展性,系统功能要求不断增加, 数据库性能需要不断提高时,这种客户端/服务器结构就不能够满足要求,特别在实现远程监控及实现客 户跨平台的要求方面,C/S模式已经表现出自己的弊端。随着计算机通信和网络技术的不断发展,计算机 网络为工业控制系统提供了新的发展空间与技术支持。以Web服务层为监控系统中间层的B/S(Web浏览器 /Web服务器/数据库服务器)模式,已经逐渐发展起来。

  2 基于Web服务的OPC XML-DA规范

  2.1 OPC的发展

  OPC全称是OLE for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。 由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。通常 这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。在这种情况下,OPC标准应运而生。OPC标准以微软公司的OLE技术 为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是OLE2技术,OLE标准允许多台微机之间交换文档、图形等对象。

  2.2 OPC技术

  OPC(OLE for process control)用于过程控制的对象链接与嵌入,是作为工业标准定义的特殊的 COM接口,管理这个标准国际组织是OPC基金会它是基于微软的OLE/COM/DCOM技术,按照标准的方法来完 成不同设备之间数据交换的问题。在OPC出现之前,工控软件通常依靠动态数据交换(DDE)进行数据访 问,比如数据的读取、更新、订约、写入等。OPC的出现大大地提高了数据传输效率以及对事务的处理能 力,同时利用Windows系统对DCOM的安全机制也提供了一定安全性管理的能力。但随着网络技术的迅猛发展和企业信息管理系统对互操作性要求的提高,特别是OPC应用在Internet远程网络通信及跨平台连接时 ,基于COM/DCOM的OPC标准逐渐不能满足客户需求。为此,OPC基金会正式于2003年推出了基于XML Web服务的标准OPC XML-DA规范1.0版。

  2.3 OPC XML-DA

  在OPC规范中,数据访问(DA)规范具有极其重要的地位,因此研究得比较成熟,所以OPC基金会目 前推出的基于Web服务的规范也初始定义在数据访问规范上,即OPC XML-DA规范。使用基于Web服务作为 远过程调用的方式有如下的优势:跨平台,基于Internet/Intranet实现远程人机接口 (HMI,是Human  Machine Interface 的缩写,“人机接口”,也叫人机界面。人机界面(又称用户界面或使用者界面) 是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换 。凡参与人机信息交流的领域都存在 着人机界面),智能现场设备直接支持OPC。

  OPC XML-DA规范的建立,用于将OPC数据向Internet上的应用程序开放,实现了工业控制领域工厂底 层与企业管理自动化的集成。OPC DA提供了不用开发专门的通信软件就可以访问设备的的方法,而 OPC XML-DA又是实现远程和跨平台数据交换的一种方法。它建立在OPC DA规范基础上,是基于XML技 术的接口规范,通过两个Web Services的基础技术XML和SOAP将数据暴露出来,用于连接高层ERP和其他 企业应用程序。它用SOAP作为对应用程序共享消息进行包装的标准协议,使用WSDL对Web服务进行描述, 在OPC XML-DA客户端和服务器之间通过HTTP协议传输Web服务,标准化的XML词汇使得工业应用得到保障 ,所有过程控制系统可以采用相同的语言进行数据信息交换,保证了应用程序间的互操作,并实现与高 层间共享和交换数据。

  2.4 Web Service

  利用OPC XML-DA实现在Internet远程监控,需要在Web Service框架下完成。Web Service是在现有 的各种异构平台的基础上构筑一个通用的与平台、语言无关的技术层,不同的企业所开发的不同平台上 的各种应用可以依靠这个技术层实现彼此的连接和集成。Web Service通过标准的网络协议向网络用户提 供各种服务,Internet上任何地点、任何平台上的应用程序只要符合Web Service的标准都可以从它的公 共接口获得服务,使得不同的应用程序在Internet上共享和交换数据更加的容易。Web Service的具体规 范如下:

  1) 利用扩展标记语言XML描述传输信息。远程调用服务的过程通常需要传递参数和返回结果,在 Web Service中,这些都使用XML进行描述。良好的数据存储格式、可扩展性、高度结构化、便于网络传 输使得XML可以更好的描述所传输的数据元素。

  2) 以简单对象访问协议SOAP(简单对象访问协议是一种轻量的、简单的、基于XML的协议,它被设 计成在WEB上交换结构化的和固化的信息。SOAP可以和现存的许多因特网协议和格式结合使用,包括超文 本传输协议( HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序)作为Web Service的调用协议。它是一种基于XML用于在应用程序之间以对象的形式交换数据的表示层通信协议,是Web Services的,是用户端与服务器 端之间进行沟通的特殊语言。SOAP协议有助于实现大量异构程序和平台之间的互操作性,从而使现存的应用能够被广泛的用户访问。

  3) 以Web服务描述语言WSDL(是一个用来描述Web服务和说明如何与Web服务通信的XML语言。为用户提供详细的接口说明书)描述Web Service相关信息。WSDL文档中描述了所有公开函数的信息,所有XML消息的数据类型信息以及使用的特定的传输协议的信息和用于定位特定服务的地址信息。通过WDSL文档 ,客户端可以得到它需要的所有相关的Web Service的服务。

  4) 统一描述、发现和集成协议UDDI(一种目录服务,企业可以使用它对 Web services 进行注册和搜索)。Web Service客户端开发人员需要某种机制来确定有哪些可供使用的服务,以及他们提供什么样的服务,如何调用这些服务,开发商在Internet上公布如何推出自己的Web Service,这些都需要UDDI来完成,它提供了一种让客户端动态发布和查找Web Service的机制。

  3. B/S架构的远程监控系统

  B/S(Browser/Server) 以Web服务器为中间层,底层为数据服务层,上层表示层是与Internet连接的Web浏览层。利用OPC接口实现OPC DA与现场设备之间的通信,以COM/DCOM通信方式实现OPC DA服务器 和OPC XML-DA之间通信方式。然后利用HTTP、TCP/IP等协议实现远程客户与OPC XML-DA服务器间的通信,从而使得用户可以在客户端利用标准网页浏览器(Browser)实时监控工业现场的动态工艺流程,远程访问控制现场获得数据,达到远程监视和控制目的。结构图如图1所示:

图1 B/S架构的远程监控系统

  数据服务层位于整个监控系统的底层,主要包括各种PLC(主要是指数字运算操作电子系统的可编程逻辑控制器,用于控制机械的生产过程。也是公共有限公司、电源线车等的名称缩写)、智能仪表、传感 器以及各种现场总线设备等。在这里,以LonWorks为现场控制总线,当LonWorks智能芯片采集到数据后 ,按照统一、开放的数据访问标准,将数据返回给同样位于底层的OPCDA服务器,此时位于Web服务层的 OPC XML-DA服务器接收OPC DA服务器所传来的数据,同时要完成上层Web服务器以XML文档方式所传来的请求服务,并将所获得的数据以XML方式发送回Web服务器。

  在OPC DA服务器和OPC XML-DA服务器之间通信方式为COM/DCOM,此时OPC XML-DA相当于OPC DA服务器的客户端,来获取OPC DA服务器端的实时数据。不同的OPC XML-DA服务器采用统一的XML数据传输格式 ,这样可以集成为一个OPC XML-DA平台,各个OPC-XML服务器之间可以互相进行通信,交换数据。OPC  XML-DA平台对上层不同的客户端提供统一的接口,响应客户端所提出的服务,当客户端请求服务时,通过平台将客户端所请求的服务转向各个OPC XML-DA服务器,来执行所要请求的服务。

    COM是Component Object Model的缩写,是所有OLE机制的基础。COM是一种为了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk或其它语言编写对象访问程序。在Windows NT4.0操作系统下,COM规范扩展到可访问本机以外的其它对象,一个应用程序所使用的对象可分布在网络上,COM的这个扩展被称为DCOM(Distributed COM)。

  位于Web服务层的OPC XML-DA服务器包括Web服务器组件和OPC XML-DA组件。在OPC XML-DA服务器端 ,通过WSDL解读OPC XML-DA规范,了解用户需求,创建了Web Services的框架。Web服务器组件和OPC XML-DA组件之间有Web Services接口,它由一些接口函数组成,通过它对数据进行操作。这个接口主要 用于解析Web服务器组件以XML文档形式传来的服务请求和从OPC XML-DA组件获取的实时数据以XML形式返 回给Web服务器组件。Web服务器组件可以由Internet Information Server(IIS)、SQL Server构成, 用以接收客户端请求和返回客户端服务,并调用相应的数据库。

  OPC XML-DA的客户端可以是一台Internet/Intranet上的计算机,通过浏览器(IE),向Web服务器 发送请求页面的域名和全路径名称信息,客户端利用从服务器的网页实现远程测控和管理的工作, 网页中内嵌ActiveX控件或者Java Applet的程序文件,进行初始化操作。比如,设置布局、建立TCP/IP 连接等。然后进行登录,当登录成功后,当服务器允许连接时,发出TCP连接响应,客户计算机和服务器之间就建立了TCP连接,可以直接进行通信,读取服务器上的画面文件。远程客户通过控件提供的操作界面,进行远程监控、维护和管理等操作。在运行过程中,系统负责发送/接收数据,并更新相应画面。OPC XML-DA客户端通过存储于服务器中Web Services接口,发出所要请求的服务。客户端不参与执行过程,它只需接收在OPC XML-DA服务器端执行的结果。

  OPC XML-DA客户端在Web Service框架下与OPC XML-DA服务器之间的通信如图2所示:

图2 Web Service框架下OPC XML-DA客户端与服务器端的通信

  4 远程监控安全问题的解决方案

  本地局域网连接时,基于DCOM的OPC服务器使用防火墙保护工厂数据,而引入Web服务之后,过程控制信息不再局限于LAN以内,使得过程控制信息暴露给了连接在Internet上的所有用户,系统安全的主要风险在于信息被任意篡改的可能行。由于OPC XML-DA规范的刚刚制定,OPC XML-DA还没有单独规定的安 全行机制,这需要客户端和Web服务端对网络安全进行相应的配置。具体方式如下:

  (1) 身份验证

  在身份验证问题上可以采用传统的用户ID加口令,只有注册并获得授权的用户才有可能进行远程监控等操作。为预防口令遍历攻击,系统对口令验证连续三次失败的用户自动断开与其建立的TCP连接。

  (2)数字签名

  为了确保用户信息与监控数据不会被篡改,需要引入数字签名技术。可以在客户端Web浏览器与服务器端通信时在Microsoft IIS服务器处配置设置SSL。SSL通过数字证书进行数字签名实现通信双方的身份鉴别以及所做操作的不可抵赖性,并通过对称加密实现信息传输的机密性,通过信息摘要技术实现信息传输的完整性控制。

  (3)访问控制

  对客户端做好权限的分配,在确认用户的身份后,我们从用户信息库中把用户权限信息读入内存中,根据这些细化的权限信息,对用户的状态与操作进行跟踪、验证权限,并做好记录。

  (4)系统日志

  为了跟踪系统的运行状况,以便追究使用者的责任,需要在服务器端有详细的记录,包括远程客户 的登录时间、IP地址、组态操作、连接时间等。定期审查日志可以提高系统的安全性。

     OPC解决了现场总线系统中异构网段之间数据交换的问题。现场总线系统仍然存在多种总线并存的局面,因此系统集成和异构控制网段之间的数据交换面临许多困难。有了OPC作为异构网段集成的中间件,只要每个总线段提供各自的OPC服务器,任一OPC客户端软件都可以通过一致的OPC接口访问这些OPC服务器,从而获取各个总线段的数据, 并可以很好地实现异构总线段之间的数据交互。而且,当其中某个总线的协议版本做了升级,也只需对相对应总线的程序作升级修改。

    OPC可作为访问专有数据库的中间件。实际应用中,许多控制软件都采用专有的实时数据库或历史数据库,这些数据库由控制软件的开发商自主开发。对这类数据库的访问不像访问通用数据库那么容易,只能通过调用开发商提供的API函数或其它特殊的方式。然而不同开发商提供的API函数是不一样的,这就带来和硬件驱动器开发类似的问题:要访问不同监控软件的专有数据库,必须编写不同的代码,这样显然十分繁琐。采用OPC则能有效解决这个问题,只要专有数据库的开发商在提供数据库的同时也能提供一个访问该数据库的OPC服务器,那么当用户要访问时只需按照OPC规范的要求编写OPC客户端程序而无需了解该专有数据库特定的接口要求。

  5 结束语

  通过DCOM技术和OPC标准,完全可以创建一个开放的、可互操作的控制系统软件。OPC采用客户/服务器模式,把开发访问接口的任务放在硬件生产厂家或第三方厂家,以OPC服务器的形式提供给用户,解决了 软、硬件厂商的矛盾,完成了系统的集成,提高了系统的开放性和可互操作性

  基于Internet的远程实时监控采用了OPC XML-DA规范,并与Web Services相结合,能够满足远程用 户对需求参数的监视和控制,在互联网上真正可以在线获得完整而及时的信息。B/S结构的应用使得客户 端不需要安装任何软件,通过计算机的标准浏览器就可以访问现场数据,极大地提高了系统的灵活性, 也扩展了系统访问的地域性。OPC XML-DA在远程实时监控中的应用,为控制领域的企业的全面信息化提 供了很好的途径。随着OPC XML其他规范的不断完善,基于Internet的远程实时监控必将成为未来企业的 主要服务方式。 

    OPC作为一项逐渐成型的技术已得到国内外厂商的高度重视,许多公司都在原来产品的基础上增加了对OPC的支持。由于统一了数据访问的接口,使控制系统进一步走向开放,实现信息的集成和共享,用户能够得到更多的方便。OPC技术改变了原有的控制系统模式,给国内系统生产厂商提出了一个发展的机遇和挑战,符合OPC规范的软、硬件也已被广泛应用,给工业自动化领域带来了勃勃生机。


  

参考文献:

[1]. RPC datasheet https://www.dzsc.com/datasheet/RPC_1707052.html.
[2]. PLC datasheet https://www.dzsc.com/datasheet/PLC_1248813.html.


上一篇:一种无菌制药生产的设计和实现
下一篇:基于Richards变换与Kuroda规则的微带滤波器的设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料