随着基于IEC61850标准变电站SAS(Substation Automation System)的发展[1],面向信息点的调度主站EMS(Energy Management System)系统和面向对象的变电站之间的通信需求冲突逐步显现出来,IEC61970EMS系统[2]与IEC61850变电站模型的差异,如何使其信息交互变得越来越重要。在EMS和SCADA(Supervisory Control And Data Acquisition)监控应用集成框架中,传统模式存在体系结构耦合过于紧密、整合困难、系统难以移植和扩展、成本过高等问题。Web Services为分布式系统提供了支持,其平台和语言中立性利于跨平台的互操作。而EJB/CORBA/DCOM组件技术提供的是紧耦合的远程过程调用(RPC)机制,而且其协议属于某个厂家或集团,并不完全开放,在基于Internet的分布式应用上存在一定的局限性;XML.Web Services提供的是松耦合机制,而且所基于的协议得到了业界的广泛支持,是充分开放的。针对以上问题,本文提出一种基于IEC61970 标准与IEC61850 标准集成、Web Services/CORBA整合的EMS/SAS监控系统,该系统将促进电力企业在更大范围内实现应用集成。
1 基于整合的改进模式
传统的实现模式中,应用软件和SCADA硬件之间为紧耦合,从而导致应用整合、系统移植扩展非常困难,成本增加。网络控制中心的控制系统(EMS/DMS)和变电站自动化系统(SAS)被用于监控电力系统设备。当这些系统关注同样的物理对象时,它们在所提供信息的详细度、性能要求以及在控制中所承担责任范围等方面存在差异。为了电力系统的应用更好地集成,变电站间(IEC61850) 和控制中心间( IEC61970)数据相互交换的标准集成势在必行。
利用IEC61970和IEC61850标准,构建数据模型、系统和服务的抽象描述、标准接口的描述等,运用UML统一建模语言表述面向对象的系统构架和设计。电力管理系统(EMS)结合IEC61970-303、IEC61970-404、IEC61970-407等标准实现[2],而变电站自动化系统(SAS)结合IEC61850-5、IEC61850-7-2、IEC61850-7-3、IEC61850-7-4等标准实现[1]。为了管理涉及传统变电站自动化系统设备的相关信息,可以对IEC61970-303的CIM模型描述进行扩展。一些IEC标准中描述的服务可以重新设计,以便能够适合具体的数据模型。改进的系统不是直接与SCADA系统通信,而是只与Web Services/CORBA系统通信,这样就可以降低系统管理和更新的复杂度及成本。系统直接用TCP/IP进行通信,也降低了系统的成本。改进实现模型如图1所示。
2 基于IEC61970和IEC61850标准的整合模型实现
基于UML(Unified Modeling Language) 的表示方式是IEC61970 的一个完整的部分, 以描述它的数据模型。IEC61850没有用任何正式的建模语言, 而只是依赖文本的描述, 即将模型核对的工作交由人工完成。因此,首先必须开发IEC61850 的UML 模型, 这样就建立了基于两个标准的数据对象语意的模型映射。该UML模型是IEC61850 到IEC61970 数据表示方式的双向的映射基础。IEC61970 中的CIM/XML是一种用XML 表述CIM 模型的语言,而IEC61850中SCL在第六部分被标准化为一个XML模式(XML Schema),它只对IEC61850 的一部分进行了建模。为了表征物理层设备装置,必须对数据库进行设计。管理EMS/SAS的相关数据可以采用高速数据采集HSDA(High-Speed Data Acquisition)接口服务,储存与EMS相关的历史数据可以采用时间序列数据访问TSDA(Time Sequence Data Access)接口服务。在基于IEC的抽象描述基础上,定义监控功能所要求的服务以及设计监控服务,以解决抽象服务与数据模型之间的适应性问题。
IEC61970标准中定义了基本的变电站一次设备模型,设备维护业务流程在IEC61968中定义,对二次设备模型定义的仅有SCADA包中的RemoteUnit和保护包中的ProtectionEquipment,IED在IEC61850中的概念在IEC 1970中属于RemoteUnit的一种,RemoteUnit在IEC 61850中却不存在,这正是因两个标准不一致而导致模型难以协调。IED是变电站中的直接信息来源,其范畴应该包括RTU、Substation control system等,也包括Protect包中的ProtectEquipment。IEC61970由公共信息模型(CIM)提出对象数据模型,其描述电力系统运行管理中的各种实体及其关系,用来做电力企业应用集成的公共语义。IEC 61850只提供变电站自动化系统的所有实体对象和控制信息描述,并没有提出对象数据模型。为了提高系统应用的协同工作,IEC61850的对象数据模型必须在CIM下进行定义和整合[3],图2为IEC61850状态监测模型向CIM模型的适配过程。实现变电站设备状态模型的基本协调,需通过以下步骤:(1)解除二次设备在IEC61970中分散不一的与其他设备的关联关系; (2)把这些二次设备抽象形成IED类,并归为一种设备类(Equipment),建立继承关系;(3)根据实际配置情况构建一次设备与二次设备的对应关联。
整合的CIM数据模型总体表述变电站自动化系统的设备装置,逻辑节点定义继承采用IEC 61850标准。可以通过把CIM模型中电力系统实体与IEC61850的逻辑节点容器结合起来,从而使IEC61970也可以管理传统变电站自动化系统。图3为CIM模型中PowerSystemResource实体和IEC61850标准中LocalNodeContainer数据模型之间连接对应关系。
为了表征变电站自动化系统设备装置,可以用LNode定义具体实体。可以由IEC61850-7-3和IEC 61850-7-4提供的逻辑节点和数据类信息设计新的实体,新的实体包含:断路器、开关刀闸、测控装置、发电机等设备信息。图4为新实体各部分之间关系。
3 基于Web Service和CORBA的Web整合实现
在EMS/SAS监控系统中,访问CORBA构建的服务器时,要求客户端必须安装对象请求代理(ORB)环境,而访问Web Services服务器的客户端无需安装任何组件执行系统,采用解析简单对象访问协议(SOAP)消息即可,SOAP通过超文本传送协议(HTTP)传输XML文件。所以基于EJB/CORBA/DCOM组件技术还应该结合Web Services技术增强网络传输功能。通过CORBA服务器和Web Services 客户端间用Web Services 作为代理,如图5所示,可以实现CORBA CIS服务器和Web Services CIS服务器的集成。
代理的一端从Web Services客户端接收SOAP消息;另一端则通过ORB总线连接CORBA服务器。对于Web Services客户端,代理相当于Web Services服务器;对于CORBA服务器,代理相当于CORBA客户端,其工作过程如图6所示。
对象管理组织(OMG)使用接口定义语言(IDL),利用类似Java语言类似语法定义IEC61970中的CIS,直接对应OMG CORBA组件模型[4],则Java、 CORBA、Web Services之间需要进行数据映射。下面以DAF(Data Access Facility)中DAFQuery包为例说明其之间的映射关系[5]。DAFQuery包最重要的组成部分是Resource QueryService服务接口,Resource QueryService定义了用作基本资源查询的4个公共方法:get_values()、get_extent_values()、get_related_values和get_descendent_values。下面介绍利用Java和CORBA实现get_values()、get_extent_values()的方法。
get_values()方法IDL原型:
ResourceDescription get_values(in ResourceID resource, in PropertySequence properties)
raises(UnknownResource,QueryError);
Java原型:
Public ResourceDescription get_values(ResourceID resource,ResourceID[]properties)
throws QueryError,UnknownResource;
异常处理:如果数据提供方没有找到resource表示的资源实例或者properties表示的属性序列中的任一属性,抛出UnknownResource异常;如果查询失败,抛出QueryError异常。
get_extent_values()方法IDL原型:
ResourceDescriptionIterator get_extent_values(in PropertySequence properties, in ClassID class_id)
raises(UnknownResource,QueryError);
Java原型:
Public ResourceDescriptionIterator get_extent_values(ResourceID[]properties, ResourceID class_id)
throws QueryError,UnknownResource;
异常处理:如果数据提供方没有找到class_id表示的资源类或者properties表示的属性序列中的任一属性,则抛出UnknownResource异常;如果查询失败,则抛出QueryError异常。
IEC61970和IEC61850定义了各自的数据模型和通信接口标准,但它们之间并没有统一的数据模型和通信接口标准。针对IEC61970EMS系统与IEC61850变电站模型之间的差异,本文采用整合的方法,利用各自的优势,将IEC61970和IEC61850标准结合起来,通过整合CIM数据模型,总体表述变电站自动化系统的设备装置,而逻辑节点定义继承采用IEC61850标准。可以通过把CIM模型中电力系统实体与IEC61850的逻辑节点容器结合起来,从而使IEC61970也可以管理传统变电站的自动化系统。针对CORBA和Web Services各自的优点,以公共对象请求代理体系结构(CORBA)CIS服务器为基础,实现了CORBA和Web Services的集成。
上一篇:基于嵌入式Linux操作系统的可视化安全倒车系统
下一篇:采用AVR Flash微控制器的电动车窗防夹系统
推荐阅读最新更新时间:2024-05-02 21:12