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 @Homoran last edited by

      @homoran
      Klar, teste ich.

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

        @homoran 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

        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[24].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;

        Alle Momentan-Werte stehen auf 0 (Es ist nun dunkel!).

        Log:

        javascript.0 (50237) script.js.Photovoltaik.Piko5: [{'dxsId':33556736,'value':0},{'dxsId':67109120,'value':0},{'dxsId':83888128,'value':0},{'dxsId':251659266,'value':0},{'dxsId':251659265,'value':0},{'dxsId':251659278,'value':0},{'dxsId':251659280,'value':0},{'dxsId':251658754,'value':9121.470703},{'dxsId':251658753,'value':345.619873},{'dxsId':251659010,'value':0},{'dxsId':251659009,'value':0},{'dxsId':251659281,'value':0},{'dxsId':251659279,'value':0},{'dxsId':251658496,'value':141},{'dxsId':67109378,'value':0},{'dxsId':67109634,'value':0},{'dxsId':67109377,'value':0},{'dxsId':67109633,'value':0},{'dxsId':67109379,'value':0},{'dxsId':67109635,'value':0},{'dxsId':16780032,'value':0},{'dxsId':33555203,'value':0},{'dxsId':33555459,'value':0},{'dxsId':67109890,'value':0},{'dxsId':33555715,'value':0}]
        
        Homoran M 2 Replies Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @MartyBr last edited by Homoran

          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

          Es ist nun dunkel!

          wo wohnst du??
          ich hab noch ein paar Watt obwohl ich nach NO ausgerichtet bin

          aber sieht vielversprechend aus:
          'dxsId':33555715,'value':0}]

          M 1 Reply Last reply Reply Quote 0
          • 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
                                            • First post
                                              Last post

                                            Support us

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

                                            626
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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