空气粉尘浓度检测器电路设计与软件编程

2016-05-25 11:57李冉朱思清王翊钱国明
科技视界 2016年12期
关键词:粉尘单片机传感器

李冉 朱思清 王翊 钱国明

【摘 要】本设计以ATmega382p单片机为控制中心,由GP2Y1010AU0F光学空气质量传感器测量空气粉尘浓度,通过单片机内置的10位A/D转换将模拟的电压信号转换成数字信号,得到粉尘浓度值,并由LCD1602显示屏显示出来。同时,设置浓度预警值并同测量值一起显示在显示屏上。当测量浓度超过预警值时,仪器就会报警。

【关键词】粉尘;单片机;传感器;A/D转换

【Abstract】Adopts ATmega382p microcomputer as the control center of the design, uses GP2Y1010AU0F optical air quality sensor measuring air dust concentration, then through the 10 bit A/D conversion built in the microcomputer converting the analog voltage signal into digital signal, so that dust concentration can gained and finally showed out by the LCD1602. At the same time, set the warning value of the concentration and showed together with the measured value. When the measured concentration exceeds the warning value, the instrument will alarm.

【Key words】Dust; Microcomputer; Sensor; A/D Conversion

0 引言

随着人类工业和经济的快速发展,我们的环境污染越来越严重。除废气、废水外,颗粒状粉尘、烟尘向大气排放所造成的污染已成为一个十分突出的问题。PM2.5,PM10,PM0.1及其吸附的重金属粒子是雾霾的重要组成部分[1]。2012年2月,《环境空气质量标准》新增了对PM2.5的检测指标,PM2.5成为空气质量标准之一。数据表明,我国空气质量超标的城市中68%都存在可吸入颗粒物的问题[2]。由此可以看出粉尘对人类健康和生产的危害十分严重。所以,粉尘浓度的检测和控制具有重要的意义。

本文介绍一种简易粉尘浓度检测器的设计,能够对空气粉尘进行采样分析,可以测量出空气中的粉尘浓度,测量数据直观易懂,测量结果准确可靠。

1 系统工作原理

单片机选用ATmega328p,粉尘浓度传感器选用夏普GP2Y1010AU0F灰尘传感器,按键部分通过电阻与按键串联将信号输入模拟口,通过读取模拟值的不同判断按键值,显示部分采用LCD1602并用采取I2C总线的8位远程I/O扩展口芯片PCF8574进行引脚简化。

将粉尘检测器电源开关打开,当传感器得到一个由粉尘浓度转换得来的0~5V的电压信号时,进入单片机,经过处理后转变为十进制数通过I/O口在显示屏上显示出精确数值。数值量随输入电压的扰动而变化。同时键盘设定预警值送入单片机,与测量值一同显示出来。当采集的当前粉尘浓度大于预警值时,单片机驱动蜂鸣器报警。

2 系统电路设计

2.1 电路总体设计

以ATmega328p单片机为核心,主要包括单片机处理模块,信号采集模块,独立按键模块,显示模块和蜂鸣器报警模块。系统通过信号采集模块采集空气中的粉尘,得到0~5V的电压信号后,由单片机内部自带的10位ADC进行模数转换得到粉尘浓度,与此同时,通过独立按键模块设定浓度预警值,通过液晶显示模块将粉尘浓度和预警值同时显示在显示屏上。当检测值大于预警值时就会自动通过蜂鸣器报警模块报警。整个系统的框架结构如图所示:

2.2 单片机处理模块

设计选用ATmega328p单片机,该单片机配合Arduino uno使用,可以更加方便的用外接模块进行拓展,如wifi模块、SD卡接口模块、基于w5100芯片的Ethernet模块等,并且其内部自带10位六通道ADC可以用来转换传感器输出的信号,从而得到粉尘浓度。

2.3 信号采集模块

