Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Eigenverbrauch PV - PIKO

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Eigenverbrauch PV - PIKO

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @mkrobe last edited by

      @mkrobe sagte in Eigenverbrauch PV - PIKO:

      Laut Script müssten PV- seitig die Daten zumindes für DC! und DC2 da sein,

      nein!
      siehe meinen Beitrag von eben.

      das sind nur die Variablen. Diese werden bei dem Skript aber nicht bei SetState benutzt.

      mkrobe 1 Reply Last reply Reply Quote 0
      • mkrobe
        mkrobe @Homoran last edited by

        @Homoran sagte in Eigenverbrauch PV - PIKO:

        Diese werden bei dem Skript aber nicht bei SetState benutzt.

        Stimmt, zumindest sind sie String1+2 ausgeklammert.

        (Sorry, ich hab's nicht so mit Scripten und ohne die Community, die solche zu Verfügung stellt, würde ich sowas nicht auf die Reihe kriegen)

        Homoran 1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @mkrobe last edited by

          @mkrobe sagte in Eigenverbrauch PV - PIKO:

          ich hab's nicht so mit Scripten und ohne die Community, die solche zu Verfügung stellt, würde ich sowas nicht auf die Reihe kriegen

          ich auch nicht, ich traue mich aber (sicherungskopie vorausgesetzt) in skripten Zeilen zu duplizieren und sie anzupassen

          mkrobe 1 Reply Last reply Reply Quote 0
          • mkrobe
            mkrobe @Homoran last edited by

            @Homoran
            ... das zumindest versuche ich dann auch.
            aber alleine die Variablen in DuckDuckGo zu suchen ...
            ...wüsste ich erstmal nicht wonach man da sucht 🙄

            Homoran 1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @mkrobe last edited by

              @mkrobe sagte in Eigenverbrauch PV - PIKO:

              wüsste ich erstmal nicht wonach man da sucht

              "PIKO"
              "ID_DC1Spannung"

              und erhält:
              https://www.msxfaq.de/sonst/iot/kostal15.htm

              mkrobe 1 Reply Last reply Reply Quote 0
              • mkrobe
                mkrobe @Homoran last edited by

                @Homoran 👍

                Homoran 1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @mkrobe last edited by Homoran

                  @mkrobe Hier ist "mein" Skript.

                  // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                  
                  //Variable
                  
                   //Leistungswerte
                      ID_DCEingangGesamt = 33556736;         // in W
                      ID_Ausgangsleistung = 67109120;        // in W
                      ID_Eigenverbrauch = 83888128;          // in W
                      //Status
                      ID_Status = 16780032;                  // 0:Off
                      //Statistik - Tag
                      ID_Ertrag_d = 251658754;               // in Wh
                      ID_Hausverbrauch_d = 251659010;        // in Wh
                      ID_Eigenverbrauch_d = 251659266;       // in Wh
                      ID_Eigenverbrauchsquote_d = 251659278; // in %
                      ID_Autarkiegrad_d = 251659279;         // in %
                      //Statistik - Gesamt
                      ID_Ertrag_G = 251658753;               // in kWh
                      ID_Hausverbrauch_G = 251659009;        // in kWh
                      ID_Eigenverbrauch_G = 251659265;       // in kWh
                      ID_Eigenverbrauchsquote_G = 251659280; // in %
                      ID_Autarkiegrad_G = 251659281;         // in %
                      ID_Betriebszeit = 251658496;           // in h
                      //Momentanwerte - PV Genertor
                      ID_DC1Spannung = 33555202;             // in V
                      ID_DC1Strom = 33555201;                // in A
                      ID_DC1Leistung = 33555203;             // in W
                      ID_DC2Spannung = 33555458;             // in V
                      ID_DC2Strom = 33555457;                // in A
                      ID_DC2Leistung = 33555459;             // in W
                      ID_DC3Spannung = 33555714;             // in V
                      ID_DC3Strom = 33555713;                // in A
                      ID_DC3Leistung = 33555715;             // in W
                      //Momentanwerte Haus
                      ID_HausverbrauchSolar = 83886336;      // in W
                      ID_HausverbrauchBatterie = 83886592;   // in W
                      ID_HausverbrauchNetz = 83886848;       // in W
                      ID_HausverbrauchPhase1 = 83887106;     // in W
                      ID_HausverbrauchPhase2 = 83887362;     // in W
                      ID_HausverbrauchPhase3 = 83887618;     // in W
                      //Netz Netzparameter
                      ID_NetzAusgangLeistung = 67109120;     // in W
                      ID_NetzFrequenz = 67110400;            // in Hz
                      ID_NetzCosPhi = 67110656;
                      //Netz Phase 1
                      ID_P1Spannung = 67109378;              // in V
                      ID_P1Strom = 67109377;                 // in A
                      ID_P1Leistung = 67109379;              // in W
                      //Netz Phase 2
                      ID_P2Spannung = 67109634;              // in V
                      ID_P2Strom = 67109633;                 // in A
                      ID_P2Leistung = 67109635;              // in W
                      //Netz Phase 3
                      ID_P3Spannung = 67109890;              // in V
                      ID_P3Strom = 67109889;                 // in A
                      ID_P3Leistung = 67109891;              // in W
                  
                  
                   
                  var IPAnlage = '192.168.xxx.yyy/api/dxs.json';   // IP der Photovoltaik-Anlage
                  
                  
                  
                  createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d',0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G',0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit',0);
                  createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                  createState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch',0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d');
                  createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                  createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P1Spannung');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.P3Leistung');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2');
                  createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String3');
                  
                  
                  var logging = false;
                  var request = require('request');
                  
                  function Piko() {
                      if (logging) log("Piko 5.5 auslesen");
                      request('http://' + IPAnlage + 
                      '?dxsEntries=' + ID_DCEingangGesamt +
                      '&dxsEntries=' + ID_Ausgangsleistung +
                      '&dxsEntries=' + ID_Eigenverbrauch +
                      '&dxsEntries=' + ID_Eigenverbrauch_d +
                      '&dxsEntries=' + ID_Eigenverbrauch_G +
                      '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
                      '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
                      '&dxsEntries=' + ID_Ertrag_d +
                      '&dxsEntries=' + ID_Ertrag_G +
                      '&dxsEntries=' + ID_Hausverbrauch_d +
                      '&dxsEntries=' + ID_Hausverbrauch_G +
                      '&dxsEntries=' + ID_Autarkiegrad_G +
                      '&dxsEntries=' + ID_Autarkiegrad_d +
                      '&dxsEntries=' + ID_Betriebszeit +
                      '&dxsEntries=' + ID_P1Spannung +
                      '&dxsEntries=' + ID_P2Spannung +
                      '&dxsEntries=' + ID_P1Strom +
                      '&dxsEntries=' + ID_P2Strom +
                      '&dxsEntries=' + ID_P1Leistung +
                      '&dxsEntries=' + ID_P2Leistung +
                      '&dxsEntries=' + ID_Status +
                      '&dxsEntries=' + ID_DC1Leistung +
                      '&dxsEntries=' + ID_DC2Leistung +
                      '&dxsEntries=' + ID_DC3Leistung,
                      
                      function (error, response, body) {
                          if(!error && response.statusCode ==200) {
                              if(logging) log(body);
                              var result = JSON.parse(body).dxsEntries;
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Status', result[20].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                              setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String3', result[23].value || 0, true);
                          } else {
                              log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                          }
                      });
                  }
                  
                  //schedule("*/11 * 5-23 * * *", Piko);
                  on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
                  

                  bitte noch die IP anpassen
                  ich versuche eben noch "trocken" den String 3 einzubauen

                  EDIT: Done - ohne Gewähr

                  mkrobe 1 Reply Last reply Reply Quote 0
                  • mkrobe
                    mkrobe @Homoran last edited by

                    @Homoran sagte in Eigenverbrauch PV - PIKO:

                    bitte noch die IP anpassen
                    ich versuche eben noch "trocken" den String 3 einzubauen
                    EDIT: Done - ohne Gewähr

                    Danke schonmal!
                    Script läuft, aber ist eigentlich wie das alte, es werden nur die Leistungswerte "Netzseite" angezeigt, nicht jedoch die Leistungswerte der PV-Strings.

                    Homoran 2 Replies Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @mkrobe last edited by

                      @mkrobe Wann hast du das Skript genommen?
                      stand da schon EDIT?

                      ggf. nochmals die Datenpunkte alle löschen und das Skript neu starten

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @mkrobe last edited by

                        @mkrobe
                        Hab nochmal was geändert

                        1 Reply Last reply Reply Quote 0
                        • mkrobe
                          mkrobe last edited by

                          ....jetzt läufts, Vielen Dank!

                          Homoran 1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @mkrobe last edited by

                            @mkrobe sagte in Eigenverbrauch PV - PIKO:

                            ....jetzt läufts, Vielen Dank!

                            Alle drei Strings?

                            Es wäre noch möglich für die Strings auch die Spannung und die Stromstärke zu bekommen, war mir aber nicht wichtig

                            1 Reply Last reply Reply Quote 0
                            • mkrobe
                              mkrobe last edited by

                              Ich habe einfach die Paramter geändert:

                                  //PV String 1
                                  ID_P1Spannung = 33555202;              // in V
                                  ID_P1Strom = 33555201;                 // in A
                                  ID_P1Leistung = 33555203;              // in W
                                  //PV String 2
                                  ID_P2Spannung = 33555458;              // in V
                                  ID_P2Strom = 33555457;                 // in A
                                  ID_P2Leistung = 33555459;              // in W
                                  //PV String 3
                                  ID_P3Spannung = 33555714;              // in V
                                  ID_P3Strom = 33555713;                 // in A
                                  ID_P3Leistung = 33555715;              // in W
                              
                              

                              Da mich die Netzwerte nicht interessieren.
                              Habe damit alles was ich brauche. Nur mit der grafischen Darstellung muß ich noch viel lernen, ich mach das in Flott für jeden Wert und dann in vis runtime füge ich die irgendwie zusammen. So eine Grafik wie Du hast...... da bin ich ja mal meilenweit weg 😉 Das ist mir im Moment noch zu hoch. Aber: "mühsam ernährt sich das Eichhörnchen" 🙂

                              Homoran 1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @mkrobe last edited by

                                @mkrobe sagte in Eigenverbrauch PV - PIKO:

                                o eine Grafik wie Du hast...... da bin ich ja mal meilenweit weg

                                die ist auch über Jahre gewachsen

                                1 Reply Last reply Reply Quote 0
                                • mkrobe
                                  mkrobe last edited by

                                  Kann man eigentlich im Script die Werte auf 1 oder 2 Stellen hinter dem Komma beschneiden?

                                  Homoran 1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @mkrobe last edited by

                                    @mkrobe sagte in Eigenverbrauch PV - PIKO:

                                    Kann man eigentlich im Script die Werte auf 1 oder 2 Stellen hinter dem Komma beschneiden?

                                    Ja!

                                    man kann das, ich nicht wirklich so aus der Hinterhand ;-9

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

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

                                    934
                                    Online

                                    31.9k
                                    Users

                                    80.1k
                                    Topics

                                    1.3m
                                    Posts

                                    5
                                    57
                                    3946
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo