IEC61850建模说明
1.概述
IEC61850的数据建模,主要是看IEC1850标准的第7部分,变电站和馈线高备的基本通信结构(7-1,7-2,7-3,7-4)
数据建模,实际上就是将设备的点表按照IEC61850标准的规则编写的一份点表文件,该点表以XML的格式描述,后缀名为.icd,另一个名字叫智能电子设备能力描述文件
1.1 IEC61850服务
以下是61850的服务与传统功能的对比列表:
服务与传统变电站功能 | |
---|---|
IEC61850服务 | 传统功能 |
报告服务 | 遥信、遥测 |
控制服务 | 遥控、遥调 |
定值服务 | 定值召唤、修改、切换 |
日志服务 | 事件服务 |
取代服务 | 人工置数 |
对时服务 | GPS对时 |
文件传输服务 | 文件传输 |
采样值传输服务 | 模拟量采样传输 |
GOOSE服务 | 装置间快速信号传输 |
2.数据建模介绍
在建模前,应熟知61850数据模型所含的内容及其作用。详细请看61850标准的第6部分,第7-2部分。
每个模型都具有四个对象,依次为
SERVER 服务器
LOGICAL-DEVICE 简称LD,逻辑设备
LOGICAL-NODE 简称LN,逻辑结点
DATA 数据,逻辑结点中的数据点
每个对象都有各自的名称和对象路径名,假设有一个61850服务器,SERVER为acSystem,LOGICAL-DEVICE为ac,LOGICAL-NODE为alarm,有若干数据点名为alarm1,alarm2,alarm3,
外部访问服务器的一个结点引用为acSystem.ac.alarm.alarm1
我们通常要改的就是LN部分
3.建模说明
一般来说,不需要从零开始配置一份数据模型icd文件,直接在已有的文件修改即可,
3.1 icd文件介绍
以下是一个最简单的icd文件
<SCL version="2007" revision="B" xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.iec.ch/61850/2003/SCL SCL.xsd">
<Header id="" version="" revision="" toolID="OMICRON IEDScout" nameStructure="IEDName" />
<IED name="EAST01">
<Services><AccessPoint name="P1"><Server><Authentication none="true"/><LDevice inst="DEV1"><LN0 lnType="EAST01DEV1.LLN0" lnClass="LLN0" inst=""><DOI name="Mod"><DAI name="ctlModel" sAddr><Val>status-only</Val>="40000"</DAI></DOI></LN0></LDevice></Server></AccessPoint>
</Services>
</IED>
<DataTypeTemplates><LNodeType id="EAST01DEV1.LLN0" lnClass="LLN0"><DO name="Mod" type="EAST01DEV1.LLN0.Mod"/></LNodeType><DOType id="EAST01DEV1.LLN0.Mod" cdc="INC"><DA name="stVal" fc="ST" bType="Enum" type="Mod"><DA name="ctlModel" fc="CF" bType="Enum "type="ctlModel"></DOType><EnumType id="Mod"><EnumVal ord="1">on</EnumVal><EnumVal ord="2">blocked</EnumVal><EnumVal ord="3">test</EnumVal><EnumVal ord="4">test/blocked</EnumVal><EnumVal ord="5">off</EnumVal></EnumType><EnumType id="ctlModel"><EnumVal ord="0">status-only</EnumVal><EnumVal ord="1">direct-with-normal-security</EnumVal><EnumVal ord="2">sbo-with-normal-security</EnumVal><EnumVal ord="3">direct-with-enhanced-security</EnumVal><EnumVal ord="4">sbo-with-enhanced-secrity</EnumVal></EnumType>
</DataTypeTemplates>
</SCL>
从内容可以看出,包含两大块,IED和DataTypeTemplates,DataTypeTemplates为数据类型的模板,定义该设备拥有什么数据变量,变量的类型,单位等信息,IED为设备的对象实例,定义了数据的初始值,系数,单位,寄存器地址等信息
以上文件在LNodeType字段定义了一个数据Mod,类型是EAST01DEV1.LLN0.Mod,在DOType字段中有该类型的具体定义,其中cdc(公用数据类)为INC,即可控的整数状态,而INC又定义了它必选的和可选的属懂(IEC6850标准的7-3部分的7.5.4章节有说明)
3.2 InClass 逻辑节点类
表1 逻辑节点组表 | |
---|---|
逻辑节点组指示符 | 节点标识 |
A | 自动控制 |
C | 监控 |
G | 通用功能引用 |
I | 接口和存档 |
L | 系统逻辑节点 |
M | 计量和测量 |
P | 保护功能 |
R | 保护相关功能 |
S | 传感器,监视 |
T | 仪用互感器 |
X | 开关设备 |
Y | 电力变压器和相关功能 |
Z | 其它(电力系统)设备 |
一般我们接触到的类有:
LPHD(物理装置信息,IEC61850-7-4部分的5.3.2章节)
LLN0(逻辑节点零,IEC61850-7-4部分的5.3.4章节)
GGIO(通用过程I/O,IEC61850-7-44部分的5.7.2章节)
MMXN(测量,IEC61850-7-4部分的5.10.7章节)
3.3 cdc公用数据类
一般可以根据遥信,遥控,遥测,遥调四个功能来选择需要的cdc
遥信=SPS(单点状态信息,IEC61850-7-3部分的7.3.2章节)
遥控=SPC(可控的单点,IEC61850-7-3部分的7.5.2章节)
遥测=MV(测量值,IEC61850-7-3部分的7.4.2章节)
遥调=APC(可控模拟设点信息,IEC61850-7-3部分的7.6.2章节)
其中,遥测和遥调的值可以是浮点或者整型,若选择整型,则应该增加数据属性sVC,即增加系数和偏移量
以下是添加浮点型的示例
<DOType id="EAST01DEV1.MMXN1.Mea1" cdc="MV"><DA name="mag" fc="MX" bType="Struct" type="EAST01DEV1.MMXN.Mea1.mag">
</DOType>
<DAType id="EAST01DEV1.MMXN1.Mea1.mag"><BDA name="f" bType="FLOAT32"/>
</DAType>
以下是添加整型的示例
<DOType id="EAST01DEV1.MMXN1.Mea1" cdc="MV"><DA name="sVC" fc="MX" bType="Struct" type="ScaledValueConfig_1">
</DOType>
<DAType id="ScaledValueConfig_1"><BDA name="scaleFactor" bType="FLOAT32"/><BDA name="offset" bType="FLOAT32"/>
</DAType>
3.4 配置数据对象
配置数据对象需要在DataTypeTemplates的LNodeType字段中添加DO结点,
DO有很多种类型,一般我们按遥信,遥控,遥测,遥测四种类型配置即可,
DO有三个属性,分别为name,type,desc
name是固定的,一般字符串就行,尽量和要表达的属性命令匹配,容易维护
type需要根据当前数据来定,按3.3的说明即可,详情可以看IEC61850-7-3部分的8章节
desc为数据的描述
fc为功能约束,常用的是ST(状态),MX(测量),CO(控制),DC(描述),CF(配置),具体可以查看IEC61850-7-3部分的附录B
3.5 配置数据对象实例
配置对象实例就是将上一节所定的数据都初始化一遍,包括寄存器映射地址,变量名,单位,系数等,具体看第一节的示例
3.6 配置报告
配置报告分为两个步骤,分别是配置数据集和配置报告控制块,而且都是在LN0节点中配置
我们可以将数据分为遥信,遥控,遥测,遥调四个数据集,分别上报,下面配置遥信量作为数据集的例子,格式如下
<LN0 lnType="EASTDEV01DEV1.LLN0" lnClass="LLN0" inst=""><DataSet name="ds01Digit"><FCDA ldInst="DEV1" prefix="" lnClass="GGIO" lnInst="1" doName="Ind1" fc="ST"></DataSet>
</LN0>
注意,控制集里面的数据对象一定是在DataTypeTemplates的LNodeType字段中找得到的
配置报告控制块用于指定所需报告的数据集,一般来说,有多少数据集就有多少个报告控制块,以下是是控制块的例子
<ReportControl name="urcbDigit1" rptID="DEV1/LLN0$RP$urcbDigit1" buffered="false" bufTime="0" datSet="ds01Digit" intgPd="20000" confRev="1">
<trgOps dchg="true" qchg="true" dupd="false" period="true" gi="true" />
<OptFileds seqNum="false" timeStamp="true" dataSet="true" reasonCode="true" dataRef="false" entryID="false" configRef="false" />
<RtlEnabled max="4" />
</ReportControl>
一般只要修改datset和RptEnabled的max值即可
datset指定上送的数据集名称,max值指定最多有多少个客户端能接收该报告
4.生成和检验模型
4.1 生成model.cfg文件
使用iec61850库时,需要将icd文件转为其规定的cfg文件,转换工具在libiec61850库的tools/model_generator里,使用命令
java -jar genconfig.jar xxx.icd >model.cfg
注意需要在tools/model_generator目录下,且安装好了java运行环境
如果生成文件时出现Warning…信息,则说明icd文件有错误,需要修正
生成后的model.cfg还不能用,需要将MODEL(xxx)前面几行的内容删除掉
如果是在windows下生成的,需要将文件保存为utf8格式
关于libiec61850的使用,查看另一篇文章61850服务构建流程
4.2 检验模型
通过IEDScout 软件打开建好的模型文件,将所有内容都展开看一遍,只要文件能正常打开,且内容无误的话,就表示模型可用,也可以通过打开两个IEDScout,一个作为服务端,一个作为客户端来进行验证数据
IEC61850建模说明相关推荐
- IEC61850变电站基本通信结构-原理和模型_7建模规则中的类定义以及MMS映射模型
在建模中定义了很多类,由于功能的步完善,逐步扩展,从7-2到7-3到7-4.最初的类只有三种属性,四种服务. 数据类的细化 许多Data类有共同的数据细则,所以定义了公用数据类,反过来用公用数据类的& ...
- IEC61850电能质量1~50次谐波有效值建模
2019独角兽企业重金招聘Python工程师标准>>> 在电能质量监测设备中我们通常需要对设备的1 ~ 50次谐波有效值进行统计并记录,<br>但由于IEC61850-7 ...
- IEC61850笔记--IEC61850应用入门(二)
IEC61850标准学习和调试,测试的记录文档,主要参考了IEC61850标准文档,<IEC61850应用入门(第二版)>,开源代码libIEC61850及libIEC61850说明文档. ...
- 基于CIM的馈线建模和应用(论文学习)
引言 作者在分析馈线的扩展和国内外的研究,得出结论:[馈线的定义和边界范围,以及如何正确运用 CIM 建模和建立馈线信息交换机制等问题始终没有得到解决]. 文章中提出了能够合理表征馈线的静态和动态特征 ...
- IEC61850开发流程
1. Linux下的开发流程.包括字描述语言建模:https://wenku.baidu.com/view/50e648307375a417866f8feb.html?sxts=15537877649 ...
- IEC61850笔记--IEC61850应用入门(一)
IEC61850标准学习和调试,测试的记录文档,主要参考了IEC61850标准文档,<IEC61850应用入门(第二版)>,开源代码libIEC61850及libIEC61850说明文档. ...
- 61850协议服务器端开发,IEC61850报告服务端开发.doc
IEC61850报告服务端开发 本文讲述的是IEC61850中最常用的报告功能服务端的实现方法,内容包含了CID建模,编码实现,还包括后面的运行效果.MMS报文等. 一.CID建模 1.通讯部分: ? ...
- 变电站通信网络和系统协议IEC61850介绍
最近正在学习IEC61850标准, 在网上找到这篇文章,觉得挺好的, 收藏之,美中不足之处就是其中的图片无法显示. 变电站通信网络和系统协议IEC61850介绍 电网技术 POWER SYSTEM ...
- 人工智能3d建模算法_打破国外垄断,全国产3D芯片为机器人“点睛”
◎ 科技日报记者 崔爽 传统机器人只有"手",只能在固定好的点位上完成既定操作,而新一轮人工智能技术大大推动了机器和人的协作,这也对机器人的灵活性有了更高要求. 要想像人一样测量. ...
- 【UML建模】UML图详细总结
前言: 机房文档中的UML图在UML视频看完后,照着书画的. 视频主要是看了前面的部分,后面关于几个具体例子跳过了,感觉看了也看不懂,除非真的跟着视频中认真的把例子都画一遍,才能了解的差不多! 过程学 ...
最新文章
- Java基础学习-Collection体系结构和迭代测试
- python数据分析第三方库是_python数据分析复盘——数据分析相关库之Pandas
- php批量打印快递单,excel怎么利用vba实现批量套打快递单批量打印单据?
- 为什么说人工智能是一个大谎言
- unix 登录mysql_实例分析mysql用户登录。
- 第 17 章 命令模式
- VS2010使用教程(使用VS2010编写C语言程序)
- android 编译 libjpeg-turbo,编译Android环境的libjpeg-turbo
- junit4报测试类class not found
- 探索性测试(游戏向)
- html 背景图片旋转,CSS3只让背景图片旋转180度的实现示例
- sumif单列求和_条件求和函数Sumif、Sumifs的超级实用技巧,你真的都掌握吗?
- 基于机器学习的文本分类算法的研究
- 010❤Anaconda的安装及使用方法
- 淘宝运营 淘宝选关键词的六种方法
- 通知短信有什么作用?它的应用场景有哪些?
- python 日本老人_84岁日本奶奶自学编程,成苹果“最高龄程序员”
- ScriptManager的使用方法
- 做oms系统时候知道的
- 使用QT-creator开发ros人机交互界面学习笔记