El GP2Y1010AU0F es un sensor óptico de calidad de aire diseñado para medir la densidad de partículas. Es capaz de medir la luz reflectada del polvo en el aire, siendo eficaz para detectar partículas finas como el humo de cigarrillo, también es usado comúnmente en sistema purificadores de aire, tiene bajo consumo energético (20 mA máximo, promedio 11 mA) y la salida del sensor es analógica que proporcional a la medida de densidad de polvo.
En este tutorial se observará la conexión del sensor GP2Y1010AU0F a través de Arduino y su puesta en marcha.
Materiales
- Optical Dust Sensor - GP2Y1010AU0F
- Arduino Uno
- Capacitor de 220 uF(micro Faradios)
- Resistencia de 220 ohms(puede ser 150 como la imagen de abajo, pero funciona de la misma forma con 220)
- 10 cables macho macho
- Protoboard
Video
Galeria de Fotos
Código
int measurePin = 0; int ledPower = 12; int samplingTime = 280; int deltaTime = 40; int sleepTime = 9680; float voMeasured = 0; float calcVoltage = 0; float dustDensity = 0; float pm05=0; void setup(){ Serial.begin(9600); pinMode(ledPower,OUTPUT); } void loop(){ digitalWrite(ledPower,LOW); // power on the LED delayMicroseconds(samplingTime); voMeasured = analogRead(measurePin); // read the dust value delayMicroseconds(deltaTime); digitalWrite(ledPower,HIGH); // turn the LED off delayMicroseconds(sleepTime); // 0 - 3.3V mapped to 0 - 1023 integer values // recover voltage calcVoltage = 5*voMeasured/1024; // linear eqaution taken from http://www.howmuchsnow.com/arduino/airquality/ // Chris Nafis (c) 2012 dustDensity = 0.17 * calcVoltage - 0.1; // Ecuacion linear de PM 2.5 pm05=(calcVoltage-0.0356)*120000; Serial.print("Raw Signal Value (0-1023): "); Serial.print(voMeasured); Serial.print(" - Voltage: "); Serial.print(calcVoltage); Serial.print(" - Dust Density(mg/m3): "); Serial.println(dustDensity); Serial.print(" - PM 0.5(particulas/0.01 pie3): "); Serial.println(pm05); delay(1000); }