首页> 中国专利> 由IEC61850 SCD文件生成嵌入式远动系统装置定义的方法

由IEC61850 SCD文件生成嵌入式远动系统装置定义的方法

摘要

一种由IEC61850 SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:包括以下步骤1)采用SAX方式来分割整个SCD文档;2)采用DOM方式解析分割后的各个xml文档;3)根据SCD文件中数据集名到远动系统的装置定义数据库中数据类型映射关系,以及远动系统所需CDC属性的预定义规则,得到远动系统数据库所需的装置信息,从而生成远动系统装置定义。本发明使用SAX方式和DOM方式相结合解析SCD文件,在小资源运行环境下也能由较大规模的SCD文件生成系统装置定义数据库。解决了以往远动系统中模型映射工作需要人工干预,导致效率较低下且错误排查困难的问题。

著录项

  • 公开/公告号CN101694952A

    专利类型发明专利

  • 公开/公告日2010-04-14

    原文格式PDF

  • 申请/专利权人 国电南京自动化股份有限公司;

    申请/专利号CN200910035963.4

  • 发明设计人 曾元静;李忠明;

    申请日2009-09-28

  • 分类号H02J13/00(20060101);G06F17/30(20060101);G06F17/22(20060101);

  • 代理机构32224 南京纵横知识产权代理有限公司;

  • 代理人董建林;许婉静

  • 地址 210003 江苏省南京市鼓楼区新模范马路38号

  • 入库时间 2023-12-17 23:40:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-11-07

    专利实施许可合同备案的生效 IPC(主分类):H02J13/00 合同备案号:2012320000943 让与人:国电南京自动化股份有限公司 受让人:南京国电南自电网自动化有限公司 发明名称:由IEC61850SCD文件生成嵌入式远动系统装置定义的方法 申请公布日:20100414 授权公告日:20120425 许可种类:普通许可 备案日期:20120911 申请日:20090928

    专利实施许可合同备案的生效、变更及注销

  • 2012-04-25

    授权

    授权

  • 2010-05-26

    实质审查的生效 IPC(主分类):H02J13/00 申请日:20090928

    实质审查的生效

  • 2010-04-14

    公开

    公开

说明书

技术领域

本发明描述了一种由IEC61850SCD文件生成嵌入式远动系统装置定义的通用方法,涉及IEC61850标准、数字化变电站和远动系统,属于电力自动化技术领域。

背景技术

在变电站自动化系统和调度端应用系统中根据配置的变化更新应用系统(如装置信息管理、定值整定等),并根据应用对IED进行设置,在整个调度运行和专业管理工作中都是相当重要的环节。

对远动装置的配置通常由工程人员手工输入配置信息表进行配置。在保证系统安全性的前提下,远动装置的配置管理也可通过事先定义模板自动进行。但变电站内远动装置根据厂家、型号的不同差异较大,采用的通信协议亦可能不同。要在调度端根据其配置情况和应用进行实时更新需要在协议转换和数据维护上消耗大量资源和时间。

IEC TC57在《IEC61850标准--变电站通信通信网络与系统》中定义了专用的变电站智能电子设备配置语言(Substation Configure Language,SCL)。SCL描述的是允许不同厂家的配置工具和系统配置工具间可互操作的变电站系统配置数据。使用SCL形成标准化的配置文件,可以避免协议转换的开销,同时大大减少数据集成和维护的成本,使系统升级、IED控制变得更为方便。

变电站系统配置描述文件(Substation Configuration Description,SCD)是符合SCL规范的是全站系统配置文件,它描述了所有IED的实例配置和通信参数、IED之间的通信配置以及变电站一次系统结构,以及信号联系信息。它从面向变电站一次,二次设备对象的角度描述了完整的变电站配置。

