I live in a house with four flats, each of which is owned by a different member of my family. In 2024 we jointly invested in a 23kWp photovoltaics (PV

Search code, repositories, users, issues, pull requests...

submited by
Style Pass
2024-07-04 19:30:05

I live in a house with four flats, each of which is owned by a different member of my family. In 2024 we jointly invested in a 23kWp photovoltaics (PV) system with 22kWh battery storage. To optimally share the energy across the entire house, we now only have one contract (and one electricity meter) with the grid operator. Behind the main meter, the consumption of each flat is measured using an Eltako electricity meter (as shown below) which we use to split the electricity cost.

With a PV system (and maybe in the future, dynamic tariffs), the cost per kWh is not fixed. It is basically free when there's sun and expensive otherwise. Thus ideally, we could not only record how much energy is consumed, but also when. Like that we can learn more about our energy consumption, optimize it towards consuming more self-generated energy, and split the cost more accurately.

Luckily, the Eltako meters can be read out via a S0-interface. This is a very simple interface that sends one electric pulse for each consumed Wh. Moreover, the SMA inverter and battery system can be queried using a Modbus interface via the local network such that we can retreive information about energy production and storage. This repo contains a Python package I run on a Rasperry Pi zero to count the pulses received via S0 and to query the modbus interface in a fixed interval. The resulting measurements are saved in a SQLite database that can be used for analyzing and visualzing the energy consumption and production.

Leave a Comment