Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. E3DC Hauskraftwerk steuern

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.0k

E3DC Hauskraftwerk steuern

Geplant Angeheftet Gesperrt Verschoben JavaScript
3.5k Beiträge 70 Kommentatoren 1.6m Aufrufe 61 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Modulo-N

    @arnod
    Ich hatte den Fehler gerade wieder und habe mir mal die Werte i und j sowie das Array ausgeben lassen. Das Array (siehe Anhang) hatte nur 24 Einträge (0 - 23) und somit gab es bei i=22 und j=2 erwartungsgemäß einen Indexfehler...
    Die 24 Einträge sind die Einträge von heute, die von morgen fehlen (noch). Vielleicht hilft dir das bei der Fehlersuche.

    Gruß

    Michael
    Array

    M Offline
    M Offline
    Modulo-N
    schrieb am zuletzt editiert von
    #2995

    Ich denke, diese Zeile ist problematisch:

        for (let i = 0; i < datenTibberLink48h.length; i++) {
    

    Da in der Prozedur ja noch j addiert wird und j nach oben durch ladezeit_h beschränkt wird, kommt es da zu Indexfehlern, wenn sich i dem Ende des Arrays nähert.

    Eine Anpassung in

        for (let i = 0; i < datenTibberLink48h.length - ladezeit_h; i++) {
    

    könnte das verhindern. Und da du ohnehin nach einem Block der Länge ladezeit_h suchst, wirst du in den dann verbleibenden letzten Einträgen des Arrays ohnehin nicht mehr fündig werden...

    A 1 Antwort Letzte Antwort
    0
    • M Modulo-N

      Ich denke, diese Zeile ist problematisch:

          for (let i = 0; i < datenTibberLink48h.length; i++) {
      

      Da in der Prozedur ja noch j addiert wird und j nach oben durch ladezeit_h beschränkt wird, kommt es da zu Indexfehlern, wenn sich i dem Ende des Arrays nähert.

      Eine Anpassung in

          for (let i = 0; i < datenTibberLink48h.length - ladezeit_h; i++) {
      

      könnte das verhindern. Und da du ohnehin nach einem Block der Länge ladezeit_h suchst, wirst du in den dann verbleibenden letzten Einträgen des Arrays ohnehin nicht mehr fündig werden...

      A Offline
      A Offline
      ArnoD
      schrieb am zuletzt editiert von
      #2996

      @modulo-n
      Absolut richtig und deine Lösung ist auch richtig, Danke.
      Bis zur Version 1.3.1 war das auch so, da hatte ich aber einen anderen Fehler drin und bei der Korrektur dann anscheinend zu viel gelöscht.

      Vielen Dank für die Fehlersuche :-)

      1 Antwort Letzte Antwort
      0
      • A Offline
        A Offline
        ArnoD
        schrieb am zuletzt editiert von
        #2997

        Tibber Skript,
        Version: 1.3.3 auf Github hochgeladen.

        Änderungen:

        • Fehler in der Funktion bestLoadTime() behoben, danke an Modulo-N
        • Fehler bei der Entladesperre behoben.
        • kleinere Optimierungen
        M 1 Antwort Letzte Antwort
        1
        • A ArnoD

          Tibber Skript,
          Version: 1.3.3 auf Github hochgeladen.

          Änderungen:

          • Fehler in der Funktion bestLoadTime() behoben, danke an Modulo-N
          • Fehler bei der Entladesperre behoben.
          • kleinere Optimierungen
          M Offline
          M Offline
          Modulo-N
          schrieb am zuletzt editiert von Modulo-N
          #2998

          @arnod
          Jetzt gibt es einen neuen Fehler bei

                  const diffBesteReichweiteLadezeit_h = (dateBesteReichweiteLadezeit_alt.getTime()-dateBesteReichweiteLadezeit.getTime())/ (1000 * 60 * 60)
                  dateBesteReichweiteLadezeit_alt = dateBesteReichweiteLadezeit;
          

          in tibberSteuerungHauskraftwerk

          dataBesteReichweiteLadezeit_alt ist wohl in der ersten Zeile noch undefiniert und damit kann .getTime nicht ausgeführt werden...

          Die Initiierung erfolgt in

               let hoherSchwellwert = 0, niedrigerSchwellwert = 0, peakSchwellwert = 0,dateBesteReichweiteLadezeit_alt = null;
          

          und sollte ggf. mit einem Dummy vorbelegt werden... ich kenne die Logik nicht genau, aber ich habe mal den Wert mit dem aktuellen Datum belegt und der Fehler ist weg...

                    let hoherSchwellwert = 0, niedrigerSchwellwert = 0, peakSchwellwert = 0
                    let dateBesteReichweiteLadezeit_alt = new Date();
          
          A 1 Antwort Letzte Antwort
          0
          • M Modulo-N

            @arnod
            Jetzt gibt es einen neuen Fehler bei

                    const diffBesteReichweiteLadezeit_h = (dateBesteReichweiteLadezeit_alt.getTime()-dateBesteReichweiteLadezeit.getTime())/ (1000 * 60 * 60)
                    dateBesteReichweiteLadezeit_alt = dateBesteReichweiteLadezeit;
            

            in tibberSteuerungHauskraftwerk

            dataBesteReichweiteLadezeit_alt ist wohl in der ersten Zeile noch undefiniert und damit kann .getTime nicht ausgeführt werden...

            Die Initiierung erfolgt in

                 let hoherSchwellwert = 0, niedrigerSchwellwert = 0, peakSchwellwert = 0,dateBesteReichweiteLadezeit_alt = null;
            

            und sollte ggf. mit einem Dummy vorbelegt werden... ich kenne die Logik nicht genau, aber ich habe mal den Wert mit dem aktuellen Datum belegt und der Fehler ist weg...

                      let hoherSchwellwert = 0, niedrigerSchwellwert = 0, peakSchwellwert = 0
                      let dateBesteReichweiteLadezeit_alt = new Date();
            
            A Offline
            A Offline
            ArnoD
            schrieb am zuletzt editiert von
            #2999

            @modulo-n
            Du hast meinen Fehler richtig korrigiert und ich werde es so übernehmen.
            Habe aber gerade noch einen Fehler in der Funktion bestLoadTime() wo ich erst die Ursache finden muss und danach lade ich eine neue Version auf Github hoch.

            1 Antwort Letzte Antwort
            0
            • A Offline
              A Offline
              ArnoD
              schrieb am zuletzt editiert von
              #3000

              Tibber Skript,
              Version: 1.3.4 auf Github hochgeladen.

              Änderungen:

              • Fehler das die Variable "dataBesteReichweiteLadezeit_alt" bei der Deklaration falsch initialisiert wurde, danke an Modulo-N.
              • Async bei der Funktion bestLoadTime() entfernt.
              1 Antwort Letzte Antwort
              1
              • A Offline
                A Offline
                ArnoD
                schrieb am zuletzt editiert von
                #3001

                Tibber Skript,
                Version: 1.3.5 auf Github hochgeladen.

                Änderungen:

                • Fehler das sich die Entladesperre immer aus und einschaltet behoben.
                • Berechnung Batteriepreis optimiert.
                M 1 Antwort Letzte Antwort
                1
                • A ArnoD

                  Tibber Skript,
                  Version: 1.3.5 auf Github hochgeladen.

                  Änderungen:

                  • Fehler das sich die Entladesperre immer aus und einschaltet behoben.
                  • Berechnung Batteriepreis optimiert.
                  M Offline
                  M Offline
                  Modulo-N
                  schrieb am zuletzt editiert von Modulo-N
                  #3002

                  @arnod
                  Hi Arno... macht richtig Spaß, beim Debuggen zu helfen.

                      if (billigsteZeit) {
                          return new Date(billigsteZeit);
                      } else {
                          log(`function bestLoadTime: Kein Eintrag innerhalb des angegebenen Zeitraums gefunden`, 'error');
                      }
                  

                  Hier verbirgt sich auch noch eine kleine Falle, die mir heute Nacht das Log zugemüllt hat... Wenn keine billigsteZeit gefunden wurde, gibt die Funktion nix zurück und das erzeugt beim Aufrufer ein Problem, wenn dann <object>.getTime aufgerufen wird.
                  Mir fehlt allerdings eine Idee, was in diesem Fall ein sinnvoller Rückgabewert wäre, denn im gesamten Skript jeweils eine Überprüfung nachzuziehen, ob bestLoadTime() ein Date-Objekt geliefert hat, erscheint mir mühselig.
                  Die aktuelle Zeit zurückzugeben scheidet zumindest mal aus, weil dann das Skript ja sofort mit dem Laden beginnt.

                  Idee (nun also doch): Vielleicht sollte man einfach ein Datum-Objekt "aus der Zukunft" liefern, also z.B. now+48h. Das hätte den Charme, dass a) ein gültiges Objekt zurückkommt, mit dem das Skript arbeiten kann ( => Lade ich halt in 48h, es sei denn, es kommt dann vielleicht zwischenzeitlich was Günstigeres...) und b) das Laden tatsächlich unterbleibt, bis bestLoadTime() dann wirklich was Passendes in den "neuen" Tibberdaten findet.

                  Mein Vorschlag:

                      if (billigsteZeit) {
                          return new Date(billigsteZeit);
                      } else {
                          log(`function bestLoadTime: Kein Eintrag innerhalb des angegebenen Zeitraums gefunden`, 'error');
                          return new Date(new Date().getTime() + 48 * 60 * 60 * 1000); 
                      }
                  
                  1 Antwort Letzte Antwort
                  0
                  • A Offline
                    A Offline
                    ArnoD
                    schrieb am zuletzt editiert von
                    #3003

                    @modulo-n
                    Das ist merkwürdig, eigentlich müsste immer ein "billigsteZeit" gefunden werden, außer es gibt keine Tibber Preisdaten.
                    Hast du die neuste Version ohne async-Funktion bestLoadTime() ?
                    Diesen Fehler hatte ich gestern auch und konnte aber nicht herausfinden warum.
                    Wenn ich eine LOG Zeile vor "if (billigsteZeit)" einfüge, dann enthält die Variable "billigsteZeit" = null
                    Wenn ich dann aber in der for-Schleife die Variable "billigsteZeit" über einen log Eintrag zusätzlich abfrage, enthält diese ein Datum und alles funktioniert.

                    Das muss ich mir heute wenn ich daheim bin noch einmal ansehen.

                    M 1 Antwort Letzte Antwort
                    0
                    • A ArnoD

                      @modulo-n
                      Das ist merkwürdig, eigentlich müsste immer ein "billigsteZeit" gefunden werden, außer es gibt keine Tibber Preisdaten.
                      Hast du die neuste Version ohne async-Funktion bestLoadTime() ?
                      Diesen Fehler hatte ich gestern auch und konnte aber nicht herausfinden warum.
                      Wenn ich eine LOG Zeile vor "if (billigsteZeit)" einfüge, dann enthält die Variable "billigsteZeit" = null
                      Wenn ich dann aber in der for-Schleife die Variable "billigsteZeit" über einen log Eintrag zusätzlich abfrage, enthält diese ein Datum und alles funktioniert.

                      Das muss ich mir heute wenn ich daheim bin noch einmal ansehen.

                      M Offline
                      M Offline
                      Modulo-N
                      schrieb am zuletzt editiert von
                      #3004

                      @arnod
                      Ich kann es mir auch nur so erklären, dass entweder keine Tibberdaten da waren... oder kein Block gefunden wurde.
                      Da der billigste Blockpreis ja auf infinity gesetzt ist rutscht das Skript ja automatisch in die Zuweisung einer billigsten Zeit, sobald überhaupt ein Blockpreis ermittelt werden konnte, denn egal wie hoch dieser ist, er ist < infinity und damit wird auch billigsteZeit vorbesetzt.
                      Komisch das Ganze...

                      A 1 Antwort Letzte Antwort
                      0
                      • M Modulo-N

                        @arnod
                        Ich kann es mir auch nur so erklären, dass entweder keine Tibberdaten da waren... oder kein Block gefunden wurde.
                        Da der billigste Blockpreis ja auf infinity gesetzt ist rutscht das Skript ja automatisch in die Zuweisung einer billigsten Zeit, sobald überhaupt ein Blockpreis ermittelt werden konnte, denn egal wie hoch dieser ist, er ist < infinity und damit wird auch billigsteZeit vorbesetzt.
                        Komisch das Ganze...

                        A Offline
                        A Offline
                        ArnoD
                        schrieb am zuletzt editiert von
                        #3005

                        Tibber Skript,
                        Version: 1.3.6 auf Github hochgeladen.

                        Änderungen:

                        • Neue Hysterese-Schwelle Reichweite_h von ±30 Minuten, damit geringen Schwankungen der Batterie Reichweite, nicht zu einem häufigen Wechsel zwischen Ladefreigabe true und false führen.
                        • Funktion bestLoadTime() Überprüfung array datenTibberLink48h und neue Log Ausgabe um eventuell den Fehler weiter einzugrenzen.

                        @modulo-n
                        Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
                        Kannst du mal die neue Version bei dir testen.

                        P M 2 Antworten Letzte Antwort
                        1
                        • A ArnoD

                          Tibber Skript,
                          Version: 1.3.6 auf Github hochgeladen.

                          Änderungen:

                          • Neue Hysterese-Schwelle Reichweite_h von ±30 Minuten, damit geringen Schwankungen der Batterie Reichweite, nicht zu einem häufigen Wechsel zwischen Ladefreigabe true und false führen.
                          • Funktion bestLoadTime() Überprüfung array datenTibberLink48h und neue Log Ausgabe um eventuell den Fehler weiter einzugrenzen.

                          @modulo-n
                          Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
                          Kannst du mal die neue Version bei dir testen.

                          P Offline
                          P Offline
                          psrelax
                          schrieb am zuletzt editiert von psrelax
                          #3006

                          @arnod
                          Ich bekomme gleich beim Start den Fehler:

                          function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                          

                          Jetzt etwas später erhalte ich folgendes:

                          javascript.0	00:03:00.062	error	script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                          javascript.0	00:03:00.149	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                          javascript.0	00:03:00.150	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                          javascript.0	00:04:00.103	error	script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                          javascript.0	00:04:00.107	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                          javascript.0	00:04:00.108	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                          

                          Ich geh erst einmal wieder auf die letzte Version.

                          Nachtrag -> Mit der alten Version erhalte ich den Fehler auch.

                          A 1 Antwort Letzte Antwort
                          0
                          • P psrelax

                            @arnod
                            Ich bekomme gleich beim Start den Fehler:

                            function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                            

                            Jetzt etwas später erhalte ich folgendes:

                            javascript.0	00:03:00.062	error	script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                            javascript.0	00:03:00.149	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                            javascript.0	00:03:00.150	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                            javascript.0	00:04:00.103	error	script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                            javascript.0	00:04:00.107	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                            javascript.0	00:04:00.108	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                            

                            Ich geh erst einmal wieder auf die letzte Version.

                            Nachtrag -> Mit der alten Version erhalte ich den Fehler auch.

                            A Offline
                            A Offline
                            ArnoD
                            schrieb am zuletzt editiert von
                            #3007

                            @psrelax
                            Was für ein Wert ist bei 0_userdata.0.Charge_Control.Allgemein.Autonomiezeit eingetragen?

                            P 1 Antwort Letzte Antwort
                            0
                            • A ArnoD

                              @psrelax
                              Was für ein Wert ist bei 0_userdata.0.Charge_Control.Allgemein.Autonomiezeit eingetragen?

                              P Offline
                              P Offline
                              psrelax
                              schrieb am zuletzt editiert von
                              #3008

                              @arnod
                              Jetzt ist natürlich wieder alles in Ordnung :-)
                              Hier die Log zum Zeitpunkt des Fehlers:

                              2024-11-26 00:01:00.160  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                              2024-11-26 00:02:00.145  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                              2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ************************************************************************************
                              2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerIds = 
                              2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerTarget = []
                              2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerState = []
                              2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerObjektID = []
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** minStrompreis_48h = 0.1839
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batterieKapazitaet_kWh = 15
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Batterie_SOC = 11
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Bat_W = 0
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Grid = 2111
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** prognoseLadezeitBatterie = 2
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** reichweiteBatterie = 0:10 h / 0:10 h
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batteriepreisAktiv = true
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** strompreisBatterie = 0.244
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** bruttoPreisBatterie = 0.2773
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Aktueller Preis Tibber = null
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].endLocale = undefined
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].startLocale = undefined
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].Type = undefined
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].endLocale = undefined
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].startLocale = undefined
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].Type = undefined
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.endLocale = 27.11.2024, 00:00:00
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.startLocale = 25.11.2024, 14:00:00
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.Type = peak
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert Spitzenstrompreis = 0.2614
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert hoher Strompreis = 0.23
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert niedriger Strompreis = 0.1057
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** schneeBedeckt = false
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung heute = 14.111999999999998 kWh
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung morgen = 13.4505 kWh
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** pvLeistungAusreichend = false
                              2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** eAutoLaden = false
                              2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieEntladenSperren = true
                              2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** battSperrePrio = false
                              2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieLaden = false
                              2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Status = Aktuell Strompreis zu hoch, es wird nicht geladen (aktive Phase: peak)
                              2024-11-26 00:02:00.239  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** ProgrammAblauf = 27,1,18,19,22,32,19,10,30, 
                              2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                              2024-11-26 00:02:18.814  - warn: javascript.0 (250) script.js.Tibber.Preis_Alexa_Abfrage_Erzeugung: ladescript2
                              2024-11-26 00:03:00.062  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                              2024-11-26 00:03:00.106  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Charge_Control: -==== Tibber output signal BatterieEntladesperre wurde in false geändert ====-
                              2024-11-26 00:03:00.149  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                              2024-11-26 00:03:00.150  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                              2024-11-26 00:04:00.103  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                              2024-11-26 00:04:00.107  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                              2024-11-26 00:04:00.108  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                              2024-11-26 00:05:00.105  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                              2024-11-26 00:05:00.148  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                              2024-11-26 00:05:00.149  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                              2024-11-26 00:05:39.232  - info: javascript.0 (250) Stopping script script.js.E3DC_ChargeControl.Tibber
                              

                              Das müsste das selbe sein, wie "reichweiteBatterie" und da ist etwas eingetragen.
                              Unter "Autonomiezeit" ist jetzt natürlich auch etwas eingetragen.

                              Ich könnte es heute Nacht um 00:00 Uhr noch einmal prüfen, wie letzte Nacht auch.

                              P 1 Antwort Letzte Antwort
                              0
                              • P psrelax

                                @arnod
                                Jetzt ist natürlich wieder alles in Ordnung :-)
                                Hier die Log zum Zeitpunkt des Fehlers:

                                2024-11-26 00:01:00.160  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                                2024-11-26 00:02:00.145  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                                2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ************************************************************************************
                                2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerIds = 
                                2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerTarget = []
                                2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerState = []
                                2024-11-26 00:02:00.237  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerObjektID = []
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** minStrompreis_48h = 0.1839
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batterieKapazitaet_kWh = 15
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Batterie_SOC = 11
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Bat_W = 0
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Grid = 2111
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** prognoseLadezeitBatterie = 2
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** reichweiteBatterie = 0:10 h / 0:10 h
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batteriepreisAktiv = true
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** strompreisBatterie = 0.244
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** bruttoPreisBatterie = 0.2773
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Aktueller Preis Tibber = null
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].endLocale = undefined
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].startLocale = undefined
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].Type = undefined
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].endLocale = undefined
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].startLocale = undefined
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].Type = undefined
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.endLocale = 27.11.2024, 00:00:00
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.startLocale = 25.11.2024, 14:00:00
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.Type = peak
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert Spitzenstrompreis = 0.2614
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert hoher Strompreis = 0.23
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert niedriger Strompreis = 0.1057
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** schneeBedeckt = false
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung heute = 14.111999999999998 kWh
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung morgen = 13.4505 kWh
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** pvLeistungAusreichend = false
                                2024-11-26 00:02:00.238  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** eAutoLaden = false
                                2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieEntladenSperren = true
                                2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** battSperrePrio = false
                                2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieLaden = false
                                2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Status = Aktuell Strompreis zu hoch, es wird nicht geladen (aktive Phase: peak)
                                2024-11-26 00:02:00.239  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** ProgrammAblauf = 27,1,18,19,22,32,19,10,30, 
                                2024-11-26 00:02:00.239  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                                2024-11-26 00:02:18.814  - warn: javascript.0 (250) script.js.Tibber.Preis_Alexa_Abfrage_Erzeugung: ladescript2
                                2024-11-26 00:03:00.062  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                                2024-11-26 00:03:00.106  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Charge_Control: -==== Tibber output signal BatterieEntladesperre wurde in false geändert ====-
                                2024-11-26 00:03:00.149  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                                2024-11-26 00:03:00.150  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                                2024-11-26 00:04:00.103  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                                2024-11-26 00:04:00.107  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                                2024-11-26 00:04:00.108  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                                2024-11-26 00:05:00.105  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: function pruefePVLeistung(): reichweiteStunden ist keine gültige Zahl
                                2024-11-26 00:05:00.148  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')
                                2024-11-26 00:05:00.149  - error: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                                2024-11-26 00:05:39.232  - info: javascript.0 (250) Stopping script script.js.E3DC_ChargeControl.Tibber
                                

                                Das müsste das selbe sein, wie "reichweiteBatterie" und da ist etwas eingetragen.
                                Unter "Autonomiezeit" ist jetzt natürlich auch etwas eingetragen.

                                Ich könnte es heute Nacht um 00:00 Uhr noch einmal prüfen, wie letzte Nacht auch.

                                P Offline
                                P Offline
                                psrelax
                                schrieb am zuletzt editiert von
                                #3009

                                @ArnoD
                                Keine Ahnung was das wieder war. Heut funktioniert es.

                                1 Antwort Letzte Antwort
                                0
                                • A ArnoD

                                  Tibber Skript,
                                  Version: 1.3.6 auf Github hochgeladen.

                                  Änderungen:

                                  • Neue Hysterese-Schwelle Reichweite_h von ±30 Minuten, damit geringen Schwankungen der Batterie Reichweite, nicht zu einem häufigen Wechsel zwischen Ladefreigabe true und false führen.
                                  • Funktion bestLoadTime() Überprüfung array datenTibberLink48h und neue Log Ausgabe um eventuell den Fehler weiter einzugrenzen.

                                  @modulo-n
                                  Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
                                  Kannst du mal die neue Version bei dir testen.

                                  M Offline
                                  M Offline
                                  Modulo-N
                                  schrieb am zuletzt editiert von
                                  #3010

                                  @arnod
                                  Hi Arno... Version 1.3.6 läuft seit gestern abend und das bisher fehlerfrei. Ich behalte das trotzdem mal im Auge, da die möglichen Fehlerbedingungen ja durchaus komplex sind und natürlich dann, wenn man drauf schaut, eben nicht auftreten.

                                  Gruß Michael

                                  @arnod said in E3DC Hauskraftwerk steuern:

                                  @modulo-n
                                  Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
                                  Kannst du mal die neue Version bei dir testen.

                                  M 1 Antwort Letzte Antwort
                                  0
                                  • P Offline
                                    P Offline
                                    psrelax
                                    schrieb am zuletzt editiert von
                                    #3011

                                    @ArnoD
                                    Heute war den ganzen Nachmittag die Entladesperre drin. Unter Tags lass ich es mir eingehen aber sobald ab ca. 16 Uhr kein Solar mehr kommt, sollte schon wieder entladen werden.
                                    b46e2d7a-64bd-468e-b649-26ad92526080-image.png

                                    2024-11-27 17:29:00.220  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                                    2024-11-27 17:30:00.304  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ************************************************************************************
                                    2024-11-27 17:30:00.305  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerIds = 
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerTarget = []
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerState = []
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerObjektID = []
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** minStrompreis_48h = 0.2238
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batterieKapazitaet_kWh = 15
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Batterie_SOC = 60
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Bat_W = 0
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Grid = 2692
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** prognoseLadezeitBatterie = 1
                                    2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** reichweiteBatterie = 5:56 h / 5:56 h
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batteriepreisAktiv = true
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** strompreisBatterie = 0.3497
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** bruttoPreisBatterie = 0.3974
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Aktueller Preis Tibber = 0.3173
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].endLocale = 28.11.2024, 07:00:00
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].startLocale = 27.11.2024, 22:00:00
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].Type = normal
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].endLocale = 27.11.2024, 22:00:00
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].startLocale = 27.11.2024, 20:00:00
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].Type = high
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.endLocale = 27.11.2024, 20:00:00
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.startLocale = 27.11.2024, 00:00:00
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.Type = peak
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert Spitzenstrompreis = 0.3068
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert hoher Strompreis = 0.27
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert niedriger Strompreis = 0.1057
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** schneeBedeckt = false
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung heute = 19.761 kWh
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung morgen = 5.9639999999999995 kWh
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** pvLeistungAusreichend = false
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** eAutoLaden = false
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieEntladenSperren = true
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** battSperrePrio = false
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieLaden = false
                                    2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Status = Aktuell Strompreis zu hoch, es wird nicht geladen (aktive Phase: peak)
                                    2024-11-27 17:30:00.308  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** ProgrammAblauf = 27,1,18,18/4,19,22,32,10,30, 
                                    
                                    P 1 Antwort Letzte Antwort
                                    0
                                    • P psrelax

                                      @ArnoD
                                      Heute war den ganzen Nachmittag die Entladesperre drin. Unter Tags lass ich es mir eingehen aber sobald ab ca. 16 Uhr kein Solar mehr kommt, sollte schon wieder entladen werden.
                                      b46e2d7a-64bd-468e-b649-26ad92526080-image.png

                                      2024-11-27 17:29:00.220  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                                      2024-11-27 17:30:00.304  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ************************************************************************************
                                      2024-11-27 17:30:00.305  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerIds = 
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerTarget = []
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerState = []
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerObjektID = []
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** minStrompreis_48h = 0.2238
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batterieKapazitaet_kWh = 15
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Batterie_SOC = 60
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Bat_W = 0
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Grid = 2692
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** prognoseLadezeitBatterie = 1
                                      2024-11-27 17:30:00.307  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** reichweiteBatterie = 5:56 h / 5:56 h
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batteriepreisAktiv = true
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** strompreisBatterie = 0.3497
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** bruttoPreisBatterie = 0.3974
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Aktueller Preis Tibber = 0.3173
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].endLocale = 28.11.2024, 07:00:00
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].startLocale = 27.11.2024, 22:00:00
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].Type = normal
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].endLocale = 27.11.2024, 22:00:00
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].startLocale = 27.11.2024, 20:00:00
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].Type = high
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.endLocale = 27.11.2024, 20:00:00
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.startLocale = 27.11.2024, 00:00:00
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.Type = peak
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert Spitzenstrompreis = 0.3068
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert hoher Strompreis = 0.27
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert niedriger Strompreis = 0.1057
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** schneeBedeckt = false
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung heute = 19.761 kWh
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung morgen = 5.9639999999999995 kWh
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** pvLeistungAusreichend = false
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** eAutoLaden = false
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieEntladenSperren = true
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** battSperrePrio = false
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieLaden = false
                                      2024-11-27 17:30:00.308  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Status = Aktuell Strompreis zu hoch, es wird nicht geladen (aktive Phase: peak)
                                      2024-11-27 17:30:00.308  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** ProgrammAblauf = 27,1,18,18/4,19,22,32,10,30, 
                                      
                                      P Offline
                                      P Offline
                                      psrelax
                                      schrieb am zuletzt editiert von
                                      #3012

                                      @ArnoD
                                      Es wurde vorhin der Akku voll geladen und das nicht beim niedrigsten Preis.
                                      dbb3b60a-0329-4ce7-95d7-fd178484a7c1-image.png

                                      2024-11-27 22:29:00.196  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.3.6 *******************
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ************************************************************************************
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerIds = 660303319,660303332
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerTarget = ["2024-11-27T21:00:00.000Z","2024-11-28T06:00:00.000Z"]
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerState = [true,false]
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** timerObjektID = ["Laden","Laden"]
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** minStrompreis_48h = 0.2238
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batterieKapazitaet_kWh = 15
                                      2024-11-27 22:30:00.224  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Batterie_SOC = 79
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Bat_W = 8526
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Power_Grid = 10309
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** prognoseLadezeitBatterie = 1
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** reichweiteBatterie = 7:22 h / 7:22 h
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** batteriepreisAktiv = true
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** strompreisBatterie = 0.3218
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** bruttoPreisBatterie = 0.3657
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Aktueller Preis Tibber = 0.2659
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].endLocale = 28.11.2024, 10:00:00
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].startLocale = 28.11.2024, 08:00:00
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[1].Type = peak
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].endLocale = 28.11.2024, 08:00:00
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].startLocale = 28.11.2024, 07:00:00
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** naechstePhasen[0].Type = high
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.endLocale = 28.11.2024, 07:00:00
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.startLocale = 27.11.2024, 22:00:00
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** aktivePhase.Type = normal
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert Spitzenstrompreis = 0.3068
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert hoher Strompreis = 0.27
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Schwellwert niedriger Strompreis = 0.1057
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** schneeBedeckt = false
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung heute = 19.761 kWh
                                      2024-11-27 22:30:00.225  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Prognose PV-Leistung morgen = 5.9639999999999995 kWh
                                      2024-11-27 22:30:00.226  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** pvLeistungAusreichend = false
                                      2024-11-27 22:30:00.226  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** eAutoLaden = true
                                      2024-11-27 22:30:00.226  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieEntladenSperren = true
                                      2024-11-27 22:30:00.226  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** battSperrePrio = false
                                      2024-11-27 22:30:00.226  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** BatterieLaden = true
                                      2024-11-27 22:30:00.226  - info: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** Status = warte auf Normalpreisphase von 22:00 Uhr bis 07:00 Uhr (aktive Phase: high)
                                      2024-11-27 22:30:00.226  - warn: javascript.0 (250) script.js.E3DC_ChargeControl.Tibber: ** ProgrammAblauf = 27,1,18,18/4,19,21,19,12,12/8, 
                                      
                                      1 Antwort Letzte Antwort
                                      0
                                      • M Modulo-N

                                        @arnod
                                        Hi Arno... Version 1.3.6 läuft seit gestern abend und das bisher fehlerfrei. Ich behalte das trotzdem mal im Auge, da die möglichen Fehlerbedingungen ja durchaus komplex sind und natürlich dann, wenn man drauf schaut, eben nicht auftreten.

                                        Gruß Michael

                                        @arnod said in E3DC Hauskraftwerk steuern:

                                        @modulo-n
                                        Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
                                        Kannst du mal die neue Version bei dir testen.

                                        M Offline
                                        M Offline
                                        Modulo-N
                                        schrieb am zuletzt editiert von
                                        #3013

                                        Und prompt kommen wieder Fehler... allerdings lässt sich der bestLoadTime-Fehler

                                        2024-11-28 02:49:00.357 - error: javascript.0 (6178) script.js.E3DC-Control.Tibber-1_3_6: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')

                                        ziemlich gut eingrenzen, da es in der Funktion nur ein einziges 'startsAt' gibt und zwar hier:

                                            for (let i = 0; i < datenTibberLink48h.length - ladezeit_h; i++) {
                                                const startEntry = datenTibberLink48h[i];
                                                const startTime = new Date(startEntry.startsAt);
                                        

                                        Der Aufruf findet also keinen gültigen Eintrag, entweder weil der Index i nicht stimmt oder einfach kein Eintrag an Stelle i da ist.

                                        Der andere Fehler dürfte wieder ein Folgefehler sein, denn er kommt jeweils direkt nach einem bestLoadTime Fehler:

                                        2024-11-28 02:49:00.363 - error: javascript.0 (6178) script.js.E3DC-Control.Tibber-1_3_6: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')

                                        Ich hab jetzt mal folgendes ergänzt:

                                            for (let i = 0; i < datenTibberLink48h.length - ladezeit_h; i++) {
                                                let startEntry = datenTibberLink48h[i];
                                                let startTime = new Date(new Date().getTime() + 48 * 60 * 60 * 1000);;
                                                if (!startEntry) 
                                                {
                                                    log('Keinen Eintrag für i='+i+' in den Tibberdaten48h gefunden','error');
                                                    }
                                                else
                                                {
                                                  startTime = new Date(startEntry.startsAt);
                                                }
                                        

                                        Mit der Vorbelegung von startTime auf einen Wert in 48h wird im Fehlerfall die j-Schleife definitiv übersprungen. Auf jeden Fall sehe ich dann auch den Wert für i (bzw. die Werte, falls es mehrere sein sollten.)

                                        @modulo-n said in E3DC Hauskraftwerk steuern:

                                        @arnod
                                        Hi Arno... Version 1.3.6 läuft seit gestern abend und das bisher fehlerfrei. Ich behalte das trotzdem mal im Auge, da die möglichen Fehlerbedingungen ja durchaus komplex sind und natürlich dann, wenn man drauf schaut, eben nicht auftreten.

                                        Gruß Michael

                                        @arnod said in E3DC Hauskraftwerk steuern:

                                        @modulo-n
                                        Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
                                        Kannst du mal die neue Version bei dir testen.

                                        1 Antwort Letzte Antwort
                                        0
                                        • A Offline
                                          A Offline
                                          ArnoD
                                          schrieb am zuletzt editiert von
                                          #3014

                                          @psrelax sagte in E3DC Hauskraftwerk steuern:

                                          Heute war den ganzen Nachmittag die Entladesperre drin. Unter Tags lass ich es mir eingehen aber sobald ab ca. 16 Uhr kein Solar mehr kommt, sollte schon wieder entladen werden.

                                          Das ist aber auch richtig. Der Batteriepreis war bei 0.3974 und der Tibber Preis war günstiger bei 0.3173, warum soll dann der teure Strom aus der Batterie verwendet werden? Das ergibt nur Sinn, wenn mit PV-Leistung gerechnet wird und man Platz schaffen will.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          435

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe