一种基于MQTT协议的无线通讯装置和方法以及一种控水器制造方法及图纸

技术编号:16348879 阅读:50 留言:0更新日期:2017-10-03 23:22
本发明专利技术提出了一种基于MQTT协议的无线通讯装置和方法以及该无线通讯装置在控水器中的应用,属于无线通讯技术领域。本发明专利技术采用MQTT协议实现控水器等设备与控制软件间的通信以及实现控水器等设备的上线通知,通过MQTT的遗言机制实现设备的下线通知,通过HTTP实现固件升级。本发明专利技术可应用于所有的需要无线通讯实现数据传输的设备中。

【技术实现步骤摘要】
一种基于MQTT协议的无线通讯装置和方法以及一种控水器
本专利技术涉及一种无线通讯装置和方法以及该无线通讯装置的应用,属于无线通讯

技术介绍
目前多数高校学生公寓饮用水、淋浴,单位后勤浴室、工厂淋浴室等的用水都通过控水器采用进行用水管控,不仅方便使用,还节约用水。当前控水器与系统软件之间采用有线联网模式工作,这种联网方式需要大规模布线实现联网,不仅增加布线成本,同时也增加了施工难度。另一方面,现有的应用于固定范围(如学校、工厂等)的无线通讯装置多采用自组网模式(如ZigBee)和CoAP协议,自组网模式需要独立建网,建设成本较高,而CoAP协议不方便与其他产品对接,其适应性受限。
技术实现思路
本专利技术为了解决布线成本高、施工难度大的问题,本专利技术提出了一种基于MQTT协议的无线通讯装置和方法,以及基于该无线通讯装置的控水器。一种基于MQTT协议的无线通讯装置,所采取的技术方案如下:所述无线通讯装置包括:用于建立MQTT数据收发线程的数据收发线程建立模块;用于所述MQTT数据收发线程与MQTT代理服务器之间建立连接的连接建立模块;用于所述MQTT数据收发线程进行消息订阅的消本文档来自技高网...
一种基于MQTT协议的无线通讯装置和方法以及一种控水器

【技术保护点】
一种基于MQTT协议的无线通讯装置,其特征在于,所述无线通讯装置包括:用于建立MQTT数据收发线程的数据收发线程建立模块;用于所述MQTT数据收发线程与MQTT代理服务器之间建立连接的连接建立模块;用于所述MQTT数据收发线程进行消息订阅的消息订阅模块;用于所述MQTT数据收发线程注册遗嘱消息的信息注册模块;用于建立MQTT发送消息队列和MQTT接收消息队列的消息队列建立模块;用于建立串口数据接收线程的串口数据接收线程建立模块;用于所述串口数据接收线程初始化串口和串口接收完成信号量的串口初始化模块;用于所述串口数据接收线程建立接收数据缓存的数据缓存模块;用于所述串口数据接收线程建立接收数据缓存...

【技术特征摘要】
1.一种基于MQTT协议的无线通讯装置,其特征在于,所述无线通讯装置包括:用于建立MQTT数据收发线程的数据收发线程建立模块;用于所述MQTT数据收发线程与MQTT代理服务器之间建立连接的连接建立模块;用于所述MQTT数据收发线程进行消息订阅的消息订阅模块;用于所述MQTT数据收发线程注册遗嘱消息的信息注册模块;用于建立MQTT发送消息队列和MQTT接收消息队列的消息队列建立模块;用于建立串口数据接收线程的串口数据接收线程建立模块;用于所述串口数据接收线程初始化串口和串口接收完成信号量的串口初始化模块;用于所述串口数据接收线程建立接收数据缓存的数据缓存模块;用于所述串口数据接收线程建立接收数据缓存互斥量的缓存互斥量模块;用于建立数据处理线程的数据处理线程建立模块。2.根据权利要求1所述基于MQTT协议的无线通讯装置,其特征在于,所述无线通讯装置还包括:用于所述MQTT数据收发线程接收MQTT代理服务器发布的外部设备控制命令的外部设备控制命令接收模块;用于将所述外部设备控制命令接收模块接收到的外部设备控制命令推入所述MQTT接收消息队列的命令推入模块;用于数据处理线程从所述MQTT接收消息队列中提取外部设备控制命令的外部设备控制命令提取模块;用于数据处理线程解析所述外部设备控制命令的外部设备控制命令解析模块;用于数据处理线程判断所述外部设备控制命令是发给对应外部设备的命令判断模块;用于数据处理线程向所述外部设备发送外部设备控制命令的命令发送模块;用于串口数据接收线程接收所述外部设备的命令执行结果的执行结果接收模块;用于串口数据接收线程将所述命令执行结果保存到所述接收数据缓存的数据保存模块;用于串口数据接收线程向MQTT数据收发线程发送所述串口接收完成信号量的信号发送模块;用于所述MQTT数据收发线程接收所述串口接收完成信号量的信号接收模块;用于所述MQTT数据收发线程接收所述串口接收完成信号量后,读取所述接收数据缓存中缓存数据的数据读取模块;用于所述MQTT数据收发线程向MQTT代理服务器发布消息的消息发布模块。3.根据权利要求1所述基于MQTT协议的无线通讯装置,其特征在于,所述无线通讯装置还包括:用于所述MQTT数据收发线程接收MQTT代理服务器发布的控制命令的命令接收模块;用于将所述命令接收模块接收到的控制命令推入所述MQTT接收消息队列的控制命令推入模块;用于数据处理线程从所述MQTT接收消息队列中提取控制命令的控制命令提取模块;用于数据处理线程解析所述控制命令的控制命令解析模块;用于数据处理线程执行其从所述MQTT接收消息队列中提取的控制命令的命令执行模块;用于数据处理线程向MQTT代理服务器发布其执行所述控制命令的执行结果的结果发布模块。4.根据权利要求1所述基于MQTT协议的无线通讯装置,其特征在于,所述无线通讯装置还包括:用于所述MQTT数据收发线程接收MQTT代理服务器发布的固件升级命令的升级命令接收模块;用于将所述升级命令接收模块接收到的固件升级命令推入所述MQTT接收消息队列的升级命令推入模块;用于数据处理线程从所述MQTT接收消息队列中提取固件升级命令的升级命令提取模块;用于建立固件升级线程的固件升级线程建立模块;用于所述固件升级线程连接HTTP文件服务器的连接模块;用于固件升级线程下载固件文件的文件下载模块;用于固件升级线程校验文件完整性的文件校验模块;用于固件升级线程写入升级标志的标志写入模块。5.一种基于MQTT协议的无线通讯方法,其特征在于,所述无线通讯方法包括:用于建立MQTT数据收发线程的数据收发线程建立步骤;用于所述MQTT数据收发线程与MQTT代理服务器之间建立连接的连接建立步骤;用于所述MQTT数据收发线程进行消息订阅的消息订阅步骤;用于所述MQTT数据收发线程注册遗嘱消息的信息注册步骤;用于建立MQTT发送消息队列和MQTT接收消息队列的消息队列建立步骤;用于建立串口数据接收线程的串口数据接收线程建立步骤;用于所述串口数据接收线程初始化串口和串口接收完成信号量的串口初始化步骤;用于所述串口数据接收线程建立接收数据缓存的数据缓存步骤;用于所述串口数据接收线程建立接收数据缓存互斥量的缓存互斥量步骤;用于建立数据处理线程的数据处...

【专利技术属性】
技术研发人员:陈文彬种连荣宋式斌刘刚崔英华李春松王同琛
申请(专利权)人:哈尔滨新中新电子股份有限公司
类型:发明
国别省市:黑龙江,23

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

1