0

Air Quality Sensor Help
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

Air Quality Sensor Help

by amhamilton on Mon Jun 04, 2018 7:18 pm

I have this air quality sensor https://learn.adafruit.com/pm25-air-qua ... r/overview

I don't understand what units the standard and environmental readings are using. Is one of them the Air Quality Index (AQI) number that the government uses?

amhamilton
 
Posts: 2
Joined: Mon Jun 04, 2018 7:13 pm

Re: Air Quality Sensor Help

by adafruit_support_carter on Wed Jun 06, 2018 1:59 pm

See datasheet for details (Appendix I):
https://cdn-shop.adafruit.com/product-f ... l_v2-3.pdf

The three PM numbers are for Particle Matter concentrations of different size particles in micro-gram per cubic meter.
https://www.epa.gov/pm-pollution/partic ... -pm-basics

The other readings are actual numbers of particles in 0.1L of air.

adafruit_support_carter
 
Posts: 12958
Joined: Tue Nov 29, 2016 2:45 pm

Re: Air Quality Sensor Help

by elljay on Mon Aug 06, 2018 11:03 am

Just revisiting this thread from a couple months back as I have the same question .. what is the difference between the 'standard' and 'environmental' readings? The data sheet referenced does not answer this question as to specifically what these two different types of Concentration Unit are.

- Larry

elljay
 
Posts: 16
Joined: Thu Oct 29, 2015 8:47 pm

Re: Air Quality Sensor Help

by adafruit2 on Tue Aug 07, 2018 9:54 pm

we found this paper while googling, maybe its helpful?
https://www.rigacci.org/wiki/lib/exe/fe ... riment.pdf

adafruit2
Site Admin
 
Posts: 18656
Joined: Fri Mar 11, 2005 7:36 pm

Re: Air Quality Sensor Help

by elljay on Thu Aug 09, 2018 3:44 am

Thanks. I had found this paper previously and read through it. Though it talks a bit about standard particle (CF-1) and atmospheric environment (SAT), it really doesn't explain or discuss what they are or the differences, or which one should be used, and why/where. It simply shows some correlation data between the two numbers over a range of up to 100 ug/m^3. The authors also just mention 'we used the SAT data for our experiments' at one point, but give no further reason why.

What I glean from this, as well as a brief note in the PMS5003 data sheet, is that the standard particle data may be related to some some sort of factory calibration process, and that the atmospheric environment numbers are the ones that would be used during normal operation. (I also picked up a PurpleAir unit which employs dual 5003s, and the data I see from it would appear to also support this conclusion).

elljay
 
Posts: 16
Joined: Thu Oct 29, 2015 8:47 pm

Re: Air Quality Sensor Help

by StanJ on Sat Aug 24, 2019 10:47 am

I've read quite a lot on the PlanTower sensors, although I'm nothing like an expert :-). The CF readings are 'Calibration Factory' and aren't useful; the 'Environmental' or 'Ambient' concentration readings are the data you want for air quality measurements. I'm using the PMS5003 for a continuous check on cleanroom quality, so I only use the raw Particle Counts as that's the measurement specified in ISO 14644-1 .

As Solaria123 noted in viewtopic.php?f=19&t=135496, the sensor estimates particles > 2.5um and doesn't (or can't) measure them. The article at ResearchGate showed that a concentration composed solely of larger particles wasn't seen by the sensor. For our cleanroom use that's OK as the HEPA filters are more efficient as the particle size increases. For non-filtered air it's a bit more of concern as the different particle sizes are composed of different pollutants, so you might be missing a pollutant if it's composed primarily of larger particles like pollen.

Image
(from en.wikipedia.org/wiki/Particulates)

One amusing note in the translated PlanTower datasheet is "Only the consistency among the PM sensors of PLANTOWER is promised and ensured. And the sensor should not be checked with any third party equipment." Several groups including AQICN.org have done exactly that, and we have as well. The PlanTower sensor compares favorably with the readings from our calibrated Beckman Particle Counter, although the 30-50% uncertainty on the PlanTower 0.3 and 0.5 um bins means you can't get an exact comparison. We're only using the sensor for a rough check on current air quality, not to verify compliance with ISO 14644.

A frustrating artifact of the PlanTower sensor is the sampling rate versus data output. With small change between readings the sensor only updates the counts every 2.3 seconds, although it outputs data every second. That means it may duplicate over half of the data, with no way to verify whether any reading is a duplicate. For a normal home or outdoor setting you could simply discard any reading when the checksum is identical to the previous data, as you're highly unlikely to have two successive samples with the same values. In a cleanroom we're looking at very low particle counts, and two successive samples might well be identical. The only way I could get around that is by throwing away 2 of every 3 data packets to insure I'm getting real counts, which increases the total sample time. I add the results from 100 unique 0.1 liter samples to get a reading of particles in 10 liters of air for my measurement, which means 300 samples with 2/3rds of the data thrown away.

