Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Status vom Kostal Wechselrichter auslesen?

    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

    Status vom Kostal Wechselrichter auslesen?

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MartyBr @MartyBr last edited by

      @martybr

      Hier die Datenpunkte (alle DPs vor dem Start des Skriptes gelöscht):

      Bildschirmfoto 2021-10-04 um 19.04.58.png

      Bildschirmfoto 2021-10-04 um 19.05.20.png

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

        @homoran
        In der Nähe Berlins. Ich glaube, du kommst aus meiner alten Heimat (Rheinland). Richtig? Da liegen ca. 25 Minuten Sonne dazwischen.

        Edit:
        Ich gebe morgen früh Rückmeldung.

        Gruß und Dank an @Homoran und @Glasfaser

        M 1 Reply Last reply Reply Quote 0
        • M
          MartyBr @MartyBr last edited by

          @Homoran

          Guten Morgen, das Script läuft und liefert die Werte. Nur P3Leistung fehlt. Ich versuche den DP zu aktivieren.

          Bildschirmfoto 2021-10-05 um 09.10.15.png

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

            @martybr

            // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
            
            //Variable
            
            var url = '192.168.178.123'; // IP der Photovoltaik-Anlage eintragen
            var IPAnlage = url + '/api/dxs.json'; 
            
            //Leistungswerte
             var ID_DCEingangGesamt = 33556736;         // in W
             var ID_Ausgangsleistung = 67109120;        // in W
             var ID_Eigenverbrauch = 83888128;          // in W
             
             //Status
             var ID_Status = 16780032;                  // 0:Off
             
             //Statistik - Tag
             var ID_Ertrag_d = 251658754;               // in Wh
             var ID_Hausverbrauch_d = 251659010;        // in Wh
             var ID_Eigenverbrauch_d = 251659266;       // in Wh
             var ID_Eigenverbrauchsquote_d = 251659278; // in %
             var ID_Autarkiegrad_d = 251659279;         // in %
             
             //Statistik - Gesamt
             var ID_Ertrag_G = 251658753;               // in kWh
             var ID_Hausverbrauch_G = 251659009;        // in kWh
             var ID_Eigenverbrauch_G = 251659265;       // in kWh
             var ID_Eigenverbrauchsquote_G = 251659280; // in %
             var ID_Autarkiegrad_G = 251659281;         // in %
             var ID_Betriebszeit = 251658496;           // in h
             
             //Momentanwerte - PV Generator
             var ID_DC1Spannung = 33555202;             // in V
             var ID_DC1Strom = 33555201;                // in A
             var ID_DC1Leistung = 33555203;             // in W
             var ID_DC2Spannung = 33555458;             // in V
             var ID_DC2Strom = 33555457;                // in A
             var ID_DC2Leistung = 33555459;             // in W
             var ID_DC3Spannung = 33555714;             // in V
             var ID_DC3Strom = 33555713;                // in A
             var ID_DC3Leistung = 33555715;             // in W
             
             //Momentanwerte Haus
             var ID_HausverbrauchSolar = 83886336;      // in W
             var ID_HausverbrauchBatterie = 83886592;   // in W
             var ID_HausverbrauchNetz = 83886848;       // in W
             var ID_HausverbrauchPhase1 = 83887106;     // in W
             var ID_HausverbrauchPhase2 = 83887362;     // in W
             var ID_HausverbrauchPhase3 = 83887618;     // in W
             
             //Netz Netzparameter
             var ID_NetzAusgangLeistung = 67109120;     // in W
             var ID_NetzFrequenz = 67110400;            // in Hz
             var ID_NetzCosPhi = 67110656;
             
             //Netz Phase 1
             var ID_P1Spannung = 67109378;              // in V
             var ID_P1Strom = 67109377;                 // in A
             var ID_P1Leistung = 67109379;              // in W
             
             //Netz Phase 2
             var ID_P2Spannung = 67109634;              // in V
             var ID_P2Strom = 67109633;                 // in A
             var ID_P2Leistung = 67109635;              // in W
             
             //Netz Phase 3
             var ID_P3Spannung = 67109890;              // in V
             var ID_P3Strom = 67109889;                 // in A
             var ID_P3Leistung = 67109891;              // in W
            
            
            
            
            
            
            
            createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
            createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
            createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
            createState('Solaranlage.Summenwerte.Betriebszeit',0);
            createState('Solaranlage.Momentanwerte.Status','aus');
            createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
            createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
            createState('Solaranlage.Summenwerte.Eigenverbrauch_d',0);
            createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
            createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
            createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
            createState('Solaranlage.Summenwerte.Tagesertrag', 0);
            createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
            createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
            createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
            createState('Solaranlage.Momentanwerte.P1Spannung',0);
            createState('Solaranlage.Momentanwerte.P2Spannung',0);
            createState('Solaranlage.Momentanwerte.P3Spannung',0);
            createState('Solaranlage.Momentanwerte.P1Strom',0);
            createState('Solaranlage.Momentanwerte.P2Strom',0);
            createState('Solaranlage.Momentanwerte.P3Strom',0);
            createState('Solaranlage.Momentanwerte.P1Leistung',0);
            createState('Solaranlage.Momentanwerte.P2Leistung',0);
            createState('Solaranlage.Momentanwerte.P3Leistung',0);
            createState('Solaranlage.Momentanwerte.Leistung_String1',0);
            createState('Solaranlage.Momentanwerte.Leistung_String2',0);
            createState('Solaranlage.Momentanwerte.Leistung_String3',0);
            
            
            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_P3Spannung +    // 23
             '&dxsEntries=' + ID_P3Strom +       // 24
             '&dxsEntries=' + ID_DC3Leistung+    //25
             '&dxsEntries=' + ID_P3Leistung,    //26
            
             function (error, response, body) {
                 if(!error && response.statusCode ==200) {
                     if(logging) log(body);
                     var result = JSON.parse(body).dxsEntries;
                     log (result);
             		
             		var Zustand = 'aus';
            
             		if (result[20].val == 0) {
                     Zustand = 'aus';
                     } else if (result[20].value== 1) {
                     Zustand = 'Leerlauf';
                     } else if (result[20].value == 2) {
                     Zustand = 'Anfahren';
                     } else if (result[20].value == 3) {
                     Zustand = 'Einspeisen MPP';
                     } else if (result[20].value == 4) {
                     Zustand = 'Einspeisen abgeregelt';
                     } else if (result[20].value == 7) {
                     Zustand = 'Isolationsmessung';
                     } else {
                     Zustand = (String('Code ') + String('' + result[20].value));
                     }
                 
             		
             		
                     setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                     setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                     setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                     setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                     setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                     setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                     setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                     setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                     setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                     setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                     setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                     setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                     setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                     setState('Solaranlage.Momentanwerte.P3Leistung', result[26].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;
            
            

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

              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

              Nur P3Leistung fehlt. Ich versuche den DP zu aktivieren.

              den habe ich deaktiviert, um String 3 zu bekommen.

              Es scheint so, als ob der WR nur maximal 25 Elemente (0-24) ins Array packen kann.
              Wenn du P3 wieder aktivierst aber auch die [24] des Strin3 in [25] zurück ändern!

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

                @glasfaser sagte in Status vom Kostal Wechselrichter auslesen?:

                '&dxsEntries=' + ID_DC3Leistung+, //25
                '&dxsEntries=' + ID_P3Leistung, //26

                ein komma zuviel

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

                  @homoran

                  das fehlte

                  '&dxsEntries=' + ID_P3Leistung,
                  
                  setState('Solaranlage.Momentanwerte.P3Leistung', result[26].value || 0, true);
                  
                  1 Reply Last reply Reply Quote 0
                  • M
                    MartyBr @Glasfaser last edited by

                    @glasfaser sagte in Status vom Kostal Wechselrichter auslesen?:

                    // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)

                    //Variable

                    var url = '192.168.178.123'; // IP der Photovoltaik-Anlage eintragen
                    var IPAnlage = url + '/api/dxs.json';

                    //Leistungswerte
                    var ID_DCEingangGesamt = 33556736; // in W
                    var ID_Ausgangsleistung = 67109120; // in W
                    var ID_Eigenverbrauch = 83888128; // in W

                    //Status
                    var ID_Status = 16780032; // 0:Off

                    //Statistik - Tag
                    var ID_Ertrag_d = 251658754; // in Wh
                    var ID_Hausverbrauch_d = 251659010; // in Wh
                    var ID_Eigenverbrauch_d = 251659266; // in Wh
                    var ID_Eigenverbrauchsquote_d = 251659278; // in %
                    var ID_Autarkiegrad_d = 251659279; // in %

                    //Statistik - Gesamt
                    var ID_Ertrag_G = 251658753; // in kWh
                    var ID_Hausverbrauch_G = 251659009; // in kWh
                    var ID_Eigenverbrauch_G = 251659265; // in kWh
                    var ID_Eigenverbrauchsquote_G = 251659280; // in %
                    var ID_Autarkiegrad_G = 251659281; // in %
                    var ID_Betriebszeit = 251658496; // in h

                    //Momentanwerte - PV Generator
                    var ID_DC1Spannung = 33555202; // in V
                    var ID_DC1Strom = 33555201; // in A
                    var ID_DC1Leistung = 33555203; // in W
                    var ID_DC2Spannung = 33555458; // in V
                    var ID_DC2Strom = 33555457; // in A
                    var ID_DC2Leistung = 33555459; // in W
                    var ID_DC3Spannung = 33555714; // in V
                    var ID_DC3Strom = 33555713; // in A
                    var ID_DC3Leistung = 33555715; // in W

                    //Momentanwerte Haus
                    var ID_HausverbrauchSolar = 83886336; // in W
                    var ID_HausverbrauchBatterie = 83886592; // in W
                    var ID_HausverbrauchNetz = 83886848; // in W
                    var ID_HausverbrauchPhase1 = 83887106; // in W
                    var ID_HausverbrauchPhase2 = 83887362; // in W
                    var ID_HausverbrauchPhase3 = 83887618; // in W

                    //Netz Netzparameter
                    var ID_NetzAusgangLeistung = 67109120; // in W
                    var ID_NetzFrequenz = 67110400; // in Hz
                    var ID_NetzCosPhi = 67110656;

                    //Netz Phase 1
                    var ID_P1Spannung = 67109378; // in V
                    var ID_P1Strom = 67109377; // in A
                    var ID_P1Leistung = 67109379; // in W

                    //Netz Phase 2
                    var ID_P2Spannung = 67109634; // in V
                    var ID_P2Strom = 67109633; // in A
                    var ID_P2Leistung = 67109635; // in W

                    //Netz Phase 3
                    var ID_P3Spannung = 67109890; // in V
                    var ID_P3Strom = 67109889; // in A
                    var ID_P3Leistung = 67109891; // in W

                    createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                    createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                    createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                    createState('Solaranlage.Summenwerte.Betriebszeit',0);
                    createState('Solaranlage.Momentanwerte.Status','aus');
                    createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                    createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                    createState('Solaranlage.Summenwerte.Eigenverbrauch_d',0);
                    createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                    createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                    createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                    createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                    createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                    createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                    createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                    createState('Solaranlage.Momentanwerte.P1Spannung',0);
                    createState('Solaranlage.Momentanwerte.P2Spannung',0);
                    createState('Solaranlage.Momentanwerte.P3Spannung',0);
                    createState('Solaranlage.Momentanwerte.P1Strom',0);
                    createState('Solaranlage.Momentanwerte.P2Strom',0);
                    createState('Solaranlage.Momentanwerte.P3Strom',0);
                    createState('Solaranlage.Momentanwerte.P1Leistung',0);
                    createState('Solaranlage.Momentanwerte.P2Leistung',0);
                    createState('Solaranlage.Momentanwerte.P3Leistung',0);
                    createState('Solaranlage.Momentanwerte.Leistung_String1',0);
                    createState('Solaranlage.Momentanwerte.Leistung_String2',0);
                    createState('Solaranlage.Momentanwerte.Leistung_String3',0);

                    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_P3Spannung + // 23
                    '&dxsEntries=' + ID_P3Strom + // 24
                    '&dxsEntries=' + ID_DC3Leistung+ //25
                    '&dxsEntries=' + ID_P3Leistung, //26

                    function (error, response, body) {
                    if(!error && response.statusCode ==200) {
                    if(logging) log(body);
                    var result = JSON.parse(body).dxsEntries;
                    log (result);

                      var Zustand = 'aus';
                    
                      if (result[20].val == 0) {
                         Zustand = 'aus';
                         } else if (result[20].value== 1) {
                         Zustand = 'Leerlauf';
                         } else if (result[20].value == 2) {
                         Zustand = 'Anfahren';
                         } else if (result[20].value == 3) {
                         Zustand = 'Einspeisen MPP';
                         } else if (result[20].value == 4) {
                         Zustand = 'Einspeisen abgeregelt';
                         } else if (result[20].value == 7) {
                         Zustand = 'Isolationsmessung';
                         } else {
                         Zustand = (String('Code ') + String('' + result[20].value));
                         }
                     
                      
                      
                         setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                         setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                         setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                         setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                         setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                         setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                         setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                         setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                         setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                         setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                         setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                         setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                         setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                         setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                         setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                         setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                         setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                         setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                         setState('Solaranlage.Momentanwerte.P3Leistung', result[26].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;

                    Hallo @Glasfaser , das Script liefert keine aktuellen Werte für den String 3. Es werden die die Spannungswerte eingetragen. Die P3Leistung wird nicht aktualisiert.
                    Ich kann auf P3Leistung verzichten, wenn P3Strom kommt, die Leistung lässt sich über ein Blocky einfach berechnen. Der String 3 ist wichtig.

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

                      @homoran sagte in Status vom Kostal Wechselrichter auslesen?:
                      @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                      Nur P3Leistung fehlt. Ich versuche den DP zu aktivieren.

                      den habe ich deaktiviert, um String 3 zu bekommen.

                      Es scheint so, als ob der WR nur maximal 25 Elemente (0-24) ins Array packen kann.
                      Wenn du P3 wieder aktivierst aber auch die [24] des Strin3 in [25] zurück ändern!

                      Eventuell so wie schon @Homoran geschrieben .

                      Das ist alles Trockenübung 🙂

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        MartyBr @Glasfaser last edited by

                        @glasfaser

                        Hier das aktuelle Script:

                        // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                        
                        //Variable
                        
                        var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                        var IPAnlage = url + '/api/dxs.json'; 
                        
                        //Leistungswerte
                         var ID_DCEingangGesamt = 33556736;         // in W
                         var ID_Ausgangsleistung = 67109120;        // in W
                         var ID_Eigenverbrauch = 83888128;          // in W
                         
                         //Status
                         var ID_Status = 16780032;                  // 0:Off
                         
                         //Statistik - Tag
                         var ID_Ertrag_d = 251658754;               // in Wh
                         var ID_Hausverbrauch_d = 251659010;        // in Wh
                         var ID_Eigenverbrauch_d = 251659266;       // in Wh
                         var ID_Eigenverbrauchsquote_d = 251659278; // in %
                         var ID_Autarkiegrad_d = 251659279;         // in %
                         
                         //Statistik - Gesamt
                         var ID_Ertrag_G = 251658753;               // in kWh
                         var ID_Hausverbrauch_G = 251659009;        // in kWh
                         var ID_Eigenverbrauch_G = 251659265;       // in kWh
                         var ID_Eigenverbrauchsquote_G = 251659280; // in %
                         var ID_Autarkiegrad_G = 251659281;         // in %
                         var ID_Betriebszeit = 251658496;           // in h
                         
                         //Momentanwerte - PV Generator
                         var ID_DC1Spannung = 33555202;             // in V
                         var ID_DC1Strom = 33555201;                // in A
                         var ID_DC1Leistung = 33555203;             // in W
                         var ID_DC2Spannung = 33555458;             // in V
                         var ID_DC2Strom = 33555457;                // in A
                         var ID_DC2Leistung = 33555459;             // in W
                         var ID_DC3Spannung = 33555714;             // in V
                         var ID_DC3Strom = 33555713;                // in A
                         var ID_DC3Leistung = 33555715;             // in W
                         
                         //Momentanwerte Haus
                         var ID_HausverbrauchSolar = 83886336;      // in W
                         var ID_HausverbrauchBatterie = 83886592;   // in W
                         var ID_HausverbrauchNetz = 83886848;       // in W
                         var ID_HausverbrauchPhase1 = 83887106;     // in W
                         var ID_HausverbrauchPhase2 = 83887362;     // in W
                         var ID_HausverbrauchPhase3 = 83887618;     // in W
                         
                         //Netz Netzparameter
                         var ID_NetzAusgangLeistung = 67109120;     // in W
                         var ID_NetzFrequenz = 67110400;            // in Hz
                         var ID_NetzCosPhi = 67110656;
                         
                         //Netz Phase 1
                         var ID_P1Spannung = 67109378;              // in V
                         var ID_P1Strom = 67109377;                 // in A
                         var ID_P1Leistung = 67109379;              // in W
                         
                         //Netz Phase 2
                         var ID_P2Spannung = 67109634;              // in V
                         var ID_P2Strom = 67109633;                 // in A
                         var ID_P2Leistung = 67109635;              // in W
                         
                         //Netz Phase 3
                         var ID_P3Spannung = 67109890;              // in V
                         var ID_P3Strom = 67109889;                 // in A
                         var ID_P3Leistung = 67109891;              // in W
                        
                        
                        
                        
                        
                        
                        
                        createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                        createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                        createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                        createState('Solaranlage.Summenwerte.Betriebszeit',0);
                        createState('Solaranlage.Momentanwerte.Status','aus');
                        createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                        createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauch_d',0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                        createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                        createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                        createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                        createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                        createState('Solaranlage.Momentanwerte.P1Spannung',0);
                        createState('Solaranlage.Momentanwerte.P2Spannung',0);
                        createState('Solaranlage.Momentanwerte.P3Spannung',0);
                        createState('Solaranlage.Momentanwerte.P1Strom',0);
                        createState('Solaranlage.Momentanwerte.P2Strom',0);
                        createState('Solaranlage.Momentanwerte.P3Strom',0);
                        createState('Solaranlage.Momentanwerte.P1Leistung',0);
                        createState('Solaranlage.Momentanwerte.P2Leistung',0);
                        createState('Solaranlage.Momentanwerte.P3Leistung',0);
                        createState('Solaranlage.Momentanwerte.Leistung_String1',0);
                        createState('Solaranlage.Momentanwerte.Leistung_String2',0);
                        createState('Solaranlage.Momentanwerte.Leistung_String3',0);
                        
                        
                        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_P3Spannung +    // 23
                         '&dxsEntries=' + ID_P3Strom +       // 24
                         // '&dxsEntries=' + ID_DC3Leistung+    //25
                          '&dxsEntries=' + ID_DC3Leistung,    //25
                         // '&dxsEntries=' + ID_P3Leistung,    //26
                        
                         function (error, response, body) {
                             if(!error && response.statusCode ==200) {
                                 if(logging) log(body);
                                 var result = JSON.parse(body).dxsEntries;
                                 log (result);
                         		
                         		var Zustand = 'aus';
                        
                         		if (result[20].val == 0) {
                                 Zustand = 'aus';
                                 } else if (result[20].value== 1) {
                                 Zustand = 'Leerlauf';
                                 } else if (result[20].value == 2) {
                                 Zustand = 'Anfahren';
                                 } else if (result[20].value == 3) {
                                 Zustand = 'Einspeisen MPP';
                                 } else if (result[20].value == 4) {
                                 Zustand = 'Einspeisen abgeregelt';
                                 } else if (result[20].value == 7) {
                                 Zustand = 'Isolationsmessung';
                                 } else {
                                 Zustand = (String('Code ') + String('' + result[20].value));
                                 }
                             
                         		
                         		
                                 setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                 setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                 setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                                 setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                            //     setState('Solaranlage.Momentanwerte.P3Leistung', result[26].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;
                        
                        

                        Ich brauche hier den Wert für Leistung_String3. Hast du noch eine Idee?

                        Glasfaser 1 Reply Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @MartyBr last edited by

                          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                          //Netz Phase 2
                          var ID_P2Spannung = 67109634; // in V
                          var ID_P2Strom = 67109633; // in A
                          var ID_P2Leistung = 67109635; // in W

                          //Netz Phase 3
                          var ID_P3Spannung = 67109890; // in V
                          var ID_P3Strom = 67109889; // in A
                          var ID_P3Leistung = 67109891; // in W

                          tausche mal zum Test , ich habe die Werte P2Leistung / P3Leistung mal gedreht , ober er überhaupt das Ergebniss holt

                          //Netz Phase 2
                           var ID_P2Spannung = 67109634;              // in V
                           var ID_P2Strom = 67109633;                 // in A
                           var ID_P2Leistung = 67109891;              // in W
                           
                           //Netz Phase 3
                           var ID_P3Spannung = 67109890;              // in V
                           var ID_P3Strom = 67109889;                 // in A
                           var ID_P3Leistung = 67109635;              // in W
                          
                          T M 3 Replies Last reply Reply Quote 0
                          • T
                            tombox @Glasfaser last edited by

                            @glasfaser Nur kurz zum verständnis. Es gibt ja dafür ein Adapter was ist der Unterschied zum Skript?
                            https://github.com/hombach/ioBroker.kostal-piko-ba

                            M 2 Replies Last reply Reply Quote 0
                            • M
                              MartyBr @tombox last edited by

                              @tombox
                              Funktioniert der Adapter Piko_Ba mit einem Piko 20? nach meinem Sachstand nicht, der Piko_Ba ist der Vorläufer.

                              Homoran 1 Reply Last reply Reply Quote 0
                              • M
                                MartyBr @Glasfaser last edited by MartyBr

                                @glasfaser
                                Das Script zeigt Errors:

                                // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                                
                                //Variable
                                
                                var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                                var IPAnlage = url + '/api/dxs.json'; 
                                
                                //Leistungswerte
                                 var ID_DCEingangGesamt = 33556736;         // in W
                                 var ID_Ausgangsleistung = 67109120;        // in W
                                 var ID_Eigenverbrauch = 83888128;          // in W
                                 
                                 //Status
                                 var ID_Status = 16780032;                  // 0:Off
                                 
                                 //Statistik - Tag
                                 var ID_Ertrag_d = 251658754;               // in Wh
                                 var ID_Hausverbrauch_d = 251659010;        // in Wh
                                 var ID_Eigenverbrauch_d = 251659266;       // in Wh
                                 var ID_Eigenverbrauchsquote_d = 251659278; // in %
                                 var ID_Autarkiegrad_d = 251659279;         // in %
                                 
                                 //Statistik - Gesamt
                                 var ID_Ertrag_G = 251658753;               // in kWh
                                 var ID_Hausverbrauch_G = 251659009;        // in kWh
                                 var ID_Eigenverbrauch_G = 251659265;       // in kWh
                                 var ID_Eigenverbrauchsquote_G = 251659280; // in %
                                 var ID_Autarkiegrad_G = 251659281;         // in %
                                 var ID_Betriebszeit = 251658496;           // in h
                                 
                                 //Momentanwerte - PV Generator
                                 var ID_DC1Spannung = 33555202;             // in V
                                 var ID_DC1Strom = 33555201;                // in A
                                 var ID_DC1Leistung = 33555203;             // in W
                                 var ID_DC2Spannung = 33555458;             // in V
                                 var ID_DC2Strom = 33555457;                // in A
                                 var ID_DC2Leistung = 33555459;             // in W
                                 var ID_DC3Spannung = 33555714;             // in V
                                 var ID_DC3Strom = 33555713;                // in A
                                 var ID_DC3Leistung = 33555715;             // in W
                                 
                                 //Momentanwerte Haus
                                 var ID_HausverbrauchSolar = 83886336;      // in W
                                 var ID_HausverbrauchBatterie = 83886592;   // in W
                                 var ID_HausverbrauchNetz = 83886848;       // in W
                                 var ID_HausverbrauchPhase1 = 83887106;     // in W
                                 var ID_HausverbrauchPhase2 = 83887362;     // in W
                                 var ID_HausverbrauchPhase3 = 83887618;     // in W
                                 
                                 //Netz Netzparameter
                                 var ID_NetzAusgangLeistung = 67109120;     // in W
                                 var ID_NetzFrequenz = 67110400;            // in Hz
                                 var ID_NetzCosPhi = 67110656;
                                 
                                //Netz Phase 2
                                  var ID_P2Spannung = 67109634;              // in V
                                  var ID_P2Strom = 67109633;                 // in A
                                  var ID_P2Leistung = 67109891;              // in W
                                  
                                  //Netz Phase 3
                                  var ID_P3Spannung = 67109890;              // in V
                                  var ID_P3Strom = 67109889;                 // in A
                                  var ID_P3Leistung = 67109635;              // in W
                                 
                                 //Netz Phase 3
                                 var ID_P3Spannung = 67109890;              // in V
                                 var ID_P3Strom = 67109889;                 // in A
                                 var ID_P3Leistung = 67109891;              // in W
                                
                                
                                
                                
                                
                                
                                
                                createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                                createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                                createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                                createState('Solaranlage.Summenwerte.Betriebszeit',0);
                                createState('Solaranlage.Momentanwerte.Status','aus');
                                createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                                createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauch_d',0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                                createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                                createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                                createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                                createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                                createState('Solaranlage.Momentanwerte.P1Spannung',0);
                                createState('Solaranlage.Momentanwerte.P2Spannung',0);
                                createState('Solaranlage.Momentanwerte.P3Spannung',0);
                                createState('Solaranlage.Momentanwerte.P1Strom',0);
                                createState('Solaranlage.Momentanwerte.P2Strom',0);
                                createState('Solaranlage.Momentanwerte.P3Strom',0);
                                createState('Solaranlage.Momentanwerte.P1Leistung',0);
                                createState('Solaranlage.Momentanwerte.P2Leistung',0);
                                createState('Solaranlage.Momentanwerte.P3Leistung',0);
                                createState('Solaranlage.Momentanwerte.Leistung_String1',0);
                                createState('Solaranlage.Momentanwerte.Leistung_String2',0);
                                createState('Solaranlage.Momentanwerte.Leistung_String3',0);
                                
                                
                                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 +      // 18
                                 '&dxsEntries=' + ID_P2Leistung +   // 19
                                 '&dxsEntries=' + ID_Status +          // 20
                                 '&dxsEntries=' + ID_DC1Leistung +     // 21
                                 '&dxsEntries=' + ID_DC2Leistung +     // 22
                                 '&dxsEntries=' + ID_P3Spannung +    // 23
                                 '&dxsEntries=' + ID_P3Strom +       // 24
                                 '&dxsEntries=' + ID_DC3Leistung+    //25
                                //  '&dxsEntries=' + ID_DC3Leistung,    //25
                                 '&dxsEntries=' + ID_P3Leistung,    //26
                                
                                 function (error, response, body) {
                                     if(!error && response.statusCode ==200) {
                                         if(logging) log(body);
                                         var result = JSON.parse(body).dxsEntries;
                                         log (result);
                                 		
                                 		var Zustand = 'aus';
                                
                                 		if (result[20].val == 0) {
                                         Zustand = 'aus';
                                         } else if (result[20].value== 1) {
                                         Zustand = 'Leerlauf';
                                         } else if (result[20].value == 2) {
                                         Zustand = 'Anfahren';
                                         } else if (result[20].value == 3) {
                                         Zustand = 'Einspeisen MPP';
                                         } else if (result[20].value == 4) {
                                         Zustand = 'Einspeisen abgeregelt';
                                         } else if (result[20].value == 7) {
                                         Zustand = 'Isolationsmessung';
                                         } else {
                                         Zustand = (String('Code ') + String('' + result[20].value));
                                         }
                                     
                                 		
                                 		
                                         setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P2Leistung', result[20].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P3Leistung', result[26].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;
                                
                                

                                10:29:33.001 error javascript.0 (50237) at Object.Piko (script.js.Photovoltaik.Piko9:125:19)
                                10:29:44.001 error javascript.0 (50237) at Object.Piko (script.js.Photovoltaik.Piko9:125:19)

                                Ich finde den Fehler nicht.

                                Edit:
                                In Zeile 185 war der falsche Array-Wert.

                                Habe es korrigiert.

                                Hier das aktuelle Script:

                                // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                                
                                //Variable
                                
                                var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                                var IPAnlage = url + '/api/dxs.json'; 
                                
                                //Leistungswerte
                                 var ID_DCEingangGesamt = 33556736;         // in W
                                 var ID_Ausgangsleistung = 67109120;        // in W
                                 var ID_Eigenverbrauch = 83888128;          // in W
                                 
                                 //Status
                                 var ID_Status = 16780032;                  // 0:Off
                                 
                                 //Statistik - Tag
                                 var ID_Ertrag_d = 251658754;               // in Wh
                                 var ID_Hausverbrauch_d = 251659010;        // in Wh
                                 var ID_Eigenverbrauch_d = 251659266;       // in Wh
                                 var ID_Eigenverbrauchsquote_d = 251659278; // in %
                                 var ID_Autarkiegrad_d = 251659279;         // in %
                                 
                                 //Statistik - Gesamt
                                 var ID_Ertrag_G = 251658753;               // in kWh
                                 var ID_Hausverbrauch_G = 251659009;        // in kWh
                                 var ID_Eigenverbrauch_G = 251659265;       // in kWh
                                 var ID_Eigenverbrauchsquote_G = 251659280; // in %
                                 var ID_Autarkiegrad_G = 251659281;         // in %
                                 var ID_Betriebszeit = 251658496;           // in h
                                 
                                 //Momentanwerte - PV Generator
                                 var ID_DC1Spannung = 33555202;             // in V
                                 var ID_DC1Strom = 33555201;                // in A
                                 var ID_DC1Leistung = 33555203;             // in W
                                 var ID_DC2Spannung = 33555458;             // in V
                                 var ID_DC2Strom = 33555457;                // in A
                                 var ID_DC2Leistung = 33555459;             // in W
                                 var ID_DC3Spannung = 33555714;             // in V
                                 var ID_DC3Strom = 33555713;                // in A
                                 var ID_DC3Leistung = 33555715;             // in W
                                 
                                 //Momentanwerte Haus
                                 var ID_HausverbrauchSolar = 83886336;      // in W
                                 var ID_HausverbrauchBatterie = 83886592;   // in W
                                 var ID_HausverbrauchNetz = 83886848;       // in W
                                 var ID_HausverbrauchPhase1 = 83887106;     // in W
                                 var ID_HausverbrauchPhase2 = 83887362;     // in W
                                 var ID_HausverbrauchPhase3 = 83887618;     // in W
                                 
                                 //Netz Netzparameter
                                 var ID_NetzAusgangLeistung = 67109120;     // in W
                                 var ID_NetzFrequenz = 67110400;            // in Hz
                                 var ID_NetzCosPhi = 67110656;
                                 
                                //Netz Phase 2
                                  var ID_P2Spannung = 67109634;              // in V
                                  var ID_P2Strom = 67109633;                 // in A
                                  var ID_P2Leistung = 67109891;              // in W
                                  
                                  //Netz Phase 3
                                  var ID_P3Spannung = 67109890;              // in V
                                  var ID_P3Strom = 67109889;                 // in A
                                  var ID_P3Leistung = 67109635;              // in W
                                 
                                 //Netz Phase 3
                                 var ID_P3Spannung = 67109890;              // in V
                                 var ID_P3Strom = 67109889;                 // in A
                                 var ID_P3Leistung = 67109891;              // in W
                                
                                
                                
                                
                                
                                
                                
                                createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                                createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                                createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                                createState('Solaranlage.Summenwerte.Betriebszeit',0);
                                createState('Solaranlage.Momentanwerte.Status','aus');
                                createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                                createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauch_d',0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                                createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                                createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                                createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                                createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                                createState('Solaranlage.Momentanwerte.P1Spannung',0);
                                createState('Solaranlage.Momentanwerte.P2Spannung',0);
                                createState('Solaranlage.Momentanwerte.P3Spannung',0);
                                createState('Solaranlage.Momentanwerte.P1Strom',0);
                                createState('Solaranlage.Momentanwerte.P2Strom',0);
                                createState('Solaranlage.Momentanwerte.P3Strom',0);
                                createState('Solaranlage.Momentanwerte.P1Leistung',0);
                                createState('Solaranlage.Momentanwerte.P2Leistung',0);
                                createState('Solaranlage.Momentanwerte.P3Leistung',0);
                                createState('Solaranlage.Momentanwerte.Leistung_String1',0);
                                createState('Solaranlage.Momentanwerte.Leistung_String2',0);
                                createState('Solaranlage.Momentanwerte.Leistung_String3',0);
                                
                                
                                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 +      // 18
                                 '&dxsEntries=' + ID_P2Leistung +   // 19
                                 '&dxsEntries=' + ID_Status +          // 20
                                 '&dxsEntries=' + ID_DC1Leistung +     // 21
                                 '&dxsEntries=' + ID_DC2Leistung +     // 22
                                 '&dxsEntries=' + ID_P3Spannung +    // 23
                                 '&dxsEntries=' + ID_P3Strom +       // 24
                                 '&dxsEntries=' + ID_DC3Leistung+    //25
                                //  '&dxsEntries=' + ID_DC3Leistung,    //25
                                 '&dxsEntries=' + ID_P3Leistung,    //26
                                
                                 function (error, response, body) {
                                     if(!error && response.statusCode ==200) {
                                         if(logging) log(body);
                                         var result = JSON.parse(body).dxsEntries;
                                         log (result);
                                 		
                                 		var Zustand = 'aus';
                                
                                 		if (result[20].val == 0) {
                                         Zustand = 'aus';
                                         } else if (result[20].value== 1) {
                                         Zustand = 'Leerlauf';
                                         } else if (result[20].value == 2) {
                                         Zustand = 'Anfahren';
                                         } else if (result[20].value == 3) {
                                         Zustand = 'Einspeisen MPP';
                                         } else if (result[20].value == 4) {
                                         Zustand = 'Einspeisen abgeregelt';
                                         } else if (result[20].value == 7) {
                                         Zustand = 'Isolationsmessung';
                                         } else {
                                         Zustand = (String('Code ') + String('' + result[20].value));
                                         }
                                     
                                 		
                                 		
                                         setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                         setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                                         setState('Solaranlage.Momentanwerte.P3Leistung', result[26].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;
                                
                                

                                Liefert immer noch Fehler.

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  MartyBr @MartyBr last edited by

                                  @Glasfaser

                                  Hier das laufende Script ohne P2Leistung und P3Leistung.

                                  // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                                  
                                  //Variable
                                  
                                  var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                                  var IPAnlage = url + '/api/dxs.json'; 
                                  
                                  //Leistungswerte
                                   var ID_DCEingangGesamt = 33556736;         // in W
                                   var ID_Ausgangsleistung = 67109120;        // in W
                                   var ID_Eigenverbrauch = 83888128;          // in W
                                   
                                   //Status
                                   var ID_Status = 16780032;                  // 0:Off
                                   
                                   //Statistik - Tag
                                   var ID_Ertrag_d = 251658754;               // in Wh
                                   var ID_Hausverbrauch_d = 251659010;        // in Wh
                                   var ID_Eigenverbrauch_d = 251659266;       // in Wh
                                   var ID_Eigenverbrauchsquote_d = 251659278; // in %
                                   var ID_Autarkiegrad_d = 251659279;         // in %
                                   
                                   //Statistik - Gesamt
                                   var ID_Ertrag_G = 251658753;               // in kWh
                                   var ID_Hausverbrauch_G = 251659009;        // in kWh
                                   var ID_Eigenverbrauch_G = 251659265;       // in kWh
                                   var ID_Eigenverbrauchsquote_G = 251659280; // in %
                                   var ID_Autarkiegrad_G = 251659281;         // in %
                                   var ID_Betriebszeit = 251658496;           // in h
                                   
                                   //Momentanwerte - PV Generator
                                   var ID_DC1Spannung = 33555202;             // in V
                                   var ID_DC1Strom = 33555201;                // in A
                                   var ID_DC1Leistung = 33555203;             // in W
                                   var ID_DC2Spannung = 33555458;             // in V
                                   var ID_DC2Strom = 33555457;                // in A
                                   var ID_DC2Leistung = 33555459;             // in W
                                   var ID_DC3Spannung = 33555714;             // in V
                                   var ID_DC3Strom = 33555713;                // in A
                                   var ID_DC3Leistung = 33555715;             // in W
                                   
                                   //Momentanwerte Haus
                                   var ID_HausverbrauchSolar = 83886336;      // in W
                                   var ID_HausverbrauchBatterie = 83886592;   // in W
                                   var ID_HausverbrauchNetz = 83886848;       // in W
                                   var ID_HausverbrauchPhase1 = 83887106;     // in W
                                   var ID_HausverbrauchPhase2 = 83887362;     // in W
                                   var ID_HausverbrauchPhase3 = 83887618;     // in W
                                   
                                   //Netz Netzparameter
                                   var ID_NetzAusgangLeistung = 67109120;     // in W
                                   var ID_NetzFrequenz = 67110400;            // in Hz
                                   var ID_NetzCosPhi = 67110656;
                                   
                                   //Netz Phase 1
                                   var ID_P1Spannung = 67109378;              // in V
                                   var ID_P1Strom = 67109377;                 // in A
                                   var ID_P1Leistung = 67109379;              // in W
                                   
                                   //Netz Phase 2
                                   var ID_P2Spannung = 67109634;              // in V
                                   var ID_P2Strom = 67109633;                 // in A
                                   var ID_P2Leistung = 67109635;              // in W
                                   
                                   //Netz Phase 3
                                   var ID_P3Spannung = 67109890;              // in V
                                   var ID_P3Strom = 67109889;                 // in A
                                   var ID_P3Leistung = 67109891;              // in W
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                                  createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                                  createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                                  createState('Solaranlage.Summenwerte.Betriebszeit',0);
                                  createState('Solaranlage.Momentanwerte.Status','aus');
                                  createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                                  createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                                  createState('Solaranlage.Summenwerte.Eigenverbrauch_d',0);
                                  createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                                  createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                                  createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                                  createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                                  createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                                  createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                                  createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                                  createState('Solaranlage.Momentanwerte.P1Spannung',0);
                                  createState('Solaranlage.Momentanwerte.P2Spannung',0);
                                  createState('Solaranlage.Momentanwerte.P3Spannung',0);
                                  createState('Solaranlage.Momentanwerte.P1Strom',0);
                                  createState('Solaranlage.Momentanwerte.P2Strom',0);
                                  createState('Solaranlage.Momentanwerte.P3Strom',0);
                                  createState('Solaranlage.Momentanwerte.P1Leistung',0);
                                  createState('Solaranlage.Momentanwerte.P2Leistung',0);
                                  createState('Solaranlage.Momentanwerte.P3Leistung',0);
                                  createState('Solaranlage.Momentanwerte.Leistung_String1',0);
                                  createState('Solaranlage.Momentanwerte.Leistung_String2',0);
                                  createState('Solaranlage.Momentanwerte.Leistung_String3',0);
                                  
                                  
                                  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 +      // 18
                                  //  '&dxsEntries=' + ID_P2Leistung +   // 19
                                   '&dxsEntries=' + ID_Status +          // 19
                                   '&dxsEntries=' + ID_DC1Leistung +     // 20
                                   '&dxsEntries=' + ID_DC2Leistung +     // 21
                                   '&dxsEntries=' + ID_P3Spannung +    // 22
                                   '&dxsEntries=' + ID_P3Strom +       // 23
                                   // '&dxsEntries=' + ID_DC3Leistung+    //25
                                    '&dxsEntries=' + ID_DC3Leistung,    //24
                                   // '&dxsEntries=' + ID_P3Leistung,    //26
                                  
                                   function (error, response, body) {
                                       if(!error && response.statusCode ==200) {
                                           if(logging) log(body);
                                           var result = JSON.parse(body).dxsEntries;
                                           log (result);
                                   		
                                   		var Zustand = 'aus';
                                  
                                   		if (result[19].val == 0) {
                                           Zustand = 'aus';
                                           } else if (result[19].value== 1) {
                                           Zustand = 'Leerlauf';
                                           } else if (result[19].value == 2) {
                                           Zustand = 'Anfahren';
                                           } else if (result[19].value == 3) {
                                           Zustand = 'Einspeisen MPP';
                                           } else if (result[19].value == 4) {
                                           Zustand = 'Einspeisen abgeregelt';
                                           } else if (result[19].value == 7) {
                                           Zustand = 'Isolationsmessung';
                                           } else {
                                           Zustand = (String('Code ') + String('' + result[19].value));
                                           }
                                       
                                   		
                                   		
                                           setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                  //         setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_String1', result[20].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_String2', result[21].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P3Spannung', result[22].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P3Strom', result[23].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_String3', result[24].value || 0, true);
                                      //     setState('Solaranlage.Momentanwerte.P3Leistung', result[26].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;
                                  
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    MartyBr @tombox last edited by

                                    @tombox
                                    Ich nehme alles zurück und behaupte das Gegenteil!!!!

                                    @tombox
                                    Du hast mich gerettet, der Piko_Ba läuft mit meinem Piko 20 und ich bekomme alle Werte.

                                    Einen Riesen Dank an euch Alle @Homoran @Glasfaser @tombox

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      MartyBr @Glasfaser last edited by

                                      @glasfaser
                                      Das Script nimmt nur 24 Werte an. Das hast du mit dem Array Recht gehabt. Ich habe eine Weile mit den DPs experimentiert. Ich dachte, ich kann die Leistung über Strom * Spannung errechnen und damit auf P2Leistung verzichten. Das funktioniert aber nicht mit den echten Werten aus dem Piko.

                                      Ich gebe damit den Versuch mit dem Script auf.

                                      Danke nochmal für deine Unterstützung.

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

                                        @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                        Funktioniert der Adapter Piko_Ba mit einem Piko 20?

                                        @tombox
                                        nein!

                                        EDIT:

                                        @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                        ich nehme alles zurück und behaupte das Gegenteil!!!!

                                        wieso klappt der bei dir?
                                        ich habe nur einen 5.5, da klappt der Adapter nicht

                                        @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                        Das Script nimmt nur 24 Werte an

                                        nein 25!

                                        @homoran sagte in Status vom Kostal Wechselrichter auslesen?:

                                        Es scheint so, als ob der WR nur maximal 25 Elemente (0-24) ins Array packen kann.

                                        liegt aber nicht am Skript

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

                                          @homoran
                                          Der Adapter Kostal_Piko_BA liest meinen Piko 20 aus. FW: 6.11
                                          Vielleicht liegt es an der Firmware.

                                          Habt Ihr schon rausgefunden, warum der WR nur die 25 Werte liefert? Hängt es mit der API zusammen?

                                          Hier die Werte vom Kostal_Piko_BA:

                                          Bildschirmfoto 2021-10-05 um 17.21.48.png

                                          Ich habe es auch mittlerweile geschafft, den Kostal Smart Energy Meter auszulesen. Das funktioniert mit Modus und den Sunspec-Registern.

                                          Wenn Interesse besteht, dann kann ich die Holding-Register hier posten.

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

                                            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                            Habt Ihr schon rausgefunden, warum der WR nur die 25 Werte liefert?

                                            nein!

                                            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                            Hängt es mit der API zusammen?

                                            möglich!

                                            Ich habe mir mal die Konfigurationen des Adapters angeshen (nicht den code) und der scheint genau das zu machen, was ich dir sonst auch empfohlen hätte:
                                            Mehrere Abfragen mit jeweils weniger Elementen.

                                            In der Konfig des Adapters kann man 3 Intervalle für die verschiedenen Elemente einstellen, also werden das auch 3 Abfragen sein, die du versuchst mit dem Skript auf einmal abzufragen

                                            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                            Hier die Werte vom Kostal_Piko_BA:

                                            Den Adapter kann ich leider nicht (vollständig) nutzen, da ich das Skript über den Smartmeter-Adapter triggere um zeitgleiche Solar- und Verbrauchswerte zu erhalten um daraus den effektiven Verbrauch (z.B. aktuelle Einspeisung - Solarproduktion = Verbrauch) zu berechnen.

                                            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                            Ich habe es auch mittlerweile geschafft, den Kostal Smart Energy Meter auszulesen. Das funktioniert mit Modus und den Sunspec-Registern.

                                            dazu hatte ich mal bei Kostal nachgefragt. Die ModBus Spezifikationen wollte man mir nur für private Nutzung gegen eine Verschwiegenheitserklärung herausrücken.

                                            M 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

                                            422
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            35
                                            331
                                            58784
                                            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