电网企业CIM模型增量比较工具.pdf

上传人:小** 文档编号:972263 上传时间:2018-03-22 格式:PDF 页数:10 大小:530.73KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010102612.3

申请日:

2010.01.29

公开号:

CN101789042A

公开日:

2010.07.28

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 17/50申请公布日:20100728|||专利申请权的转移IPC(主分类):G06F 17/50变更事项:申请人变更前权利人:华东电网有限公司变更后权利人:华东电网有限公司变更事项:地址变更前权利人:200002 上海市南京东路201号变更后权利人:200002 上海市黄浦区南京东路201号变更事项:共同申请人变更前权利人:上海东云信息技术发展有限公司变更后权利人:上海华东电集能源信息有限公司登记生效日:20110111|||公开

IPC分类号:

G06F17/50

主分类号:

G06F17/50

申请人:

华东电网有限公司; 上海东云信息技术发展有限公司

发明人:

陈琰; 施绮; 李灿; 徐尧强; 吴湘; 马欢; 吴超; 张韧

地址:

200002 上海市南京东路201号

优先权:

专利代理机构:

上海明成云知识产权代理有限公司 31232

代理人:

常明

PDF下载: PDF下载
内容摘要

本发明涉及一种电力系统电网企业IEC61970公共信息模型CIM(Common Information Model)的模型增量比较工具,包括以下步骤:A)解析新版本全量CIM文件;B)建立CIM模型集合A;C)获取存储的前一个CIM模型集合B;D)基于模型比较规则算法进行模型增量比较;E)生成模型增量文件;F)根据模型增量文件存储新版本CIM模型。本发明对CIM文件的解析会花费较少的时间和占用较小的资源,全量存储新的CIM模型节省存储空间。

权利要求书

1: 一种电网企业CIM模型增量比较工具,其特征在于,包括以下步骤: A)解析新版本全量CIM文件; B)建立CIM模型集合A; C)获取存储的前一个CIM模型集合B; D)基于模型比较规则算法进行模型增量比较; E)生成模型增量文件; F)根据模型增量文件存储新版本CIM模型。
2: 根据权利要求1所述的电网企业CIM模型增量比较工具,其特征在于,所述步骤D)包括: 步骤D1)判断对象是否是新对象,即判断集合A中某个对象是否在集合B中存在,若是,则对象加入集合的插入项;若否,则遍历对象; 步骤D2)判断对象是否已过时,即判断集合A中的某个对象是否在集合B中不存在,若是,则对象加入集合的删除项;若否,则遍历对象; 步骤D3)判断对象是否已更改,即判断集合A中某个对象在集合B中存在但其CIM属性或关联关系发生了变化,若是,则对象加入集合的更新项;若否,则遍历属性和对象。
3: 根据权利要求2所述的电网企业CIM模型增量比较工具,其特征在于,所述步骤D1)包括: 步骤D1a)计算:集合A-集合B; 步骤D1b)遍历对象; 步骤D1c)判断对象是否是新对象,若是,则执行步骤D1d);若否,则执行步骤D1e); 步骤D1d)对象加入集合的插入项; 步骤D1e)判断遍历对象是否结束,若是,则执行步骤D2);若否,则执行步骤D1b)。
4: 根据权利要求2所述的电网企业CIM模型增量比较工具,其特征在于,所述步骤D2)包括: 步骤D2a)计算:集合B-集合A; 步骤D2b)遍历对象; 步骤D2c)判断对象是否已过时,若是,则执行步骤D2d);若否,则执行步骤D2e); 步骤D2d)对象加入集合的删除项; 步骤D2e)判断遍历对象是否结束,若是,则执行步骤D3a);若否,则执行步骤D2b)。
5: 根据权利要求2所述的电网企业CIM模型增量比较工具,其特征在于,所述步骤D3)包括: 步骤D3a)计算:集合A&集合B; 步骤D3b)遍历对象; 步骤D3c)遍历属性; 步骤D3d)判断属性或关联关系是否变化,若是,则执行步骤D3e);若否,则执行步骤D3f); 步骤D3e)对象加入集合的更新项; 步骤D3f)判断遍历属性是否结束,若是,则执行步骤D3g);若否,则执行步骤D3c); 步骤D3g)判断遍历对象是否结束,若是,则算法结束;若否,则执行步骤D3b)。

