There are several citizen group projects that are developing open source equipment (e.g. Air Quality Egg). There are several recent discussions about adding a Particulate sensor. The Egg Project aims to give citizens a way to participate in the conversation about air quality. It is composed of a sensing device that measures the air quality in the immediate environment and an on-line community that is sharing this information in real-time. It is a community-developed, open source project that is driven by people who care about the air they breathe.
The unit is amazingly sensitive. It easily sees the dust kicked up from walking on a rug or the vapors from cooking. Looking at the graphs below you can see some interesting things. First you can see that things settle down at night when people are not walking around. You can see around noon that my daughter cooked lunch. It's surprising how long it takes for the fine particles to settle down.
Arduino 5V => Sparkfun RS232 Shifter VCC Arduino GND => Sparkfun RS232 Shifter GND Arduino Pin 2 => Sparkfun RS232 Shifter TX-O Arduino Pin 3 => Sparkfun RS232 Shifter RX-IThe following simple Arduino Sketch shows how to print Dylos results every minute ( dylosnetworkexample.ino is a more detailed sketch that posts the Dylos data to COSM)
char line[80]; int small = 0; int large = 0; int i =0; // include the SoftwareSerial library so you can use its functions: #include <SoftwareSerial.h> #define rxPin 2 #define txPin 3 // set up a new serial port SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin); void setup() { pinMode(rxPin, INPUT); pinMode(txPin, OUTPUT); // set the data rate for the SoftwareSerial port mySerial.begin(9600); //set up Arduino's Serial Serial.begin(9600); } void loop() { // listen for new serial coming in: char someChar = mySerial.read(); if( someChar != -1){ Serial.print(someChar); if (someChar == '\n') { line[i++]=0; sscanf(line,"%d,%d",&small,&large); Serial.print(small); Serial.print(' '); Serial.println(large); i=0; } else line[i++] = someChar; } }According to the Dylos DC110 COM Port option document: The serial output format is small counts, comma, large counts, carriage return, line feed: Example:
675,19<CR><LF>This data is output every minute and the counts represent the average concentration over the past minute. The units are in counts/100 per cubic foot.In the above example, the output of 675 would mean the average concentration over the past minute was 67,500 particles per cubic foot. This data can be viewed by any rs232 terminal or PC terminal program. The setup is as follows:
9600 baud 8 bits no parity 1 stop bit no flow controlDylos has some "rules of thumb" for small count readings related to air quality:
Air Quality Chart - Small Count Reading (0.5 micron)+ 3000 + = VERY POOR 1050-3000 = POOR 300-1050 = FAIR 150-300 = GOOD 75-150 = VERY GOOD 0-75 = EXCELLENT
COSM connects people to devices, applications, and the Internet of Things. As a web-based service built to manage the world's real-time data, Pachube gives people the power to share, collaborate, and make use of information generated from the world around them.
This is a perfect repository for our Dylos Air Quality It provides a simple HTTP interface to post data and applications which generate charts that can be included on your web pages: