This PM2.5 GP2Y1010AU0F Dust Smoke Particle Sensor is an infrared emitting diode (IRED) and a phototransistor are diagonally arranged into this device. It detects the reflected light of dust in the air. Especially, it is effective to detect very fine particle like the cigarette smoke. In addition, it can distinguish smoke from house dust by the pulse pattern of the output voltage.
The module is mainly used for dust removal equipment alarm equipment, air purification equipment, dust robots, fire alarm, etc. industry equipment can detect smoke particles, pollen spores, and other particles.
Applications:
1. Detecting of dust in the air. 2. Example: Air purifier, Air conditioner, the Air monitor.
Features :
Compliant with RoHS directive (2002/95/EC)
Compact, thin package (46.0 × 30.0 × 17.6 mm)
Low consumption current (Icc: MAX. 20 mA)
The presence of dust can be detected by the photometry of only one pulse
Enable to distinguish smoke from house dust
Lead-free and RoHS directive compliant
Package Includes :
1 x PM2.5 GP2Y1010AU0F Dust Smoke Particle Sensor. 1 x Connecting cable. 1x 150 Ω resistor. 1 x 220 μF capacitor.
Pin Connections Table 1
Board Sensor Pin Connection Dust Sensor VCC/GND/LED/AOUT 5V / GND / board digital pin (via 150 ohm resistor + 220uF cap) / board analog pin
Optical Dust Sensor with Cable - Smoke - Arduino Uno
Optical Dust Sensor with Cable - Smoke - Arduino Nano
Optical Dust Sensor with Cable - Smoke - Arduino Mega
Optical Dust Sensor with Cable - Smoke - ESP32
Optical Dust Sensor with Cable - Smoke - ESP8266
Optical Dust Sensor with Cable - Smoke - STM32
Optical Dust Sensor with Cable - Smoke - Raspberry Pi Pico
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin 2 , analog out A0 on Arduino Uno
6 #define LED_PIN 2
7 #define AOUT_PIN A0
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 5.0 / 1023.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin 2 , analog out A0 on Arduino Nano
6 #define LED_PIN 2
7 #define AOUT_PIN A0
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 5.0 / 1023.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin 2 , analog out A0 on Arduino Mega
6 #define LED_PIN 2
7 #define AOUT_PIN A0
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 5.0 / 1023.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin 4 , analog out 34 on ESP32
6 #define LED_PIN 4
7 #define AOUT_PIN 34
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 3.3 / 4095.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin D4, analog out A0 on ESP8266
6 #define LED_PIN D4
7 #define AOUT_PIN A0
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 3.3 / 1023.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin PB4, analog out PA0 on STM32
6 #define LED_PIN PB4
7 #define AOUT_PIN PA0
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 3.3 / 4095.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // LED-drive pin 2 , analog out 26 on Raspberry Pi Pico
6 #define LED_PIN 2
7 #define AOUT_PIN 26
8
9 void setup () {
10 Serial.begin (115200 );
11 pinMode (LED_PIN, OUTPUT );
12 digitalWrite (LED_PIN, HIGH ); // module's internal IR LED is active-LOW - idle it off between samples
13 }
14
15 void loop () {
16 digitalWrite (LED_PIN, LOW ); // turn the IR LED on
17 delayMicroseconds (280 );
18 int raw = analogRead(AOUT_PIN); // sample while the LED is on
19 delayMicroseconds (40 );
20 digitalWrite (LED_PIN, HIGH ); // turn the IR LED back off
21 delayMicroseconds (9680 ); // completes the ~10ms duty cycle the datasheet specifies
22
23 float voltage = raw * 3.3 / 4095.0 ;
24 float dustDensity = (voltage - 0.6 ) / 5.0 * 1000.0 ; // approximate datasheet formula, ug/m3 (needs real calibration)
25
26 Serial.print ("Dust density (approx): "); Serial.print (dustDensity > 0 ? dustDensity : 0 ); Serial.println (" ug/m3");
27 delay (1000 );
28 }
Project Notes: Optical dust/smoke sensor, same GP2Y1010AU0F-style pulsed-LED sampling.
نظرة عامة ومواصفات المنتج — بالعربية Optical Dust Sensor with Cable – Smoke متوفر الآن في متجر إكوسترا للإلكترونيات، ضمن قسم Gas and Dust Sensor وSensors، بسعر 350,00 EGP. كود المنتج لدينا: EK1691. المنتج متوفر في المخزون وجاهز للشحن الفوري لكل محافظات مصر مع إمكانية الدفع عند الاستلام.
أهم المواصفات الفنية:
Type: Optical Dust / Particulate Sensorالموديل: DSM501A / Compatible (typical)Sensing Method: Optical / Infrared LED with PhototransistorOutput Type: Digital Pulse / Analog VoltageDetection Particle Size: 0.5–10 µm (PM2.5, PM10)Operating Voltage: 5 V DCCurrent Consumption: 20 mA (typical)Response Time: <10 sهذا المنتج مناسب لمشاريع الأردوينو (Arduino) و ESP32 و Raspberry Pi، ومشاريع الروبوتات وإنترنت الأشياء والتعليم الهندسي. جميع القطع مفحوصة قبل الشحن.
تصفّح المزيد من Gas and Dust Sensor في إكوسترا.