Energie Manager (ehemals Energieverbrauch Optimierer)

Ich habe eine Goodwe Anlage, der Speicher ist ein Goodwe Lynx Home F Plus
Hier siehst du, dass der Speicher zb mit 99% auf 0A Leistungsaufnahme reduziert hat, obwohl noch 1680W zur Verfügung stehen würde.

Hier ist auch ein Dokument, wo dieses Verhalten beschrieben wird
Bitte entnimm die Info am Schluss des Dokuments:


Charge the battery with constant current and constant charge voltage until battery self-protection
automatically.


GA_EN_GoodWE_Lynx Home F Series_V1.6.pdf (584,8 KB)

Ok kann ich nachvollziehen

Ich würde mal vorschlagen, dass wenn der Speicher richtig in den Energie Manager integriert werden kann, ich das ganze Gefüge teste.
Speicher im Energie Manger hat wie erwähnt zwei Fehlfunktionen.

  • Er berücksichtigt keine dynamische maximale Leistung
  • Er berücksichtigt den Grenzwert nicht, wo die Energie weiteren Verbrauchern zur Verfügung gestellt werden sollte.

Das ist auch eigentlich die „Regel“. Es gibt natürlich noch ausnahmen wie zu hohe oder zu niedrige Temperatur, dann wird die Leistung begrenzt oder bei einigen Speichern wird die Leistung zum ende hin (>95% SOC) auch reduziert. Meiner ist z.B. bei 99% auch voll und dann lädt er nur noch mit ca 50W bis 100%.

Ich lasse aktuell den Speicher bei mir aber noch im Optimierer außen vor und das funktioniert super.
Im Winter will ich aber eventuell auch die Steuerung nutzen, da ich Nachts dann immer den Speicher voll machen werde und tagsüber entladen.

Sorry, aber was mir immer noch nicht ganz klar ist, welchen Schalter muss ich aktivieren, bzw. deaktivieren.
Die erste Wallbox kann automatisch von 1-phasig auf mehr-phasig wechseln.
image
Die Variable sieht so aus:
image
image
Ich muss den Schalter in der Variable aktivieren um 1-phasig zu laden und den Schalter deaktivieren, um 3-phasig zu laden.
Wenn ich das dann richtig verstehe, wird der Schalter, „Wert für 1-phasiges Laden“, aktiviert und der Schalter, „Wert für mehr-phasiges Laden“, deaktiviert?

Bei meiner 2. Wallbox wird die Umschaltung via mqtt vorgenommen.


Dort muss ich „1“ in die Variable schreiben um 1-phasig zu laden und „3“ um 3-phasig zu laden.
Wie muss ich die Schalter in diesem Fall einstellen? Beide deaktivieren?
image

Bei meinem Huawei Akku kann es auch mal sein das er bei 98% für Stunden ohne ladung ist. Und irgendwann füllt er es auf 100%.
Man müsste dem Energie Manager also sagen das bei x% der Energie Manager da nicht mehr für reservieren soll.
Ich nutze ja immer noch nicht den Akku im Energie Manager sondern errechne mir meinen Überschuss den ich dann dem Energie Manager übergebe.

$ueberschuss = GetValueFloat(41781); //0 bei kein Überschuss, +xxx Überschuss
$akkuEntladung = GetValueFloat(50365); //0 wenn nicht entladen, -xxx bei überschuss
$ueberschussCalculation = $ueberschuss + $akkuEntladung;

$akkuAufladung = GetValueFloat(45936);
$akkuFuelstand = GetValueFloat(57952);

if($akkuFuelstand < 98 && $akkuAufladung < (maxAufladungsleistung - 250))
{
    $ueberschussCalculation = $ueberschussCalculation - (maxAufladungsleistung - $akkuAufladung);
}

SetValueFloat(38584, round($ueberschussCalculation, 0, PHP_ROUND_HALF_DOWN));

Eventuell hilft das als Denkanstoß.
Gruß BlackOrca

Das ist nicht richtig. Ich habe WR und Speicher von Sungrow. Die letzten 2%, also von 98% bis 100% wird nicht mehr mit der maximal möglichen Leistung geladen, da wird dann nur noch mit ca. 600 Watt geladen.

Ich habe gestern mal weitere produktive Tests gemacht und bin bisher begeistert.

