Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Status vom Kostal Wechselrichter auslesen?

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.4k

Status vom Kostal Wechselrichter auslesen?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
331 Beiträge 35 Kommentatoren 88.9k Aufrufe 25 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Offline
    P Offline
    PRozAC
    schrieb am zuletzt editiert von
    #33

    Kann mir vielleicht nochmal jemand sagen bzw. helfen warum der Wert zwar in den Einstellungen angezeigt, aber nicht in das entsprechende Objekt übernommen wird?

    Ich bekomme leider als Quality device error 0x44 zurück. Die Fehlermeldung besagt wohl, dass die Nummer oder der String nicht gefunden werden konnte.

    Ich habe einen Piko 5.5 mit der "alten" Oberfläche ohne JSON API. Deshalb gehe ich davon aus, dass ich das Script nicht nutzen kann/muss und somit auch nicht unter der Javascript Instanz nach den Werten suchen muss :)

    1 Antwort Letzte Antwort
    0
    • bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #34

      Ich benutze folgendes Script:

      /* Photovoltaik: Piko 5.5 Anlage
      
      Diese Script stammt aus dem Homematic Forum. Von wem weiß ich nicht mehr.
      Lief bei mir als ccu.io.Script einwandfrei.
      
      Dieses Script habe ich nun auf iobroker umgeschrieben.
      
      @bahnuhr
      02.01.2017 Dieter Müller
      */
      
      //Variaben
      var idaktuell = 'javascript.0.Status.Photovoltaik.Leistung_aktuell';
      var idTag = 'javascript.0.Status.Photovoltaik.Tagesleistung';
      var idall = 'javascript.0.Status.Photovoltaik.Leistung_gesamt';
      var idP1 = 'javascript.0.Status.Photovoltaik.Leistung_Strang1';
      var idP2 = 'javascript.0.Status.Photovoltaik.Leistung_Strang2';
      
      var NameAnlage = 'xxx';   // Nutzername der Photovoltaik-Anlage
      var PassAnlage = 'x';   // Password der Photovoltaik-Anlage
      var IPAnlage = '192.168.xxx.xx';   // IP der Photovoltaik-Anlage
      
      var logging = false;
      
       function Piko() {
                  var cheerio = require('cheerio');
                  var request = require('request');
      
                  if (logging) log("Piko 5.5 auslesen");
                  //http://SN-Login:WGrZMkb@192.168.243.75
                  request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                          $ = cheerio.load(body);
                          var d = $("td");
      
                          var pwr = parseFloat(d.eq(14).text().trim());   // Energie aktuell in W
                          var day = parseFloat(d.eq(26).text().trim());   // Tagesenergie in kWh
                          var all = parseFloat(d.eq(17).text().trim());   // Gesamtenergie in kWh
                          var v1 = d.eq(56).text().trim();   // PV Generator Nr. 1 - Spannung in V
                          var i1 = d.eq(65).text().trim();   // PV Generator Nr. 1 - Strom in A
                          var p1 = parseInt(v1 * i1);
                          var v2 = d.eq(82).text().trim();   // PV Generator Nr. 1 - Spannung in V
                          var i2 = d.eq(91).text().trim();   // PV Generator Nr. 1 - Strom in A
                          var p2 = parseInt(v2 * i2);
                          if (isNaN(pwr)) pwr = 0;
                          if (isNaN(p1)) p1 = 0;
                          if (isNaN(p2)) p2 = 0;
      
                          if (logging) log("Leistung aktuell= " + pwr);
                          if (logging) log("Tagesleistung= " + day);
                          if (logging) log("Leistung gesamt= " + all);
      					if (logging) log("Leistung Strang 1= " + p1);
      					if (logging) log("Leistung Strang 2= " + p2);
      
                          setState(idaktuell, pwr);
                          setState(idTag, day);
                          setState(idall, all);
                          setState(idP1, p1);
                          setState(idP2, p2);
                  });
          }
      
      schedule("2,7,12,17,22,27,32,37,42,47,52,57 * * * *", function () {
          log ("Auslöser: Schedule");
      	Piko();
      });
      
      schedule("3 0 * * *", function () {     // Variablen löschen um 00:03 Uhr
          setState('javascript.0.Status.Photovoltaik.Tagesleistung', 0);
      });
      
      
      • Variablen manuell anlegen

      • benutzernamen, password, ip anpassen

      • cheerio unter js eintragen.

      dann klappts.

      mfg

      Dieter


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      S E 2 Antworten Letzte Antwort
      0
      • Y Offline
        Y Offline
        Yoschi147
        schrieb am zuletzt editiert von
        #35

        Hi,

        ich habe einen Piko 7.0 mit der UI Version 6.20 und FW 5.42 welchen ich gerne mit iobroker auslesen möchte.

        Ich habe hier schon einige Beiträge gelesen und verschiedene Scripte probiert. Allerdings funktionieren diese bei mir nicht da diese wohl alle für 5.36 und älter sind.

        Hat jemand von euch schon ein Script das mit einer neueren Version funktioniert?

        Viele Grüße

        Yoschi

        1 Antwort Letzte Antwort
        0
        • HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #36

          Probier das mal:

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

          IP anpassen und ggf. Schedule. im Moment wird zwischen 5:00 und 23:59 alle 10 Sekunden geparst

          Gruß

          rainer

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          1 Antwort Letzte Antwort
          0
          • Y Offline
            Y Offline
            Yoschi147
            schrieb am zuletzt editiert von
            #37

            Hi,

            vielen Dank funktioniert auf anhieb. Weist du bis zu welcher Version vom Piko das Script laufen sollte? Also FW und UI Version? Würde nämlich auch gerne updaten wenn das Script danach noch geht :-)

            Viele Grüße

            Yoschi

            1 Antwort Letzte Antwort
            0
            • HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #38

              @Yoschi147:

              Weist du bis zu welcher Version vom Piko das Script laufen sollte? `
              Nö!

              ich denke aber, dass es da kein Problem gibt.

              Der große unterschied vor und nach der 5.31 liegt darin, dass vorher HTML-Seiten existierten, die geparst werden konnten, und danach alles mit java läuft.

              Gruß

              Rainer

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • Y Offline
                Y Offline
                Yoschi147
                schrieb am zuletzt editiert von
                #39

                Danke für dein Feedback.

                Mir ist gerade noch aufgefallen das im Script selbst die Variablen für P3 (dritte Phase) angelegt ist. Aber das Script diese nicht ausliest.

                Ich hatte mein Script um die jeweiligen P3 Zeilen erweitert, aber leider kommen dann für den Part nicht die richtigen werte raus. Ein Wert wird auch gar nicht erst ausgelesen.

                
                 ID_P1Spannung = 67109378;              // in V
                    ID_P1Strom = 67109377;                 // in A
                    ID_P1Leistung = 67109379;              // in W
                    //Netz Phase 2
                    ID_P2Spannung = 67109634;              // in V
                    ID_P2Strom = 67109633;                 // in A
                    ID_P2Leistung = 67109635;              // in W
                    //Netz Phase 3
                    ID_P3Spannung = 67109890;              // in V
                    ID_P3Strom = 67109889;                 // in A
                    ID_P3Leistung = 67109891;              // in W
                

                8567_bildschirmfoto_2018-08-29_um_14.00.30.png

                1 Antwort Letzte Antwort
                0
                • hg6806H Offline
                  hg6806H Offline
                  hg6806
                  Most Active
                  schrieb am zuletzt editiert von
                  #40

                  Guten Morgen,

                  funktioniert das eigentlich auch bei einem Kostal PLENTICORE plus?

                  Ich würde das gerne mit Batteriespeicher kaufen, ein System sollte aber unbedingt an ioBroker angebunden werden :-)

                  1 Antwort Letzte Antwort
                  0
                  • H Offline
                    H Offline
                    Hideloop
                    schrieb am zuletzt editiert von
                    #41

                    Plenticore Plus kannst Du ganz einfach über den Modbus Adapter auslesen.

                    Grüße,

                    Loop

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      stoepselinho
                      schrieb am zuletzt editiert von
                      #42

                      Hallo zusammen,

                      trotz Code

                      (?:\s+([a-zA-Z äöüÄÖÜ]+))
                      

                      wird mir bei Störung immer nur St angezeigt.

                      Rolle -> Wert

                      Typ -> String

                      Alles ander Finktioniert ohne Probleme

                      hat jemand eine Idee?

                      1 Antwort Letzte Antwort
                      0
                      • DiginixD Offline
                        DiginixD Offline
                        Diginix
                        schrieb am zuletzt editiert von
                        #43

                        Kann mir hier jemand die modbus Adapter Einstellungen für ein Plenticore Plus 5.5 mit Firmware 1.30 erklären oder als Screenshot zeigen.
                        Habe die IP, Port und GeräteID eingetragen, sonst noch nichts weiter. Die Instanz bleibt aber gelb. Im Log steht "Serial is not available", habe aber TCP gewählt.

                        ..:: So long! Tom ::..

                        NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

                        J 1 Antwort Letzte Antwort
                        0
                        • bahnuhrB bahnuhr

                          Ich benutze folgendes Script:

                          /* Photovoltaik: Piko 5.5 Anlage
                          
                          Diese Script stammt aus dem Homematic Forum. Von wem weiß ich nicht mehr.
                          Lief bei mir als ccu.io.Script einwandfrei.
                          
                          Dieses Script habe ich nun auf iobroker umgeschrieben.
                          
                          @bahnuhr
                          02.01.2017 Dieter Müller
                          */
                          
                          //Variaben
                          var idaktuell = 'javascript.0.Status.Photovoltaik.Leistung_aktuell';
                          var idTag = 'javascript.0.Status.Photovoltaik.Tagesleistung';
                          var idall = 'javascript.0.Status.Photovoltaik.Leistung_gesamt';
                          var idP1 = 'javascript.0.Status.Photovoltaik.Leistung_Strang1';
                          var idP2 = 'javascript.0.Status.Photovoltaik.Leistung_Strang2';
                          
                          var NameAnlage = 'xxx';   // Nutzername der Photovoltaik-Anlage
                          var PassAnlage = 'x';   // Password der Photovoltaik-Anlage
                          var IPAnlage = '192.168.xxx.xx';   // IP der Photovoltaik-Anlage
                          
                          var logging = false;
                          
                           function Piko() {
                                      var cheerio = require('cheerio');
                                      var request = require('request');
                          
                                      if (logging) log("Piko 5.5 auslesen");
                                      //http://SN-Login:WGrZMkb@192.168.243.75
                                      request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                              $ = cheerio.load(body);
                                              var d = $("td");
                          
                                              var pwr = parseFloat(d.eq(14).text().trim());   // Energie aktuell in W
                                              var day = parseFloat(d.eq(26).text().trim());   // Tagesenergie in kWh
                                              var all = parseFloat(d.eq(17).text().trim());   // Gesamtenergie in kWh
                                              var v1 = d.eq(56).text().trim();   // PV Generator Nr. 1 - Spannung in V
                                              var i1 = d.eq(65).text().trim();   // PV Generator Nr. 1 - Strom in A
                                              var p1 = parseInt(v1 * i1);
                                              var v2 = d.eq(82).text().trim();   // PV Generator Nr. 1 - Spannung in V
                                              var i2 = d.eq(91).text().trim();   // PV Generator Nr. 1 - Strom in A
                                              var p2 = parseInt(v2 * i2);
                                              if (isNaN(pwr)) pwr = 0;
                                              if (isNaN(p1)) p1 = 0;
                                              if (isNaN(p2)) p2 = 0;
                          
                                              if (logging) log("Leistung aktuell= " + pwr);
                                              if (logging) log("Tagesleistung= " + day);
                                              if (logging) log("Leistung gesamt= " + all);
                          					if (logging) log("Leistung Strang 1= " + p1);
                          					if (logging) log("Leistung Strang 2= " + p2);
                          
                                              setState(idaktuell, pwr);
                                              setState(idTag, day);
                                              setState(idall, all);
                                              setState(idP1, p1);
                                              setState(idP2, p2);
                                      });
                              }
                          
                          schedule("2,7,12,17,22,27,32,37,42,47,52,57 * * * *", function () {
                              log ("Auslöser: Schedule");
                          	Piko();
                          });
                          
                          schedule("3 0 * * *", function () {     // Variablen löschen um 00:03 Uhr
                              setState('javascript.0.Status.Photovoltaik.Tagesleistung', 0);
                          });
                          
                          
                          • Variablen manuell anlegen

                          • benutzernamen, password, ip anpassen

                          • cheerio unter js eintragen.

                          dann klappts.

                          mfg

                          Dieter

                          S Offline
                          S Offline
                          Spooky99
                          schrieb am zuletzt editiert von
                          #44

                          @bahnuhr
                          Hallo Dieter,
                          ich versuche mich grad an dem skript, bin aber noch seeeeeeeeehr neu in dem ganzen Thema.
                          Was meinst du mit Cheerio unter JS eintragen?
                          Und die Variablen kann ich in einen Ordner anlegen den ich z.B. Wechselrichter nenne?

                          bahnuhrB 1 Antwort Letzte Antwort
                          0
                          • S Spooky99

                            @bahnuhr
                            Hallo Dieter,
                            ich versuche mich grad an dem skript, bin aber noch seeeeeeeeehr neu in dem ganzen Thema.
                            Was meinst du mit Cheerio unter JS eintragen?
                            Und die Variablen kann ich in einen Ordner anlegen den ich z.B. Wechselrichter nenne?

                            bahnuhrB Online
                            bahnuhrB Online
                            bahnuhr
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #45

                            @Spooky99 sagte in Status vom Kostal Wechselrichter auslesen?:

                            @bahnuhr
                            Hallo Dieter,
                            ich versuche mich grad an dem skript, bin aber noch seeeeeeeeehr neu in dem ganzen Thema.
                            Was meinst du mit Cheerio unter JS eintragen?
                            Und die Variablen kann ich in einen Ordner anlegen den ich z.B. Wechselrichter nenne?

                            cheerio klappt nicht mehr.

                            Musste das Script wie folgt ändern:

                            // Photovoltaik: Piko 5.5 Anlage (alte Firmware)
                            // Danke an homoran für den regex
                            // @bahnuhr; 03/2019 Dieter Müller
                            
                            //Variaben
                                var idaktuell = 'javascript.0.Status.Photovoltaik.Leistung_aktuell';
                                var idTag = 'javascript.0.Status.Photovoltaik.Tagesleistung';
                                var idall = 'javascript.0.Status.Photovoltaik.Leistung_gesamt';
                                var idP1 = 'javascript.0.Status.Photovoltaik.Leistung_Strang1';
                                var idP2 = 'javascript.0.Status.Photovoltaik.Leistung_Strang2';
                            
                                var NameAnlage = 'SN-Login';        // Nutzername der Photovoltaik-Anlage
                                var PassAnlage = 'xxx';         // Password der Photovoltaik-Anlage
                                var IPAnlage = '192.168.xxx.xxx';    // IP der Photovoltaik-Anlage
                            
                                var logging = false;
                                var request = require('request');
                            
                            
                             function Piko() {
                                log("Piko 5.5 auslesen");
                                var results = [];
                                request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                    var d = body.toString();
                                    if (logging) log (d);
                                    var reg = /#FFFFFF">[^\d]+([^<]+)/g
                                    var z = reg.exec(d);
                            
                                    while(z != null) {
                                        if (isNaN(z[1])) {
                                            if (logging) log("keine Zahl= "+ z[1]);
                                            z[1] = 0;
                                        } else {
                                            if (logging) log("Zahl= "+ z[1]);
                                            parseFloat(z[1]);
                                        }
                                        results[results.length] = z[1];
                                        z = reg.exec(d);
                                    }
                                    if (logging) log("results= "+ results);
                            
                                // Werte zuordnen
                                    var pwr = results[0];           // Energie aktuell in W
                                    var day = results[2];           // Tagesenergie in kWh
                                    var all = results[1];           // Gesamtenergie in kWh
                                    var v1 = results[3];            // PV Generator Nr. 1 - Spannung in V
                                    var i1 = results[5];            // PV Generator Nr. 1 - Strom in A
                                    var p1 = parseInt(v1 * i1);
                                    var v2 = results[7];            // PV Generator Nr. 2 - Spannung in V
                                    var i2 = results[9];            // PV Generator Nr. 2 - Strom in A
                                    var p2 = parseInt(v2 * i2);
                            
                                    if (logging) log("Leistung aktuell= " + pwr + " W");
                                    if (logging) log("Tagesleistung= " + day + " kWh");
                                    if (logging) log("Leistung gesamt= " + all + " kWh");
                            	    if (logging) log("Leistung Strang 1= " + p1 + " W");
                                	if (logging) log("Leistung Strang 2= " + p2 + " W");
                            
                                    setState(idaktuell, parseFloat(pwr));
                                    setState(idTag, parseFloat(day));
                                    setState(idall, parseFloat(all));
                                    setState(idP1, parseFloat(p1));
                                    setState(idP2, parseFloat(p2));
                                });
                            }
                            
                            
                            schedule("2,7,12,17,22,27,32,37,42,47,52,57 * * * *", function () {
                                log ("Auslöser: Schedule");
                            	Piko();
                            });
                            
                            schedule("3 0 * * *", function () {     // Variablen löschen um 00:03 Uhr   
                                setState('javascript.0.Status.Photovoltaik.Tagesleistung', 0);
                            });
                            
                            
                            

                            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                            Danke.
                            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                            ScreenToGif :https://www.screentogif.com/downloads.html

                            S E 2 Antworten Letzte Antwort
                            1
                            • bahnuhrB bahnuhr

                              @Spooky99 sagte in Status vom Kostal Wechselrichter auslesen?:

                              @bahnuhr
                              Hallo Dieter,
                              ich versuche mich grad an dem skript, bin aber noch seeeeeeeeehr neu in dem ganzen Thema.
                              Was meinst du mit Cheerio unter JS eintragen?
                              Und die Variablen kann ich in einen Ordner anlegen den ich z.B. Wechselrichter nenne?

                              cheerio klappt nicht mehr.

                              Musste das Script wie folgt ändern:

                              // Photovoltaik: Piko 5.5 Anlage (alte Firmware)
                              // Danke an homoran für den regex
                              // @bahnuhr; 03/2019 Dieter Müller
                              
                              //Variaben
                                  var idaktuell = 'javascript.0.Status.Photovoltaik.Leistung_aktuell';
                                  var idTag = 'javascript.0.Status.Photovoltaik.Tagesleistung';
                                  var idall = 'javascript.0.Status.Photovoltaik.Leistung_gesamt';
                                  var idP1 = 'javascript.0.Status.Photovoltaik.Leistung_Strang1';
                                  var idP2 = 'javascript.0.Status.Photovoltaik.Leistung_Strang2';
                              
                                  var NameAnlage = 'SN-Login';        // Nutzername der Photovoltaik-Anlage
                                  var PassAnlage = 'xxx';         // Password der Photovoltaik-Anlage
                                  var IPAnlage = '192.168.xxx.xxx';    // IP der Photovoltaik-Anlage
                              
                                  var logging = false;
                                  var request = require('request');
                              
                              
                               function Piko() {
                                  log("Piko 5.5 auslesen");
                                  var results = [];
                                  request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                      var d = body.toString();
                                      if (logging) log (d);
                                      var reg = /#FFFFFF">[^\d]+([^<]+)/g
                                      var z = reg.exec(d);
                              
                                      while(z != null) {
                                          if (isNaN(z[1])) {
                                              if (logging) log("keine Zahl= "+ z[1]);
                                              z[1] = 0;
                                          } else {
                                              if (logging) log("Zahl= "+ z[1]);
                                              parseFloat(z[1]);
                                          }
                                          results[results.length] = z[1];
                                          z = reg.exec(d);
                                      }
                                      if (logging) log("results= "+ results);
                              
                                  // Werte zuordnen
                                      var pwr = results[0];           // Energie aktuell in W
                                      var day = results[2];           // Tagesenergie in kWh
                                      var all = results[1];           // Gesamtenergie in kWh
                                      var v1 = results[3];            // PV Generator Nr. 1 - Spannung in V
                                      var i1 = results[5];            // PV Generator Nr. 1 - Strom in A
                                      var p1 = parseInt(v1 * i1);
                                      var v2 = results[7];            // PV Generator Nr. 2 - Spannung in V
                                      var i2 = results[9];            // PV Generator Nr. 2 - Strom in A
                                      var p2 = parseInt(v2 * i2);
                              
                                      if (logging) log("Leistung aktuell= " + pwr + " W");
                                      if (logging) log("Tagesleistung= " + day + " kWh");
                                      if (logging) log("Leistung gesamt= " + all + " kWh");
                              	    if (logging) log("Leistung Strang 1= " + p1 + " W");
                                  	if (logging) log("Leistung Strang 2= " + p2 + " W");
                              
                                      setState(idaktuell, parseFloat(pwr));
                                      setState(idTag, parseFloat(day));
                                      setState(idall, parseFloat(all));
                                      setState(idP1, parseFloat(p1));
                                      setState(idP2, parseFloat(p2));
                                  });
                              }
                              
                              
                              schedule("2,7,12,17,22,27,32,37,42,47,52,57 * * * *", function () {
                                  log ("Auslöser: Schedule");
                              	Piko();
                              });
                              
                              schedule("3 0 * * *", function () {     // Variablen löschen um 00:03 Uhr   
                                  setState('javascript.0.Status.Photovoltaik.Tagesleistung', 0);
                              });
                              
                              
                              
                              S Offline
                              S Offline
                              Spooky99
                              schrieb am zuletzt editiert von
                              #46

                              @bahnuhr ok werde ich gleich mal übernehmen...
                              ich tue mich noch schwer mit den Variablen anlegen, hättest du da vielleicht ein BIld wie das bei dir ausschaut? Ich bin echt unbeholfen ;-)

                              bahnuhrB 1 Antwort Letzte Antwort
                              0
                              • S Spooky99

                                @bahnuhr ok werde ich gleich mal übernehmen...
                                ich tue mich noch schwer mit den Variablen anlegen, hättest du da vielleicht ein BIld wie das bei dir ausschaut? Ich bin echt unbeholfen ;-)

                                bahnuhrB Online
                                bahnuhrB Online
                                bahnuhr
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #47

                                @Spooky99 sagte in Status vom Kostal Wechselrichter auslesen?:

                                Variablen anlegen,

                                mit folgendem Script:

                                // Photovoltaik -------------------------------------------------------------------------------------------------------------
                                createState('javascript.0.Status.Photovoltaik.Leistung_aktuell', 0, {type: 'number',name: 'Leistung aktuell',min: 0,role: 'per Script'});
                                createState('javascript.0.Status.Photovoltaik.Tagesleistung', 0, {type: 'number',name: 'Tagesleistung',min: 0,role: 'per Script'});
                                createState('javascript.0.Status.Photovoltaik.Leistung_gesamt', 0, {type: 'number',name: 'Leistung gesamt',min: 0,role: 'per Script'});
                                createState('javascript.0.Status.Photovoltaik.Leistung_Strang1', 0, {type: 'number',name: 'Leistung Strang 1',min: 0,role: 'per Script'});
                                createState('javascript.0.Status.Photovoltaik.Leistung_Strang2', 0, {type: 'number',name: 'Leistung Strang 2',min: 0,role: 'value'});
                                
                                

                                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                Danke.
                                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                ScreenToGif :https://www.screentogif.com/downloads.html

                                1 Antwort Letzte Antwort
                                0
                                • bahnuhrB Online
                                  bahnuhrB Online
                                  bahnuhr
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #48

                                  und bei den Objekten siehts dann so aus:

                                  75273d82-cc5d-41a4-a6e4-5a2a227c4e30-grafik.png


                                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                  Danke.
                                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                  ScreenToGif :https://www.screentogif.com/downloads.html

                                  1 Antwort Letzte Antwort
                                  0
                                  • bahnuhrB Online
                                    bahnuhrB Online
                                    bahnuhr
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #49

                                    und meine Darstellung in vis:
                                    531203d8-ecc5-4537-a0c4-8684e7de2118-grafik.png


                                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                    Danke.
                                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                    ScreenToGif :https://www.screentogif.com/downloads.html

                                    1 Antwort Letzte Antwort
                                    0
                                    • bahnuhrB Online
                                      bahnuhrB Online
                                      bahnuhr
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #50

                                      und die Darstellung in flot:
                                      7e63ed26-5ab9-4b81-a454-f748ee144a1a-grafik.png

                                      Aber das kannst du ja machen wie du möchtest.


                                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                      Danke.
                                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                      ScreenToGif :https://www.screentogif.com/downloads.html

                                      1 Antwort Letzte Antwort
                                      0
                                      • S Offline
                                        S Offline
                                        Spooky99
                                        schrieb am zuletzt editiert von
                                        #51

                                        ARGH WIE GEIL IST DAS DENN??????
                                        Vielen vielen Dank!!! WIe ich das aufbereite muss ich mal sehen aber das ist ja der Hammer!
                                        Da muss ich wohl doch noch nen Volkshochschulkurs belegen;-)

                                        bahnuhrB 1 Antwort Letzte Antwort
                                        0
                                        • S Spooky99

                                          ARGH WIE GEIL IST DAS DENN??????
                                          Vielen vielen Dank!!! WIe ich das aufbereite muss ich mal sehen aber das ist ja der Hammer!
                                          Da muss ich wohl doch noch nen Volkshochschulkurs belegen;-)

                                          bahnuhrB Online
                                          bahnuhrB Online
                                          bahnuhr
                                          Forum Testing Most Active
                                          schrieb am zuletzt editiert von
                                          #52

                                          @Spooky99 sagte in Status vom Kostal Wechselrichter auslesen?:

                                          ARGH WIE GEIL IST DAS DENN??????
                                          Vielen vielen Dank!!! WIe ich das aufbereite muss ich mal sehen aber das ist ja der Hammer!
                                          Da muss ich wohl doch noch nen Volkshochschulkurs belegen;-)

                                          wenns gefällt dann positiv vooten.


                                          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                          Danke.
                                          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                          ScreenToGif :https://www.screentogif.com/downloads.html

                                          1 Antwort Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          804

                                          Online

                                          32.4k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe