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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Status vom Kostal Wechselrichter auslesen?

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

      @glasfaser sagte in Status vom Kostal Wechselrichter auslesen?:

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

      //Variable

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

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

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

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

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

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

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

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

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

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

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

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

      var logging = false;
      var request = require('request');

      function Piko() {
      if (logging) log("Piko 5.5 auslesen");
      request('http://' + IPAnlage +
      '?dxsEntries=' + ID_DCEingangGesamt +
      '&dxsEntries=' + ID_Ausgangsleistung +
      '&dxsEntries=' + ID_Eigenverbrauch +
      '&dxsEntries=' + ID_Eigenverbrauch_d +
      '&dxsEntries=' + ID_Eigenverbrauch_G +
      '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
      '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
      '&dxsEntries=' + ID_Ertrag_d +
      '&dxsEntries=' + ID_Ertrag_G +
      '&dxsEntries=' + ID_Hausverbrauch_d +
      '&dxsEntries=' + ID_Hausverbrauch_G +
      '&dxsEntries=' + ID_Autarkiegrad_G +
      '&dxsEntries=' + ID_Autarkiegrad_d +
      '&dxsEntries=' + ID_Betriebszeit +
      '&dxsEntries=' + ID_P1Spannung +
      '&dxsEntries=' + ID_P2Spannung +
      '&dxsEntries=' + ID_P1Strom +
      '&dxsEntries=' + ID_P2Strom +
      '&dxsEntries=' + ID_P1Leistung +
      '&dxsEntries=' + ID_P2Leistung +
      '&dxsEntries=' + ID_Status +
      '&dxsEntries=' + ID_DC1Leistung +
      '&dxsEntries=' + ID_DC2Leistung +
      '&dxsEntries=' + ID_P3Spannung + // 23
      '&dxsEntries=' + ID_P3Strom + // 24
      '&dxsEntries=' + ID_DC3Leistung+ //25
      '&dxsEntries=' + ID_P3Leistung, //26

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

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

      });
      }

      schedule("*/11 * 5-23 * * *", Piko);
      //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;

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

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

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

        Nur P3Leistung fehlt. Ich versuche den DP zu aktivieren.

        den habe ich deaktiviert, um String 3 zu bekommen.

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

        Eventuell so wie schon @Homoran geschrieben .

        Das ist alles Trockenübung 🙂

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

          @glasfaser

          Hier das aktuelle Script:

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

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

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

            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

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

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

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

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

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

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

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

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

                  @glasfaser
                  Das Script zeigt Errors:

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

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

                  Ich finde den Fehler nicht.

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

                  Habe es korrigiert.

                  Hier das aktuelle Script:

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

                  Liefert immer noch Fehler.

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

                    @Glasfaser

                    Hier das laufende Script ohne P2Leistung und P3Leistung.

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

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

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

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

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

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

                        Ich gebe damit den Versuch mit dem Script auf.

                        Danke nochmal für deine Unterstützung.

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

                          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                          Funktioniert der Adapter Piko_Ba mit einem Piko 20?

                          @tombox
                          nein!

                          EDIT:

                          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

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

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

                          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                          Das Script nimmt nur 24 Werte an

                          nein 25!

                          @homoran sagte in Status vom Kostal Wechselrichter auslesen?:

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

                          liegt aber nicht am Skript

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

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

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

                            Hier die Werte vom Kostal_Piko_BA:

                            Bildschirmfoto 2021-10-05 um 17.21.48.png

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

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

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

                              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

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

                              nein!

                              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                              Hängt es mit der API zusammen?

                              möglich!

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

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

                              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                              Hier die Werte vom Kostal_Piko_BA:

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

                              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

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

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

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

                                @homoran
                                Hier mal die Holding Register für den KSEM. Der WR Piko konnte ich nicht auslesen, da sich hier der KSEM blockierend auf die Modus-Leitung setzt (sorgt auch dafür, dass ein Update des Piko nur nach Trennung der Verbindung funktioniert (nach Handbuch Kostal).

                                _address	name	description	unit	type	len	factor	offset	formula	role	room	poll	wp	cw	isScale
                                40071	M_AC_Current	AC Current (sum of active phases)	A	int16be	1	1	0		value		true			
                                40072	M_AC_Current_A	Phase A AC current	A	int16be	1	1	0		value		true			
                                40073	M_AC_Current_B	Phase B AC current	A	int16be	1	1	0		value		true			
                                40074	M_AC_Current_C	Phase C AC current	A	int16be	1	1	0		value		true			
                                40075	M_AC_Current_SF	AC Current Scale Factor		int16be	1	1	0		value		true			
                                40076	M_AC_Voltage_LN	Line to Neutral AC Voltage (average of active phases)	V	int16be	1	1	0		value		true			
                                40077	M_AC_Voltage_LA	Phase A to Neutral AC Voltage	V	int16be	1	1	0		value		true			
                                40078	M_AC_Voltage_LB	Phase B to Neutral AC Voltage	V	int16be	1	1	0		value		true			
                                40079	M_AC_Voltage_CN	Phase C to Neutral AC Voltage	V	int16be	1	1	0		value		true			
                                40080	M_AC_Voltage_LL	Line to Line AC Voltage (average of active phases)	V	int16be	1	1	0		value		true			
                                40081	M_AC_Voltage_AB	Phase A to Phase B AC Voltage	V	int16be	1	1	0		value		true			
                                40082	M_AC_Voltage_BC	Phase B to Phase C AC Voltage	V	int16be	1	1	0		value		true			
                                40083	M_AC_Voltage_CA	Phase C to Phase A AC Voltage	V	int16be	1	1	0		value		true			
                                40084	M_AC_Voltage_SF	AC Voltage Scale Factor		int16be	1	1	0		value		true			
                                40085	M_AC_Freq	AC Frequency	Hz	int16be	1	1	0		value		true			
                                40086	M_AC_Freq_SF	AC Frequency Scale Factor		int16be	1	1	0		value		true			
                                40087	M_AC_Power	Total Real Power (sum of active phases)	W	int16be	1	1	0		value		true			
                                40088	M_AC_Power_A	Phase A AC Real Power	W	int16be	1	1	0		value		true			
                                40089	M_AC_Power_B	Phase B AC Real Power	W	int16be	1	1	0		value		true			
                                40090	M_AC_Power_C	Phase C AC Real Power	W	int16be	1	1	0		value		true			
                                40091	M_AC_Power_SF	AC Real Power Scale Factor		int16be	1	1	0		value		true			
                                40092	M_AC_VA	Total AC Apparent Power (sum of active phases)	VA	int16be	1	1	0		value		true			
                                40093	M_AC_VA_A	Phase A AC Apparent Power	VA	int16be	1	1	0		value		true			
                                40094	M_AC_VA_B	Phase B AC Apparent Power	VA	int16be	1	1	0		value		true			
                                40095	M_AC_VA_C	Phase C AC Apparent Power	VA	int16be	1	1	0		value		true			
                                40096	M_AC_VA_SF	AC Apparent Power Scale Factor		int16be	1	1	0		value		true			
                                40097	M_AC_VAR	Total AC Reactive Power (sum of ac- tive phases)	var	int16be	1	1	0		value		true			
                                40098	M_AC_VAR_A	Phase A AC Reactive Power	var	int16be	1	1	0		value		true			
                                40099	M_AC_VAR_B	Phase B AC Reactive Power	var	int16be	1	1	0		value		true			
                                40100	M_AC_VAR_C	Phase C AC Reactive Power	var	int16be	1	1	0		value		true			
                                40101	M_AC_VAR_ SF	AC Reactive Power Scale Factor		int16be	1	1	0		value		true			
                                40102	M_AC_PF	Average Power Factor (average of active phases)	%	int16be	1	1	0		value		true			
                                40103	M_AC_PF_A	Phase A Power Factor	%	int16be	1	1	0		value		true			
                                40104	M_AC_PF_B	Phase B Power Factor	%	int16be	1	1	0		value		true			
                                40105	M_AC_PF_C	Phase C Power Factor	%	int16be	1	1	0		value		true			
                                40106	M_AC_PF_SF	AC Power Factor Scale Factor		int16be	1	1	0		value		true			
                                40107	M_Exported	Total Exported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40109	M_Exported_A	Phase A Exported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40111	M_Exported_B	Phase B Exported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40113	M_Exported_C	Phase C Exported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40115	M_Imported	Total Imported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40117	M_Imported_A	Phase A Imported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40119	M_Imported_B	Phase B Imported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40121	M_Imported_C	Phase C Imported Real Energy	Wh	uint32sw	2	1	0		value		true			
                                40123	M_Energy_W_SF	Real Energy Scale Factor3		int16be	1	1	0		value		true			
                                40124	M_Exported_VA	Total Exported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40126	M_Exported_VA_A	Phase A Exported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40128	M_Exported_VA_B	Phase B Exported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40130	M_Exported_VA_C	Phase C Exported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40132	M_Imported_VA	Total Imported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40134	M_Imported_VA_A	Phase A Imported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40136	M_Imported_VA_B	Phase B Imported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40138	M_Imported_VA_C	Phase C Imported Apparent Energy	VAh	uint32sw	2	1	0		value		true			
                                40140	M_Energy_ VA_SF	Apparent Energy Scale Factor		int16be	1	1	0		value		true			
                                40141	M_Import_ VARh_Q1	Quadrant 1: Tota Imported Reactive Energy	VARh	uint32sw	2	1	0		value		true			
                                40143	M_Import_ VARh_Q1A	Phase A – Quadrant 1: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40145	M_Import_ VARh_Q1B	Phase B – Quadrant 1: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40147	M_Import_ VARh_Q1C	Phase C – Quadrant 1: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40149	M_Import_ VARh_Q2	Quadrant 2: Total Imported Reactive Energy	VARh	uint32sw	2	1	0		value		true			
                                40151	M_Import_ VARh_Q2A	Phase A – Quadrant 2: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40153	M_Import_ VARh_Q2B	Phase B – Quadrant 2: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40155	M_Import_ VARh_Q2C	Phase C – Quadrant 2: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40157	M_Export_ VARh_Q3	Quadrant 3: Total Imported Reactive Energy	VARh	uint32sw	2	1	0		value		true			
                                40159	M_Export_ VARh_Q3A	Phase A – Quadrant 3: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40161	M_Export_ VARh_Q3B	Phase B – Quadrant 3: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40163	M_Export_ VARh_Q3C	Phase C – Quadrant 3: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40165	M_Export_ VARh_Q4	Quadrant 4: Tota Imported Reactive Energy	VARh	uint32sw	2	1	0		value		true			
                                40167	M_Export_ VARh_Q4A	Phase A – Quadrant 4: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40169	M_Export_ VARh_Q4B	Phase B – Quadrant 4: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40171	M_Export_ VARh_Q4C	Phase C – Quadrant 4: Imported Reac- tive Energy	VARh	uint32sw	2	1	0		value		true			
                                40173	M_Energy_ VAR_SF	Reactive Energy Scale Factor		int16be	1	1	0		value		true			
                                40174	M_Events	Event flags		uint32sw	2	1	0		value		true			
                                

                                Die habe die Werte mühselig in Modbus reingekloppt.

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

                                  @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                  Hier mal die Holding Register für den KSEM

                                  Danke - aber den habe ich ja gar nicht, sondern nur den PIKO

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

                                    @martybr
                                    Bekommst du zu jedem deiner eingestellten Adressen einen Wert? Ich habe auch ein KSEM und testweise deine Konfig mal importiert. Leider habe ich überall nur 0 oder irgendwelchen Zahlensalat stehen.

                                    Hast du iobroker als Master oder Slave konfiguriert und im KSEM noch irgendwas eingestellt?

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

                                      @schmattek
                                      Ich schicke dir heute Abend mal die Konfig vom modbus und vom KSEM. Eigenverbrauch und Hausstrom ist leider 0. Ich versuche diese beiden Werte aus den anderen zu errechnen und bin möglicherweise auf der richtigen Spur.

                                      Aber ja, bis auf die beiden genannten Werte bekomme ich Ergebnisse vom Kostal.

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

                                        @schmattek
                                        So, nun die Einstellungen im Modbus-Adapter:

                                        Bildschirmfoto 2021-10-20 um 20.31.58.png

                                        Bildschirmfoto 2021-10-20 um 20.32.18.png

                                        Bildschirmfoto 2021-10-20 um 20.32.35.png

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

                                          @martybr
                                          Danke, habe meinen Fehler gefunden. In meinen modbus-Einstellungen war noch die Option mit den Aliases angehakt. Dementsprechend hat er, nachdem ich deine Konfig eingefügt habe, die Adressen umgewandelt.

                                          Den Haken rausgenommen und noch mal die Konfig eingefügt, funktioniert jetzt.

                                          Einige kuriose Werte bleiben allerdings:

                                          1. Bei fast allen Adressen mit Live-Daten scheint eine Stelle hinten dran zu fehlen. Es steht dort z.B. -110W, wenn ich laut App aber 1,1kW einspeise. Oder bei der Scheinleistung -44VA in iobroker und auf der Seite des Smartmeter -442VA

                                          2. Auch die Werte für die exportierte und importierte (Schein)Leistung etc. scheinen absolute Phantasiewerte zu sein. Ich kann jedenfalls nicht nachvollziehen wo ich 1022361547Wh exportiert haben soll. Selbst wenn man hier Stellen weg streicht oder die Einheit ändert, passt das hinten und vorne nicht.

                                          Unbenannt.JPG

                                          So jedenfalls sind die Werte absolut unbrauchbar und mir scheint es so als würde Kostal hier irgendwas falsch in die Register schreiben.

                                          Diginix M 2 Replies Last reply Reply Quote 0
                                          • Diginix
                                            Diginix @Schmattek last edited by

                                            @schmattek Wenn die Werte unplausibel sind, kann es auch am gewählten Datentyp liegen. Kannst ja mal alle durchiterieren um zu sehen ob ein anderer einen sinnvolleren Wert liefert.

                                            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

                                            851
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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