Aber die Standardeinstellung bei uns ist, dass wir z.B. nur von 20%-60% den Akku initial (vorrangig!) laden und danach erst über die „Weiterladen“ Funktion den Speicher laden. Dadurch sollte dieser Effekt nie auftreten, da beim Weiterladen egal ist, wie viel übrig ist und niemand anderes mehr vorrangig die Leistung abnimmt. Wenn ihr also den „Initial Laden“ Parameter auf maximal 90% setzt (Default ist 60%!), ist das Problem doch gar nicht da? Oder verstehe ich etwas falsch?

paresy

Nur der Ergänzung halber, ist auch zB bei 48V LiFePo4 mit zB DALY BMS so, meine sogar es startet schon vor 95%. Geht dann immer weiter runter von den 10.000 W max Ladeleistung (ja, ist ne Menge) auf am Ende um die 100W.
Oft macht das BMS aber nicht voller als 98 oder 99%. 100% hab ich noch nicht gesehen. Aber das ist die Voreinstellung des Anbieters und passt erstmal.

Ich selbst hab die Batterie noch nicht im Energie Manager, einfach keine Zeit um es zu machen.

Cheers Sepp

1 „Gefällt mir“

Bei mir gibt es bisher keine Probleme. Ladung des Speichers verhält sich wie erwartet. Wollte nur anmerken, dass die volle Leistung nicht bis 100% genutzt wird.

Irgendwas ist komisch. Mein Speicher wurde nun um 10% leergezogen, d.h. IPS hat einen großen Verbraucher nicht abgeschaltet. Erklären kann ich mir das nur so, dass hin und wieder Schwankungen durch eine Einspeisung / Bezug ins Stromnetz ausgegelichen werden. Da hat man dann mal eine Einspeisung von -5 Watt. Wahrscheinlich reicht das, um den Optimierer glauben zu lassen, es sei alles in Ordnung.

Ich werde wohl eine Bedingung einführen, dass nur gestartet wird, wenn der Speicher > 95% ist - oder so ähnlich.

Log doch mal mit, damit wir im Debug genau sehen können was passiert ist. Hast du irgendwelche Nachlaufzeiten definiert?

paresy

Genau das funktioniert leider nicht, daher kommt dann spätestens das Problem, wenn der Speicher die Leistung reduziert und der Energiemanager auf die angegebene Leistung wartet.

Beispiel:
Wenn ich 5000 W im absoluten Modus zur Verfügung habe, der Speicher mit Prio 1 nimmt 2000W, dann kommt der Verbraucher mit Prio 2 dazu und nimmt 4000W , geht der Verbraucher mit Prio 2 aus.
Tönt soweit logisch.
Jedoch habe ich dem Speicher mitgeteilt, dass er ab 60% die Energie freigeben soll und mein Speicher hat bereits 65%.
Genau das ist das Problem, diese Funktion ist wohl eher nicht gewollt oder?

Okay, wenn die Batterie nahezu voll ist, dann geht es runter, das ergibt Sinn. Aber dafür hast du ja prinzipiell die Einstellung, dass du bis X% lädst. Das X müsste man dann so wählen, dass dies vor dem Abfall liegt. Ich weiß, das bring uns zu deinem zweiten Punkt:

Hier warte ich weiterhin auf einen Debug. Wie gesagt, bei mir klappt es wie erwartet und mich würde interessieren, was bei dir anders ist.

Dort musst du jeweils den Wert für 1 bzw. mehr-phasiges Laden einstellen. Das wirkt vielleicht einfach zu trivial, aber bei 1-phasig musst du den Schalter halt aktivieren, sodass er auf „1phasig“ steht und bei mehr-phasig deaktiviert lassen, sodass er auf „3phasig“ stehen bleibt. Der Manager kennt halt nicht die Struktur deiner Variablen und du musst ihm einfach mitteilen, wie die Variable zu schalten ist.

Das kann der Energie Manager ja bereits. Man kann ja angeben „Bis X% laden“

Zeit für ein neues Update!

Ich habe tatsächlich noch ein paar Konstellationen entdeckt bei denen passive Energiespeicher ihre Energie nicht korrekt weitergegeben haben, wenn sie entsprechend voll sind. Ich hoffe also, der Bug ist jetzt gefixt. Danke für eure Rückmeldungen dazu!

