本模块是以夏普GP2Y1010AU0F为核心的灰尘传感器。传感器内部的红外二极管,可以输出一个跟灰尘浓度成线性关系的电压值。通过该电压值即可计算出空气中的灰尘和烟尘含量。
传感器输出电压与灰尘浓度关系在0到0.5mg/m3范围内成线性关系,如下图所示:
图 1: 传感器输出特性曲线 |
通过设置模块ILED引脚为高电平,从而打开传感器内部红外二极管。
等待0.28ms,外部控制器采样模块AOUT引脚的电压值。这是因为传感器内部红外二极管在开启之后0.28ms,输出波形才达到稳定。如下图所示:
图 2: ILED与红外二极管输出波形关系 |
采样持续0.04ms之后,再设置ILED引脚为低电平,从而关闭内部红外二极管。
根据电压与浓度关系即可计算出当前空气中的灰尘浓度,具体实现细节请参考Demo程序。
注:输出的电压经过了分压处理(查看原理图),要将测得的电源放大11倍才是实际传感器输出的电压。
检测空气中灰尘浓度,用于空气净化器、空气质量监测仪、PM2.5检测仪等。
引脚号 | 标识 | 描述 |
1 | VCC | 电源正(2.5V-5.5V) |
2 | GND | 电源地 |
3 | AOUT | 电压模拟量输出 |
4 | ILED | 传感器内部LED驱动 |
下面章节以四款不同类型的开发板为例,描述具体操作步骤及实验现象。
1、编译下载Demo程序。 2、通过串口模块,把开发板USART2接口连接至电脑,串口调试助手设置如下:
波特率 | 115200 |
数据位 | 8 |
停止位 | 1 |
校验位 | None |
流控制 | None |
3、传感器模块连接如下:
模块 | 开发板 |
VCC | 3.3V或5V |
GND | GND |
AOUT | GPIOA.6 |
ILED | GPIOA.7 |
4、开发板上电,可看到串口助手不断显示当前灰尘浓度值,当有大量灰尘颗粒进入通气孔时,数据发生明显变化,实验现象见附录。
1、编译下载Demo程序。 2、通过串口模块,把开发板USART2接口连接至电脑,串口调试助手设置如下:
波特率 | 115200 |
数据位 | 8 |
停止位 | 1 |
校验位 | None |
流控制 | None |
3、传感器模块连接如下:
模块 | 开发板 |
VCC | 3.3V或5V |
GND | GND |
AOUT | GPIOA.6 |
ILED | GPIOA.7 |
4、开发板上电,可看到串口助手不断显示当前灰尘浓度值,当有大量灰尘颗粒进入通气孔时,数据发生明显变化,实验现象见附录。
本开发板Demo程序分为Mbed及ST Library两个版本。操作步骤及实验现象相同。
1、编译下载Demo程序。 2、将开发板通过USB接口连接至电脑,串口调试助手设置如下:
波特率 | 115200 |
数据位 | 8 |
停止位 | 1 |
校验位 | None |
流控制 | None |
3、传感器模块连接如下:
模块 | 开发板 |
VCC | 3.3V或5V |
GND | GND |
AOUT | A0 |
ILED | D7 |
4、开发板上电,可看到串口助手不断显示当前灰尘浓度值,当有大量灰尘颗粒进入通气孔时,数据发生明显变化,实验现象见附录。
1、编译下载Demo程序。
2、将开发板通过USB接口连接至电脑,串口调试助手设置如下:
波特率 | 9600 |
数据位 | 8 |
停止位 | 1 |
校验位 | None |
流控制 | None |
3、传感器模块连接如下:
模块 | 开发板 |
VCC | 3.3V或5V |
GND | GND |
AOUT | A0 |
ILED | D7 |
4、开发板上电,可看到串口助手不断显示当前灰尘浓度值,当有大量灰尘颗粒进入通气孔时,数据发生明显变化,实验现象见附录。
串口打印灰尘浓度数据:
空气污染指数分级标准如下表所示:
PM2.5 浓度均值(μg/m3) | 空气质量 AQI | 空气质量级别 | 空气质量指数类别 |
0-35 | 0-50 | 一级 | 优 |
35-75 | 51-100 | 二级 | 良 |
75-115 | 101-150 | 三级 | 轻度污染 |
115-150 | 151-200 | 四级 | 中度污染 |
150-250 | 201-300 | 五级 | 重度污染 |
250-500 | ≥300 | 六级 | 严重污染 |