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

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

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

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.
  • P psrelax

    @arnod
    Irgendwie ergibt das mit dem Durchschnitte der Ladungen für mich keinen Sinn.
    Ich will laden, wenn es sich lohnt. Und das ist immer wenn der nächst höhere Preis über dem aktuellen Preis+Ladeverluste ist. Ich verstehe nicht, warum aus den letzten Ladungen der Durchschnitt hierbei eine Rolle spielt.
    Die Ladeverluste sollten in etwa immer gleich sein (natürlich auch abhängig von der Ladezeit).
    Wenn ich jetzt ein Tal habe was Preis+Ladeverluste, niedriger ist als die nächste Spitze und ich diese mit meinem SOC nicht überbrücken kann, dann muss nach meinem Verständnis nachgeladen werden, um diese Spitze zu überbrücken.

    A Online
    A Online
    ArnoD
    schrieb am zuletzt editiert von
    #2836

    @psrelax
    Du schmeißt gerade zwei Themen durcheinander.

    Der **Batterie Strompreis (wo der Durchschnitt berechnet wird) war gedacht, um zu entscheiden, wann das Entladen gesperrt werden soll.
    Hat nichts mit der Entscheidung zu tun, wann geladen wird.

    Ich will laden, wenn es sich lohnt. Und das ist immer wenn der nächst höhere Preis über dem aktuellen Preis+Ladeverluste ist.

    Das würde bedeuten, wenn der Strompreis gerade bei (übertrieben) 1€ wäre und als Nächstes der Strompreis bei 1,20 wäre, würde nach der Logik auch geladen werden. Ab einem bestimmten Preis ergibt es keinen Sinn mehr, mit der teuren Batterie zu laden.
    Das kannst du aber individuell mit der Ladeschwelle hoher Strompreis einstellen.
    Wenn du auch bei so hohen Strompreisen noch die Batterie laden willst, stell diesen Wert einfach auf z.B 0,28€ ein.

    P 1 Antwort Letzte Antwort
    0
    • A ArnoD

      @psrelax
      Du schmeißt gerade zwei Themen durcheinander.

      Der **Batterie Strompreis (wo der Durchschnitt berechnet wird) war gedacht, um zu entscheiden, wann das Entladen gesperrt werden soll.
      Hat nichts mit der Entscheidung zu tun, wann geladen wird.

      Ich will laden, wenn es sich lohnt. Und das ist immer wenn der nächst höhere Preis über dem aktuellen Preis+Ladeverluste ist.

      Das würde bedeuten, wenn der Strompreis gerade bei (übertrieben) 1€ wäre und als Nächstes der Strompreis bei 1,20 wäre, würde nach der Logik auch geladen werden. Ab einem bestimmten Preis ergibt es keinen Sinn mehr, mit der teuren Batterie zu laden.
      Das kannst du aber individuell mit der Ladeschwelle hoher Strompreis einstellen.
      Wenn du auch bei so hohen Strompreisen noch die Batterie laden willst, stell diesen Wert einfach auf z.B 0,28€ ein.

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

      @arnod
      Danke für deine Geduld.
      Ich versuchs jetzt mal mit einem hohen Schwellwert, wie es sich dann verhält.

      1 Antwort Letzte Antwort
      0
      • A Online
        A Online
        ArnoD
        schrieb am zuletzt editiert von
        #2838

        Tibber Skript,
        Version: 1.1.14 auf Github hochgeladen.

        Änderungen:

        • View Tibber geändert: Es wird jetzt der Schwellwert Spitzenstrompreis angezeigt und nicht mehr der Batteriestrompreis.
        • Neue Objekt Id 0_userdata.0.TibberSkript.Anzeige_VIS.Spitzenstrompreis
        • In der Funktion zur Berechnung, ob die PV-Prognose ausreicht, wurden einige Fehler korrigiert.
        P 1 Antwort Letzte Antwort
        1
        • A ArnoD

          Tibber Skript,
          Version: 1.1.14 auf Github hochgeladen.

          Änderungen:

          • View Tibber geändert: Es wird jetzt der Schwellwert Spitzenstrompreis angezeigt und nicht mehr der Batteriestrompreis.
          • Neue Objekt Id 0_userdata.0.TibberSkript.Anzeige_VIS.Spitzenstrompreis
          • In der Funktion zur Berechnung, ob die PV-Prognose ausreicht, wurden einige Fehler korrigiert.
          P Online
          P Online
          psrelax
          schrieb am zuletzt editiert von psrelax
          #2839

          @arnod
          Ich hatte heute den ganzen Tag eine Entladesperre. Sollte doch eigentlich nicht sein, oder?
          74d32210-601d-49a1-9ab0-448198f62bb2-image.png

          2024-10-15 18:00:00.212  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.1.14 *******************
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerIds = 
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerTarget = []
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerState = []
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerObjektID = []
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: besteLadezeit = Laden mit PV-Leistung
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterEinzelpreisBlock = 0.2861
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterBlockPreis = 0.2887
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: minStrompreis_48h = 0.2347
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert Preisspitze = 0.5682
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert hoher Strompreis = 
          0.50	
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert niedriger Strompreis = 
          0.10	
          2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: schneeBedeckt = false
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung heute = 20.428800000000003 kWh
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung morgen = 39.58080000000001 kWh
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batterieKapazitaet_kWh = 15
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Batterie_SOC = 48
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: prognoseLadezeitBatterie = 1
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: pvLeistungAusreichend = false
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: reichweiteBatterie = 4:60 h / 4:60 h
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batteriepreisAktiv = true
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: strompreisBatterie = 0.2267
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: bruttoPreisBatterie = 0.2576
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Aktueller Preis Tibber = 0.3489
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieEntladenSperren = true
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieLaden = false
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Bat_W = 0
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Grid = 668
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: eAutoLaden = true
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteNiedrigphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null}
          2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteHochphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null}
          2024-10-15 18:00:00.215  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: preisPhasen = {"highPhases":[],"lowPhases":[]}
          2024-10-15 18:00:00.215  - warn: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: ProgrammAblauf = 25,1,2,4,5,6,6,8,10,12,20,22, 
          

          Nachtrag 16.10.2024
          Ich habe fast durchgehend eine Entladesperre. Was passt an meiner Einstellung nicht? :-(

          A 1 Antwort Letzte Antwort
          0
          • A ArnoD

            Neue Version Charge-Control auf GitHub hochgeladen.
            Version: 1.5.8
            Änderungen:

            • Es werden die wichtigsten e3dc-rscp Adaptereinstellungen geprüft und wenn diese abweichen wird im LOG eine Warnung ausgegeben.
            azzkikrboyA Offline
            azzkikrboyA Offline
            azzkikrboy
            schrieb am zuletzt editiert von azzkikrboy
            #2840

            @arnod sagte in E3DC Hauskraftwerk steuern:

            Neue Version Charge-Control auf GitHub hochgeladen.
            Version: 1.5.8
            Änderungen:

            • Es werden die wichtigsten e3dc-rscp Adaptereinstellungen geprüft und wenn diese abweichen wird im LOG eine Warnung ausgegeben.

            Hallo @ArnoD,
            ich habe gerade das neue 1.5.8 script aktiviert und erhalte nun beim Start folgenden Fehler.

            script.js.Charge_Control_1_5_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}##
            

            Könnte das an den Änderungen an den API-requests von Solcast liegen?
            Der Alte Adapter funktioniert ja nicht mehr, mit Version 4.0.0 geht es dann wieder nur über die IDs ...

            A 1 Antwort Letzte Antwort
            0
            • azzkikrboyA Offline
              azzkikrboyA Offline
              azzkikrboy
              schrieb am zuletzt editiert von
              #2841

              Und noch eine Frage.
              Ist dein Script kompatible mit der neuen Version des E3DC.RSCP adapter (1.3.x) ?
              Da hat sich wohl einiges geändert.

              bluebeanB 1 Antwort Letzte Antwort
              0
              • azzkikrboyA azzkikrboy

                Und noch eine Frage.
                Ist dein Script kompatible mit der neuen Version des E3DC.RSCP adapter (1.3.x) ?
                Da hat sich wohl einiges geändert.

                bluebeanB Offline
                bluebeanB Offline
                bluebean
                schrieb am zuletzt editiert von
                #2842

                @azzkikrboy said in E3DC Hauskraftwerk steuern:

                Ist dein Script kompatible mit der neuen Version des E3DC.RSCP adapter (1.3.x) ?

                Ich habe den Adapter 1.3.1 installiert und es läuft bei mir problemlos.

                1 Antwort Letzte Antwort
                0
                • azzkikrboyA azzkikrboy

                  @arnod sagte in E3DC Hauskraftwerk steuern:

                  Neue Version Charge-Control auf GitHub hochgeladen.
                  Version: 1.5.8
                  Änderungen:

                  • Es werden die wichtigsten e3dc-rscp Adaptereinstellungen geprüft und wenn diese abweichen wird im LOG eine Warnung ausgegeben.

                  Hallo @ArnoD,
                  ich habe gerade das neue 1.5.8 script aktiviert und erhalte nun beim Start folgenden Fehler.

                  script.js.Charge_Control_1_5_8: ##{"from":"Charge-Control", "message":"-==== Error in der function InterrogateSolcast. Fehler = Error: Error fetching data: Request failed with status code 429 ====-"}##
                  

                  Könnte das an den Änderungen an den API-requests von Solcast liegen?
                  Der Alte Adapter funktioniert ja nicht mehr, mit Version 4.0.0 geht es dann wieder nur über die IDs ...

                  A Online
                  A Online
                  ArnoD
                  schrieb am zuletzt editiert von
                  #2843

                  @azzkikrboy sagte in E3DC Hauskraftwerk steuern:

                  Könnte das an den Änderungen an den API-requests von Solcast liegen?

                  Nein, wie der Fehlercode 429 bereits aussagt, liegt das an zu häufigen Verbindungsversuche.

                  Ist dein Script kompatible mit der neuen Version des E3DC.RSCP adapter (1.3.x) ?

                  Ja

                  azzkikrboyA 1 Antwort Letzte Antwort
                  0
                  • P psrelax

                    @arnod
                    Ich hatte heute den ganzen Tag eine Entladesperre. Sollte doch eigentlich nicht sein, oder?
                    74d32210-601d-49a1-9ab0-448198f62bb2-image.png

                    2024-10-15 18:00:00.212  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: *******************  Debug LOG Tibber Skript Version 1.1.14 *******************
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerIds = 
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerTarget = []
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerState = []
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: timerObjektID = []
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: besteLadezeit = Laden mit PV-Leistung
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterEinzelpreisBlock = 0.2861
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: billigsterBlockPreis = 0.2887
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: minStrompreis_48h = 0.2347
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert Preisspitze = 0.5682
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert hoher Strompreis = 
                    0.50	
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Schwellwert niedriger Strompreis = 
                    0.10	
                    2024-10-15 18:00:00.213  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: schneeBedeckt = false
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung heute = 20.428800000000003 kWh
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Prognose PV-Leistung morgen = 39.58080000000001 kWh
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batterieKapazitaet_kWh = 15
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Batterie_SOC = 48
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: prognoseLadezeitBatterie = 1
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: pvLeistungAusreichend = false
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: reichweiteBatterie = 4:60 h / 4:60 h
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: batteriepreisAktiv = true
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: strompreisBatterie = 0.2267
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: bruttoPreisBatterie = 0.2576
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Aktueller Preis Tibber = 0.3489
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieEntladenSperren = true
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: BatterieLaden = false
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Bat_W = 0
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: Power_Grid = 668
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: eAutoLaden = true
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteNiedrigphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null}
                    2024-10-15 18:00:00.214  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: naechsteHochphase = {"Startzeit":null,"Endzeit":null,"StartzeitLokal":null,"EndzeitLokal":null}
                    2024-10-15 18:00:00.215  - info: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: preisPhasen = {"highPhases":[],"lowPhases":[]}
                    2024-10-15 18:00:00.215  - warn: javascript.0 (18305) script.js.E3DC_ChargeControl.Tibber: ProgrammAblauf = 25,1,2,4,5,6,6,8,10,12,20,22, 
                    

                    Nachtrag 16.10.2024
                    Ich habe fast durchgehend eine Entladesperre. Was passt an meiner Einstellung nicht? :-(

                    A Online
                    A Online
                    ArnoD
                    schrieb am zuletzt editiert von ArnoD
                    #2844

                    @psrelax

                    Das hat nichts mit deinen Einstellungen zu tun, sondern mit meiner Zeit die Fehler zu beheben :-)
                    Das Thema Entladesperre habe ich kurzfristig zurückgestellt, um mich erstmal auf die Fehler beim Laden zu konzentrieren.
                    Es sind noch einige Situationen, wo das Laden nicht so funktioniert wie ich mir das vorstelle.
                    Es wird aber jeden Tag besser und ich muss jetzt erstmal mein Script wieder aufräumen und alte Versuche entfernen, sonst wird es zu unstrukturiert und umso schwerer die Fehler zu finden.

                    Nachtrag: Setze mal deinen Schwellwert hoher Strompreis auf 0,26€ dann denke ich sollte es so funktionieren wie du es erwartest.

                    P 1 Antwort Letzte Antwort
                    1
                    • A ArnoD

                      @azzkikrboy sagte in E3DC Hauskraftwerk steuern:

                      Könnte das an den Änderungen an den API-requests von Solcast liegen?

                      Nein, wie der Fehlercode 429 bereits aussagt, liegt das an zu häufigen Verbindungsversuche.

                      Ist dein Script kompatible mit der neuen Version des E3DC.RSCP adapter (1.3.x) ?

                      Ja

                      azzkikrboyA Offline
                      azzkikrboyA Offline
                      azzkikrboy
                      schrieb am zuletzt editiert von
                      #2845

                      @arnod
                      OK. Danke für die schnelle Antwort

                      1 Antwort Letzte Antwort
                      0
                      • A Offline
                        A Offline
                        Abyss
                        schrieb am zuletzt editiert von Abyss
                        #2846

                        Hallo @ArnoD

                        sorry wenn ich in die Tibber-Diskussion so reingrätsche, aber mir ist grad ein möglicher Fehler im Heizstabscript aufgefallen.

                        Wie es scheint wird für das Script ja der Datenpunkt '0_userdata.0.Charge_Control.Allgemein.Hausverbrauch' verwendet.
                        Aus diesem wird aber nach meinem Verständnis im Charge-Control Script der Verbrauch einer Wärmepumpe, Wallbox und des Heizstabs rausgerechnet.
                        Der Verbrauch der Wärmepumpe und der Wallbox dürfen in diesem Fall aber nicht rausgerechnet werden, da man sonst ja einen falschen Überschuss ermittelt, den es so gar nicht gibt.
                        Das führt aktuell dazu, dass bei mir momentan der Heizstab mit einem vermeintlichen Übeschuss getriggert wird, den aber zeitgleich die Wärmepumpe nutzt und ich somit in einer Entladung der Batterie bzw. Netzbezug und einem ewigen hin und her lande.

                        Vermutlich müsste man im Heizstabscript den Hausverbrauch neu berechnen um den reinen Überschuss zu ermitteln oder die Variable "Hausverbrauch_W" incl. Wärempumpe und Wallbox neu beschreiben?

                        Grüße

                        EDIT
                        grad nochmal über das Script geschaut....die Wallbox wird scheinbar berücksichtigt, somit fehlt ansich nur noch der Verbrauch der Wärmepumpe...

                        azzkikrboyA A 2 Antworten Letzte Antwort
                        0
                        • A Abyss

                          Hallo @ArnoD

                          sorry wenn ich in die Tibber-Diskussion so reingrätsche, aber mir ist grad ein möglicher Fehler im Heizstabscript aufgefallen.

                          Wie es scheint wird für das Script ja der Datenpunkt '0_userdata.0.Charge_Control.Allgemein.Hausverbrauch' verwendet.
                          Aus diesem wird aber nach meinem Verständnis im Charge-Control Script der Verbrauch einer Wärmepumpe, Wallbox und des Heizstabs rausgerechnet.
                          Der Verbrauch der Wärmepumpe und der Wallbox dürfen in diesem Fall aber nicht rausgerechnet werden, da man sonst ja einen falschen Überschuss ermittelt, den es so gar nicht gibt.
                          Das führt aktuell dazu, dass bei mir momentan der Heizstab mit einem vermeintlichen Übeschuss getriggert wird, den aber zeitgleich die Wärmepumpe nutzt und ich somit in einer Entladung der Batterie bzw. Netzbezug und einem ewigen hin und her lande.

                          Vermutlich müsste man im Heizstabscript den Hausverbrauch neu berechnen um den reinen Überschuss zu ermitteln oder die Variable "Hausverbrauch_W" incl. Wärempumpe und Wallbox neu beschreiben?

                          Grüße

                          EDIT
                          grad nochmal über das Script geschaut....die Wallbox wird scheinbar berücksichtigt, somit fehlt ansich nur noch der Verbrauch der Wärmepumpe...

                          azzkikrboyA Offline
                          azzkikrboyA Offline
                          azzkikrboy
                          schrieb am zuletzt editiert von
                          #2847

                          @abyss sagte in E3DC Hauskraftwerk steuern:

                          Aus diesem wird aber nach meinem Verständnis im Charge-Control Script der Verbrauch einer Wärmepumpe, Wallbox und des Heizstabs rausgerechnet.

                          Sorry, aber hier grätsche ich auch mal rein :blush:
                          Wo kommt dann der Verbrauch Wärmepumpe her, der rausgerechnet wird ?

                          1 Antwort Letzte Antwort
                          0
                          • A Abyss

                            Hallo @ArnoD

                            sorry wenn ich in die Tibber-Diskussion so reingrätsche, aber mir ist grad ein möglicher Fehler im Heizstabscript aufgefallen.

                            Wie es scheint wird für das Script ja der Datenpunkt '0_userdata.0.Charge_Control.Allgemein.Hausverbrauch' verwendet.
                            Aus diesem wird aber nach meinem Verständnis im Charge-Control Script der Verbrauch einer Wärmepumpe, Wallbox und des Heizstabs rausgerechnet.
                            Der Verbrauch der Wärmepumpe und der Wallbox dürfen in diesem Fall aber nicht rausgerechnet werden, da man sonst ja einen falschen Überschuss ermittelt, den es so gar nicht gibt.
                            Das führt aktuell dazu, dass bei mir momentan der Heizstab mit einem vermeintlichen Übeschuss getriggert wird, den aber zeitgleich die Wärmepumpe nutzt und ich somit in einer Entladung der Batterie bzw. Netzbezug und einem ewigen hin und her lande.

                            Vermutlich müsste man im Heizstabscript den Hausverbrauch neu berechnen um den reinen Überschuss zu ermitteln oder die Variable "Hausverbrauch_W" incl. Wärempumpe und Wallbox neu beschreiben?

                            Grüße

                            EDIT
                            grad nochmal über das Script geschaut....die Wallbox wird scheinbar berücksichtigt, somit fehlt ansich nur noch der Verbrauch der Wärmepumpe...

                            A Online
                            A Online
                            ArnoD
                            schrieb am zuletzt editiert von ArnoD
                            #2848

                            @abyss sagte in E3DC Hauskraftwerk steuern:

                            grad nochmal über das Script geschaut....die Wallbox wird scheinbar berücksichtigt, somit fehlt ansich nur noch der Verbrauch der Wärmepumpe...

                            Ja, da hast du recht.
                            Ist bis jetzt nicht aufgefallen, da anscheinend keiner eine WP hat und ich keinen Heizstab.
                            Du bist der Erste, der beides hat. :-)

                            Ich werde das im my-pv Heizstab Script anpassen, danke für den Hinweis.

                            Nachtrag: Korrigierte Version auf Github hochgeladen. Kann es aber bei mir nicht testen.

                            A 1 Antwort Letzte Antwort
                            0
                            • A ArnoD

                              @psrelax

                              Das hat nichts mit deinen Einstellungen zu tun, sondern mit meiner Zeit die Fehler zu beheben :-)
                              Das Thema Entladesperre habe ich kurzfristig zurückgestellt, um mich erstmal auf die Fehler beim Laden zu konzentrieren.
                              Es sind noch einige Situationen, wo das Laden nicht so funktioniert wie ich mir das vorstelle.
                              Es wird aber jeden Tag besser und ich muss jetzt erstmal mein Script wieder aufräumen und alte Versuche entfernen, sonst wird es zu unstrukturiert und umso schwerer die Fehler zu finden.

                              Nachtrag: Setze mal deinen Schwellwert hoher Strompreis auf 0,26€ dann denke ich sollte es so funktionieren wie du es erwartest.

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

                              @arnod
                              Ich hab das einen Tag nach deiner Empfehlung auf 0,26 eingestellt.
                              Macht irgendwie nicht wirklich einen Unterschied.

                              Ich würde gerne testen und dir behilflich mit meinen Tests sein, weiß aber nicht wie, da ich praktisch nicht klar komme.
                              Ich habe das Problem, dass ich nicht weiß, wenn ich das ändere, muss das Ergebnis kommen.

                              Somit muss ich warten, bis du etwas änderst oder es von dir getestet ist.

                              A 1 Antwort Letzte Antwort
                              0
                              • M Offline
                                M Offline
                                matze191174
                                schrieb am zuletzt editiert von
                                #2850

                                Hi,
                                hab mal eine Frage zu dem Log Eintrag.
                                Was bedeuten eigentlich die Zahlen hinter "ProgrammAblauf"?

                                2024-10-17 22:40:00.264 - warn: javascript.0 (351) script.js.common.tibber-skript: ProgrammAblauf = 25,1,2,4,5,6,9,11,24,28,

                                A 1 Antwort Letzte Antwort
                                0
                                • M matze191174

                                  Hi,
                                  hab mal eine Frage zu dem Log Eintrag.
                                  Was bedeuten eigentlich die Zahlen hinter "ProgrammAblauf"?

                                  2024-10-17 22:40:00.264 - warn: javascript.0 (351) script.js.common.tibber-skript: ProgrammAblauf = 25,1,2,4,5,6,9,11,24,28,

                                  A Online
                                  A Online
                                  ArnoD
                                  schrieb am zuletzt editiert von
                                  #2851

                                  @matze191174
                                  Das ist eine Hilfe, um zu erkennen, wie der Programmablauf war, um so schneller den Fehler zu finden.
                                  Wenn man nicht davor sitzt, ist es sonst schwierig zu verstehen, warum der Code nicht funktioniert.

                                  25 = Funktion zum Berechnen vom Batteriepreis durchlaufen
                                  1 = Funktion tibberSteuerungHauskraftwerk()
                                  2 = Reichweite der Batterie überprüft
                                  usw.

                                  1 Antwort Letzte Antwort
                                  0
                                  • P psrelax

                                    @arnod
                                    Ich hab das einen Tag nach deiner Empfehlung auf 0,26 eingestellt.
                                    Macht irgendwie nicht wirklich einen Unterschied.

                                    Ich würde gerne testen und dir behilflich mit meinen Tests sein, weiß aber nicht wie, da ich praktisch nicht klar komme.
                                    Ich habe das Problem, dass ich nicht weiß, wenn ich das ändere, muss das Ergebnis kommen.

                                    Somit muss ich warten, bis du etwas änderst oder es von dir getestet ist.

                                    A Online
                                    A Online
                                    ArnoD
                                    schrieb am zuletzt editiert von
                                    #2852

                                    @psrelax
                                    Warte noch etwas mit dem testen.
                                    Wenn es bei mir mal einigermaßen fehlerfrei läuft, macht das mehr Sinn.
                                    Aktuell finde ich jeden Tag noch einige Fehler, die ich jetzt nach und nach korrigiere.

                                    1 Antwort Letzte Antwort
                                    1
                                    • A ArnoD

                                      @abyss sagte in E3DC Hauskraftwerk steuern:

                                      grad nochmal über das Script geschaut....die Wallbox wird scheinbar berücksichtigt, somit fehlt ansich nur noch der Verbrauch der Wärmepumpe...

                                      Ja, da hast du recht.
                                      Ist bis jetzt nicht aufgefallen, da anscheinend keiner eine WP hat und ich keinen Heizstab.
                                      Du bist der Erste, der beides hat. :-)

                                      Ich werde das im my-pv Heizstab Script anpassen, danke für den Hinweis.

                                      Nachtrag: Korrigierte Version auf Github hochgeladen. Kann es aber bei mir nicht testen.

                                      A Offline
                                      A Offline
                                      Abyss
                                      schrieb am zuletzt editiert von
                                      #2853

                                      @arnod
                                      Danke für die schnelle Umsetzung.
                                      Ich bin grad mal dabei es einzuspielen, scheinbar mag er aber die neue const "LeistungWP" nicht.
                                      "cannot redeclare block scoped variable 'LeistungWP'"
                                      Das führt dann zu einem Fehler beim Einlesen.

                                      Ich hab die Variable mal in "LeistungLW_Pumpe" und die gefüllte Variabel in "LeistungLW_Pumpe_W" umbenannt, dann funktioniert es.
                                      Ich teste...

                                      // defintion which instances has to be used 
                                      const instanzE3DC_RSCP       = 'e3dc-rscp.0' 
                                      const instanzHeizstab_Modbus = 'modbus.1'
                                      
                                      // E3DC Komponenten Definition 
                                      const sID_PV_Leistung       = `${instanzE3DC_RSCP}.EMS.POWER_PV`; // PV power
                                      const sID_Netz_Leistung     = `${instanzE3DC_RSCP}.EMS.POWER_GRID`; // Grid power
                                      const sID_Wallbox_Leistung  = `${instanzE3DC_RSCP}.EMS.POWER_WB_ALL`; // Wallbox power
                                      const sID_Batterie_Leistung = `${instanzE3DC_RSCP}.EMS.POWER_BAT`; // Battery power
                                      const sID_Power_Mode        = `${instanzE3DC_RSCP}.EMS.MODE`; // Power mode state
                                      const sID_Batterie_Status   = `${instanzE3DC_RSCP}.EMS.BAT_SOC`; // Battery status state
                                      const sID_Bat_Charge_Limit  = `${instanzE3DC_RSCP}.EMS.SYS_SPECS.maxBatChargePower`;// Batterie Ladelimit
                                      
                                      // selbst definierte Variablen
                                      const sID_Eigenverbrauch    = '0_userdata.0.Charge_Control.Allgemein.Hausverbrauch'; 					// Household consumption power
                                      const sID_M_Power_W         = '0_userdata.0.Charge_Control.Allgemein.Akt_Berechnete_Ladeleistung_W'; 	// Calculated required charging power
                                      const sID_LeistungLW_Pumpe_W = 'shelly.0.shellypro3em#a0dd6ca0bf44#1.EM0.TotalActivePower';                   // Pfad zu den Leistungswerte Wärmepumpe eintragen ansonsten leer lassen
                                      
                                      // Heistab Modbus Variablen 
                                      const sID_LeistungHeizstab_W        = `${instanzHeizstab_Modbus}.holdingRegisters.41001_Power`; // Current power consumption of heating element in W
                                      const sID_Soll_LeistungHeizstab_W   = `${instanzHeizstab_Modbus}.holdingRegisters.41001_Power`; // Target heating element power
                                      const sID_IstTempHeizstab           = `${instanzHeizstab_Modbus}.holdingRegisters.41002_Temp1`; // Current temperature at the heating element
                                      const sID_MaxTempHeizstab           = `${instanzHeizstab_Modbus}.holdingRegisters.41003_WW1_Temp_max`; // Maximum temperature
                                      
                                      // Heistab states manuell zu erstellen für Statistikwerte
                                      const sID_previousHeizstabLeistung_W    = '0_userdata.0.Heizung.E3DC.previousHeizstabLeistung'; // Previous heating element load power
                                      const sID_Heizstab_Gesamtenergie        = '0_userdata.0.Heizung.E3DC.Heizstab_Gesamtenergie'; // Cumulative energy
                                      const sID_Heizstab_LetzteAktualisierung = '0_userdata.0.Heizung.E3DC.Heizstab_LetzteAktualisierung'; // Last update
                                      
                                      // Defintion von Heizstabparametern und Sicherheitsmechanismen
                                      const debounceInterval          = 3000; // Minimum interval between updates in milliseconds
                                      const temperatureBuffer         = 3;    // Buffer in degrees Celsius to prevent frequent on/off cycling
                                      const minimumHeizstabLeistung   = 300;  // Minimum power for heating element
                                      const sicherheitspuffer         = 300;  // Safety buffer to avoid frequent switching
                                      const MaximalLeistungHeizstab_W = 3000; // Maximum power in watt of the heating element
                                      
                                      let debounceTimer;
                                      
                                      async function fetchAndUpdateHeizstabLeistung() {
                                          try {
                                              // Zustände abfragen
                                              const states = await Promise.all([
                                                  getStateAsync(sID_Wallbox_Leistung),
                                                  getStateAsync(sID_Netz_Leistung),
                                                  getStateAsync(sID_LeistungHeizstab_W),
                                                  getStateAsync(sID_Eigenverbrauch),
                                                  getStateAsync(sID_M_Power_W),
                                                  getStateAsync(sID_Batterie_Leistung),
                                                  getStateAsync(sID_IstTempHeizstab),
                                                  getStateAsync(sID_MaxTempHeizstab),
                                                  getStateAsync(sID_PV_Leistung),
                                                  getStateAsync(sID_Soll_LeistungHeizstab_W),
                                                  getStateAsync(sID_Power_Mode),
                                                  getStateAsync(sID_Batterie_Status),
                                                  getStateAsync(sID_Bat_Charge_Limit),
                                      			getStateAsync(sID_LeistungLW_Pumpe_W)
                                              ]);
                                      
                                              const [
                                                  Wallbox_Leistung, Netz_Leistung, LeistungHeizstab, Eigenverbrauch, M_Power, Batterie_Leistung,
                                                  IstTempHeizstab, MaxTempHeizstab, PV_Leistung, SollLeistungHeizstab, 
                                                  Power_Mode, Batterie_Status, Bat_Charge_Limit, LeistungLW_Pumpe
                                              ] = states;
                                      
                                              // Ensure all states are fetched correctly
                                              const stateNames = [
                                                  'Wallbox_Leistung', 'Netz_Leistung', 'LeistungHeizstab', 'Eigenverbrauch', 'M_Power', 'Batterie_Leistung',
                                                  'IstTempHeizstab', 'MaxTempHeizstab', 'PV_Leistung', 'SollLeistungHeizstab',
                                                  'Power_Mode', 'Batterie_Status', 'Bat_Charge_Limit', 'LeistungLW_Pumpe'
                                              ];
                                      
                                              stateNames.forEach((name, index) => {
                                                  if (states[index] === null || states[index] === undefined) {
                                                      console.error(`State ${name} is null or undefined`);
                                                  }
                                              });
                                      
                                              if (states.some(state => state === null || state === undefined)) {
                                                  throw new Error('One or more states are null or undefined');
                                              }
                                      
                                              // Werte extrahieren
                                              let [
                                                  Wallbox_Leistung_W, NetzLeistung_W, LeistungHeizstab_W, Hausverbrauch_W, M_Power_W, BatterieLeistung_W,
                                                  IstTemp, MaxTemp, PV_Leistung_W, SollLeistungHeizstab_W, 
                                                  PowerMode, BatterieStatus, Charge_Limit, LeistungLW_Pumpe_W
                                              ] = states.map(state => state.val);
                                      
                                              console.log(`Zustände abgefragt: Netz=${NetzLeistung_W}W, PV=${PV_Leistung_W}W, Hausverbrauch=${Hausverbrauch_W}W, LeistungHeizstab=${LeistungHeizstab_W}W, Batterie=${BatterieLeistung_W}W, IstTemp=${IstTemp}°C, MaxTemp=${MaxTemp}°C, SollLeistungHeizstab=${SollLeistungHeizstab_W}W, PowerMode=${PowerMode}, BatterieStatus=${BatterieStatus}, Charge_Limit=${Charge_Limit}, M_Power_W=${M_Power_W}W, LeistungWP = ${LeistungLW_Pumpe_W}W`);
                                      
                                              // Bedingungen prüfen
                                              if (PowerMode === 2 && Charge_Limit == M_Power_W && BatterieLeistung_W > 0) {
                                                  console.log('Power_Mode ist 2 und Batterie soll mit max. Leistung geladen werden. Heizstab wird nicht aktiviert.');
                                                  await setStateAsync(sID_Soll_LeistungHeizstab_W, 0);
                                                  return;
                                              }
                                      
                                              // Verfügbaren Überschuss berechnen
                                              let verfuegbarerUeberschuss_W = PV_Leistung_W - Hausverbrauch_W - M_Power_W- Wallbox_Leistung_W - LeistungLW_Pumpe_W - sicherheitspuffer; // Verfügbarer Überschuss unter Berücksichtigung von PV-Leistung, Hausverbrauch, Wärmepumpe, Soll-Ladeleistung und Sicherheitspuffer
                                              verfuegbarerUeberschuss_W = Math.max(verfuegbarerUeberschuss_W, 0); // Stellen Sie sicher, dass der Wert nicht negativ wird
                                      
                                              // Heizstab-Leistung bestimmen
                                              let HeizstabLadeleistung_W = 0;
                                              if (IstTemp < MaxTemp - temperatureBuffer && verfuegbarerUeberschuss_W >= minimumHeizstabLeistung) { // Stellen Sie sicher, dass die Temperaturbedingung mit Puffer erfüllt ist und die Mindestleistung verfügbar ist
                                                  HeizstabLadeleistung_W = Math.min(verfuegbarerUeberschuss_W, MaximalLeistungHeizstab_W); // Begrenzen Sie auf 3000W oder verfügbare Energie
                                              } else {
                                                  HeizstabLadeleistung_W = 0; // Heizstab ausschalten, wenn die Bedingungen nicht erfüllt sind
                                              }
                                              await setStateAsync(sID_Soll_LeistungHeizstab_W, HeizstabLadeleistung_W);
                                      
                                              // Aktualisiere den vorherigen Wert der Heizstabladeleistung
                                              await setStateAsync(sID_previousHeizstabLeistung_W, HeizstabLadeleistung_W);
                                      
                                              // Kumulierte Energieberechnung, Aktualisierung und Logging
                                              const jetzt = Date.now();
                                              const letzteAktualisierung = await getStateAsync(sID_Heizstab_LetzteAktualisierung);
                                              const vergangeneZeitInStunden = (jetzt - (letzteAktualisierung.val || 0)) / (1000 * 60 * 60);
                                              const verbrauchteEnergie = (LeistungHeizstab_W * vergangeneZeitInStunden) / 1000; // In kWh umrechnen
                                              const aktuelleGesamtenergie = (await getStateAsync(sID_Heizstab_Gesamtenergie)).val || 0;
                                              const neueGesamtenergie = aktuelleGesamtenergie + verbrauchteEnergie;
                                      
                                              await setStateAsync(sID_Heizstab_Gesamtenergie, neueGesamtenergie);
                                              await setStateAsync(sID_Heizstab_LetzteAktualisierung, jetzt);
                                      
                                              console.log(`Update: Netz=${NetzLeistung_W}W, PV=${PV_Leistung_W}W, Heizstab=${HeizstabLadeleistung_W}W, Überschuss=${verfuegbarerUeberschuss_W}W`);
                                          } catch (error) {
                                              // @ts-ignore
                                              console.error('Fehler bei der Aktualisierung der Heizstab-Leistung:', error.message);
                                              console.error(error.stack);
                                          }
                                      }
                                      
                                      function debounceUpdate() {
                                          if (debounceTimer) return;
                                          fetchAndUpdateHeizstabLeistung();
                                          debounceTimer = setTimeout(() => {
                                              debounceTimer = null;
                                          }, debounceInterval);
                                      }
                                      
                                      // Register listeners for relevant state changes
                                      const ids = [
                                          sID_Wallbox_Leistung,
                                          sID_PV_Leistung,
                                          sID_Netz_Leistung,
                                          sID_Eigenverbrauch,
                                          sID_Batterie_Leistung,
                                          sID_LeistungHeizstab_W,
                                          sID_M_Power_W,
                                          sID_Power_Mode,
                                          sID_Batterie_Status
                                      ];
                                      
                                      ids.forEach(id => {
                                          on({ id, change: "ne" }, debounceUpdate);
                                          console.log(`Listener registered for ${id}`);
                                      });
                                      
                                      // Initial call
                                      fetchAndUpdateHeizstabLeistung();
                                      

                                      Gestern sind mir noch zwei Punkte aufgefallen:

                                      • wenn der Akku auf 100% steht, bleibt "M_Power_W" bei 3000 hängen (max. Batterieladung bei meiner S10), somit fehlen diese 3000W bei der Berechnung von "verfuegbarerUeberschuss_W"

                                      • und vor allem Vormittags wird der Heizstab blockiert mit der Meldung "Power_Mode ist 2" um die Batterieladung zu priorisieren. Das ist grundsätzlich toll, führt aber bei Sonne dazu, dass dann mit 3000-4000W eingespeist wird, was man aber besser in den Heizstab umleiten könnte.
                                        Evtl. könnte man hier noch eine Prüfung reinmachen, dass wenn Einspeisung > 1000W dann ignoriere Power_Mode 2 oder sowas in der Art?

                                      @azzkikrboy
                                      Ich habe an meiner Wärmepumpe einen Shelli 3EM Pro hängen der mir die Leistung der Wärmepumpe ermittelt.
                                      Das wird dann im Charge-Control in "sID_LeistungLW_Pumpe_W" eingetragen um diese dann aus dem eigentlichen Hausverbrauch rauszurechnen und die Leistungswerte separat darstellen zu können.

                                      1 Antwort Letzte Antwort
                                      0
                                      • R Offline
                                        R Offline
                                        Ronniboy
                                        schrieb am zuletzt editiert von
                                        #2854

                                        Hallo Zusammen,
                                        erstmal ein dickes LOB für die Entwicklung von E3DC Control

                                        Mein neuer Stromtarif rechnet in dem Zeitraum 0.00 – 5:00 Uhr mit 8,48 €/kwh.
                                        Ich möchte programmmäßig über den IOBROKER und mit RSCP folgende Befehle anstoßen:
                                        1.) Zu einem bestimmten Zeitpunkt das „manuelle Speicherladen“ aus dem Netz anstoßen

                                        2.) Festlegen der gewünschten Energiemenge

                                        3.) Batteriespeicher Entladung sperren/freigeben
                                        Hat das jemand mit IOBROKER umgesetzt?

                                        Das Programm e3dc-control wollte ich nicht einsetzen, erscheint mir für meine Bedürfnisse zu umfangreich.

                                        Oder gibt es eine fertige Alternative ,etwa eine E3DC Control light Version?

                                        LG Ronald

                                        A 1 Antwort Letzte Antwort
                                        0
                                        • A Online
                                          A Online
                                          ArnoD
                                          schrieb am zuletzt editiert von ArnoD
                                          #2855

                                          @abyss sagte in E3DC Hauskraftwerk steuern:

                                          ch bin grad mal dabei es einzuspielen, scheinbar mag er aber die neue const "LeistungWP" nicht.
                                          "cannot redeclare block scoped variable 'LeistungWP'"
                                          Das führt dann zu einem Fehler beim Einlesen.

                                          Ja, mein Fehler habe das _W bei LeistungWP vergessen, so wäre es richtig: LeistungWP_W.

                                          wenn der Akku auf 100% steht, bleibt "M_Power_W" bei 3000 hängen (max. Batterieladung bei meiner S10), somit fehlen diese 3000W bei der Berechnung von "verfuegbarerUeberschuss_W"

                                          Habe ich korrigiert. M_Power_W ist nur relevant, wenn PowerMode auf 2 (Charge) steht.

                                          und vor allem Vormittags wird der Heizstab blockiert mit der Meldung "Power_Mode ist 2" um die Batterieladung zu priorisieren. Das ist grundsätzlich toll, führt aber bei Sonne dazu, dass dann mit 3000-4000W eingespeist wird, was man aber besser in den Heizstab umleiten könnte.

                                          Vermute, das passiert jedes Mal, wenn E3DC die Regelung übernimmt und die Batterie geladen wird, dann wird M_Power nicht mehr aktualisiert und bleibt auf dem max. Wert stehen. In dem Fall müsste M_Power die aktuelle Ladeleistung der Batterie enthalten, damit die Berechnung vom Überschuss wieder stimmt.
                                          Das Problem wird hier wieder die Trägheit der Regelung sein, sodass dann ständig zwischen Regelung E3DC und Script gewechselt wird.
                                          Ich kann es ja mal einbauen und du kannst dann testen, ob das was bringt.

                                          Nachtrag: neue Version auf Github hochgeladen. Kannst du das bei Gelegenheit mal testen.

                                          A 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

                                          823

                                          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