An air quality sensor (dust sensor) has been on my todo list for a while. There are a number of sensor modules on the market for the DIYer but all that I had seen seemed to not be suited for outdoor use. I saw someone that had a PurpleAir sensor. The specs looked good but it was quite expensive and had to be connected to their cloud network. Looking into it more I found that the actual sensor in the PurpleAir device was a Plantower PMS5003. This sensor is available online for around $40. That is more my speed.
My standard interface for sensors is to use a Teensy 3.2 microcontroller to convert whatever signals the sensor uses into USB serial. The PMS5003 interfaces with 3.3V logic level serial data and a set and reset line. The Teensy turns on the sensor every 5 minutes waits for 30 seconds for the fan to come up to speed takes readings and turns it back off.
The Teensy is mounted on a piece of perfboard along with the connector for the sensor. The perfboard is mounted to an aluminum disk that just fits inside a PVC pipe cap.
The sensor is mounted to the other side of the aluminum disk.
The PMS5003 does need to be protected from the elements when used outdoors. In the pictures of the PurpleAir sensor it looks like it is mounted in a PVC pipe cap with the open end facing down. So I went out and bought a 4 inch PVC pipe cap and added an aluminum bar to mount it.
Above on the right is the sensor mounted on my weather station tower along with a number of other sensors.
A USB cable connects the sensor with a computer in the base of the tower. This computer runs a script that sends the data every five minutes to my web server where it is logged in a MySQL database. You can view the plots of the data at the link below.
Sensor Data http://www.ocrslc.net/sensors/dust.php