公共信息模型CIM

1.背景
    数字计算机的出现,使电力工程师们将其应用到电力系统分析和控制的每个方面。近年来,随着计算机和网络技术的飞速发展,电能管理系统(EMS)、配电网管理系统(DMS)、电能计量系统(TMR)、变电站自动化系统、火电厂分布式控制系统/监视信息系统(DCS/SIS)、水电厂监控系统、电力市场交易管理系统(TMS)等各类自动化系统覆盖了电力生产发输配售各个环节。

在现代的电力系统运行中,各个应用系统之间,以及各个电力公司之间的数据交换越来越频繁。从电力公司内部不同应用系统之间,到不同的电力公司之间,使用的 数据格式是不同的。这些数据在使用时,通常需要转换成同时适合本公司内部各个应用程序以及适合其他电力公司需要的数据格式。通常情况下,各个应用系统由不 同的开发商提供,所使用的数据模型、应用接口、开发平台千差万别,大多数应用系统仍然基于专有的数据库,给信息的共享带来很大的困难。若要在现有的应用系统基础上实现信息共享,需要进行大量的数据转换工作,而这些呈几何级数增长的大量的数据转换和交换工作浪费了大量的资源。所以,这种交换需要建立在一种统一的、规范的基础之上。电力系统迫切需要信息的共享和应用集成,这样才能保证互联的电力系统能够可靠运行。

针对以上的问题,解决方案是建立一个公共的电力系统信息模型,并提供通用的数据接口。通过公共信息模型(CIM)和组件接口规范(CIS),可以实现应用功能的“即插即用”。“即插即用”应用定义为可以用最小的工作量而且不改动任何源代码就可以安装在系统中的一块软件;这也就是在台式计算机上安装软件包的方式。

电力系统控制及其通信的相关标准是由国际电工技术委员会IEC第57技术委员会负责制定的。但是,由于IEC制定的标准繁多,其中很多存在重复和交叉,从而不利于标准的应用、开发和普及。

1999年IEC TC57大会上,中国代表和德国代表提议TC57应该开发一套电力系统统一的国际标准,加强各工作组之间的协调,筛选现有标准系列,淘汰已经过时的标准,在同一领域只保留一套标准。

1999年,IEC提出了电力系统数据通信协议体系,该协议体系分为5个层次,仅保留4套标准,相互无缝衔接,比较简明。主站侧各应用系统应遵从IEC 61970系列标准;各系统之间的通信应通过电力企业综合总线标准IEC 61968系列;厂站内的站级通信总线和间隔级通信总线都应采用基于以太网的IEC 61850系列标准;主站与厂站之间的数据通信可采用IEC 60870-6 TASE. 2或扩展的IEC 61850系列标准,两种方式各有优劣。

关于CCAPI项目
       1993年,美国电力科学研究院(EPRI)启动了“控制中心应用接口”(Control Center Application Program Interface, CCAPI)研究项目(RP-3654-1),其主要目标是:
1.       减少向EMS中增加新应用所需要的费用和时间。
2.       保护对EMS中正在有效工作的现有应用的投资。
3.       促进不同系统控制中心内部以及控制中心与外部系统之间信息交换的能力。
CCAPI项目的主要任务是形成一套导则或规范,使得能够在控制中心环境中创建“即插即用式”应用。

2. 公共信息模型(CIM)基础

CIM模型是IEC 61970协议整体框架的基础。它是一种描述电力系统所有对象逻辑结构和关系的信息模型,为各个应用提供了与平台无关的统一的电力系统逻辑描述。它定义了电力工业的标准对象模型,提供了一种表示电力系统对象,包括其属性和相互关系的标准。
CIM公共信息模型把电力系统资源(Power System Resource)描述为对象类、属性以及它们之间的关系。从1998年4月开始,CCAPI发布了cimu07a.mdl,开始采用面向对象统一建模语言UML来描述CIM。在UML中,现实世界实体的类型被定义为“类”,实体类型的性质被定义为“类的属性”,实体类型之间的关系描述为“类之间的关系”,包括:继承、关联、聚集。
CIM模型中的对象本质上是抽象的,可以应用在各个系统中。CIM模型有助于不同供应商开发的EMS系统的集成,有助于EMS系统和其他涉及到电力系统运行操作不同领域的应用系统的集成。

2.1   CIM建模表示方法
CIM 用面向对象的建模技术定义。具体地说,CIM规范使用统一建模语言(UML)表达方法,它将CIM定义成一组包。
CIM中的每一个包包含一个或多个类图,用图形方式展示该包中的所有类及它们的关系。然后根据类的属性及与其它类的关系,用文字形式定义各个类。

