一种高性能IEC61850通讯代理的实现方法技术

技术编号:20545857 阅读:16 留言:0更新日期:2019-03-09 18:47
本发明专利技术涉及一种高性能IEC61850通讯代理的实现方法,服务器在初次运行时对模型与服务端配置文件进行预解析;预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并;服务器组件与客户端组件共享模型存储数据库中的数据。本发明专利技术通过采用模型预解析、数据类型合并及客户端与服务器共享模型数据等技术手段,解决了目前常用的IEC61850通讯代理程序启动速度慢和占用内存量大的问题;通过客户端组件和服务器组件共享模型信息,减少了客户端配置模型信息的工作量。

An Implementation Method of High Performance IEC61850 Communication Agent

The invention relates to an implementation method of high-performance IEC61850 communication agent, in which the server pre-parses the model and the server configuration file at the initial run time; the pre-parsed result is stored in the model storage database, and the pre-parsed result is merged according to the data type in the storage process; and the server component and the client component share the data in the model storage database. The invention solves the problems of slow start-up speed and large memory consumption of IEC61850 communication proxy program commonly used at present by adopting model pre-parsing, data type merging and sharing model data between client and server, and reduces the workload of client configuration model information by sharing model information between client component and server component.

【技术实现步骤摘要】
一种高性能IEC61850通讯代理的实现方法
本专利技术属于电力自动化应用
,具体涉及一种高性能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模型中,数据是以分层树状结构组织的:服务器下包含多个逻辑设备;每个逻辑设备又包含多个逻辑节点;逻辑节点下可以包含数据对象、数据集和各种控制块;数据集下包含多个数据条目,数据条目是对逻辑节点下数据的引用。通常,在存储模型信息时,数据类型信息是以逻辑节点为单位存储的,因为在一个模型中可能包含很多逻辑节点类型,因此会导致类型信息存储数量较多。由于基本数据对象的本文档来自技高网
...

【技术保护点】
1.一种高性能IEC61850通讯代理的实现方法,其特征在于,包括以下步骤:步骤1、服务器在初次运行时对模型与服务端配置文件进行预解析;步骤2、将步骤1预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并;步骤3、服务器组件与客户端组件共享模型存储数据库中的数据。

【技术特征摘要】
1.一种高性能IEC61850通讯代理的实现方法,其特征在于,包括以下步骤:步骤1、服务器在初次运行时对模型与服务端配置文件进行预解析;步骤2、将步骤1预解析的结果存储到模型存储数据库中,存储过程中根据数据类型将预解析的结果进行合并;步骤3、服务器组件与客户端组件共享模型存储数据库中的数据。2.根据权利要求1所述的一种高性能IEC61850通讯代理的实现方法,其特征在于,步骤2所述的根据数据类型将结果进行合并的具体方法是:将逻辑节点拆分为数据对象保存,将数据名称和数据类型分别存储在数据表和数据类型表中,同时将数据集条目的类型信息也保存到数据类型表中。3.根据权利要求1或2所述的一种高性能IEC61850通讯代理的实现方法,其特征在于,所述的模型存储数据库包括:逻辑设备表、数据表、服务器信...

【专利技术属性】
技术研发人员:刘国华贺强朱晓磊刘鑫孟庆媛周秀丽王菲
申请(专利权)人:积成电子股份有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1