第一篇:【容弗科技】电力人带你解密SCD文件
电力人带你解密SCD文件
国网各个网省公司目前正在建设智能变电站配置文件管控系统,山东容弗紧跟国网步伐,凭借自身对IEC-61850的深入理解和对SCD文件的深层研究,采用大数据挖掘分析及无效数据智能剔除技术、异构数据转换及量化融合技术严格把控智能变电站的核心-SCD!为智能变电站安全稳定运行保驾护航,下面容弗小编带领大家一起解密SCD: SCD文件基本结构
SCD文件的各节点以树形层次结构组织起来,完整的文件由Header、Substation、Communication、IED、DataTypeTemplates五大部分组成。
SCD ┣Header ┣Substation ┣Communication ┃ ┗ SubNetwork(多个)┃ ┗ ConnectedAP(多个)┃ ┣ SMV(多个)┃ ┗ GSE(多个)┣IED(多个)┃ ┗ AccessPoint(多个)┃ ┗ Server ┃ ┗ LDevice ┃ ┣ LN0 ┃ ┃ ┣ DataSet(多个)┃ ┃ ┣ Inputs ┃ ┃ ┣ DOI(多个)┃ ┃ ┣ SampledValueControl(SV控制块节点)┃ ┃ ┗ GSEControl(GOOSE控制块节点)┃ ┗ LN(多个)┃ ┣ DataSet(多个)┃ ┣ Inputs ┃ ┗ DOI(多个)┗DataTypeTemplates ┣ LNodeType(多个)┃ ┗ DO(多个)┣ DOType(多个)┃ ┣ SDO(多个)┃ ┗ DA(多个)┗ DAType(多个)┗ BDA(多个)
Header部分包含SCD文件标识、文件版本、配置工具、文件修改历史记录等信息。Substation部分描述变电站的功能结构,标识一次设备以及它们的电气连接关系。下面简要描述一下Communication、IED和DataTypeTemplates三部分中过程层比较关心的内容。
1.1 Communication部分
Communication部分描述各个IED的SV控制块和GOOSE控制块的地址信息。SMV节点下Address节点配置了SV控制块的APPID、MAC、VLAN-ID和VLAN优先级,GOOSE控制块的相关参数是在GSE节点下的Address节点中配置,此外,GSE节点中还配置了GOOSE报文发送的心跳时间MaxTime和最小重发时间MinTime。
Communication ┗SubNetwork ┗ ConnectedAP(iedName=“UDC502_MU_ML1b” apName=“ ”)┣ SMV(cbName=“MSVCB01”, ldInst=“MU01”)┃ ┗Address ┃ ┣
01-0C-CD-04-00-1C
┃ ┣120
┃ ┣4
┃ ┗401C
┗ GSE(cbName=“MSVCB01”, ldInst=“MU01”)┣MinTime ┣MaxTime ┗Address ┣01-0C-CD-01-00-1C
┣120
┣4
┗101C
1.2 IED部分IED部分各个智能电子设备的具体内容,SV、GOOSE的发布和订阅都在此描述。
IED ┗ AccessPoint(多个)┗ Server ┗ LDevice ┣ LN0 ┃ ┣ DataSet(多个)┃ ┣ Inputs ┃ ┣ DOI(多个)┃ ┣ SampledValueControl(SV控制块节点)┃ ┗ GSEControl(GOOSE控制块节点)┗ LN(多个)┣ DataSet(多个)┣ Inputs ┗ DOI(多个)
SV的发布通过SV控制块SampledValueControl实现。其中,name为控制块名字,datSet属性指定了与本控制块关联的数据集,smvID为控制块的字符串ID(也叫svID,报文中一般会保护此参数),nofASDU定义了报文中的ASDU数目,SmvOpts的各个属性都是布尔型,分别指定相应的项是否应该出现在SV报文中。
GOOSE的发布通过GOOSE控制块GSEControl实现。GSEControl节点包含的属性有name、datSet、confRef、type和appID。其中,name为控制块名字,datSet属性指定了与本控制块关联的数据集,appID为控制块的字符串ID(也叫goID,报文中一般包含此参数)。另外GOOSE报文中常包含的gocbRef参数在这里并未明确指定,它是按照“IED名字+LD的inst+/LLN0$GO$+控制块名字”的格式生成的,指明了控制块在SCD文件中的路径。
SV和GOOSE的订阅是在Inputs节点下定义的,如下图所示。Inputs节点由多个外部引用条目ExtRef组成,每个外部引用条目指定了内部输入虚端子的地址intAddr和外部输出虚端子地址(由iedName、ldInst、prefix、lnClass、lnInst、doName、daName构成),根据这些信息可以找到内外虚端子对应的数据对象DO甚至具体的数据属性DA。
数据集DataSet的结构如下图。name属性是其标识,上面提到的SV/GOOSE控制块的属性datSet指定的就是DataSet的name,通过比对这两个字符串,可以找到SV/GOOSE控制块所关联的数据集。desc属性给出了数据集的描述信息。DataSet节点由多个子节点FCDA组成,比较FCDA和上面的ExtRef我们可以看到他们有一些相似的属性(ldInst、prefix、lnClass等),不同的是ExtRef中的这些属性指定的是外部某IED的数据路径,而FCDA的这些属性指定的是本IED的数据路径。
1.3 DataTypeTemplates部分
DataTypeTemplates部分定义逻辑节点类型LNodeType、数据对象类型DOType、数据属性类型DAType等数据类型模板。
每个逻辑节点LN都是某个逻辑节点类型LNodeType的实例,LN的lnType属性指明了它的逻辑节点类型LNodeType。LN和LNodeType含有一个共同的属性lnClass,它指定了LNodeType所属的逻辑节点类,一般由4个字母组成。在61850-7-4的第5节定义了代表各种功能的逻辑节点类,并规定了各种逻辑节点类应该包含的数据(7-x中所说的数据就是SCD文件中的数据对象DO)。比如,“XCBR”表示断路器,它包含的数据有Pos(开关位置)、BlkOpn(跳闸闭锁)、BlkCls(合闸闭锁)等等。逻辑节点类型LNodeType由若干个数据对象DO组成,而LN中含有的DOI是DO的实例。每个DO和它对应的实例DOI有相同的name属性,name的命名都有特定语义,在61850-7-4的第6节以表格的方式列出了所有了的数据名和相应含义。比如,上面提到的断路器逻辑节点类“XCBR”包含的数据“Pos”表示开关位置,在隔离刀闸逻辑节点“XSWI”中也包含数据“Pos”。
数据对象DO的type属性指明了它的数据对象类型DOType。DOType的cdc属性指明了该DOType的公用数据类CDC(Common Data Class),61850-7-3的第7节定义了各种共用数据类CDC以及它们应该包含的数据属性。
上图是一个逻辑节点类型的例子,每个IED中的LN0/LN节点都是某个LNodeType的实例,通过比对前者的lnType属性和LNodeType的id属性,可以确定每个LN0/LN都是由那个LNodeType实例化的。LN0/LN节点下的DOI是相应LNodeType下具有相同name的DO的实例化对象。
下图是一个数据对象类型的例子,LNodeType下的每个DO都是由某个DOType的派生,DOI节点下的DAI是相应的DOType下某个DA的实例化对象。每个DA都有一个bType属性,它指定了该DA的基本数据类型。bType为Struct的DA是结构化的DA,它的具体结构由相应的DAType定义;bType为Enum的DA是枚举类型,具体内容有相应的EnumType定义。SCD中的关联关系
2.1 SV/GOOSE配置的三个部分
在SCD文件中一个SV/GOOSE报文的完整配置包括三个部分:控制块参数(SampledValueControl/GSEControl)、通信参数(SMV/GSE)、数据集配置(DataSet)。各部分的具体内容在上一节已经描述,下图显示了三个部分之间的关联:通过比对IED的name、访问点的name、LD的实例名inst和控制块的name 找到与控制块匹配的SMV/GSE;通过比对控制块的datSet属性和数据集DataSet的name找到与控制块匹配的DataSet。
2.2 虚端子连线的建立
SCD文件中的Inputs节点描述了各个IED对外部信号的引用(订阅)情况。下面以GOOSE的引用为例描述建立虚端子连线的过程。
上图下方为某Inputs节点下的一条外部引用,根据该引用指定的iedName、ldInst可找到外部信号所在的IED和逻辑设备LDevice,遍历该LDevice下所有DataSet条目,通过比对ldInst、prefix、lnClass、lnInst、doName和daName可找到匹配的数据集条目,数据集与控制块的关联在上面已经讲述。至此,找到了该外部引用条目订阅的是哪个IED的哪个GOOSE控制块的第几个数据集条目,虚端子连线由此建立。
风云两甲子,弦歌三世纪。百廿年华,山东容弗必将在互联网+新电改的大背景下,在智能电网建设的新时代下砥砺前行!