Plant Monitor Data Viz
10 Mar 2020 - Jake Sherwood
Plant monitor Data
D2D - Plant monitor Data Viz and Node-Red
Over the last few weeks we’ve been collecting plant data.
I have two monitors set up, 1 at home and 1 at school.
This past week we learned about Grafana and Node-Red.
Grafana is a really cool dashboard that you can run on a server or locally to visualize data in a database.
The assignment was to set up a dashboard and a few graphs based on our own monitor(s).
I had already installed Grafana locally and attached it to the tsitp Timescale database. So I used that to build out my dashboard.
Plant monitor - data viz with Grafana
I set up gauges for temp, humidity, & pressure for both of my devices. They are showing the last not null values.
I have averages for illuminance, uva, & uvb.
Finally I have heat maps for my soil values. I like seeing the change in soil readings over time. Hopefully I’ll be able to monitor them and see when and if they are watered.
Also just to gauge what other people are doing I have an all device temp line graph and bar graph for intervals.
That highlighted a funny event on 3/7… looks like device_15 was on FIRE. 43 mil degrees ??!?!?!
device_15 goes nuclear
We also learned about Node-red which is a really cool node based visual programming app.
It allows us to configure various things with minimal code and just dragging and attaching nodes.
It is pretty cool and I had been wanting to do something with a node base programming tool.
I set up a few things.
1) a way to adjust my configinterval on both monitors.
2) a way to send me SMS msgs just based on subscriptions to the soil mqtt channels
3) a way to send an SMS alert every 6 hours if soil readings on either of my devices is over 600. For this I added the postgres node and configured it to return soil values for my devices which I am then reading from an array and sending notices if the 600 threshold is met.
node-red
Things still to do
1) Get Grafana and Node-red both installed on my actual server.
2) Get data feeding into my own database.