Code: Select all | TOGGLE FULL SIZE
amb=[003a 005c 0061] raw=[386a 1160 0325 004c 000b 0001] csum=0542
amb=[003b 005d 0063] raw=[38cd 1175 033c 0054 000e 0004] csum=05ea
amb=[003c 0060 0065] raw=[398a 11ba 033c 0054 000a 0003] csum=05f4
amb=[003c 0060 0066] raw=[3a8c 120f 0340 0050 000d 0003] csum=0555
amb=[003d 0060 0066] raw=[3b04 122e 0333 0050 000d 0003] csum=04e1
amb=[003c 005e 0064] raw=[3b04 122a 0339 0056 000b 0003] csum=04dc
amb=[003c 005e 0064] raw=[3b04 122a 0339 0056 000b 0003] csum=04dc duplicate
amb=[003c 005e 0064] raw=[3b04 122a 0339 0056 000b 0003] csum=04dc duplicate
amb=[003c 005c 0062] raw=[3b22 1232 0330 004b 000a 0003] csum=04e2
amb=[003c 005c 0062] raw=[3b22 1232 0330 004b 000a 0003] csum=04e2 duplicate
amb=[003c 005c 0062] raw=[3b22 1232 0330 004b 000a 0003] csum=04e2 duplicate
amb=[003b 0059 005f] raw=[3a7a 1211 030e 0043 000a 0003] csum=04de
amb=[003a 0058 005e] raw=[3a7a 1211 030e 0043 000a 0003] csum=04d8
amb=[003a 0058 005e] raw=[3a7a 1211 030e 0043 000a 0003] csum=04d8 duplicate
amb=[003a 0058 005e] raw=[3a35 11fa 030c 003b 0009 0003] csum=056e


What you're seeing above is the 1 second data window sliding along the (typical) 2.3 second sampling window. When the data changes significantly between samples the sensor shortens the sample window to 200-800ms, which may be why the first 6 data points show unique numbers (faster sampling rate).

The readings above are in my home, and I smoke so the particle counts vary wildly about 1000:1 over time with a decent quality air filter. When I'm home I run the air handler fan continuously to level out the temperature over the house, and when I'm away I let the fan cycle with the AC or heat. You can see the difference below in how rapidly the particle counts fall off with continuous filtering. The rapid fall off continuous curve is [sleeping], and the slow fall off is cycling [away from home]. Data points are every 30 minutes.

Image

StanJ
 
Posts: 3
Joined: Sat Aug 24, 2019 7:33 am

Re: Air Quality Sensor Help

by adafruit2 on Sat Aug 24, 2019 12:08 pm

hiya this is really helpful info! i dont believe anything under $50 is going to give super accurate counts...but its good to know the limitations!

adafruit2
Site Admin
 
Posts: 18656
Joined: Fri Mar 11, 2005 7:36 pm

Re: Air Quality Sensor Help

by adafruit2 on Sun Aug 25, 2019 1:53 pm

Stan, we've linked/copied your text with attribution here int he guide https://learn.adafruit.com/pm25-air-qua ... sage-notes because you did such an amazing job. please let us know if you're prefer we remove it!

adafruit2
Site Admin
 
Posts: 18656
Joined: Fri Mar 11, 2005 7:36 pm

Re: Air Quality Sensor Help

by StanJ on Sat Aug 31, 2019 10:33 pm

Remove it?? Please, don't. I posted it 'cos I wanted to help others avoid frustration! :-) There's a lot of confusion with the PMS parts since the manual is so skimpy on details.

Of what use is knowledge if you don't share it?

The folks here are pretty good with sharing & caring. On forums elsewhere some members like to club newbies with the RTFM stick. I'm not 'that guy'. I tried to put all of my most hard-won hints, tips & research in that first post.

I used the PMS5003 project as a way to learn the ESP8266, since I'm new to the Espressif micros. The ESPs are a nice family that I think I'll be using more frequently from now on. The tool chain was pretty easy to learn as well, and that's a welcome surprise as I'm nothing like a C programmer, either; I'm an old hardware tech. Quoting Steve Ciarcia, "My favorite programming language is solder." :D

