郭 燕,董怀普,纪 陵
(南京国电南自电网自动化有限公司,江苏 南京 211153)
根据智能电网的标准体系,变电站站端遵循的是IEC 61850变电站配置描述语言(Substation Configuration description Language,SCL)模型体系,然而在主站或者是调度端则遵循的是IEC61970标准,采用的是公共信息模型(Common Information Model,CIM)[1,2]。针对传统调度中心自动化系统采集厂站数据时,通常只采集对象数据值,对象数据模型则需要分别在主站和厂站建立,该采集方式容易导致数据采集和控制错误,存在电力生产安全方面的隐患[3]。基于模型无损转换技术能够在厂站端维护IEC 61850 SCL信息模型,并将模型导出为CIM扩展标志语言(Extensible Markup Language,XML)文件,然后传送到主站系统,分析、转换生成CIM模型。这种模型转换方法能够进一步保证厂站与主站系统模型的一致性。
据调查发现,在模型转换方面大部分厂家采用以XML为基础的数据交换方式,国内更多的研究偏重于两个模型的比较、映射以及转换[4-7]。2012年,张海东、张鸿等人对比分析了变电站配置描述(Substation Configuration Deion,SCD)模型与CIM/E模型的差异,研究了两种模型的映射关系,并提出了模型转化方案,该方案在500 kV常熟南智能变电站与智能调度共享建模工程项目中取得了令人满意的效果[4]。2014年,董张卓、孔永超等人针对电力系统资源编码不统一和规则混乱问题,基于CIM模型提出了一种统一、规范的电力系统资源编码思想,保证了系统对象模型的标准性与通用性[8]。
由于模型统一和模型融合需要对现有系统做很大的改动,难以推广应用。本文将从模型映射、无损转换以及编码规则入手,提出IEC 61850 SCL信息模型与IEC 61970 CIM模型之间的转换方案,实现SCD文件与CIM XML文件之间的无损转换,最终解决模型不一致的问题。
由于IEC 61850和IEC 61970标准都是根据相应特定应用对各种对象进行建模,因此它们的模型并不完全一致[9]。SCL和CIM的比较如图1所示。
图1 SCL与CIM模型比较
SCL模型主要包括变电站、通信系统、智能电子设备(Intelligent Electronic Device,IED)以及数据类型模板等。CIM模型是描述整个电力系统资源对象的,其包括数据采集包、量测、保护等。变电站和拓扑模型可以从SCL到CIM进行一致转换,相应处理不一致的部分。
两种模型的差异性导致在实现SCD文件与CIM XML文件之间的无损转换时存在一定的困难[10]。
一是导电设备类的差异,SCL模型中的CON、FAN、PSH、BAT、BSH、RRC以及TCR等设备类型没有合适的CIM类与之对应,两个模型在转换时可能会导致信息丢失。二是量测体系描述差异,在CIM模型中,量测几乎可以描述所有的电力系统资源[11]。在SCL模型中,自然对数(Natural logarithm,LN)和其数据构成的路径可以视作CIM中的量测,该部分关联在逻辑节点中。在量测描述方式上,两者存在较大的差距,使其在模型处理方面具有一定的难度[12]。三是对象标识方法差异,SCL模型对象大部分没有显示定义全站唯一标识,而是通过类元素的层次路径+name等价的标识方式定位到特定对象[13]。基于CIM描述的电网模型,其对象用网络地址(Uniform Resource Locator,URL)标识,这些具有标识符的对象可用对象的主编码进行标识,所构成的层级关系可方便直接定位到特定对象。
变电站模型的作用是用于描述一次设备的相互关联及其连接关系。利用SCL语言描述变电站系统模型的层次结构如图2所示。
图2 SCL模型层次结构
SCL和CIM中都具有变电站、电压等级以及间隔等设备容器。从中会发现两个模型之间变电站和电压等级的结构一致,因此可以直接建立映射关系。SCL中的母线间隔则可以映射到CIM中的母线间隔+母线设备,设备则与CIM的导电设备各派生类相对应。拓扑关系采用连接节点+端子的方式进行定义,映射规则如图3所示。
图3 变电站模型映射规则
SCL模型中采用智能电子设备、逻辑设备、逻辑节点、数据集以及数据分层细化的方式描述数据量测信息,而在CIM中采用量测的方式描述。对SCL模型中已有的测点信息采用表1的规则进行映射。
表1 数据量测映射规则
CIM模型电力系统资源身份标识号(Identity Document,ID)由29位字符组成。从左到右依次为5位行政区域码、1位对象类型码、两位电压等级序列码、6位厂站序列码、3位间隔类型码、两位间隔序列码、3位设备类型码、两位设备序列码、两位端子序列码以及3位连接点序列码。其中,行政序列码分别对应不同地区的供电公司;对象类型码中“B”为变电设施,“F”为发电设施;每个电压等级对应两个字符,构成电压等级序列码;每个间隔、设备类型对应3个字符,构成间隔类型码与设备类型码;厂站序列码、间隔序列码、设备序列码与端子序列码为自动生成的序列号,不同类型下需重新编号;连接点序列码由固定字符“Z”+两位序列号组成。
SCD模型文件到CIM XML文件转换流程如图4所示。SCD模型文件需要符合IEC 61850中定义的Schema语法,如果不符合则需要重新配置。模型转换由CIM模型转换器实现,转换器依赖模型映射规则和编码规则。
图4 SCD文件到CIM XML文件转换流程
模型采用面向对象的编程方法,通过类的定义、封装以及继承完成数据结构设计。其中,VSCD Main Wnd类完成了CIM模型转换器主界面的实现,主要负责发布和接收命令。CIM Dialog类实现了简单的用户界面,负责编码信息的输入,该类继承于QDialog类。CIM Export类是模型转化的关键部分,主要负责变电站一次设备信息的解析、转换以及编码生成功能。Init Sub station Data、init Voltage level Data、 ……、init Conducting Equipment、init Terminal Data、init Connectivity Node Data等类分别实现了变电站、电压等级、间隔、变压器、变压器绕组、设备、端子以及节点的SCD解析和CIM XML文件转换功能。Get Voltage Id、get Bay Id、get Power Transformer Id、get Transformer Winding Id、Connectivity Node Id、get Terminal Id等类分别实现了电压等级、间隔、变压器、变压器绕组、节点以及端子的编码自动生成功能。Access Voltage File类实现电压等级相关的第三方文件的连接和访问功能。Get Node Infor类主要将变电站中所有节点的名称与编码信息存储到node Infro类中。
本文从模型映射入手,采用模型转换的方法,解决了智能变电站与智能调度系统模型不一致的迫切问题。IEC 61850 SCL信息模型与IEC 61970 CIM模型之间的无损转换技术是当前实现模型数据在各级系统之间交换时切实可行的方案,本文的模型转换工具已经成功地应用到现场,并且能够成功地导出CIM XML文件,具有令人满意的效果。