Moin zusammen,
Leider konnte mir der Fenecon Service damals nicht helfen, daher mal generell gefragt: Meine KEBA Wallbox App steht auf Überschussladen, das funktioniert soweit auch wirklich gut. Wird jedoch ein hoher Verbraucher, in meinem Fall ein Durchlauferhitzer mit 20 kW, nach einem Heizvorgang abgeschaltet, sieht das System für ein paar Sekunden eine Netzeinspeisung, vermutlich weil die Haus-Batterie unterstützt hat und nicht sofort runter regeln kann. Leider reicht das als Impuls, die Wallbox zu aktivieren aus. Wenn kein Solarstrom vorhanden ist, saugt dies abends meine Haus-Batterie leer, was mir gar nicht gefällt, da ich ja im Moment mit 0 Solarstrom gar keinen Überschuss habe und die Batterie lieber für die Versorgung durch die Nacht nutzen möchte
Laut Fenecon Support sollte hier schon eine Hysterie im FEMS vorhanden sein, dass dies nicht passiert. Scheint aber bei mir nicht vorhanden zu sein (trotz aktuellem Stand 2025.2.2), denn das Problem besteht seit Anschaffung letzen Jahres.
Ist dieses Problem bekannt und wirklich behoben worden oder trifft bei mir ein Edge Case zu, der einfach noch nicht bedacht wurde?
Edit: Habe zur Hysterie nur gefunden, das er nicht zu oft zwischen Laden und Ladevorgang stoppen wechseln soll, eine „Pause“ bei Schwankungen oder ein simples checken ob überhaupt Solarstrom produziert wird konnte ich im Source nicht finden: openems/io.openems.edge.controller.evcs/src/io/openems/edge/controller/evcs/ControllerEvcsImpl.java at develop · OpenEMS/openems · GitHub
Edit: Hier scheint mein Problem irgendwo reinzuspielen: openems/io.openems.edge.controller.evcs/src/io/openems/edge/controller/evcs/ControllerEvcsImpl.java at develop · OpenEMS/openems · GitHub - bei < 97% Haus-Akku wird nur auf das Grid Meter geschaut. Dies zeigt natürlich für einen kurzen Moment -10000 Watt (maximale Entladeleistung meiner Batterie) bis das ESS die Batterie runtergeregelt hat. Jetzt wird das Auto geladen, die Batterie wird weiter genutzt aber es wird auch nicht abgeregelt, denn am Grid liegen ja weiter 0 Watt an. Ich denke hier muss geprüft werden, ob wirklich auch Solarstrom genutzt werden kann und nicht nur der Speicher. Warum sollte ich den Strom ins Auto transferieren, wenn ich diesen Nachts normal weiter nutzen kann?
Edit 3: Da es im Modus Priorität Auto immer auf die Solarproduktion - bzw. den Status von ESS - schaut, klappt in diesem Modus alles. Statt bei einer Schwankung direkt den Ladevorgang zu starten wartet er mit der Aktivierung der Wallbox, da das ESS vermutlich einen negativen Wert liefert. Das ist aber nur Spekulation, merkwürdig finde ich jedoch wie widersprüchlich sich die Einstellung verhält. Bevorzuge ich Storage, sollte doch mehr Strom gespeichert werden und nicht umgekehrt der Strom aus dem Speicher genutzt werden? Werde ein Auge drauf haben, aber vielleicht ist dies schon die Lösung zu meinem Problem.
Edit 4: Es lässt mir, wie immer, keine Ruhe Wenn ich das richtig sehe, dann schaut das system bei Prio Auto nur auf die Summe vom ESS (Solar und Batterie) um zu erkennen, ob ein Überschuss besteht. Beim Prio Speicher werden keine Daten vom System rangezogen und man verlässt sich auf das, was am Grid Meter angezeigt wird. Vermutlich bei einem normalen Betrieb gar keine schlechte Sache, denn mit Solar und Batterie versucht sich das ESS ja sowieso auszupegeln, am Grid sollten selten mehr als -200 Watt als Einspeisung anliegen. Ich glaube genau diese Annahme löst alle Probleme aus (auch das hier erwähnte! [FEMS] Auto per Wallbox nicht aus Speicher laden). Wieder gefährliches Halbwissen, aber wäre es nicht angebracht sich an dieser Stelle im Code: openems/io.openems.edge.controller.evcs/src/io/openems/edge/controller/evcs/ControllerEvcsImpl.java at a6dc8dce0b396fb5f1fa51c6c8ffe1078833953e · OpenEMS/openems · GitHub zwar nicht die Gesamtleistung des ESS anzusehen sondern einfach auch nur die Entladeleistung des Batteriespeichers selbst? Dann sollte eine Einspeisung in das Netz durch den Batteriespeicher doch erkannt werden? Hier mal ein wenig “Code” so wie ich mir das vorstelle - habe dazu nur im Code nach Beispielen gesucht und kopiert, wird so sicherlich nicht funktionieren und ich hab bestimmt noch einen Denkfehler im ganzen. Aber in meinem Kopf würde dies die Problematik des entleerenden Speichers lösen - eventuell auch im o.g. Thread.
private static int calculateExcessPowerAfterEss(Sum sum, ManagedEvcs evcs) {
int buyFromGrid = sum.getGridActivePower().orElse(0);
int essDcDischarge = he.getDcDischargePower().orElse(0);
int evcsCharge = evcs.getActivePower().orElse(0);
// Only consider essDcDischarge if it is greater than 0 which means the battery is discharging
int dischargePower = essDcDischarge > 0 ? essDcDischarge : 0;
var result = evcsCharge - essDcDischarge - buyFromGrid;
// Add a buffer in Watt to have lower priority than the ess
result -= 200;
return result > 0 ? result : 0;
}