IEC 61850 标准是迄今为止变电站自动化领域最为完善的通信标准,也是国际电工委员会第 57 技术委员会近年来发布的最重要的一个国际标准。由于在提升设备互操作性方面的杰出表现,以及面向未来需求的开放性、可扩展性,IEC 61850 标准在全世界范围内得到了广泛应用,目前已经成为智能变电站乃至智能电网领域的核心标准之一。我国电力行业标准化委员会对IEC 61850 系列标准进行了同步的跟踪和翻译工作,标准的 14 个分册被转换成国内的DL/T 860 系列标准。
智能变电站中的继电保护装置及相关设备均采用IEC 61850标准通信。在常规变电站中,如果说保护装置原理图和设计蓝图是调试人员及运行维护人员最重要的技术资料,则在智能变电站中,IEC 61850 配置文件(特别是SCD文件)是二次调试人员最重要的资料。原因在于全站IED装置之间的通信及电流电压、开入开出虚端子联系均由SCD文件定义。
随着光纤网络通信取代传统电缆接线,常规站工程调试中以往一些查线、对点的工作在智能变电站中变成了对配置文件中参数与信息的核对检查工作,因此工程调试人员需要深入了解配置文件的格式并掌握其测试方法。
IEC 61850 配置文件是利用变电站配置描述语言SCL描述变电站设备对象模型后生成的文件。IEC 61850—6 部分定义了变电站配置描述语言SCL(Substation Configuration Language),SCL是根据变电站配置的特殊要求定义的一种电力行业专用标记语言,它在语法上遵循XML的语法规定。SCL的应用使得变电站设备自描述、设备的在线配置及相互之间的互操作可以方便地实现。利用SCL可以方便地搭建IEC 61850 层次化模型,从而采用统一规范的格式对变电站及站内IED进行描述。
配置文件是利用SCL语言描述变电站设备对象模型后生成的文件,用于在不同厂商的配置工具之间交换配置信息。通过一系列配置文件的传递,不同厂商的智能设备就能知道与对方通信所需要的数据信息,从而实现通信双方配置信息的交换。因此配置文件是智能变电站系统功能实现的基础。配置文件具体描述变电站及站内IED的实际配置信息,如变电站开关场一次接线拓扑、站内IED的IP地址、GOOSE联线信息等。
1. IEC 61850 定义的四种配置文件
(1)ICD文件:IED Capability Description,即IED能力描述文件,由装置厂商提供给系统集成厂商,该文件描述IED提供的基本数据模型及服务,但不包含IED实例名称和通信参数。
(2)SSD文件:System Specification Description,即系统规范文件,该文件描述变电站开关场一次系统结构以及相关联的逻辑节点,最终包含在SCD文件中。
(3)SCD文件:Substation Configuration Description,即全站系统配置文件,应全站唯一。该文件描述全站所有IED的实例配置和通信参数信息、IED之间的联系信息以及变电站一次系统结构,由系统集成厂商负责生成。SCD文件应包含版本修改信息,明确描述修改时间、修改版本号等内容。
(4)CID文件:Configured IEDDescription,即IED实例配置文件,每个装置只有一个,由装置厂商根据SCD文件中本IED相关信息生成。
2. CCD文件的定义
《智能变电站继电保护工程文件技术规范》规定了一种CCD文件(Configured Circuit Description),即回路实例配置文件,用于描述IED的GOOSE、SV发布/订阅信息的配置文件,包括发布/订阅的控制块配置、内部变量映射、物理端口描述和虚端子连接关系等信息。CCD文件从SCD文件导出后下装到装置中运行。
工程实施过程中,系统集成商提供系统配置工具,并根据设计图纸和用户需求负责整个系统的配置生成SCD文件;装置厂商提供装置配置工具,从SCD文件中导出本装置的CID文件,具体流程如图 3-1 所示。
图3-1 IEC 61850 工程配置流程
首先,各装置厂家通过自己的装置配置工具生成本装置的ICD文件。ICD文件里描述本装置模型包含哪些服务器、逻辑设备、逻辑节点,还有逻辑节点类型、数据类型、数据集、控制块的定义,以及装置通信能力和通信参数的描述。
系统配置工具导入变电站中全站各种类型的二次设备的ICD文件和变电站SSD文件,然后经过系统配置人员的工程配置,生成全站SCD文件。SCD文件包含变电站一次系统配置(含一、二次设备关联信息配置)、二次设备配置(包含信号描述配置、GOOSE信号连线配置)以及通信网络及参数的配置。SCD文件应作为后台监控、远动子站以及后续其他配置的统一数据来源。
最后,单装置厂家使用各自的装置配置工具从SCD文件中导出本装置的CID文件和CCD文件。CID文件包含IED的站控层MMS配置信息,CCD文件包含IED的过程层GOOSE和SV配置信息,CID文件和CCD文件最终将被下载到装置中运行。
完整的配置文件包括 5 个部分,即<Header>、<Substation>、<Communication>、<IED>和<DataTypeTemplates>,如图3-2(a)所示。<Header>部分包含配置文件的版本信息和修订信息、文件书写工具标识以及名称映射信息;<Substation>部分包含变电站的功能结构、主元件和电气连接以及相应的功能节点;<Communication>部分定义了子网中IED接入点的相关通信信息,包括设备的网络地址和各层物理地址;<IED>部分描述了<IED>的配置情况,包括逻辑设备、逻辑节点、数据对象、数据属性和所具备的通信服务能力;<DataTypeTemplates>部分是可实例化的数据类型模板,详细定义了在配置文件中出现的逻辑节点类型(LNType)以及该逻辑节点所包含的数据对象类型(DOType)和数据属性类型(DAType),DataTypeTemplates部分和IED部分之间是“类”和“实例”的关系。
在工程实施中,全站各种IED的单装置ICD文件需要导入系统配置工具,经集成商配置后生成SCD文件。SCD文件包含全站所有IED的实例配置和通信参数、IED之间的信号联系信息以及变电站一次系统结构。图 3-2(b)是整站配置SCD文件的结构示意图。
图3-2 IEC 61850 配置文件基本结构
完整的SCD文件包括5个部分,即<Header>、<Substation>、<Communication>、<IED 1~ n >和<DataTypeTemplates>。<Header>部分包含配置文件的版本信息和修订信息、文件书写工具标识以及名称映射信息;<Substation>部分包含变电站的功能结构、主元件和电气连接以及相应的功能节点;<Communication>部分定义了通信子网中IED接入点的相关信息,包括设备的网络地址和物理地址;<IED 1~ n >部分描述了IED的配置情况,包括逻辑设备、逻辑节点、数据对象、数据属性实例和所具备的通信服务能力。<DataTypeTemplates>部分是可实例化的数据类型模板,<DataTypeTemplates>部分和<IED 1~ n >部分之间是“类”和“实例”的关系。
对于<Header>、<Communication>、<IED 1~ n >、<DataTypeTemplates>几个部分,无论是SCD还是ICD文件,其结构均符合IEC 61850—6 部分的SCL模式Schema定义。因此如果能理解ICD文件也就能理解SCD文件的结构。
下面以ICD文件为例,介绍配置文件的具体结构。图 3-3 是实际变电站中某型号线路保护装置的ICD配置文件截图,该配置文件用AltovaXMLSpy软件的Grid视图打开。
1.<Header>部分
如图3-4所示,<Header>部分用于标识一个SCL配置文件和它的版本。其中<History>元素中包含配置文件修订的历史信息,每一条修改记录可包含修改原因“why”、修改内容“what”、修改人“who”、修改时间when等信息。
图3-3 实际装置的ICD文件截图
图3-4 ICD文件Header部分结构图
2.<Communication>部分
如图 3-5 所示,<Communication>部分主要包含IED的通信参数配置信息,一般至少包括一个type为“8-MMS”的MMS通信子网;对于过程层采用GOOSE通信的装置,还应包含一个type为“IECGOOSE”的GOOSE通信子网。
(1)如图3-5所示,MMS通信子网部分主要包含装置的站控层网络地址信息,其中最主要的是IP地址和子网掩码,这是由于MMS服务是运行在TCP/IP协议之上的。
在<ConnectedAP>元素中,属性“iedName”是该装置的名称,属性“apName”是MMS访问点的名称,如下所示:
由于MMS网上也可能传输GOOSE报文(如不同间隔之间的联、闭锁信息),因此MMS子网部分也可能包含GOOSE通信参数信息。
图3-5 ICD文件<Communication>部分结构图
(2)GOOSE通信子网部分主要包含装置的GOOSE通信参数信息,包括MAC组播地址、虚拟局域网VLAN—ID、VLAN优先级和APPID等。另外,在<GSE>元素中还有GOOSE控制块名“cbName”和所在的逻辑设备实例名“1dInst”。
GOOSE报文发生变位后,通过快速重发机制来保证传输的可靠性,元素<MinTime>和<MaxTime>被用来设置报文重发的频率和时间间隔。在图 3-4 中<MinTime>元素值为 2ms,表示当发生变位之后,装置需要在 2ms以内补发第二帧报文;<MaxTime>元素值是GOOSE报文心跳时间,表示当恢复正常之后GOOSE报文每 5000ms发送一帧,接收端装置可以以此为依据判断GOOSE报文是否有丢帧以及通信链路是否中断。
3.<IED>部分
<IED>部分包含私有信息<Private>、服务能力列表<Services>和访问点<Accesspoint>三个部分。
(1)<Private>部分。
<Private>部分用于存放装置厂商对SCL语言的私有扩展信息。使用<Private>部分的好处在于,当配置文件按照图 3-1 的流程在不同厂家的配置工具之间进行传递时,<Private>部分的内容会被原封不动地保存。
(2)<Services>部分。
服务能力列表<Services>用于描述该IED所支持(提供)的ACSI服务类型,如图3-6中出现了元素<GetDataSetValue/>,说明该IED支持“GetDataSetValues(读数据集值)”服务。如果某种服务没有在此列表中出现,则说明该IED不支持这种服务。
此外,<Services>部分还包含一些用于描述IED通信能力的配置信息。如图 3-6 中<ConfDataSet max="32" maxAttributes="256"/>,表示该IED最多可配置 32 个数据集,每个数据集中最多可拥有 256 个数据属性。IEC 61850—6 部分的表对<Services>中每个元素的确切含义做了详细的规定,在此处不再赘述。
图3-6 ICD文件Services部分截图
(3)<Accesspoint>部分。
IED的分层信息模型,包括服务器、逻辑设备、逻辑节点、数据和数据属性,这些均包含在访问点<Accesspoint>中。访问点的数量与实际装置结构相对应。图 3-7 是过程层实现了数字化,具备GOOSE服务和IEC 61850—9—2 采样值服务的全数字化保护装置ICD文件截图,它拥有S1(MMS服务)、G1(GOOSE服务)和M1(采样值SV服务)三个访问点。每个访问点中包含一个服务器“Server”。
图3-7 全数字化保护装置的三个访问点
如前所述,SCL配置文件采用了树形结构,在结构上与分层信息模型相对应,因此理解了IEC 61850 的层次型模型,也就不难看懂SCL配置文件的结构。从图 3-8 中可以看到,服务器“Server”中包含逻辑设备“LDevice”;逻辑设备中包含逻辑节点“LLN0”和兼容逻辑节点“LN1~LNn”;逻辑节点中包含数据实例“DOI(Instantiated Data Object)”;数据实例“DOI”中包含数据属性实例“DAI(Instantiated DataAttribute)”或子数据实例“SDI(InstantiatedSub DATA)”;“SDI”中包含数据属性实例“DAI”。
图 3-9 是该线路保护装置ICD文件<Server>部分的截图。该装置为保护测量一体化装置,从该截图中可以看到,服务器<Server>中包含五个逻辑设备LDevice,分别是“LDO”、“PROT”、“CTRL”、“MEAS”和“RCD”。
图3-8 ICD文件<Server>部分结构图
图3-9 ICD配置文件<Server>部分截图
除了逻辑设备以外,<Server>中还包含元素<Authentication>。<Authentication>内含有装置通信认证信息,其属性“none”默认值为“true”,表示无需认证。
图 3-10 中展示了逻辑设备“PROT”中LLN0 的具体构成。如图 3-10 所示,LLN0 包含7 个数据集“DataSet”、5 个报告控制块“ReportControl”和 18 个数据对象实例“DOI”,此外还有1个定值组控制块“SettingConrol”。
图3-10“PROT”中LLN0 的具体构成
图3-10中的7个数据集中,“dsParameter”和“dsSetting”两个数据集的成员均为装置定值,其排列顺序应与装置说明书定值单中定值的排列顺序相同。在工程实施中,两个数据集里面的定值由客户端通过GetSGValues(读定值组值)服务读取,一般不通过Report(报告)服务主动上送。因此这两个数据集不需要配置相应的报告控制块,而是由SGCB(定值组控制块)控制。
“numOfSGs”代表定值区的数量,其值为10表示该逻辑设备可提供10个定值区。“actSG”代表当前处于激活状态的定值区的区号,其值为1代表当前1区定值处于激活状态。除了这两个属性以外,定值组控制块SGCB还有3个属性,分别为:“EditSG”(可编辑状态的定值区号)、“CnfEdit”(定值确认)和“LActTm”(最近一次激活定值区的时间)。
2)报告控制块。
除了两个定值数据集以外,图3-10中其余5个数据集均需要通过“Report”(报告)服务主动上送到客户端,因此都配置了相应的报告控制块。图3-11中展示了5个报告控制块的属性部分。
图3-11 LLN0 中的报告控制块
3)数据集。
IEC 61850 引入数据集的概念后,利用数据集可以对数据进行分组和打包,以方便数据的传送。无论是在“客户端-服务器”通信模式还是在“发布方-订阅者”模式下,通信双方都需要预先知道数据集中含有哪些成员,这些成员的排列顺序以及所属的数据类型,一般情况下IED会在通信初始化时通过解析SCL配置文件获得这些信息。
按照IEC 61850 的定义,数据集是一系列数据引用或数据属性引用的集合,以清单 3-1中的保护事件数据集“dsTripInfo”为例,它包含 27 个数据引用,包括了本逻辑设备下所有的保护动作信号。
清单 3-1 如下:
以清单 3-1 中数据集第一个成员为例,它的逻辑设备名为“PROT”,逻辑节点名为“PTRC1”,数据名为“Str”。另外,每个数据集成员都有功能约束fc属性,这些对象名和功能约束fc级联到一起就组成了引用“PROT/PTRC1.Str [ST]”。
如前文所述,数据属性可以根据功能约束fc进行分类,fc可以理解为数据属性的过滤器。引用“PROT/PTRC1.Str [ST]”包含fc=“ST”的 4 个数据属性,它实际上是具有相同fc的数据属性的集合,在IEC 61850 中它又被称为功能约束数据FCD。FCD中每个数据属性引用(如“PROT/PTRC1.Str.general [ST]”)被称为功能约束数据属性FCDA。
4)数据对象实例(DOI)。
在分层信息模型中,每个逻辑节点都包含若干数据对象(Data Object),每个数据对象中又包含若干数据属性(Data Attribute)。它们等于建模的模板组件,在对实际设备建模时,我们需要从中选择合适的数据和数据属性,并赋予实例特定值,形成数据实例DOI(Data ObjectInstance)和数据属性实例DAI(Data Attribute Instance)。
清单3-2是逻辑节点实例“PDIF1”的片段,限于篇幅只列出了一个数据对象实例“Op”。在<LN>元素中,“lnClass”属性代表该逻辑节点属于IEC 61850—7—4 中的哪一种兼容逻辑节点类,“inst”属性是实例号。
“lnType”属性代表该逻辑节点引用了哪一种逻辑节点类型(LNType),如“PDIF1”就引用了“NRR_PDIF_LINE”类型(详细定义如清单3-3所示)。“NRR_ PDIF_LINE”是“|PDIF1”定义的模板,“PDIF1”中所有的DOI都已经在“NRR_PDIF_LINE”中进行了预定义,反过来说,“NRR_PDIF_LINE”中没有的数据(DO)不应该出现在PDIF1 中。
“desc”属性中含有SCL配置文件自带的中文描述信息,是XML自描述特性的具体体现。从“desc”中可以看出PDIF是“电流差动保护逻辑节点”,Op是“纵联差动保护动作”信号。在工程实施中各装置厂家应确保ICD文件中“desc”信息填写正确、清晰、无歧义,因为系统集成商将根据“desc”确定信号的用途,有的会直接将“desc”信息作为信号的名称导入后台数据库中。
清单 3-2 如下:
4.<DataTypeTemplates>部分
<DataTypeTemplates>部分是可实例化的数据类型模板,如图3-2所示,它包含LNodeType(逻辑节点类型)、DOType(数据对象类型)、DAType(数据属性类型)和EnumType(枚举类型)四个部分。<IED>部分的逻辑节点/数据对象/数据属性实例,就是由<DataTypeTemplates>实例化后生成的,二者之间是“类”和“实例”的关系。
(1)<LNodeType>部分。
清单3-3 是逻辑节点类型“NRR_ PDIF_LINE”定义的片段。<LNodeType>元素的“id”属性是该LNType的名字,“lnClass”属性代表该LNType是在哪一种兼容逻辑节点类的基础上扩充的。
清单 3-3 如下:
<LNodeType>在结构上与IEC 61850 分层信息模型相对应,每个<LNodeType>都由一系列数据<DO>组成。<DO>元素的“name”属性是数据对象的名字;“desc”属性自带描述信息,用于说明<DO>的用途;“type”属性用于说明该<DO>引用了哪一种数据对象类型(DOType)。如数据“Op”就引用了“CN_ACT_3P”类型(详细定义如清单3-4所示)。
(2)<DOType>部分。
清单3-4是数据对象类型“CN_ ACT_3P”的定义文本。<DOType>元素的id属性是该数据类型的名字,该名字与<LNodeType>中<DO name="Op">的“type”属性值相同,用于说明该<DO>引用了哪一种<DOType>。“cdc”属性表示该<DOType>是在IEC61850—7—3中哪一种公用数据类的基础上扩充的。
<DOType>由一系列数据属性<DA>组成。<DA>元素的“name”属性是数据属性的名字;“bType”是该数据属性所属的数据类型;“fc”代表该数据属性属于哪一种功能约束;“dchg/qchg”是该数据属性的触发选项。
清单 3-4 如下:
在前文中曾经提到,数据属性所属的类型分为两种,一种是不可再分解的基本类型;另一种是结构体或枚举类型(由若干种基本类型组合而成)。清单3-5中的数据属性“setMag”就属于结构体类型,其bType="Struct",“type”属性的值就是该结构体类型的名字——“CN_AnalogueValue”。“CN_AnalogueValue”的详细定义位于数据类型模板的<DAType>部分中,见清单 3-8。
清单 3-5 如下:
清单3-6中的数据属性“stVal”属于枚举类型,其bType="Enum",“type”属性的值就是该枚举类型的名字——“Mod”。“Mod”的详细定义位于数据类型模板的<EnumType>部分中,见清单 3-9。
清单 3-6 如下:
IEC 61850 中还有一些特殊的的数据类,它们的组成成员本身还属于数据类(DO),形成了一种嵌套结构。如清单3-7中的“CN_WYE”,它的SDO成员“phsA”属于“CN_CMV”类型。
清单 3-7 如下:
SDO实例化以后就形成了SDI,如图 3-7 中所示。
(3)<DAType>部分。
清单3-8是结构体类型的数据属性定义文本。<DAType>元素的属性id是该结构体类型的名字。该名字与<DOType>中struct类型的<DA>的“type”属性值相同,用于说明该<DA>引用了哪一种<DAType>。
<DAType>由一系列<BDA>成员组成。<BDA>成员本身既可以是基本类型,也可以是结构体类型。如清单 3-8 的“CN_Vector”,其<BDA>成员“ang”的bType="Struct",type="CN_AnalogueVa1ue",表示<BDA>“成员”ang属于结构体类型。
清单 3-8 如下:
(4)<EnumType>部分。
清单3-9是枚举类型“Mod”的定义文本,其中元素<EnumVal>将可能的取值一一列举出来:“on”、“blocked”、“test”、“test/blocked”和“off”。“Mod”取值只限于列举出来的值范围内。<EnumType>元素的属性id是该枚举类型的名字,该名字被清单3-6中第一个<DA>元素“stVal”引用,与该<DA>元素的“type”属性值相同,用于说明该<DA>引用了哪一种<EnumType>。
清单 3-9 如下:
1. IED元素
IED元素是CCD文件的根节点。IED元素下依次包含GOOSEPUB(GOOSE发布)元素、GOOSESUB(GOOSE订阅)元素、SVPUB(SV发布)元素、SVSUB(SV订阅)元素,CRC(校验码)元素。
IED元素的格式定义参见图 3-12。
图3-12 IED元素的格式定义
IED元素的属性包括IED名称、描述、制造厂、装置型号和版本号(都为必选属性,如SCD中无此属性则应为空,如type="");在CRC校验码计算时应剔除“desc”、“manufacturer”“type、configVersion”属性。
2. GOOSEPUB(GOOSE发布)元素
GOOSEPUB元素是从SCD文件中提取的装置过程层GOOSE输出配置信息,GOOSEPUB元素下包含按SCD文件顺序配置的GOOSE控制块。GOOSEPUB元素的格式定义参见清单3 -1 0。
清单 3-10 如下:
3. GOOSESUB(GOOSE订阅)元素
GOOSESUB元素是从SCD文件中提取的装置过程层GOOSE输入配置信息,GOOSESUB元素下包含按SCD文件顺序订阅的外部IED的GOOSE控制块。
GOOSESUB元素的格式定义参见清单 3-11。
清单 3-11 如下:
4. SVPUB(SV发布)元素
SVPUB元素是从SCD文件中提取的装置过程层SV输出配置信息,SVPUB元素下包含按SCD文件顺序配置的SV控制块。
SVPUB元素的格式定义参见清单 3-12。
清单 3-12 如下:
5. SVSUB(SV订阅)元素
SVSUB元素是从SCD文件中提取的装置过程层SV输入配置信息,SVSUB元素下包含按SCD文件顺序订阅的外部IED的SV控制块。
SVSUB元素的格式定义参见清单 3-13。
清单 3-13 如下:
6. CRC(校验码)元素
CRC元素是按一定规则计算的CCD文件CRC校验码信息,在导出CCD文件时添加。CRC元素的格式定义参见清单 3-14。
清单 3-14 如下:
若GOOSEPUB、GOOSESUB、SVPUB、SVSUB元素都不存在,则无CRC元素;计算CCD文件CRC校验码时不包含CRC元素;CRC元素的id属性是按规则计算生成的 32 位CRC校验码字符串;“timestamp”属性是生成校验码时刻的本地时间戳(UTC+8),时间格式为“YYYY-MM-DD hh:mm:ss”。
SCD配置的流程和步骤详见附录A。
CID/CCD配置文件下装操作实例见附录B。