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.
    • 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

                                  874
                                  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