IEC61850只关心通信层面的互操作而不限制厂商具体的产品实现,而电力系统远动数据是基于信息分类二维表协议,如IEC 60870-5-104,IEC60870-5-101等来传输的。用户也习惯于以事件、告警、压板、定值等分类信息查看系统信息。SCD文件中已经包含了远动系统所需设备信息的描述,如果在远动系统装置中再手动输入这些变电站IED的定义显然是一种不经济的行为。因此,有必要研究如何从IEC 61850SCD文件生成远动系统数据库以分类信息表示的装置定义。

发明内容

本发明所要解决的技术问题是如何从IEC 61850SCD文件生成远动系统数据库以分类信息表示的装置定义。

为解决上述技术问题,本发明提供一种由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:包括以下步骤

1)采用SAX方式来分割整个SCD文档为多个xml文档;

2)采用DOM方式解析分割后的各个xml文档;

3)根据SCD文件中数据集名到远动系统的装置定义数据库中数据类型映射关系,以及远动系统所需CDC属性的预定义规则,得到远动系统数据库所需的装置信息,从而生成远动系统装置定义。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤1)中,采用SAX方式来分割整个SCD文档,提取“Communication”、“DataTypeTemplates”和“IED”标记,将整个文档切割成一个Communication.xml文档,一个DataTypeTemplates.xml文档和若干个ied_装置名称.xml文档;

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤2)中,在采用DOM方式解析Communication.xml文档过程中,载入Communication.xml生成COMM树,遍历该树儿子节点SubNetWork,即子网,根据其属性得到子网名称、类型和个数,针对远动系统数据库有选择性的导入类型为MMS的通信子网。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤2)中,采用DOM方式解析DataTypeTemplates.xml文档过程中,载入DataTypeTemplates.xml文档,生成DataTypeTemplates树,解析ied_装置名称.xml文件时,遍历该树,获取CDC和DAName。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤2)中,采用DOM方式解析ied_装置名称.xml文档过程中,包括以下步骤

a)载入ied_装置名称.xml文件生成IED树,遍历该树,由IED属性生成装置基本配置信息;

b)接着由LDevice生成装置CPU信息;

c)再由DataSet生成点的分组类型;

d)最后由FCD/FCDA生成点的信息,层层递近导入装置的完整定义,释放IED树,从而释放内存。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤a)中,遍历IED树,由IED属性得到装置名称、类型、厂家、版本等信息,以及由子网信息获取的装置通信地址,这部分信息作为远动系统数据库中装置的基本信息。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤b)中,遍历IED树的子节点AccessPoint,该访问点与子网MMS通信,其孙子节点LDevice映射到远动系统数据作为装置的一个CPU。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤c)中,遍历LDevice的儿子节点LNO,LNO的儿子节点DataSet映射到远动系统数据库相当于信息点所属类型,由DataSet数据集属性名称定义远动系统的装置CPU下所包含的信息类型。

前述的由IEC61850SCD文件生成嵌入式远动系统装置定义的方法,其特征在于:在所述步骤d)中,遍历DataSet节点的儿子FCD或FCDA,FCDA直接映射到远动系统装置的一个点,而FCD则数据对象遍历DataTypeTemplates树得到其CDC和对应DAName,对DAName进行筛选,FCD映射到远动系统装置的一个或多个点。

本发明的原理为:

1、SAX和DOM相结合的SCD文件解析方式

变电站系统配置描述文件(Substation Configuration Description,SCD)是符合变电站描述语言(Substation Configuration Language,SCL)规范的全站系统配置文件。SCL是IEC61850标准在可扩展标记语言(Extensible MarkupLanguage,XML)基础上定义的一套语言。通常解析XML文件有两种方式:一种是流式(Simple API for XML,SAX)解析方式,另一种是面向文档的对象式(Document Object Model,DOM)解析方式。

