首页> 中国专利> 基于国产化通信协议的模型实例化方法、装置、设备及介质

基于国产化通信协议的模型实例化方法、装置、设备及介质

摘要

本发明公开了一种基于国产化通信协议的模型实例化方法,涉及电力系统自动化技术领域,用于解决现有实例化方法难以适应国产化通信协议的问题,该方法包括以下步骤:读取并解析SCL模型文件;提取IED信息及数据模板信息;按层次创建IED信息的访问点、逻辑设备及逻辑节点;根据所述数据模板信息,为所述逻辑节点创建对象信息;为所述逻辑节点分配数据区;将模型实例化信息的设置数据初值及描述信息部署到所述数据区内;根据模型实例化内容,为所述逻辑节点创建数据集及控制块。本发明还公开了一种基于国产化通信协议的模型实例化装置、电子设备和计算机存储介质。通过本发明的实例化方法,可以实现国产化通信协议实例化的简化。

著录项

说明书

技术领域

本发明涉及电力系统自动化技术领域,尤其涉及一种基于国产化通信协议的数据模型实例化方法、装置、设备及介质。

背景技术

变电站内网络通信通常采用IEC61850协议,尤其是站控层都遵循IEC61850-8-1标准,并采用MMS(ISO9506制造报文规范)通信。

目前,一些站控层也开始采用变电站国产化通信协议进行通信,变电站国产化通信协议(即DL/T860通信报文规范)的构建基于IEC61850-6定义的数据模型和IEC61850-7-2定义的抽象通信服务接口(ACSI),其取代了IEC61850-8-1定义的MMS通信服务映射方式,并改为直接映射到TCP/IP协议传输,通过采用PER编码方式取代了原来的BER编码方式,大大提升了通信效率。

现有的MMS通信模式中,数据模型实例化过程通常为:先解析SCL模型文件,根据其中的数据类型模板(DataTypeTemplates)创建出所有的类型信息表,然后根据类型信息表,给出所有逻辑设备(LD)下的所有逻辑节点(LN)的数据大小和结构定义信息。因此,该方法中的类型信息表是数据服务和模型映射的核心部件。而该类型信息表的形式为扁平化的一维数组,当需要与国产化协议及其所采用的PER编码方式配合工作时,需要做大量转换工作,效率低下,不能最大程度发挥国产化协议精简高效的优势。

发明内容

为了克服现有技术的不足,本发明的目的之一在于提供一种基于国产化通信协议的模型实例化方法。

本发明的目的之一采用以下技术方案实现:

一种基于国产化通信协议的模型实例化方法,包括以下步骤:

读取并解析SCL模型文件;

从所述SCL模型文件中提取IED信息及数据模板信息;

根据所述IED信息,按层次创建IED信息的访问点、逻辑设备及逻辑节点;

根据所述数据模板信息,为所述逻辑节点创建对象信息;

为所述逻辑节点分配数据区;

将模型实例化信息的设置数据初值及描述信息部署到所述数据区内;

根据模型实例化内容,为所述逻辑节点创建数据集及控制块。

进一步地,所述对象信息包括数据对象、子数据对象、数据属性及各数据属性的功能约束属性。

进一步地,为所述逻辑节点分配数据区包括以下步骤:

计算每个所述逻辑节点内各数据对象所需数据区空间量;

根据所述数据区空间量为所属逻辑节点分配数据区,得到整体数据区;

从所述整体数据区内依次为各数据对象分配数据区,得到数据对象数据区。

进一步地,每个数据对象记录有所占数据区大小及数据起始位置。

进一步地,所述控制块包括缓存报告控制块、非缓存报告控制块、日志控制块、定值组控制块、GOOSE控制块。

进一步地,所述创建数据集包括以下步骤:

动态创建或动态删除数据集,得到新数据集;

将所述新数据集的信息按固定格式保存为一个文件,所述信息包括IED信息、访问点、数据集引用及数据集成员。

进一步地,当创建数据集时或创建数据集后需要进行取代操作,将所有处于取代状态的数据对象的数据属性数值,按固定格式保存为一个文件。

本发明的目的之二在于提供一种基于国产化通信协议的模型实例化装置。

