Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Hausspeicher laden, dynamisch, tibberlink, Scripte

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Hausspeicher laden, dynamisch, tibberlink, Scripte

Scheduled Pinned Locked Moved Skripten / Logik
blockly
187 Posts 28 Posters 51.9k Views 42 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • arteckA arteck

    @arnod nimm mein script und pass die Datenpunkte an..

    das ding macht das was du willst..

    https://github.com/arteck/SMA_forecast_charging/blob/master/SUNNY_TRIPOWER _10.0_SE/bat_regelung.js

    A Offline
    A Offline
    Aiouh
    wrote on last edited by
    #175

    @arteck Frage vom dummy
    bevor ich in die falsche Richtung laufe... sehe ich das Richtig, dass ich alle vier scripts benötige und die darin vorhandenen Datenpunkte entsprechend meines setups (Victron,Pylontech,Tibber,Solcast) anpassen muss? Die View dann entsprechend auch (optional aber sehr hilfreich).
    7d36d1bf-da20-4f9c-862f-12f46a5c7360-image.png

    1 Reply Last reply
    0
    • B babl

      So ich habe mich mal hingesetzt und anhand des PV Forecast Adapters und dem "Das Wetter" Adapter ein Javascript geschrieben, daß anhand der Bewölkung die PV Forecast optimiert. Bei 100% Bewölkung habe ich einen Korrekturfaktor von 0.2 angenommen.

      Da ich bei mir viel mit Nebel zu kämpfen habe liegen die PV Vorhersage Adapter alle weit weit weg vom eigentlichen Ertrag, heute wurden 10 vorausgesagt aktuell sind wir bei 2.5, gestern waren es laut voraussage 15 das optimierte kam auf 10.4, reell waren es 10,2. Vielleicht kann es ja irgendjemand brauchen, es werden nur 2 Werte generiert, Summe today und summe tomorrow.

      const minOutputFactor = 0.2; // Mindestprozentsatz an Leistung bei 100% Wolkenbedeckung
      
      // Funktion zur Erstellung von Datenpunkten, falls sie noch nicht existieren
      function createStateIfNotExists(id, initialValue, callback) {
          if (!existsState(id)) {
              createState(id, initialValue, { type: 'number', unit: 'kWh', read: true, write: true }, callback);
          } else {
              callback();
          }
      }
      
      // Funktion zur Berechnung und Anpassung der PV-Forecasts basierend auf Wolkenbedeckungswerten
      function calculatePvForecast() {
          try {
              console.log('--- Sofortige Berechnung der PV Forecasts beim Skriptstart ---');
      
              let totalAdjustedPvToday = 0;
              let totalAdjustedPvTomorrow = 0;
      
              // Berechnung für heute (Stunden 5 bis 21)
              for (let hour = 5; hour <= 21; hour++) {
                  const hourString = hour.toString().padStart(2, '0');
                  const pvForecastToday = getState(`pvforecast.0.summary.energy.hoursToday.${hourString}:00:00`).val;
                  const cloudsToday = getState(`daswetter.0.NextHours.Location_1.Day_1.Hour_${hour}.clouds_value`).val;
      
                  const adjustedPvToday = (pvForecastToday * Math.max(minOutputFactor, (1 - cloudsToday / 100))).toFixed(2);
                  totalAdjustedPvToday += parseFloat(adjustedPvToday);
                  console.log(`Heute, Stunde ${hour}: Wolkenbedeckung = ${cloudsToday}%, Originaler PV-Wert = ${pvForecastToday} kWh, Angepasster PV-Wert = ${adjustedPvToday} kWh`);
              }
      
              // Speicherung des Gesamtwertes für heute
              createStateIfNotExists("0_userdata.0.PV-Forecast-optimiert.Heute_Gesamt", 0, () => {
                  setState(`0_userdata.0.PV-Forecast-optimiert.Heute_Gesamt`, parseFloat(totalAdjustedPvToday.toFixed(2)));
                  console.log(`Gesamter angepasster PV-Wert für heute: ${totalAdjustedPvToday.toFixed(2)} kWh`);
              });
      
              // Berechnung für morgen (Stunden 5 bis 21)
              for (let hour = 5; hour <= 21; hour++) {
                  const hourString = hour.toString().padStart(2, '0');
                  const pvForecastTomorrow = getState(`pvforecast.0.summary.energy.hoursTomorrow.${hourString}:00:00`).val;
                  const cloudsTomorrow = getState(`daswetter.0.NextHours.Location_1.Day_2.Hour_${hour}.clouds_value`).val;
      
                  const adjustedPvTomorrow = (pvForecastTomorrow * Math.max(minOutputFactor, (1 - cloudsTomorrow / 100))).toFixed(2);
                  totalAdjustedPvTomorrow += parseFloat(adjustedPvTomorrow);
                  console.log(`Morgen, Stunde ${hour}: Wolkenbedeckung = ${cloudsTomorrow}%, Originaler PV-Wert = ${pvForecastTomorrow} kWh, Angepasster PV-Wert = ${adjustedPvTomorrow} kWh`);
              }
      
              // Speicherung des Gesamtwertes für morgen
              createStateIfNotExists("0_userdata.0.PV-Forecast-optimiert.Morgen_Gesamt", 0, () => {
                  setState(`0_userdata.0.PV-Forecast-optimiert.Morgen_Gesamt`, parseFloat(totalAdjustedPvTomorrow.toFixed(2)));
                  console.log(`Gesamter angepasster PV-Wert für morgen: ${totalAdjustedPvTomorrow.toFixed(2)} kWh`);
              });
      
          } catch (error) {
              console.warn(`Fehler in der calculatePvForecast-Funktion: ${error.message}`);
              console.warn(error.stack);
          }
      }
      
      // Sofortige Ausführung der Berechnung beim Start des Skripts
      calculatePvForecast();
      
      // Geplante Ausführungen zur Aktualisierung der PV-Forecasts
      schedule("5 0 * * *", calculatePvForecast);   // Tägliche Ausführung um 0:05 Uhr
      schedule("5 5 * * *", calculatePvForecast);   // Tägliche Ausführung um 5:05 Uhr
      schedule("5 12 * * *", calculatePvForecast);  // Tägliche Ausführung um 12:05 Uhr
      
      
      A Offline
      A Offline
      Aiouh
      wrote on last edited by
      #176

      @babl Da wir hier leider auch viel Nebel haben, habe ich das Skript auch mal installiert. PV Vorhersage für Heute war 10,4 kWh, das Skript hat 7,06 kWh prognostiziert, tatsächlich waren es 6,3 kWh. Die Richtung stimmt schon mal. Ich werde das in jedem Fall weiter laufen lassen und sehen wie es sich weiter verhält.
      DANKE für das Skript

      B 1 Reply Last reply
      1
      • A Aiouh

        @babl Da wir hier leider auch viel Nebel haben, habe ich das Skript auch mal installiert. PV Vorhersage für Heute war 10,4 kWh, das Skript hat 7,06 kWh prognostiziert, tatsächlich waren es 6,3 kWh. Die Richtung stimmt schon mal. Ich werde das in jedem Fall weiter laufen lassen und sehen wie es sich weiter verhält.
        DANKE für das Skript

        B Offline
        B Offline
        bolliy
        Developer
        wrote on last edited by
        #177

        @babl würdest du deine letzte PV-forecast Version mit Beschreibung nochmal hochladen.
        So wie ich das verstanden habe hast du ein paar Änderungen später vorgenommen, die ich manuell nachziehen müsste.
        Vielen Dank für deine Mühen!

        LG Stephan

        B 1 Reply Last reply
        0
        • B bolliy

          @babl würdest du deine letzte PV-forecast Version mit Beschreibung nochmal hochladen.
          So wie ich das verstanden habe hast du ein paar Änderungen später vorgenommen, die ich manuell nachziehen müsste.
          Vielen Dank für deine Mühen!

          LG Stephan

          B Online
          B Online
          babl
          wrote on last edited by
          #178

          @bolliy du musst nur den pv forecast wert mit dem pv forecast wert des scriptes austauschen wenn du das meinst. ansonsten habe ich nichts vorgenommen, die aktuelle version ist immer noch im post bereich 108 zu finden

          A 1 Reply Last reply
          1
          • B babl

            @bolliy du musst nur den pv forecast wert mit dem pv forecast wert des scriptes austauschen wenn du das meinst. ansonsten habe ich nichts vorgenommen, die aktuelle version ist immer noch im post bereich 108 zu finden

            A Offline
            A Offline
            Aiouh
            wrote on last edited by Aiouh
            #179

            @babl Ich habe mal all deine Scripts zum dynamischen Laden auf meine Landschaft (Victron/Pylontech) angepasst und bin jetzt mächtig gespannt wie das läuft wenn ich ab 1.Dezember den Strom von Tibber bekomme. Werde berichten und/oder ggfs. nochmal um Unterstützung bitten :blush: . An der Stelle schon mal Vielen Dank für die tolle Arbeit

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mik-le-kn70
              wrote on last edited by
              #180

              Hallo,

              hat schon jemand das Script für einen Senec V3 angepasst und würde seine Versionen hier zur Verfügung stellen, ich bearbeite die Scripte gerade nach meinem Verständnis und werde weiter berichten.

              Vielen Dank für eure Antworten.

              VG Mike

              D icebearI 2 Replies Last reply
              0
              • M mik-le-kn70

                Hallo,

                hat schon jemand das Script für einen Senec V3 angepasst und würde seine Versionen hier zur Verfügung stellen, ich bearbeite die Scripte gerade nach meinem Verständnis und werde weiter berichten.

                Vielen Dank für eure Antworten.

                VG Mike

                D Offline
                D Offline
                dtopic
                wrote on last edited by
                #181

                @mik-le-kn70
                Würde mich auch interessieren, hast du schon etwas, was du zur Verfügung stellen kannst? Bei Senec gibt es nur die Befehle, soweit ich es herausgefunden habe, Vorladung und Entladen freigeben, aber nicht beladen stoppen und entladen stoppen.
                Grüße

                arteckA M 2 Replies Last reply
                0
                • D dtopic

                  @mik-le-kn70
                  Würde mich auch interessieren, hast du schon etwas, was du zur Verfügung stellen kannst? Bei Senec gibt es nur die Befehle, soweit ich es herausgefunden habe, Vorladung und Entladen freigeben, aber nicht beladen stoppen und entladen stoppen.
                  Grüße

                  arteckA Offline
                  arteckA Offline
                  arteck
                  Developer Most Active
                  wrote on last edited by
                  #182

                  @dtopic sagte in Hausspeicher laden, dynamisch, tibberlink, Scripte:

                  nicht beladen stoppen und entladen stoppen

                  gib den doch mal ne 0 zum laden oder -1 ..

                  zigbee hab ich, zwave auch, nuc's genauso und HA auch

                  1 Reply Last reply
                  0
                  • D dtopic

                    @mik-le-kn70
                    Würde mich auch interessieren, hast du schon etwas, was du zur Verfügung stellen kannst? Bei Senec gibt es nur die Befehle, soweit ich es herausgefunden habe, Vorladung und Entladen freigeben, aber nicht beladen stoppen und entladen stoppen.
                    Grüße

                    M Offline
                    M Offline
                    mik-le-kn70
                    wrote on last edited by
                    #183

                    @dtopic
                    Hallo,

                    ich kann noch keine Ergebnisse präsentieren, die Scripte sind soweit angepasst (Tibber-ID, Senec-Datenpunkte nach meinem Verständnis verbunden, Datenpunkte manuell angelegt, im Tibberadapter die Einstellungen gesetzt),
                    jedoch Scripte die nur Daten von Tibber verarbeiten sollen, liefern irgendwie keine (brauchbaren) Ergebnisse und somit läuft mein Versuch noch nicht.

                    Per Blockly Baustein "Aktion-exec" kann der Senec angesteuert werden, etwa so:

                    blockly-exec01.png

                    Laden geht mit:
                    "curl --insecure -d "{"ENERGY": {"SAFE_CHARGE_FORCE": "u8_01"}}" https://IP-des-senec/lala.cgi"

                    Stop Laden mit:

                    "curl --insecure -d "{"ENERGY": {"SAFE_CHARGE_PROHIBIT": "u8_01"}}" https://IP-des-senec/lala.cgi"

                    Den Befehl "entladen stoppen" kenne ich nicht.

                    VG

                    1 Reply Last reply
                    0
                    • M mik-le-kn70

                      Hallo,

                      hat schon jemand das Script für einen Senec V3 angepasst und würde seine Versionen hier zur Verfügung stellen, ich bearbeite die Scripte gerade nach meinem Verständnis und werde weiter berichten.

                      Vielen Dank für eure Antworten.

                      VG Mike

                      icebearI Online
                      icebearI Online
                      icebear
                      wrote on last edited by
                      #184

                      @mik-le-kn70

                      Nutzt du evcc?

                      Wenn du evcc nutzt dann kannst du dir deinen Aufwand glaub ich sparen. In der neuesten Version von evcc wird das Laden des Senec v3 über Tibber (so wie beim Auto) experimentell unterstützt.

                      Ich bin grad beim Testen und es scheint wunderbar zu funktionieren.

                      B 1 Reply Last reply
                      0
                      • icebearI icebear

                        @mik-le-kn70

                        Nutzt du evcc?

                        Wenn du evcc nutzt dann kannst du dir deinen Aufwand glaub ich sparen. In der neuesten Version von evcc wird das Laden des Senec v3 über Tibber (so wie beim Auto) experimentell unterstützt.

                        Ich bin grad beim Testen und es scheint wunderbar zu funktionieren.

                        B Offline
                        B Offline
                        bolliy
                        Developer
                        wrote on last edited by
                        #185

                        @icebear ja, habe ich auch schon probiert.
                        Allerdings werden weder PVForecast, Wetterdaten oder ein Lastenprofile herangezogen. Das ist eher eine rudimentäre Lösung, welche bedingt einzetzbar ist.
                        Ich benötige ein kostenoptimiertes Laden meines Hausspeichers, die auch Lade-/Endladeverluste berücksichtigt.
                        Stephan

                        1 Reply Last reply
                        0
                        • icebearI Online
                          icebearI Online
                          icebear
                          wrote on last edited by
                          #186

                          @bolliy

                          Ich bezog das ja auch nur auf den Senec V3.
                          Da kannste ja eh nur laden oder nichladen. Da brauch ich kein PV Forecast oder sonst irgendein Schnick Schnack.
                          Der hat weder eine HOLD Funktion noch kannste die Lade oder Enladeleistung steuern.
                          Mir reicht da wenn er wenigstens bei günstigen Preisen volllädt.

                          1 Reply Last reply
                          1
                          • B Online
                            B Online
                            babl
                            wrote on last edited by
                            #187

                            Hier gibts eine komplett überarbeitete Version meines Scriptes.

                            https://forum.iobroker.net/topic/79071/neues-script-hausspeicher-energiemanager-sonnen

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            414

                            Online

                            32.7k

                            Users

                            82.4k

                            Topics

                            1.3m

                            Posts
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Home
                            • Recent
                            • Tags
                            • Unread 0
                            • Categories
                            • Unreplied
                            • Popular
                            • GitHub
                            • Docu
                            • Hilfe