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

  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.4k

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

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

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.
  • A Offline
    A Offline
    ArnoD
    schrieb am zuletzt editiert von
    #3438

    Neue Version Charge-Control auf GitHub hochgeladen.

    Version: 1.6.5
    Änderungen:

    • Die Logik der Funktion Ladesteuerung() wurde angepasst, um das Zusammenspiel zwischen EVCC und Charge-Control zu verbessern.
      Neue Logik:
      Die Laderegelung von Charge-Control wird jetzt angehalten, wenn: EVCC im Schnelllademodus ist (sMode_evcc === 'now') und der State vom Tibber-Skript BatterieLaden = false ist.
    P 1 Antwort Letzte Antwort
    1
    • A ArnoD

      Neue Version Charge-Control auf GitHub hochgeladen.

      Version: 1.6.5
      Änderungen:

      • Die Logik der Funktion Ladesteuerung() wurde angepasst, um das Zusammenspiel zwischen EVCC und Charge-Control zu verbessern.
        Neue Logik:
        Die Laderegelung von Charge-Control wird jetzt angehalten, wenn: EVCC im Schnelllademodus ist (sMode_evcc === 'now') und der State vom Tibber-Skript BatterieLaden = false ist.
      P Online
      P Online
      psrelax
      schrieb am zuletzt editiert von
      #3439

      @arnod
      Deine Änderungen funktionieren bei mir soweit gut. Danke fürs ändern. :-)

      Ich weiß nicht ob du am "nach Plan" laden noch dran bist aber ich habe eine für mich praktikable Lösung eingefügt, die bis jetzt ihren Dienst tut, auch wenn sie ein hässlicher Workaround ist. Ich lade sehr oft nach Plan, da hier die günstigste Zeit zum Laden verwendet wird.
      Vielleicht kannst du so etwas auch bauen, wenn mein Vorschlag über MQTT von weiter oben nicht funktionieren sollte.

      Iststand von dir:

      schedule('*/3 * * * * *', async function() {
          // Vor Regelung Skript Startdurchlauf erst abwarten  
          //log(`bCharging_evcc = ${bCharging_evcc} sMode_evcc = ${sMode_evcc}`)
          if((!bStart && bAutomatikRegelung && !bManuelleLadungBatt && !bBattTraining && (!bCharging_evcc || sMode_evcc !== 'now')) || (!bStart && !bManuelleLadungBatt && !bBattTraining && bTibberLaden)){await Ladesteuerung();}
      });
      

      Meine Änderung:

      schedule('*/3 * * * * *', async function() {
          if (bStart) return; // während Startphase nichts tun
      
          // aktuelle Ladeleistung aus EVCC holen
          const wallboxState = await getStateAsync('evcc.0.loadpoint.1.status.chargePower');
          const WallboxPower = wallboxState?.val ?? 0;
      
          // optional: Grenzwert konfigurierbar machen
          const WallboxLimit = 10500; // Watt
      
          // Debug-Ausgabe (optional)
          //if (bDebugAusgabe) logChargeControl(`EVCC Mode=${sMode_evcc}, WallboxPower=${WallboxPower}W`);
      
          // Bedingung: Ladesteuerung nur aktivieren, wenn erlaubt
          if (
              (bAutomatikRegelung && !bManuelleLadungBatt && !bBattTraining
               && (!bCharging_evcc || sMode_evcc !== 'now')
               && !(sMode_evcc === 'pv' && WallboxPower > WallboxLimit))
              ||
              (!bManuelleLadungBatt && !bBattTraining && bTibberLaden)
          ) {
              await Ladesteuerung();
          }
      });
      
      A 1 Antwort Letzte Antwort
      0
      • P psrelax

        @arnod
        Deine Änderungen funktionieren bei mir soweit gut. Danke fürs ändern. :-)

        Ich weiß nicht ob du am "nach Plan" laden noch dran bist aber ich habe eine für mich praktikable Lösung eingefügt, die bis jetzt ihren Dienst tut, auch wenn sie ein hässlicher Workaround ist. Ich lade sehr oft nach Plan, da hier die günstigste Zeit zum Laden verwendet wird.
        Vielleicht kannst du so etwas auch bauen, wenn mein Vorschlag über MQTT von weiter oben nicht funktionieren sollte.

        Iststand von dir:

        schedule('*/3 * * * * *', async function() {
            // Vor Regelung Skript Startdurchlauf erst abwarten  
            //log(`bCharging_evcc = ${bCharging_evcc} sMode_evcc = ${sMode_evcc}`)
            if((!bStart && bAutomatikRegelung && !bManuelleLadungBatt && !bBattTraining && (!bCharging_evcc || sMode_evcc !== 'now')) || (!bStart && !bManuelleLadungBatt && !bBattTraining && bTibberLaden)){await Ladesteuerung();}
        });
        

        Meine Änderung:

        schedule('*/3 * * * * *', async function() {
            if (bStart) return; // während Startphase nichts tun
        
            // aktuelle Ladeleistung aus EVCC holen
            const wallboxState = await getStateAsync('evcc.0.loadpoint.1.status.chargePower');
            const WallboxPower = wallboxState?.val ?? 0;
        
            // optional: Grenzwert konfigurierbar machen
            const WallboxLimit = 10500; // Watt
        
            // Debug-Ausgabe (optional)
            //if (bDebugAusgabe) logChargeControl(`EVCC Mode=${sMode_evcc}, WallboxPower=${WallboxPower}W`);
        
            // Bedingung: Ladesteuerung nur aktivieren, wenn erlaubt
            if (
                (bAutomatikRegelung && !bManuelleLadungBatt && !bBattTraining
                 && (!bCharging_evcc || sMode_evcc !== 'now')
                 && !(sMode_evcc === 'pv' && WallboxPower > WallboxLimit))
                ||
                (!bManuelleLadungBatt && !bBattTraining && bTibberLaden)
            ) {
                await Ladesteuerung();
            }
        });
        
        A Offline
        A Offline
        ArnoD
        schrieb am zuletzt editiert von
        #3440

        @psrelax
        Entschuldige bitte, dass ich erst jetzt antworte, aber bei mir ist die vermeintlich ruhige Zeit alles andere als ruhig. 😊

        Warum möchtest du im "pv" Modus einen Grenzwert für die Wallbox setzen? Das lässt sich doch bereits in EVCC einstellen, oder?

        P 1 Antwort Letzte Antwort
        0
        • A ArnoD

          @psrelax
          Entschuldige bitte, dass ich erst jetzt antworte, aber bei mir ist die vermeintlich ruhige Zeit alles andere als ruhig. 😊

          Warum möchtest du im "pv" Modus einen Grenzwert für die Wallbox setzen? Das lässt sich doch bereits in EVCC einstellen, oder?

          P Online
          P Online
          psrelax
          schrieb am zuletzt editiert von
          #3441

          @arnod
          Kein Problem. :-)
          Ich kann maximal mit 11KW laden. Darum habe ich den Grenzwert auf 10500KW gesetzt.
          Wenn jetzt eine Ladung per Plan startet, wird die Ladeleistung den Grenzwert überschreiten und ChargeControl wird die Laderegelung anhalten, auch wenn weiterhin PV eingestellt ist.

          Wenn ich das nicht so geändert hätte, würde bei einer Ladung nach Plan die Laderegelung nicht gestoppt, da du sowas ja bisher nicht berücksichtigen kannst.
          Das hat zur Folge, dass EVCC die Entladung des Akkus unterbindet und ChargeControl sie wieder erlaubt, usw...

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            MaLei
            schrieb am zuletzt editiert von
            #3442

            Werden in deiner Steuerung reduzierte Netzentgelte (Modul 3 § 14a EnWG) berücksichtigt bzw. kann die Steuerung entsprechend erweitert werden?

            Im Grunde müsste dann jeder die von seinem Netzbetreiber festgelegten Zeiten und Netzentgelte manuell eingeben.

            A 1 Antwort Letzte Antwort
            0
            • M MaLei

              Werden in deiner Steuerung reduzierte Netzentgelte (Modul 3 § 14a EnWG) berücksichtigt bzw. kann die Steuerung entsprechend erweitert werden?

              Im Grunde müsste dann jeder die von seinem Netzbetreiber festgelegten Zeiten und Netzentgelte manuell eingeben.

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

              @malei
              Da muss ich nichts berücksichtigen, da das automatisch durch den Stromlieferanten berücksichtigt werden muss.
              Bedeutet das Tibber je nach Modul das entsprechende Netzentgelt berechnen muss. Bei den Brutto Tibber Preisen sollte das dann auch enthalten sein.
              Testen kann ich das aber nicht, da ich noch nicht unter die neue Regelung falle und erst ab 01.01.2029 umstellen muss.

              M 1 Antwort Letzte Antwort
              0
              • A ArnoD

                @malei
                Da muss ich nichts berücksichtigen, da das automatisch durch den Stromlieferanten berücksichtigt werden muss.
                Bedeutet das Tibber je nach Modul das entsprechende Netzentgelt berechnen muss. Bei den Brutto Tibber Preisen sollte das dann auch enthalten sein.
                Testen kann ich das aber nicht, da ich noch nicht unter die neue Regelung falle und erst ab 01.01.2029 umstellen muss.

                M Offline
                M Offline
                MaLei
                schrieb am zuletzt editiert von
                #3444

                @arnod

                Ja, die Abrechnung erfolgt durch den Netzbetreiber über den Stromanbieter. Aber ich (bzw. die Steuerung) muss die Zeiten berücksichtigen. Das macht ja nicht Tibber (oder welcher Stromanbieter auch immer).

                Die Steuerung müsste bei mir z. B. jetzt im Winter immer zwischen 0 und 4 Uhr den Batteriespeicher und ggf. das Auto laden ...

                A 1 Antwort Letzte Antwort
                0
                • M MaLei

                  @arnod

                  Ja, die Abrechnung erfolgt durch den Netzbetreiber über den Stromanbieter. Aber ich (bzw. die Steuerung) muss die Zeiten berücksichtigen. Das macht ja nicht Tibber (oder welcher Stromanbieter auch immer).

                  Die Steuerung müsste bei mir z. B. jetzt im Winter immer zwischen 0 und 4 Uhr den Batteriespeicher und ggf. das Auto laden ...

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

                  @MaLei said in E3DC Hauskraftwerk steuern:

                  Die Steuerung müsste bei mir z. B. jetzt im Winter immer zwischen 0 und 4 Uhr den Batteriespeicher und ggf. das Auto laden ...

                  Wenn dann der Strompreis inklusive der Netzentgelte am günstigsten ist, wird das ja auch gemacht.

                  Aber ich (bzw. die Steuerung) muss die Zeiten berücksichtigen. Das macht ja nicht Tibber (oder welcher Stromanbieter auch immer).

                  Indirekt ja, indem der Strompreis dann ja günstiger sein müsste.

                  1 Antwort Letzte Antwort
                  0
                  • P Online
                    P Online
                    psrelax
                    schrieb am zuletzt editiert von
                    #3446

                    @ArnoD
                    Ich musste meine Diskstation neu starten und bekomme jetzt folgenden Fehler, kann aber nicht herausfinden, an was es liegt.
                    Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.

                    2025-11-20 19:50:15.394  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: *******************  Debug LOG Charge-Control  *******************
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_Offset_sunriseEnd = 1
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_minWertPrognose_kWh = 0
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_maxEntladetiefeBatterie = 100
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_Systemwirkungsgrad = 100
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_minPvLeistungTag_kWh = 3
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_maxPvLeistungTag_kWh = 100
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_KorrekturFaktor = 0
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_WirkungsgradModule = 19
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bAutomatikAnwahl =true
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bAutomatikRegelung =true
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Einstellungen =1
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Start Regelzeitraum = 06:03
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ende Regelzeitraum= 12:03
                    2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeende= 10:33
                    2025-11-20 19:50:15.792  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Unload = 100
                    2025-11-20 19:50:15.872  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeende = 95
                    2025-11-20 19:50:15.874  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeende2 = 100
                    2025-11-20 19:50:15.876  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeschwelle = 80
                    2025-11-20 19:50:15.878  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Unterer Ladekorridor = 0
                    2025-11-20 19:50:15.881  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Offset Regelbeginn = 06:00
                    2025-11-20 19:50:15.882  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Offset Regelende = 00:00
                    2025-11-20 19:50:15.884  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Offset Ladeende = 06:00
                    2025-11-20 19:50:15.885  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom min = 2
                    2025-11-20 19:50:15.886  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom Sockel = 2
                    2025-11-20 19:50:15.887  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauch für night am Donnerstag: 1520 Wh
                    2025-11-20 19:50:15.887  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Eigenverbrauch Nacht = 1520 Wh
                    2025-11-20 19:50:15.930  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Power_Home_W (Hausverbrauch & Wallbox) = 1642W
                    2025-11-20 19:50:15.931  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Batterie Leistung = -1662 W
                    2025-11-20 19:50:15.933  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: PV Leistung = 0 W
                    2025-11-20 19:50:15.933  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Speichergroesse = 17kWh 
                    2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Batterie SoC = 25 %
                    2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom_SOC_Proz= 2 %
                    2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom_SOC_erreicht = false
                    2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bNotstromVerwenden =false
                    2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bNotstromAusNetz =false
                    2025-11-20 19:50:16.017  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom_Status = 2
                    2025-11-20 19:50:16.017  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bM_Notstrom = false
                    2025-11-20 19:50:16.017  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: M_Power = 9000
                    2025-11-20 19:50:16.018  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Set_Power_Value_W = 0
                    2025-11-20 19:50:16.018  - warn: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: ProgrammAblauf = 1,6,4,7,10,34, 
                    2025-11-20 19:50:16.064  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: ueberschuss = -10642 hystereseWatt = 2000 bRegelungAktiv = false M_Power=9000
                    2025-11-20 19:50:16.360  - error: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                    2025-11-20 19:50:18.087  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: ueberschuss = -10669 hystereseWatt = 2000 bRegelungAktiv = false M_Power=9000
                    2025-11-20 19:50:18.496  - error: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                    2025-11-20 19:50:20.913  - error: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                    
                    A 1 Antwort Letzte Antwort
                    0
                    • P psrelax

                      @ArnoD
                      Ich musste meine Diskstation neu starten und bekomme jetzt folgenden Fehler, kann aber nicht herausfinden, an was es liegt.
                      Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.

                      2025-11-20 19:50:15.394  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: *******************  Debug LOG Charge-Control  *******************
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_Offset_sunriseEnd = 1
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_minWertPrognose_kWh = 0
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_maxEntladetiefeBatterie = 100
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 10_Systemwirkungsgrad = 100
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_minPvLeistungTag_kWh = 3
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_maxPvLeistungTag_kWh = 100
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_KorrekturFaktor = 0
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: 40_WirkungsgradModule = 19
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bAutomatikAnwahl =true
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bAutomatikRegelung =true
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Einstellungen =1
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Start Regelzeitraum = 06:03
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ende Regelzeitraum= 12:03
                      2025-11-20 19:50:15.395  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeende= 10:33
                      2025-11-20 19:50:15.792  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Unload = 100
                      2025-11-20 19:50:15.872  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeende = 95
                      2025-11-20 19:50:15.874  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeende2 = 100
                      2025-11-20 19:50:15.876  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Ladeschwelle = 80
                      2025-11-20 19:50:15.878  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Unterer Ladekorridor = 0
                      2025-11-20 19:50:15.881  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Offset Regelbeginn = 06:00
                      2025-11-20 19:50:15.882  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Offset Regelende = 00:00
                      2025-11-20 19:50:15.884  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Offset Ladeende = 06:00
                      2025-11-20 19:50:15.885  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom min = 2
                      2025-11-20 19:50:15.886  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom Sockel = 2
                      2025-11-20 19:50:15.887  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauch für night am Donnerstag: 1520 Wh
                      2025-11-20 19:50:15.887  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Eigenverbrauch Nacht = 1520 Wh
                      2025-11-20 19:50:15.930  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Power_Home_W (Hausverbrauch & Wallbox) = 1642W
                      2025-11-20 19:50:15.931  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Batterie Leistung = -1662 W
                      2025-11-20 19:50:15.933  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: PV Leistung = 0 W
                      2025-11-20 19:50:15.933  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Speichergroesse = 17kWh 
                      2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Batterie SoC = 25 %
                      2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom_SOC_Proz= 2 %
                      2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom_SOC_erreicht = false
                      2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bNotstromVerwenden =false
                      2025-11-20 19:50:15.975  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bNotstromAusNetz =false
                      2025-11-20 19:50:16.017  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Notstrom_Status = 2
                      2025-11-20 19:50:16.017  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: bM_Notstrom = false
                      2025-11-20 19:50:16.017  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: M_Power = 9000
                      2025-11-20 19:50:16.018  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Set_Power_Value_W = 0
                      2025-11-20 19:50:16.018  - warn: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: ProgrammAblauf = 1,6,4,7,10,34, 
                      2025-11-20 19:50:16.064  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: ueberschuss = -10642 hystereseWatt = 2000 bRegelungAktiv = false M_Power=9000
                      2025-11-20 19:50:16.360  - error: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                      2025-11-20 19:50:18.087  - info: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: ueberschuss = -10669 hystereseWatt = 2000 bRegelungAktiv = false M_Power=9000
                      2025-11-20 19:50:18.496  - error: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                      2025-11-20 19:50:20.913  - error: javascript.0 (254) script.js.E3DC_ChargeControl.Charge_Control: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                      
                      A Offline
                      A Offline
                      ArnoD
                      schrieb am zuletzt editiert von
                      #3447

                      @psrelax
                      Kommt die Meldung jedes Mal oder nur wenn sich der Batterie SOC ändert?
                      Was steht bei dir in der Objekt ID 0_userdata.0.Charge_Control.Allgemein.arrayHausverbrauchDurchschnitt ?

                      Die Fehlermeldung wird angezeigt, wenn die Objekt ID 0_userdata.0.Charge_Control.Allgemein.arrayHausverbrauchDurchschnitt für den entsprechenden Tag/Zeitintervall keinen Wert liefert, also 0 oder undefined ist und der Fallbackwert aktuelle Batterieentladeleistung auch 0 oder undefined ist, was eine sinnvolle Berechnung der Reichweite unmöglich macht.

                      Hast du das Script einmal angehalten und neu gestartet?

                      1 Antwort Letzte Antwort
                      0
                      • P Online
                        P Online
                        psrelax
                        schrieb am zuletzt editiert von
                        #3448

                        @ArnoD
                        Ich hab schon das Script neu gestartet, ein neues ChargeControl geladen, E3DC RSCP neu erstellt, die Diskstation nochmal neu gestartet.

                        Das kommt alle paar Sekunden.
                        d55f26d4-42aa-4811-a015-4fe5873ff4c3-image.png

                        Im arrayHausverbrauchDurchschnitt steht:

                        {"Montag":{"night":0,"day":0},"Dienstag":{"night":0,"day":0},"Mittwoch":{"night":0,"day":0},"Donnerstag":{"night":0,"day":0},"Freitag":{"night":0,"day":1883},"Samstag":{"night":0,"day":0},"Sonntag":{"night":0,"day":0}}
                        
                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          Modulo-N
                          schrieb zuletzt editiert von Modulo-N
                          #3449

                          @ArnoD
                          Hallo Arno,
                          ich habe nahezu exakt das gleiche Problem nach einem Neustart meines IOBroker-RaspPi (SD-Karte war abgeraucht :( ). Der oben gezeigte Fehler taucht bei mir alle 5 sec auf und auch das Array sieht fast genauso aus wie bei @psrelax ...
                          Skriptversion ist 1.6.5, Version des RSCP ist 1.4.3 ...

                          2025-11-22 10:48:36.698 - warn: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: ProgrammAblauf = 1,6,4,7,9,18,19,21,34,
                          2025-11-22 10:48:36.797 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: ueberschuss = -5222 hystereseWatt = 2000 bRegelungAktiv = false M_Power=4500
                          2025-11-22 10:48:39.237 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: ueberschuss = -5222 hystereseWatt = 2000 bRegelungAktiv = false M_Power=4500
                          2025-11-22 10:48:40.900 - error: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Verbrauchswert ist 0. Die Reichweite kann nicht berechnet werden.
                          2025-11-22 10:48:42.049 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: ******************* Debug LOG Charge-Control *******************
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 10_Offset_sunriseEnd = 60
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 10_minWertPrognose_kWh = 0
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 10_maxEntladetiefeBatterie = 90
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 10_Systemwirkungsgrad = 92
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 40_minPvLeistungTag_kWh = 3
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 40_maxPvLeistungTag_kWh = 105
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 40_KorrekturFaktor = 10
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: 40_WirkungsgradModule = 21
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: bAutomatikAnwahl =true
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: bAutomatikRegelung =true
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Einstellungen =2
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Start Regelzeitraum = 08:04
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Ende Regelzeitraum= 16:04
                          2025-11-22 10:48:42.050 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Ladeende= 15:03
                          2025-11-22 10:48:42.083 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Unload = 100
                          2025-11-22 10:48:42.090 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Ladeende = 80
                          2025-11-22 10:48:42.097 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Ladeende2 = 100
                          2025-11-22 10:48:42.142 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Ladeschwelle = 50
                          2025-11-22 10:48:42.186 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Unterer Ladekorridor = 150
                          2025-11-22 10:48:42.230 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Offset Regelbeginn = 04:00
                          2025-11-22 10:48:42.274 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Offset Regelende = 04:00
                          2025-11-22 10:48:42.318 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Offset Ladeende = 01:30
                          2025-11-22 10:48:42.362 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Notstrom min = 40
                          2025-11-22 10:48:42.406 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Notstrom Sockel = 30
                          2025-11-22 10:48:42.407 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Verbrauch für night am Samstag: 671 Wh
                          2025-11-22 10:48:42.407 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Eigenverbrauch Nacht = 671 Wh
                          2025-11-22 10:48:42.455 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Power_Home_W (Hausverbrauch & Wallbox) = 812W
                          2025-11-22 10:48:42.498 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Batterie Leistung = -735 W
                          2025-11-22 10:48:42.543 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: PV Leistung = 74 W
                          2025-11-22 10:48:42.543 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Speichergroesse = 13kWh
                          2025-11-22 10:48:42.590 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Batterie SoC = 74 %
                          2025-11-22 10:48:42.590 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Notstrom_SOC_Proz= 39 %
                          2025-11-22 10:48:42.590 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Notstrom_SOC_erreicht = false
                          2025-11-22 10:48:42.590 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: bNotstromVerwenden =false
                          2025-11-22 10:48:42.590 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: bNotstromAusNetz =false
                          2025-11-22 10:48:42.638 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Notstrom_Status = 2
                          2025-11-22 10:48:42.638 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: bM_Notstrom = false
                          2025-11-22 10:48:42.638 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: M_Power = 4500
                          2025-11-22 10:48:42.638 - info: javascript.0 (194) script.js.E3DC-Control.Charge-Control-1_6_5: Set_Power_Value_W = 0
                          
                          Wert:
                          {"Montag":{"night":0,"day":0},"Dienstag":{"night":0,"day":0},"Mittwoch":{"night":0,"day":0},"Donnerstag":{"night":0,"day":0},"Freitag":{"night":799,"day":0},"Samstag":{"night":671,"day":934},"Sonntag":{"night":0,"day":0}}
                          Typ:
                          string
                          Zeitstempel:
                          a few seconds ago
                          Bestätigt:
                          Befehl (false)
                          Zuletzt geändert:
                          2 minutes ago
                          Qualität:
                          0x00 - good
                          Von:
                          system.adapter.javascript.0
                          Benutzer:
                          system.user.admin
                          Kommentar:
                          script.js.E3DC-Control.Charge-Control-1_6_5
                          

                          Gruß

                          Michael

                          Update: ein erneuter Neustart des RaspPi (IOBroker läuft dort unter Docker) hat den Fehler verschwinden lassen... Warum? Keine Ahnung!

                          Update2: und doch wieder da, allerdings nur noch all 2-3 min (wahrscheinlich bei SOC-Level-Änderung)

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

                            Ich habe hier ein Denkfehler. Die Situation, dass es noch keinen gespeicherten Durchschnittsverbrauch gibt (beim ersten Start vom Skript für die erste Woche) und dass auch keine Entladeleistung vorhanden ist (z.B. weil die Batterie gerade geladen wird) kann natürlich öfter vorkommen. Das darf dann nicht in einem Fehler enden. Ich muss mir, das genauer anschauen, was es für Auswirkungen hätte, wenn dann die Reichweite der Batterie 0 h beträgt. Eventuell nehme ich in so einer Situation einen festen Wert "Basisverbrauch", der in den User_Anpassungen eingetragen werden kann.

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

                              Könnt ihr bitte diese Änderung mal testen. Die Zeile "await calculateBatteryRange(0);" beim listener[18] ab Zeile 2653 im Code mit //auskommentieren. Eine Aktualisierung der Reichweite bei SOC Änderung mit 0W macht da keinen Sinn und ich denke das daher der Fehler auch kommt.
                              Der Abschnitt sollte dann so aussehen:

                              // Batterie Kapazität in kWh berechnen wenn sich der SOC in % ändert
                                  listeners[18] = on({id: sID_Batterie_SOC, change: "ne"}, async function (obj) {
                                      let BatSoc = obj.state.val;   
                                      await setStateAsync(sID_BatSoc_kWh,Math.round((Speichergroesse_kWh*(Systemwirkungsgrad_Pro/100) * BatSoc))/100,true);
                                      //await calculateBatteryRange(0);
                                  });
                              
                              1 Antwort Letzte Antwort
                              0
                              • bluebeanB Offline
                                bluebeanB Offline
                                bluebean
                                schrieb zuletzt editiert von
                                #3452

                                Der listener sollte in der Version 1.6.5 ab Zeile 2653 stehen, damit keine Irritationen aufkommen :)

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

                                  Danke, für die Korrektur. :-)

                                  1 Antwort Letzte Antwort
                                  0
                                  • M Offline
                                    M Offline
                                    Modulo-N
                                    schrieb zuletzt editiert von
                                    #3454

                                    Hatte jetzt keine Meldungen mehr gesehen (irgendwann kamen keine Fehler mehr), aber ich habe den Fix trotzdem mal gemacht... Vielen Dank für die schnelle Antwort!

                                    1 Antwort Letzte Antwort
                                    0
                                    • P Online
                                      P Online
                                      psrelax
                                      schrieb zuletzt editiert von
                                      #3455

                                      @ArnoD
                                      Ich muss mich hier @Modulo-N anschließen.
                                      Seit heute ca. 18:30 Uhr ist die Fehlermeldung nicht mehr aufgetaucht und kann somit nicht verifizieren, ob die Änderung etwas gebracht hat.

                                      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

                                      243

                                      Online

                                      32.4k

                                      Benutzer

                                      81.4k

                                      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