本发明的目的之二采用以下技术方案实现:

一种基于国产化通信协议的模型实例化装置,其包括:

读取模块,用于读取并解析SCL模型文件;

处理模块,用于从所述SCL模型文件中提取IED信息及数据模板信息;根据所述IED信息,按层次创建IED信息的访问点、逻辑设备及逻辑节点;根据所述数据模板信息,为所述逻辑节点创建对象信息;为所述逻辑节点分配数据区;将模型实例化信息的设置数据初值及描述信息部署到所述数据区内;根据模型实例化内容,为所述逻辑节点创建数据集及控制块。

本发明的目的之三在于提供执行发明目的之一的电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,所述计算机程序被处理器执行时实现上述的基于国产化通信协议的模型实例化方法。

本发明的目的之四在于提供存储发明目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于国产化通信协议的模型实例化方法。

相比现有技术,本发明的有益效果在于:

本发明提供了一种变电站SCL数据模型的实例化方法,构建了结构化、层次化的二维站控层数据模型,可以适应国产化协议通信,简化了处理流程,提高了工作效率。

附图说明

图1是本发明实施例一的基于国产化通信协议的模型实例化方法的流程图;

图2是本发明实施例二的基于国产化通信协议的模型实例化装置的结构框图;

图3是本发明实施例三的电子设备的结构框图。

具体实施方式

以下将结合附图,对本发明进行更为详细的描述,需要说明的是,以下参照附图对本发明进行的描述仅是示意性的,而非限制性的。各个不同实施例之间可以进行相互组合,以构成未在以下描述中示出的其他实施例。

实施例一

实施例一提供了一种基于国产化通信协议的模型实例化方法,旨在通过构建数据模型,进而完成后续的模型实例化创建。

为方便表述,本实施例中的IED表示智能电子设备,AP表示访问点,AD表示逻辑设备,LN表示逻辑节点,DO表示数据对象,SD0表示子数据对象,DA表示数据属性,FC表示数据属性的约束属性,desc表示描述信息,Dataset表示数据集,DOI、SDI、DAI表示数据对象、子数据对象及数据属性的实例化。

为了便于模型实例化的创建,可以先构建一个简单的模型配置信息作为模板,模板请参照表1所示,包括两个IED(IED1、IED2),IED1包含两个访问点AP1和AP2,IED2内容参照IED1;访问点AP1包含两个逻辑设备LD1和LD2,访问点AP2内容参照AP1;LD1和LD2各包含两个逻辑节点LN0和LN1,分别记为LD1/LN0,LD1/LN1,LD2/LN0,LD2/LN1;LD1/LN0包含两个数据对象DO01和DO02,还包含两个数据集DATASET1和DATASET2、两个缓存报告控制块BRCB1和BRCB2、两个非缓存报告控制块URCB1和URCB2、两个日志控制块LCB1和LCB2、一个定值组控制块SGCB1、两个GOOSE控制块GoCB1和GoCB2;LD1/LN1包含两个数据对象DO11和DO12,LD2/LN0和LD2/LN1的数据对象参照前述;DO01包含3个数据属性DA011、DA012和DA013,DO02包含三个数据属性DA021、DA022和DA023;DO11包含一个数据属性DA111,DO12包含一个数据属性DA121。

表1模型配置信息

请参照图1所示,一种基于国产化通信协议的模型实例化方法,包括以下步骤:

S110、读取并解析SCL模型文件;

上述的SCL模型文件是IEC61850模型的描述文件。

S120、从所述SCL模型文件中提取IED信息及数据模板信息;

上述提取的信息主要是表1中所列的IED、逻辑设备、逻辑节点及数据类型模板信息。

需要说明的是,本实施例中的IED信息、数据类型定义、结构构建等都是通过C语言实现的,IED的信息包括name(名称)、type(型号)、menufacturer(制造商)、configVersion(配置版本)、desc(描述)等;访问点的信息包括name、desc;逻辑设备LD的信息包括inst、desc;逻辑节点LN的信息包括prefix、lnClass、inst、lnType、desc、数据集(DataSet)、报告控制块(ReportControl)、日志控制块(LogControl)、定值控制块(SettingControl)以及实例化信息DOI、SDI、DAI等;数据模板信息包括逻辑节点类型定义LNodeType、数据对象类型定义DOType、数据属性定义DAType以及枚举类型定义EnumType。LN所包含的DO内容在模板中由其lnType属性对应的LNodeType中定义,DO所包含的数据属性内容在模板中由其type属性对应的DOType中定义,结构类型的数据属性,其内容在模板中由其type属性对应的DAType中定义。

