Skip to content

A terrestrial robot for air quality monitoring, complete with interactive data-driven web app.

Notifications You must be signed in to change notification settings

hfmandell/air-quality-rover-raspi

Repository files navigation

Terrestrial Robot & Environmental Monitoring

A project begun in the summer of 2021, aiming to explore electronics, environmental data visualization, and web development!

End Goal:

An automated environmental monitoring device that has pre-programmed routes and sends data to the cloud via IoT interfaces.

Current Status (8/25/2021):

Deliverables thus far:

Sensors collect data, but the process to send it to my local computer and visualize it on Flask webpage is completely manual (completed via SSH into the Pi).

pm_size_comparison

Electronics

I used a RaspberryPi Zero connected to a Breadboard and portable powerbank. As for the environmental monitoring tools, I connected a GPS Module as well as a Particulate Matter sensor (PM10, PM2.5, & PM1). I obtained sensors for other common air pollutants, but not the materials to connect them to the breadboard.

I connected to the RPi headlessly over SSH, but am looking to acquire a monitor/keyboard/mouse set to connect with a higher degree of ease.

Data Acquisition

Both the GPS module and PM monitoring device send data through a serial port. See: Air_quality_v2.py from Marc Los Huertos' repository, EJnPi. The data is read in as bytes and then processed into a .csv file which will be sent to my local computer after it is done processing.

Data Visualization

After many trials and errors with plotting packages, I settled on ipyleaflet for geographical plotting and plotly for interactive timeseries data. My main goal was to make the data as interactive and intuitive as possible because environmental monitoring is an incredible tool for communicating data such that community members can make informed decisions for their health! I have background in GIS and would love to explore interactivity with ArcGIS or ArcGIS Online in the future.

Web Development

For this project I used a Flask app deployed on Heroku. I am very comfortable working in Python (and am excited to learn some more JavaScript and CSS) so this was an easy choice for me.

About

A terrestrial robot for air quality monitoring, complete with interactive data-driven web app.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages