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. ioBroker Allgemein
  4. Vergleich Solarprognosen Solarwetter und brightsky

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.0k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Vergleich Solarprognosen Solarwetter und brightsky

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
234 Beiträge 7 Kommentatoren 11.3k Aufrufe 10 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.
  • T ticaki

    @homoran

    Welche Version? - die jetzt aktuelle sollte (je nach version) Werte ausspucken die ⅓ niedriger sind. Musste wirkungsgrad anpassen.

    Edit: hab editiert

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von Homoran
    #133

    @ticaki sagte in Vergleich Solarprognosen Solarwetter und brightsky:

    Welche Version?

    uralt!
    dein erster Prototyp

    EDIT:
    Die erste Zahl ist mein erster Prototyp: solar x empirischer Faktor

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    T 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @ticaki sagte in Vergleich Solarprognosen Solarwetter und brightsky:

      Welche Version?

      uralt!
      dein erster Prototyp

      EDIT:
      Die erste Zahl ist mein erster Prototyp: solar x empirischer Faktor

      T Nicht stören
      T Nicht stören
      ticaki
      schrieb am zuletzt editiert von
      #134

      ok dann sollten die werte nicht zu sehr abweichen.

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Antwort Letzte Antwort
      0
      • T ticaki

        @klassisch

        skynet sagt:

        Auf dem Windows-Rechner des Users muss er:

        1. Git installieren → https://git-scm.com/download/win
        2. Bei der Installation darauf achten, dass „Git in PATH aufnehmen“ aktiviert ist.
        3. Danach ein neues Terminal öffnen und prüfen:
        git --version
        

        muss eine Version zurückgeben.

        1. Anschließend npm-Befehl erneut ausführen.

        👉 Fazit: Das Problem liegt nicht an npm selbst, sondern daran, dass Git unter Windows fehlt oder nicht im PATH ist.

        EDIT: git ist bei mir überall installiert - ich glaube das kommt bei der linux version schon gleich mit.

        K Offline
        K Offline
        klassisch
        Most Active
        schrieb am zuletzt editiert von
        #135

        @ticaki sagte in Vergleich Solarprognosen Solarwetter und brightsky:

        Anschließend npm-Befehl erneut ausführen.

        Welchen npm Befehl?
        Git ist jetzt installiert, Pfad ist angelegt

        D:\>git --version
        git version 2.51.0.windows.1
        
        

        aber das Update über admin schlägt noch immer fehl

        T 1 Antwort Letzte Antwort
        0
        • K klassisch

          @ticaki sagte in Vergleich Solarprognosen Solarwetter und brightsky:

          Anschließend npm-Befehl erneut ausführen.

          Welchen npm Befehl?
          Git ist jetzt installiert, Pfad ist angelegt

          D:\>git --version
          git version 2.51.0.windows.1
          
          

          aber das Update über admin schlägt noch immer fehl

          T Nicht stören
          T Nicht stören
          ticaki
          schrieb am zuletzt editiert von
          #136

          @klassisch
          noch immer der gleiche Fehler? Ok der Link geht gleich nicht mehr - ich mache ne Verison

          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

          Spenden

          K 1 Antwort Letzte Antwort
          0
          • T ticaki

            @klassisch
            noch immer der gleiche Fehler? Ok der Link geht gleich nicht mehr - ich mache ne Verison

            K Offline
            K Offline
            klassisch
            Most Active
            schrieb am zuletzt editiert von klassisch
            #137

            @ticaki Ich habe jetzt den iob Befehl direkt in CMD eingegeben. Dann hat er was installiert
            Version im Admin immer noch
            0.3.1 (1~)

            Diese Version zeigt momentan mit den schwachen 19:00 Werten
            ghi (solar) 0.117
            und solar_estimate 0.088
            bei meinem 0°, 1, 1 Testvektor - also Modul horizontal 1m², 100% Wirkungsgrad.

            T 1 Antwort Letzte Antwort
            0
            • K klassisch

              @ticaki Ich habe jetzt den iob Befehl direkt in CMD eingegeben. Dann hat er was installiert
              Version im Admin immer noch
              0.3.1 (1~)

              Diese Version zeigt momentan mit den schwachen 19:00 Werten
              ghi (solar) 0.117
              und solar_estimate 0.088
              bei meinem 0°, 1, 1 Testvektor - also Modul horizontal 1m², 100% Wirkungsgrad.

              T Nicht stören
              T Nicht stören
              ticaki
              schrieb am zuletzt editiert von ticaki
              #138

              @klassisch

              ok dass sollte ... hm ich weiß nicht ob das ne gute idee war - kenne mich mit windows nicht aus - die Version ändert sich nur wenn ich eine Version mache - die Entwicklungsversion hat i.d.R. keine geänderte Versionsnummer.

              Aber in 10 Minuten sollte es per npm gehen - also das Fenster mit der benutzerdefinierten Installation aber da npm auswählen und dann ticaki/ioBroker.brightsky glaube ich.

              EDIT:
              so sieht das aus - aber ist noch nicht da :)
              Bildschirmfoto 2025-09-17 um 19.44.18.png

              EDIT2
              Jetzt ist es angekommen - obs schon installierbar ist oder er noch die alte nimmt weiß ich aber net :)

              EDIT3 - er nimmt die 0.3.2

              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

              Spenden

              K 1 Antwort Letzte Antwort
              1
              • T ticaki

                @klassisch

                ok dass sollte ... hm ich weiß nicht ob das ne gute idee war - kenne mich mit windows nicht aus - die Version ändert sich nur wenn ich eine Version mache - die Entwicklungsversion hat i.d.R. keine geänderte Versionsnummer.

                Aber in 10 Minuten sollte es per npm gehen - also das Fenster mit der benutzerdefinierten Installation aber da npm auswählen und dann ticaki/ioBroker.brightsky glaube ich.

                EDIT:
                so sieht das aus - aber ist noch nicht da :)
                Bildschirmfoto 2025-09-17 um 19.44.18.png

                EDIT2
                Jetzt ist es angekommen - obs schon installierbar ist oder er noch die alte nimmt weiß ich aber net :)

                EDIT3 - er nimmt die 0.3.2

                K Offline
                K Offline
                klassisch
                Most Active
                schrieb am zuletzt editiert von klassisch
                #139

                @ticaki Vielen Dank! 0.3.2 auch hier. Und verhält sich anders
                solar (ghi) 0.133
                solar_estimate 1
                könnte grundete 0.133 sein, was ein plausibles Ergebnis wäre.
                Mehr sehe ich erst später. morgen um 07:00 ist ghi immer noch 0

                Edit: Achso, ich habe über github benutzerdefiniert und nicht über npm installiert. lief aber durch und Version passt ja.

                Edit2: Habe jetzt nach @Armilar s Hinwei mal 24h eingestellt. Und morgen Thu Sep 18 2025 14:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)
                haben solar und solar_estimate gleiche Zahlenwerte - wie es sein soll.

                1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

                  @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                  Gestern lag die Realität ca. 40% unter Forecast

                  Der Rest ist bei mir :joy:
                  Screenshot_20250917-190348_Firefox.jpg
                  gestern gut 20% über Forecast und heute wird's noch mehr.

                  @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                  Homoran weiß wie die wirklich heißt

                  Octo(pus)Cat

                  K Offline
                  K Offline
                  klassisch
                  Most Active
                  schrieb am zuletzt editiert von
                  #140

                  @homoran sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                  Der Rest ist bei mir :joy:
                  Screenshot_20250917-190348_Firefox.jpg
                  gestern gut 20% über Forecast und heute wird's noch mehr.

                  Es sei Dir gegönnt! War gestern eh den ganzen Tag mit Auto weg. Und heute ist es wieder voll geladen :-)

                  Octo(pus)Cat

                  Ah, ja. vielen Dank!

                  HomoranH 1 Antwort Letzte Antwort
                  0
                  • ArmilarA Armilar

                    @klassisch

                    ja - der Adapter lässt 48 Stunden zu

                    84afea38-cc02-461d-982b-f81babe3766f-image.png

                    K Offline
                    K Offline
                    klassisch
                    Most Active
                    schrieb am zuletzt editiert von
                    #141

                    @armilar sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                    ja - der Adapter lässt 48 Stunden zu

                    84afea38-cc02-461d-982b-f81babe3766f-image.png

                    Vielen Dank! Hatte den Post glatt überlesen - sorry! Dann werde ich mal 24h einstellen.

                    1 Antwort Letzte Antwort
                    0
                    • T Nicht stören
                      T Nicht stören
                      ticaki
                      schrieb am zuletzt editiert von
                      #142

                      @klassisch
                      In der rechnung ist noch folgendes mit drin - kann man wohl aus den Variablen ableiten was es ist:

                      const poaWhPerM2 = valueWhPerM2 * (beamFraction * dirGain + diffuseFraction * skyDiffuseGain + groundRefGain);

                      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                      Spenden

                      K 1 Antwort Letzte Antwort
                      1
                      • T ticaki

                        @klassisch
                        In der rechnung ist noch folgendes mit drin - kann man wohl aus den Variablen ableiten was es ist:

                        const poaWhPerM2 = valueWhPerM2 * (beamFraction * dirGain + diffuseFraction * skyDiffuseGain + groundRefGain);

                        K Offline
                        K Offline
                        klassisch
                        Most Active
                        schrieb am zuletzt editiert von
                        #143

                        @ticaki Ja, habe jetzt die 24 Forcast Stunden (+ die aktuelle Stunde = 25 h) eingestellt und den "Streiflichttest" gemacht.
                        Mein Skript bricht auf 0 ein, weil es nur direkte Strahlung berechnet.
                        Adapter geht von 0,692 auf ca. 0,2 zurück.
                        Die Python Lib verhält sich ähnlich.

                        Sieht also auf den ersten Blick gut aus.

                        1 Antwort Letzte Antwort
                        0
                        • K Offline
                          K Offline
                          klassisch
                          Most Active
                          schrieb am zuletzt editiert von klassisch
                          #144

                          Auf den zweiten Blick sieht das auch noch gut aus. Die Werte der sonnenstarken Phasen passen zu meinem Skript.

                          Und da könnte ich gleich einen Feature Request antizipieren:

                          • Modulüberbelegung bzw. Begrenzung durch Wechselrichter.

                          Das ist bei mir der Fall. Für die Entscheidung netzdienliches Laden wohl ohne große Bedeutung. Aber wenn man schon Albedo, Diffuslicht etc berücksichtigt .. (icon für Duck und weg)
                          Bei mir wurde einfach aus

                          const energy_kWh = poa_kwh_m2 * AREA_M2 * EFFICIENCY
                          
                          const energy_kWh = Math.min(poa_kwh_m2 * AREA_M2 * EFFICIENCY, inverterLimit);
                          
                          HomoranH T 2 Antworten Letzte Antwort
                          1
                          • K klassisch

                            Auf den zweiten Blick sieht das auch noch gut aus. Die Werte der sonnenstarken Phasen passen zu meinem Skript.

                            Und da könnte ich gleich einen Feature Request antizipieren:

                            • Modulüberbelegung bzw. Begrenzung durch Wechselrichter.

                            Das ist bei mir der Fall. Für die Entscheidung netzdienliches Laden wohl ohne große Bedeutung. Aber wenn man schon Albedo, Diffuslicht etc berücksichtigt .. (icon für Duck und weg)
                            Bei mir wurde einfach aus

                            const energy_kWh = poa_kwh_m2 * AREA_M2 * EFFICIENCY
                            
                            const energy_kWh = Math.min(poa_kwh_m2 * AREA_M2 * EFFICIENCY, inverterLimit);
                            
                            HomoranH Nicht stören
                            HomoranH Nicht stören
                            Homoran
                            Global Moderator Administrators
                            schrieb am zuletzt editiert von
                            #145

                            @klassisch und du schreibst was von homoran'schem Perfektionismus! :grinning:

                            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            K 1 Antwort Letzte Antwort
                            0
                            • HomoranH Homoran

                              @klassisch und du schreibst was von homoran'schem Perfektionismus! :grinning:

                              K Offline
                              K Offline
                              klassisch
                              Most Active
                              schrieb am zuletzt editiert von klassisch
                              #146

                              @homoran Nunja, ich schrieb ja, daß es für meinen einfachen Anwendungsfall nicht sooo wichtig ist.
                              Irgendwann später wird aber jemand danach fragen.
                              Und wenn wir schon mal dabei sind und es doch soo einfach zu implementieren ist .....

                              Edit: Ja und wenn wir gerade darüber sprechen: Man könnte die geklippten Daten und die ungeklippten Daten parallel halten. Dann kann man berechnen, was man durch das Clipping verliert. Bei mir war es letztes Jahr < 20 EUR Einspeisevergütung.

                              1 Antwort Letzte Antwort
                              0
                              • K klassisch

                                @homoran sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                Der Rest ist bei mir :joy:
                                Screenshot_20250917-190348_Firefox.jpg
                                gestern gut 20% über Forecast und heute wird's noch mehr.

                                Es sei Dir gegönnt! War gestern eh den ganzen Tag mit Auto weg. Und heute ist es wieder voll geladen :-)

                                Octo(pus)Cat

                                Ah, ja. vielen Dank!

                                HomoranH Nicht stören
                                HomoranH Nicht stören
                                Homoran
                                Global Moderator Administrators
                                schrieb am zuletzt editiert von Homoran
                                #147

                                @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                den ganzen Tag mit Auto weg. Und heute ist es wieder voll geladen

                                du fährst jetzt auch elektrisch?
                                Da sieht man mal, wie die Zeit vergeht und wie lange ich dich nicht mehr gesehen hab!

                                @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                für meinen einfachen Anwendungsfall nicht sooo wichtig

                                ach ja!

                                Screenshot_20250917-213934_Firefox.jpg
                                mein Schlechtwetterprogramm hat heute sein bestes getan!
                                nicht gerade wirklich netzdienlich, zwar nur 1.5 kWh eingespeist, allerdings nicht früh morgens*.
                                aber die Batterie war planmäßig voll.

                                EDIT:

                                • doch, tatsächlich einiges früh morgens
                                  Screenshot_20250917-214947_Firefox.jpg
                                  aber eher zufällig.

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                K 1 Antwort Letzte Antwort
                                1
                                • K klassisch

                                  Auf den zweiten Blick sieht das auch noch gut aus. Die Werte der sonnenstarken Phasen passen zu meinem Skript.

                                  Und da könnte ich gleich einen Feature Request antizipieren:

                                  • Modulüberbelegung bzw. Begrenzung durch Wechselrichter.

                                  Das ist bei mir der Fall. Für die Entscheidung netzdienliches Laden wohl ohne große Bedeutung. Aber wenn man schon Albedo, Diffuslicht etc berücksichtigt .. (icon für Duck und weg)
                                  Bei mir wurde einfach aus

                                  const energy_kWh = poa_kwh_m2 * AREA_M2 * EFFICIENCY
                                  
                                  const energy_kWh = Math.min(poa_kwh_m2 * AREA_M2 * EFFICIENCY, inverterLimit);
                                  
                                  T Nicht stören
                                  T Nicht stören
                                  ticaki
                                  schrieb am zuletzt editiert von
                                  #148

                                  @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                  Bei mir wurde einfach aus

                                  const energy_kWh = poa_kwh_m2 * AREA_M2 * EFFICIENCY
                                  
                                  const energy_kWh = Math.min(poa_kwh_m2 * AREA_M2 * EFFICIENCY, inverterLimit);
                                  

                                  Ich hab 2 Gruppen an einem Wechselrichter - das ist dann schon etwas komplexer :)

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  K 1 Antwort Letzte Antwort
                                  0
                                  • HomoranH Homoran

                                    @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                    den ganzen Tag mit Auto weg. Und heute ist es wieder voll geladen

                                    du fährst jetzt auch elektrisch?
                                    Da sieht man mal, wie die Zeit vergeht und wie lange ich dich nicht mehr gesehen hab!

                                    @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                    für meinen einfachen Anwendungsfall nicht sooo wichtig

                                    ach ja!

                                    Screenshot_20250917-213934_Firefox.jpg
                                    mein Schlechtwetterprogramm hat heute sein bestes getan!
                                    nicht gerade wirklich netzdienlich, zwar nur 1.5 kWh eingespeist, allerdings nicht früh morgens*.
                                    aber die Batterie war planmäßig voll.

                                    EDIT:

                                    • doch, tatsächlich einiges früh morgens
                                      Screenshot_20250917-214947_Firefox.jpg
                                      aber eher zufällig.
                                    K Offline
                                    K Offline
                                    klassisch
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #149

                                    @homoran sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                    du fährst jetzt auch elektrisch?

                                    Ja schon ein paar Jahre. Passt gut zur PV-Anlage und fährt angenehm. Davor Plug-In Hybrid. Ging auch gut 100km elektrisch.

                                    Da sieht man mal, wie die Zeit vergeht und wie lange ich dich nicht mehr gesehen hab!

                                    Da hast Du recht! Corona hat leider die Kasseler HM-Tradition gebrochen und das ioBroker Meeting war mir zu weit weg und ich hatte anderes zu tun.

                                    Screenshot_20250917-213934_Firefox.jpg
                                    mein Schlechtwetterprogramm hat heute sein bestes getan!
                                    nicht gerade wirklich netzdienlich, zwar nur 1.5 kWh eingespeist, allerdings nicht früh morgens.
                                    aber die Batterie war planmäßig voll.

                                    Respekt!
                                    Ich mache das noch manuell. Und nicht so perfektionistisch ;-)

                                    HomoranH 2 Antworten Letzte Antwort
                                    1
                                    • T ticaki

                                      @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                      Bei mir wurde einfach aus

                                      const energy_kWh = poa_kwh_m2 * AREA_M2 * EFFICIENCY
                                      
                                      const energy_kWh = Math.min(poa_kwh_m2 * AREA_M2 * EFFICIENCY, inverterLimit);
                                      

                                      Ich hab 2 Gruppen an einem Wechselrichter - das ist dann schon etwas komplexer :)

                                      K Offline
                                      K Offline
                                      klassisch
                                      Most Active
                                      schrieb am zuletzt editiert von klassisch
                                      #150

                                      @ticaki sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                      Ich hab 2 Gruppen an einem Wechselrichter - das ist dann schon etwas komplexer :)

                                      Die Komplexität hast Du ja schon bei der Definition der Strings und deren Orientierung. Solange es nur einen WR gibt, kann man dessen summarische PV Leistung entsprechend mit Math.max clippen. Kompliziert wird es wenn es mehrere Strings an mehreren WR gibt. Beispielsweise zwei Strings an einem und drei Strings am anderen. Das würde die Konfiguration aufwendiger gestalten. Könnte man aber umgehen, indem man für jeden WR eine eigene Instanz anlegt. Jetzt nicht so hyperelegant. Aber ich würde es als user so machen. Einfach und robust. Und wer mit den Ergebnissen mehr rechnen oder regeln will, kann es ja mittels Skript selber rechnen.

                                      T 1 Antwort Letzte Antwort
                                      0
                                      • K klassisch

                                        @homoran sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                        du fährst jetzt auch elektrisch?

                                        Ja schon ein paar Jahre. Passt gut zur PV-Anlage und fährt angenehm. Davor Plug-In Hybrid. Ging auch gut 100km elektrisch.

                                        Da sieht man mal, wie die Zeit vergeht und wie lange ich dich nicht mehr gesehen hab!

                                        Da hast Du recht! Corona hat leider die Kasseler HM-Tradition gebrochen und das ioBroker Meeting war mir zu weit weg und ich hatte anderes zu tun.

                                        Screenshot_20250917-213934_Firefox.jpg
                                        mein Schlechtwetterprogramm hat heute sein bestes getan!
                                        nicht gerade wirklich netzdienlich, zwar nur 1.5 kWh eingespeist, allerdings nicht früh morgens.
                                        aber die Batterie war planmäßig voll.

                                        Respekt!
                                        Ich mache das noch manuell. Und nicht so perfektionistisch ;-)

                                        HomoranH Nicht stören
                                        HomoranH Nicht stören
                                        Homoran
                                        Global Moderator Administrators
                                        schrieb am zuletzt editiert von Homoran
                                        #151

                                        @klassisch sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                        Und nicht so perfektionistisch

                                        Das Schönwetterprogramm rechnet auch nur den Energiebedarf zum laden und verteilt das auf die Stunden bis der max Est unter die 60% PV Leistung fällt. ab da dann laden mit voller Leistung
                                        Das war bei wechselnder Bewölkung viel zu wenig, da die Leistungsspitzen während Wolkenlücken nicht genutzt wurden.
                                        Jetzt rechne ich zusätzlich noch einen Faktor aus, der sich aus der fehlenden Energie der letzten Stunden ergibt, die wegen Wolken nicht produziert wurde.

                                        so was ganz einfaches ;-)
                                        Screenshot_20250917-222217_Firefox.jpg

                                        EDIT:
                                        Für dich in js

                                        var Faktor, chargingPower_akt, endeRegeln, T_akt, sonnig, T_diff, working, chargingPower, Ladeliste, my_60Prozent, T_End, chargingPowerFakt, startLaden, Intervall, timeout;
                                        
                                        // Beschreibe diese Funktion …
                                        async function Ladesteuerung() {
                                         chargingPower_akt = getState('modbus.1.holdingRegisters.100.2705_maxCharge').val;
                                         chargingPower = Math.floor((((98 - getState('modbus.1.inputRegisters.100.843_SOC').val) * 300) / 54) / T_diff);
                                         if (Ladeliste.length > 0) {
                                           Faktor = Math.round((Math.min(Math.max(1 / (getState('sourceanalytix.0.Messwerte__0__Batterie__Ladung.currentYear.consumed.01_currentDay').val / Ladeliste.reduce(function(x, y) {return x + y;}, 0)), 0.5), 4)) * 100) / 100;
                                           setState('Messwerte.0.Solarspitzen.chargingFaktor' /* chargingFaktor */, Faktor, true);
                                         }
                                         chargingPowerFakt = Math.min(Math.max(1, Math.round(chargingPower * Faktor)), 96);
                                         Ladeliste.push(chargingPower * 0.054);
                                         setState('Messwerte.0.Solarspitzen.Ladeliste' /* Ladeliste */, Ladeliste, true);
                                         setStateDelayed('Messwerte.0.Solarspitzen.Logdaten2' /* Logdaten2 */, ([working == false ? '<br><strong><font size=3><font color=yellow>Laden gestartet</font></font></strong> <br><br>' : '<br>','Restzeit ',T_diff,'h, SoC ',getState('modbus.1.inputRegisters.100.843_SOC').val,'%, <br>Ladestrom ',chargingPower,'A, Faktor ',Faktor,'<br>',(T_diff > 1) && (Math.abs(chargingPowerFakt - chargingPower_akt) > 5) && (getState('modbus.1.inputRegisters.100.843_SOC').val < 90) ? ['<strong><font size=3><font color=gold>Max. Ladestrom wird geändert</font></font></strong> von ',chargingPower_akt,'A auf ',chargingPowerFakt,'A<br>'].join('') : ['Max. Ladestrom von ',chargingPower_akt,'A wird nicht auf ',chargingPowerFakt,'A geändert<br>'].join('')].join('')), true, 300, false);
                                         if (!getState('Messwerte.0.Solarspitzen.manual_override').val) {
                                           if ((T_diff > 1) && (Math.abs(chargingPowerFakt - chargingPower_akt) > 5) && (getState('modbus.1.inputRegisters.100.843_SOC').val < 90)) {
                                             if (!sonnig) {
                                               setState('modbus.1.holdingRegisters.100.2705_maxCharge', (getState('modbus.1.inputRegisters.100.843_SOC').val < 90 ? Math.min(Math.max(1, chargingPowerFakt), 100) : Math.min(Math.max(1, chargingPower), 100)));
                                             }
                                           }
                                         }
                                        }
                                        
                                        // Beschreibe diese Funktion …
                                        async function Sonnenzeit() {
                                         T_akt = Math.round((((new Date().getTime()) - getDateObject(getAstroDate('sunrise', undefined, 0)).getTime()) / 3600000) * 100) / 100;
                                         T_diff = Math.round((T_End - T_akt) * 100) / 100;
                                        }
                                        
                                        
                                        Faktor = getState('Messwerte.0.Solarspitzen.chargingFaktor').val;
                                        endeRegeln = getState('Messwerte.0.Solarspitzen.regelnOff').val;
                                        working = getState('Messwerte.0.Solarspitzen.regelnLaeuft').val;
                                        Ladeliste = getState('Messwerte.0.Solarspitzen.Ladeliste').val;
                                        T_End = getState('Messwerte.0.Solarspitzen.Time3').val;
                                        T_diff = Math.round((T_End - T_akt) * 100) / 100;
                                        on({ id: [].concat(['Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell']), change: 'ne' }, async (obj) => {
                                         let value = obj.state.val;
                                         let oldValue = obj.oldState.val;
                                         if (((obj.state ? obj.state.val : '') > 300) && (getState('Messwerte.0.Batterie.Ladung').val > 100) && working && (!endeRegeln)) {
                                           await Sonnenzeit();
                                           if (!Intervall) {
                                             startLaden = true;
                                             Intervall = setInterval(async () => {
                                               startLaden = false;
                                               await Ladesteuerung();
                                             }, 3600000);
                                           }
                                         } else if (((obj.state ? obj.state.val : '') > 300) && (getState('Messwerte.0.Batterie.Ladung').val > 100) && (!working) && (!endeRegeln)) {
                                           await Sonnenzeit();
                                           if (T_akt > 0.7) {
                                             Faktor = Math.round((Math.min(Math.max(T_akt / 0.8, 1), 4)) * 100) / 100;
                                           } else {
                                             Faktor = 1;
                                           }
                                           setState('Messwerte.0.Solarspitzen.chargingFaktor' /* chargingFaktor */, Faktor, true);
                                           (() => { if (Intervall) { clearInterval(Intervall); Intervall = null; }})();
                                           await Ladesteuerung();
                                           working = true;
                                           setState('Messwerte.0.Solarspitzen.regelnLaeuft' /* regelnLaeuft */, true, true);
                                           (() => { if (timeout) { clearTimeout(timeout); timeout = null; }})();
                                           timeout = setTimeout(async () => {
                                             timeout = null;
                                             my_60Prozent = true;
                                           }, 300000);
                                         }
                                        });
                                        
                                        on({ id: [].concat(['Messwerte.0.Solaranlage.Momentanwerte.Solarestimate2']), change: 'lt' }, async (obj) => {
                                         let value = obj.state.val;
                                         let oldValue = obj.oldState.val;
                                         if (((obj.state ? obj.state.val : '') < 3400) && ((obj.oldState ? obj.oldState.val : '') >= 3400) && (!endeRegeln) && working && my_60Prozent) {
                                           (() => { if (Intervall) { clearInterval(Intervall); Intervall = null; }})();
                                           endeRegeln = true;
                                           setState('Messwerte.0.Solarspitzen.regelnOff' /* regelnOff */, true, true);
                                           working = false;
                                           setState('Messwerte.0.Solarspitzen.regelnLaeuft' /* regelnLaeuft */, false, true);
                                           setState('Messwerte.0.Solarspitzen.Logdaten2' /* Logdaten2 */, (['<br><strong><font size=3><font color=lightgreen>Regelung beendet</font></font><br>','Ladeleistung wird fix geändert auf ',92,'A</strong><br>'].join('')), true);
                                           if (!sonnig) {
                                             setState('modbus.1.holdingRegisters.100.2705_maxCharge', 92);
                                           }
                                           setState('Messwerte.0.Solarspitzen.Time3' /* Time3 */, (((new Date().getTime()) - getAstroDate('sunrise', undefined, 0)) / 3600000), true);
                                         }
                                        });
                                        
                                        on({ id: [].concat(['modbus.1.holdingRegisters.100.2705_maxCharge']), change: 'ne' }, async (obj) => {
                                         let value = obj.state.val;
                                         let oldValue = obj.oldState.val;
                                         if ((obj.state ? obj.state.from : '') != 'system.adapter.javascript.1') {
                                           setState('Messwerte.0.Solarspitzen.manual_override' /* manual_override */, true, true);
                                         } else {
                                           setState('Messwerte.0.Solarspitzen.manual_override' /* manual_override */, false, true);
                                         }
                                        });
                                        
                                        on({ id: [].concat(['shuttercontrol.0.info.Elevation']), change: 'ne' }, async (obj) => {
                                         let value = obj.state.val;
                                         let oldValue = obj.oldState.val;
                                         if (((obj.state ? obj.state.val : '') < -3) && endeRegeln) {
                                           endeRegeln = false;
                                           setState('Messwerte.0.Solarspitzen.regelnOff' /* regelnOff */, false, true);
                                           T_End = getState('Messwerte.0.Solarspitzen.Time3').val;
                                           Ladeliste = [];
                                           setState('Messwerte.0.Solarspitzen.Ladeliste' /* Ladeliste */, Ladeliste, true);
                                           my_60Prozent = false;
                                         }
                                        });
                                        
                                        on({ id: [].concat(['Messwerte.0.Solarspitzen.forecastSonnig']), change: 'ne' }, async (obj) => {
                                         let value = obj.state.val;
                                         let oldValue = obj.oldState.val;
                                         sonnig = (obj.state ? obj.state.val : '');
                                        });
                                        

                                        und nicht lachen!
                                        ich kann besser frickeln als wie du!

                                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        1 Antwort Letzte Antwort
                                        1
                                        • K klassisch

                                          @ticaki sagte in Vergleich Solarprognosen Solarwetter und brightsky:

                                          Ich hab 2 Gruppen an einem Wechselrichter - das ist dann schon etwas komplexer :)

                                          Die Komplexität hast Du ja schon bei der Definition der Strings und deren Orientierung. Solange es nur einen WR gibt, kann man dessen summarische PV Leistung entsprechend mit Math.max clippen. Kompliziert wird es wenn es mehrere Strings an mehreren WR gibt. Beispielsweise zwei Strings an einem und drei Strings am anderen. Das würde die Konfiguration aufwendiger gestalten. Könnte man aber umgehen, indem man für jeden WR eine eigene Instanz anlegt. Jetzt nicht so hyperelegant. Aber ich würde es als user so machen. Einfach und robust. Und wer mit den Ergebnissen mehr rechnen oder regeln will, kann es ja mittels Skript selber rechnen.

                                          T Nicht stören
                                          T Nicht stören
                                          ticaki
                                          schrieb am zuletzt editiert von
                                          #152

                                          @klassisch
                                          Wenn man sowas einbaut dann richtig oder garnicht :)

                                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                          Spenden

                                          K 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          699

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          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