发布时间:2026/7/19 5:11:30
典型 IEC 61850 工程流程 一个较典型的工程流程如下设备厂家││ 提供设备能力描述▼BMS.icdPCS.icd电表.icd保护装置.icd│▼系统集成商导入系统配置工具││ 配置IED名称、网络、报告、GOOSE等▼station.scd│├───────────────┬───────────────┐▼ ▼ ▼BMS01.cid PCS01.cid Meter01.cid│ │ │▼ ▼ ▼下发BMS设备 下发PCS设备 下发电表设备可以概括为ICD → 作为系统配置输入SCD → 保存全站最终配置CID → 下发给具体IED10. 在 BMS 项目中的实际含义假设你是 BMS 设备厂家。10.1 设备研发阶段你需要设计并提供VRFB_BMS.icd它描述你的 BMS 支持哪些 Logical Device哪些 Logical Node哪些遥测哪些遥信哪些遥控哪些遥调哪些 DataSet哪些 Report Control Block是否支持文件服务是否支持 GOOSE是否支持控制服务。10.2 电站工程配置阶段上游客户或系统集成商将你的 ICD 导入全站工程与 PCS、EMS、电表和其他设备一起配置。最终形成station.scd10.3 设备投运阶段上游客户可能从 SCD 中导出与你的 BMS 对应的BMS01.cidCID 中包含最终 IED 名称最终通信地址最终模型实例最终 DataSet最终报告配置最终 GOOSE 配置。你的程序可以根据 CID 生成或加载实际运行模型。与 libiec61850 的关系libiec61850 提供的 genmodel.jar 可以解析包含完整 IED 模型的 SCL 文件。例如java -jar genmodel.jar BMS.icd或者java -jar genmodel.jar BMS01.cid生成static_model.cstatic_model.h然后在程序中使用#include “static_model.h”IedServer server IedServer_create(iedModel);整个链路如下ICD或CID↓genmodel.jar↓static_model.c / static_model.h↓libiec61850 Server↓MMS客户端浏览和访问IEC 61850点位之所以 ICD 和 CID 都可能被 genmodel.jar 解析是因为它真正需要的是 SCL 文件中的模型信息例如IEDLDeviceLNDODADataTypeTemplatesDataSetReportControl。12. 常见误区12.1 SCL 不是某一种具体文件错误理解SCL、ICD、CID是三个完全独立的文件格式正确理解SCL是语言和文件体系ICD、CID、SCD、IID是不同用途的SCL文件12.2 ICD 不等于简单点表ICD 不只是列出SOC电压电流功率它还要描述点属于哪个 Logical Node使用哪个 Data Object使用哪个 CDC使用哪个 FC是否包含质量位是否包含时间戳是否进入 DataSet是否通过 Report 上送是否支持控制。12.3 CID 不只是网络配置文件CID 不仅包含 IP 地址也可能包含完整的IEC 61850 数据模型DataSetReportGOOSE控制模型通信参数。12.4 ICD 和 CID 的 XML 标签不一定明显不同两种文件使用同一套 SCL XML 语法。它们的主要区别是用途和工程阶段而不是文件内部必须使用完全不同的标签。一句话总结SCLIEC 61850使用的XML配置描述语言和文件体系。ICD描述某类IED能够提供哪些数据、模型和服务。CID描述某台IED在具体项目中的最终配置。SCD描述整个IEC 61850系统或电站的最终配置。

相关新闻

2026/7/19 5:11:30

C++编程进阶:从C语言到现代C++的核心思维转换与实践指南

1. 从C到C:为什么“补课”是必经之路很多从C语言转向C的开发者,包括我自己在内,都曾有过一个天真的想法:C不就是C语言加了个“类”吗?把struct换成class,学一下继承和多态,不就搞定了&#xff1…

2026/7/19 5:11:30

C++课件设计:从知识地图到实战案例的完整指南

1. 项目概述:一份优秀PPT课件的价值与挑战在C的学习与教学道路上,一份结构清晰、内容详实、重点突出的PPT课件,其价值不亚于一本优秀的教材。它不仅是讲师授课的“导航图”,更是学员课后复习、构建知识体系的“骨架”。然而&#…

2026/7/19 5:11:30

Unity表面着色器实战:从PBR材质到动态积雪与溶解效果

1. 项目概述:从理论到实践的跨越聊了这么多期Shader的基础概念和语法,相信不少朋友已经摩拳擦掌,想看看这些理论到底能做出什么“花”来。今天,我们就来点实在的,把目光聚焦在Unity中一个非常强大且对美术友好的工具—…

2026/7/19 9:01:42

Rust猜数游戏:编程入门与核心概念实践

1. 项目概述 猜数游戏是编程入门教程中最经典的项目之一,它完美展示了基础编程概念的实际应用。这个Rust版本的猜数游戏实现虽然简单,却涵盖了变量声明、用户输入处理、随机数生成、条件判断和循环控制等核心编程概念。通过这个项目,新手可以…

2026/7/19 9:01:42

UE4SS实战指南:从原理到脚本,掌握虚幻引擎4游戏动态修改

1. 项目概述:UE4SS是什么,以及它能为你带来什么如果你是一名对《幻兽帕鲁》、《艾尔登法环》或者任何基于虚幻引擎4(UE4)开发的PC游戏充满好奇的玩家或开发者,那么UE4SS这个名字你很可能已经听过。简单来说&#xff0c…

2026/7/19 9:01:42

C++ vector性能优化全解析:从内存分配到数据布局的实战技巧

1. 项目概述:为什么C的vector需要优化? 在C的日常开发中, std::vector 几乎是每个开发者都会高频使用的容器。它简单、直观,提供了动态数组的能力,让我们可以方便地管理一组连续存储的元素。然而,正是这种…

2026/7/19 9:01:42

PySpark MLlib 分类实战:从单机思维到分布式工程落地

1. 项目概述:为什么用 PySpark MLlib 做分类,而不是直接上 scikit-learn? 我第一次在生产环境里跑一个 2000 万行、17 列的电商用户行为日志分类任务时,本地笔记本直接蓝屏了三次。不是内存溢出,是整个系统卡死——sci…

2026/7/19 9:01:42

嵌入式视觉系统CSI-2接口配置实战:从协议层到物理层详解

1. 项目概述与CSI-2接口核心价值 在嵌入式视觉系统,尤其是手机、安防摄像头、汽车ADAS或者任何带摄像头的IoT设备里,图像传感器和主处理器(比如应用处理器或专用的图像信号处理器ISP)之间的数据传输,一直是个既关键又头…

2026/7/19 0:00:15

Unity与Python本地通信:基于Flask的跨语言数据交换实战

1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…

2026/7/19 0:00:15

Unity与Python本地通信:基于Flask的跨语言数据交换实战

1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…

2026/7/18 16:50:29

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…