Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      leonundjulie @seppele last edited by

      Kurzes Update nach sechs Monaten. Ich habe die EnPal Box aus unserer. HUAWEI Konfirmation demontiert und bekomme alle Daten meines WR SUN2000 jetzt mittels MODBUS via dem Adapter https://www.iobroker.net/#en/adapters/adapterref/iobroker.sun2000/README.md … funktioniert super

      1 Reply Last reply Reply Quote 0
      • M
        marcelinho last edited by

        weiß jemand welche Datenpunkte ich für "Netzbezug aktuell" benötige?
        errechnen via Blockly (falls nicht direkt ausgelesen werden kann) kein Problem, aber da die App zeitverzögert und nicht wie in Nodered alle paar Sekunden aktualisiert ist es schwierig welche Datenpunkte ich benötige.
        Ist es evtl. Load_power ?
        Screenshot 2024-07-05 094134.png

        Danke vorab.

        B 1 Reply Last reply Reply Quote 0
        • B
          bolliy Developer @marcelinho last edited by bolliy

          @marcelinho es müsste Grid Power sein (>0 : Netzbezug, <0 : Netzeinspeisung). Du findest die notwendigen Informationen in den Interface definitions https://github.com/bolliy/ioBroker.sun2000/blob/main/docs/definitions.md

          Stephan

          1 Reply Last reply Reply Quote 1
          • geo-ioan
            geo-ioan last edited by

            Hallo Zusammen,
            hat jemand schon geschafft die Wallbox zu steuern ?
            Danke.

            1 Reply Last reply Reply Quote 0
            • H
              Hilfsbedürftiger last edited by Hilfsbedürftiger

              Hallo, nachdem ich geschätzt 2000 Kommentare gelesen habe, konnte ich keine Lösung für mein Problem finden. Ich habe mir einen zweiten Wechselrichter zugelegt und kaskadiert. Als Master dient ein 4 KTL und als Slave ein 5 KTL. In den Einstellung hat der 4 KTL als Master bei bei RS485 die Komm-Adresse 1 und der 5 KTL hat die 2. In der FusionSolar App wird dies auch alles richtig angezeigt und zusammengerechnet. Im Node Red konnte ich vorher die Daten aus dem 4 KTL auch entsprechend auslesen. Jetzt habe ich natürlich den 5 KTL in Node Red hinzugfügt und die Units sind auch entsprechend mit 1 und 2 gesetzt. Server ist der 4 KTL mit der Unit 1. Wenn ich alles richtig verstanden habe, sollten jetzt alle Werte, auch die vom zweiten WR über den Master abgefragt werden. Jedoch wurden mir bei beiden Units unter beiden 32080 immer nur die Werte vom Master angezeigt. Ich habe auch mit den Abfrageintervallen sehr großzügig ausprobiert, jedoch ohne erfolg. Wenn ich jedoch bei dem 5 KTL einen zweiten Server mit der Unit 2 hinzufüge, und dann dort die Unit 2 vom WR auslese dann klappt es. Ist das so richtig oder sollte das nur mit einem Server klappen? Jetzt bekomme ich nämlich jede Minute ca. 10 Warnmeldungen, wo ich leider völlig überfordert bin.

              Falls mir jemand helfen kann, würde ich mich sehr freuen. Danke

              Bild 2.png Bild 1.jpgBild 3.png

              Samson71 B 2 Replies Last reply Reply Quote 0
              • Samson71
                Samson71 Global Moderator @Hilfsbedürftiger last edited by

                @hilfsbedürftiger
                Logs bitte als Text in Code-Tags </> einbetten und nicht als Screenshot. Diese Mäusekino Screenshots kann man auch nicht vernünftig lesen, wenn man nicht gerade vor einem fetten 4K Monitor sitzt, sondern nur mobil unterwegs ist.

                1 Reply Last reply Reply Quote 0
                • H
                  Hilfsbedürftiger last edited by Hilfsbedürftiger

                  node-red.0
                  	2024-08-28 23:46:45.275	warn	Node-RED: 28 Aug 23:46:45 - [warn] [modbus-client:2er WR] Client -> fsm connected after state init Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:43.271	warn	Node-RED: 28 Aug 23:46:43 - [warn] [modbus-client:2er WR] Client -> fsm init in 2000 ms TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:43.269	warn	Node-RED: 28 Aug 23:46:43 - [warn] [modbus-client:2er WR] Client -> fsm init state after reconnecting TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:41.266	warn	Node-RED: 28 Aug 23:46:41 - [warn] [modbus-client:2er WR] Client -> fsm broken state after failed Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 228 Aug 23:46:41 - [warn] [modbus-client:2er WR] Client -> fsm reconnect state after broken Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:41.265	warn	Node-RED: 28 Aug 23:46:41 - [warn] [modbus-client:2er WR] Client -> fsm failed state after sending Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:15.678	warn	Node-RED: 28 Aug 23:46:15 - [warn] [modbus-client:2er WR] Client -> fsm connected after state init Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 2
                  
                  node-red.0
                  	2024-08-28 23:46:13.668	warn	Node-RED: 28 Aug 23:46:13 - [warn] [modbus-client:2er WR] Client -> fsm init state after reconnecting TCP@192.168.178.80:502 default Unit-Id: 228 Aug 23:46:13 - [warn] [modbus-client:2er WR] Client -> fsm init in 2000 ms TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:11.667	warn	Node-RED: 28 Aug 23:46:11 - [warn] [modbus-client:2er WR] Client -> fsm failed state after sending Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 228 Aug 23:46:11 - [warn] [modbus-client:2er WR] Client -> fsm broken state after failed Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 228 Aug 23:46:11 - [warn] [modbus-client:2er WR] Client -> fsm reconnect state after broken Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 2
                  node-red.0
                  	2024-08-28 23:46:00.729	warn	Node-RED: 28 Aug 23:46:00 - [warn] [modbus-client:2er WR] Client -> fsm connected after state init Get More About It By Logging TCP@192.168.178.80:502 default Unit-Id: 2
                  
                  1 Reply Last reply Reply Quote 0
                  • B
                    badsnoopy667 @Hilfsbedürftiger last edited by badsnoopy667

                    @hilfsbedürftiger

                    Hast Du mal den "Flow mit Multi-Abfrage" aus meinem 1. Post probiert? Das mit dem 2. WR kann ich leider immer nicht selber testen, habe nur einen. Aber da müsste ein Beispiel drin sein.

                    Und wenn ich mich richtig erinnere, bedeutet die Warnmeldung erstmal nur, dass zu viele Daten abgefragt wurden und das System am Limit ist. Die Daten kommen aber alle, oder?

                    H 1 Reply Last reply Reply Quote 0
                    • H
                      Hilfsbedürftiger @badsnoopy667 last edited by

                      @badsnoopy667

                      Hallo, den Multiflow habe ich probiert, da habe ich das gleiche Problem, das beim zweiten WR die gleichen Werte wie beim ersten WR angezeigt werden. Die Warnmeldung von zu vielen Abfragen kann doch nicht sein, ich frage ja nur drei Werte ab pro WR ab. Diese werden auch richtig angezeigt.

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

                        Hallo @badsnoopy667,
                        bin gerade dabei den Punkt 4.1 Zeitgesteuertes Laden .. zu implementieren, alle Punkte nach Anleitung durchgeführt, btw. Danke dafür den Flow der läuft nun seit 2 Jahren problemlos bei mir.
                        Das aktivieren von TOU in der APP funktioniert und die LUNA beginnt das Laden aus dem Netz.
                        Das schreiben auf das Register 47086 funktioniert bei mir leider nicht nicht. Wert wird nicht auf 5 geändert.
                        ff7d8539-e6a3-4693-b12b-55af763cf02e-image.png

                        Würde das gerne aus einem Script triggern da ich aWattar-Kunde bin und zum günstigsten Zeitpunkt die Batterlie laden möchten.

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          badsnoopy667 @JohGre last edited by badsnoopy667

                          @johgre said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                          steuertes Laden .. zu implementieren, alle Punkte nach Anleitung durchgeführt, btw. Danke dafür den Flow der läuft nun seit 2 Jahren problemlos bei mir.

                          Was steht denn in Deiner function-Node? Bei mir steht da:

                          var sa = 50; // Startadresse des Registers
                          var address = 1; // Adressen des Registers
                          var value = msg.payload; // Wert, den du schreiben möchtest (16-Bit)
                          
                          var buf = Buffer.alloc(2);
                          buf.writeUInt16BE(value); // Schreibe den 16-Bit Wert in den Buffer
                          
                          msg.payload = {
                              'fc': 6, // Funktion 6 für das Schreiben eines einzelnen Registers
                              'unitid': 2, // Modbus-Geräte-ID
                              'value': buf.readUInt16BE(0) // Lese den Wert aus dem Buffer
                          };
                          
                          return msg;
                          
                          

                          Die Orange-Node ist vom Typ "FC6: Preset Single Register"


                          Was mir sonst noch einfällt wenn alles korrekt ist: Das Schreiben funktioniert bei mir nur, wenn ich während des Schreibens für ein paar Sekunden das Lesen beende. Anscheinend reicht die Bandbreite für beides nicht aus. Weiß gerade nicht, ob diese "setze flow.pause" funktion schon implementiert ist bei dir.

                          PS: Korrekte Unit-ID eingetragen?

                          JohGre 1 Reply Last reply Reply Quote 0
                          • JohGre
                            JohGre @badsnoopy667 last edited by

                            @badsnoopy667
                            Hi, danke für die schnelle Antwort.
                            function-Node Code sieht exact gleich aus, wobei mir jetzt einfällt ich habe ja Unit-ID 1. dh. ich muss die da jetzt im function-Node auch ändern?

                            B 1 Reply Last reply Reply Quote 0
                            • B
                              badsnoopy667 @JohGre last edited by

                              @johgre
                              Ich würde erwarten: Ja

                              JohGre 1 Reply Last reply Reply Quote 0
                              • JohGre
                                JohGre @badsnoopy667 last edited by

                                @badsnoopy667 Das wars, danke

                                1 Reply Last reply Reply Quote 0
                                • Chris M
                                  Chris M last edited by Chris M

                                  Ich hätte auch nochmal eine Frage zum Schreiben..
                                  Ich hab ebenfalls einen Node-Red Flow bei dem ich alle Sachen meiner Kaskade auslese. Ich nutze dazu aber als Verbindung die Wechselrichter direkt und nicht den SDongle auf Grund der Geschwindigkeit.
                                  Nun wollte ich AC-Laden (Register 47087) bei der Batterie bei Bedarf schreiben. Mit dem Beispiel aus dem Initial Post funktioniert das nur wenn ich als "Server" den SDongle auswähle nicht aber wenn ich auch hier den Wechselrichter als Modbus Server angebe. Muss in der Node "function" irgendwas am Code geändert werden? Unterschied beim Lesen ist ja nur, dass ich da z.b. keine Unit-ID brauche,

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    marcelinho last edited by

                                    Hallo zusammen, habe im Fusion Portal folgende Meldung bekommen...
                                    Ist das evtl. ausschlaggebend zu den Nodered Flows ?

                                    Wichtiges Update zur IP-Verbindung von FusionSolar
                                    Sehr geehrter Benutzer/Sehr geehrte Benutzerin, bitte beachten Sie, dass die von Ihrem Unternehmen verwalteten Geräte über einen bestimmten Domainnamen mit FusionSolar verbunden sind. Der Zugriff auf das System über den Domainnamen bleibt unverändert, wodurch sichergestellt wird, dass Ihre Geräte eine kontinuierliche Verbindung zu FusionSolar aufrechterhalten. Es ist jedoch möglich, dass einige Geräte über eine IP-Adresse mit FusionSolar verbunden sind. Aufgrund von Systemaktualisierungen wird die IP-Adresse von FusionSolar bis Ende 2024 geändert. Wenn Ihre Geräte derzeit über eine IP-Adresse verbunden sind, werden sie offline geschaltet, sobald die IP-Adresse geändert wird. Daher empfehlen wir Ihnen zu überprüfen, ob Ihre Geräte über eine IP-Adresse mit FusionSolar verbunden sind. Wenn sie über eine IP-Adresse verbunden sind, aktualisieren Sie bitte die Konfiguration, um den folgenden Domainnamen zu verwenden: region04eu5.fusionsolar.huawei.com Weitere Informationen zu dieser Änderung finden Sie unter: https://support.huawei.com/enterprise/en/doc/EDOC1100414730 Bei Fragen wenden Sie sich bitte an: eu_inverter_support@huawei.com. Vielen Dank für Ihre Unterstützung und Ihr Verständnis.

                                    1 Reply Last reply Reply Quote 0
                                    • geo-ioan
                                      geo-ioan @badsnoopy667 last edited by

                                      Bin ich der einzige der Fehler hat ?
                                      Seit mehrere Wochen habe ich Probleme mit haufenweise Fehler in den Logs:

                                      Copy to Clipboard
                                      node-red.0 2024-11-17 21:13:59.751 warn Node-RED: 17 Nov 21:13:59 - [warn] [modbus-client:WLAN-FE] Client -> fsm broken state after failed Get More About It By Logging TCP@192.168.0.73:502 default Unit-Id: 1
                                      node-red.0 2024-11-17 21:13:59.750 warn Node-RED: 17 Nov 21:13:59 - [warn] [modbus-client:WLAN-FE] Client -> fsm failed state after sending Get More About It By Logging TCP@192.168.0.73:502 default Unit-Id: 1
                                      node-red.0 2024-11-17 21:13:28.040 warn Node-RED: 17 Nov 21:13:28 - [warn] [modbus-client:WLAN-FE] Client -> fsm broken state after failed Get More About It By Logging TCP@192.168.0.73:502 default Unit-Id: 1
                                      node-red.0 2024-11-17 21:13:28.039 warn Node-RED: 17 Nov 21:13:28 - [warn] [modbus-client:WLAN-FE] Client -> fsm failed state after sending Get More About It By Logging TCP@192.168.0.73:502 default Unit-Id: 1
                                      node-red.0 2024-11-17 21:13:11.526 warn Node-RED: 17 Nov 21:13:11 - [warn] [modbus-client:WLAN-FE] Client -> fsm broken state after failed Get More About It By Logging TCP@192.168.0.73:502 default Unit-Id: 1
                                      node-red.0 2024-11-17 21:13:11.525 warn Node-RED: 17 Nov 21:13:11 - [warn] [modbus-client:WLAN-FE] Client -> fsm failed state after sending Get More About It By Logging TCP@192.168.0.73:502 default Unit-Id: 1
                                      ich kriege zwar die Daten gelesen aber kann nichts senden ... oder sehr selten.
                                      Auch in einer Linux Umgebung das gleiche Problem ...

                                      PlatformBetriebssystem:win32
                                      Architektur:x64
                                      CPUs:4
                                      Geschwindigkeit:1498 MHz
                                      Modell:Intel(R) Pentium(R) Silver J5005 CPU @ 1.50GHz
                                      RAM:7.4 GB
                                      System-Betriebszeit:02:50:09
                                      Node.js:v20.18.0
                                      time:1731875819824
                                      timeOffset:-60
                                      NPM:10.8.2
                                      Adapter-Anzahl:546
                                      Datenträgergröße:445.8 GB
                                      Freier Festplattenspeicher:276.9 GB
                                      Aktive Instanzen:19
                                      Pfad:C:\iobroker\SmartHome\ioBroker
                                      Betriebszeit:02:49:42
                                      aktiv:true
                                      _nodeCurrent:20.18.0
                                      _nodeNewest:20.18.0
                                      _nodeNewestNext:20.18.0
                                      _npmCurrent:10.8.2
                                      _npmNewest:10.8.2
                                      _npmNewestNext:10.8.2

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

                                        @geo-ioan said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                                        ich kriege zwar die Daten gelesen aber kann nichts senden ... oder sehr selten.
                                        Auch in einer Linux Umgebung das gleiche Problem ...

                                        Du musst vor dem Senden das Lesen pausieren, gleichzeitig mag er nicht. Ich habe bei mir eine Abfrage eingebaut beim lesen, die prüft, ob die Variable "Pause" auf false steht. Beim Schreiben wird die Variable Pause für 20 Sekunden auf true gesetzt, dann wird 5 Sekunden gewartet und dann geschrieben.

                                        MMn bedeuten die Warnungen nur, dass zu viel Traffic ist. Ist die Verbindung zum WLan Stick schlecht?

                                        geo-ioan 1 Reply Last reply Reply Quote 0
                                        • geo-ioan
                                          geo-ioan @badsnoopy667 last edited by

                                          @badsnoopy667
                                          Hallo Badsnoopy,
                                          Danke für deine Antwort.
                                          Ich benutze seit einem Jahr fehlerfrei das Nodebeispiel hier am Anfang. Erst seit einige Wochen das Problem aufgetreten. (vielleicht nach Node Update ?). Es ist alles verkabelt.

                                          [Nodes.json](/assets/uploads/files/1732139496386-nodes.json) 
                                          
                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            MaGe @geo-ioan last edited by

                                            Hallo zusammen,

                                            jetzt ist es schon eine Weile her, dass ich meinen node-red flow erstellt habe.
                                            Nun wollte ich diesen anpassen und stehe gerade auf dem Schlauch.

                                            Aktuell übergebe ich meine Eigenschaften "msg.payload" mit dem "msg.topic" direkt an den iobroker.
                                            78731b54-8d16-4e07-a778-57b33e7e27d0-grafik.png
                                            Filter node
                                            99fb44f9-097e-466d-9a6e-86766fe0800e-grafik.png
                                            ioBroker node
                                            6c44dfde-c7cc-4cbb-b61d-0b58717b9576-grafik.png

                                            Nun möchte ich den topic und den payload an die InfluxDB 2 direkt weitergeben.
                                            D.h. in der InfluxDB 2 soll der topic das _measurement und der payload als _field value übergeben werden.
                                            Die Verbindung zum bucket habe ich hergestellt.
                                            f53dc1d7-8d19-433c-93a8-725ae24549e4-grafik.png
                                            An der Übergabe scheiter ich gerade.

                                            Habt ihr einen Tipp für mich?

                                            Gruß
                                            Markus

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            704
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            110
                                            573
                                            175972
                                            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