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.8k

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

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

Status vom Kostal Wechselrichter auslesen?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
331 Beiträge 35 Kommentatoren 88.8k 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.
  • S Spooky99

    @bahnuhr
    du hattest mir weiter oben ein skript für den 5.5 gepostet ab Beitrag 45 mit der alten Oberfläche...
    und geändert hatte ich nix auf einmal gings nicht mehr, also es werden keine Werte mehr ausgelesen...

    bahnuhrB Offline
    bahnuhrB Offline
    bahnuhr
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #77

    @Spooky99 sagte in Status vom Kostal Wechselrichter auslesen?:

    @bahnuhr
    du hattest mir weiter oben ein skript für den 5.5 gepostet ab Beitrag 45 mit der alten Oberfläche...
    und geändert hatte ich nix auf einmal gings nicht mehr, also es werden keine Werte mehr ausgelesen...

    Das ist aber seltsam.
    Insbesondere weil es ja schon lief.
    Komisch.


    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 1 Antwort Letzte Antwort
    0
    • bahnuhrB bahnuhr

      @Spooky99 sagte in Status vom Kostal Wechselrichter auslesen?:

      @bahnuhr
      du hattest mir weiter oben ein skript für den 5.5 gepostet ab Beitrag 45 mit der alten Oberfläche...
      und geändert hatte ich nix auf einmal gings nicht mehr, also es werden keine Werte mehr ausgelesen...

      Das ist aber seltsam.
      Insbesondere weil es ja schon lief.
      Komisch.

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

      @bahnuhr jo, hab ich auch gedacht...
      allerdings könnte es sein das da was mit der Schnittstelle vom piko ist... Die App hat auch keine Daten mehr bekommen...

      K 1 Antwort Letzte Antwort
      0
      • E Offline
        E Offline
        ee
        schrieb am zuletzt editiert von
        #79

        Bei mir kommen auf einmal auch Fehler... Echt komisch hat alles super funktioniert.

        1 Antwort Letzte Antwort
        0
        • ? Offline
          ? Offline
          Ein ehemaliger Benutzer
          schrieb am zuletzt editiert von
          #80

          @Spooky99

          Habe das selbe Problem wie Du. Habe in PIKO 7.0... plötzlich bekomme ich keine Daten mehr. Ich übermittle diese auch noch auf das Suntrol Portal und das funktioniert weiterhin... Was wurde also bei ioBroker geändert...??!

          1 Antwort Letzte Antwort
          0
          • S Spooky99

            @bahnuhr jo, hab ich auch gedacht...
            allerdings könnte es sein das da was mit der Schnittstelle vom piko ist... Die App hat auch keine Daten mehr bekommen...

            K Offline
            K Offline
            kaybau
            schrieb am zuletzt editiert von kaybau
            #81

            @ecki945 Hi Spooky, ich bin ganz neu mit iobroker unterwegs und hab mich durch einige tutorials gewälzt.
            Ich hab das als TS script angelegt, richtig?
            Danke.
            Ich hab nen Piko 8.0 , die dxsEntries und das UI sind aber analog zu Eurem.
            VG,

            1 Antwort Letzte Antwort
            0
            • E Offline
              E Offline
              ecki945
              schrieb am zuletzt editiert von
              #82

              @kaybau, Nicht als TS-Scipt, sondern als Javascipt anlegen.

              1 Antwort Letzte Antwort
              0
              • ? Ein ehemaliger Benutzer

                @Vazi:

                Hallo

                Ich habe es auch soweit hinbekommen, jedoch - wie schon bekannt - werden keine Werte im Objekt angezeigt bzw. abgefüllt!?

                Jemand eine Lösung hierzu? Denn wenn ich keine Werte im Objekt habe, kann ich diese auch nicht für die Visualisierung nutzen.

                Danke und Gruss

                Vazi `

                Habe den "Fehler" gefunden…!! :D

                Die Werte sind ja unter javascirpt.0 aufgeführt! Von dort kann ich die Werte nun ja für alles mögliche holen.

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

                @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 1 Antwort Letzte Antwort
                0
                • 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 Offline
                  bahnuhrB Offline
                  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 Offline
                                    bahnuhrB Offline
                                    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 Offline
                                        bahnuhrB Offline
                                        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
                                          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

                                          360

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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