数据采集和远程控制的方法及系统技术方案

技术编号:19703386 阅读:24 留言:0更新日期:2018-12-08 14:31
本发明专利技术涉及网络通信领域,针对现有数据采集和远程控制中主题的发布和订阅需要预定义参数的问题,提出了一种数据采集和远程控制的方法,包括:设备端和控制端连接MQTT服务器;设备端提交自身的机器码和随机字符串给控制端进行绑定存储;设备端以固定前缀加自身的机器码为发布主题向MQTT服务器发布消息,控制端以固定前缀加通配符为订阅主题向MQTT服务器订阅消息;设备端以自身的机器码加随机字符串为订阅主题向MQTT服务器订阅消息,控制端以设备端的订阅主题作为发布主题向MQTT服务器发布消息,MQTT服务器根据订阅主题和发布主题自动推送消息。本发明专利技术适用于智能设备的数据采集和远程控制。

【技术实现步骤摘要】
数据采集和远程控制的方法及系统
本专利技术涉及网络通信领域,特别涉及一种数据采集和远程控制的方法及系统。
技术介绍
MQTT(MessageQueuingTelemetryTransport,消息对列遥测传输)是一个开源的轻量级的通信协议,它采用发布和订阅的消息推送模式适合于低带宽、不可靠连接、嵌入式设备等CPU内存资源紧张的设备。公布号为CN104639625A的中国专利公开了一种基于MQTT的数据集中器采集控制方法,该方法是使用MQTT协议连接MQTT服务器,根据预定义的参数进行主题的发布和订阅,然后通过MQTT服务器进行消息的转发来实现数据的采集和远程控制功能,该方案存在以下几点问题:1)预先设定参数的方式,需要耗费一定的人力物力,效率较低;2)参数一旦设定了,如果设备运行后需要进行更改,非常麻烦;3)存在参数重复出错的风险,造成数据采集和远程控制的错误。
技术实现思路
本专利技术所要解决的技术问题是:克服现有基于MQTT的数据采集和远程控制过程中主题的发布和订阅需要预定义参数的问题,提出一种数据采集和远程控制的方法及系统。本专利技术解决上述技术问题,采用的技术方案是:数据采集和远程控制的方法,包括以下步骤:S0、设备端和控制端连接MQTT服务器;设备端提交自身的机器码和随机字符串给控制端进行绑定存储;S1、设备端以固定前缀加自身的机器码为发布主题向MQTT服务器发布消息,控制端以所需采集数据的设备端对应的固定前缀加上通配符为订阅主题向MQTT服务器订阅消息,MQTT服务器根据控制端的订阅主题自动推送设备端的发布消息到控制端;S2、设备端以自身的机器码加随机字符串为订阅主题向MQTT服务器订阅消息,控制端以机器码加随机字符串为发布主题向MQTT服务器发布消息,MQTT服务器根据设备端的订阅主题自动推送控制端的发布消息到相应的设备端。为保证消息的确认接收,作为所述设备端数据采集和远程控制的方法的改进,所述方法还包括:发布方将消息进行发布的同时存储消息到本地,消息的订阅方接收到消息后向发布方返回回执消息,发布方是否及时收到正确的回执消息,如否,则启动消息重发机制;其中,当发布方为设备端时,订阅方为控制端,当发布方为控制端时,订阅方为设备端。作为所述设备端数据采集和远程控制的方法的优选,所述消息包括消息标识符,所述发布方是否及时收到正确的回执消息包括如下判断:发布方判断是否在预定时间内接收到回执消息;和/或,发布方判断回执消息中的消息标识符是否与发布时消息中的消息标识符一致。作为所述设备端数据采集和远程控制的方法的优选,所述消息重发机制包括:发布方根据存储的消息再次通过MQTT服务器发布消息给接收方;和/或,当发布方为设备端时,设备端根据存储的消息通过HTTP协议发送所述消息到控制端。作为所述设备端数据采集和远程控制的方法的优化,设备端定时发布设备端状态的消息给MQTT服务器;和/或,当设备端的状态发生变化时发布设备端状态的消息给MQTT服务器。本专利技术为解决上述技术问题,还提出了一种数据采集和远程控制的系统,所述系统包括设备端、MQTT服务器和控制端,所述MQTT服务器连接设备端和控制端用于设备端和控制端之间消息的转发,设备端通过HTTP协议提交设备端的机器码和随机字符串给控制端进行绑定存储;设备端用于以固定前缀加所述机器码为发布主题向MQTT服务器发布消息并以所述机器码加随机字符串为订阅主题向MQTT服务器订阅消息;控制端用于以固定前缀加通配符为订阅主题向MQTT服务器订阅消息并以机器码加随机字符串为发布主题向MQTT服务器发布消息。为保证消息的确认接收,作为所述设备端数据采集和远程控制的系统的改进,设备端和控制端还包括消息回执模块、判断模块和消息重发模块,所述消息回执模块用于发布方将消息进行发布的同时存储消息到本地,消息的订阅方接收到消息后向发布方返回回执消息,所述判断模块用于判断发布方是否及时收到正确的回执消息时,如否,则启动消息重发模块。作为所述设备端数据采集和远程控制的系统的优化,所述消息包括消息标识符,所述判断模块用于发布方判断是否在预定时间内接收到回执消息;和/或,发布方判断回执消息中的消息标识符是否与发布时消息中的消息标识符一致。作为所述设备端数据采集和远程控制的系统的优化,所述消息重发模块用于发布方根据存储的消息再次通过MQTT服务器发布消息给设备端;和/或,当发布方为设备端时,设备端根据存储的消息通过HTTP协议发送所述消息到控制端。作为所述设备端数据采集和远程控制的系统的优化,设备端定时发布设备端状态的消息给MQTT服务器;和/或,当设备端的状态发生变化时发布设备端状态的消息给MQTT服务器。本专利技术的有益效果是:1)设备端以设备端的机器码加随机字符串为订阅主题向MQTT服务器订阅消息,控制端以机器码加随机字符串为发布主题向MQTT服务器发布消息,如此控制端的控制指令可任意选定具体需要控制的参数进行控制指令的发布,而不需要采用预先确定的参数进行主题的订阅,可实现控制指令全自动的发送和接收。2)设备端以固定前缀加所述机器码为发布主题向MQTT服务器发布消息;控制端以固定前缀加通配符为订阅主题向MQTT服务器订阅消息;如此设备端可任意选定具体需要上传的参数进行采集数据的发布,而不需要采用预先确定的参数进行主题的订阅,可实现采集数据全自动的发送和接收,同时控制端能收到所有设备端的采集数据,而不需要订阅多个主题消耗控制端的资源。3)加入了消息确认机制,发布方将消息进行发布的同时存储消息到本地,消息的订阅方接收到消息后向发布方返回回执消息,保证了消息的确认接收且不会重复接收。4)发布方未及时收到正确的回执消息时,则启动消息重发机制,即发布方根据存储的消息再次通过MQTT服务器发布消息给接收方,保证了消息为接收成功时的再次发送;如发布方仍未及时收到正确的回执消息时,当发布方为设备端时,设备端根据存储的消息通过HTTP协议发送所述消息到控制端。如此保证了当MQTT服务器宕机时,设备端采集数据的上传也能正常进行。附图说明图1为本专利技术实施例数据采集和远程控制方法的整体流程示意图。图2为本专利技术实施例数据采集应用场景的流程示意图。图3为本专利技术实施例远程控制用用场景的流程示意图。图4为本专利技术实施例提出的一种数据采集和远程控制系统的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本专利技术进行进一步详细说明。如
技术介绍
,现有基于MQTT的数据采集和远程控制过程中存在主题的发布和订阅需要预定义参数的问题,为了克服这样的缺陷,本专利技术实施例提出了一种设备端数据采集和远程控制的方法及系统。数据采集和远程控制的方法,包括以下步骤:S0、设备端和控制端连接MQTT服务器;设备端提交自身的机器码和随机字符串给控制端进行绑定存储;S1、设备端以固定前缀加自身的机器码为发布主题向MQTT服务器发布消息,控制端以所需采集数据的设备端对应的固定前缀加上通配符为订阅主题向MQTT服务器订阅消息,MQTT服务器根据控制端的订阅主题自动推送设备端的发布消息到控制端;S2、设备端以自身的机器码加随机字符串为订阅主题向MQTT服务器订阅消息,控制端以机器码加随机字符串为发布主题向MQTT服务器发布消本文档来自技高网
...

