NEWS
Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden
-
@manny4566 Es ist zum verrückt werden. Ich bekomme das Register 13099 bzw. 19938 über die holding register einfach nicht ausgelesen geschweigeden gesetzt. Alles was mit der Batterie sonst zu tun hat und in den input Registern abzufragen ist funktioniert. Noch irgendwelche Tipps? Wie bist du auf die Adresse 19938 gekommen?
-
Hallo zusammen,
als "alter Hase" habe ich mich seit einiger Zeit mit Smarthome und diversen Themen und Software dazu beschäftigt. Ich habe diverse Shellys verbaut, habe noch alte MAX!-Thermostate im Einsatz. Mein Netzwerk umfasst relativ viele Geräte (> 50). Ich arbeite in der IT als Admin und habe eine elektrotechnische Ausbildung. Soweit zu mir.
Nun zum Thema: Seit ein paar Tagen haben wir unsere PV-Anlage in Betrieb (noch ohne Abnahme, der Meister hat offenbar keine Zeit). Auf dem Dach sind insg. 44 Module á 410W verbaut und in 4 Strängen an 2 WR (SH10RT und SG5.0RT) angeschlossen. Der SH10RT hat noch eine SBR9.6 als Puffer dran, da wir derzeit noch nicht einspeisen (dürfen). Soweit zur Anlage.
Und natürlich soll das ganze zwecks besserem Monitoring und Steuerung in den IO-Broker (den ich auf einem Linux-PC als Server betreibe).
Nun fängt das Problem schon an: Ich habe inzwischen die Datenpunkte mit der Liste in die DB geladen, das hat geklappt.
Aber wenn ich den Modbus-Adapter mit den Daten zum WR 2 (SG5RT) füttere (wie hier angegeben), bekomme ich, wie oben, immer wieder 2 FM: Request timed out und Client in error state. Für diese Zeitspanne sind alle Steps des Adapters auch mal kurz komplett grün, ansonsten nur die oberen beiden.Übersehe ich was?
Vielen Dank im Voraus!
Viele Grüße. -
Ich habe es mit viel ausprobieren hinbekommen. Hifreich war das Tool "VaGaModbus Analyzer" (unter Windows), damit konnte ich einige Register auslesen.
Dann mit etwas ausprobieren und Gelduld klappte das Auslesen dann doch: Wichtig war der Haken bei "Multiple Device IDs" zu setzen. Jetzt kann ich die Register des WR1 (SH10RT) auslesen.
Viele Grüße, auch wenn keine Hilfe kam Oft hilft es auch, darüber zu schreiben und wirklich jeden Beitrag zu lesen -
Guten Abend,
also ich bin echt neidisch, was ihr alle für tolle Visualisierungen gebaut habt.
Würd ich auch gerne machen, daher von Openhab zu iobroker gewechselt.
Soweit läuft alles wunderbar und auch echt nicht kompliziert.
Aber die beiden Statusanzeigen (System_State und Running_State) sind bei mir immer 0.
Daher denke ich funktioniert auch das Script, das sagen soll wohin der Strom fließt (einfach ausgedrückt), es zeigt mir keine Fehler an aber auch da sind alle Werte 0 bzw. False.
Jemand eine Idee? Ich hab die Register von hier und auch in von anderen Foren verwendet und auch die PDF von Sungrow heruntergeladen in der alles so steht wie in meiner TSV Datei...
Bin dankbar für jeden Tipp.
WR1 = SH10RT
WR2 = SG5.0RT
Akku = BYDPDF:
Communication.Protocol.of.Residential.Hybrid.InverterV1.0.22_20201117.pdfRegister:
Register.txtWerte um 20:01 also keine Sonne mehr
Danke im voraus.
Gruß Sascha
-
@sascha127 said in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
Aber die beiden Statusanzeigen (System_State und Running_State) sind bei mir immer 0.
Die beiden Register sind nur, wenn sie über den Adapter WiNet-S ausgelesen werden, auf "0" gesetzt. Über den zweiten, nur über LAN-erreichbaren Adapter haben sie durchaus sinnvolle Werte.Aber es gibt in diesem sehr langen Thread im Februar auch eine Diskussion darüber wie man das Batterie laden/entladen auch ohne die Register entscheiden kann. Der User MRaioBroker hat hier und im Thread https://forum.iobroker.net/topic/63226/sungrow-wr-sgh10rt-modbus-ioskripte dazu eine Blockly eingestellt.
-
@gombersiob
Super Danke. Da hab ich wohl vor lauter Bäumen den Wald nicht gesehen
Dann teste ich das mal. -
@gombersiob
Ich bin zu doof um diese XML Datei zu importieren.
Andere Blockly Dateien konnte ich ohne Probleme einfügen über copy/paste.
Ich steh auf dem Schlauch, sorry für die sau dumme Frage -
@sascha127
Das sind doch nur 3 Zeilen. Vermutlich ist es sowieso einfacher das direkt zu programmieren. Dann stimmen die Objektnamen auch sicher. -
@sascha127 said in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
Ich bin zu doof um diese XML Datei zu importieren.
Ich habs jetzt auch mal probiert. Das Importieren klappt wirklich nicht. Scheitert mit "Error: textToDom was unable to parse:". Ich bin aber sicher, das hat damals geklappt. Wenn man sich die XML anschaut, dann nutzt das Word-Tags. Ist reichlich merkwürdig.
Ich habe das Script (bis auf die letzte Zeile zum Setzen des eigenen Objects "Berechnung_Batterieentladung_negativ" einfach nochmal geschrieben und füge es an:
Die zugehöriger XML ist hier zum Download.
-
@gombersiob
Super, vielen Dank.
Ich hab es jetzt auch geschafft nachzubauen.
So langsam werde ich warm mit den Blockly Scripten
Hab auch mal den Energieflussadapter installiert und mit Daten gefüttert.
Sieh schon gut aus soweit, nur stimmt mein Verbrauch nicht, den der Adapter berechnen kann.
Ich habe auch ein IR Lesekopf auf meinem EHZ, aber der Zeigt ja nicht den aktuellen Verbrauch an. Sondern nur quasi den Rest was eingespeist bzw. vom Netz gezogen wird...
Wie zieht bzw. berechnet die iSolarCloud App den aktuellen Stromverbrauch? -
@sascha127 said in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
Wie zieht bzw. berechnet die iSolarCloud App den aktuellen Stromverbrauch?
Der aktuelle Stromverbrauch steht in Register 13007 (Load_Power)
-
@gombersiob
Ja das dachte ich auch, aber das kommt mir so wenig vor.Mein Netzwerkschrank verbraucht alleine 70W, der Kühlschrank läuft und meine GT10D von LCN haben auch jetzt alle das Display an.
Ich habe mal testweise den Wasserkocher angeschaltet und der Verbrauch ging auf 2200W, was realistisch erscheint.Hab eben nochmal drauf geschaut jetzt verbrauch ich sogar 0W.
Irgendwie passt das alles nicht so ganz, oder sind das einfach Abweichungen, die man hinnehmen muss?
-
@sascha127
Ich habe die Zahlen am Anfang des Öfteren verglichen. Sie stimmen natürlich nie ganz genau überein, weil der Zeitpunkt der Zahlen der iSolarcloud nicht klar ist. Das wechselt auch nur alle paar Sekunden dort. Aber sowohl im Vergleich als auch beim direkten Blick darauf, war das Register immer plausibel. Ich merke wenn ein Verbraucher eingeschaltet wird sofort und die Zahl spiegelt auch die Leistung des Geräts (Wasserkocher, Spülmaschine etc) wider.
(Ich habs lieber tabellarisch)
-
@gombersiob
Ja das stimmt schon, die Zahl ist plausibel.
Eben wurde das Glätteisen (Frau macht sich schick ) eingeschaltet und der Wert ging hoch auf über 500W.
Und gerade als ich das hier tippe, hat sich wie Wärmepumpe eingeschaltet.
Jetzt sind wir über 3kW.Ok, dann kann ich jetzt weiter machen mit dem Einbinden der WP über Viessmann Vitogate 300.
Gibt es da zufällig schon einen Thread hier im Forum?Mal gespannt ob das alles so schön klappt, wie ich mir das vorstelle.
Danke nochmal für die Hilfe.
-
@sascha127
Hab das Problem gelöst mit dem Running_State.
Mit dem WLAN Dongle kann der nicht ausgelesen werden.
Netzwerkkabel an den hinteren Anschluss am WR und schon klappt die Sache. -
@sascha127 said in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
Netzwerkkabel an den hinteren Anschluss am WR
Wie ich schon sagte!
-
Hallo,
zuerst vielen Dank allen die hier mitgewirkt haben. Ich habe seit einigen Tagen einen SH10RT und kann auch schon über WLAN alle für mich wichtigen Daten auslesen (ich habe keine Batterie und lese nur die wesentlichen Leistungs- und Energiedaten).
Was bei mir allerdings falsch ist, ist:
modbus.0.inputRegisters.13002_Total_PV__GenerationDer angezeigte Wert entspricht exakt dem 10 fachen des Wertes der in der App angezeigt wird. Das ist natürlich kein Problem, wenn man es weiß aber ist das bekannt und bei euch auch so?
Sorry, falls das schon irgendwo steht, ich habe sicher mehr als 200 Beiträge gelesen, aber nicht alle geschafft ...
-
@dieterb
Du musst den Faktor von 13002 im Inputregister anpassen, also das Komma verschieben dann passt der Wert -
@mraiobroker
Also ist das bekannt?
Wo kann man im Inputregister einen Faktor einstellen? -
@dieterb
es wurde hier im Verlauf schon öfter diskutiert, dass Faktoren angepasst werden müssen, ja.
Teilweise gibt´s da wohl auch Abhängigkeiten wie man ausliest (Winet vs Modbus)Du gehst in den Adapter und dann auf Inputregister, dort wo Du die Inputregister eingelesen hast.
In der Zeile von 13002 passt Du dann den Faktor an, z.B. von 1 auf 0,1 dann solltest Du einen Effekt in den Objekten und Werten sehen können.