PPD42NS
来自Jack's Lab
目录 |
1 Overview
- Detectable range of concentration 0~28,000 / 0 ~ 8000 pcs/liter / pcs/0.01cf
- Detecting the particle diameter >1μm
- Output: Negative Logic, Digital output, High: over 4.0V(Rev.2), Low: under 0.7V
- Weight 28g
- VCC 4.75~5.75V
- Standby Current Supply 90mA
- Dimensions 59(W) × 45(H) × 22(D) mm
2 Example code
/*
Grove - Dust Sensor Demo v1.0
Interface to Shinyei Model PPD42NS Particle Sensor
Program by Christopher Nafis
Written April 2012
http://www.seeedstudio.com/depot/grove-dust-sensor-p-1050.html
http://www.sca-shinyei.com/pdf/PPD42NS.pdf
JST Pin 1 (Black Wire) => //Arduino GND
JST Pin 3 (Red wire) => //Arduino 5VDC
JST Pin 4 (Yellow wire) => //Arduino Digital Pin 8
*/
int pin = 8;
unsigned long duration;
unsigned long starttime;
unsigned long sampletime_ms = 30000; //sampe 30s
unsigned long lowpulseoccupancy = 0;
float ratio = 0;
float concentration = 0;
void setup() {
Serial.begin(9600);
pinMode(pin,INPUT);
starttime = millis(); //get the current time;
}
void loop() {
duration = pulseIn(pin, LOW); // return us
lowpulseoccupancy = lowpulseoccupancy + duration;
if ((millis()-starttime) >= sampletime_ms) // if the sampel time = = 30s
{
// Integer percentage 0=>100
ratio = lowpulseoccupancy / (sampletime_ms * 10.0);
// using spec sheet curve
concentration = 1.1 * pow(ratio, 3) - 3.8 * pow(ratio, 2) + 520 * ratio + 0.62;
Serial.print("Concentration = ");
Serial.print(concentration);
Serial.print(" pcs/0.01cf, LowPulsOccu = ");
Serial.print(lowpulseoccupancy);
Serial.print(", Ratio = ");
Serial.println(ratio);
lowpulseoccupancy = 0;
starttime = millis();
}
}
3 Output
4 Reference
- http://wiki.seeedstudio.com/Grove-Dust_Sensor/
- https://seeeddoc.github.io/Grove-Dust_Sensor/
- PPD42NS Datasheet
- https://indiaairquality.com/2014/09/28/building-pickle-the-networked-pm2-5-monitor-part-1/
- http://forum.arduino.cc/index.php?topic=176269.0
- https://www.airnow.gov/index.cfm?action=pubs.aqguidepart
- AIQ Calculator
- 环境空气质量指数AQI技术规定 HJ633-2012
- 环境空气质量标准 GB3095-2012