【技术保护点】
1.数据采集和远程控制的方法,其特征在于,包括以下步骤:S0、设备端和控制端连接MQTT服务器;设备端提交自身的机器码和随机字符串给控制端进行绑定存储;S1、设备端以固定前缀加自身的机器码为发布主题向MQTT服务器发布消息,控制端以所需采集数据的设备端对应的固定前缀加上通配符为订阅主题向MQTT服务器订阅消息,MQTT服务器根据控制端的订阅主题自动推送设备端的发布消息到控制端;S2、设备端以自身的机器码加随机字符串为订阅主题向MQTT服务器订阅消息,控制端以机器码加随机字符串为发布主题向MQTT服务器发布消息,MQTT服务器根据设备端的订阅主题自动推送控制端的发布消息到相应的设备端。

【技术特征摘要】
1.数据采集和远程控制的方法,其特征在于,包括以下步骤:S0、设备端和控制端连接MQTT服务器;设备端提交自身的机器码和随机字符串给控制端进行绑定存储;S1、设备端以固定前缀加自身的机器码为发布主题向MQTT服务器发布消息,控制端以所需采集数据的设备端对应的固定前缀加上通配符为订阅主题向MQTT服务器订阅消息,MQTT服务器根据控制端的订阅主题自动推送设备端的发布消息到控制端;S2、设备端以自身的机器码加随机字符串为订阅主题向MQTT服务器订阅消息,控制端以机器码加随机字符串为发布主题向MQTT服务器发布消息,MQTT服务器根据设备端的订阅主题自动推送控制端的发布消息到相应的设备端。2.如权利要求1所述的数据采集和远程控制的方法,其特征在于,还包括:发布方将消息进行发布的同时存储消息到本地,消息的订阅方接收到消息后向发布方返回回执消息,发布方是否及时收到正确的回执消息,如否,则启动消息重发机制;其中,当发布方为设备端时,订阅方为控制端,当发布方为控制端时,订阅方为设备端。3.如权利要求2所述的数据采集和远程控制的方法,其特征在于,所述消息包括消息标识符,所述发布方是否及时收到正确的回执消息包括如下判断:发布方判断是否在预定时间内接收到回执消息;和/或,发布方判断回执消息中的消息标识符是否与发布时消息中的消息标识符一致。4.如权利要求2所述的数据采集和远程控制的方法,其特征在于,所述消息重发机制包括:发布方根据存储的消息再次通过MQTT服务器发布消息给接收方;和/或,当发布方为设备端时,设备端根据存储的消息通过HTTP协议发送所述消息到控制端。5.如权利要求1所述的数据采集和远程控制的方法,其特征在于,设备端定时发布设备端状态的消息给MQTT服务器;...

【专利技术属性】
技术研发人员:戴德军李坤明陈爱君
申请(专利权)人:四川爱创科技有限公司
类型:发明
国别省市:四川,51

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

1