说明书


电网企业CIM模型增量比较工具

    【技术领域】

    本发明涉及模型增量比较方法,尤其涉及一种电力系统电网企业IEC61970公共信息模型CIM(Common Information Model)的模型增量比较工具。

    背景技术

    CIM模型即公共信息模型,是网络管理中的基础模块,它对于综合利用管理数据,成功建立管理体系有着重要意义。通过公共信息模型,可以提供更好的解决方案,促使管理系统更加协力地工作。公共信息模型由一个核心模块和一组由核心模型延伸出来的通用模型组成,分别定义了需要管理的从网络、操作系统到应用程序各个层面上的服务、网络、应用、用户和数据库等主要技术域。

    公共信息模型(CIM),目前为2.2版,以类似对象设计图和称为受管对象格式(MOF)的模型的中性语言描述的形式,提供了一个数据建模环境。在这一点上,CIM建模环境和MOF与统一建模语言(UML)、接口定义语言(IDL)很相似。

    IEC61970公共信息模型CIM(Common Information Model)在电力系统中已有很广泛成熟的应用,基于CIM的电力系统模型往往采用XML文件来描述,CIM XML/RDF模型文件反映电网结构和运行参数,定义了电网设备的信息模型,并已成为工业标准。通用信息模型CIM是电力企业应用集成的重要工具,它包括公用类、属性、关系等,其类(Class)及对象(Object)是抽象的,可以用于许多电力系统应用定义信息交换模型。CIM提供了一个关于电力能量管理系统信息的全面逻辑视图,是一个代表电力企业所有主要对象的抽象模型,包括了这些对象的公有类和属性,以及它们之间的关系。

    一个全量的电网模型CIM文件包括了非常详尽的信息,而且基于XML/RDF格式,所以文件一般都比较大,使用CIM模型文件的系统在获取CIM文件之后通常会进行以下操作:解析CIM文件,获取系统所关心的模型信息;存储CIM模型至数据库;每次CIM模型发生变化之后,使用CIM模型文件的系统又要重新解析新的全量的CIM模型文件。

    大多数模型增量处理的过程如下:

    (1)选择需要比较的CIM模型文件;

    (2)选择前一个版本的模型版本;

    (3)开始进行CIM增量比较;

    (4)生成CIM增量文件;

    (5)根据生成的CIM增量文件,存储新的CIM模型版本。

    通常解析全量CIM模型文件会存在几个问题:

    (1)对CIM文件的解析会花费比较多的时间和占用较大的资源;

    (2)全量存储新的CIM模型过于浪费存储空间。

    所以,一般使用CIM模型文件的系统只需要得到模型的增量信息即可,所以很有必要开发一种CIM模型比较的工具来解决这个问题,通过该CIM模型比较工具,生成CIM模型增量文件。

    有鉴于此,本发明旨在提供一种电网企业CIM模型增量比较工具。

    【发明内容】

    本发明针对现有全量CIM模型文件对CIM文件的解析会花费比较多的时间和占用较大的资源以及全量存储新的CIM模型过于浪费存储空间的不足,提供一种电网企业CIM模型增量比较工具。

    为了达到以上目的,本发明的技术解决方案如下:

    一种电网企业CIM模型增量比较工具,包括以下步骤:

    A)解析新版本全量CIM文件;

    B)建立CIM模型集合A;

    C)获取存储的前一个CIM模型集合B;

    D)基于模型比较规则算法进行模型增量比较;

    E)生成模型增量文件;

    F)根据模型增量文件存储新版本CIM模型。

    所述步骤D)包括:

    步骤D1)判断对象是否是新对象,即判断集合A中某个对象是否在集合B中存在,若是,则对象加入集合的插入项;若否,则遍历对象;

    步骤D2)判断对象是否已过时,即判断集合A中的某个对象是否在集合B中不存在,若是,则对象加入集合的删除项;若否,则遍历对象;

    步骤D3)判断对象是否已更改,即判断集合A中某个对象在集合B中存在但其CIM属性或关联关系发生了变化,若是,则对象加入集合的更新项;若否,则遍历属性和对象。

    所述步骤D1)包括:

    步骤D1a)计算:集合A-集合B;

    步骤D1b)遍历对象;

    步骤D1c)判断对象是否是新对象,若是,则执行步骤D1d);若否,则执行步骤D1e);

    步骤D1d)对象加入集合的插入项;

    步骤D1e)判断遍历对象是否结束,若是,则执行步骤D2);若否,则执行步骤D1b)。

    所述步骤D2)包括:

    步骤D2a)计算:集合B-集合A;

    步骤D2b)遍历对象;

    步骤D2c)判断对象是否已过时,若是,则执行步骤D2d);若否,则执行步骤D2e);

    步骤D2d)对象加入集合的删除项;

    步骤D2e)判断遍历对象是否结束,若是,则执行步骤D3a);若否,则执行步骤D2b)。

    所述步骤D3)包括:

    步骤D3a)计算:集合A&集合B;

    步骤D3b)遍历对象;

    步骤D3c)遍历属性;

    步骤D3d)判断属性或关联关系是否变化,若是,则执行步骤D3e);若否,则执行步骤D3f);

    步骤D3e)对象加入集合的更新项;

    步骤D3f)判断遍历属性是否结束,若是,则执行步骤D3g);若否,则执行步骤D3c);

    步骤D3g)判断遍历对象是否结束,若是,则算法结束;若否,则执行步骤D3b)。

    本发明由于采用了以上技术方案,使之与现有技术相比,本发明具有以下优点:

    本发明对CIM文件的解析会花费较少的时间和占用较小的资源,全量存储新的CIM模型节省存储空间。

    【附图说明】

    图1为本发明的电网企业CIM模型增量比较工具的流程图。

    图2为本发明中的基于模型比较规则算法进行模型增量比较的具体流程图。

    【具体实施方式】

    下面结合附图和实施例对本发明作详细说明。

    参看图1,本发明的一种电网企业CIM模型增量比较工具,包括以下步骤:

    A)解析新版本全量CIM文件;

    B)建立CIM模型集合A;

    C)获取存储地前一个CIM模型集合B;

    D)基于模型比较规则算法进行模型增量比较;

    E)生成模型增量文件;

    F)根据模型增量文件存储新版本CIM模型。

    参看图2,本实施例中,本发明中的基于模型比较规则算法进行模型增量比较具体包括以下步骤:

    步骤D1)判断对象是否是新对象,即判断集合A中某个对象是否在集合B中存在,若是,则对象加入集合的插入项;若否,则遍历对象;

    步骤D2)判断对象是否已过时,即判断集合A中的某个对象是否在集合B中不存在,若是,则对象加入集合的删除项;若否,则遍历对象;

    步骤D3)判断对象是否已更改,即判断集合A中某个对象在集合B中存在但其CIM属性或关联关系发生了变化,若是,则对象加入集合的更新项;若否,则遍历属性和对象。

    所述步骤D1)包括:

    步骤D1a)计算:集合A-集合B;

    步骤D1b)遍历对象;

    步骤D1c)判断对象是否是新对象,若是,则执行步骤D1d);若否,则执行步骤D1e);

    步骤D1d)对象加入集合的插入项;

    步骤D1e)判断遍历对象是否结束,若是,则执行步骤D2);若否,则执行步骤D1b)。

    所述步骤D2)包括:

    步骤D2a)计算:集合B-集合A;

    步骤D2b)遍历对象;

    步骤D2c)判断对象是否已过时,若是,则执行步骤D2d);若否,则执行步骤D2e);

    步骤D2d)对象加入集合的删除项;

    步骤D2e)判断遍历对象是否结束,若是,则执行步骤D3a);若否,则执行步骤D2b)。

    所述步骤D3)包括:

    步骤D3a)计算:集合A&集合B;

    步骤D3b)遍历对象;

    步骤D3c)遍历属性;

    步骤D3d)判断属性或关联关系是否变化,若是,则执行步骤D3e);若否,则执行步骤D3f);

    步骤D3e)对象加入集合的更新项;

    步骤D3f)判断遍历属性是否结束,若是,则执行步骤D3g);若否,则执行步骤D3c);

    步骤D3g)判断遍历对象是否结束,若是,则算法结束;若否,则执行步骤D3b)。

    实际使用中,当一个全量的CIM模型文件提交到业务系统时,业务系统必须识别出哪些对象是原来存在的,哪些是新增的,哪些是被删除的。

    首先,增量处理最重要的环节是如何识别模型对象,即如何识别一个模型对象在CIM历史模型版本中的模型对象是否保持不变。当业务系统具有完善的对象管理功能时,通常可以用业务系统中的模型对象关键字来识别对象,此时增量处理相对简单。而当模型CIM文件中的对象命名无法作为主键时,模型对象识别就必须引入其他的业务属性,按照一定的规则,根据若干属性进行识别。这种规则通常需要根据业务系统的特点和专业知识来制定。

    其次,CIM模型文件内容较多,关系复杂,我们需要高效的解析CIM模型文件找出差异变化,所以必须设计高效的比较算法。

    本发明中CIM模型比较规则为:全量CIM XML模型文件中标识一个模型对象有一些基本属性,如命名cim:Naming.name和rdf:ID。

    cim:Naming.name在一个CIM模型文件中可能会重名,不能使用它作为模型比较的依据。

    在一个CIM模型文件中是用rdf:ID来唯一标识对象,但是rdf:ID没有实际的业务含义,只是在这个CIM模型文件中唯一,另外一个全量CIM模型文件中同一个对象的rdf:ID就可能发生了变化,所以也不能使用rdf:ID作为模型比较的依据。

    实际上,识别一个模型对象是否在不同的CIM模型文件中是同一个,不仅需要模型的命名和其自身业务属性,还需要结合其相关的拓扑结构信息来判断。本发明根据电网模型的特点,研究并设计了具体的模型比较规则,用来对不同CIM模型版本中的模型对象进行识别。对于不同类型的模型对象,其比较规则也是不同的,具体比较业务规则如下:

    CIM模型比较规则

     对象类型 比较规则 BasePower basePower值不同,则为不同对象 BaseVoltage baseVoltage值或者关联的basePower值任一不同, 则为不同对象 LimitSet,Limit, MVArCapabilityC name属性对应的对象是否相同,若不同则该 LimitSet和Limit对象也不同,若相同,则该LimitSet  urve  和Limit对象相同  HeatRateCurve  ThermalGeneratingUnit是否相同,若相同,则对象  相同,若不同,则对象不同  CurveSchedData  CurveSchedule对应的曲线是否相同,若是同一条曲  线(曲线比较原则参照前面所述),则是相同对象,否  则为不同对象  Terminal  首先比较Terminal的ConductingEquipment,如果  ConductingEquipment对应不同的对象,则这2个  Terminal对象肯定不同  如果Terminal对应的ConductingEquipment对象相  同,则继续比较其对应的ConnectivityNode是否相  同,若相同则是同一个Terminal,若不同则为不同  的Terminal  ConnectivityNode  至少有两个对应的Terminal所属的  ConductingEquipment相同,则视为相同对象,否则  为不同对象。  ACLineSegment  首先比较ACLineSegment的name属性,如果不同,  则这2个ACLineSegment对象肯定不同  如果name属性相同,则比较与其连接的设备是否都  相同,若都相同则是相同ACLineSegment,若不同  则为不同的ACLineSegment  其他类型  name属性不同则为不同对象

    该规则可以有效地对华东EMS导出的模型文件进行增量处理。实现中,需要根据业务规则,先处理能识别的对象,然后处理依赖于这些对象的其他对象。在规则设计时,需要考虑相互依赖关系,规则中被依赖的对象本身必须是可识别的。

    本发明中CIM模型比较算法包括:

    算法流程:CIM模型比较规则是用来比较两个模型对象是否是同一个模型对象,而如何遍历所有模型对象进行比较,需要设计高效的比较算法,图2是模型比较算法的具体流程。假设:新的CIM模型文件的模型对象集合为A,前一个CIM模型版本的模型对象集合为B,集合B采取模型适配器模式,可以由用户根据适配器接口进行定制,比如从用户数据库读取模型生成集合B。

    算法优化:建立模型对象关键字,在上述比较算法流程中,我们要判断该对象是否是新对象或者对象是否已过时,就必须找出两个模型版本中同一个模型对象。如何快速地从一个模型版本中找到另一个模型版本中对应的模型对象呢?这里可以在前面比较规则基础上,根据每一个模型的name、模型对象类型和其关联对象,按照一定的算法,为每一个模型对象建立关键字,关键字是其唯一身份标识,记录于该模型对象的CIM属性localname当中,所以localname在一个CIM模型中唯一。建立唯一标识localname的好处是可以在下次进行模型比较时,对于新的CIM模型文件中每一个模型对象,计算出其localname,根据这个localname与存储的前一版本CIM模型中的每一个对象的localname进行比较,如果能找到匹配的localname,则这两个模型对象一定是同一个模型对象,这样就可以极大地提高模型比较效率。

    本发明的CIM模型比较算法中,比如计算集合A相比于集合B的变化,在A集合中的某一个对象,先计算出它的localname,然后找出集合B中是否存在相同localname的对象,如果存在说明该对象不是新对象,如果不存在相同localname的就必须根据前面的比较规则循环遍历所有相同类型对象进行判断。只有遍历完所有对象才能确定该对象是否是新对象。

    缓存机制:另外,CIM模型比较算法采用了缓存机制,可以明显提高比较效率。如果集合A内的对象A1是新对象则缓存A1的状态,A1从集合A中删除;如果集合B内的对象B1是过时对象则缓存B1的状态,B1从集合B中删除;如果A1与B1是同一个对象,则在A1中记录其关联对象为B1,在B1中记录其关联对象为A1。

    综上所述,本发明对CIM文件的解析会花费较少的时间和占用较小的资源,全量存储新的CIM模型节省存储空间。

    当然,本技术领域内的一般技术人员应当认识到,上述实施例仅是用来说明本发明,而并非用作对本发明的限定,只要在本发明的实质精神范围内,对上述实施例的变化、变型等都将落在本发明权利要求的范围内。

电网企业CIM模型增量比较工具.pdf_第1页
第1页 / 共10页
电网企业CIM模型增量比较工具.pdf_第2页
第2页 / 共10页
电网企业CIM模型增量比较工具.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《电网企业CIM模型增量比较工具.pdf》由会员分享,可在线阅读,更多相关《电网企业CIM模型增量比较工具.pdf(10页珍藏版)》请在专利查询网上搜索。

本发明涉及一种电力系统电网企业IEC61970公共信息模型CIM(CommonInformationModel)的模型增量比较工具,包括以下步骤:A)解析新版本全量CIM文件;B)建立CIM模型集合A;C)获取存储的前一个CIM模型集合B;D)基于模型比较规则算法进行模型增量比较;E)生成模型增量文件;F)根据模型增量文件存储新版本CIM模型。本发明对CIM文件的解析会花费较少的时间和占用较小的资。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1