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. ioBroker Allgemein
  4. Solarprognose

NEWS

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

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

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

Solarprognose

Scheduled Pinned Locked Moved ioBroker Allgemein
solarprognoseadapterjavascript
157 Posts 27 Posters 27.8k Views 30 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.
  • HomoranH Homoran

    @babl sagte in Solarprognose:

    man das in dieser Form irgendwie darstellen.

    ist jetzt etwas OT, aber 21 kWh am Tag bei maximal 3,1 kW klingt für mich etwas unglaublich.
    Da müsste ja etwa 7 Stunden die Höchstleistung geliefert worden sein

    B Offline
    B Offline
    babl
    wrote on last edited by
    #22

    @Homoran jepp, habe ich mir auch schon gedacht noch dazu bin ich heute schon bei 26kw die geproddet wurden.

    kann ja auch sein, daß ich irgendwas verkehrt eingestellt habe auf der webseite von denen. Da kümmere ich mich später drum. Zuerst wollte ich mal ein Vis zusammenbasteln, mit den Daten.

    1 Reply Last reply
    0
    • paul53P paul53

      @babl sagte in Solarprognose:

      schaut doch gut aus.

      Dann hier ein komplettes Script, das jede Stunde von 4:16 Uhr bis 22:16 Uhr die Daten holt:

      const url = 'hier die komplette URL eintragen';
      const path = '0_userdata.0.Solar.';
      const idLeistung = path + 'Leistung.';
      const idEnergie  = path + 'Energie.';
      
      schedule('16 4-22 * * *', function() { 
          request(url, function (error, response, result) {
              if(error) log(error, 'error');
              else {
                  let obj = JSON.parse(result);
                  if(obj.status) log('Fehler: ' + obj.status, 'warn');
                  else {
                      let data = obj.data;
                      for(let entry in data) {
                          let time = formatDate(parseInt(entry), 'MM-DD.hh:mm');
                          if(existsState(idLeistung + time)) setState(idLeistung + time, data[entry][0], true);
                          else createState(idLeistung + time, data[entry][0], {
                              type: 'number', 
                              role: 'value', 
                              name: 'Solarleistung ' + formatDate(parseInt(entry), 'DD.MM. hh:mm'),
                              read: true,
                              write: false,
                              unit: 'kW'
                          });
                          if(existsState(idEnergie + time)) setState(idEnergie + time, data[entry][1], true);
                          else createState(idEnergie + time, data[entry][1], {
                              type: 'number', 
                              role: 'value', 
                              name: 'Solarenergie ' + formatDate(parseInt(entry), 'DD.MM. hh:mm'),
                              read: true,
                              write: false,
                              unit: 'kWh'
                          });
                      }
                  }
              }
          });
      });
      
      B Offline
      B Offline
      babl
      wrote on last edited by
      #23

      @paul53 sagte in Solarprognose:

      wow, cool wie kann man sowas so schnell erstellen, gibt es hier eine anleitung? ich will dich ja nicht andauernd nerven :)

      paul53P 1 Reply Last reply
      0
      • B babl

        @paul53 sagte in Solarprognose:

        wow, cool wie kann man sowas so schnell erstellen, gibt es hier eine anleitung? ich will dich ja nicht andauernd nerven :)

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by
        #24

        @babl sagte:

        wie kann man sowas so schnell erstellen

        Etwas Erfahrung gehört schon dazu.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        HomoranH B 2 Replies Last reply
        0
        • paul53P paul53

          @babl sagte:

          wie kann man sowas so schnell erstellen

          Etwas Erfahrung gehört schon dazu.

          HomoranH Do not disturb
          HomoranH Do not disturb
          Homoran
          Global Moderator Administrators
          wrote on last edited by
          #25

          @paul53 sagte in Solarprognose:

          Etwas Erfahrung gehört schon dazu.

          Die Untertreibung des Jahrhunderts ! ;-)

          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 -

          Meister MopperM 1 Reply Last reply
          0
          • paul53P paul53

            @babl sagte:

            wie kann man sowas so schnell erstellen

            Etwas Erfahrung gehört schon dazu.

            B Offline
            B Offline
            babl
            wrote on last edited by
            #26

            @paul53 wer es glaubt. eine frage noch den datenpunkt "0_userdata.0.Solar." muß ich selbst erstellen in den objekten, oder?

            paul53P 1 Reply Last reply
            0
            • B babl

              @paul53 wer es glaubt. eine frage noch den datenpunkt "0_userdata.0.Solar." muß ich selbst erstellen in den objekten, oder?

              paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by paul53
              #27

              @babl sagte:

              den datenpunkt "0_userdata.0.Solar." muß ich selbst erstellen in den objekten, oder?

              Nein, die Struktur wird durch das Script erzeugt. Das ist kein Datenpunkt, sondern ein Ordner.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              B 2 Replies Last reply
              0
              • paul53P paul53

                @babl sagte:

                den datenpunkt "0_userdata.0.Solar." muß ich selbst erstellen in den objekten, oder?

                Nein, die Struktur wird durch das Script erzeugt. Das ist kein Datenpunkt, sondern ein Ordner.

                B Offline
                B Offline
                babl
                wrote on last edited by
                #28

                @paul53 ok danke, ich habe es dann mal aktiviert, schaun wir mal was passiert, aufgeregt.:+1:

                1 Reply Last reply
                0
                • paul53P paul53

                  @babl sagte:

                  in flot ein diagramm zum möglichen solarertrag daß ich dann in vis einbinden kann.

                  Flot kann nur History-Daten mit Echtzeit als x-Achse darstellen, keine Vorausschau.

                  R Offline
                  R Offline
                  rudiraz
                  wrote on last edited by rudiraz
                  #29

                  @paul53 sagte in Solarprognose:

                  @babl sagte:

                  in flot ein diagramm zum möglichen solarertrag daß ich dann in vis einbinden kann.

                  Flot kann nur History-Daten mit Echtzeit als x-Achse darstellen, keine Vorausschau.

                  Ich habe leider auch keine andere Lösung gefunden.

                  Da wir eine PV-Anlage nutzen, wäre auch ich sehr an der Prognose interessiert.
                  Vor allem die grafische Darstellung.

                  Grüße

                  1 Reply Last reply
                  0
                  • paul53P paul53

                    @babl sagte:

                    den datenpunkt "0_userdata.0.Solar." muß ich selbst erstellen in den objekten, oder?

                    Nein, die Struktur wird durch das Script erzeugt. Das ist kein Datenpunkt, sondern ein Ordner.

                    B Offline
                    B Offline
                    babl
                    wrote on last edited by
                    #30

                    @paul53 hallo schaut gut aus, die punkte werden erzeugt und stehen in den objekten, coole sache aber was mir gerade so kommt hier bläht sich ja dann die datenbank immens auf kann man eventuell dieses script erweitern und die vergangen tage us den objekten löschen?. Und ein weiteres Problem sehe ich noch wie ich die Daten verwenden kann denn morgen ist es ja ein anderer Datenpunkt. Hast du da eine Idee oder jemand anderes?

                    paul53P 1 Reply Last reply
                    0
                    • B babl

                      @paul53 hallo schaut gut aus, die punkte werden erzeugt und stehen in den objekten, coole sache aber was mir gerade so kommt hier bläht sich ja dann die datenbank immens auf kann man eventuell dieses script erweitern und die vergangen tage us den objekten löschen?. Und ein weiteres Problem sehe ich noch wie ich die Daten verwenden kann denn morgen ist es ja ein anderer Datenpunkt. Hast du da eine Idee oder jemand anderes?

                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by
                      #31

                      @babl
                      Da Du keine Auskunft gegeben hast, welche Daten Du abholst, musste das Datum mit in die Datenpunkt-ID. Ich habe es nur an den Daten selbst gesehen, dass es die Daten von 2 Tagen sind. Wenn Du mitteilst, dass immer die Werte von heute und morgen abgeholt werden, kann man auch mit festen Datenpunkt-IDs arbeiten, so dass deren Anzahl konstant bleibt.

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      B 1 Reply Last reply
                      0
                      • paul53P paul53

                        @babl
                        Da Du keine Auskunft gegeben hast, welche Daten Du abholst, musste das Datum mit in die Datenpunkt-ID. Ich habe es nur an den Daten selbst gesehen, dass es die Daten von 2 Tagen sind. Wenn Du mitteilst, dass immer die Werte von heute und morgen abgeholt werden, kann man auch mit festen Datenpunkt-IDs arbeiten, so dass deren Anzahl konstant bleibt.

                        B Offline
                        B Offline
                        babl
                        wrote on last edited by
                        #32

                        @paul53 sorry dafür, das wußte ich nicht, schäm:disappointed_relieved:

                        paul53P 1 Reply Last reply
                        0
                        • B babl

                          @paul53 sorry dafür, das wußte ich nicht, schäm:disappointed_relieved:

                          paul53P Offline
                          paul53P Offline
                          paul53
                          wrote on last edited by paul53
                          #33

                          @babl
                          Wenn nur die Werte von heute und morgen abgeholt werden, kann es so aussehen:

                          const url = 'hier die komplette URL eintragen';
                          const path = '0_userdata.0.Solar.';
                          const idLeistung = path + 'Leistung.';
                          const idEnergie  = path + 'Energie.';
                          
                          schedule('16 4-22 * * *', function() { 
                              request(url, function (error, response, result) {
                                  if(error) log(error, 'error');
                                  else {
                                      let obj = JSON.parse(result);
                                      if(obj.status) log('Fehler: ' + obj.status, 'warn');
                                      else {
                                          let data = obj.data;
                                          let wdHeute = new Date().getDay();
                                          for(let entry in data) {
                                              let wd = new Date(1000 * parseInt(entry)).getDay();
                                              let time = formatDate(parseInt(entry), 'hh:mm');
                                              if(wd == wdHeute) time = 'heute_' + time;
                                              else time = 'morgen_' + time;
                                              if(existsState(idLeistung + time)) setState(idLeistung + time, data[entry][0]);
                                              else createState(idLeistung + time, data[entry][0], {
                                                  type: 'number', 
                                                  role: 'value', 
                                                  name: 'Solarleistung ' + time,
                                                  read: true,
                                                  write: false,
                                                  unit: 'kW'
                                              });
                                              if(existsState(idEnergie + time)) setState(idEnergie + time, data[entry][1]);
                                              else createState(idEnergie + time, data[entry][1], {
                                                  type: 'number', 
                                                  role: 'value', 
                                                  name: 'Solarenergie ' + time,
                                                  read: true,
                                                  write: false,
                                                  unit: 'kWh'
                                              });
                                          }
                                      }
                                  }
                              });
                          });
                          

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          B R 2 Replies Last reply
                          1
                          • paul53P paul53

                            @babl
                            Wenn nur die Werte von heute und morgen abgeholt werden, kann es so aussehen:

                            const url = 'hier die komplette URL eintragen';
                            const path = '0_userdata.0.Solar.';
                            const idLeistung = path + 'Leistung.';
                            const idEnergie  = path + 'Energie.';
                            
                            schedule('16 4-22 * * *', function() { 
                                request(url, function (error, response, result) {
                                    if(error) log(error, 'error');
                                    else {
                                        let obj = JSON.parse(result);
                                        if(obj.status) log('Fehler: ' + obj.status, 'warn');
                                        else {
                                            let data = obj.data;
                                            let wdHeute = new Date().getDay();
                                            for(let entry in data) {
                                                let wd = new Date(1000 * parseInt(entry)).getDay();
                                                let time = formatDate(parseInt(entry), 'hh:mm');
                                                if(wd == wdHeute) time = 'heute_' + time;
                                                else time = 'morgen_' + time;
                                                if(existsState(idLeistung + time)) setState(idLeistung + time, data[entry][0]);
                                                else createState(idLeistung + time, data[entry][0], {
                                                    type: 'number', 
                                                    role: 'value', 
                                                    name: 'Solarleistung ' + time,
                                                    read: true,
                                                    write: false,
                                                    unit: 'kW'
                                                });
                                                if(existsState(idEnergie + time)) setState(idEnergie + time, data[entry][1]);
                                                else createState(idEnergie + time, data[entry][1], {
                                                    type: 'number', 
                                                    role: 'value', 
                                                    name: 'Solarenergie ' + time,
                                                    read: true,
                                                    write: false,
                                                    unit: 'kWh'
                                                });
                                            }
                                        }
                                    }
                                });
                            });
                            
                            B Offline
                            B Offline
                            babl
                            wrote on last edited by
                            #34

                            @paul53 top, jetzt muß ich nur noch das irgendwie zum anzeigen bringen

                            R 1 Reply Last reply
                            0
                            • B babl

                              @paul53 top, jetzt muß ich nur noch das irgendwie zum anzeigen bringen

                              R Offline
                              R Offline
                              Rand
                              wrote on last edited by
                              #35

                              @babl

                              Bastele gerade an was ähnlichem mit solcast, und wollte das dann in Das Wetter (https://forum.iobroker.net/topic/32232/material-design-widgets-wetter-view) packen, so parallel zu Temperatur und Regenvorhersage...

                              Vieleicht wäre das ja auch für Dich ne Idee - bin nur leider noch nicht so weit.

                              B 1 Reply Last reply
                              0
                              • HomoranH Homoran

                                @babl sagte in Solarprognose:

                                man das in dieser Form irgendwie darstellen.

                                ist jetzt etwas OT, aber 21 kWh am Tag bei maximal 3,1 kW klingt für mich etwas unglaublich.
                                Da müsste ja etwa 7 Stunden die Höchstleistung geliefert worden sein

                                H Offline
                                H Offline
                                hans_999
                                wrote on last edited by
                                #36

                                @Homoran said in Solarprognose:

                                ist jetzt etwas OT, aber 21 kWh am Tag bei maximal 3,1 kW klingt für mich etwas unglaublich.
                                Da müsste ja etwa 7 Stunden die Höchstleistung geliefert worden sein

                                Das ist laut Diagramm der Tagesertrag über 12 Stunden von 7-19 Uhr.
                                Von 10:30 bis 15:00 (also 4,5 Std.) liegt die Leistung jenseits der 2,5 kW.
                                Integriert über die Stundenleistung schaut es durchaus plausibel aus.
                                Zu Fuß einfach einmal alle Stundenwerte aufsummen, das kommt zumindest in die Richtung des Ertrags.

                                B 1 Reply Last reply
                                0
                                • H hans_999

                                  @Homoran said in Solarprognose:

                                  ist jetzt etwas OT, aber 21 kWh am Tag bei maximal 3,1 kW klingt für mich etwas unglaublich.
                                  Da müsste ja etwa 7 Stunden die Höchstleistung geliefert worden sein

                                  Das ist laut Diagramm der Tagesertrag über 12 Stunden von 7-19 Uhr.
                                  Von 10:30 bis 15:00 (also 4,5 Std.) liegt die Leistung jenseits der 2,5 kW.
                                  Integriert über die Stundenleistung schaut es durchaus plausibel aus.
                                  Zu Fuß einfach einmal alle Stundenwerte aufsummen, das kommt zumindest in die Richtung des Ertrags.

                                  B Offline
                                  B Offline
                                  babl
                                  wrote on last edited by
                                  #37

                                  @hans_999 gestern wurden 15,09 vorausgesagt tatsächlich kam ich auf 15,3 Gesamtleistung, heute werden 14,9 vorausgesagt mal schauen ich halt euch auf dem laufenden

                                  1 Reply Last reply
                                  0
                                  • R Rand

                                    @babl

                                    Bastele gerade an was ähnlichem mit solcast, und wollte das dann in Das Wetter (https://forum.iobroker.net/topic/32232/material-design-widgets-wetter-view) packen, so parallel zu Temperatur und Regenvorhersage...

                                    Vieleicht wäre das ja auch für Dich ne Idee - bin nur leider noch nicht so weit.

                                    B Offline
                                    B Offline
                                    babl
                                    wrote on last edited by
                                    #38

                                    @Rand wow schaut gut aus

                                    1 Reply Last reply
                                    0
                                    • paul53P paul53

                                      @babl
                                      Wenn nur die Werte von heute und morgen abgeholt werden, kann es so aussehen:

                                      const url = 'hier die komplette URL eintragen';
                                      const path = '0_userdata.0.Solar.';
                                      const idLeistung = path + 'Leistung.';
                                      const idEnergie  = path + 'Energie.';
                                      
                                      schedule('16 4-22 * * *', function() { 
                                          request(url, function (error, response, result) {
                                              if(error) log(error, 'error');
                                              else {
                                                  let obj = JSON.parse(result);
                                                  if(obj.status) log('Fehler: ' + obj.status, 'warn');
                                                  else {
                                                      let data = obj.data;
                                                      let wdHeute = new Date().getDay();
                                                      for(let entry in data) {
                                                          let wd = new Date(1000 * parseInt(entry)).getDay();
                                                          let time = formatDate(parseInt(entry), 'hh:mm');
                                                          if(wd == wdHeute) time = 'heute_' + time;
                                                          else time = 'morgen_' + time;
                                                          if(existsState(idLeistung + time)) setState(idLeistung + time, data[entry][0]);
                                                          else createState(idLeistung + time, data[entry][0], {
                                                              type: 'number', 
                                                              role: 'value', 
                                                              name: 'Solarleistung ' + time,
                                                              read: true,
                                                              write: false,
                                                              unit: 'kW'
                                                          });
                                                          if(existsState(idEnergie + time)) setState(idEnergie + time, data[entry][1]);
                                                          else createState(idEnergie + time, data[entry][1], {
                                                              type: 'number', 
                                                              role: 'value', 
                                                              name: 'Solarenergie ' + time,
                                                              read: true,
                                                              write: false,
                                                              unit: 'kWh'
                                                          });
                                                      }
                                                  }
                                              }
                                          });
                                      });
                                      
                                      R Offline
                                      R Offline
                                      RGW
                                      wrote on last edited by
                                      #39

                                      @paul53 Was ist "die komplette URL"?
                                      Das habe ich jetzt drinstehen: http://www.solarprognose.de/web/solarprediction/api/v1?access-token="Zugriffsschlüssel aus der API-Übersicht meines Standortes"&item="Standortnummer (ID)"&id="Anlagennummer (ID)" Vielleicht stelle ich mich dumm an, jedenfalls funktionierten alle meine Versuche nicht. Deshalb wäre ich dankbar für ein Beispiel.

                                      paul53P B 2 Replies Last reply
                                      0
                                      • R RGW

                                        @paul53 Was ist "die komplette URL"?
                                        Das habe ich jetzt drinstehen: http://www.solarprognose.de/web/solarprediction/api/v1?access-token="Zugriffsschlüssel aus der API-Übersicht meines Standortes"&item="Standortnummer (ID)"&id="Anlagennummer (ID)" Vielleicht stelle ich mich dumm an, jedenfalls funktionierten alle meine Versuche nicht. Deshalb wäre ich dankbar für ein Beispiel.

                                        paul53P Offline
                                        paul53P Offline
                                        paul53
                                        wrote on last edited by
                                        #40

                                        @RGW sagte:

                                        Was ist "die komplette URL"?

                                        Keine Ahnung. Da kann sicherlich @babl helfen.

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        1 Reply Last reply
                                        0
                                        • R RGW

                                          @paul53 Was ist "die komplette URL"?
                                          Das habe ich jetzt drinstehen: http://www.solarprognose.de/web/solarprediction/api/v1?access-token="Zugriffsschlüssel aus der API-Übersicht meines Standortes"&item="Standortnummer (ID)"&id="Anlagennummer (ID)" Vielleicht stelle ich mich dumm an, jedenfalls funktionierten alle meine Versuche nicht. Deshalb wäre ich dankbar für ein Beispiel.

                                          B Offline
                                          B Offline
                                          babl
                                          wrote on last edited by
                                          #41

                                          @RGW hi,

                                          so sieht meine URL aus.

                                          http://www.solarprognose.de/web/solarprediction/api/v1?_format=json&access-token=dein_token&item=location&id=deine ID vom Standort&type=hourly
                                          

                                          dein_token ersetzen mit deinem token (api Key)
                                          deine Id vom Standort ersetzen mit deiner ID die du unter Verwaltung - Standorte rauslesen kannst und dann funktioniert das

                                          R M 2 Replies Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          532

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          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