Akku-Nutzung für Wärmepumpe je nach Jahreszeit / Verbrauchsprognose steuern

Hallo zusammen,

ich möchte für mein System (Kostal Plenticore G3, BYD HVS 10.2, Novelan Helox 16, Messkonzept 8 / Zählerkaskade) die Nutzung der PV-Batterie für meine Wärmepumpe zeitlich abhängig steuern:

In der Übergangszeit soll die Wärmepumpe den Akku nutzen dürfen, im Winter soll die Nutzung des Akkus für die Wärmepumpe gesperrt sein.

Die Preisdifferenz zwischen Haushaltsstrom und Wärmepumpenstrom beträgt aktuell >10 ct/kWh, daher würde ich den Haushaltsverbrauch gerne priorisieren.

Ein separates SmartMeter für die Wärmepumpe ist aktuell nicht vorhanden. Ich könnte eines nachrüsten, alternativ kann der aktuelle Verbrauch per Modbus aus der Wärmepumpe ausgelesen werden, allerdings relativ ungenau. Optimal wäre, wenn OpenEMS die Akku-Nutzung der Wärmepumpe auf Basis einer Haushaltsverbrauchsprognose automatisch entscheidet. OpenEMS läuft bereits, Plenticore und KSEM G2 sind eingerichtet.

Meine Frage:

Ist es möglich, mein Vorhaben in OpenEMS umzusetzen? Wenn ja, wie würdet ihr den Ansatz umsetzen?

Gibt es schon bestehende Module oder Strategien in OpenEMS, die das regeln könnten?

Vielen Dank für eure Hinweise!

Hallo @Philipp,

vielen Dank für die Projektbeschreibung. Nativ unterstützt OpenEMS diese Art der Priorisierung bisher nicht.

In der Grundeinstellung wird ein Speicher bei der Eigenverbrauchsoptimierung versuchen am Netzanschlusspunkt auf “0 W” auszuregeln - in OpenEMS heißt das “BALANCING”. Über weitere Controller (z. B. den Time-of-Use-Tariff-Controller) gibt es weitere Betriebsmodi.

Um dein Szenario perfekt umzusetzen, würde ich einen neuen Betriebsmodus einführen, der genau den Verbrauch der Wärmepumpe herausrechnet und somit nur den “Haushaltsverbrauch” aus dem Speicher versorgt.

Der Energy Scheduler v2 würde dann automatisch (anhand Erzeugungs- und Verbrauchsprognose, Netzbezugspreis und Einspeisevergütung über eine Fitness-Funktion) entscheiden, wann dieser Modus angewendet werden sollte.


Falls dir das für den Anfang zu komplex ist, könntest du auch einfach einen solchen Controller schreiben und z. B. über den JSCalendar-Scheduler zeitlich so einplanen, dass dieser Betriebsmodus zeitlich immer dann aktiv ist, wenn du das eingestellt hast.

Gruß,
Stefan