Was ist der SENEC-Charger?
Der SENEC-Charger steuert einen SENEC-Stromspeicher bei Verwendung eines dynamischen Stromtarifs (von Tibber) und belädt ihn aus dem Netz, wenn dies lohnenswert ist.
Damit der SENEC-Charger funktioniert, werden zwei weitere Collector benötigt:
- Der Tibber-Collector sammelt die Strompreise von Tibber und schreibt sie in die InfluxDB.
- Der Forecast-Collector sammelt die Wettervorhersage und schreibt sie ebenfalls in die InfluxDB.
Funktionsweise
Abschnitt betitelt „Funktionsweise“Der SENEC-Charger liest stündlich die Strompreise und Wettervorhersage aus der InfluxDB und entscheidet auf Basis dieser Daten, ob der Stromspeicher aus dem Netz beladen werden soll. Dabei werden folgende Faktoren berücksichtigt:
- Aktueller Ladestand des Stromspeichers
- Strompreis in den kommenden Stunden
- Erwartete Solarproduktion basierend auf der Wettervorhersage
Logging
Abschnitt betitelt „Logging“Der Charger schreibt ein Protokoll ins Docker-Log, das im Normalfall so aussieht:
SENEC charger for SOLECTRUS, Version 0.7.0, built at 2025-09-26T13:44:58.476Zhttps://github.com/solectrus/senec-chargerCopyright (c) 2023-2025 Georg Ledermann, released under the MIT License
Using Ruby 3.4.6 on platform aarch64-linux-muslConnecting to SENEC at https://192.168.178.29Connecting to InfluxDB at http://influxdb:8086, bucket solectrus, measurements prices and forecast
#1 - 2025-11-23 07:19:23 +0100Grid power not cheap, nothing to doChecked prices between Sunday, 07:15 - Monday, 00:45, ⌀ 1.06Best 4-hour range: Sunday, 07:15 - Sunday, 09:00, ⌀ 0.75Ratio best/average: 70.9 %Sleeping for 3600 seconds ......Jede Entscheidung wird protokolliert, sodass nachvollzogen werden kann, warum der Stromspeicher beladen oder nicht beladen wurde.
Das Protokoll kann über folgenden Befehl abgerufen werden:
docker compose logs senec-chargerBei Problemen oder Fehlern (z.B. wenn der Stromspeicher oder die InfluxDB nicht erreichbar ist) wird dies ebenfalls protokolliert. Es empfiehlt sich daher, im Zweifelsfall zuerst das Protokoll zu prüfen.
Quelltext
Abschnitt betitelt „Quelltext“Der SENEC-Charger ist in Ruby implementiert, der Quelltext ist auf GitHub verfügbar:
github.com/solectrus/senec-charger