CN109446254B - 一种高性能iec61850通讯代理的实现方法 - Google Patents
一种高性能iec61850通讯代理的实现方法 Download PDFInfo
- Publication number
- CN109446254B CN109446254B CN201811144548.8A CN201811144548A CN109446254B CN 109446254 B CN109446254 B CN 109446254B CN 201811144548 A CN201811144548 A CN 201811144548A CN 109446254 B CN109446254 B CN 109446254B
- Authority
- CN
- China
- Prior art keywords
- data
- model
- server
- iec61850
- logic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种高性能IEC61850通讯代理的实现方法,服务器在初次运行时对模型与服务端配置文件进行预解析;预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并;服务器组件与客户端组件共享模型存储数据库中的数据。本发明通过采用模型预解析、数据类型合并及客户端与服务器共享模型数据等技术手段,解决了目前常用的IEC61850通讯代理程序启动速度慢和占用内存量大的问题;通过客户端组件和服务器组件共享模型信息,减少了客户端配置模型信息的工作量。
Description
技术领域
本发明属于电力自动化应用技术领域,具体涉及一种高性能IEC61850通讯代理的实现方法。
背景技术
随着IEC61850在电力自动化领域的应用不断广泛,基于IEC61850协议的通讯代理的需求也逐渐增多。例如,用于智能变电站和远方控制中心通讯的智能网关机及用于就地化保护设备和变电站后台通讯的智能管理单元等。它们的特点是一方面作为客户端连接到多个IEC61850设备,同时又对上提供IEC61850服务。它们可以将所连接的IEC61850设备上送的信息(主要是遥信、遥测等)转发给上层的客户端,又将上层客户端下发的控制命令(主要是遥控、定值修改等)转发给所连接的IEC61850设备。
如图1所示,是目前常用的IEC61850通讯代理实现方案的示意图。如图中虚线框中的部分所示,目前IEC61850通讯代理的实现方案通常是使用一个IEC61850客户端建立与多个IEC61850设备的连接,同时使用一个IEC61850服务器对上提供IEC61850服务。二者分别配置,独立运行,并且使用某种通讯方式交换数据。这种方式的优点在于,所使用的客户端和服务器可以直接使用原有的客户端和服务器程序,只需要解决二者通讯的问题即可,工作量较小。但这种方式有难以避免的问题:一是相对于IEC61850装置的服务而言,代理这种模式可能需要对上提供成百上千的装置的代理服务,原有的给单个装置使用的IEC61850服务器架构一方面由于解析规模巨大的模型文件启动时间很长;二是由于缺乏优化会占用大量内存,该问题使得该方案对硬件配置要求很高,提高了部署成本;三是由于服务器和客户端是独立运行的,二者使用的模型信息是独立的,需要分别配置,模型和配置信息的冗余增加了内存占用,同时增加了配置工作量。
发明内容
为解决上述技术问题,本发明采用模型预解析、数据类型合并及客户端与服务器共享模型数据,解决了现有IEC61850通讯代理启动速度慢和占用内存量大的问题,同时减少了配置过程的工作量。本发明所采用的技术方案如下:
一种高性能IEC61850通讯代理的实现方法,包括以下步骤:
步骤1、服务器在初次运行时对模型与服务端配置文件进行预解析。
当模型文件规模很大时,服务器和客户端程序启动时耗费在模型解析上的时间都比较长。经测试,百兆的模型解析花费的时间可达到数分钟。解析模型文件的过程就是对XML文件进行解析和处理,如果在成功解析模型文件之后就将解析的结果存储到数据库中,后续运行时无需再解析模型文件,而是从数据库中按需加载必要的信息,即可大幅提升服务器和客户端组件的启动速度。
步骤2、将步骤1预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并。
在IEC61850模型中,虽然每个逻辑节点类中包含的数据及类型各有不同,但是逻辑节点所包含数据的类型是比较有限的。尤其是现在对IEC61850的应用有一些国内标准,数据类型基本上都要按照标准中的定义,在一个变电站的模型中,数据类型也不会超过100个。如果在内存中存放数据类型信息时能将相同的数据类型予以合并,必然可以大幅度减少内存占用。
步骤3、服务器组件与客户端组件共享模型存储数据库中的数据。
在IEC61850通讯代理这种工作模式下,服务器组件对上提供代理服务的模型和客户端组件所连接的装置使用的模型几乎完全一致,只是服务器对上服务的模型还增加了代理设备自身的一些信息。在这种情况下,客户端只要访问服务器组件的模型信息即可,无需再配置自己的模型信息,这样就可以减少配置数据库的大小及运行时的内存占用。此外,由于不必单独配置客户端的模型信息,还减少了配置时的工作量。
优选地,步骤2所述的根据数据类型将结果进行合并的具体方法是:将逻辑节点拆分为数据对象保存,将数据名称和数据类型分别存储在数据表和数据类型表中,同时将数据集条目的类型信息也保存到数据类型表中。
优选地,所述的模型存储数据库包括:逻辑设备表、数据表、服务器信息表、数据类型表、数据集表、数据集条目表,所述的数据表分别关联至逻辑设备表、数据类型表,逻辑设备表关联至服务器信息表,数据集表关联至逻辑设备表,数据集条目表分别关联至数据类型表、数据集表。在数据表中只保存其类型信息在数据类型表中的ID。
优选地,服务器组件与客户端组件通过数据库接口共享模型存储数据库中的数据。
优选地,所述的预解析的具体步骤是将服务器端的IEC61850模型文件进行解析,获得模型中的逻辑设备、逻辑节点、数据、数据集、数据类型,并将其存储在内存结构中。
本发明的有益效果:
1)本发明通过采用模型预解析、数据类型合并及客户端与服务器共享模型数据等技术手段,解决了目前常用的IEC61850通讯代理程序启动速度慢和占用内存量大的问题;
2)本发明通过客户端组件和服务器组件共享模型信息,减少了客户端配置模型信息的工作量。
附图说明
图1是目前常用的IEC61850通讯代理实现方案的示意图;
图2是本发明采用的高性能IEC61850通讯代理实现方案的示意图;
图3是模型数据库中的数据表结构及其关联关系的示意图。
具体实施方式
下面结合附图,具体说明本发明的实施方式。
如图2所示,是本发明采用的高性能IEC61850通讯代理实现方案的示意图。与目前通常使用的方案相比,客户端不再解析IEC61850模型文件,而是由服务器在初次运行的时候解析模型文件,并将模型文件中的信息存储到模型存储数据库中。这样,客户端程序中就无需保留模型解析的代码,同时也无需再配置模型文件相关的信息。运行时,服务器与客户端均从模型存储数据库中直接获取模型信息,从而省去了启动时解析模型文件的时间,加快了代理程序的启动速度。
一种高性能IEC61850通讯代理的实现方法,包括以下步骤:
步骤1、服务器在初次运行时对模型与服务端配置文件进行预解析。具体步骤是将服务器端的IEC61850模型文件进行解析,获得模型中的逻辑设备、逻辑节点、数据、数据集、数据类型等信息,并将其存储在内存结构中。现在的服务器程序一般不会将解析的结果保存到数据库中。
步骤2、将步骤1预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并。具体方法是:将逻辑节点拆分为数据对象保存,将数据名称和数据类型分别存储在数据表和数据类型表中,同时将数据集条目的类型信息也保存到数据类型表中。每次将数据类型添加到数据库中时如果有重复的数据类型则不再添加,只引用到原有的数据类型即可。
如图3所示,是模型存储数据库中的数据表结构及其关联关系的示意图,具体包括:逻辑设备表、数据表、服务器信息表、数据类型表、数据集表、数据集条目表。所述的数据表分别关联至逻辑设备表、数据类型表,逻辑设备表关联至服务器信息表,数据集表关联至逻辑设备表,数据集条目表分别关联至数据类型表、数据集表。在IEC61850模型中,数据是以分层树状结构组织的:服务器下包含多个逻辑设备;每个逻辑设备又包含多个逻辑节点;逻辑节点下可以包含数据对象、数据集和各种控制块;数据集下包含多个数据条目,数据条目是对逻辑节点下数据的引用。通常,在存储模型信息时,数据类型信息是以逻辑节点为单位存储的,因为在一个模型中可能包含很多逻辑节点类型,因此会导致类型信息存储数量较多。由于基本数据对象的类型是有限的,我们将逻辑节点拆分为数据对象来保存,并且将类型信息存放在专门的数据类型表中,存放数据类型时要保证没有重复,在数据表中只保存其类型信息在数据类型表中的ID即可,使用数据时,再根据其类型ID到数据类型表中读取类型信息。这样,在模型信息数据库中保存的数据类型数量就会大大减少,加载到内存后占用的内存空间也会显著减少。
步骤3、服务器组件与客户端组件通过数据库接口共享模型存储数据库中的数据。
Claims (2)
1.一种高性能IEC61850通讯代理的实现方法,其特征在于,包括以下步骤:
步骤1、服务器在初次运行时对模型与服务端配置文件进行预解析;
所述的预解析的具体步骤是将服务器端的IEC61850模型文件进行解析,获得模型中的逻辑设备、逻辑节点、数据、数据集和数据类型,并将其存储在内存结构中;
步骤2、将步骤1预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并;
步骤2所述的根据数据类型将预解析的结果进行合并的具体方法是:将逻辑节点拆分为数据对象保存,将数据名称和数据类型分别存储在数据表和数据类型表中,同时将数据集条目的类型信息也保存到数据类型表中;
步骤3、服务器组件与客户端组件共享模型存储数据库中的数据;
所述的模型存储数据库包括:逻辑设备表、数据表、服务器信息表、数据类型表、数据集表和数据集条目表,所述的数据表分别关联至逻辑设备表和数据类型表,逻辑设备表关联至服务器信息表,数据集表关联至逻辑设备表,数据集条目表分别关联至数据类型表和数据集表;
服务器组件与客户端组件通过数据库接口共享模型存储数据库中的数据。
2.根据权利要求1所述的一种高性能IEC61850通讯代理的实现方法,其特征在于,在数据表中只保存其类型信息在数据类型表中的ID。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811144548.8A CN109446254B (zh) | 2018-09-29 | 2018-09-29 | 一种高性能iec61850通讯代理的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811144548.8A CN109446254B (zh) | 2018-09-29 | 2018-09-29 | 一种高性能iec61850通讯代理的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109446254A CN109446254A (zh) | 2019-03-08 |
CN109446254B true CN109446254B (zh) | 2022-03-08 |
Family
ID=65544773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811144548.8A Active CN109446254B (zh) | 2018-09-29 | 2018-09-29 | 一种高性能iec61850通讯代理的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446254B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999367A (zh) * | 2012-12-14 | 2013-03-27 | 北京四方继保自动化股份有限公司 | 一种快速初始化iec61850智能装置客户端通讯的方法 |
CN105515819A (zh) * | 2015-07-14 | 2016-04-20 | 国家电网公司 | 一种基于iec61850的通信组件与应用组件的数据接口方法及*** |
CN106021396A (zh) * | 2016-05-13 | 2016-10-12 | 国网辽宁省电力有限公司电力科学研究院 | 一种基于b/s架构的图形化展示scd配置文件的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101397381B1 (ko) * | 2013-09-10 | 2014-05-27 | 명지대학교 산학협력단 | 메타모델링 통합방법 |
-
2018
- 2018-09-29 CN CN201811144548.8A patent/CN109446254B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999367A (zh) * | 2012-12-14 | 2013-03-27 | 北京四方继保自动化股份有限公司 | 一种快速初始化iec61850智能装置客户端通讯的方法 |
CN105515819A (zh) * | 2015-07-14 | 2016-04-20 | 国家电网公司 | 一种基于iec61850的通信组件与应用组件的数据接口方法及*** |
CN106021396A (zh) * | 2016-05-13 | 2016-10-12 | 国网辽宁省电力有限公司电力科学研究院 | 一种基于b/s架构的图形化展示scd配置文件的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109446254A (zh) | 2019-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106131213B (zh) | 一种服务管理方法和*** | |
CN110365644B (zh) | 一种构建物联网设备高性能监控平台的方法 | |
CN110138876B (zh) | 任务部署方法、装置、设备及平台 | |
CN111064626B (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
CN110008005B (zh) | 基于云平台的电网通信资源虚拟机迁移***及方法 | |
CN110008267B (zh) | 一种数据处理的***及方法 | |
CN111966289A (zh) | 基于Kafka集群的分区优化方法和*** | |
CN105183299A (zh) | 一种人机界面服务处理***和方法 | |
CN104167817A (zh) | 一种电力设备实时信息集成的***及方法 | |
CN113900810A (zh) | 分布式图处理方法、***及存储介质 | |
CN106375362A (zh) | 分布式服务器的缓存同步方法及*** | |
CN108111578B (zh) | 基于nio的配电终端数据采集平台接入终端设备的方法 | |
CN113570347A (zh) | 一种面向微服务架构***的rpa运维方法 | |
CN109918221A (zh) | 一种硬盘报错解析方法、***、终端及存储介质 | |
CN109446254B (zh) | 一种高性能iec61850通讯代理的实现方法 | |
CN112417050A (zh) | 数据同步方法和装置、***、存储介质及电子装置 | |
CN114422336B (zh) | 控制平面调试方法、装置、节点及存储介质 | |
CN113055378B (zh) | 用于工业互联网标识解析的协议转换平台及数据对接方法 | |
CN115022351A (zh) | 一种换电数据的存储方法、装置、***及存储介质 | |
CN112685486B (zh) | 数据库集群的数据管理方法、装置、电子设备及存储介质 | |
CN116781717A (zh) | 一种混合云数据同步的方法及*** | |
CN114070889A (zh) | 配置方法、流量转发方法、设备、存储介质及程序产品 | |
CN113886472A (zh) | 一种数据接入***、接入方法、计算机设备和存储介质 | |
CN106991129B (zh) | 基于soa构架电力调度***的实时数据库***及实现方法 | |
CN111193674A (zh) | 一种基于场景与服务状态的负载分流实现方法和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |