An Environmental Monitoring Dashboard

Note: The charts and graphs in this post take time to load. Refreshing the page will update all of the data.

I spent a part of Summer 2018 reading tutorials that explained how the Google Sheets API worked with Google Sheets. My Goal: Figure out a way to send data from various Arduino sensors spread inside and outside of my apartment to Google Sheets and longitudinally store the data for immediate analysis and longterm graphing.

This post shows the outcome of what was a frustrating but ultimately successful two-month journey: A visual display of environmental readings around my apartment. This post does not describe how to build the datalogging system- that’s for a future series of blog posts that I hope to publish in the coming months.

Outdoor Monitoring System

Click on a tab to view questions, graphs, and charts for the outdoor monitoring system. The charts and graphs are interactive; hovering over a dial, line, or bar will display specific values. Refreshing the page will update the graphs and charts.

Current Readings

The most recent readings from the outdoor monitoring system. Refresh the page to view updated readings.

Timeline of Readings

The timeline contains all of the values for today. Pressure is not included because of the timeline’s lack of support for dual axes. The reading frequency is five minutes.

Humidity, Temperature, & Pressure

A line chart depicting humidity, temperature, and pressure changes for today. The reading frequency is five minutes.

Timeline of Readings

The timeline chart contains all of the values over three days including today. The reading frequency is five minutes.

Averages

The bar graph contains the averages for all of the metrics over three days including today. Today’s averages change with each additional reading.

Frequency Statistics

The table contains the frequency statistics for all of the metrics over three days including today. Today’s reading values change with each additional reading.

Timeline of Readings

The timeline chart contains all of the values over seven days including today. The reading frequency is five minutes.

Averages

The line graph contains the averages for all of the metrics over seven days including today. Today’s averages change with each additional reading.

Frequency Statistics

The table contains the frequency statistics for all of the metrics over seven days including today. Today’s reading values update every five minutes.

Coming soon

Outdoor Readings

The graphs and charts in the tabs above come from a NodeMCU microcontroller and two sensors (DHT22 and GY-BMP280) that are on the back deck of my apartment in Charlottesville, VA.

The NodeMCU collects sensor readings every 5 minutes and transmits the data over WiFi to a local Raspberry Pi web server that’s on a shelf in my living room. When the Raspberry Pi receives new readings, a PHP page on the server parses the incoming data, pushes the information to the Google Sheets API, and then logs all of the readings in a specific Google Sheet in my personal Google Account. After that, I use a random assortment of mathematical functions and pivot tables in Google Sheets to tease out useful graphical representations based on questions from the data set.

Graph-Question Connections

The included graphs and data display decisions arose from questions that I believe students might have if they built a similar system.

  1. What can be mathematically observed when there is a weather event like rain, snow, or a tornado?
  2. Is there a connection between humidity and pressure changes on a micro level?
  3. What predictions can be made based on short-term averages (3-Day and 7-Day)? Do meteorological fronts and constantly changing weather patterns confound the predictions?
  4. Is it possible to observe evidence of climate change if the system is left in place for a year or more?

Indoor Monitoring System

Click on a tab to view questions, graphs, and charts for the outdoor monitoring system. The charts and graphs are interactive; hovering over a dial, line, or bar will display specific values. Refreshing the page will update the graphs and charts.

Current Readings

The most recent readings from the indoor monitoring system. Refresh the page to view updated readings.

Timeline of Readings

The timeline chart contains all of the values for today. The reading frequency is five minutes.

Timeline of Readings

The chart contains all of the values over three days including today. The reading frequency is five minutes.

Averages

The bar graph contains the averages for temperature and humidity over three days including today. Today’s averages change with each additional reading.

Frequency Statistics

The table contains the frequency statistics for temperature and humidity over three days including today. Today’s values change with each additional reading.

Timeline of Readings

The timeline chart contains the values for temperature and humidity over seven days including today. The reading frequency is five minutes.

Averages

The line graph contains the averages for temperature and humidity over seven days including today. Today’s averages change with each additional reading.

Frequency Statistics

The table contains the frequency statistics for temperature and humidity over seven days including today. Today’s reading values update every five minutes.

Coming Soon

Indoor Readings

The graphs and charts in the tabs above come from an ESP-01 microcontroller and a DHT22 sensor that sit on a shelf in my apartment in Charlottesville, VA.

The indoor monitoring system works in the same way as the device that collects outdoor readings. The ESP-01 collects readings from the DHT22 sensor and sends the data to a web server on a Raspberry Pi. The Raspberry Pi parses the values and passes the information to a Google Sheet through Google’s API. I then make charts and graphs from the data by using various queries, functions, and pivot tables.

Graph-Question Connections

The included graphs and data display decisions arose from questions that I believe students might have if they built a similar indoor system.

  1. Are there patterns in how air conditioning or central heating is used over the course of a day?
  2. Is there a connection between the indoor temperature and the outdoor temperature?
  3. Does the air conditioner or central heating system increase or decrease the indoor humidity?

No Comments

Sorry, the comment form is closed at this time.