2.2   CIM的包
CIM划分为一组包。包是一种将相关模型元件分组的通用方法,没有特殊的语义意义。包的选择是为了使模型更易于设计、理解与查看。公共信息模型由完整的一组包组成。实体可以具有越过许多包边界的关联。每一个应用将使用多个包中所表示的信息。
为了方便,整个CIM划分为下面几个包:
•      Core(核心)
•      Topology(拓扑)
•      Wires(电线)
•      Outage(停运)
•      Protection(保护)
•      SCADA
•      Meas(量测)
•      LoadModel(负荷模型)
•      Generation(发电)
•      Production(生产)
•      GenerationDynamics(发电动态)
•      Domain(域)
•      EnergyScheduling(能量计划)
•      Reservation(预订)
•      Financial(财务)
•      Asset(资产)
下面各段落概述了每一个CIM包的内容。
(核心包)
这个包包含所有应用共享的核心的Power System Resource(电力系统资源)和Conducting Equipment(导电设备)实体,以及这些实体的常见的组合。并不是所有的应用都需要所有的Core实体。这个包不依赖于任何其他的包,而其他包中的大部分都具有依赖于本包的关联和普遍化。
(拓扑包)
这个包是Core包的扩展,它与Terminal类一起建立连接性(Connectivity)的模型,而连接性是设备怎样连接在一起的物理定义。另外,它还建立了拓朴(Topology)的模型,拓扑是设备怎样通过闭合开关连接在一起的逻辑定义。拓扑的定义与其它的电气特性无关。
(电线包)
Wires包是Core和Topology包的扩展,它建立了输电(Transmission)和配电(Distribution)网络的电气特性的信息模型。这个包用于网络应用,例如状态估计(State Estimation)、潮流(Load Flow)及最优潮流(Optimal Power Flow)。
(停运包)
这个包是Core和Wires包的扩展,它建立了当前及计划网络结构的信息模型。这些实体在典型的网络应用中是可选的。
(保护包)
这个包是Core和Wires包的扩展,它建立了保护设备,例如继电器的信息模型。这些实体用于培训模拟和配电网故障定位应用。
(量测包)
Meas包包含描述各应用之间交换的动态测量数据的实体。
(负荷模型包)
这个包以曲线及相关的曲线数据的形式为能量用户及系统负荷提供模型。这里还包括影响负荷的特殊情况,例如季节与日类型。
这一信息由负荷预测(Load Forecasting)和负荷管理(Load Management)使用。
(发电包)
Generation包分成两个子包:Production包和GenerationDynamics包。
这个包提供了各种类型发电机的模型。它还建立了生产成本信息模型,用于发电机间进行经济需求分配及计算备用量大小。
这一信息用于机组组合(Unit Commitment)、水力和火力发电机组的经济调度(Economic Dispatch)、负荷预测及自动发电控制(Automatic Generation Control)等应用。
这个包提供原动机,例如汽轮机和锅炉的模型,这些模型在模拟和培训应用中需要用到。
这一信息用于动态培训模拟(Dynamic Training Simulator)应用的机组建模。
(域包)
Domain包是量与单位的数据字典,定义了可能被其他任何包中的任何类使用的属性的数据类型。
此包包含原始数据类型的定义,包括量测的单位和允许的值。每一种数据类型包含一个值(value)属性和一个可选的量测单位(unit),这个单位指定为一个被初始化为该量测单位文字描述的静态变量。枚举型数据的允许值在该属性的文档(documentation)中用UML约束句法在大括号({})内列出。字符串长度在文档中列出,并也被指定为长度性质。

3. CIM类和关系

      每一个CIM包的类图展示了该包中的所有的类及它们的关系。
普遍化是一个较普遍的类与一个较具体的类之间的一种关系。较具体的类只能包含附加的信息。例如,一个电力变压器(Power Transformer)是电力系统资源(Power System Resource)的一种具体类型。普遍化使具体的类可以从它上层的所有更普遍的类继承属性和关系。

关联是类与类之间的一种联系,各个类可以指定一个作用(role)。例如,在PowerTransformer与TransformerWinding之间具有HasA关联(例如,PowerTransformer HasA TansformerWinding)。

聚集是关联的一种特殊情况。聚集表明类与类之间的关系是一种整体-部分关系,这里,整体类由部分类“构成”或“包含”部分类,而部分类是整体类的“一部分”。部分类不像普遍化中那样从整体类继承。

在CIM中使用两种类型的聚集:合成聚集和共享聚集。
合成聚集用于建立合成物的重数为“1”的整体-部分关系模型(即一个部分属于且仅属于一个整体)。合成聚集拥有它的各个部分。
共享聚集用于建立合成物的重数大于1的整体-部分的关系模型(即一个部分可以属于多个整体)。共享聚集是一个部分可以被多个聚集所共享的聚集。

猜你喜欢

转载自daoger.iteye.com/blog/1461552