NEWS
E3DC Hauskraftwerk steuern
-
Neue Version Charge-Control auf GitHub hochgeladen.
Version: 1.5.8
Änderungen:- Es werden die wichtigsten e3dc-rscp Adaptereinstellungen geprüft und wenn diese abweichen wird im LOG eine Warnung ausgegeben.
-
@arnod beim start
und wenn ich aktualisiere erneut in skript log -
@as
Es sollte eigentlich nur einmal beim Script Start auftreten und dann das Modul luxon nachgeladen werden.
Wenn du das Skript neu startest, sollte der Fehler nicht mehr angezeigt werden.Wenn das nicht funktioniert, dann bitte mal das Modul luxon in den Instanzeinstellungen Javascript unter zusätzliche NPM-Module eintragen:
-
@arnod danke
händisches eintragen hat geholfen
jz startet es wie ver..12 -
@arnod
Bitte sag mir, ob meine Schlussfolgerung korrekt ist.Es wurde nicht geladen, da gerade genug im Akku ist, um die nächste Spitze zu überbrücken.
2024-10-14 14:00:00.193 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: ******************* Debug LOG Tibber Skript Version 1.1.13 ******************* 2024-10-14 14:00:00.193 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerIds = 365027926,365027927,416462523,416462555 2024-10-14 14:00:00.193 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerTarget = ["2024-10-13T01:01:00.118Z","2024-10-13T13:00:00.000Z","2024-10-13T22:01:00.916Z","2024-10-14T03:01:00.916Z"] 2024-10-14 14:00:00.193 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerState = [true,false,true,false] 2024-10-14 14:00:00.193 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerObjektID = ["Entladesperre","Entladesperre","Laden","Laden"] 2024-10-14 14:00:00.193 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: besteLadezeit = Spitzenpreisphase 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterEinzelpreisBlock = 0.1675 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterBlockPreis = 0.20428571428571432 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: minStrompreis_48h = 0.227 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert Preisspitze = 0.1705 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert hoher Strompreis = 0.15 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert niedriger Strompreis = 0.10 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: schneeBedeckt = false 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung heute = 11.4912 kWh 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung morgen = 33.1968 kWh 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batterieKapazitaet_kWh = 15 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Batterie_SOC = 45 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: prognoseLadezeitBatterie = 1 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: pvLeistungAusreichend = false 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: reichweiteBatterie = 2:11 h / 5:23 h 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batteriepreisAktiv = true 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: strompreisBatterie = 0.1057 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: bruttoPreisBatterie = 0.1057 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Aktueller Preis Tibber = 0.2744 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieEntladenSperren = false 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieLaden = false 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Bat_W = -2697 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Grid = -7 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: eAutoLaden = false 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteNiedrigphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null} 2024-10-14 14:00:00.194 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteHochphase = {"Startzeit":"2024-10-13T22:00:00.000Z","Endzeit":"2024-10-15T22:00:00.000Z","StartzeitLokal":"14.10.2024, 00:00:00","EndzeitLokal":"16.10.2024, 00:00:00"} 2024-10-14 14:00:00.195 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: preisPhasen = {"highPhases":[{"start":"2024-10-13T22:00:00.000Z","end":"2024-10-15T22:00:00.000Z","averagePrice":0.3054708333333333,"startLocale":"14.10.2024, 00:00:00","endLocale":"16.10.2024, 00:00:00"}],"lowPhases":[]} 2024-10-14 14:00:00.195 - [33mwarn[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: ProgrammAblauf = 25,1,2,3,4,5,6,9,11,12,29, 2024-10-14 14:00:11.940 - [33mwarn[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Batterie SOC = 44
-
@psrelax
Nein, es wurde nicht geladen, weil dein Schwellwert hoher Strompreis bei 0,15 € ist und mit Ladeverluste der Schwellwert für den Spitzenpreis dann bei 0,17 € ist.
Bedeutet es wird erst unter 0,17 € bei Bedarf geladen und alle Preise über 0,17 € auf keinen Fall geladen. -
@arnod
Du hattest aber das in deiner Beschreibung.
Wenn ich danach gehe, ist der Preis über Schwellwert hoher Preis und müsste dann so viel laden, um die Spitze zu überbrücken. -
@psrelax
Richtig, der Preis bei dir ist aber über Schwellwert Spitzenpreis, dein Schwellwert hoher Preis ist auf 0,15€ eingestellt.
Somit ist dein Preisfenster hoher Preis 0,15€ bis maximal zum Spitzenpreis 0,17€ wo noch geladen wird, wenn als Nächstes ein Spitzenpreis über 0,17 € kommt. -
@arnod
Mir tut es sehr leid aber ich komm damit nicht klar. Ich habe gedacht, ich hab es laut deiner Beschreibung verstanden. Dem ist anscheinend nicht so.Ich war der Meinung, mein letzter Screenshot bedeutet: Schwellwert hoher Preis (0,15) +Ladeverluste (0,11) = 0,26
Wenn der Strompreis höher als diese 0,26€ ist, dann wird nach dem Screenshot gehandelt.
Wir hatten heute ein Tal (0,27) und eine Spitze (0,51). Somit hätte geladen werden müssen, sofern der Akku nicht über die Spitze gereicht hätte. Da ich aber noch ein wenig SOC übrig hatte, wurde nicht geladen.Wenn meine Erklärung so nicht stimmt, weiß ich nicht, wie du mir das sonst noch beibringen kannst. Ich komm da leider nicht mit klar.
So wie ich das oben beschrieben habe, wäre mein "Haupt" -Einsatz für das Script.
-
@psrelax sagte in E3DC Hauskraftwerk steuern:
Ich war der Meinung, mein letzter Screenshot bedeutet: Schwellwert hoher Preis (0,15) +Ladeverluste (0,11) = 0,26
Wie berechnest du die Ladeverluste von 0,11 ?
-
Das ist für mich der folgende Wert:
-
@psrelax
Ok jetzt verstehe ich deine Denke.
Aber der Preis was da angezeigt wird, ist der berechnete durchschnittliche Batteriepreis + Ladeverluste.
Also bei welchem Strompreis deine Batterie geladen wurde und von den ganzen Messungen wird dann der Durchschnitt berechnet und dieser plus die Ladeverluste.Die reinen Ladeverluste werden mit der Formel
Strompreis * (1 / (systemwirkungsgrad / 100)
berechnet. -
Da ich in der Vis Anzeige den Batteriepreis wahrscheinlich nicht wirklich benötige, kann ich das gegen den Schwellwert Spitzenstrompreis austauschen, sodass dieser angezeigt wird.
Dann könntest du den berechneten Wert ablesen. -
@arnod
Irgendwie ergibt das mit dem Durchschnitte der Ladungen für mich keinen Sinn.
Ich will laden, wenn es sich lohnt. Und das ist immer wenn der nächst höhere Preis über dem aktuellen Preis+Ladeverluste ist. Ich verstehe nicht, warum aus den letzten Ladungen der Durchschnitt hierbei eine Rolle spielt.
Die Ladeverluste sollten in etwa immer gleich sein (natürlich auch abhängig von der Ladezeit).
Wenn ich jetzt ein Tal habe was Preis+Ladeverluste, niedriger ist als die nächste Spitze und ich diese mit meinem SOC nicht überbrücken kann, dann muss nach meinem Verständnis nachgeladen werden, um diese Spitze zu überbrücken. -
@psrelax
Du schmeißt gerade zwei Themen durcheinander.Der **Batterie Strompreis (wo der Durchschnitt berechnet wird) war gedacht, um zu entscheiden, wann das Entladen gesperrt werden soll.
Hat nichts mit der Entscheidung zu tun, wann geladen wird.Ich will laden, wenn es sich lohnt. Und das ist immer wenn der nächst höhere Preis über dem aktuellen Preis+Ladeverluste ist.
Das würde bedeuten, wenn der Strompreis gerade bei (übertrieben) 1€ wäre und als Nächstes der Strompreis bei 1,20 wäre, würde nach der Logik auch geladen werden. Ab einem bestimmten Preis ergibt es keinen Sinn mehr, mit der teuren Batterie zu laden.
Das kannst du aber individuell mit der Ladeschwelle hoher Strompreis einstellen.
Wenn du auch bei so hohen Strompreisen noch die Batterie laden willst, stell diesen Wert einfach auf z.B 0,28€ ein. -
@arnod
Danke für deine Geduld.
Ich versuchs jetzt mal mit einem hohen Schwellwert, wie es sich dann verhält. -
Tibber Skript,
Version: 1.1.14 auf Github hochgeladen.Änderungen:
- View Tibber geändert: Es wird jetzt der Schwellwert Spitzenstrompreis angezeigt und nicht mehr der Batteriestrompreis.
- Neue Objekt Id
0_userdata.0.TibberSkript.Anzeige_VIS.Spitzenstrompreis
- In der Funktion zur Berechnung, ob die PV-Prognose ausreicht, wurden einige Fehler korrigiert.
-
@arnod
Ich hatte heute den ganzen Tag eine Entladesperre. Sollte doch eigentlich nicht sein, oder?
2024-10-15 18:00:00.212 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: ******************* Debug LOG Tibber Skript Version 1.1.14 ******************* 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerIds = 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerTarget = [] 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerState = [] 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerObjektID = [] 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: besteLadezeit = Laden mit PV-Leistung 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterEinzelpreisBlock = 0.2861 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterBlockPreis = 0.2887 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: minStrompreis_48h = 0.2347 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert Preisspitze = 0.5682 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert hoher Strompreis = 0.50 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert niedriger Strompreis = 0.10 2024-10-15 18:00:00.213 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: schneeBedeckt = false 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung heute = 20.428800000000003 kWh 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung morgen = 39.58080000000001 kWh 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batterieKapazitaet_kWh = 15 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Batterie_SOC = 48 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: prognoseLadezeitBatterie = 1 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: pvLeistungAusreichend = false 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: reichweiteBatterie = 4:60 h / 4:60 h 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batteriepreisAktiv = true 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: strompreisBatterie = 0.2267 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: bruttoPreisBatterie = 0.2576 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Aktueller Preis Tibber = 0.3489 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieEntladenSperren = true 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieLaden = false 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Bat_W = 0 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Grid = 668 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: eAutoLaden = true 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteNiedrigphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null} 2024-10-15 18:00:00.214 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteHochphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null} 2024-10-15 18:00:00.215 - [32minfo[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: preisPhasen = {"highPhases":[],"lowPhases":[]} 2024-10-15 18:00:00.215 - [33mwarn[39m: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: ProgrammAblauf = 25,1,2,4,5,6,6,8,10,12,20,22,
Nachtrag 16.10.2024
Ich habe fast durchgehend eine Entladesperre. Was passt an meiner Einstellung nicht? -
@arnod sagte in E3DC Hauskraftwerk steuern:
Neue Version Charge-Control auf GitHub hochgeladen.
Version: 1.5.8
Änderungen:- Es werden die wichtigsten e3dc-rscp Adaptereinstellungen geprüft und wenn diese abweichen wird im LOG eine Warnung ausgegeben.
Hallo @ArnoD,
ich habe gerade das neue 1.5.8 script aktiviert und erhalte nun beim Start folgenden Fehler.script.js.Charge_Control_1_5_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}##
Könnte das an den Änderungen an den API-requests von Solcast liegen?
Der Alte Adapter funktioniert ja nicht mehr, mit Version 4.0.0 geht es dann wieder nur über die IDs ... -
Und noch eine Frage.
Ist dein Script kompatible mit der neuen Version des E3DC.RSCP adapter (1.3.x) ?
Da hat sich wohl einiges geändert.