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.
    • smartboart
      smartboart @Wiednitz last edited by smartboart

      @Wiednitz Unbenannt.JPG

      hatte aber auch deine ausprobiert

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

        ist dein log auch Fehlerfrei wenn der Wechselrichter aus ist?

        Wiednitz 1 Reply Last reply Reply Quote 0
        • Wiednitz
          Wiednitz @smartboart last edited by

          @smartboart

          Log von eben gerade wenn Aus, Modbusadapter ist ja ohne Strom, da Inverter Strom für den Adapter liefert.

          modbus.0	2019-11-30 20:07:52.573	debug	Closing client on purpose.
          modbus.0	2019-11-30 20:07:51.561	debug	Cleaning up request fifo.
          modbus.0	2019-11-30 20:07:51.561	debug	Clearing timeout of the current request.
          modbus.0	2019-11-30 20:07:51.560	debug	Socket closed with error
          modbus.0	2019-11-30 20:07:51.560	warn	On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.10.25","port":23}
          modbus.0	2019-11-30 20:07:51.560	error	Client in error state.
          modbus.0	2019-11-30 20:07:51.560	error	Socket Error
          modbus.0	2019-11-30 20:07:43.169	debug	system.adapter.admin.0: logging true
          modbus.0	2019-11-30 20:06:48.079	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:48.079	info	List of port: []
          modbus.0	2019-11-30 20:06:47.054	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:47.053	info	List of port: []
          modbus.0	2019-11-30 20:06:46.037	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:46.037	info	List of port: []
          modbus.0	2019-11-30 20:06:45.014	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:45.014	info	List of port: []
          modbus.0	2019-11-30 20:06:43.983	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:43.982	info	List of port: []
          modbus.0	2019-11-30 20:06:42.949	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:42.948	info	List of port: []
          modbus.0	2019-11-30 20:06:41.918	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:41.918	info	List of port: []
          modbus.0	2019-11-30 20:06:40.901	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:40.901	info	List of port: []
          modbus.0	2019-11-30 20:06:39.886	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:39.886	info	List of port: []
          modbus.0	2019-11-30 20:06:38.611	debug	sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0
          modbus.0	2019-11-30 20:06:38.610	info	List of port: []
          modbus.0	2019-11-30 20:06:30.536	debug	Closing client on purpose.
          modbus.0	2019-11-30 20:06:29.523	debug	Cleaning up request fifo.
          modbus.0	2019-11-30 20:06:29.522	debug	Clearing timeout of the current request.
          modbus.0	2019-11-30 20:06:29.522	debug	Socket closed with error
          modbus.0	2019-11-30 20:06:29.522	warn	On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.10.25","port":23}
          modbus.0	2019-11-30 20:06:29.522	error	Client in error state.
          modbus.0	2019-11-30 20:06:29.522	error	Socket Error
          modbus.0	2019-11-30 20:05:08.492	debug	Closing client on purpose.
          modbus.0	2019-11-30 20:05:07.481	debug	Cleaning up request fifo.
          modbus.0	2019-11-30 20:05:07.480	debug	Clearing timeout of the current request.
          modbus.0	2019-11-30 20:05:07.480	debug	Socket closed with error
          modbus.0	2019-11-30 20:05:07.479	warn	On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.10.25","port":23}
          modbus.0	2019-11-30 20:05:07.479	error	Client in error state.
          modbus.0	2019-11-30 20:05:07.479	error	Socket Error
          modbus.0	2019-11-30 20:03:46.445	debug	Closing client on purpose.
          modbus.0	2019-11-30 20:03:45.445	debug	Cleaning up request fifo.
          modbus.0	2019-11-30 20:03:45.445	debug	Clearing timeout of the current request.
          modbus.0	2019-11-30 20:03:45.445	debug	Socket closed with error
          modbus.0	2019-11-30 20:03:45.444	warn	On error: {"errno":"ETIMEDOUT","code":"ETIMEDOUT","syscall":"connect","address":"192.168.10.25","port":23}
          modbus.0	2019-11-30 20:03:45.444	error	Client in error state.
          modbus.0	2019-11-30 20:03:45.443	error	Socket Error
          

          Mit den Zeiten hat es heute Navhmittag funktioniert...

          capture_001_30112019_200653.jpg

          Wie oft kommen die Fehler ?

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

            Stimmt du versorgst den Wemoja mit der Inverterschnittstellen Spannung....Meiner hängt an ner Batterie...Die Fehler kommen jede Minute mit den Einstellungen die du als erstes ganz oben geteilt hast...Werde mal die von eben probieren...

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

              Welche Version vom Modbusadapter verwendest du? Hab eine instanz mit nem RS485 Modbus laufen an welcher ein Solar Log Meßgerät eingelesen wird...halt kein TCP IP und läuft seit Monaten Fehlerfrei...

              Wiednitz 1 Reply Last reply Reply Quote 0
              • Wiednitz
                Wiednitz @smartboart last edited by

                @smartboart

                Version 3.0.0, direkt von Github installiert.

                Solar Log hängt per Kabel an deinem IoBroker PC ?

                smartboart W 2 Replies Last reply Reply Quote 0
                • smartboart
                  smartboart @Wiednitz last edited by

                  @Wiednitz ja an meinem Raspberry pi / Multihost Slave

                  Denke das Problem ist auch, wenn der Modbus nix mehr sendet weil keine Sonne und Wechselrichter aus....Deshalb wäre mir bei der Anwendung MQTT lieber.

                  Wiednitz 1 Reply Last reply Reply Quote 0
                  • Wiednitz
                    Wiednitz @smartboart last edited by Wiednitz

                    @smartboart

                    Na die Fehler kommen aber auch wenn der Inverter an ist ???

                    smartboart 1 Reply Last reply Reply Quote 0
                    • smartboart
                      smartboart @Wiednitz last edited by

                      @Wiednitz ja stimmt, hab gerade im Log nachgeschaut....vlt.liegt es doch am Wlan...Ist ein paar meter weg im Garten der Wechselrichter...

                      smartboart 1 Reply Last reply Reply Quote 0
                      • smartboart
                        smartboart @smartboart last edited by

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

                        vlt.liegt es doch am Wlan

                        -82db wifi RSSI was hast du? weist das zufällig?

                        Unbenannt.JPG

                        Wiednitz 3 Replies Last reply Reply Quote 0
                        • Wiednitz
                          Wiednitz @smartboart last edited by Wiednitz

                          @smartboart

                          Nein nicht auf Anhieb, ist ja jetzt nicht erreichbar...

                          1 Reply Last reply Reply Quote 0
                          • Wiednitz
                            Wiednitz @smartboart last edited by

                            @smartboart

                            Vielleicht ist der Sketch auch für einen esp8266 mit max485 TTL Konverter gedacht !? Es gibt auch Growatt Inverter mit Rs485 Ausgang !?

                            1 Reply Last reply Reply Quote 0
                            • Wiednitz
                              Wiednitz @smartboart last edited by

                              @smartboart

                              -77 db steht bei der esp-link Software für die Fritzbox drinnen...

                              smartboart 1 Reply Last reply Reply Quote 0
                              • smartboart
                                smartboart @Wiednitz last edited by smartboart

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

                                @smartboart

                                Vielleicht ist der Sketch auch für einen esp8266 mit max485 TTL Konverter gedacht !? Es gibt auch Growatt Inverter mit Rs485 Ausgang !?

                                könnte sein, das habe ich noch nicht überprüft. Man müsste halt wissen welchen Inverter der Entwickler des Sketch hatte....Ich habe ein ein issue auf Github offen, mal sehen ob er da antwortet. Ansosnten mal ne Nachricht schreiben.

                                Dank deinem Hinweis, dass es bei dir Fehlerfrei läuft ohne Growatt Stick, habe ich mal bei mir weiter gesucht. Ich hatte den Zuätzlichen Wemo mit ESP-link über den 5V Ausgang eines anderen Wemo versorgt. Das hat wohl nicht ausgereicht. Der hat jetzt seine Versorgung direkt und verhält sich nun auch gleich stabiler. Auch die LED zeigen nun deutlicher den Traffic an. Die Wlan Verbindung ist nun auch merklich stabiler und die Meldungen im Log haben sich reduziert.
                                Mit dem richtigen _Setup wirds bestimmt gut...

                                Wiednitz 1 Reply Last reply Reply Quote 0
                                • smartboart
                                  smartboart last edited by

                                  Hab mit der Laufzeit mal etwas rumgerechnet high und low...aber ich komme auch auf keinen vernünftigen Wert. Das gilt es noch irgendwie zu lösen...

                                  Auf die Fehlermedungen und der Einspeisesicherung / Sicherungsfall reagiere ich schon mit nem Script. Die Laufzeit würde ich auch noch gerne verarbeiten...

                                  Aber wie ich auch rechne mit den beiden Werten, komme nicht auf die Gesamtlaufzeit...

                                  Wiednitz 1 Reply Last reply Reply Quote 0
                                  • Wiednitz
                                    Wiednitz @smartboart last edited by Wiednitz

                                    @smartboart

                                    Ha mit der Laufzeit wollte ich Dich auch schon fragen, ob du dir erklären kannst, wie die Chinesen auf folgenden Faktor kommen. Habe auch ewig gerechnet und vor zwei Wochen endlich gelöst.

                                    Der Work Time Total Low Wert sind die aktuellen Sekunden, zählt fortwährend hoch. Diesen Wert also /60 Sekunden /60 Minuten ergibt die Stunden hh,min. Dieser Wert erreicht sein Maximum bei 32765 Sekunden (18,203x60x60/2).

                                    Der Work Time Total High Wert erhöht sich um 0,5 , wenn die oben genannten 32765 Sekunden erreicht sind. Diesen Wert also x18,203=hh,min

                                    Werte von gestern Abend:

                                    Shine App zeigt 1000,1 h an.
                                    Low Wert: 28818 s
                                    High Wert: 54,5

                                    28818/60/60=8,005 h
                                    54,5x18,203=992,064 h
                                    8,005+992,064=1000,069 h

                                    Die Betriebsstunden sind die Zeit, wenn der Inverter Strom erzeugt, wenn er auf die Nötige Spannung wartet, wird nix gezählt.

                                    Wie kommen die Chinesen auf diese 18,203 ??????

                                    1 Reply Last reply Reply Quote 0
                                    • Wiednitz
                                      Wiednitz @smartboart last edited by

                                      @smartboart

                                      Schön das es besser wird. Was meinst du mit dem richtigen Setup ?

                                      smartboart 1 Reply Last reply Reply Quote 0
                                      • smartboart
                                        smartboart @Wiednitz last edited by

                                        @Wiednitz
                                        super vielen Dank für die Formel, werde mir gleich ein script basteln um mir das in Vis anzuzeigen. Keine Ahnung wie die chinesen darauf kommen. Ich bin aber in einem growatt Sammelthread Forum angemeldet, wo sich auch deren support rumdrückt. da kann ich ja mal fragen...

                                        mit setup meine ich die Einstellungen im Modbusadapter. evtl. lässt sich im esp-link auch noch was herausfinden/optimieren .da habe ich was von 531> sleep enable,type: 2 im log gesehen. Das gibt es bei Tasmota auch. um strom zu sparen. vlt. kann man das irgendwo deaktiviern.

                                        Wiednitz 1 Reply Last reply Reply Quote 0
                                        • Wiednitz
                                          Wiednitz @smartboart last edited by

                                          @smartboart

                                          Naja durch die ständige Aktivität an rx und tx wird er sich wohl nicht schlafen legen !? Normal war diese Software gar nicht für unsere Zwecke gedacht, sondern die soll Microprozessoren flashen !?

                                          smartboart 1 Reply Last reply Reply Quote 0
                                          • smartboart
                                            smartboart @Wiednitz last edited by

                                            @Wiednitz ja kann sein das es nichts bringt....Hab mal MQTT in esp link deaktiviert, ändert aber auch nix....über MQTT frage ich hier nur die Verbindung ab....

                                            Falls du interesse hast hier mal ein Script für die Berechnung gesamtzeit und Ersparnis... Sowie eins zur Überwachung der Anlage

                                            /* Skript berechnet Tagesersparnis / Ertrag , Gesamtersparnis / Ertrag sowie die
                                            Gesamtlaufzeit*/
                                            
                                            // Anlegen der States für Vis
                                            createState('javascript.0.Messwerte.PV_Huette.Ertrag_Heute',{read: true,write: true,desc: "Errsparnis PV Anlage Heute",type: "number",def:0, unit: "EUR"});
                                            createState('javascript.0.Messwerte.PV_Huette.Ertrag_Gesamt',{read: true,write: true,desc: "Ersparnis PV Anlage Gesamt",type: "number",def:0, unit: "EUR"});
                                            createState('javascript.0.Messwerte.PV_Huette.Laufzeit',{read: true,write: true,desc: "Betriebsstundenzähler",type: "number",def:0, unit: "h"});
                                            
                                            //Variablen
                                            var logging = true; // true = log aktivieren / false = log deaktivieren
                                            var Ersparnis = 0.31; //Strompreis für  kw/h in € hier eintragen
                                            
                                            //Konstante
                                            const idErtragHeute = 'modbus.1.inputRegisters.30028Erzeugte_Leistung heute'/*Erzeugte Leistung heute*/;
                                            const idErtragGesamt = 'modbus.1.inputRegisters.30030Erzeugte_Leistung gesamt'/*Erzeugte Leistung gesamt*/;
                                            
                                            const idErsparnisHeute = 'javascript.0.Messwerte.PV_Huette.Ertrag_Heute';   
                                            const idErsparnisGesamt = 'javascript.0.Messwerte.PV_Huette.Ertrag_Gesamt'; 
                                            
                                            const idLaufzeitLow = 'modbus.1.inputRegisters.30032Laufzeit_low'/*Laufzeit gesamt*/;
                                            const idLaufzeitHigh = 'modbus.1.inputRegisters.30031Laufzeit_high'/*Laufzeit gesamt*/;
                                            const idLaufzeit = 'javascript.0.Messwerte.PV_Huette.Laufzeit';
                                            
                                            //Funktion Laufzeit berechnen
                                            function BerechnenLaufzeit() {
                                            if(logging)log("Gesamtlaufzeit Wechselrichter berechnet"); 
                                            var High = getState(idLaufzeitHigh).val;
                                            var Low = getState(idLaufzeitLow).val;
                                            var Lafzeit = getState(idLaufzeit).val
                                            setState(idLaufzeit,High*18.203+Low/3600)
                                            }
                                            
                                            
                                            //Funktion Ertrag in € heute berechnen
                                            function BerechnenHeute() {
                                            if(logging)log("Tagesstrom Ertrag berechnet"); 
                                            var ErtragHeute = getState(idErtragHeute).val;  
                                            if(ErtragHeute>0)setState(idErsparnisHeute,ErtragHeute*Ersparnis,true);
                                            }
                                            
                                            // Funktion Ertrag in € Gesamt berechnen
                                            function BerechnenTotal(){
                                            if(logging)log(" Gesamtstrom Ertrag  berechnet ");
                                            var ErtragGesamt = getState(idErtragGesamt).val;
                                            setState(idErsparnisGesamt,ErtragGesamt*Ersparnis,true);
                                            }
                                            
                                            // Scriptstart
                                            BerechnenHeute();
                                            BerechnenTotal();
                                            BerechnenLaufzeit();
                                            
                                            // Trigger Berechnen Ertrag in € heute
                                            on(idErtragHeute, function(obj) {
                                                if(logging)log(" Trigger Ertrag Heute Ersparnis berchnen ");
                                                BerechnenHeute();
                                            });
                                            
                                            // Trigger Berechnen Ertrag in € Gesamt
                                            on(idErtragGesamt, function(obj) {
                                                if(logging)log(" Trigger Ertrag Gesamt Ersparnis berchnen ");
                                                BerechnenTotal();
                                            });
                                            
                                            // Trigger High zum Berechnen Laufzeit gesamt
                                            on(idLaufzeitHigh, function(obj) {
                                                if(logging)log(" Trigger High Laufzeit berchnen ");
                                                BerechnenLaufzeit();
                                            });
                                            
                                            // Trigger Low zum Berechnen Laufzeit gesamt
                                            on(idLaufzeitLow, function(obj) {
                                                if(logging)log(" Trigger Low Laufzeit berchnen ");
                                                BerechnenLaufzeit();
                                            });
                                            
                                            // Telegramm schickt Pushnachricht bei Sicherungsfall PV Einspeisung oder Inverterstörung Gartenhuette
                                            
                                            var logging = true; // log aktivieren deaktivieren
                                            
                                            // Konstanten
                                            const id1 = 'sonoff.0.Wemo_Huette.POWER6'/*Sicherung PV Einspeisung*/;
                                            const id2 = 'modbus.1.inputRegisters.30001Inverter_Status'/*Inverter Status*/
                                            
                                            const id3 = 'javascript.0.Vis.Stoermeldung_PV_Huette'/*Störung PV Anlage Huette Status*/;
                                            
                                            // Funktion Auslösen der Einspeisesicherung
                                            function FuseAlarm(){
                                            sendTo("telegram.0", "send", {text: 'Achtung: Störung PV Anlage Gartenhuette, Einspeisesicherung hat ausgelöst '});
                                            setState('fullybrowser.0.192_168_1_53.Commands.textToSpeech'/*textToSpeech*/, 'Achtung Sicherungsfall Wechselrichter Gartenhuette ');
                                            if (logging) log ('Sicherungsfall Wechselrichter Garten Hütte');
                                            setState(id3,true);
                                            }
                                            
                                            // Funktion Inverter Alarm
                                            function InverterAlarm(){
                                            sendTo("telegram.0", "send", {text: 'Achtung: Störung PV Anlage Gartenhuette, Inverter Störung '});
                                            setState('fullybrowser.0.192_168_1_53.Commands.textToSpeech'/*textToSpeech*/, 'Achtung  Wechselrichter Gartenhuette Stoerung ');
                                            if (logging) log ('Wechselrichter Gartenhuette Störung ');
                                            setState(id3,true);
                                            }
                                            
                                            // Funktion Alarm Reset wenn Fehler behoben
                                            function StoerungReset(){
                                            var Stoerung = getState (id3).val;
                                            var Fuse =  getState(id1).val;
                                            var Inverter = getState (id2).val;
                                            if(Stoerung && Fuse && Inverter <3){
                                            sendTo("telegram.0", "send", {text: ' Störung PV Anlage Gartenhuette zurück gesetzt '});
                                            setState (id3,false);
                                            if (logging) log ('Störung PV Anlage Gartenhütte zurück gesetzt');
                                            }
                                            }
                                            
                                            //Skriptstart
                                            setState (id3,false);
                                            
                                            //Trigger
                                            on({id:id1,val:false,change:'ne'},function(dp){
                                               FuseAlarm();
                                            });
                                            
                                            on({id:id2,val:3,change:'ne'},function(dp){
                                               InverterAlarm();
                                            });
                                            
                                            on({id:id1,val:true,change:'ne'},function(dp){
                                               StoerungReset();
                                            });
                                            
                                            on({id:id2,val:0,change:'ne'},function(dp){
                                               StoerungReset();
                                            });
                                            
                                            on({id:id2,val:1,change:'ne'},function(dp){
                                               StoerungReset();
                                            });
                                            
                                            Wiednitz 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

                                            870
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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