[发明专利]一种基于多种接入及边缘计算的工业软网关以及实现方法有效

专利信息
申请号: 201810379840.1 申请日: 2018-04-25
公开(公告)号: CN108667725B 公开(公告)日: 2021-06-11
发明(设计)人: 毛静轩;张秋鸿;傅磊;曲晓峰;张德阳;姜漫利;苗东旭;王缘;王兆光 申请(专利权)人: 哈尔滨电气股份有限公司
主分类号: H04L12/66 分类号: H04L12/66;H04L12/24;H04L29/08;G06F16/25;H04L29/06
代理公司: 哈尔滨市伟晨专利代理事务所(普通合伙) 23209 代理人: 李晓敏
地址: 150000 黑龙江*** 国省代码: 黑龙江;23
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 多种 接入 边缘 计算 工业 网关 以及 实现 方法
【权利要求书】:

1.一种基于多种接入及边缘计算的工业软网关的实现方法,其特征在于,包括:

步骤一、通过配置交互模块进行数据收集模块与相应数据源的连接配置;

步骤二、对待收集的数据进行标准化,标准化后启动数据源对应的数据收集程序;

步骤三、判断收集的数据是否需要进行边缘计算处理,若是则收集的数据自动送入边缘计算模块,进行数据整合、数据分析、过滤降噪以及发送准备;

步骤四、将数据准备完成后送入数据发送控制模块,并将数据存入边缘缓存做备份存储;数据发送控制模块接收到需要发送的数据,按照缓存消息队列的发送处理和调度方法将数据按照数据云平台的要求实现数据发送;

所述数据发送控制模块主要由三个线程并行运行来完成该模块的数据缓存及发送功能;

第一个线程为数据接收线程,具体工作流程为:数据进入消息队列之前,通过用户选择是否进行数据加密,如果数据进行加密,则采用AES或RSA算法加密,之后数据进入消息队列,如果不加密,则数据直接进入消息队列,数据进入消息队列后,获取当前最新存储位,当前存储位为静态变量,采用循环队列存储,若当前存储位未被处理过,表明消息队列已满,被处理过则表示已经实现远程发送,若未被处理的数据被新数据覆盖,该数据则会立即存入待发送缓存文件中,在网络连接可用时,这个数据会重新发送,并从待发送缓存文件中删除;如果消息队列已满,建立相应的Avro文件,将消息队列数据逐个拷贝到Avro文件;

第二个线程用于进行消息队列的循环发送,其工作流程为:首先读取消息队列,获取当前最新读取位,判断当前消息队列当前存储位是否被处理过,如果未被处理过,则进行数据发送,发送过程中如果通信中断,则释放连接重新发送,如果通信正常,则采用MQTT协议进行数据的发送,发送完毕后,更新当前数据读取位的处理状态为已处理,更新当前最新读取位至下一个队列空间,若当前位置的数据已被处理,则表明队列中尚无等待发送的数据,此时读取位指针将停滞在此位置;

第三个线程用于缓存备份至数据文件中的数据的重新发送,首先读取Avro文件,按照MQTT协议进行数据发送,如果发送完成,则在文件中删除已发送数据,如果发送未完成,则进行重发,直至发送成功,具体实现方式为:如果发送未完成,则将数据读取指针回滚,相当于下次发送会重走整个读取和发送的流程,避免意外断电、程序退出造成的待发送数据丢失的问题;当前Avro文件中的数据全部发送完毕后,自动查找下一个Avro文件,按同样发送机制进行数据发送。

2.如权利要求1所述的基于多种接入及边缘计算的工业软网关的实现方法,其特征在于,所述数据源包括:Modbus串口、 ModbusTCP、OPC、Profibus、ProfiNet、MySql、Oracle、SQLServer数据源。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨电气股份有限公司,未经哈尔滨电气股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810379840.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top