天天看点

【Arduino基础教程】PM2.5粉尘检测传感器

【Arduino基础教程】PM2.5粉尘检测传感器

GP2Y1010AU0F模块

本教程使用的是GP2Y1010AU0F模块,某宝上定价38软妹币。

该模块具有非常低的电流消耗(最大20mA,11毫安典型值),最高7VDC供电。传感器的输出是一个模拟电压成正比的测量粉尘密度,具有0.5V/0.1mg/m3的灵敏度。

准备材料

  • Arduino UNO *1
  • GP2Y1010AU0F模块 *1
  • 150欧电阻 *1
  • 220uF电解电容 *1
  • 面包板 *1
  • 跳线 若干

接线

【Arduino基础教程】PM2.5粉尘检测传感器
【Arduino基础教程】PM2.5粉尘检测传感器
GP2Y1010AU0F Arduino
1 150欧电阻 5V
220uF电解电容 GND
2 ->
3
4
5 A0
6

示例程序

int dustPin=0;
float dustVal=0;
int ledPower=2;
int delayTime=280;
int delayTime2=40;
float offTime=9680;
void setup(){
  Serial.begin(9600);
  pinMode(ledPower,OUTPUT);
  pinMode(dustPin, INPUT);
}
 
void loop(){
// ledPower is any digital pin on the arduino connected to Pin 3 on the sensor
  digitalWrite(ledPower,LOW); 
  delayMicroseconds(delayTime);
  dustVal=analogRead(dustPin); 
  delayMicroseconds(delayTime2);
  digitalWrite(ledPower,HIGH); 
  delayMicroseconds(offTime);
  delay(1000);
  if (dustVal>36.455)
    Serial.println((float(dustVal/1024)-0.0356)*120000*0.035);
}
           

附:测试得到的数据和空气质量对照:

3000 + = 很差

1050-3000 = 差

300-1050 = 一般

150-300 = 好

75-150 = 很好

0-75 = 非常好

继续阅读