Außerdem ein paar schöne neue Features:

  • Günstiges Laden: Für alle aktiven Geräte (also alles außer indirekt geschaltete Energiespeicher) könnt ihr eine Schranke angeben, sofern ihr Strompreise im Modul eingetragen habt. Wird die Schranke unterschritten, dann wird das Gerät geladen bzw. aktiviert. So könnt ihr günstigen Strom entsprechend in eure Energiespeicher oder E-Autos umleiten, auch wenn gerade keine Energie vom Dach kommt
  • Defekte Geräte werden deaktiviert: Sollte der Energie Manager festhängen und über mindestens fünf Minuten und mindestens 10 Versuche immer wieder die gleiche Schaltaktion versuchen, wird das entsprechende Gerät deaktiviert, damit der Energie Manager ohne das Gerät weitermachen kann. Damit kann ein einzelnes problematisches Gerät nicht mehr den Energie Manager lahmlegen, z.B. ein passiver Energiespeicher, der die Energie nicht annimmt oder ein defekter Akteur.

Wie immer bin ich auf euer Feedback gespannt!

2 „Gefällt mir“

@Dr.Niels
Du schreibst günstiges Laden ist neu. Habe eben das Update gemacht, kann aber die Einstellung für die Strompreisschranke nicht finden.
Im Energiemanager habe ich die Variable "Energiepreise"angegeben.


Der günstige Preis soll via Visualisierung konfiguriert werden. Dazu werden unter dem Modul neue Variablen pro Gerät angelegt, je einmal „Günstige Laufzeit: Aktiv“ und „Günstige Laufzeit: Maximaler Preis pro kWh“. Um die Variablen zu schalten musst du aktuell noch die Instanz maximieren. Zur 8.1 kommt es in der Visualisierung dann auch in der Kachel als Teil des „Glitzer“-Buttons beim nächtlichen Laden.

Danke, jetzt sind die Variablen da. :+1:

Ich kann nach dem update nicht mehr den Optimier im Backend öffnen.
@Dr.Niels Hilfeeeeeee

Konnte Konfigurationsform nicht laden
Warning: foreach() argument must be of type array|object, null given in /var/lib/symcon/modules/.store/de.symcon.energyoptimizer/EnergyManager/module.php on line 2068

Warning: foreach() argument must be of type array|object, null given in /var/lib/symcon/modules/.store/de.symcon.energyoptimizer/EnergyManager/module.php on line 2068

Warning: foreach() argument must be of type array|object, null given in /var/lib/symcon/modules/.store/de.symcon.energyoptimizer/EnergyManager/module.php on line 2068

Warning: foreach() argument must be of type array|object, null given in /var/lib/symcon/modules/.store/de.symcon.energyoptimizer/EnergyManager/module.php on line 2068

Warning: foreach() argument must be of type array|object, null given in /var/lib/symcon/modules/.store/de.symcon.energyoptimizer/EnergyManager/module.php on line 2068