DOM是一种基于树型的解析技术,解析器读入整个XML文档,构建一个完整的树型结构驻留内存,操作该树可实现对整个XML文档进行全面和动态访问。因此,对于层次结构非常复杂的SCD文档来说,运用DOM方式来解析显得更加灵活和简单,降低开发难度。然而,因为DOM方式一次性加载整个文档到内存中,对资源开销很大,针对大规模的SCD文档(通常一个实际变电站的SCD文件可能会达到30M字节以上),如果在资源有限的嵌入式系统下运行,很容易导致内存溢出。

SAX是一个用于处理XML事件驱动的“推”模型,在读取文档时激活一系列事件,这些事件被推给事件处理器,然后由事件处理器提供对文档内容的访问。SAX模型最大的优点是内存消耗小,因为整个文档无需一次加载到内存中,SAX可解析大于系统内存的文档,因此SAX能提供对SCD文件内容的有效低级访问。SAX的缺点是必须实现多个事件处理程序处理所有到来事件,同时必须在应用程序中维护事件状态,因为SAX解析器不能交流元信息,如DOM的父/子支持,所以必须跟踪解析器处在文档层次的哪个位置。显然,文档越复杂,应用逻辑就越复杂。对于复杂的SCD文件,利用SAX方式解析则加大了程序开发难度。

从以上分析不难看出,SAX和DOM的各自的优缺点形成互补:DOM使用内存保存对象结构,而SAX则基于事件并且不使用内存来存储任何数据。远动系统一般运行在内存资源有限的嵌入式装置内,内存资源有限。因此,采用SAX方式将大规模的SCD文件按规则分解若干个小文件,再采用DOM方式依次解析分割后的文件,不仅解决了内存瓶颈的问题,同时也大大地降低了解析SCD文件的难度。

2、SCD文件中装置信息与远动系统数据库装置定义的映射

SCD文件从通信角度描述站内的一次设备,二次设备信息,以层次化的面向对象的角度来组织数据。从一次设备角度看,分为变电站、电压等级、间隔、一次设备、逻辑节点等层次,从二次设备的角度来看分为智能电子设备(IED)、访问点(AccessPoint)、逻辑设备、逻辑节点。

远动系统数据库的信息组织也是分层次的,有变电站、电压等级、间隔、二次设备等,分类型的数据,如遥信、遥测、遥控、遥调、事件、告警、压板、定值等。

两者比较可见,从变电站、电压等级和间隔上来看,两者信息可以直接映射。但从用户查看信息的习惯性出发,远动系统数据库又进行了细分和重新组织,形成了多个分类数据类型。这部分信息在SCD文件中没有定义,这是由IEC61850SCD文件生成嵌入式远动系统装置定义的关键所在。

在IEC61850标准中,描述一个信号(对应系统数据库的一个数据点)只需要该信息点的逻辑设备、逻辑节点、功能约束,数据对象名、数据属性就可以唯一确定使用。因此,在远动系统数据库中找到各个数据点,进行分类,并找到这些数据点的包括逻辑设备,逻辑节点,数据对象,数据属性的全路径属性引用,即可完成导入数据库的主要工作。

为便于工程实施,假定:

(1)同一数据集的数据成员必须为同一类的分类信息,如均为遥信,或事件等,但并不要求所有同类的信息都属于一个数据集。

(2)对于定值、遥控等,尽管定义数据集对程序运行没有意义,但为了便于工程实施,也同样需要分别定义一个或数个数据集来包含定值数据和遥控数据。

基于上述假设,系统中需要的所有数据必定属于某一个数据集中,某一数据集中的所有数据必定属于某一个特定的信息类型。因此,可以根据具体的工程规范所建立的SCD文件生成一个数据集名称到信息类型的规则模板表格,表1为数据集名称到分类信息映射表。

表1

  数据集名称  信息类型  dsRelayDin  遥信  dsTripInfo  事件  dsAlarm  告警  dsWarning  告警  dsParameter  定值  dsSetting  定值  dsRelayEna  压板  dsRelayAin  遥测  dsDin  遥信  dsAin  遥测  ...  ...

