Energie Manager (ehemals Energieverbrauch Optimierer)

irgendwie funktioniert bei mir seit dem letzten update das modul nicht mehr bekomme dauernt diese Meldung:

Neu installieren hilft auch nichts

und wenn ich den optimierer öffne bekomme ich nur diese Meldung:

Konnte Konfigurationsform nicht laden
Warning: foreach() argument must be of type array|object, float given in C:\ProgramData\Symcon\modules.store\de.symcon.energyoptimizer\EnergyManager\module.php on line 2068

Warning: foreach() argument must be of type array|object, float given in C:\ProgramData\Symcon\modules.store\de.symcon.energyoptimizer\EnergyManager\module.php on line 2068

Warning: foreach() argument must be of type array|object, float given in C:\ProgramData\Symcon\modules.store\de.symcon.energyoptimizer\EnergyManager\module.php on line 2068

Warning: foreach() argument must be of type array|object, float given in C:\ProgramData\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“:},{„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“:[{„Status“:„OK“,„rowColor“:„“}]},{„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“:„7560 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“:10,„parent“:4,„name“:„PV Speicher“,„usage“:„0 W / 5000 W“,„priority“:0},{„id“:11,„parent“:4,„name“:„Wallbox“,„usage“:„0 W / 11040 W“,„priority“:1}]}]}],„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)

Schau weiter oben, du hast denselben Fehler wie oben die Abhilfe bereits steht…

das half bei mir auch.
Danke für den Tipp
Gruß Stefan

Das erklärt es. Die Variable muss den Strom in einem JSON-Format anbieten, welches die Preisentwicklung über Zeit beinhaltet. Das wird so beispielsweise von unserem Energiepreis-Modul aus dem Module Store angeboten. Wenn du etwas eigenes basteln möchtest, müsstest du dich also danach richten.

Moin Niels,
welches Modul meinst du ? Ich kann nichts mit den Namen „Energiepreis“ oder „Energiepreis-Modul“ im Store oder im Forum finden. Oder meinst du das „Strompreis (Vorhersage) Modul“ ?

Was macht denn die Variable mit dem Preis im Energie Manager ? Wäre es nicht denkbar, hier eine einfache Varaible mit hinterlegtem Preis anzugeben wo man im Energiemanager dann nur Schwellwerte definiert ? Ein Json und ene Preisentwicklung ist doch etwas unnötig für eine "einfache " Steuerung oder ?

Vielleicht hast du ja eine bessere Idee, aber ich schildere Dir mal mein zukünftigen Anwendungsfall im Herbst / Winter.

Stromabieter: Oktopus Energie
Hier gibt es neben den dynamischen Tarifen wie bei Tibber auch 2 weitere wie „Autostrom Traif“ oder „Wärmepumpen Tarif“ wo man 1 oder mehrere Zeitfenster mit einem stark reduziertem Preis hat.

Beispiel mit meinem Autostrom Traif „Intelligent Go“

image

image

Ich habe somit 2 Zeitfenster. Einen billigen Slot von 0-5 Uhr morgens und einen teureren für die restliche Zeit. Ich hätte hierfür ganz einfach eine Variable angeben wollen, die im Hintergrund über einen Timer je nach Uhrzeit mit dem einen oder anderen Preis beschrieben wird.
Es wäre jetzt toll, wenn man den Energie Optimierer nun einfach mit der Variable füttern könnte und ein Schwellwert für einen Preis zum laden des Energiespeichers oder starten der Wärmepumpe angeben könnte. Ohne ein Json und Preisentwicklung im Hintergrund, was vermutlich nur für einen reinen dynamischen Stromtraif Sinnvoll wäre.

EDIT: Ich sehe gerade es gibt eine API für Octopus Energy :slight_smile: Wäre doch Mega wenn die in eurem Strompreis Vorhersage Modul integriert werden könnte …zwinker zwinker :loveips:

Gruß Christian

Hi Christian,

da ich beim gleich Anbieter bin (mit dem gleichen Tarif) werden wir bald das Modul genau dafür erweitern, damit alles weiter im Standard bleiben kann. Octopus wird ja sicher in Zukunft noch anderen Tarifmodelle anbieten und dann ist der Weg über die API vermutlich der cleverste :slight_smile:

paresy

1 „Gefällt mir“

ICH LIEBE EUCH :loveips: PERFEKT !

