NEWS
E3DC Hauskraftwerk steuern
-
@bluebean
Kannst du gerne machen. -
-
@bluebean
Du hast eine Endlosschleife programmiert.
In der Funktion SummePvLeistung(), Zeile 1131 schreibst du den neuen Zählerstand:await setStateAsync(`${instanz}.${PfadEbene1}.${PfadEbene2[1]}.IstTagesverbrauch_kWh`, IstTagesverbrauch_kWh);
In Zeile 2027 reagierst du auf die Änderung und rufst die Funktion SummePvLeistung() wieder auf
if (existsState(sID_Tagesverbrauch)){ on({id: sID_Tagesverbrauch,change: "ne"}, function (obj){SummePvLeistung();}); }
Das Problem ist das die Konstante sID_Tagesverbrauch auf
${instanz}.${PfadEbene1}.${PfadEbene2[1]}.IstTagesverbrauch_kWh verweist und somit auf die gleiche Objekt-ID. -
@arnod
Cool, danke - ich hab das jetzt nochmal von vorne gemacht, keine Ahnung ob man es eleganter machen kann, aber im Grunde sollte es jetzt passen, oder?
(Jedenfalls zählt der Counter fleißig und die Fehlermeldung mit dem setState ist weg ) -
@bluebean sieht doch gut aus
-
Hallo zusammen,
Bei mir funktionieren die Zählerstände leider überhaupt nicht. Hat jemand einen Ansatz, wonach ich schauen kann? -
@malei
Welche Zählerstände meinst du? -
Die aus dem zweiten Skript auf Github.
-
@malei
Wenn du willst, dass man dir hilft, musst du schon genauer werden, wo dein Problem ist.
Ich kann sonst nur raten, was du für ein Problem hast.
Was ist das zweite Script auf Github? Es gibt dort mehr als nur zwei.
Hier geht es hauptsächlich um das Script Charge-Control, mit dem du anscheinend kein Problem hast, wenn ich dich richtig verstehe.Nachtrag: Meinst du das Script "Zaehlerstaende" ?
Da benötigst du noch zusätzliche Hardware, die von deinem Stromzähler die Werte auslesen kann.
Ich verwende da z.B den HM-ES-TX-WM von Homematic. -
In deinem ersten Post gibt es doch den Link zu Github. Ich dachte das wäre dein Projekt Dort gibt es neben Charge-Control auch einen Ordner "Zaehlerstaende" mit einem Script.
Das Script habe ich importiert. Die Objekte wurden auch angelegt, werden aber nicht gefüllt.
-
@bluebean sagte in E3DC Hauskraftwerk steuern:
@arnod
Ich bin jetzt mal auf Dein originales Script umgestiegen, mal schauen ob der Fehler dann bei mir auch kommt.
Ich hatte für mich Dein Script ja mit einem weiteren Tageszähler ergänzt, der mir die aktuell verbrauchte Energie des Hauses stellt (orientiert an Deinem LM3). Sonst keine Änderungen.
Die 1000/min entsprechen gut 16/s. Kannst Du abschätzen, wie oft Du mit dem Script pro Sekunde setState setzt?Geht es bei dem/den Tageszähler/n nicht auch um das Script Zaehlerstaende?
-
Geht es bei dem/den Tageszähler/n nicht auch um das Script Zaehlerstaende?
Nein, dort geht es um die Zähler im Script Charge-Control.
Wie bereits geschrieben benötigst du für das Script "Zaehlerstaende" noch zusätzliche Hardware, um von deinem Stromzähler vom Energieversorger die Verbrauchswerte auslesen zu können.
Man kann sich natürlich auch einen Bezugszähler, Einspeisezähler und PV-Zähler in JS programmieren.
Bei dem Script wollte ich aber die Werte für das Finanzamt haben und lese deswegen die Werte von dem Zähler des Energieversorger aus. -
Guten Tag,
ich habe gestern versucht das ganze zu installieren, musste heute aber feststellen das überhaupt nichts passiert ist. Ich bin nach der Anleitung vorgegangen und habe die ganzen Werte auch eingetragen.
Beim starten des Scripts gibt es auch Fehlermeldungen aus denen ich nicht schlau werde. Würde mich über Hilfe freuen.Vielen Dank schonmal!
-
@da_hood
bitte keine Screenshots von Code
Diese als Text in code-tags postenhttps://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1
-
@da_hood
Hi!
Ich vermute mal, wir hatten gestern schon kurz per Facebook Kontakt, kann das sein?Schau mal bitte bei Deinen ioBroker-Objekten im Pfad
0_userdata.0.Charge_Control.USER_ANPASSUNGEN
Da müssen bspw. Dein Solcast-API-Key, Ressource-Keys etc eingetragen sein, sind die korrekt hinterlegt?
Gruß, Jan
-
Den API hab ich eingetragen und die 2 „links“ zu Anlage 1 und 2 auch
-
Das mit Solcast scheint gelöst. ABer was sind das für Fehler?
18:20:20.516 error javascript.0 (470456) script.js.common.Charge_Control: TypeError: Cannot read properties of undefined (reading 'setMinutes') 18:20:20.516 error javascript.0 (470456) at MEZ_Regelzeiten (script.js.common.Charge_Control:1510:23) 18:20:20.516 error javascript.0 (470456) at ScriptStart (script.js.common.Charge_Control:152:5)
-
@da_hood
Das sieht danach aus, als ob bei dir die Astro Zeiten nicht gelesen werden können. Kontrolliere mal die Ortskoordinaten in der Konfiguration der Javascript-Instanz oder wenn du dort „Systemeinstellungen verwenden“ aktiviert hast, die Systemeinstellungen vom iobroker.Prüfe bitte auch mal die Werte
0_userdata.0.Charge_Control.Allgemein.Regelbeginn_MEZ
,0_userdata.0.Charge_Control.Allgemein.Regelende_MEZ
,0_userdata.0.Charge_Control.Allgemein.Ladeende_MEZ
ob da das Format der Uhrzeiten richtig ist also z.B. 10:00 mit Doppelpunkt und nicht 10.00.
Hatte da einen Fehler im Script, wenn die Objekte beim ersten Mal angelegt werden. -
Vielen lieben Dank!
Die Koordinaten waren leider gar nicht hinterlegt, jetzt tut sich schon mal was, bin gespannt was er morgen macht. Prognosen etc. Sind jetzt welche da, was vorher nicht der Fall war.
Regel anfang/Ende errechnet er sich doch alles selbst oder? Oder was sollte man da eintragen? Regelbeginn hat er doch ab Ladestand x% .
Eine Frage noch:
Ich habe den Compact 14, nutzbar 11,2kwh. Jetzt hatte ich bei nutzbarer Kapazität 80% eingetragen und dann hat er mit bei vollen Akku noch 8,8 kwh verbleibend angezeigt. Er zieht also scheinbar nochmal 20% ab?
Habe auch keinen Parameter im Kopf wo man hätte die Gesamtkapazität eintragen müssen -
@da_hood sagte in E3DC Hauskraftwerk steuern:
Regel anfang/Ende errechnet er sich doch alles selbst oder? Oder was sollte man da eintragen? Regelbeginn hat er doch ab Ladestand x%
Ja, richtig? Beim ersten Erstellen der Objekte schreib das Script aber falsche Werte. Wollte nur sicher gehen, dass es nicht eventuell daran liegt. In der nächsten Version ist der Fehler aber behoben.
Er zieht also scheinbar nochmal 20% ab?
Habe auch keinen Parameter im Kopf wo man hätte die Gesamtkapazität eintragen müssenDie Gesamtkapazität der Batterie wird über den e3dc-rscp Adapter direkt ausgelesen. Wenn da bereits die nutzbare Kapazität richtig übermittelt wird, musst du bei den Einstellungen 100% eintragen.