Bedeutung Datenpunkte / REST Schreibzugriff [Fenecon]

Hallo zusammen,
ich bin neu hier. E-Techniker, etwas IT Hintergrund und ideellem Interesse an EE.

Habe mich schon etwas eingelesen, komme an der Stelle aber nicht wirklich weiter:
Ich betreibe seit 9 Monaten ein Fenecon Home 10, inzwischen mit 17,6 kWh. Ich entlade den Speicher Nachts prognosebasiert um Puffer für den Mittagspeak zu bekommen [Raspi / eigenes Python Script].

Aktuell stolpere ich über folgendes: Wenn der Hausverbrauch die eingestellte Entladeleistung übersteigt, wird die Differenz aus dem Netz bezogen anstatt die Erzeugung um die Differenz zu erhöhen. Daher habe ich die Entladung jetzt Nachts laufen, wenn keine großartigen Lastspitzen auftreten. Aufgefallen ist mir das Verhalten am Wasserkocher um 6:00 als das noch anders war. Meine Steuerung ist bewusst langsam (30s um den Watchdog am Leben zu halten), da ich zwecks der internen Regler nicht agieren möchte .

Ich hatte dazu das Register “ess0/SetActivePowerGreaterOrEquals” im Blick, aufgrund des “GreaterOr”.

Beim Verhalten konnte ich aber letztendlich keinen Unterschied feststellen, und finde auch keine Details in der Doku was der Unterschied ist, welcher drei gesonderte Register sinnvoll macht.

  • ess0/SetActivePowerLessOrEquals
  • ess0/SetActivePowerEquals
  • ess0/SetActivePowerGreaterOrEquals

Meine Ziele sind [Reihenfolge=Priorität]:

  1. Sicherstellung des Eigenbedarfs, möglichst wenig Fremdbezug
  2. den Wirkungsgrad des Wechselrichters zu optimieren (ist bei den 200W Grundlast wohl eher schlecht [stromspeicher-inspektion-2024-teillastwirkungsgrade]
  3. PV Überschuss sinnvoll einzuspeisen (abends/morgens während der Hochlastzeiten

Vertraglich ist das egal, die Anlage läuft noch ein paar Jahre auf EEG2011, und der Zähler merkt nicht ob die :sun_with_face: scheint während ich einspeise :smiley: .
Eine Erhöhung des Eigenverbrauchs mittels WP ist in Planung, es wird aber denke ich auch langfristig Zeiten geben, bei denen ich sinnvoll entladen will und kann [wobei die Nachtstunden gar nicht sooo ungünstig sind den Anteil zu erhöhen [peakpick.de].

BTW: Ich habe auch mal probiert quick and dirty den WR Wirkungsgrad zu ermitteln um mal ein Gefühl für mein Gerät zu bekommen.
Alle Werte die ich finden konnte die sich mit DC/AC auf “ActualPower” beziehen, zeigen exakt die gleiche Leistung. Irgendwie messtechnisch auf den ersten Blick ein System ohne Verluste :hugs:?
Der Energievergleich über die Register zeigt in meinen Augen realistischer zwischen 82% und 87% Gesamtwirkungsgrad zwischen PV erzeugt und AC abgegeben aus (Notstrom inkl.).
Idee war eigentlich mal die ActualPower Werte mitzuloggen, über die Energiewerte braucht es dann ja halbwegs statische Betriebsbedinungen und etwas mehr Mathematik :wink:. Ob das überhaupt in sinnvollen Zeiträumen bei der Leistung was bringt müsste sich auch erst noch heraussstellen - ist aber auch realisierbar.

Nachdem mich der Support von Fenecon an dieses Forum verwiesen hat, freue ich mich hier etwas Input zu bekommen. Vielleicht hat ja sogar jemand die Messwerte vom Home10WR bzgl. Wirkungsgraden analog der Kurve aus Berlin von 71% auf >85% wäre ja schon ein Anfang der sich leicht realisieren ließe - low hanging :red_apple: :pear: :cherries:
Vielen Dank im Voraus!

LG
//hufnala

Hallo hufnala, willkommen im OpenEMS Community Forum!

Wir arbeiten selbst auch (im Rahmen der neuer regulatorischen Möglichkeiten mit Direktvermarktung und Pauschaloption) an einer “Entladung ins Netz”-Funktion. Siehe
Feature Request: TimeOfUse controller: Discharge to grid - #16 by yvesilknievil und mein Video dazu mit Felix Goldbach: https://www.youtube.com/watch?v=-pdx44EZAuU. Es wäre toll, dich da an Board zu haben, so dass nicht jeder sein eigenes Süppchen kocht (bzw. Script schreibt). Ich weiß schon: mit Java ist das auf den ersten Blick etwas komplizierter als in Python :wink:


Die Register für Equals, LessOrEquals und GreaterOrEquals gibt es, weil intern die Leistungsverteilung mit einem linearen Gleichungssystem berechnet wird. Diese Funktion verwenden wir vor allem bei unseren größeren Cluster- bzw. Industrial-Systemen.

Theoretisch müsstest du mit dem SetActivePowerGreaterOrEquals genau das erreichen, was du möchtest, d.h. die Leistung limitieren und - wenn Verbrauch größer als Erzeugung ist - mit mehr Leistung entladen. In der Praxis könnte es sein, dass das manchmal mit dem SMART-Mode nicht funktioniert. Hintergrund ist: wir versuchen dass Wechselrichter immer dann in seinem schnellen internen Modus läuft, wenn am Netzanschlusspunkt auf Null ausgeregelt werden soll. Nur wenn wir übersteuern wollen, geben wir aktiv die Set-Points vor.

Vermutlich wäre es am besten, wenn du auch nur dann aktiv übersteuerst, wenn es notwendig ist. Und in allen anderen Zeiten nicht. Du kannst auch als Set-Point null vorgeben um die Übersteuerung vor Ablauf des Watchdogs auszuschalten.


EDIT: Könntest du dein Script mit der Community teilen?

Gruß,
Stefan

Hallo Stefan,

vielen Dank für die Ansatzpunkte, da kann ich mal drauf schauen. Das script teile ich gerne, dauert aber bis Mittwoch oder so. Die Entladefunktion wäre super, das Video schaue ich mir gerne mal an bzw. Lese mich ein.
An Java werde ich mich nicht beteiligen, das kriege ich zeitlich nicht hin, a/b Tester in der freien Wildbahn kann ich mir aber gut vorstellen.

Die Funktion macht bei mir sicher nicht das beschriebene, schaue ich mir nochmal an.
LG und noch schöne Pfingsten,
Lars