Habe gerade nur schon mal so selber etwas geschaut. (Mein Zähler ist zwar schon eingebaut aber noch nicht final angemeldet, daher hänge ich "noch " im standard Preis ohne Zählerwerte. Aber die Abfrage per API funktioniert. Dann lege ich mich mal zurück und lass euch machen :slight_smile: (Kann eh nicht selber programmieren)

1 „Gefällt mir“

So, wir gehen auf das Finale der aktuellen Energie Manager „Staffel“ zu :slight_smile:

Gerade kam die nächste Version online. Darin ist der Fix für die problematischen Preisvariablen.

Außerdem könnt ihr für Energiespeicher und E-Autos jetzt Vorlagen laden. Diese beinhalten dann die ganzen Parameter für die Konfiguration und ihr müsst euch nicht selbst durch die ganzen vielfältigen Parameter der Geräte arbeiten. Da werden auch noch mehr Vorlagen kommen, damit hoffentlich alle üblichen Geräte schnell und einfach einrichtbar werden. Insbesondere die Energiespeicher haben zugegebenerweise auch noch keine einzige Vorlage.

Letztlich ist auch eine Unterstützung für §9 EEG hinzu gekommen, damit bei entsprechendem Bedarf eure Energieproduktion konform gedrosselt werden kann.

Das wären soweit auch alle großen Features für die aktuelle Entwicklungsphase. Jetzt steht natürlich noch eine Ladung Feinschliff an, aber die großen Dinge sind nach aktuellem Stand drin. Falls euch also noch etwas fehlt, dann meldet euch gerne mal.

Damit geht es ab nächster Woche wohl mit meinem Lieblingsthema los: Dokumentation schreiben

2 „Gefällt mir“

Oh, finale Version. Es ist viel geworden, keine Frage und vielen Dank an der Stelle. Der Energiespeicher und auch die Wallbox lassen sich jetzt sehr gut managen, wie es der Name verspricht.
Ist er jetzt fertig? Wird er überhaupt je fertig werden?

Ich hätte da noch die getrennten Bedingungen für Be- und Entladen des Speichers.

Man kann immer optimieren, aber wir wollen ja auch mal wieder eine Stable Version raus bringen :slight_smile:

Somit kommt jetzt erstmal Doku, Bugfixes und evtl. ein paar weitere Vorlagen. Aber von den Funktionen sind wir soweit für die nächste Stable Version zufrieden.

paresy

3 „Gefällt mir“

Hört sich gut an. Kurzer Tipp wo man diese findet ? Hab gerade mal das Update vom Modul gemacht und wollte mal schauen, aber finde keine Vorlagen bei Verbrauchern oder E-Fahrzeugen.

Wenn man bei Vorlagen unterstützen kann, da User hier ja schon unterschiedlichste Hersteller und Gerätschaften nutzten, sagt ruhig bescheid wie und wo.

  • Ich nutze z.B. einen SMA Sunny Island Cluster, welchen ich aber „noch“ nicht im Optimierer eingebunden habe, da es aktuell im Sommer noch irrelevant ist.
  • Fürs Auto eine ganz normale Wallbox steuerbar per Modbus in Ampere mit Nachlaufzeit.
  • Eine Brauchwasserwärmepumpe mit einfacher „PV_freigabe“ um die Temperatur zu erhöhen mit Mindestlaufzeit und Nachlaufzeit.
  • Eine Poolfürmepumpe per einfachem Swischenstecker mit Mindestlaufzeit und Nachlaufzeit.

Was in Zukunft noch toll wäre, ohne extra in die Doku auf einer extra Seite abspringen zu müssen, die Dokumentation einzelner Felder per Mousover einzublenden. Überall wo ein kleines „Information“ Logo vorhanden ist, drüber hovern und schon bekommt man eine kurze Beschreibung für das Feld.

Mokup:

1 „Gefällt mir“

Hi,
hab auf einer Anlage den Update gemacht am Freitag Nachmittag.

Unbemerkt hat sich dann der Heizstab von Automatik auf AKTIV gestellt.

Das fiel dem Kunden erst kurz vor Mitternacht auf, da waren leider schon über 20kwh aus der Batterie verbruzelt. Die Begeisterung war überschaubar.

Er ist sicher dass er nicht umgestellt hat und ich weiss dass ich nicht umgestellt habe.
Da ich leider die Aufzeichnung über den Modus noch nicht am Start hatte, kann ich nicht sagen wann exakt da geschalten wurde und ob es direkt mit der neuesten Version des Moduls zusammen hing oder ich die Ghost Busters brauche.

Ich hatte dann erstmal alles vom Energiemanager auf Inaktiv gestellt.
Bisher kam es nicht mehr vor. Die Tests heute haben gut geklappt was ich feststellen konnte.

Hatte den Effekt noch jemand?

Merci Seppm

1 „Gefällt mir“

ich hatte vor 2 Stunden den gleichen Effekt, bei einem der Ladepunkte.
Zuerst auf Automatik und alles lief normal und ca 30 min später dann plötzlich Manuell/Aktiv mit minimaler Leistung.
Und als Bedingung steht nun „Deaktiviert“ Obwohl das Gerät den aktuellen Verbrauch regelmässig sendet.


Grüße

1 „Gefällt mir“

ah gut zu wissen, dann braucht es vlt. nicht die Ghost Busters sondern doch unseren @Dr.Niels :slight_smile:

Ich will das so sehr vermeiden dass es nochmal passiert dass ich mir nun schon Push schicken lasse wenn es auf Aktiv geht und grad ein Skript baue dass mir wenn Aktiv spätestens nach 1 h abschaltet.

cheers Seppm

1 „Gefällt mir“

oh, es geht noch besser.
Hab eben mein Skript getestet (es schaltet wenn 1 Min auf Akiv war, dann auf inaktiv, macht es auch), das hat nur leider den Energie-Manager nicht interessiert.

Denn der Heizstab macht lustig weiter mit 3300 Watt. Modus steht auf Inaktiv aber es schaltet nicht ab. Das ist auch neu.

Jetzt musste ich den per Hand von 100% auf 0% runterdimmen.
Ergo muss das auch noch ins Skript …

EDIT:
Noch ein paar Tests ergaben,
ich kann es reproduzieren dass wenn von Aktiv auf Inaktiv geschalten wird, geht der Dimmer nicht auf 0, sondern bleibt bei 100%

Wenn ich von Aktiv nach meiner Sicherheitszeit (des Skriptes dafür) aber auf Automatik schalte, geht der Dimmer (und der Heizstab aus).

Cheers Seppm

Die Vorlagen sollten ganz oben im Konfigurationsdialog für E-Autos und Energiespeicher erscheinen. Bei der Erweiterung der Vorlagen könnt ihr bestimmt unterstützen! Dafür müssen wir mal ein schönes Konzept erarbeiten :slight_smile:

Als hätte dir jemand Zugriff auf unsere Ticket-Liste gegeben :wink: Da steht das tatsächlich drauf. Da das wiederum aber einige Anpassungen an den Formularfeldern benötigt kommt das nicht mehr mit in die aktuelle Entwicklungsphase des Energie Managers.

Es geht auch nicht um die Aktualisierung des aktuellen Verbrauchs. Das Gerät wird deaktiviert, wenn der Manager ihm über mindestens 5 Minuten und mindestens 10 Versuche immer den gleichen Befehl geschickt hat und sonst nichts anderes gemacht hat. Dann hängt der Energie Manager nämlich aufgrund des Geräts potentiell fest und nimmt es daher lieber aus der Rechnung. Es kann ja gut sein, dass das Gerät noch einwandfrei funktioniert, aber einfach falsch konfiguriert ist. Dann wartet der Energie Manager auf einen Zustand, der einfach niemals eintreten kann… Daher der Mechanismus.

Das wäre dann das Problem. Beim Schalten auf Inaktiv sollte das Gerät auf den Minimalwert geschaltet werden. Die Frage wäre, warum das bei dir nicht klappt… Kannst du mir verraten wie das entsprechende Gerät konfiguriert ist? Also sowohl die Zielvariable und deren Darstellung als auch die Konfiguration im Energie Manager selbst?

1 „Gefällt mir“

Bei mir auch das gleiche Phänomen ! Mein Auto hat über Nacht vorgestern oder irgendwann Morgens meinen ganzen Hausakku leer gesaugt. Und gestern hatte ich das Phänomen auch noch 1 oder 2 Mal. Hatte schon die Kinder in Verdacht oder dachte ich wäre doof in der Bedienung oder mein Touchbildschirm spinnt an genau dieser Stelle. Das beruhigt mich !

Das Auto ist einfach von Automatik auf Manuell gesprungen und lädt dann mit minimaler Leistung bis man es bemerkt …

Das Problem tritt erst seit dem letzten Update auf.


Hab nur so doof gefragt weil ich sie nicht sehe.

Ja, ich habe gesehen, dass der Upload nicht richtig geklappt hat, da mit einem Submodul etwas nicht klappte. Dann frage ich mich was die Version war, die hier die komischen Effekte hat… Vielleicht ist es also mit dem nächsten Update schon erledigt. Das ist nämlich jetzt online.

1 „Gefällt mir“

Kann grad wenig testen, aber mit dem noch alten Modul hat er wieder vor 10 Min von Automatisch auf Inaktiv und sofort danach auf Aktiv geschalten. Ohne Grund der hier initiiert wurde. Mein Skript hat ihn dann wieder auf automatisch gestellt nach 1 Min.

Nun ist die neue Version drauf, mal sehen.

Danke und Gruss Seppm

Das begann Freitag Mittag etwa als eine neue Version da war. Seit der gabs den Stress. Vermutlich gehts ja jetzt wieder.

Wie könnten wir denn merken das ein Update nicht richtig geklappt hat?
Denn mit diesen Energiewerten kann man ja schon auch was anstellen mal abgesehen von den Kosten. Batterie leer wäre ja zB von den Kosten noch vernachlässigbar, aber das könnte ja andere Folgen haben.
Gibts etwas das merkt wenn ein Upload nicht komplett gelungen ist?

Danke und Gruss Seppm