And to respond to the question above, no, we never intended a $35 sensor (total cost) to replace a $4500 NIST-traceable particle counter. We're using it merely to give us a heads-up on the quality of the cleanroom. We use the Beckman once a month and it's a fairly painful process to qualify our cleanroom. This little gadget runs 24/7 with samples every half hour, so we can tell quickly if we've gotten contaminated. At > 100:1 price difference I can afford to spread 5 of the PlanTower sensors around the cleanroom! I was pleasantly surprised to see that the Beckman and PlanTower tracked fairly well in different areas (classes) of our environment, including the inspection area that's outside the cleanroom (nowhere near as bad as Room Air). The single handiest feature of the $35 monitor that the Beckman can't do is send an email or SMS message (or both) if the cleanroom gets contaminated. We don't have to wait to find out we've possibly destroyed the product with dirty air, we can correct it immediately. Unfortunately, yes, it's happened before.

For home use, the PlanTower opens up a world of sensing that you couldn't afford to do just 5 years ago. Nobody in their right mind would pay $4500 to see how much their air is polluted, or whether their air filter(s) are actually working. I'm doing a comparison of various air filters here at home to see which is the most cost-effective. I don't have to rely on advertising claims when I have real data at hand.

StanJ
 
Posts: 3
Joined: Sat Aug 24, 2019 7:33 am

Re: Air Quality Sensor Help

by adafruit2 on Sun Sep 01, 2019 9:57 pm

nice work - keep us updated, this is great stuff!

adafruit2
Site Admin
 
Posts: 18656
Joined: Fri Mar 11, 2005 7:36 pm

Re: Air Quality Sensor Help

by MT5 on Tue Sep 10, 2019 6:08 pm

Hello,
Could those who have used this sensor help me to understand the meaning of the effective range and resolution? For example, to measure smoke/dust over a period of time, could the concentration never exceed the amount prescribed in the range at each second intervals, or rather 2.3 second intervals in which the measurements are taken?
Thank you

MT5
 
Posts: 1
Joined: Tue Sep 10, 2019 6:04 pm

Re: Air Quality Sensor Help

by adafruit2 on Tue Sep 10, 2019 11:01 pm

it'll be an average - it counts the particle spots over a time period and then divides

adafruit2
Site Admin
 
Posts: 18656
Joined: Fri Mar 11, 2005 7:36 pm

Re: Air Quality Sensor Help

by StanJ on Sun Sep 15, 2019 3:47 pm

It's quite a long average. I've lightly blown smoke near the sensor, and it ran the counts way up for 15 to 20 seconds before the air around the sensor (and inside the air chamber) cleared. The 0.3um raw particle counts were at maximum (0xFFFF) most of that time. I have the debug print turned off right now but I could re-enable it if you want actual time measurements. I'd have to run a fan from the 'cleaner' air in the room and then blow smoke in between the fan and the sensor to minimize stagnant air results.

With the air handler fan running continuously, the sensor reports a small spike when I'm smoking downstairs, about 1/5th to 1/10th as large as when I'm in the room with the sensor.

-------------------------------------------------

Electronics 101 mistake I forgot to mention earlier: the data & control pins on the PlanTower sensor are ~3.3V TTL level, and they're real. Vil (logic low input level) is < 0.8V, and Vih (logic high input level) is > 2.7V.

I'm so used to CMOS levels that I forgot about that unusually high Vih for the PMS5003. In order to conserve pins on the D1 Mini I'd used in this project, I had one pin control both the SET input on the PMS sensor and also the backlight control on the 2.2" TFT display, so any time the sensor is running the LCD is lit up. Oops. The backlight control on the TFT is low impedance (likely a single transistor switch), so the TFT pulled the SET pin down to around 2.5V. I didn't consider it a problem until I started doing power measurements on the circuit. As I unplugged the backlight control line to measure how much current the TFT was drawing, I heard the fan in the PMS sensor speed up. That meant it hadn't been moving as much air through the measurement chamber, so the measurement wasn't valid: the reported particle counts would have been lower than actual.

I changed to a higher value resistor between the D1 Mini / PMS5003 SET pin line and the TFT backlight control pin to minimize the current draw on that pin even further. 10k was right on the edge of the 2.7V Vih spec, so I used 33k instead. The backlight is a little dimmer, but still usefully bright. The PMS seems happy with 3.12V on the SET control input.

Image

Any spec limit you ignore WILL come back to haunt you later. You can't run your circuit directly from battery without a 5V regulator, as the PMS5003 needs 5V +/ 0.5V for the fan to run at the correct speed. I'd seen a couple of people question that elsewhere for low-power Li-poly battery operation.

StanJ
 
Posts: 3
Joined: Sat Aug 24, 2019 7:33 am

Please be positive and constructive with your questions and comments.