[发明专利]一种分布式IEC61850通信组件的数据交互方法在审
申请号: | 201710445218.1 | 申请日: | 2017-06-13 |
公开(公告)号: | CN107450993A | 公开(公告)日: | 2017-12-08 |
发明(设计)人: | 丛春涛;刘国华;卜新萍;谈凤真;孙发恩 | 申请(专利权)人: | 积成电子股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F13/42 |
代理公司: | 济南舜源专利事务所有限公司37205 | 代理人: | 苗峻 |
地址: | 250100 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 iec61850 通信 组件 数据 交互 方法 | ||
技术领域
本发明属于电力自动化通信领域,具体涉及一种分布式IEC61850通信组件的数据交互方法。
背景技术
IEC61850是一种电力自动化通信协议,用于在电力自动化系统中的不同设备间传递数据及控制信息。由于IEC61850的制订采用了面向对象的思想,通讯又映射到MMS协议实现,所以相对于IEC61968-5中的101、103和104等传统协议而言,从通信报文格式到功能逻辑都比较复杂。目前应用的模式,基本都是将IEC61850通信组件的数据以代码库的形式提供给上层应用调用,这种使用方式存在以下几个问题:
1.应用程序需要考虑模型解析、参数配置、连接管理及数据类型转换等诸多问题,而且要求应用程序开发者对IEC61850标准有深入了解,增加了IEC61850应用程序开发的难度;
2.由于IEC61850通信组件和上层应用程序采用接口函数调用的方式交互,二者耦合紧密,在IEC61850通信组件出现异常时,可能会波及到上层应用程序,造成严重错误;
3.IEC61850通信组件的接口函数调用的形式也限制了应用程序开发使用的编程语言要和IEC61850通信组件兼容,制约了系统的可扩展性。
发明内容
针对上述技术问题,本发明隐藏了IEC61850通信细节、简化了通信接口,实现了分布式IEC61850通信组件和应用程序间通过RPC接口调用的方式交互数据,采用GOOGLE公司的Protocol Buffer作为数据序列化工具,使得IEC61850应用程序开发更加简单、降低了IEC61850通信组件与应用程序之间的耦合度、提高了系统的可扩展性。
本发明所采用的技术方案如下:
一种分布式IEC61850通信组件的数据交互方法,包括以下步骤:
步骤1.以配置文件或配置数据库的形式增加配置信息,将IEC61850的数据Reference映射到带ID的通用数据格式。
在IEC61850标准中,对象和数据都是以树形结构组织的,层次比较多,给应用处理带来了不便。本发明将应用程序和IEC61850通信组件间需要交互的IEC61850数据在配置数据库中设置一个ID,这个ID可以是自动产生的,也可以是根据应用中的某个物理量产生的。在调用IEC61850通信组件接口进行通信时,使用所配置的数据ID作为标识,就可以降低应用程序处理的复杂度。
在IEC61850通信组件提供的RPC接口中,遥测、遥信、遥调、遥控及定值等对象均以ID作为标识,应用中根据ID识别不同数据。如果没有在配置库中配置对应ID的数据则不处理,这样由于仅处理用到的数据,也可以避免IEC61850通信组件处理所有数据带来的资源浪费。
配置信息中的IEC61850数据Reference和ID映射关系,包括以下内容:DataID为该数据的ID,AssociationID为该数据所属的连接,Reference为该数据在IEC61850模型中对应的Reference,Q为该数据对应的质量码在IEC61850中的Reference,T表示该数据对应的时间戳在IEC61850中的Reference,Category表示该数据的类型。该数据的类型包括:YX遥信、YC遥测、YK遥控、YM遥脉、SG定值组、SGCB定值组控制块等。
步骤2.使用Protocol Buffer在IEC61850通信组件上实现RPC接口供应用程序调用。
IEC61850通信组件可以分为客户端组件和服务器组件,它们都在独立的进程中运行,并可有多个进程。使用Protocol Buffer实现RPC接口供应用程序调用,降低了IEC61850通信组件与应用程序之间的耦合度。
Protocol Buffer简称Protobuf,是GOOGLE公司开发的数据序列化工具,它提供了一种类似于C语言的定义消息格式的语言,将预先写好的格式定义文件(文件名一般以.proto结尾)利用Protocol Buffer中的protoc预编译程序处理后可以生成对指定消息格式序列化和反序列化的代码,支持C/C++、JAVA、Python、GO等语言。相对于XML格式而言,Protobuf序列化产生的消息数据可以是二进制形式的,因此编码解码效率很高。另外,Protobuf还提供了定义Service的语法,可以将RPC接口也定义在proto文件中,经过Protobuf中的protoc工具的处理,可以生成Service对应的程序代码,这样就把数据传输简化为接口函数调用的形式,非常便利。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于积成电子股份有限公司,未经积成电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710445218.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于系统状态的任务调度方法
- 下一篇:接口调用方法及系统