S130、根据所述IED信息,按层次创建IED信息的访问点、逻辑设备及逻辑节点;

S130在创建时,IED信息创建时,需要为各IED构建一个IED结构,IED成员包括name、desc、type、manufacturer、configVersion等,另有一个成员AP指向本IED的所有访问点组成的链表。各个IED结构组成一个单向链表,由结构成员指向下一个IED。

访问点的创建时,需要创建一个AP结构,其成员包括name、desc等,另有一个指向该AP的LD链表。为提高检测遍历的效率,可以将该AP下所有LN内的数据集、控制块等元素所创建的结构链表都集中到该AP结构中。上述的数据集、控制块指的是S170创建的数据集和控制块。

针对访问点AP下的所有逻辑设备(LD),可以为每个逻辑设备分别创建一个Trie树结构,添加逻辑设备的名称和描述(name、desc),C语言编辑时的level标记为LD。逻辑设备的Trie树结构组成链表结构,链表头赋给访问点结构中的成员。

S140、根据所述数据模板信息,为所述逻辑节点创建对象信息;

上述的对象信息包括数据对象(DO)、子数据对象(SDO)、数据属性(DA)及各数据属性的功能约束属性(FC)。

上述DO的创建过程请参照S130中逻辑设备(LD)的Trie树结构创建过程。

DO创建完成后,根据DO的类型,根据数据类型模板,为DO中的各个DA或SDO创建Trie树结构,其中功能约束属性(FC)使用DA的功能约束,DO下的Trie树结构组成链表结构,链表头赋给DO的Trie树结构成员。

当还有其他对象信息需要创建或添加时,可参照上述Trie树结构进行创建和添加。

完成上述处理后,所有的DO和DA都分别创建了Trie树结构,所有同级的Trie树构成一个链表,所有链表组合成为整个模型的子树,每个Trie都是树上的一个节点;一个节点从自身开始,往上为父节点、祖父节点等,一直到所在的LD节点为止,这一条路径上的所有节点名称按顺序排列,加上分隔符,就是该节点的数据集引用(reference)。

S150、为所述逻辑节点分配数据区;

S150具体包括以下步骤:

计算每个所述逻辑节点内各数据对象所需数据区空间量;

根据所述数据区空间量为所属逻辑节点分配数据区,得到整体数据区;

从所述整体数据区内依次为各数据对象分配数据区,得到数据对象数据区,其中,每个数据对象记录有所占数据区大小及数据起始位置。

上述的数据区空间量计算时,需要满足各DO和DA的数据区边界对齐。S160、将模型实例化信息的设置数据初值及描述信息部署到所述数据区内;

上述的模型实例化信息即数据对象、子数据对象及数据属性的实例化信息(DOI、SDI、DAI),数据初值按对应DO和DA部署到分配好的数据区内,描述信息赋给对应的DO或DA

S170、根据模型实例化内容,为所述逻辑节点创建数据集及控制块。

上述的控制块包括缓存报告控制块、非缓存报告控制块、日志控制块、定值组控制块、GOOSE控制块。

为了满足数据集动态创建和动态删除,本实施例中,创建数据集包括以下步骤:

动态创建或动态删除数据集,得到新数据集;

将所述新数据集的信息按固定格式保存为一个文件,所述信息包括IED信息、访问点、数据集引用及数据集成员。

这样,在模型创建和初始化的过程中,通过读取上述文件获得所有动态数据集信息,就可以生成数据集到所在的访问点、LD和LN下,数据集类型可以标记为动态创建,以便为创建数据集和删除数据集等服务所识别。