由于数据集中可能包含单个的数据属性(FCDA),也可能是通用数据类对象(FCD),对于FCDA可以直接映射到远动系统数据库,而对于FCD,则需要从数据类型模板中搜索它所属的公共数据类(CDC),再由CDC确定数据属性。CDC可能包含多个数据属性,而远动系统装置定义只需要其中的一个或几个数据属性,比如:对于类型SPS,只需要将它的stVal属性数据映射到系统数据库;而对于类型ACT则要将多个属性数据,如phsA、phsB、phsC等都分别映射到数据库,为不造成数据冗余,定义如表2所示特定CDC类型、远动系统所需的数据属性,以及对应远动系统内部类型定义的规则定义表格。表2为CDC属性到远动系统内部类型的映射表。

表3

  CDC  DaName  系统内部类型定义  SPS  stVal  单点信息  DPS  stVal  双点信息  ACT  general  带CP56Time2a时标的单点信息  ACT  phsA  带CP56Time2a时标的单点信息  ACT  phsB  带CP56Time2a时标的单点信息  ACT  phsC  带CP56Time2a时标的单点信息  ACT  neut  带CP56Time2a时标的单点信息  MV  mag$f  浮点数  MV  mag$i  整数  DPC  双点命令  SPC  单点命令  ASG  setMag$f  浮点数(4字节)  ASG  setMag$i  带符号整数(4字节)  ING  setVal  带符号整数(4字节)  STG  setVal  字符串  SPG  setVal  无符号整数(1字节).........

本发明的有益效果:

本发明使用SAX方式和DOM方式相结合解析SCD文件,在小资源运行环境下也能由较大规模的SCD文件生成系统装置定义数据库。

本发明根据SCD文件中数据集名到远动系统的装置定义数据库中数据类型映射关系,以及远动系统所需CDC属性的预定义规则,得到远动系统数据库所需的装置信息,从而生成远动系统装置定义,解决了以往远动系统中模型映射工作需要人工干预,导致效率较低下且错误排查困难的问题。

附图说明

图1是采用SAX和DOM方式解析SCD文件生成远动系统数据库装置定义的流程图;

图2是采用DOM方式遍历IED树生成远动系统数据库装置定义的流程图。

具体实施方式

本发明提出了结合SAX和DOM的方式来解析SCD文档,基于SCD中数据集名到远动系统数据库数据类型映射,以及系统所需公共数据类(CDC)属性的预定义规则,自动生成远动系统装置定义。下面结合附图1、图2,说明本发明的具体实施:

首先,用SAX方式来分割整个SCD文档,提取“Communication”、“DataTypeTemplates”和“IED”标记,将整个文档切割成一个Communication.xml(通信网络文件)文档,一个DataTypeTemplates.xml(数据模板文件)文档和若干个ied_装置名称.xml(装置文件)文档;然后,采用DOM方式解析各个xml文档。

根据SCD文档大小不同,切割后的文档大小也不一样,Communication.xml文档是描述了逻辑节点间的通信连接和IED的访问点,一般不超过50Kb大小;DataTypeTemplates.xml文档描述数据类型模板,包括LNodeType(逻辑节点类)、DOType(数据对象类)、DATtype(数据属性类)和EnumType(枚举类),大小也在100Kb左右;ied_装置名称.xml文档描述了各个智能电子装置模型,包括它提供的服务、访问点、逻辑设备、逻辑节点、数据集等,大小在几十到几百Kb不等,即使在较小资源环境下运行,也能满足用DOM方式解析对内存需求。

其次,将Communication.xml文档载入生成COMM树,通过遍历节点SubNetWork(子网),根据其属性得到子网名称、类型和个数,工程人员可以有选择性的导入子网。对于远动系统数据库来说,只需要导入类型为MMS的通信子网。