Warning: foreach() argument must be of type array|object, null given in /var/lib/symcon/modules/.store/de.symcon.energyoptimizer/EnergyManager/module.php on line 2068
{"elements":[{"type":"RowLayout","items":[{"type":"Select","options":[{"caption":"Absolute","value":"absolute"},{"caption":"Relative","value":"relative"}],"name":"SourceMode","caption":"Mode","onChange":["EO_UIChangeSourceMode($id, $SourceMode);","EO_UIUpdateDeficitVisibility($id, $IndividualDeficitVariable, $SourceMode);"]},{"type":"NumberSpinner","name":"Hysteresis","caption":"Hysteresis","suffix":"W"}]},{"type":"Select","name":"IndividualDeficitVariable","caption":"Constellation for Surplus\/Deficit","onChange":"EO_UIUpdateDeficitVisibility($id, $IndividualDeficitVariable, $SourceMode);","options":[{"caption":"Two Variables, one for each","value":true},{"caption":"One combined Variable for both","value":false}],"visible":true},{"type":"RowLayout","items":[{"type":"SelectVariable","name":"SourceID","caption":"\u00dcberschuss (W)","validVariableTypes":[1,2]},{"type":"SelectVariable","name":"DeficitID","caption":"Deficit (W)","validVariableTypes":[1,2],"visible":false},{"type":"Select","options":[{"caption":"Surplus is positive, Deficit is negative","value":1},{"caption":"Surplus is negative, Deficit is positive","value":-1}],"name":"SourceInvert","caption":"Invert","visible":true}]},{"type":"RowLayout","items":[{"type":"Select","options":[{"caption":"On Source Change","value":0},{"caption":"With Timer","value":1}],"name":"UpdateMode","caption":"Update Mode","onChange":"EO_UIChangeUpdateMode($id, $UpdateMode);"},{"type":"NumberSpinner","name":"Interval","caption":"Interval","suffix":"seconds","minimum":0,"visible":true}]},{"type":"SelectVariable","caption":"Energy Prices (Optional)","name":"EnergyPricesID","validVariableTypes":[3]},{"type":"List","name":"Consumers","caption":"Consumers","add":true,"delete":true,"form":"return EO_UIGetConsumersForm($id, $Consumers);","columns":[{"name":"VariableID","caption":"Consumer","width":"250px","edit":{"type":"SelectVariable","validVariableTypes":[0,1,2],"requireAction":1},"add":0},{"name":"Usage","caption":"Maximum Usage","width":"150px","edit":{"type":"NumberSpinner","suffix":"W","moreDigits":true},"add":0},{"name":"CurrentUsageVariableID","caption":"Current Usage (Optional)","width":"0px","edit":{"type":"SelectVariable","validVariableTypes":[1,2]},"add":1,"visible":false},{"name":"Name","caption":"Name (Optional)","width":"auto","add":"","edit":{"type":"ValidationTextBox"}},{"name":"Condition","caption":"Condition (Optional)","width":"200px","add":"[]","edit":{"type":"SelectCondition","multi":true,"onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"}},{"name":"ConditionText","caption":"Hint for blocked by condition (Optional)","add":"","edit":{"type":"ValidationTextBox","width":"100%"},"visible":false,"save":true},{"name":"MinimumRuntime","caption":"Minimum Runtime","add":0,"edit":{"type":"NumberSpinner","suffix":" seconds","onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"},"width":"200px","visible":false},{"name":"FollowupTime","caption":"Follow-up Time","add":0,"edit":{"type":"NumberSpinner","suffix":" seconds","onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"},"width":"200px","visible":false},{"name":"ForceCondition","caption":"If minimum runtime\/follow-up time is active but condition is not fulfilled...","add":true,"edit":{"type":"Select","width":"608px","options":[{"value":true,"caption":"... stop immediately"},{"value":false,"caption":"... only stop once minimum runtime\/follow-up time has elapsed"}]},"width":"0px","visible":false},{"name":"Status","caption":"Status","width":"150px","add":"","save":false}],"values":[{"Status":"OK","rowColor":""},{"Status":"OK","rowColor":""}]},{"type":"List","name":"Batteries","caption":"Energy Storages","add":true,"delete":true,"form":"return EO_UIGetBatteryForm($id, $Batteries);","columns":[{"name":"Active","caption":"Energy Storage controllable?","width":"250px","edit":{"type":"Select","options":[{"value":true,"caption":"Controlled directly"},{"value":false,"caption":"Controlled indirectly by omitting energy"}],"onChange":"EO_UIChangeEnergyStorageActive($id, $Active);"},"add":true},{"name":"IndividualDischargeVariable","caption":"Constellation for Charge\/Discharge","width":"0px","edit":{"type":"Select","options":[{"value":true,"caption":"Two Variables, one for each"},{"value":false,"caption":"One combined Variable for both"}],"onChange":["EO_UIChangeIndividualDischargeVariable($id, $IndividualDischargeVariable);","EO_UIUpdateControlDischarge($id, $IndividualDischargeVariable, $DischargeVariableID);"]},"visible":false,"add":true},{"name":"VariableID","caption":"Charge Variable","width":"150px","edit":{"type":"SelectVariable","validVariableTypes":[0,1,2],"requireAction":1},"add":1},{"name":"DischargeVariableID","caption":"Discharge Variable","width":"0px","edit":{"type":"SelectVariable","validVariableTypes":[1,2],"onChange":"EO_UIUpdateControlDischarge($id, $IndividualDischargeVariable, $DischargeVariableID);"},"add":1,"visible":false},{"name":"Invert","caption":"Invert","width":"0px","edit":{"type":"Select","options":[{"value":1,"caption":"Discharge is negative"},{"value":-1,"caption":"Discharge is positive"}]},"visible":false,"add":1},{"name":"ControlDischarge","caption":"Control Discharge to avoid purchasing energy","width":"0px","edit":{"type":"CheckBox"},"visible":false,"add":false},{"name":"StatusVariableID","caption":"Variable for switching between charge\/discharge (Optional)","width":"0px","add":0,"edit":{"type":"SelectVariable","requiredAction":1,"onChange":"EO_UIEVUpdateBatteryStatus($id, $StatusVariableID);","width":"608px"},"visible":false},{"name":"StatusVariableChargeValue","caption":"Value for charging","width":"0px","add":0,"edit":{"type":"SelectValue"},"visible":false},{"name":"StatusVariableDischargeValue","caption":"Value for discharging","width":"0px","add":0,"edit":{"type":"SelectValue"},"visible":false},{"name":"LevelVariableID","caption":"Level Variable","width":"150px","edit":{"type":"SelectVariable","validVariableTypes":[1,2]},"add":1},{"name":"Usage","caption":"Maximum Usage","width":"100px","edit":{"type":"NumberSpinner","suffix":"W","moreDigits":true},"add":0},{"name":"CurrentUsageVariableID","caption":"Current Charge\/Feed-In (Optional)","width":"0px","edit":{"type":"SelectVariable","validVariableTypes":[1,2],"onChange":"EO_UIChangeCurrentUsageVariableID($id, $CurrentUsageVariableID);"},"add":1,"visible":false},{"name":"CurrentUsageInvert","caption":"Invert Current Charge\/Feed-In?","width":"0px","edit":{"type":"Select","options":[{"value":1,"caption":"Charge is positive, Feed-In is negative"},{"value":-1,"caption":"Charge is negative, Feed-In is positive"}]},"add":1,"visible":false},{"name":"LevelThreshholdLower","caption":"Start charging when below","width":"200px","edit":{"type":"NumberSpinner","suffix":"%","moreDigits":true,"minimum":0,"maximum":100},"add":20,"visible":false},{"name":"LevelThreshholdUpper","caption":"Stop charging when above","width":"200px","edit":{"type":"NumberSpinner","suffix":"%","moreDigits":true,"minimum":0,"maximum":100},"add":60,"visible":false},{"name":"ContinueCharging","caption":"Continue charging","width":"150px","edit":{"caption":"Continue charging when every other device is done","type":"CheckBox"},"add":false,"visible":false},{"name":"Name","caption":"Name (Optional)","width":"auto","add":"","edit":{"type":"ValidationTextBox"}},{"name":"Capacity","caption":"Capacity (Optional, required for overnight charging)","visible":false,"add":40,"edit":{"type":"NumberSpinner","minimum":0,"suffix":" kWh","moreDigits":true},"width":"150px"},{"name":"Condition","caption":"Additional Condition","width":"200px","add":"[]","edit":{"caption":"Additional Condition (Optional)","type":"SelectCondition","multi":true,"onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"}},{"name":"ConditionText","caption":"Hint for blocked by condition (Optional)","add":"","edit":{"type":"ValidationTextBox"},"visible":false,"save":true},{"name":"MinimumRuntime","caption":"Minimum Runtime","add":0,"edit":{"type":"NumberSpinner","suffix":" seconds","onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"},"width":"150px","visible":false},{"name":"FollowupTime","caption":"Follow-up Time","add":0,"edit":{"type":"NumberSpinner","suffix":" seconds","onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"},"width":"150px","visible":false},{"name":"ForceCondition","caption":"If minimum runtime\/follow-up time is active but condition is not fulfilled...","add":true,"edit":{"type":"Select","width":"608px","options":[{"value":true,"caption":"... stop immediately"},{"value":false,"caption":"... only stop once minimum runtime\/follow-up time has elapsed"}]},"width":"0px","visible":false},{"name":"Status","caption":"Status","width":"150px","add":"","save":false}],"values":[]},{"type":"List","name":"EVs","caption":"Electric Vehicles","add":true,"delete":true,"form":"return EO_UIGetEVForm($id, $EVs);","columns":[{"name":"VariableID","caption":"Power (Target)","width":"auto","add":0,"edit":{"type":"SelectVariable","validVariableTypes":[1,2],"requiredAction":1}},{"name":"Unit","caption":"Unit for Power","width":"0px","add":0,"visible":false,"edit":{"type":"Select","options":[{"value":0,"caption":"Watt"},{"value":1,"caption":"Ampere"}]}},{"name":"OnOffVariableID","caption":"On\/Off Variable (Optional)","width":"0px","add":0,"edit":{"type":"SelectVariable","validVariableTypes":[0],"requiredAction":1},"visible":false},{"name":"Phases","caption":"Phases","add":1,"edit":{"type":"Select","options":[{"caption":"1 Phases","value":1},{"caption":"2 Phases","value":2},{"caption":"3 Phases","value":3}],"onChange":"EO_UIEVUpdatePhases($id, $Phases);"},"width":"100px"},{"name":"PowerPerPhase","caption":"Setting Power","add":false,"edit":{"type":"Select","options":[{"caption":"In total","value":false},{"caption":"Per phase","value":true}]},"width":"0px","visible":false},{"name":"Switching","caption":"Supports switching between 1-phased and multi-phased charging","add":false,"edit":{"type":"CheckBox","onChange":"EO_UIEVUpdateSwitching($id, $Switching, $SwitchingVariableID);"},"width":"40px"},{"name":"EnergyPerPhase","caption":"Setting Usage","add":false,"edit":{"type":"Select","options":[{"value":false,"caption":"... in total"},{"value":false,"caption":"... per phase"}]},"width":"0px","visible":false},{"name":"SwitchingVariableID","caption":"Variable for switching phases (Optional)","width":"0px","add":0,"edit":{"type":"SelectVariable","requiredAction":1,"onChange":"EO_UIEVUpdateSwitching($id, $Switching, $SwitchingVariableID);"},"visible":false},{"name":"SwitchingVariableSinglePhaseValue","caption":"Value for single-phased charging","width":"0px","add":0,"edit":{"type":"SelectValue"},"visible":false},{"name":"SwitchingVariableMultiPhaseValue","caption":"Value for multi-phased charging","width":"0px","add":0,"edit":{"type":"SelectValue"},"visible":false},{"name":"MinChargingCurrent","caption":"Min. charging current per phase","add":6,"edit":{"type":"NumberSpinner","minimum":0,"suffix":" A"},"width":"60px"},{"name":"MaxChargingCurrent","caption":"Max. charging current per phase","add":16,"edit":{"type":"NumberSpinner","minimum":6,"suffix":" A"},"width":"60px"},{"name":"CurrentUsageVariableID","caption":"Current Usage (Optional)","width":"0px","edit":{"type":"SelectVariable","validVariableTypes":[1,2]},"add":1,"visible":false},{"name":"Name","caption":"Name (Optional)","width":"200px","add":"","edit":{"type":"ValidationTextBox"}},{"name":"Delay","caption":"Delay","add":20,"edit":{"type":"NumberSpinner","minimum":0,"suffix":" seconds"},"width":"150px"},{"name":"SoC","caption":"State of Charge","visible":false,"add":40,"edit":{"type":"SelectVariable","validVariableTypes":[1,2]},"width":"150px"},{"name":"Capacity","caption":"Capacity","visible":false,"add":40,"edit":{"type":"NumberSpinner","minimum":0,"suffix":" kWh","moreDigits":true},"width":"150px"},{"name":"EnergyGoal","caption":"Define Goal for overnight charge in...","visible":false,"add":0,"edit":{"type":"Select","onChange":"EO_UIEVUpdateEnergyGoal($id, $EnergyGoal);","options":[{"caption":"kilometers","value":0},{"caption":"percent","value":1}]}},{"name":"EnergyPerKm","caption":"Energy per km","visible":false,"add":170,"edit":{"type":"NumberSpinner","minimum":0,"suffix":" Wh","moreDigits":true},"width":"150px"},{"name":"Condition","caption":"Condition (Optional)","width":"200px","add":"[]","edit":{"type":"SelectCondition","multi":true,"onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"}},{"name":"ConditionText","caption":"Hint for blocked by condition (Optional)","add":"","edit":{"type":"ValidationTextBox","width":"100%"},"visible":false,"save":true},{"name":"MinimumRuntime","caption":"Minimum Runtime","add":0,"edit":{"type":"NumberSpinner","suffix":" seconds","onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"},"width":"200px","visible":false},{"name":"FollowupTime","caption":"Follow-up Time","add":0,"edit":{"type":"NumberSpinner","suffix":" seconds","onChange":"EO_UIUpdateForceCondition($id, $Condition, $MinimumRuntime, $FollowupTime);"},"width":"200px","visible":false},{"name":"ForceCondition","caption":"If minimum runtime\/follow-up time is active but condition is not fulfilled...","add":true,"edit":{"type":"Select","width":"608px","options":[{"value":true,"caption":"... stop immediately"},{"value":false,"caption":"... only stop once minimum runtime\/follow-up time has elapsed"}]},"width":"0px","visible":false},{"name":"Status","caption":"Status","width":"150px","add":"","save":false}],"values":[{"Status":"OK","rowColor":""}]},{"type":"ExpansionPanel","caption":"Configuration for \u00a714a","items":[{"type":"SelectVariable","name":"LimitationVariableID","caption":"Limitation Variable","validVariableTypes":[0]},{"type":"List","name":"EnergyProductionVariables","add":true,"delete":true,"columns":[{"name":"VariableID","caption":"Energy Production Variable","width":"250px","add":1,"edit":{"type":"SelectVariable","validVariableTypes":[1,2]}}]},{"type":"CheckBox","name":"Test14a","caption":"Simulate Restriction due to \u00a714a","onChange":"EO_SetTest14a($id, $Test14a);","value":false},{"type":"Tree","name":"CurrentUsage","caption":"Current Usage","rowCount":10,"columns":[{"caption":"Name","name":"name","width":"auto"},{"caption":"Usage","name":"usage","width":"250px"},{"caption":"Priority","name":"priority","width":"150px"}],"values":[{"id":2,"parent":0,"name":"Erlaubter Verbrauch (PMin) nach \u00a714a","usage":"4200 W"},{"id":4,"parent":0,"name":"Relevant f\u00fcr \u00a714a","usage":"0 W"},{"id":5,"parent":0,"name":"Testergebnis","usage":"Einschr\u00e4nkung nicht aktiv","rowColor":"#DFDFDF"},{"id":6,"parent":0,"name":"Nicht relevant f\u00fcr \u00a714a","usage":"781 W"},{"id":10,"parent":6,"name":"Poolw\u00e4rmepumpe","usage":"777 W \/ 750 W","priority":0},{"id":11,"parent":4,"name":"Wallbox","usage":"0 W \/ 11040 W","priority":1},{"id":12,"parent":6,"name":"Warmwasser","usage":"4 W \/ 625 W","priority":2}]}]}],"status":[{"code":104,"caption":"No source selected.","icon":"inactive"},{"code":200,"caption":"Selected source variable does not exist.","icon":"error"},{"code":201,"caption":"Selected source variable must be of type integer or float.","icon":"error"},{"code":202,"caption":"All device variables must be of type boolean\/integer\/float.","icon":"error"},{"code":203,"caption":"All device variables must have actions.","icon":"error"},{"code":204,"caption":"The consumer list is empty.","icon":"error"},{"code":205,"caption":"Selected deficit variable does not exist.","icon":"error"},{"code":206,"caption":"Selected deficit variable must be of type integer or float.","icon":"error"}]} (Code: -32603)

