无线室内空气质量监测系统的设计

2017-04-18 03:38北方民族大学电气信息工程学院
电子世界 2017年1期
关键词:室内空气终端界面

北方民族大学电气信息工程学院 曹 龙 刘 炜 曾 力

无线室内空气质量监测系统的设计

北方民族大学电气信息工程学院 曹 龙 刘 炜 曾 力

针对传统室内空气质量监测系统采集参数单一和网络化程度低等问题,本文设计了一种无线室内空气质量监测系统。该系统综合ARM嵌入式技术、ZigBee无线网络技术和传感器技术,完成了对室内各区域的温度、湿度、光照强度、PM2.5和氨硫类气体的远程定时采集,从而实现室内环境监测的网络化、智能化。

空气质量;监测,嵌入式系统;ARM; ZigBee

1.引言

现代人平均有80% ~ 90%的时间在室内度过,确切的测定证实室内空气中的污染物浓度要高于室外2 ~ 5倍,由于人们对于生存环境,尤其是室内生产环境和生活环境的要求不断提高,室内空气质量问题已引起相关学科领域学者与专家的广泛重视和关注[1]。

笔者设计了一种基于嵌入式系统的无线室内空气质量监测系统。该系统采用ARM嵌入式技术设计数据集中控制器和数据监测终端,通过ZigBee技术建立无线传感器网络,完成对公共场所各区域的空气质量数据定时采集,可实现监测的网络化、智能化。

图1 系统总体框图

2.系统总体设计

本系统由两个部分组成:数据监测终端、数据集中控制器。系统框图如图1所示。

数据监测终端:完成室内环境因素进行采集,通过OLED液晶屏进行显示,同时接收数据集中控制器的召测指令,通过ZigBee无线网络将数据传输至数据集中控制器。

数据集中控制器:向下通过ZigBee网络与数据监测终端进行数据交互,接收数据并处理及存储,相关信息通过触摸屏显示出来;用户可以通过触摸屏与集中控制器进行交互;同时根据采集的数据信息,给用户提供合理的调节策略。

3.系统硬件设计

3.1 数据集中控制器硬件设计

数据集中控制器主要由ARM处理器,电源管理模块、存储模块、网络模块、ZigBee模块、触摸屏显示模块等组成,硬件框图如图2所示。其核心处理器采用ATMEL SAMA5D36工业级处理器,外接 256M NAND flash 用以启动 Linux系统。基于ZigBee 网络模块选用 TI 公司的 CC2530 芯片。在人机交互方面采用的7寸触摸式液晶屏对采集的信息进行显示,用于管理室内环境信息的历史数据信息,方便用户查询。

图2 系统集中控制器硬件框图

3.2 数据监测终端硬件设计

数据监测终端以STM32F103C8T6单片机为核心,由DHT11温湿度传感器模块、BH1750FVI光照度传感器模块、GP2Y-1010AU0F灰尘传感器模块、MQ-135有害气体传感器模块、OLED显示模块、ZigBee通讯模块和电源模块组成。通过各类传感器模块完成各区域温度、湿度、光照强度、PM2.5浓度、氨硫化物类有害气体的监测。数据监测终端硬件框图如图3所示。

图3 数据监测终端硬件框图

4.系统软件设计

4.1 数据集中控制器软件设计

数据集中控制器的应用程序采用基于Linux下的QT编程,QT具有优良的跨平台特性,其软件开发是基于C/C++的,同时提供了信号与槽的安全机制,方便程序各模块之间的交互,系统中使Sqlite数据库对采集的数据进行存储。数据集中控制器软件系统主要包括初始化模块、实时数据显示模块、数据查询模块、监测曲线模块、数据通信模块、参数设置等模块。在各模块的相互配合下实现人机交互,数据显示,数据召测等功能。

4.1.1 UI界面设计

系统上电后在初始化模块的作用下进行系统参数设置、数据库连接、通信串口初始化等操作,启动后进入主显示界面。系统使用QStackedWidget类建立实时数据、实时曲线、历史数据、参数设置四个子UI 界面,同时将主界面中的QBushButton类按钮控件设置了信号与槽的连接,当用户点击相应的界面切换按钮时,程序按照相应槽连接跳转至相应的函数,调用QStackedWidget类下的void setCurrentIndex(int index)函数完成界面的切换。

1)实时数据监测子界面主要是显示实时监测环境数据。系统将每一次轮询后数据监控终端而获得数据保存在数据库中,每隔一段时间去执行刷新数据库的操作,通过液晶屏进行显示,实现数据监测功能。

历史数据子界面主要供用户进行历史数据的查询。用户根据“日期”和“监测点”两个限定条件进行数据查询,以便了解室内环境在一段时间内的变化情况,实现了数据的可追溯性。

监测曲线子界面可实现显示的为当天的各区域污染物的曲线描述,用户不仅可以查看指定监测物数据曲线,而且可以查询全部监测物的综合曲线。

