3、命名空间与模型文件:ICD、SCD、CID、SSD文件的作用与区别,SCL语言简介

好,咱们今天聊聊IEC61850里最绕人的几个文件格式。说实话,我刚入行那会儿,看着ICD、SCD、CID、SSD这几个缩写,头都大了。它们长得像,但用途完全不同。你想想看,一个变电站几百个设备,每个设备都有自己的“身份证”,这些文件就是干这个的。

3.1 SCL语言——这一切的基础

先说SCL。SCL全称是Substation Configuration description Language,变电站配置描述语言。它基于XML,说白了就是一种专门给电力系统用的“方言”。

为什么用XML?因为XML天生就是干这个的——描述结构化数据。我做过一个项目,甲方要求所有设备模型必须用SCL描述,当时我就觉得,这玩意儿比那些私有协议强太多了。至少你不用猜某个字节是啥意思,打开文件一看就明白。

SCL的核心结构大概是这样:

<SCL xmlns="http://www.iec.ch/61850/2003/SCL">
  <Header id="MySubstation" version="1.0" revision="1"/>
  <Substation>
    <VoltageLevel name="E1">
      <Bay name="Q1">
        <ConductingEquipment name="CBR1" type="CBR"/>
      </Bay>
    </VoltageLevel>
  </Substation>
  <IED name="PROT1">
    <Services/>
    <AccessPoint name="P1">
      <Server>
        <LDevice inst="LD0">
          <LN lnClass="PTRC" inst="1" lnType="PTRC1"/>
        </LDevice>
      </Server>
    </AccessPoint>
  </IED>
</SCL>

嗯,这里要注意,SCL文件里可以包含变电站拓扑、IED设备、通信配置、数据类型模板等。它就像一个集装箱,什么都能装。

3.2 四种文件类型——各司其职

接下来咱们一个一个说。这四种文件,说白了就是不同阶段、不同角色的“产品说明书”。

3.2.1 ICD文件——设备的“出生证明”

ICD全称是IED Capability Description,IED能力描述文件。它由设备厂家提供,描述了这个设备“能干什么”。

举个例子,你买了一个保护装置,厂家会给你一个ICD文件。里面写着:我有3个PTRC逻辑节点,2个GGIO,支持GOOSE输出,支持采样值输入……等等。

我个人习惯,拿到一个新设备的ICD文件,第一件事就是看它的<Services>部分。那里写着设备支持哪些服务,比如是否支持Report、GOOSE、SMV等。有一次我在现场调试,发现设备不支持某个服务,结果折腾了两天,最后发现是ICD文件里就没定义这个服务。你说冤不冤?

小提示:ICD文件是“只读”的,你不能修改它。它代表了设备的能力上限。就像一个人的身高,你没法让他长到两米五。

3.2.2 SSD文件——变电站的“设计图纸”

SSD全称是System Specification Description,系统规范描述文件。它描述的是变电站的一次系统拓扑结构,包括母线、断路器、隔离开关、变压器等一次设备,以及它们之间的连接关系。

SSD文件通常由系统集成商或设计院提供。它不关心具体用哪个厂家的设备,只关心“这个变电站长什么样”。

我记得有个项目,设计院给的SSD文件里,把断路器类型写错了,导致后面生成SCD文件时,IED的关联关系全乱了。所以,SSD文件的质量直接决定了后续工作的成败。

3.2.3 SCD文件——工程的“施工蓝图”

SCD全称是Substation Configuration Description,变电站配置描述文件。它是整个工程的“总装图”,包含了所有IED的配置信息、通信参数、数据流定义、GOOSE/SMV连线等。

SCD文件由系统集成商生成,是现场调试和运维的核心依据。它把ICD文件里的设备能力,和SSD文件里的变电站拓扑,通过“实例化”和“关联”操作,变成了一个完整的、可运行的配置。

你想想看,一个SCD文件可能包含几十个IED,每个IED又有几十个逻辑节点,数据流成千上万。所以,SCD文件的正确性至关重要。我曾经见过一个SCD文件,因为GOOSE连线配错了,导致保护装置误动,差点造成事故。

警告:SCD文件一旦生成,就不能轻易修改。任何修改都需要走严格的变更流程,否则后果很严重。

3.2.4 CID文件——设备的“施工图”

CID全称是Configured IED Description,配置后的IED描述文件。它是从SCD文件中提取出来的、针对某个特定IED的配置信息。

说白了,CID文件就是“你的那份”。系统集成商把SCD文件生成后,会为每个IED导出一个CID文件,然后下装到对应的设备里。

CID文件里只包含该IED需要知道的信息,比如它的数据模型、通信参数、GOOSE订阅关系等。其他IED的信息,它不需要知道,也不会包含在CID文件里。

这样做的好处是:每个IED只关心自己的事,减少了数据冗余和出错的可能。

3.3 四种文件的关系——一张图说清楚

说了这么多,咱们用一张图来总结一下它们的关系:

IEC61850 四种文件关系图 设备厂家 设计院 ICD文件 SSD文件 输入 输入 SCD文件 系统集成商生成 提取 CID文件 下装到 IED设备 ICD(设备能力) + SSD(系统拓扑) → SCD(总配置) → CID(设备配置)

从这张图可以看得很清楚:ICD和SSD是输入,SCD是中间产物,CID是最终输出。每个文件都有自己的角色,缺一不可。

3.4 实际项目中的避坑指南

最后,分享几个我在项目中踩过的坑:

  • ICD版本不一致:我曾经遇到一个项目,厂家给了两个版本的ICD文件,一个用于设计,一个用于调试,结果两个版本的数据模型不一样,导致SCD生成后,设备无法正常运行。所以,一定要确保所有ICD文件版本一致。
  • SSD文件不完整:有一次,设计院给的SSD文件里,缺少了几个断路器的连接关系,导致GOOSE连线配错了。后来我要求设计院必须提供完整的SSD文件,否则不接收。
  • SCD文件过大:一个大型变电站的SCD文件可能达到几十兆,打开和编辑都很慢。我建议使用专门的SCL工具,比如SystemCorp的SCL Editor,或者开源工具OpenSCL。
  • CID文件下装失败:有时候CID文件下装到设备后,设备无法启动。这通常是因为CID文件里的数据模型和设备实际固件不匹配。解决办法是:下装前,先用工具验证CID文件的合法性。
核心要点:ICD是“我能做什么”,SSD是“系统长什么样”,SCD是“具体怎么做”,CID是“你该怎么做”。记住这四句话,你就掌握了这些文件的精髓。

好了,关于命名空间和模型文件,今天就聊到这里。这些文件是IEC61850的基石,理解它们,你就能看懂整个变电站的配置体系。下次咱们聊聊更深入的内容。

个人建议:如果你刚开始接触IEC61850,建议先找一个简单的ICD文件,用文本编辑器打开看看,熟悉一下SCL的语法结构。然后再找一个SCD文件,看看它是如何把多个ICD文件组合在一起的。实践出真知,光看书是学不会的。

公众号:蓝海资料掘金营,微信deep3321