本文介绍的智能家居空气检测及净化系统是由桂林电子科技大学国际学院陈龙杰等人设计开发完成。通过使用机智云平台、STM32等,实现室内空气监测和排气系统,实时监控室内空气,采集室内温湿度、CO、CO2、PM2.5等各项指标,并将数据上报至APP客户端,用户可根据反馈的数据信息动态控制净化系统。
01
系统设计原理
气体传感器通过与stm32f767的模拟转数字接口 进行数据交互,MCU将获取的数据通过WIFI模组进行智能家居气体与机智云IOT平台物联,并实时上报至云端,用户可根据APP客户端来读取传感器的数据,用户根据反馈开启净化系统(见图1)。
图1 系统设计流程图
02
温湿度及气体浓度获取方法
根据各个传感器的特性曲线得出电压和气体浓度的关系,利用线性回归可以大致确定气体的浓度值。◆MQ-7一氧化碳气体浓度获取方法MQ-7灵敏度特性曲线(见图2)。 根据曲线表可以列出部分Rs/R0与ppm的对应值, 如表1。Rs/R0与ppm的计算公式,如下(根据Excel生成的公式):ppm=98.322f*pow(Rs/R0,-1.458f )。传感器的表面电阻Rs,是通过与其串联的负载电阻RL上的有效电压信号VRL输出而获得的。二者之间的关系为: Rs/RL = (Vc - VRL) / VRL 。根据上述的分析即可得出一氧化碳的浓度。图2灵敏度特性曲线
◆MG811二氧化碳浓度获取如图3浓度的对数成反比(EMF=a+b*log(ppm)。将相关的数值算对数之后,按线性关系来处理。ppm=10^((EMF-a)/b)。a和b通过对300ppm以上的数据做线性回归得到。图3 MG811浓度与电压的曲线
◆PM2.5浓度获取PM2.5浓度与电压的曲线如图4所示。关于烟的检出、判定值,可以检出的范围= 输出电压范围:VoH(V)- 无尘时输出电压:Voc(V)。将此换算成粉尘浓度:检出粉尘浓度范围(mg/m3 )=检出可能范围 (输出电压可变范围(V))÷检出感浓度:K(V/(0.1mg/m3 )。因此,烟检出的情况下,其判定值如下:判定值 = 检出浓度(mg/m3)÷10×K(V/(0.1mg/m3)+无尘时输出电压(V)。图4PM2.5浓度与电压的曲线
◆DHT11温湿度数据获取
DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,一次传输4 0位数据,高位先出。
图5 DHT11实物图DHT11的总体通信流程如下:
*第一步:主机发送开始信号,从机返回一个信号进行应答
*第二步:主机信号线拉高准备接收数据
*第三步:开始接收数据(一次接收 40位)◆排气系统控制方案确定利用STM32F767来实现排气系统通断的控制,使用电机驱动模块和升压模块驱动电机工作。
03
Android应用开发
使用Android Studio进行APP应用开发通过APP客户端实时读取气体和温湿度数据和通过APP客户端对设备进行动态控制。整体框架搭建如图6所示。
图6整体架构搭建
04
程序设计
UI 遵循QMUI的设计原则,实现了良好的页面响应以及基于机智云平台的应用。◆主要界面
*闪屏页:APP每次冷启动过程中展示给用户的过渡页面
*WIFI登入界面:用户需要通过登入WIFI查看云端返回到客户端的数据
*主设备界面:显示用户创建的设备
*控制界面:用户对数据进行监控和控制净化系统的页面
◆主要功能* 云端通信:使用机智云设备接入SDK来进行APP与设备之间的数据透传、设备的监控和动态控制。用户可以检查控制界面返回的数据信息对终端设备进行动态控制或者自动控制。
05
总 结
本文设计了一种空气质量检测和净化设计,其关键是设计获取传感器电压数据转换成对应的值,同时将数据上报至APP,用户可根据反馈的数据信息动态控制净化系统。本研究基于实验的基础上设置气体和温湿度的阈值。测试结果表明,本文设计可实现气体的浓度检测和净化。
上一篇:一种基于STM32的光功率计的设计与实现
下一篇:STM32 ADC模拟看门狗过程实现
推荐阅读最新更新时间:2024-11-08 11:58