基于单片机的空气质量检测仪的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机的空气质量检测仪的设计与实现
摘要本文主要介绍了基于arduino单片机和夏普GP2Y1010AUOF粉尘传感器的空气质量PM2.5测量设计系统。该系统通过传感器多次采集空气粉尘浓度数据,把相应的模拟量传回单片机,系统通过模数转换、滤波算法,最后把检测到PM2.5浓度数值显示到OLED显示屏上,如果检测值超过了污染指标,就发出警报提醒使用者,除此之外,还加入了温湿度和时间,增加了设备的实用性。该设计对检测空气质量,提高人们的生活质量以及环境意识,促使人们改善环境,具有重要的意义,因此应用前景非常广泛。
关键词单片机;传感器技术;滤波算法;PM2.5
引言
由种种环境空气污染带来的危害是人所皆知的,人们也越来越渴望有个空气干净的居住环境,每天都看不到雾霾天气,呼吸新鲜空气。对PM2.5进行更深入细致地研究,可以有助于我们了解身边的空气质量。天气预告往往只能给出某一个地区的近期空气质量大体情况,带有不少的时间、地域局限性。因此设计出一款轻便、小巧的PM2.5、温湿度检测仪对我们实时了解身边空气质量具有重要的意义和市场价值。
2 总体设计
本设计将单片机与传感器相结合,开发和研究时采用模块化设计的方案,系统架构图如图1所示,实现集成温湿度、空气PM2.5监测为一体的环境质量检测系统。
3 硬件设计
3.1 MCU(微控制单元)
本设计采用Arduino uno R3核心板作为开发单片机,是Arduino USB接口系列的最新版,集成了USB接口贴片芯片ATmega16U2和ICSP在线串行编程接口。其MCU是使用ATMEGA328P-PU芯片,是一款高性能、低功耗的8位A VR 微处理器。另外最重要的是它分别集成了6个独立的ADC模拟输入口和6个PWM数字输出口,这极大地方便了传感器等设备在其身上的应用。
3.2 PM2.5粉尘传感器
本设计采用的是一款GP2Yl010AUOF光学空气质量传感器,其内部结构为对角安放着红外线發光二极管和光电晶体管,使其能够探测到空气中尘埃反射光[1]。相对于同类产品GP2Yl050AUOF使用串口通信,该传感器更容易调试和拥有更高的灵敏度,即使非常细小的如烟草烟雾颗粒也能够被检测到,通常在空气
净化系统中得到广泛应用[2],PM2.5值低的地区测量的结果也是比较准确的。
4 软件设计
4.1 中位值平均滤波算法
由于PM2.5的采集属于短时间内连续采集类型,为了解决采集数据实时不可能相同的问题,所以采用了中位值平均滤波算法,该算法也称防脉冲干扰平均滤波法,结合了“中位值滤波法”+“算术平均滤波法”的優点而成。其方法是连续采样N个PM2.5数据,把其中部分(2/n)个最大值和部分(2/n)个最小值删除,然后计算N-n个数据的算术平均值[3]。这种算法优点是消除对于偶然出现的环境干扰所引起的PM2.5采样值偏差,从而实现获得相对较准的检测值。缺点是比较浪费ARM,因为要对多个采样值进行排序处理(本设计中使用的是快速排序算法),导致测量速度减慢。
4.2 加权递推平均滤波算法
基于本设计中的PM2.5传感器为实时检测类型,而且精确到ug/m3级别,考虑到短时间内空气红PM2.5数值变化较大和不稳定的情况,所以在设计时加入了加权递推平均滤波算法。这是一种对递推平均算法进行加权处理改进而成的滤波算法。方法是把连续取N个采样值看成一个队列,队列的长度固定为N,每次采集到一个新的PM2.5数据放入队尾,并扔掉原来队首的一次数据(先进先出原则)。把队列中的N个数据进行加权算术平均运算,就可获得新的滤波结果[4]。其优点是对周期性干扰偏差值有良好的抑制作用,使结果值平滑度更高,缺点是抑制了结果值的灵敏性。
5 测试
本设计在实验时经过多次测试,测试用例输出值为环境部门提供的具有较好公信力的实时PM2.5浓度值。运行测试的时候以当地PM2.5空气质量数据作为参考数据,PM2.5浓度约为60ug/m3。测试环境为室内不通风情况下空气检测,本设计系统检测值,大小约为56.75ug/m3,如图2所示,可见其得到的结果与官方给出的参考值偏差不明显。
6 结束语
本设计实现了对空气PM2.5值和温湿度的采集,计算,显示,警报等功能,具有电路简单、成本低,测量精度高、可达1ug/m?,实用性强等特点,采用了多种滤波算法相结合的软滤波方法,把采集到的样本值进行有效的处理,从而获得较为准确、客观的PM2.5浓度值。以多种测试方法对系统运行的稳定性、抗压性、准确性进行了多次测试,从中发现问题,并进行优化改进,力求更为人性化设计。
参考文献
[1] 肖立明,李立明,王恩鸿. 轨道交通站台环境监测系统设计[J]. 上海工程技术大学学报,2015,29(3):243-248.
[2] 孙滨,姜传林,陈元勇. 基于光学粉尘传感器的车载空气净化装置设计[J]. 电子技术,2013,(4):83-85.
[3] 杨剑锋,芦国君. 充分利用PLC功能滤波温度数值跳变[J]. 民营科技,2013,(6):68-68.
[4] 段玲琳,叶明傲. 系留气球拉力传感器数字滤波算法研究[J]. 火控雷达技术,2012,(1):47-49.