DustSensor: Difference between revisions
(Add picture) |
No edit summary |
||
Line 28: | Line 28: | ||
This module outputs its data as a 32-byte serial data stream at 9600 bps. | This module outputs its data as a 32-byte serial data stream at 9600 bps. | ||
The protocol is that | === Protocol outgoing data === | ||
I think it is a good match to use a simple finite state machine to parse the stream and | The protocol for measurement data from the module is that data is sent in frames. | ||
Each frame starts with specific begin marker bytes, then a length byte, then the actual data, a checksum and finally an end marker byte. | |||
I think it is a good match to use a simple finite state machine to parse the stream and get synchronized to the frames. | |||
=== Protocol incoming data === | |||
This protocol allows commands to be sent to the module, also in frames. | |||
Each command frame consists of 7 bytes. | |||
It starts with two marker bytes, then a command byte, two data bytes and finally two checksum bytes. | |||
== References == | == References == | ||
* a nice list of sensors [https://www.samenmetenaanluchtkwaliteit.nl/sensoren-voor-fijn-stof-pm25pm10 from "samen meten aan luchtkwaliteit"]. | * a nice list of sensors [https://www.samenmetenaanluchtkwaliteit.nl/sensoren-voor-fijn-stof-pm25pm10 from "samen meten aan luchtkwaliteit"]. | ||
* another [http://aqicn.org/sensor/ nice overview of dust sensors]. | * another [http://aqicn.org/sensor/ nice overview of dust sensors]. |
Revision as of 16:55, 3 December 2017
Project Dust Sensor | |
---|---|
Experiments with a dust sensor | |
Status | Initializing |
Contact | bertrik |
Last Update | 2017-12-03 |
Introduction
I ordered a dust sensor module to perform measurements of airborne dust. In particular, I ordered this one, the Plantronics PMS 7003. It's being advertised as an advanced generation of dust sensor (7th generation), while still reasonably priced. It uses lasers to perform the measurement and I think it contains a small fan to move the air around.
Hardware
Data sheets can be found:
The module takes 5V to run and communicates using 3.3V levels.
It attempts to make an estimate of the number of particles per size category. It also gives an estimate of the total mass of the particles.
I plan to connect this thing up using an ESP8266.
Software
This module outputs its data as a 32-byte serial data stream at 9600 bps.
Protocol outgoing data
The protocol for measurement data from the module is that data is sent in frames. Each frame starts with specific begin marker bytes, then a length byte, then the actual data, a checksum and finally an end marker byte. I think it is a good match to use a simple finite state machine to parse the stream and get synchronized to the frames.
Protocol incoming data
This protocol allows commands to be sent to the module, also in frames. Each command frame consists of 7 bytes. It starts with two marker bytes, then a command byte, two data bytes and finally two checksum bytes.
References
- a nice list of sensors from "samen meten aan luchtkwaliteit".
- another nice overview of dust sensors.