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

    @Vazi

    Kann mir noch mal jemand helfen?
    Vielleicht kann mal jemand noch mal seine Konfig für die Werte des Kostal Piko alte Version
    posten. Den Status habe ich hinbekommen aber die Werte krieg ich einfach nicht hin.

    Gruß Matthias

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

    @MatthiasUlrich sagte in Status vom Kostal Wechselrichter auslesen?:

    Piko alte Version

    Mein Script für die Piko 5.5 hab ich schon zahlreich eingestellt.
    Bitte hier mal die Suche ausprobieren.


    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

    M P S 3 Antworten Letzte Antwort
    1
    • DiginixD Offline
      DiginixD Offline
      Diginix
      schrieb am zuletzt editiert von
      #85

      Oder einfach mal den neuen Plenticore Adapter probieren:
      https://forum.iobroker.net/post/343434
      https://github.com/StrathCole/iobroker.plenticore

      Der ist mittlerweile echt mächtig geworden.

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

      HomoranH 1 Antwort Letzte Antwort
      0
      • DiginixD Diginix

        Oder einfach mal den neuen Plenticore Adapter probieren:
        https://forum.iobroker.net/post/343434
        https://github.com/StrathCole/iobroker.plenticore

        Der ist mittlerweile echt mächtig geworden.

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #86

        @Diginix sagte in Status vom Kostal Wechselrichter auslesen?:

        Oder einfach mal den neuen Plenticore Adapter probieren:

        ich denke nicht, dass der mit der alten Firmware funktionieren wird.
        lasse mich aber gerne überraschen.

        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 -

        DiginixD 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @Diginix sagte in Status vom Kostal Wechselrichter auslesen?:

          Oder einfach mal den neuen Plenticore Adapter probieren:

          ich denke nicht, dass der mit der alten Firmware funktionieren wird.
          lasse mich aber gerne überraschen.

          DiginixD Offline
          DiginixD Offline
          Diginix
          schrieb am zuletzt editiert von
          #87

          @Homoran Ich hab das nicht weiter recherchiert. Wollte ihn hier im Thread nur mal verlinkt wissen. War er bisher glaube nicht.

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

          1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @MatthiasUlrich sagte in Status vom Kostal Wechselrichter auslesen?:

            Piko alte Version

            Mein Script für die Piko 5.5 hab ich schon zahlreich eingestellt.
            Bitte hier mal die Suche ausprobieren.

            M Offline
            M Offline
            MatthiasUlrich
            schrieb am zuletzt editiert von
            #88

            @bahnuhr
            Ich hab das dann wohl falsch verstanden, ich dachte der Script ist für die neue Software.

            Ich hab den Piko 10.1, ich hoffe das funktioniert trotzdem.
            Werd es heute Abend mal testen.

            Danke
            Gruß Matthias

            HomoranH B 2 Antworten Letzte Antwort
            0
            • M MatthiasUlrich

              @bahnuhr
              Ich hab das dann wohl falsch verstanden, ich dachte der Script ist für die neue Software.

              Ich hab den Piko 10.1, ich hoffe das funktioniert trotzdem.
              Werd es heute Abend mal testen.

              Danke
              Gruß Matthias

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #89

              @MatthiasUlrich sagte in Status vom Kostal Wechselrichter auslesen?:

              Ich hab das dann wohl falsch verstanden, ich dachte der Script ist für die neue Software.
              Ich hab den Piko 10.1, ich hoffe das funktioniert trotzdem.

              wenn du noch die gute alte "DOS-Oberfläche" hast, dann klappt das

              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
              1
              • M MatthiasUlrich

                @bahnuhr
                Ich hab das dann wohl falsch verstanden, ich dachte der Script ist für die neue Software.

                Ich hab den Piko 10.1, ich hoffe das funktioniert trotzdem.
                Werd es heute Abend mal testen.

                Danke
                Gruß Matthias

                B Offline
                B Offline
                blackplanet333
                schrieb am zuletzt editiert von blackplanet333
                #90

                @MatthiasUlrich

                Hallo,

                du hattest mich um meine Einstellungen im Parser Adapter gefragt.
                Ich sende es hier, da ich nicht weiß wie man ein Bild als Nachricht versendet. ;)

                Denke kann auch für andere interessant sein.
                Glaub das das RegEx nicht perfekt ist, ist mehr Try&Error von mir.
                Funktioniert aber schon seit langem ohne Probleme bei mir.

                Gruß

                Gesamt: (\s\s\d\d\d\d\d)
                Aktuell: aktuell\D*\d\d\D*\s\s(\d*)
                Status: <td colspan="4">(?:\s+([a-zA-Z äöüÄÖÜ]+))

                Hier mal Exemplarich einer meiner drei Wechselrichter:
                Bildschirmfoto 2020-04-24 um 20.09.53.png

                keramax1K 1 Antwort Letzte Antwort
                1
                • M Offline
                  M Offline
                  MatthiasUlrich
                  schrieb am zuletzt editiert von
                  #91

                  Hallo, Ich danke dir, Das hat gut funktioniert.

                  geht also doch ohne Skript

                  Mit dem Input hab ich auch die Tagesenergie noch rausbekommen:

                  Tagesenergie\D*\d\d\D*\s\s(\d*\D\d*)

                  Danke !!!

                  1 Antwort Letzte Antwort
                  0
                  • bahnuhrB bahnuhr

                    @MatthiasUlrich sagte in Status vom Kostal Wechselrichter auslesen?:

                    Piko alte Version

                    Mein Script für die Piko 5.5 hab ich schon zahlreich eingestellt.
                    Bitte hier mal die Suche ausprobieren.

                    P Offline
                    P Offline
                    PRozAC
                    schrieb am zuletzt editiert von
                    #92

                    @bahnuhr

                    Dein Skript lief bei mir mit einem 5.5er Kostal auch immer einwandfrei bis irgendwann dieser Fehler auftrat:

                    script.js.Energie.Kostal_auslesen: TypeError: d.eq is not a function

                    Seitdem geht leider nix mehr.
                    Kannst du mir da vielleicht bei weiterhelfen?

                    VG
                    Stefan

                    bahnuhrB 1 Antwort Letzte Antwort
                    0
                    • P PRozAC

                      @bahnuhr

                      Dein Skript lief bei mir mit einem 5.5er Kostal auch immer einwandfrei bis irgendwann dieser Fehler auftrat:

                      script.js.Energie.Kostal_auslesen: TypeError: d.eq is not a function

                      Seitdem geht leider nix mehr.
                      Kannst du mir da vielleicht bei weiterhelfen?

                      VG
                      Stefan

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

                      @PRozAC sagte in Status vom Kostal Wechselrichter auslesen?:

                      @bahnuhr

                      Dein Skript lief bei mir mit einem 5.5er Kostal auch immer einwandfrei bis irgendwann dieser Fehler auftrat:

                      script.js.Energie.Kostal_auslesen: TypeError: d.eq is not a function

                      Seitdem geht leider nix mehr.
                      Kannst du mir da vielleicht bei weiterhelfen?

                      VG
                      Stefan

                      zeige mal dein Script


                      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

                      P 1 Antwort Letzte Antwort
                      0
                      • bahnuhrB bahnuhr

                        @PRozAC sagte in Status vom Kostal Wechselrichter auslesen?:

                        @bahnuhr

                        Dein Skript lief bei mir mit einem 5.5er Kostal auch immer einwandfrei bis irgendwann dieser Fehler auftrat:

                        script.js.Energie.Kostal_auslesen: TypeError: d.eq is not a function

                        Seitdem geht leider nix mehr.
                        Kannst du mir da vielleicht bei weiterhelfen?

                        VG
                        Stefan

                        zeige mal dein Script

                        P Offline
                        P Offline
                        PRozAC
                        schrieb am zuletzt editiert von PRozAC
                        #94

                        @bahnuhr

                        
                        /* 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 = 'pvserver';   // Nutzername der Photovoltaik-Anlage
                        var PassAnlage = 'mocken';   // Password der Photovoltaik-Anlage
                        var IPAnlage = '192.168.0.40';   // IP der Photovoltaik-Anlage
                        
                        
                        var logging = true;
                        
                        
                        // Ab hier nix mehr ändern
                        createState(idaktuell, {
                            type: 'number',
                            name: 'Leistung aktuell',
                            min: 0,
                            def: 0,
                            role: 'value'
                        });
                        createState(idTag, {
                            type: 'number',
                            name: 'Tagesleistung',
                            min: 0,
                            def: 0,
                            role: 'value'
                        });
                        createState(idall, {
                            type: 'number',
                            name: 'Leistung gesamt',
                            min: 0,
                            def: 0,
                            role: 'value'
                        });
                        createState(idP1, {
                            type: 'number',
                            name: 'Leistung Strang 1',
                            min: 0,
                            def: 0,
                            role: 'value'
                        });
                        createState(idP2, {
                            type: 'number',
                            name: 'Leistung Strang 2',
                            min: 0,
                            def: 0,
                            role: 'value'
                        });
                        
                         function Piko() {
                                    var cheerio = require('cheerio');
                                    var request = require('request');
                        
                                    if (logging) log("Piko 5.5 auslesen");
                                    request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                            $ = cheerio.load(body);
                                            var d = $("td");
                                            var pwr = parseFloat(d.eq(14).text().trim());
                                            var day = parseFloat(d.eq(26).text().trim());
                                            var all = parseFloat(d.eq(17).text().trim());
                                            var v1 = d.eq(56).text().trim();
                                            var i1 = d.eq(65).text().trim();
                                            var p1 = v1 * i1;
                                            var v2 = d.eq(82).text().trim();
                                            var i2 = d.eq(91).text().trim();
                                            var p2 = 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("* * * * *", function () {
                            log ("Auslöser: Schedule");
                        	Piko();
                        });
                        
                        

                        Vielen Dank für deine Hilfe!

                        Hab gerade scheinbar dein aktuelles? Script von 03/2019 gefunden. Das alte ging wohl nicht mehr wegen cheerio.
                        Teste gleich mal das „neue“ Skript.

                        bahnuhrB 1 Antwort Letzte Antwort
                        0
                        • P PRozAC

                          @bahnuhr

                          
                          /* 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 = 'pvserver';   // Nutzername der Photovoltaik-Anlage
                          var PassAnlage = 'mocken';   // Password der Photovoltaik-Anlage
                          var IPAnlage = '192.168.0.40';   // IP der Photovoltaik-Anlage
                          
                          
                          var logging = true;
                          
                          
                          // Ab hier nix mehr ändern
                          createState(idaktuell, {
                              type: 'number',
                              name: 'Leistung aktuell',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idTag, {
                              type: 'number',
                              name: 'Tagesleistung',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idall, {
                              type: 'number',
                              name: 'Leistung gesamt',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idP1, {
                              type: 'number',
                              name: 'Leistung Strang 1',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idP2, {
                              type: 'number',
                              name: 'Leistung Strang 2',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          
                           function Piko() {
                                      var cheerio = require('cheerio');
                                      var request = require('request');
                          
                                      if (logging) log("Piko 5.5 auslesen");
                                      request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                              $ = cheerio.load(body);
                                              var d = $("td");
                                              var pwr = parseFloat(d.eq(14).text().trim());
                                              var day = parseFloat(d.eq(26).text().trim());
                                              var all = parseFloat(d.eq(17).text().trim());
                                              var v1 = d.eq(56).text().trim();
                                              var i1 = d.eq(65).text().trim();
                                              var p1 = v1 * i1;
                                              var v2 = d.eq(82).text().trim();
                                              var i2 = d.eq(91).text().trim();
                                              var p2 = 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("* * * * *", function () {
                              log ("Auslöser: Schedule");
                          	Piko();
                          });
                          
                          

                          Vielen Dank für deine Hilfe!

                          Hab gerade scheinbar dein aktuelles? Script von 03/2019 gefunden. Das alte ging wohl nicht mehr wegen cheerio.
                          Teste gleich mal das „neue“ Skript.

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

                          @PRozAC sagte in Status vom Kostal Wechselrichter auslesen?:

                          @bahnuhr

                          
                          /* 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 = 'pvserver';   // Nutzername der Photovoltaik-Anlage
                          var PassAnlage = 'mocken';   // Password der Photovoltaik-Anlage
                          var IPAnlage = '192.168.0.40';   // IP der Photovoltaik-Anlage
                          
                          
                          var logging = true;
                          
                          
                          // Ab hier nix mehr ändern
                          createState(idaktuell, {
                              type: 'number',
                              name: 'Leistung aktuell',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idTag, {
                              type: 'number',
                              name: 'Tagesleistung',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idall, {
                              type: 'number',
                              name: 'Leistung gesamt',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idP1, {
                              type: 'number',
                              name: 'Leistung Strang 1',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          createState(idP2, {
                              type: 'number',
                              name: 'Leistung Strang 2',
                              min: 0,
                              def: 0,
                              role: 'value'
                          });
                          
                           function Piko() {
                                      var cheerio = require('cheerio');
                                      var request = require('request');
                          
                                      if (logging) log("Piko 5.5 auslesen");
                                      request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                              $ = cheerio.load(body);
                                              var d = $("td");
                                              var pwr = parseFloat(d.eq(14).text().trim());
                                              var day = parseFloat(d.eq(26).text().trim());
                                              var all = parseFloat(d.eq(17).text().trim());
                                              var v1 = d.eq(56).text().trim();
                                              var i1 = d.eq(65).text().trim();
                                              var p1 = v1 * i1;
                                              var v2 = d.eq(82).text().trim();
                                              var i2 = d.eq(91).text().trim();
                                              var p2 = 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("* * * * *", function () {
                              log ("Auslöser: Schedule");
                          	Piko();
                          });
                          
                          

                          Vielen Dank für deine Hilfe!

                          Hab gerade scheinbar dein aktuelles? Script von 03/2019 gefunden. Das alte ging wohl nicht mehr wegen cheerio.
                          Teste gleich mal das „neue“ Skript.

                          richtig, cheerio ging bei mir nicht mehr.
                          Teste mal das neue.
                          Auch hier, kannst du dieses mal reinhängen.
                          Ich schaue es mir dann an.


                          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

                          P 1 Antwort Letzte Antwort
                          0
                          • bahnuhrB bahnuhr

                            @PRozAC sagte in Status vom Kostal Wechselrichter auslesen?:

                            @bahnuhr

                            
                            /* 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 = 'pvserver';   // Nutzername der Photovoltaik-Anlage
                            var PassAnlage = 'mocken';   // Password der Photovoltaik-Anlage
                            var IPAnlage = '192.168.0.40';   // IP der Photovoltaik-Anlage
                            
                            
                            var logging = true;
                            
                            
                            // Ab hier nix mehr ändern
                            createState(idaktuell, {
                                type: 'number',
                                name: 'Leistung aktuell',
                                min: 0,
                                def: 0,
                                role: 'value'
                            });
                            createState(idTag, {
                                type: 'number',
                                name: 'Tagesleistung',
                                min: 0,
                                def: 0,
                                role: 'value'
                            });
                            createState(idall, {
                                type: 'number',
                                name: 'Leistung gesamt',
                                min: 0,
                                def: 0,
                                role: 'value'
                            });
                            createState(idP1, {
                                type: 'number',
                                name: 'Leistung Strang 1',
                                min: 0,
                                def: 0,
                                role: 'value'
                            });
                            createState(idP2, {
                                type: 'number',
                                name: 'Leistung Strang 2',
                                min: 0,
                                def: 0,
                                role: 'value'
                            });
                            
                             function Piko() {
                                        var cheerio = require('cheerio');
                                        var request = require('request');
                            
                                        if (logging) log("Piko 5.5 auslesen");
                                        request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
                                                $ = cheerio.load(body);
                                                var d = $("td");
                                                var pwr = parseFloat(d.eq(14).text().trim());
                                                var day = parseFloat(d.eq(26).text().trim());
                                                var all = parseFloat(d.eq(17).text().trim());
                                                var v1 = d.eq(56).text().trim();
                                                var i1 = d.eq(65).text().trim();
                                                var p1 = v1 * i1;
                                                var v2 = d.eq(82).text().trim();
                                                var i2 = d.eq(91).text().trim();
                                                var p2 = 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("* * * * *", function () {
                                log ("Auslöser: Schedule");
                            	Piko();
                            });
                            
                            

                            Vielen Dank für deine Hilfe!

                            Hab gerade scheinbar dein aktuelles? Script von 03/2019 gefunden. Das alte ging wohl nicht mehr wegen cheerio.
                            Teste gleich mal das „neue“ Skript.

                            richtig, cheerio ging bei mir nicht mehr.
                            Teste mal das neue.
                            Auch hier, kannst du dieses mal reinhängen.
                            Ich schaue es mir dann an.

                            P Offline
                            P Offline
                            PRozAC
                            schrieb am zuletzt editiert von
                            #96

                            @bahnuhr

                            Das ist das aktuellste, welches ich von dir finden konnte

                            
                            // 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 = 'pvserver';        // Nutzername der Photovoltaik-Anlage
                                var PassAnlage = 'mocken';         // Password der Photovoltaik-Anlage
                                var IPAnlage = '192.168.0.40';    // 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("*/10 * * * * *", function () {     // Variablen löschen um 00:03 Uhr   
                                setState('javascript.0.Status.Photovoltaik.Tagesleistung', 0);
                            });
                            
                            

                            Bislang kommen Werte in den Datenpunkten an. Soweit so gut :+1:

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

                              Ja, das nehme ich auch.
                              Bei mir läuft es.


                              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
                              • B blackplanet333

                                @MatthiasUlrich

                                Hallo,

                                du hattest mich um meine Einstellungen im Parser Adapter gefragt.
                                Ich sende es hier, da ich nicht weiß wie man ein Bild als Nachricht versendet. ;)

                                Denke kann auch für andere interessant sein.
                                Glaub das das RegEx nicht perfekt ist, ist mehr Try&Error von mir.
                                Funktioniert aber schon seit langem ohne Probleme bei mir.

                                Gruß

                                Gesamt: (\s\s\d\d\d\d\d)
                                Aktuell: aktuell\D*\d\d\D*\s\s(\d*)
                                Status: <td colspan="4">(?:\s+([a-zA-Z äöüÄÖÜ]+))

                                Hier mal Exemplarich einer meiner drei Wechselrichter:
                                Bildschirmfoto 2020-04-24 um 20.09.53.png

                                keramax1K Offline
                                keramax1K Offline
                                keramax1
                                schrieb am zuletzt editiert von
                                #98

                                @blackplanet333
                                Danke sehr für diesen Beitrag, ich spiele schon seit Tagen mit der Regex und bekomm es nicht hin.
                                Heute beim suchen bin ich über Deinen Beitrag gestolpert und sieheda, alles funktioniert beim ersten mal.
                                SUPER DANKE

                                1 Antwort Letzte Antwort
                                0
                                • L Offline
                                  L Offline
                                  Los_Fritzos
                                  schrieb am zuletzt editiert von
                                  #99

                                  Hallo zusammen,
                                  das Ganze müsste doch auch bei einem Piko 7.0 funktionieren, oder?!
                                  auf meinem läuft die FW 5.5, für welche das Skript ja gedacht ist.
                                  Bei mir kommen hinten aber keine Werte raus, hat hier jemand eine Idee woran es liegen kann?
                                  Bei den Objekten bleiben Nullen stehen :(
                                  Beste Grüße
                                  Los_Fritzos

                                  HomoranH 1 Antwort Letzte Antwort
                                  0
                                  • L Los_Fritzos

                                    Hallo zusammen,
                                    das Ganze müsste doch auch bei einem Piko 7.0 funktionieren, oder?!
                                    auf meinem läuft die FW 5.5, für welche das Skript ja gedacht ist.
                                    Bei mir kommen hinten aber keine Werte raus, hat hier jemand eine Idee woran es liegen kann?
                                    Bei den Objekten bleiben Nullen stehen :(
                                    Beste Grüße
                                    Los_Fritzos

                                    HomoranH Nicht stören
                                    HomoranH Nicht stören
                                    Homoran
                                    Global Moderator Administrators
                                    schrieb am zuletzt editiert von
                                    #100

                                    @Los_Fritzos sagte in Status vom Kostal Wechselrichter auslesen?:

                                    hat hier jemand eine Idee woran es liegen kann?

                                    hier nicht, aber vielleicht das log

                                    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
                                    • L Offline
                                      L Offline
                                      Los_Fritzos
                                      schrieb am zuletzt editiert von
                                      #101

                                      @Homoran im log steht folgendes:

                                      Unbenannt.JPG

                                      1 Antwort Letzte Antwort
                                      0
                                      • bahnuhrB bahnuhr

                                        @MatthiasUlrich sagte in Status vom Kostal Wechselrichter auslesen?:

                                        Piko alte Version

                                        Mein Script für die Piko 5.5 hab ich schon zahlreich eingestellt.
                                        Bitte hier mal die Suche ausprobieren.

                                        S Offline
                                        S Offline
                                        scout1978
                                        schrieb am zuletzt editiert von
                                        #102

                                        @bahnuhr
                                        Hallo ich habe eine Piko 3.0 mit der Firmware 6.02
                                        Ich habe nun die beiden Skripte und den Parser versucht und komme nicht weiter.
                                        Beim aktuellsten Skript bekomme ich nur 0 angzeigt.
                                        Versuche mich nun seit 4 wochen in Iokroker einzuarbeiten aber das übersteigt meine Fähigkeiten.
                                        Grüße Gernot

                                        HomoranH 1 Antwort Letzte Antwort
                                        0
                                        • S scout1978

                                          @bahnuhr
                                          Hallo ich habe eine Piko 3.0 mit der Firmware 6.02
                                          Ich habe nun die beiden Skripte und den Parser versucht und komme nicht weiter.
                                          Beim aktuellsten Skript bekomme ich nur 0 angzeigt.
                                          Versuche mich nun seit 4 wochen in Iokroker einzuarbeiten aber das übersteigt meine Fähigkeiten.
                                          Grüße Gernot

                                          HomoranH Nicht stören
                                          HomoranH Nicht stören
                                          Homoran
                                          Global Moderator Administrators
                                          schrieb am zuletzt editiert von
                                          #103

                                          @scout1978 sagte in Status vom Kostal Wechselrichter auslesen?:

                                          Hallo ich habe eine Piko 3.0 mit der Firmware 6.02

                                          also größer 5.31 und damit nicht mehr die alte "DOS-Oberfläche"

                                          @scout1978 sagte in Status vom Kostal Wechselrichter auslesen?:

                                          Ich habe nun ... den Parser versucht und komme nicht weiter.

                                          Der kann dann auch nicht mehr funktionieren

                                          @scout1978 sagte in Status vom Kostal Wechselrichter auslesen?:

                                          Ich habe nun die beiden Skripte

                                          welche beiden?

                                          @scout1978 sagte in Status vom Kostal Wechselrichter auslesen?:

                                          Beim aktuellsten Skript bekomme ich nur 0 angzeigt.

                                          wo kommt die 0?

                                          welches "aktuelle" Skript?

                                          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 -

                                          S 1 Antwort Letzte Antwort
                                          0
                                          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

                                          807

                                          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