Auch ein reboot hat nicht geholfen.

Ah, scheinbar ist deine Variable für Energiepreise nicht im richtigen Format. Das sollte ich auf jeden Fall noch abfangen… Bis dahin kannst du dir mit einem kleinen Skript helfen und die Variable für Energiepreise rausnehmen. Da die Variable sowieso im falschen Format ist, wird die sowieso nicht verwendet :wink:

$energyManagerID = 12345;
IPS_SetProperty($energyManagerID, 'EnergyPricesID', 1);
IPS_ApplyChanges($energyManagerID);

Ist jetzt nicht getestet, aber danach sollte es wieder laufen.

1 „Gefällt mir“

Leider komme ich immer erst nach Hause wenn die Sonne nicht mehr scheint :sunglasses:

Mit meinem Testaufbau komme ich jedoch nun zu einem positiven Ergebnis, so dass ich den Energiemanager gerne wieder in den Live-Betrieb nehmen werde.
Ich habe im absoluten und im relativen Modus getestet.
Jetzt ist gar der relative Modus gut zu gebrauchen, vorher spielte der ‚nicht geregelte Speicher‘ dem Energiemanager einen Streich, wenn er das Netz stützte und dieser nichts davon mitbekam, weil immer noch Null-Einspeisung vorhanden war.

Danke Dir Nils. Das hat geholfen.

Meine Preisvariable hatte ich irgendwann mal selber angelegt… und dann eingebunden.