Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Growatt Wechselrichter über Modbus auslesen - gelöst -

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Growatt Wechselrichter über Modbus auslesen - gelöst -

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      pingo @Homoran last edited by pingo

      @homoran Mach ich gerne:
      Bildschirmfoto 2024-01-28 um 14.00.28.jpg

      damit funktioniert jetzt das Auslesen perfekt. Danke für die Inputs

      Edit: Mittlerweile habe ich in der Dokumentation gefunden, dass das oben alles Holding Register sind. Eingangsregister gibt es auch. Die liest aber der Growatt Adapter auch aus.

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

        @pingo sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

        Mittlerweile habe ich in der Dokumentation gefunden

        und vorher natürlich nicht gelesen 😀

        P 1 Reply Last reply Reply Quote 0
        • P
          pingo @Homoran last edited by pingo

          Eine Frage habe ich aber noch:

          Ziel ist es, dass ich die Holdingregister auch via Script beschreiben kann. Das habe ich nun versucht, aber das klappt nur für wenige Sekunden, dann überschreibt wohl der Modbus Adapter meinen Objektwert bei den Minuten und Stunden wieder mit dem Wert davor. Welche Einstellung brauche ich bitte für den Holding-Registerwert, dass meine Objektveränderung bleibt? (CW zusätzlich zur Abfrage funktioniert bei den Zeiten und Switches leider nicht; nur bei den SOC-Werten)

          Bildschirmfoto 2024-01-28 um 16.56.20.jpg

          setState('modbus.0.holdingRegisters.41092_wBatFirststop_SOC'/*41092 Wbatfirststop Soc*/,99);
          setState('modbus.0.holdingRegisters.41101_Bat_First_Start_Time_1_hour'/*41101 Bat First Start Time 1 Hour*/,3);
          setState('modbus.0.holdingRegisters.41103_Bat_First_on/off_Switch_1'/*41103 Bat First On/off Switch 1*/,1);
          

          Danke

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

            @pingo sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

            CW zusätzlich zur Abfrage

            schreddert dir binnen kurzem dein EEPROM, wenn nicht nur im RAM geschrieben eird.
            diese halten etwa 100.000 Schreibvorgänge.
            bei je einer bei jeder Afrage (jede Sekunde??) kannst du ja mal rechnen.

            was willst du denn am SoC verändern?
            oder an sonstigen Ausleseparametern?

            P 1 Reply Last reply Reply Quote 1
            • P
              pingo @Homoran last edited by pingo

              @homoran
              ok. CW habe ich wieder abgeschaltet
              den SOC will ich per Script verändern (je nachdem wie weit die Batterie mit Netzstrom nachts geladen werden soll)
              die Zeit will ich per Script passend zur billigsten Stromeinkaufszeit verändern
              den dazu passenden Switch dafür muss ich laut APP am Ende aktivieren (0 bedeutet m.E. deaktiviert)
              Edit: komischerweise kann ich die Zeit mittlerweile ändern, aber den Switch nicht. Vielleicht ist das gar keine Zahl? Es gibt ja nur die Zustände 0 und 1 laut Dokumentation.

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

                @pingo sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

                den SOC will ich per Script verändern (je nachdem wie weit die Batterie mit Netzstrom nachts geladen werden soll)

                das wäre aber nicht der SoC selbst sondern der minimal SoC, der sogenannte Entladeboden.

                P 1 Reply Last reply Reply Quote 0
                • P
                  pingo @Homoran last edited by pingo

                  @homoran genau MinSOC

                  Also nach weiteren Tests kann ich die Bat First on/off Switche per Javascript von 1 auf 0 setzen, aber nicht von 0 auf 1.
                  da kann man zusehen, wie sie vom Script kurz auf 1 gesetzt werden (grüne 1) und dann wieder "magisch" zurück auf 0 (zuerst kommt eine rote 1).
                  Wenn ich die hour auf einen anderen Wert setzen will, steht dann nach kurzer Zeit 0 im Objekt, obwohl vorher eine andere Zeit drin stand. Seltsam

                  das ist jetzt der aktuelle Status der Holdingregistereinstellungen:
                  Bildschirmfoto 2024-01-28 um 18.01.17.jpg
                  Bildschirmfoto 2024-01-28 um 18.06.42.jpg

                  P 1 Reply Last reply Reply Quote 0
                  • P
                    pingo @pingo last edited by

                    Ich vermute, dass ich nicht den richtigen Typ/Rolle für die Holdingregister ausgewählt habe oder der JavaScript SetState-Befehl für dieses zusammengesetzte Register aus Minuten und Stunde nicht korrekt ist.

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

                      @pingo sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

                      der JavaScript SetState-Befehl

                      mit ack=false?

                      P 1 Reply Last reply Reply Quote 0
                      • P
                        pingo @Homoran last edited by pingo

                        @homoran wie gebe ich dem setState-Befehl die Bestätigung bitte mit?

                        so ist das Javascript momentan:

                        setState('modbus.0.holdingRegisters.41092_wBatFirststop_SOC'/*41092 Wbatfirststop Soc*/,95);
                        setState('modbus.0.holdingRegisters.41101_Bat_First_Start_Time_1_hour'/*41101 Bat First Start Time 1 Hour*/,4);
                        setState('modbus.0.holdingRegisters.41101_Bat_First_Start_Time_1_Minute'/*41101 Bat First Start Time 1 Minute*/,6);
                        setState('modbus.0.holdingRegisters.41103_Bat_First_on/off_Switch_1'/*41103 Bat First On/off Switch 1*/,0);
                        

                        Bildschirmfoto 2024-01-28 um 20.36.00.jpg
                        Bildschirmfoto 2024-01-28 um 20.37.18.jpg

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

                          @pingo ich kann kein js

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

                            So das Problem ist gelöst. Man muss das Acknowledgment mitliefern. Das ist das zusätzliche "false" im Befehl.
                            Zusätzlich muss man in 16-bit schreiben und dabei folgende Zahl übergeben:
                            Stunde * 256 + Minute. Im Beispiel unten wird 10h 5min übergeben

                            setState('modbus.0.holdingRegisters.41101_Bat_First_Start_Time_1_16bit'/*41101 Bat First Start Time 1 16bit*/,2565,false);
                            
                            Homoran 1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @pingo last edited by

                              @pingo sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

                              So das Problem ist gelöst. Man muss das Acknowledgment mitliefern.

                              eben nicht!

                              deswegen ja

                              @pingo sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

                              Das ist das zusätzliche "false" im Befehl.

                              1 Reply Last reply Reply Quote 0
                              • N
                                nobbiman last edited by nobbiman

                                Hallo, ich wage mich mal mit meinen Basic-Problemen hier in die "Höhle der Löwen".
                                Mein Kernproblem: Ich bekomme keine Verbindung zwischen dem ioBroker-Adapter und dem Growatt-WR per Modbus hin.
                                Ich bin in dem Thema Modbus nicht drin, nur soweit, dass ich die Daten aus meinem MIN 4600 TL-XH per Modbus auslesen möchte.
                                Dazu habe ich mir einen ESP32 mit dem Breakout-Board HW-0519 zusammengesteckt, SV dran, mit PIN 3+4 am WR und auch mit meinem WLAN verbunden. Mein Router zeigt das Device unter der IP-Adresse 192.168.2.197 an.
                                Den ioB-Adapter habe ich wie folgt konfiguriertioB-MODBUS-Adapterkonfiguration.JPG
                                Zum Testen habe ich 2 Eingangsregister konfiguriertTest-Eingangsregister.JPG
                                Wenn ich dem Wiki von Tobias Faust folge
                                (https://github-com.translate.goog/tobiasfaust/SolaxModbusGateway/wiki/configuration-modbus?_x_tr_sl=auto&_x_tr_tl=de&_x_tr_hl=de&_x_tr_pto=wapp)
                                muss ich doch sicher noch über das WebUI konfigurieren!
                                Modbusconfig.JPG
                                Nur wie und mit welchem Befehl oder welchen Port an der IP-Adresse?
                                Im ioB bekomme ich im Log die Fehlermeldung

                                modbus.0
                                	2024-02-24 14:50:21.563	warn	On error: {"errno":-111,"code":"ECONNREFUSED","syscall":"connect","address":"192.168.2.197","port":502}
                                modbus.0
                                	2024-02-24 14:50:21.562	error	Client in error state.
                                modbus.0
                                	2024-02-24 14:50:21.561	error	Socket Error
                                

                                Ich hoffe, ich habe genügend Infos mitgegeben und hoffe gleichzeitig inständig, dass ihr mir auf die Sprünge helft und meine Defizite ausgleicht.

                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  Stobli last edited by Stobli

                                  Hallo,
                                  ich habe genau das gleiche Problem. Hast du schon eine Lösung ?

                                  Ich habe den Modbus Adapter auf dem ioBroker bekomme aber keine Verbindung zum Stick auf dem die ShineWIFI Software läuft.

                                  https://github.com/OpenInverterGateway/OpenInverterGateway

                                  Fehler:
                                  warn: modbus.1 (11484) On error: {"errno":-111,"code":"ECONNREFUSED","syscall":"connect"

                                  N 1 Reply Last reply Reply Quote 0
                                  • N
                                    nobbiman @Stobli last edited by

                                    @stobli Leider habe ich noch keine Lösung, kannst du denn auch nicht auf das WebUI zugreifen?
                                    Wenn doch, verrate mir bitte wie?

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      Stobli @nobbiman last edited by

                                      @nobbiman
                                      Auf die das Webinterface komme ich mit der IP

                                      http://192.168.20.231/postCommunicationModbus

                                      971c59f5-6994-478e-8401-fcedbe1af6d4-grafik.png

                                      N 1 Reply Last reply Reply Quote 0
                                      • N
                                        nobbiman @Stobli last edited by nobbiman

                                        @stobli sagte in Growatt Wechselrichter über Modbus auslesen - gelöst -:

                                        http://192.168.20.231/postCommunicationModbus

                                        Klappt bei mir auch nicht - natürlich mit meiner IP!

                                        Update: Nun ist es mir tatsächlich nach erneutem Flashen des Boards gelungen,, auf das Webinterface zuzugreifen😊 !
                                        Der Zugriff funktionierte aber einfach über die IP-Adresse; der Zugriff über IP/postCommunicationModbus klappt nicht.
                                        Wie dem auch sei, zunächst bin ich zufrieden, mal sehen, wie es weitergeht.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Stobli @nobbiman last edited by

                                          @nobbiman
                                          Hast du es hinbekomme über den Modbus Adapter eine Verbindung über WLAN zum Growatt Stick aufzubauen ?

                                          N 1 Reply Last reply Reply Quote 0
                                          • N
                                            nobbiman @Stobli last edited by nobbiman

                                            @stobli Mein Weg ist, mittels ESP32 an die Kontakte 3 und 4 des COM-Steckers die Modbus-Daten per WLAN ins Netzwerk zu übertragen.
                                            Was mir im Moment gelungen ist, ist per Netzwerk auf das WebUI zuzugreifen. Daten auszulesen klappt leider nur bedingt bis gar nicht, da die WLAN-Verbindung trotz naheliegendem Repeater zu schwach ist. Ich werde als nächste Aktion die 2-Drahtleitung vom COM-Stecker verlängern, damit ich den ESP32 näher an den Repeater platzieren kann.
                                            Bin im Moment im Urlaub, so dass ich das erst übernächste Woche testen kann.

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

                                            Support us

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

                                            821
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            29
                                            227
                                            80974
                                            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