smart-energy-monitor/software/flow/README.md

51 lines
2.1 KiB
Markdown
Raw Normal View History

2023-02-22 19:30:34 +01:00
# About
> This folder will be mounted into the Node-RED runtime. So be careful.
2023-02-22 16:18:17 +01:00
# Node-RED
2023-02-22 16:20:27 +01:00
If you boot up our tech stack using `docker-compose` you already have a Node-RED instance running on [your local machine](http://localhost:1880/).
2023-02-22 16:18:17 +01:00
2023-02-22 16:20:27 +01:00
## First steps
2023-02-22 16:18:17 +01:00
2023-02-22 21:12:30 +01:00
For debuging I already added Node-RED's own dashboard (sure, we are going to use Grafana, later).
2023-02-22 16:18:17 +01:00
2023-02-22 17:28:23 +01:00
![Overview](./docs/images/1-overview.png)
2023-02-22 16:22:25 +01:00
The dashboard should be visible on the righmost menu item in Node-RED.
2023-02-22 16:18:17 +01:00
![Dashboard item](./docs/images/dashboard.png)
2023-02-22 21:17:06 +01:00
In Node-RED you can add a MQQT node to receive values from the power monitor. As we run in `docker-compose`you don't have to use the IP address of our Eclipse Mosquitto sever, but you can simply use `mosquitto` as the host nome.
2023-02-22 16:41:53 +01:00
2023-02-22 19:30:34 +01:00
![MQTT Node](./docs/images/2-mqtt-node.png)git a
2023-02-22 16:41:53 +01:00
To simply display the values in a gauge (or chart) you can hook it up to a gauge node.
![Gauge Node](./docs/images/3-gauge-node.png)
2023-02-22 16:18:17 +01:00
2023-02-22 16:40:11 +01:00
In the dasboard section you have to create a tab. Inside this tab you have to create a group.
![Dashboard Settings](./docs/images/4-dashboard-node.png)
2023-02-22 16:41:53 +01:00
The tricky part is putting the gauges in the group. This is done in the gauge's settings (not in the dashboard's settings).
2023-02-22 16:40:11 +01:00
![Gauge Node](./docs/images/3-gauge-node.png)
You can view the dashboard in an (also mobile) web browser.
2023-02-22 16:18:17 +01:00
![Mobile view](./docs/images/5-dashboard.png)
2023-02-22 16:27:14 +01:00
2023-02-23 16:31:52 +01:00
Have a look at the flow also in [this repository](./00-dashboard-example/dashboard.json).
## InfluxDB
Already added to this project is [node-red-contrib-influxdb](https://flows.nodered.org/node/node-red-contrib-influxdb). You can use it's nodes to write and query data from an InfluxDB time series database. These nodes support both InfluxDB 1.x and InfluxDb 2.0 databases. At the time of this writing we are using [version 2.6 of InfluxDB on port 8086](http://admin:adminadmin@localhost:8086).
# Links
* [IoT Made Easy with Node-RED and InfluxDB](https://www.influxdata.com/blog/iot-easy-node-red-influxdb/)
* A great tutorial can be found at [microcontrollerlab.com](https://microcontrollerslab.com/esp32-mqtt-publish-multiple-sensor-readings-node-red/)