【RT Thread作品秀】智慧酒店新风监控系统 电路方案
【RT-Thread作品秀】智慧酒店新风监控系统作者:焦玉雷 (注:具体图片见“其他文件”的附件文档) 概述1、应用背景绝大多数客房由于长期密闭,往往无法做到良好的通风换气。室内异味,潮气,烟味等污染物聚集在室内,客户的睡眠质量也会因缺乏充足新鲜洁净空气而受影响。智慧新风系统通过不断送入过滤好的外界新鲜空气解决这些问题,提高客户的满意度,回访率和推荐频率。为保证客户在房内对新鲜空气的需求,高档酒店常装有新风系统,但现有新风系统存在正负压差不稳定、运维成本高等问题。智慧新风系统通过调整空气压力,监控风机状态,并将系统信息基于MQTT协议传输至中控系统,实现边缘敏捷互联,提高酒店客户的满意度,回访率和推荐频率。 2、功能介绍智慧酒店新风监控系统能够实现酒店的气压检测,实时调整新风系统的输入输出,为酒店客户提供健康舒适的呼吸环境;同时监控系统对风机的振动状态进行实时监控,可以实现对风机状态进行感知预测,提早发现风机的异常故障状态。 开发环境硬件:ART-Pi、六轴传感器(LSM6DSOX)、气压传感器(LPS22HH、WIFI模块(USR-WIFI232-D2) RT-Thread版本:3.1.3 开发工具及版本:keilV5.31.0.0 VS2017 RT-Thread使用情况概述目前,使用了RT-Thread内核、多线程、信号量、事件集。 RT-Thread操作系统是一款基于优先级和时间片轮转的多任务实时操作系统。优先级其实是给任务分配的一个数值,数值越小则优先级越高。优先级的高低将直接反应在任务调度算法中,优先级越高越优先响应。RT-Thread对任务的调度是基于时间片的轮转,时间片轮转调度会在每个TICK中断时对当前任务的时间片减一,然后检查其它任务的时间片剩余情况。一旦当前任务的时间片用完,则会先重置当前任务的时间片。然后看是否有相同优先级的任务,如果有则会将当前任务移到队列末尾。然后触发优先级调度,此时只要当前优先级是已就绪的最高优先级最终就会取出相同优先级队列头的任务运行。 硬件框架边缘端硬件使用比赛提供的STM32H750开发板,采集酒店的压力和风机的振动信息,判定酒店环境和风机硬件状态,通过WIFI连接网络,将数据通过MQTT协议发送至云平台。结合六轴传感器(LSM6DSOX)和气压传感器将酒店新风系统中的气压,室内温度,风机振动信息上传至云端,在云端可以实时获取新风系统状态信息,并可以基于通信协议对风机进行控制。 图片无法上传,具体图片见“其他文件”的附件文档 软件框架说明智慧酒店新风监控系统中网络层适用MQTT传输消息,MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛,尤其适用物联网(IoT)场景。 STM32H750开发板使用CUBEMX配置硬件接口,自动生成HAL库文件,再基于该软件移植RT-Thread操作系统,移植完操作系统可以进行应用层的代码编写。 软件PC界面适用C#在WPF框架下进行编写,WPF分离界面设计人员与开发人员的工作,界面效果适用XAML语言进行表示,后台功能使用C#进行快捷开发。 软件界面如下图所示:图片无法上传,具体图片见“其他文件”的附件文档 PC监控系统软件示意图:图片无法上传,具体图片见“其他文件”的附件文档 服务器使用华为云服务器,在华为云上使用emqtt的docker快速搭建MQTT服务器,边缘端向topic为/hotel/pressure发布消息,消息中报含气压、振动特征和单片机跟据状态判定的新风系统状态。 软件模块说明智慧酒店新风监控系统硬件系统包含数据采集模块、通信协议模块、MQTT数据通讯模块、新风系统控制模块四部分组成。 数据采集模块采集振动信息、气压信息和温度信息。 通信协议模块将采集到的信息基于自定义的通信协议制作成通信帧。 MQTT数据通讯模块将数据打包为MQTT协议帧,通过连接MQTT服务器,订阅MQTT-topic消息,发布MQTT消息将数据上传。 新风系统控制模块集成了边缘计算的功能,通过对风机振动信息的检测,或者云端的控制信息,实现本地对新风系统的控制功能。 演示效果硬件连接图图片无法上传,具体图片见“其他文件”的附件文档 下位机软件架构图图片无法上传,具体图片见“其他文件”的附件文档 上位机展示图图片无法上传,具体图片见“其他文件”的附件文档 视频: 比赛感悟首先,非常感谢RT-Thread x STM32 全连接创意创客这次比赛! 通过这次比赛了解到了RT-Thread作为一个有十余年历史的国产RTOS,性能上面不输于ucos和FreeRTOS等操作系统,移植性上也非常方便,为硬件工作人员减轻了开发难度。 我学习到了RT-Thread的开源精神,将自己业余时间的代码开源,积极