Previously I "burned up" my overproduction with an electric air heater in the bathroom, see this project.
Now I have integrated a Anker Battery Storage in my PV system and for summer it would be better to use the energy in the water heater so I decided to buy a heating sword. 😊
This project uses a Shelly Pro 3EM Smart Meter to measure the PV overproduction.
To get the data from Shelly device simply use the rpc endpoint with a http client: http://shelly_ip_address/rpc/EM.GetStatus?id=0
You will get a response in json format.
This needs to be unpacked using the Arduino JSON Library to get the raw values.
An ESP8266 fetches the data via WLAN. The ESP8266 sends the measured power via serial interface to an Arduino Uno. The Arduino Uno then controls a Relais which is connected to a 500 W heating sword in a water heater.
I used a board which contains both Arduino & ESP8266 which I had used in other projects already. The ESP does the networking stuff and the Arduino does the simple and therefore safe regulation task.
I tried to use a single ESP32 board to control everything. But the switching process by the relais creates some EMI (I suppose). So the WiFi crashes. After I tested ESP32 only, I am now using the double architecture again.
I use a Telegram Bot to check the state and control the system:
Using this Universal-Arduino-Telegram-Bot Library.
