基于CIM模型的智能变电站和调度中心互操作研究
2013-05-24朱伯通程志海唐志强
朱伯通,程志海,唐志强,蒋 维
(广东电网公司佛山供电局,广东 佛山 528000)
0 引言
随着智能电网的发展[1-3],国际电工委员会制定了IEC61970 和IEC61850 等标准,IEC61970 标准主要针对调度中心系统,CIM 模型定义了电力系统中设备和功能的模型,给出了典型数据的描述[4]。IEC61850 标准针对的是变电站系统,对象模型对变电站的一次结构、智能电子设备和通信系统进行建模[5]。由于技术和标准在制定和开发过程中存在一定的差异,造成调度中心系统和智能变电站系统之间数据交换的困难[6-7]。
文献[8]通过分析模型结构和数据结构的差异,创建了CIM 模型和对象模型的整合模型,并采用数据映射的方法实现了模型的互操作,但在对模型结构和内容的分析上,没有深入研究类、关系及其属性的协调方法。文献[9-11]研究了在不同平台不同系统下,利用XML 实现数据交换的可行性,然而文献中没有分析XML 文档与CIM XML 文档转换实现的方法。
本文分析了CIM 模型和对象模型的体系结构,通过对模型的类、关系以及属性的协调,实现模型互操作,通过设计数据交换实验平台,实现调度中心系统和智能变电站系统之间的数据交换。
1 模型体系分析
国际电工委员会创建了IEC61970 的CIM 模型和IEC61850 的对象模型,用来描述现实世界中电力系统的设备和功能。模型在创建上依据抽象程度的不同可以划分为三个层次[12],分别为系统实例层、系统模型层以及元模型层。系统实例是实际应用中的系统和功能,能够完成工作所要求的任务。系统模型是对系统实例的抽象化,是对实际系统和功能的抽象描述。而元模型是对系统模型的抽象化,描述了建立模型的方式、模型的语义等,是对建模的规范性定义。模型的三层体系如图1所示。
图1 模型体系分析Fig.1 Model system analysis
基于UML 的元模型定义了各种模型元素,IEC61850 定义了类、属性以及操作等基本元素,而IEC61970 定义了类、属性以及关系等基本元素。系统模型是对元模型的实例化,将实际对象抽象为类,如断路器被抽象为断路器类Breaker。系统实例为实际的对象,其中包含了物理设备和功能。
在设备的实例化过程中,系统模型利用元模型定义的基本元素解析抽象类中所包含的内容,而系统实例将系统模型层面的抽象类进行具体化,如定义编号、名称等具体信息。以IEC61850 中断路器模型的实例化过程为例,首先在元模型层定义三种元素,分别为类元素Class、属性元素Attribute 和操作元素Operation,在系统模型层,利用基本元素定义断路器类Breaker,属性名称name 和属性编号id,以及投运、停运、检修等操作。而在系统实例层,通过赋予各元素具体信息来实现实例化,如编号定义为126,名称定义为Breaker_126 等,具体的实例化过程如图2所示。
图2 模型实例化过程Fig.2 Model instantiating process
2 模型差异分析
由于两种标准的建模粒度不同,造成CIM 模型和对象模型之间存在一定的差异,例如IEC61850中的保护模型比CIM 模型中的保护模型要更加具体,而在拓扑模型上,CIM 模型定义的更加完整。以变电站模型为例,IEC61850 定义的变电站模型描述了变电站的一次设备以及这些设备之间的电气连接关系,并且通过一次系统元素的逻辑节点定义了其系统功能,如图3所示。
图3 IEC61850 的变电站模型Fig.3 Substation model of IEC61850
CIM 模型对变电站模型的描述是通过设备容器进行的,容器类是变电站设备类的基类,而设备容器类继承于设备类,这就为CIM 模型提供了很大的灵活性,可以使模型适应于不同的国际惯例以及各种不同的差异,变电站模型如图4所示。
图4 IEC61970 的变电站模型Fig.4 Substation model of IEC61970
比较图3 和图4,IEC61850 和IEC61970 在对变电站模型的定义上存在不同。在类的定义上,IEC61850 定义了非导电设备类tGeneralEquipment、功能类tFunction、子功能类tSubFunction,以及与变电站设备功能有关的逻辑节点容器类tLNode Container 等。而在IEC61970 中没有这些类。在关系的定义上,IEC61970 的间隔类Bay 与电压等级类VoltageLevel 和变电站类Substation 之间都存在简单关联的关系,而在IEC61850 中,间隔类tBay 与变电站类tSubstation 没有这种关系。
通过以上分析可以看出,IEC61850 的模型和IEC61970 的模型无论在建模方式还是建模力度上都存在不同,这就造成了模型在结构和内容上差异,主要表现在以下几点:
1)模型类存在差异,由于建模内容不同,标准各自定义了一些独有的类,如CIM 模型中定义了保险丝类Fuse,在IEC61850 中没有这个类的定义。
2)模型关系存在差异,CIM 模型中定义的类之间的关系都是双向的,这为建模带来了灵活性,而在对象模型中,大部分类之间的关系是单向的。
3)模型属性存在差异。
3 模型的协调
由于调度系统和智能变电站系统依据不同的标准建立,而标准之间又存在差异,造成系统之间数据交换的困难。由图1 可以看出,系统实例层面的数据交换是基于模型层面的互操作实现的,而模型的互操作要求不同模型之间在内容和结构上达到一致,因此需要将模型定义的类、关系以及属性进行协调。
3.1 类的协调
CIM 模型根据调度系统的需求对电网中设备和功能等进行建模,定义的类只需要对实际工程中需要的信息进行描述,不需要深入细节,而对象模型基于完整的变电站系统,在对模型的定义上更加详细。因此要实现模型的协调,首先要对模型的类进行协调处理,如图5所示。
图5 类的协调Fig.5 Class interoperation
图5 中阴影部分表示CIM模型和对象模型中具有相同定义的类,这部分类代表的事物相同,不需要进行协调,如变电站类Substation、电压等级类Voltage 等。A 表示CIM 模型中定义,而对象模型中没有定义的类,如保险丝类Fuse。B 表示对象模型中定义,而CIM 模型中没有定义的类,如电池类t_Battery。C 表示两种模型中彼此无关联的类。
在类的协调中,可以采用映射的方式实现,将CIM 模型或对象模型中定义的类补充到对方模型中,如图中箭头所示,将A970 中定义的CIM 模型类映射成A850 中的对象模型类,将B850 中定义的对象模型类映射成B970 中的CIM 模型类。
通过类与类之间的映射,可以完善CIM 模型和对象模型的定义,使之更加符合实际应用中两种系统的需求。
3.2 关系的协调
在对CIM 模型和对象模型的类进行协调后,由于增加或者修改了新的类,必然引起新类与标准中固有类之间关系的变化。对新增加的类,在模型中增加此类与其他类的关系,而对删除的类,则在相关联的类中将原来的关系删除,如图6所示。
图6 关系的协调Fig.6 Relationship interoperation
在图6 中,类1 是CIM 模型和对象模型共有的类,类5 属于A970,类3 属于B850,类4 属于C850,类1 与类5 之间具有关系1,类1 与类3 之间具有关系2,类3 与类4 之间具有关系3。通过类的协调,将A970 中的类5 映射成A850 中的类2,B850 中的类3 映射成B970 中的类6。由于映射得到的类2、类6 与类1 之间的关系同原来的类3、类5 一致,因此需要将关系1 映射到类1 与类2 之间,关系2 映射到类1 与类6 之间。由图中还可以看出,IEC61850定义的类3 与类4 之间还具有关系3,但由于类4仅属于IEC61850,没有映射到IEC61970 的类中,因此在类6 中不再保持这种关系。
3.3 属性的协调
IEC61850 类的属性具有“强制”和“可选”两种特性,而在CIM 模型中,除了各类具有的固定属性和从基类继承的属性外,还具有作用属性,包括固定作用属性和从上层基类中继承的作用属性,作用属性表示了两个相关联的类之间的关系。在属性的协调过程中,根据对象模型和CIM 模型的类及关系的协调,找出发生变化的类及其关系。以此对模型中的属性进行补充,如在CIM 模型中,新增加的IEC61850 类,其固有属性继承于原对象模型,但还需要根据CIM 模型定义的方式对属性进行扩展,增加继承属性和作用属性等,如图7所示。
图7 属性的协调Fig.7 Attribute interoperation
图7 中类3 为IEC61850 和IEC61970 共有的类,在将类1 映射到类2 后,类1 与类3 的关系也同样映射到类2 与类3 之间。类1 的属性可根据实际需要分别形成类2 的固有属性和继承属性。由于CIM模型中所有的类都继承于基类,如命名类Name、电力系统资源类PowerSystemResource 等,因此类2也需要增加从基类继承的属性和作用。以电压等级类VolatageLevel 为例,对象模型只定义了name 和desc,而在CIM 模型中需要增加四个继承属性,即Nameing.pathName、Nameing.description、Nameing.name 和Nameing.aliasName,另外还有两个固定属性,即highVoltageLimit 和LowVoltage Limit,由于CIM 模型定义的元素关系能够描述VolatageLevel与其他类之间的关联,因此还需要增加作用属性,其中有固定作用属性Contains_Bays、BaseVoltage和继承作用属性 Contains_Equipments 、OperateBy_Com、PSRType。
4 数据交换实验
4.1 文档转换
完成CIM 模型和对象模型的协调后,可以实现模型层面的互操作,而要实现调度系统和智能变电站系统之间的数据交换,还需要一定的数据载体,IEC 57 工作组提出了通过XML 实现数据交换。在智能变电站系统中,模型利用XML Schema 模式语言解析元模型,定义类、属性、操作等基本元素,SCL 语言利用这些基本元素对系统模型进行描述,在实际应用系统中,数据以XML 文档的形式输出。同样地,在调度系统中,CIM 元模型通过RDF Schema 模式语言解析,定义了类、属性及其关系等元素,RDF 语言对系统模型进行描述,在应用系统中则输出RDF 文档(CIM XML 文档),如图8所示。
图8 文档转换过程Fig.8 Data exchange process
图8 中智能变电站系统将数据以XML 文档A输出,由于XML 文档在数据结构上与RDF 文档有差异,因此文档A 利用RDF Schema 对文档结构进行处理,形成新的RDF 文档A,使之符合调度系统的要求,从而实现系统数据交换。
4.2 数据流程
随着适配器技术的发展,不同的适配器可以提供不同的通信机制,可以通过多种方式从目标源中获得数据。本文依据适配器以及中间件接口技术设计了数据交换流程,如图9所示。
图9 数据流程Fig.9 Data flow
接收适配器从变电站系统中获取相应数据,并发送到接收管道,接收管道将原有数据格式转换成XML 文档,以XML 消息的方式发送到基于CIM模型的中间件接口,通过在中间件中将XML 消息的数据格式进行转换,形成符合调度系统要求的RDF 文档格式,再发送到发送管道,发送管道将文档转换为目标应用程序所用的数据格式,最后通过发送适配器与调度系统进行通信。
4.3 结果分析
本文采用微软开发的BizTalk 软件搭建智能变电站系统和调度系统的实验平台。BizTalk 是微软专门为实现数据交换和应用程序集成而开发的产品,它将XML 语言作为描述计算机之间传送数据的平台。本文利用三台计算机作为实验平台,其中一台计算机安装有BizTalk 服务器,作为数据交换的中间件,另外两台计算机分别模拟智能变电站应用系统和调度应用系统。通过实验结果表明,将CIM 模型和对象模型进行协调后,依据模型创建的数据库系统,能够很好地实现调度系统和智能变电站系统之间的数据交换。
5 结语
本文将CIM模型和对象模型划分为三个层次,分别为元模型层次、系统模型层次和系统实例层次,通过分析各个层次之间的关系,找出模型互操作是实现系统数据交换的关键,进而提出了对模型类、关系及其属性的协调方法。通过对模型的协调,设计模拟实验平台,实现了调度系统和智能变电站系统之间的数据交换。
[1]余贻鑫,栾文鹏.智能电网评述[J].中国电机工程学报,2009,29(34):1-8.
YU Yi-xin,LUAN Wen-peng.Smart grid and its implementations[J].Proceedings of the CSEE,2009,29(34):1-8.
[2]程时杰,李兴源,张之哲.智能电网统一信息系统的电网信息全域共享和综合应用[J].中国电机工程学报,2011,31(1):8-14.
CHENG Shi-jie,LI Xing-yuan,ZHANG Zhi-zhe.Entire-grid-area information-sharing and integrated applications in united information system for smart grid[J].Proceedings of the CSEE,2011,31(1):8-14.
[3]刑佳磊,杨洪耕,陈文波.智能电网框架下的开放式电网模型管理系统[J].电力系统保护与控制,2010,38(21):227-232.
XING Jia-lei,YANG Hong-geng,CHEN Wen-bo.Model design of electric system state estimation based on CIM[J].Power System Protection and Control,2010,38(21):227-232.
[4]IEC61970 energy management system application program interface part 301:common information model base[S].2007.
[5]IEC61850 communication networks and system in substations part 6:configuration description language for communication in electrical substations related to IEDs[S].2006.
[6]崔巍,史永,孙兵.基于IEC61970/61968 电网模型构建和整合[J].电力系统保护与控制,2011,39(17):60-63.
CUI Wei,SHI Yong,SUN Bing.The construction and integration of grid model based on IEC61970/61968[J].Power System Protection and Control,2011,39(17):60-63.
[7]陈爱林,乐全明,冯军,等.代理服务器在智能变电站和调度主站无缝通信中的应用[J].电力系统自动化,2010,34(20):99-102.
CHEN Ai-lin,LE Quan-ming,FENG Jun,et al.The study of information share between IEC61850 and IEC61970[J].Automation of Electric Power Systems,2010,34(20):99-102.
[8]罗建,朱伯通,蔡明,等.基于CIM XML 的CIM 和SCL 模型互操作研究[J].电力系统保护与控制,2011,25(7):18-22.
LUO Jian,ZHU Bo-tong,CAI Ming,et al.Interoperability of CIM and SCL model based on CIM XML[J].Power System Protection and Control,2011,25(7):18-22.
[9]罗杰,程宏波,陈赤培.基于CIM 模型的电力企业应用集成系统的研究与设计[J].电力系统保护与控制,2008,36(13):74-77.
LUO Jie,CHENG Hong-bo,CHEN Chi-pei.Research and design of data exchange platform based on CIM in power system[J].Power System Protection and Control,2008,36(13):74-77.
[10]何志苠,涂光瑜,罗毅.基于XML 的电力系统异构数据交互应用研究[J].继电器,2004,32(6):13-16.
HE Zhi-min,TU Guang-yu,LUO Yi.Application of XML technique to data exchange in power system automation[J].Relay,2004,32(6):13-16.
[11]张滨,阮鸿飞,马平.IEC61850 与IEC61970 信息共享研究[J].电力学报,2009,24(5):405-408.
ZHANG Bin,RUAN Hong-fei,MA Ping.The study of information share between IEC61850 and IEC61970[J].Journal of Electric Power,2009,24(5):405-408.
[12]高翔.数字化变电站应用技术[M].北京:中国电力出版社,2010:142-150.
GAO Xiang.Digitized substation application technology[M].Beijing:China Electric Power Press,2010:142-150.