参数设置子界面用来设置数据集中控制器和数据监测物终端的某些可选或配置参数,如数据集中控制器的 ID、端口号、IP 地址等。

4.1.2 数据召测程序设计

数据召测模块是根据用户设定,定时轮询各数据监控终端,收集各监控点的空气质量数据,并将采集的数据送入数据库。数据召测程序流程图如图4所示:

图4 数据召测程序流程图

系统触发数据召测程序,初始化ZigBee模块通讯串口,设置波特率、数据位、奇偶校验位等;然后向串口发送终端数据召测命令,通过ZigBee通讯模块经无线网将命令发送至数据监控终端。命令下达完毕后,等待终端回复数据,若在规定时间内没有收到终端回复,则判断为采集超时,系统向用户给出错误提示,并记录错误事件。收到终端回复后通过解析程序将收到的数据进行解析,存入Sqlite数据库。当所有设备都轮询完毕后,结束数据召测程序。

4.2 数据监测终端软件设计

数据监控终端,该系统中有共有四种传感器模块,采集温湿度、光照强度、PM2.5和氨硫类有害气体五种类型数据,主要包括主程序和中断程序。

4.2.1 数据监测终端主程序

主程序先进行系统初始化,包括系统参数的设置、定时器初始化、通讯初始化等,然后进入数据采集和显示阶段,系统按照各传感器规定的协议,采集当前室内空气质量数据并送至OLED显示。系统中使用了四种传感器模块,下面以PM2.5传感器模块为例介绍传感器的采集原理和方法:

PM2.5灰尘传感器模块是以夏普 GP2Y1010AU0F 为核心,测量数据的输出形式为电压输出,该电压与灰尘浓度在一定范围内成线性关系。通过计算该电压值即可计算出空气中的灰尘含量。

图5 PM2.5灰尘传感器模块输出特性曲线

由传感器的输出特性曲线可见:在0到0.5mg/m3范围内,传感器输出电压与灰尘浓度呈线性关系,其输出曲线近似转换的方程为DustDensity = 0.17 * OutPutVoltage - 0.1。其中DustDensity当前空气中PM2.5的浓度,OutPutVoltage为对应输出的电压值。STM32FC8T6采用12位AD,基准电压为3.3V,得到公式OutPutVoltage=ADout*(3.3 /4095),其中ADout为AD转换后的数字量输出。

根据上面两个公式可得当前空气中PM2.5的浓度与AD转换输出的数字量之间的关系满足方程DustDensity = 0.17 * AD-out*(3.3 /4095)-0.1,从而根据ADout数值测量出当前空气中PM2.5的浓度。

PM2.5灰尘传感器采集模块数据采集流程如下:

将ILED引脚置高电平,启动数据采集。

延时0.28ms,AOUT引脚输出的波形稳定。

对AOUT输出电压进行采样,这里对模拟量进行20次采样,采用均值滤波的方法,先去掉最大值和最小值,在求平均值的方法确保数据的精确度。

采样完毕,将ILED引脚设为低电平。

根据传感器输出电压与灰尘浓度关系方程,计算灰尘浓度,完成PM2.5采集。

4.2.2 中断程序

在系统运行过程中,若系统接收到集中控制器发送的召测命令后进入中断程序。中断程序的主要功能是解析上位机下发的指令,按照指令完成相应的传感器数据监测及数据上传工作。

中断程序流程如下:ZigBee模块接收到集中控制器发送的数据;解析数据确定为数据采集命令;按照各传感器的通讯协议,以轮询的方式采集当前区域空气质量数据;按照自定义协议,对采集的数据进行打包;通过ZigBee模块将数据传送至数据集中控制器。中断采集程序流程图如图6所示:

图6 中断采集程序流程图

5. 结语

本文设计的无线室内空气质量监测系统可以有效的完成公共场所内温度、湿度、光照强度、PM2.5和氨硫类气体的监测,从为改善的公共场所的空气质量提供数据支持。通过更换传感器的类型,该系统不仅可以应用于商场、学校、医院等场所,还可以应用于特定的工业场所,具有良好的扩展性,在室内空气质量监测领域具有广泛的应用前景。

[1]童江松.基于ARM的智能家居红外控制系统的研究与实现[D].浙江理工大学,2015.

[2]杨晨.基于ARM和Linux的室内环境监测系统的设计与实现[D].沈阳工业大学,2013.

[3]李锋.基于ZigBee的无线监控系统的设计与实现[J].信息技术,2009.

猜你喜欢
室内空气终端界面
改善室内空气质量及空调节能浅析
X美术馆首届三年展:“终端〉_How Do We Begin?”
国企党委前置研究的“四个界面”
通信控制服务器(CCS)维护终端的设计与实现
基于ARM的室内空气品质监测与控制系统
基于单片机的室内空气净化系统
基于FANUC PICTURE的虚拟轴坐标显示界面开发方法研究
多功能北斗船载终端的开发应用
人机交互界面发展趋势研究
手机界面中图形符号的发展趋向