再次,选定子网后,由其儿子节点ConnectedAP(连接点)的属性得到该子网下所有连接点的名称、对应的装置名称和个数,其孙子节点address则表明每个装置的通信地址。接下来,将子网下的所有连接点(装置)逐个导入,根据装置名称选择IED文件,创建IED树型结构,利用DOM方式遍历该树,提取远动系统所需要的装置信息。

另外,需要事先载入DataTypeTemplates.xml文档生成DataTypeTemplates树,因为每解析一个IED文档都需要对DataTypeTemplates树进行访问。

以下说明利用DOM方式遍历IED树生成远动系统装置定义的具体过程:

第一步,由IED属性生成装置基本配置信息。由父亲节点IED属性,得到装置名称、类型、厂家、版本等信息,加上之前得到的装置IP通信地址,将这部分信息作为一个装置基本配置信息存入远动系统数据库中。

第二步,由LDevice(逻辑设备)生成装置CPU信息。遍历IED树的儿子节点AccessPoint(访问点)。在一棵IED树中,该访问点可能有多个,因为一个装置往往与多个通信子站连接。选择连接MMS通信子网的访问点进行遍历,该访问点的孙子节点LDevice(逻辑设备)映射到远动系统数据作为装置的一个CPU。换句话说,有几个LDevice,该装置就有几个CPU。由逻辑设备即可取得装置CPU的信息(包括CPU个数,CPU名称,CPU地址字符串等)。

第三步,由DataSet(数据集)生成点的分组类型。一个LDevice至少包含一个LN(逻辑节点)和LNO(逻辑节点LNO),主要对信息点进行了具体分类和详细描述。其中LNO包括DataSet(数据集),该节点映射到远动系统数据库相当于信息点所属类型(如遥信组,遥测组等),而事实上,为了能够产生映射关系,预定义了数据集名称到分类信息的映射表(如表1所示)。因此,对照映射表,由遍历DataSet节点取得的数据集属性名称便可定义远动系统的装置CPU下所包含的信息类型。LNO还包括ReportControl(报告控制块),但以往的远动系统没有报告控制的概念,所以报告控制块映射到远动系统装置的专门定义的属性中,并且该属性与CPU关联。

第四步,由FCD/FCDA生成点的信息。DataSet(数据集)的儿子节点FCDA(单个数据属性)或者FCD(通用数据对象),则定义了数据集下的信息点。对于FCDA,根据其属性LDInst(逻辑设备)、LNInst(逻辑节点)、LNClass(逻辑点类)、DOName(数据对象名)、DAName(数据属性),便可得到该点唯一信息(包括点的描述,点的地址字符串)。而对于FCD来说,DAName由其它的属性共同决定,这就需要访问事先生成的DataTypeTemplates树来取得DAName。在这之前,需要遍历LN,根据LNInst、LNClass、DOName来确定LNType(节点类型)。然后遍历DataTypeTemplates树,根据LNType、LNClass、DOName得到CDC(公共数据类)以及该类下的所有数据属性。

一个CDC下可能会遍历出多个DAName,而远动系统可能应用到DAName的却是其中一个或几个,如果把所有的DAName全部导入远动系统数据库势必造成数据冗余。为了解决这个问题,预定义了一张映射表(如表2所示),该表定义了CDC属性到远动系统内部数据属性和类型的映射关系。对照该表,选择远动系统所需要的DAName,以及其对应的数据类型,写入系统数据库。

按照上述几个步骤,解析ied_装置名称.xml文档,由IED属性生成装置基本配置信息,接着由LDevice生成装置CPU信息,再由DataSet生成点的分组类型,最后由FCDA生成点的基本信息,层层递近导入装置的完整定义,释放IED树,从而释放内存。当子网下所有连接装置导入完成后,释放DataTypeTemplates树,此时,SCD文件成功导入远动系统数据库。

以上已以较佳实施例公开了本发明,然其并非用以限制本发明,凡采用等同替换或者等效变换方式所获得的技术方案,均落在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号