GP2Y1010AUOF是一款由日本夏普公司开发的光学浓度检测传感器。此传感器内部成对角线分布的红外发光管和光电晶体管,利用光敏原理来工作,依靠输出脉冲的高度来判断颗粒物浓度。同时,传感器内部有信号放大电路,可以对光电信号进行放大。其内部结构图如图2所示:

传感器内,红外发光二极管和光电晶体管按对角位置布置,利用发光二极管发射光线,利用晶体管接受二极管发射的光,从而引起电压的变化,这时传感器里的空气传导设备就会产生一定的作用使空气流通。此设计能够检测到小的微粒,甚至非常小的烟草颗粒,测量结果比较准确。

由于GP2Y1010AUOF对驱动的LED的脉冲要求较高,输入信号采样周期为10ms±1ms;输入高脉冲的宽度为0.32ms±0.02ms。所以对于采样信号,需要等待输入信号出现高脉冲以后再计时0.28ms进行采样[3]。

2.4 独立按键模块

按键部分是通过电阻与按键串联将信号输入模拟口,通过读取模拟值的不同判断按键值。因为A/D转换是将模拟的0~5V电压转换成八个二进制位,八个二进制转换成十进制的范围为0~255,所以只需设置三个独立按键分别独立输入预警值的百位,十位,个位。键盘每按下一次则相应位上数据增加1,当数据设定完成后通过I/O口输入单片机,通过单片机的处理转换为三位十进制的浓度预警值,然后显示在显示屏上。

2.5 显示模块

显示模块采用LCD1602并用采取I2C总线的8位远程I/O扩展口芯片PCF8574进行引脚简化。LCD1602是工业字符型液晶,可同时显示16×2即2行,每行显示16个字符液晶模块(显示字符和数字)。因为要同时显示粉尘浓度的检测值和预警值,所以LCD1602的两行显示功能已经满足设计。

2.6 蜂鸣器报警模块

当采集到的环境中的粉尘浓度大于预警值时,单片机就会驱动蜂鸣器报警,然后采取相应措施降低粉尘浓度或者使人员撤离工作现场。由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O口是无法直接驱动的,所以要利用放大电路来驱动。我们采用三极管来放大电流。

3 系统软件设计

软件系统设计主要分为系统初始化模块、驱动传感器模块,A/D模数转换模块,粉尘浓度计算和显示等模块,单片机通过软件程序实现对硬件设备的控制,测量并显示粉尘浓度。软件部分设计需要利用单片机所产生的周期为10ms的脉冲波形驱动传感器内部的LED发光,并对信号进行A/D转换,同时进行LCD1602的显示和定时器定时。单片机产生的脉冲波形加在GP2Y1010AU0F上,传感器将输出一个0~5V电压,可通过A/D转换得到相应的粉尘浓度值,最后通过LCD1602显示出来,如果空气粉尘浓度超过了预警值,系统将会报警。

4 总结

本文主要介绍了简易粉尘检测器的设计,在单片机的控制下,完成数据的采集、显示、预警值设置及蜂鸣器预警等系统分模块的程序设计,然后结合各模块的硬件电路来实现每个模块的功能,从而实现整个系统的功能。结果表明,该粉尘检测仪测量结果准确可靠。

【参考文献】

[1]马爽.恒温恒湿培养箱智能控制系统的研制[D].广州:南方医科大学,2010.

[2]GB3095-2012 环境空气质量标准[S].

[3]兰冰芯,谌海云,陈东,吉宁.基于单片机的PM2.5测试仪的设计与实现[J].物联网技术,2014(11):32-34.

[责任编辑:汤静]

猜你喜欢
粉尘单片机传感器
高压粉尘防爆电机过厚粉尘层的形成与分析
康奈尔大学制造出可拉伸传感器
简述传感器在物联网中的应用
基于单片机的SPWM控制逆变器的设计与实现
粉尘大战
“传感器新闻”会带来什么
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
跟踪导练(三)2
光散射法粉尘仪在超低排放的应用