另外,为了满足重启不丢失数据的功能需求,当创建数据集时或创建数据集后需要进行取代操作,将所有处于取代状态的数据对象的数据属性数值,按固定格式保存为一个文件。这样,在模型创建和初始化的过程中,读取上述文件获得所有处于取代状态的数据对象及其取代值,部署到相应数据对象的缓冲区中,就可以使得该数据对象恢复原来的取代状态。

需要说明的是,本实施例的各个步骤的自动运行是通过C语言完成编译的,当然,也可以通过其他编程语言实现本实施例中的各个步骤;此外,上述实例化中涉及到的IED、AP、LN、LD、DA、DO、SDO等的数量通常为多个,每一个以上数据的实例化都可参照本实施例所描述的方法,即可以分别进行,也可以并行进行。

使用本实施例所描述的模型,可以实现数据及对应数据区的快速定位,已完成相关数据的访问;国产化协议使用PER编码时,遇到SEQUENCE OF类型的编码时,可以快速获得Trie树节点的子节点个数,完成编码;数据布局简单清晰,使用快捷方便。

实施例二

实施例二公开了一种对应上述实施例的基于国产化通信协议的模型实例化方法对应的装置,为上述实施例的虚拟装置结构,请参照图2所示,包括:

读取模块210,用于读取并解析SCL模型文件;

处理模块220,用于从所述SCL模型文件中提取IED信息及数据模板信息;根据所述IED信息,按层次创建IED信息的访问点、逻辑设备及逻辑节点;根据所述数据模板信息,为所述逻辑节点创建对象信息;为所述逻辑节点分配数据区;将模型实例化信息的设置数据初值及描述信息部署到所述数据区内;根据模型实例化内容,为所述逻辑节点创建数据集及控制块。

优选地,所述对象信息包括数据对象、子数据对象、数据属性及各数据属性的功能约束属性。

优选地,为所述逻辑节点分配数据区包括以下步骤:

计算每个所述逻辑节点内各数据对象所需数据区空间量;

根据所述数据区空间量为所属逻辑节点分配数据区,得到整体数据区;

从所述整体数据区内依次为各数据对象分配数据区,得到数据对象数据区。

优选地,每个数据对象记录有所占数据区大小及数据起始位置。

优选地,所述控制块包括缓存报告控制块、非缓存报告控制块、日志控制块、定值组控制块、GOOSE控制块。

优选地,所述创建数据集包括以下步骤:

动态创建或动态删除数据集,得到新数据集;

将所述新数据集的信息按固定格式保存为一个文件,所述信息包括IED信息、访问点、数据集引用及数据集成员。

优选地,当创建数据集时或创建数据集后需要进行取代操作,将所有处于取代状态的数据对象的数据属性数值,按固定格式保存为一个文件。

实施例三

图3为本发明实施例三提供的一种电子设备的结构示意图,如图3所示,该电子设备包括处理器310、存储器320、输入装置330和输出装置340;计算机设备中处理器310的数量可以是一个或多个,图3中以一个处理器310为例;电子设备中的处理器310、存储器320、输入装置330和输出装置340可以通过总线或其他方式连接,图3中以通过总线连接为例。

存储器320作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的基于国产化通信协议的模型实例化方法对应的程序指令/模块(例如,基于国产化通信协议的模型实例化装置中的读取模块210和处理模块220)。处理器310通过运行存储在存储器320中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述实施例一的基于国产化通信协议的模型实例化方法。

存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器320可进一步包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置330可用于接收输入的用户身份信息、模型文件等。输出装置340可包括显示屏等显示设备。

实施例四

本发明实施例四还提供一种包含计算机可执行指令的存储介质,该存储介质可用于计算机执行基于国产化通信协议的模型实例化方法,该方法包括:

读取并解析SCL模型文件;

从所述SCL模型文件中提取IED信息及数据模板信息;

根据所述IED信息,按层次创建IED信息的访问点、逻辑设备及逻辑节点;

根据所述数据模板信息,为所述逻辑节点创建对象信息;

为所述逻辑节点分配数据区;

将模型实例化信息的设置数据初值及描述信息部署到所述数据区内;

根据模型实例化内容,为所述逻辑节点创建数据集及控制块。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的基于国产化通信协议的模型实例化方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

值得注意的是,上述基于国产化通信协议的模型实例化方法装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号