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. Solaredge mit Zigbee einbinden?

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Solaredge mit Zigbee einbinden?

Geplant Angeheftet Gesperrt Verschoben Ungelöst ioBroker Allgemein
solaredge
66 Beiträge 9 Kommentatoren 11.2k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Offline
    P Offline
    Paan83
    schrieb am zuletzt editiert von
    #61

    @cburghardt kann es sein dass bei mir die Werte fehlen?

    C 1 Antwort Letzte Antwort
    0
    • P Paan83

      @cburghardt kann es sein dass bei mir die Werte fehlen?

      C Offline
      C Offline
      cburghardt
      schrieb am zuletzt editiert von
      #62

      @Paan83 dann sollte aber im Datenpunkt "Production" schon etwas anderes als 0 stehen, zumindest wenn in den letzten 15 Minuten etwas produziert wurde. Der Wert ist in kWh. Wenn du wH haben möchtest, entfernst du einfach das " / 1000", also:

      var value = Number(result.energyDetails.meters[i].values[0].value);
      

      Habs gerade getestet, die Werte werden erstellt.
      Nachdem nur Produktion geliefert wird und kein Verbrauch o.ä. hast du wohl keinen Modbus Zähler installiert.

      1 Antwort Letzte Antwort
      0
      • P Offline
        P Offline
        Paan83
        schrieb am zuletzt editiert von
        #63

        Ich habe mir das pdf Dokument von Solaredge nochmal durchgelesen und habe mit den url's rumprobiert. Ich bekomme jetzt doch die erhofften Werte, hier mal ein Beispiel:
        Unbenannt.JPG
        Was ich jetzt noch nicht herausgefunden habe, wie ich es machen soll dass er mir die produzierten kWh Stunden vom aktuellen Tag, und kWh's vom 1.ten des Monats bis heute ausgibt.

        C 1 Antwort Letzte Antwort
        0
        • P Paan83

          Ich habe mir das pdf Dokument von Solaredge nochmal durchgelesen und habe mit den url's rumprobiert. Ich bekomme jetzt doch die erhofften Werte, hier mal ein Beispiel:
          Unbenannt.JPG
          Was ich jetzt noch nicht herausgefunden habe, wie ich es machen soll dass er mir die produzierten kWh Stunden vom aktuellen Tag, und kWh's vom 1.ten des Monats bis heute ausgibt.

          C Offline
          C Offline
          cburghardt
          schrieb am zuletzt editiert von
          #64

          @Paan83 vorherige Tag, also morgens aufrufen:

          function totalDay() {    
              var date = new Date();
              date.setDate(date.getDate()-1);
              var dateStr = date.getFullYear() + "-" + (date.getMonth()+1) + "-" + date.getDate();
              var endTime = dateStr + "%2023:59:59";
              var startTime = dateStr + "%2000:00:00";
              var link = "https://monitoringapi.solaredge.com/site/" + site + "/energyDetails?endTime=" + endTime + "&startTime=" + startTime + "&timeUnit=DAY&api_key=" + api_key;
              request(link, function(error, response, body) {
                  if (error) log('Error from Solaredge API:' + error, 'error');        
                  else {            
                      var result = JSON.parse(body);
                      for (var i = 0; i < result.energyDetails.meters.length; ++i) {
                          var t = result.energyDetails.meters[i].type;
                          var value = Number(result.energyDetails.meters[i].values[0].value) / 1000;
                          setState("stats." + t, value);
                      }
                  }    
              });
          }
          
          1 Antwort Letzte Antwort
          0
          • S sol21

            Ja, grundsätzlich klappt es auch mit einem einfachen Blockly (hatte ich früher mal) mit der Rechnung wie Du sie geschrieben hast.
            Wenn Du nur den Wert anzeigen willst ist das auch gut. Bei mir gab es dann allerdings bei einer Kurvenaufzeichnung unschöne Spitzen. Die kommen scheinbar daher, dass der Scale-Faktor und der Wert nicht 100% gleichzeitig umschalten.
            Ich bekam dann Hilfe aus dem Forum und seither habe ich folgendes Script

            /*
            Quelle Script: 
            http://forum.iobroker.net/viewtopic.php?f=21&t=3961
            */
            function convertValue(value, factor) {
               if (value === null) return;
               if (factor === null) factor = 0;
               setState('PV_Leistung', value * Math.pow(10, factor), true);
            }  
            createState('PV_Leistung', {
               name: 'AC Power value',
               unit: 'W',
               min:  0,
               type: 'number',
               role: 'value.energy'
            }, function () {
               on('modbus.0.holdingRegisters.40084_WR_Leistung', function(obj) {
                  var timeout = setTimeout(function () {
                     clearTimeout(timeout);
                     var factorState = getState('modbus.0.holdingRegisters.40085_WR_Leistung scale');
                     convertValue(obj.state.val, factorState ? factorState.val : 0);
                  }, 100); 
               });
               var factorState = getState('modbus.0.holdingRegisters.40085_WR_Leistung scale');
               var valueState = getState('modbus.0.holdingRegisters.40084_WR_Leistung');
               convertValue(valueState ? valueState.val : null, factorState ? factorState.val : 0); 
            });
            

            Klappt gut, einfach kontrollieren dass die Variablen im Modbus Adapter gleich heissen (40084_WR_Leistung und 40085_WR_Leistung scale) oder im Code anpassen.
            Neu gibt es nun das Objekt "PV_Leisung" mit der berechneten Leistung.

            Die Startadresse steht schon standardmässig auf 40001, das brauch ich doch eigentlich nicht anzurühren, ich tippe ja nur meine Werte unten in der Zeile ein oder?

            Die Start-Adresse war nur als Idee gedacht wenn wir den Adapter nicht auf grün kriegen. Also alles i.O.

            R Offline
            R Offline
            Randy
            schrieb am zuletzt editiert von Randy
            #65

            @sol21
            Frage hat sich erledigt...

            1 Antwort Letzte Antwort
            0
            • B Offline
              B Offline
              bluppdiwupp
              schrieb am zuletzt editiert von
              #66

              wo wird der Script eingefügt? Ich bekomme es leider nicht hin...

              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

              473

              Online

              32.6k

              Benutzer

              82.2k

              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