Validating applications stack for my home

(Joan Pujol) #1

I’m new to PV systems, several months ago, with no experience in PV systems, I purchased a commercial solution at home based on SMA devices.
I’m happy with the given solution, overall service, price and especially with the legalization part that very complex here in Spain.
But after going into more detail, I’ve found areas where the given SMA solution doesn’t give me all that I want.

For that, I started to investigate interfaces given by SMA devices and I developed a small java library to read meter values and operating values from solar and battery inverter using Modbus and logging them to InfluxDB.
While developing the library I discovered Openhab and it’s Emeter and Modbus bindings. And while looking at Openhab addons, I discovered OpenEnergyMonitor and IoTaWatt that are all an excellent open foundation to work with. Having known about them before would have saved me some time.
For that, I want to expose my current system, what I want to archive and validate, with the community if it’s the recommended way to go or if there is another open source project that can help in what I want without reinventing the wheel.

Current System

  • SMA Sunny Boy 3Kw inverter
  • SMA Storage 2.5Kw battery inverter
  • 10Kw LG 400V battery
  • SMA Energy Meter as grid meter
  • SMA Home Manager as controller/manager

The system is capable to operate correctly and divert excess energy to the battery. It also manages correctly zero injection to the grid.
I also have a correct but limited web interface to monitor devices, consumption, production and battery.
Also, I’m capable to manually program battery charging in off-peak hours if produced energy isn’t enough.

But I have some uses cases that I want to improve using open source solution or custom code:

Points to improve
1 - Better mobile interface.
2 - Store produced and consumed measurements and be able to analyze them.
3 - More automatic battery management using weather forecast and charging it at off-peak hours if expected production is not enough for expected consumption. Or at least an easy control to charge tomorrow battery at x% from a mobile device.

Also, I’m analyzing to change in the short or medium term current gas heating solution using underfloor heating for an aerothermal one and increase current PV installed power.
I’ve looked at some Daikin devices and with a Lan controller I can operate in 4 modes (on, off, preferred on and a one that I can limit the current consumption with a pulse generator).
If I go that path I will need:

4 - Use a Raspberry Pi, Arduino or similar to generate the digital outputs to set operating mode and generate the pulse to indicate excess energy from PV system that can be used for heating.

5- Use a Raspberry Pi or similar to provide intelligence to the system because there’s a lot to play with: off-peak hours, battery charging, forecast, diverting to the aerothermal device, and playing with radiant ground big innercy.

My current plans are:
To solve (1) and (2)

  • Publish values from SMA meter, inverters and battery devices using Openhab Emeter and Modbus interfaces. And store series to InfluxDB.
  • Buy an IoTaWatt device and publish info to Influxdb and Emoncms. I like a lot the fact to be able to track separately main house devices with IoTaWatt.

For (3)
Use Openhab rules/scripts

For (4)
A custom application running in a RaspberryPi or Arduino that interacts with OpenHab using rest or similar.

For (5)
Start with something simple using OpenHab rules and with time using data recorded in InfluxDB simulate better rules or try to do some machine learning.

Thanks a lot for reading this big one. Any criticism, recommendation or suggestion will be very welcome, especially for the “smart” part at point 3,5.