Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Wechselrichter auslesen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wechselrichter auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators last edited by

      Hab es ja nicht mal hinbekommen die payload in ein textfile zu schreiben 😢

      Im debug Fenster (siehe Screenshot) wird ed anscheinend direkt zerlegt.

      Heute abend probier ich es nochmal. Ggf. bekomme ich die HTML-Ausgabe

      Danke

      Rainer

      Gesendet von meinem Cynus T7 mit Tapatalk

      1 Reply Last reply Reply Quote 0
      • P
        pix last edited by

        Hallo,

        ich meinte es anders: Kannst du mir die Ausgabe des Nodes "Wechselrichter auslesen" mal auf debug legen. Das was da rauskommt, hätte ich gern (Copy Paste).

        Gruß

        Pix

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

          Ok, hier das cut and paste:

          ! ````
          22.4.2015, 18:33:47[26486bcb.d9b794]
          [msg.payload] : (string)
          <title>PV Webserver</title>
          ! <form method="post" action="">
          !
          | |
          | | PIKO 5.5
          Helios (255) | |
          ! /tmp/power-inverter1.values
          PHOTOVOLTAICS_DC1U=$( cat /tmp/power-inverter1.values | grep Spannung | head -1 | cut -f2 -d" " )
          PHOTOVOLTAICS_DC2U=$( cat /tmp/power-inverter1.values | grep Spannung | head -2 | tail -1 | cut -f2 -d" " )
          PHOTOVOLTAICS_DC1I=$( cat /tmp/power-inverter1.values | grep Strom | head -1 | cut -f2 -d" " | awk '{printf "%d\n",$11000}' )
          PHOTOVOLTAICS_DC2I=$( cat /tmp/power-inverter1.values | grep Strom | head -2 | tail -1 | cut -f2 -d" " | awk '{printf "%d\n",$1
          1000}' )
          PHOTOVOLTAICS_DC1P=$(( $PHOTOVOLTAICS_DC1U * $PHOTOVOLTAICS_DC1I / 1000 ))
          PHOTOVOLTAICS_DC2P=$(( $PHOTOVOLTAICS_DC2U * $PHOTOVOLTAICS_DC2I / 1000 ))
          ! PHOTOVOLTAICS_ACCURP=$( cat /tmp/power-inverter1.values | grep aktuell | cut -f2 -d" " )
          PHOTOVOLTAICS_ACTOTP=$( cat /tmp/power-inverter1.values | grep Gesamtenergie | cut -f5 -d" " )
          PHOTOVOLTAICS_DAILYP=$( cat /tmp/power-inverter1.values | grep Tagesenergie | cut -f2 -d" " )
          :

          update the system variables in the HomeMatic

          wget $COMMONWGETARGS "http://192.168.1.999/addons/db/state.cgi?item=PV.DC1&value=$PHOTOVOLTAICS_DC1P"
          wget $COMMONWGETARGS "http://192.168.1.999/addons/db/state.cgi?item=PV.DC2&value=$PHOTOVOLTAICS_DC2P"
          wget $COMMONWGETARGS "http://192.168.1.999/addons/db/state.cgi?item=PV.DAILYP&value=$PHOTOVOLTAICS_DAILYP"
          wget $COMMONWGETARGS "http://192.168.1.999/addons/db/state.cgi?item=PV.AC&value=$PHOTOVOLTAICS_ACCURP"

          notwendiges Paket: html2text

          sudo apt-get install html2text

          ! Das hab ich mir aber auch nur geklaut und modifiziert.
          ! jetzt heisst es:
          @Homoran:
          ! > ich will jetzt mal selber etwas basteln `
          ! Gruß
          ! Rainer | </form>
          ! ````

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

            Ich fürchte ich bin damit doch (noch) überfordert.

            Die ausgabe in Datei habe ich jetzt hinbekommen.

            einmal als html:

            ! ````
            ! <title>PV Webserver</title>
            ! <form method="post" action="">
            ! | |
            ! | |

            PIKO 5.5

            ! Helios (255)
            |
            |
            ! |

            ! * * *
            ! |
            ! | |
            ! |

            AC-Leistung |
              |

            Energie |

            ! | |
            ! |

            aktuell |

            4217 |
              W |

            Gesamtenergie |

            13106 |
              kWh |
              |

            ! | |
            ! |

            |

            |
              |

            Tagesenergie |

            18.31 |
              kWh |
              |

            ! | |
            ! |

            Status |

            Einspeisen MPP |
              |

            ! | |
            ! |
            ! |

            ! * * *
            ! |
            ! | |
            ! |
            ! |

            PV-Generator |
              |

            Ausgangsleistung |
              |
              |

            ! | |
            ! |

            <u>String 1</u> |
              |
              |

            <u>L1</u> |
              |
              |
              |

            ! |

            Spannung |

            284 |
              V |

            Spannung |

            232 |
              V |
              |

            ! | |
            !   |

            Strom |

            7.57 |
              A |

            Leistung |

            1402 |
              W |
              |

            ! | |
            ! |

            <u>String 2</u> |
              |
              |

            <u>L2</u> |
              |
              |
              |

            ! |

            Spannung |

            313 |
              V |

            Spannung |

            234 |
              V |
              |

            ! | |
            !   |

            Strom |

            7.65 |
              A |

            Leistung |

            1417 |
              W |
              |

            ! | |
            ! |

            <u>String 3</u> |
              |
              |

            <u>L3</u> |
              |
              |
              |

            ! |

            Spannung |

            0 |

            V |

            Spannung |

            231 |
              V |
              |

            ! | |
            !   |

            Strom |

            0.00 |

            A |

            Leistung |

            1398 |
              W |
              |

            ! | |
            ! |
            ! | |

            ! * * *
            ! |
            ! | |
            ! |
            ! | |
            RS485 Kommunikation |
            ! | |
            ! | |
            Wechselrichter |
            | |
            ! * * *
            ! | |
            ! | |

            Historie

            Infoseite |

            Einstellungen

            ! </form>
            ! ````

            und einmal die Ausgabe nach der Umwandlung in text:

            ! ````
            Einstellungen
            n
            n
            ! Infoseite
            e
            e
            ! Einstellungen
            !  
            kWh

            !   W
            ! Gesamtenergie
            ! 13106
              kWh

            !  
            !

            ! Tagesenergie
            ! 18.10
              kWh

            ! Status
            ! Einspeisen MPP

            !  
            ! ie
            ! 18.10
              kWh

            ! Status
            ! Einspeisen MPP

            ! PV-Generator

            ! Ausgangsleistung

            ! String 1

            ! L1

            ! Spannung
            ! 287
              V
            ! Spannung
            ! 232
              V

            !  
            ! Strom
            ! 7.62
              A
            ! Leistung
            ! 1428
              W

            ! String 2

            ! L2

            ! Spannung
            ! 316
              V
            ! Spannung
            ! 234
              V

            !  
            ! Strom
            ! 7.69
              A
            ! Leistung
            ! 1432
              W

            ! String 3

            ! L3

            ! Spannung
            ! 0

            V

            ! Spannung
            ! 232
              V

            !  
            ! Strom
            ! 0.00

            A

            ! Leistung
            ! 1421
              W

            ! RS485 Kommunikation
            ! Wechselrichter 
            ! Historie

            Infoseite

            ! Einstellungen
            ! Einstellungen
            ! ````
            Mit dem Zerschneiden und Auslesen komme ich nicht weiter.

            Ich habe mit den Filtern im html node rumgespielt und [bgcolor="#FFFFFF"] eingegeben, dann bekomme ich alle Werte in Feldern mit weißem Hintergrund als csv Datei, aber das reicht leider nicht.

            vielleicht kann mir das doch mal jemand zeigen. :?

            Danke Rainer

            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

              Man kann mit regex rausholen:

              [{"id":"f07e3f63.0f81c","type":"function","name":"Extract values","func":"// remove all \"new line\" und spaces\nvar text = msg.payload.replace(/\\r\\n/g, '').replace(/\\s/g, '');\n\nmsg.payload = '';\n// Klone original message um timestamp zu behalten\nvar msg1 = JSON.parse(JSON.stringify(msg));\nvar msg2 = JSON.parse(JSON.stringify(msg));\nvar msg3 = JSON.parse(JSON.stringify(msg));\nvar msg4 = JSON.parse(JSON.stringify(msg));\n\n// extract \"aktuell\"\nvar r = text.match(/aktuell<\\/td><[\\w\\d#=\"]*>([0-9.]*)<\\/td>/);\nmsg1.payload = r ? r[1] : '';\n\n// extract \"Gesamtenergie\"\nr = text.match(/Gesamtenergie<\\/td><[\\w\\d#=\"]*>([0-9.]*)<\\/td>/);\nmsg2.payload = r ? r[1] : '';\n\n// extract \"Tagesenergie\"\nr = text.match(/Tagesenergie<\\/td><[\\w\\d#=\"]*>([0-9.]*)<\\/td>/);\nmsg3.payload = r ? r[1] : '';\n\n// extract \"Spannung\" als Array.\nr = text.match(/Spannung<\\/td><[\\w\\d#=\"]*>([0-9.]*)<\\/td>/g);\n\n// Ich bin zu faul um jetzt 6 outputs zu machen, deswegen schiebe ich die alle in array\nmsg4.payload = [];\nif (r) {\n    for (var i = 0; i < r.length; i++) {\n        msg4.payload.push(r[i].match(/<\\/td><[\\w\\d#=\"]*>([0-9.]*)<\\/td>/)[1]);\n    }\n}\nmsg4.payload = JSON.stringify(msg4.payload);\n\n\nreturn [msg1, msg2, msg3, msg4];","outputs":"4","valid":true,"x":644,"y":169,"z":"13d62bc7.ec29d4","wires":[["3c7bba4c.c38446"],["3c7bba4c.c38446"],["3c7bba4c.c38446"],["3c7bba4c.c38446"]]},{"id":"3c7bba4c.c38446","type":"debug","name":"","active":true,"console":"false","complete":"false","x":866,"y":162,"z":"13d62bc7.ec29d4","wires":[]}]
              

              Output:

              4217
              13106
              18.31
              ["284","232","313","234","0","231"]
              
              
              1 Reply Last reply Reply Quote 0
              • M
                MehrCurry last edited by

                Ich hab was ähnliches gebaut um einen Piko 5.5 auszulesen:

                http://flows.nodered.org/flow/7424deb5bb78f48945e7

                Funktioniert ohne externe Skripte. Allerdings kommt man nur an die Leistungswerte ran. Die Spannung- und Stromwerte kann man nicht auslesen, das die HTML Datei vom Wechselrichter nicht valide ist. Dafür bräuchte man einen HTMLTidy Node für NodeRed.

                1 Reply Last reply Reply Quote 0
                • H
                  HKF8770 last edited by

                  Hallo MehrCurry,

                  war so frei deinen Flow zu kopieren, doch komme ich nicht ganz klar wie ich den einrichten muss.

                  Muss ja IP anpassen und wohl auch das Kennwort irgendwo eintragen.

                  Denke mal die IP muss ich im Feld http request anpassen im Feld URL

                  Muss ich in HM# und PIKO# auch was anpassen?

                  1 Reply Last reply Reply Quote 0
                  • B
                    Beatz last edited by

                    Hallo HKF8770,

                    folgende Einstellungen musst Du anpassen, um den Flow nutzen zu können:

                    Voraussetzung ist ein laufender MQTT Broker. Diesen kannst Du in ioBroker einrichten. Die Daten gibts Du später in der Config von node-red ein.

                    • http request
                    URL > auf die IP Deines Wechselrichters einstellen
                    
                    Use basic authentication ? > Haken setzen
                    
                    Username > User des Wechselrichters (Standard beim PIKO ist pvserver)
                    
                    Password > Passwort (Standard ist pvwr)
                    
                    • MQTT Config

                      Doppelklick auf einen der MQTT-Nodes

                      es öffnet sich ein Fenster zur Konfiguration (gilt für alle 5 Nodes)

                      Du kannst den bestehenden Eintrag mit dem Stift bearbeiten

                      Trage hier die Werte des MQTT Brokers ein. Bei der Installation auf dem selben Server bei Broker "localhost" eintragen und ggf. Authentifizierung.

                    • Optional: Json deaktivieren und Zahlen verwenden

                      Ich fand die Einbindung von Json wenig hilfreich und habe daher die drei Funktionen durch folgende ersetzt, um daraus Zahlenwerte zu bekommen.

                    msg.payload = parseInt(msg.payload);
                    return msg;
                    
                    1 Reply Last reply Reply Quote 0
                    • H
                      HKF8770 last edited by

                      Danke für die supper Erklärung…da blick selbst ich es. Dann liegt es wohl am MQTT Broker, den hab ich nicht.

                      Dann mal schauen ob ich klar komme.

                      1 Reply Last reply Reply Quote 0
                      • K
                        krissi last edited by

                        Guten morgen. Hat das zufällig schon mal jemand für eine SMA Webbox gemacht?

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        673
                        Online

                        31.7k
                        Users

                        79.7k
                        Topics

                        1.3m
                        Posts

                        7
                        12
                        5068
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo