Air pollution has become a big problem, especially in big cities. Today we have highly accurate particle matter sensor stations, but they are expensive and only cover certain areas. Our idea is to overcome this by building cheap, reliable and precise particle sensors like the SDS011 in moving objects like cars. This data can be aggregated in the backend and then be displayed right in the cars navigation system. This enables drivers to avoid exceptionally air polluted spots in cities. In addition, Volvo could provide an open API, which researchers and officials can then use to find solutions to get rid of extreme air pollution. As a plus, Volvo can use the data internally for research and marketing purposes.
What it does
The sensor continually measures the PM 2.5 and PM 10 particle amounts in the surrounding air and sends these metrics to a backend either over WiFi or LoRa Wan. Hereby we use the MQTT protocol.
How we built it
We use a Bosch XDK to have wifi connectivity and an external module that provides GPS and LoRa Wan connectivity. The communication between these two modules runs over a Serial-BUS. Because we don't have a SDS011 here and nobody could provide us one, we just measured the temperature through the BMP280 IC built in the XDK, to have some sort of sensor values.
Challenges we ran into
The low level interfacing between the two modules cost us a lot of time. At the end we still managed to get the communication working. Since we two are both hardware/embedded software guys, we found it quite hard to get a nice visualisation of the data. We should have invited someone to the team who is experienced in front end/web dev.
Accomplishments that we're proud of
-We managed to use the low level XDK hardware and FreeRTOS APIs of the XDK .That our idea really produces important and interesting data
What we learned
-In FreeRTOS, the task priorities assignment can be a real pain. -Try to keep the possible error sources as small as possible
What's next for The car that is aware of the surrounding air pollution
-Attach the real SDS011 sensor and put it all on a car. -Use the TTN to send the data to the backend -Have a database to store all the sensor data -Think deeply about privacy concerns that can come up when you send around you location. -Set up a nice live visualisation and provide an API to access the data