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 ArnoD

    @psrelax
    CC versucht die Lade/Entladeleistung auf 0 zu setzen, aber aus irgendeinem Grund, den ich aus der Ferne nicht feststellen kann, wird diese wieder aktiviert.
    Ich weiß nicht, was alles bei dir läuft und auf die Einstellungen vom E3DC zugreift.
    Es könnte aber auch EVCC der Grund sein, da hier das Entladen der Batterie immer noch über das Deaktivieren der Lade/Entladeleistung realisiert wird.
    Wenn das Schnellladen beendet wird, wird die maximale Entladeleistung statisch wieder auf den Standardwert von 12.000 W gesetzt, ebenso wie die untere Lade-/Entladeschwelle, die ebenfalls statisch auf den Standardwert von 95 W gesetzt wird.
    Ich würde die Funktion von EVCC "Verhindere Entladung im Schnell-Modus und beim geplanten Laden" nicht verwenden.

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

    @arnod

    Ok, danke.
    Ich schau mir das mit der Entladeleistung mal genauer an, ob ich was finde.

    1 Antwort Letzte Antwort
    0
    • A Online
      A Online
      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 Online
          A Online
          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 Online
                A Online
                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 Online
                    A Online
                    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 Online
                        A Online
                        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 Online
                            M Online
                            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 Online
                              A Online
                              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 Online
                                A Online
                                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 Online
                                  bluebeanB Online
                                  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 Online
                                    A Online
                                    ArnoD
                                    schrieb zuletzt editiert von
                                    #3453

                                    Danke, für die Korrektur. :-)

                                    1 Antwort Letzte Antwort
                                    0
                                    • M Online
                                      M Online
                                      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

                                        588

                                        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