NEWS
Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden
-
Fast fertig
-
So, habe mal eine HTML-Liste mit Hilfe von @liv-in-sky erstellt.
Der original Thread ist hier:
Original ThreadDie Modifikationen durch uns findet ihr in dem Thread ab hier:
ModifikationDas Script ist ein JS-Script und wird alle 12 Stunden ausgeführt und aktualisiert den Datenpunkt.
Wie ihr das Script am besten anpasst und den Datenpunkt wählt, sehr ihr im Original-Thread. Bei Fragen, einfach hier Melden.
Es werden folgende Datenpunkte vom ModBus benutzt:
6226 - 6237
6416 - 6427
6595 - 6606Hier das Script:
-
@atlantis
Hallo Atlantis,
bin neu hier, habe meinen Account gerade erst generiert wegen Deiner Anlage die Du in Deinem Schaubild beschreibst.
Ich bin auch gerade an der Planung einer Anlage mit 2 Sungrow SH10RT's. - einer für den Betrieb einer Wärmepumpe und einer für den Haushaltsstrom. Notversorgung ist mir wichtig.
Ich wollte eigentlich 1 Batterie (BYD HVS 10.2) an die 2 Sungrows hängen, auf die beide zugreifen, wobei der Wärmepumpen-WR nachrangig laufen kann, d.h. würden beide zuviel aus der Batterie ziehen kann die Wärmepumpenversorgung abgeschaltet werden. Laut meinem Solateur würde das momentan noch nicht von Sungrow unterstützt, obwohl in deren Homepage von einer Master/Slave-Schaltung 2er WR gesprochen wird.
Hast Du in Deiner Anlage die Batterien gekoppelt oder handelt es sich um eigentlich 2 komplett getrennte Anlagen?
Hast Du - oder jemand anderes im Forum - Tipps für meinen Anwendungsfall?
Sorry nochmal wenn ich so in Euren eher programmiertechnischen Thread reinfunke... -
@bergischerjung Du hast Glück, bin seit 2 Wochen das erste mal wieder im Forum...
Ich habe 2 WR mit jeweils einer eigenen 12.8er Batterie.
Worin soll der Vorteil liegen, wenn Du die Batterie an beide WR andockst?
Die Batterie kann max 10KW laden/entladen und das schaft ja einer der WR alleine.Du möchtest die die Verluste im einen WR vom PV Strang zu internen GRID und im 2. WR vom internen GRID zum DC Kontakt der Batterie sparen, oder?
Nachdem die Batterien mit CAN Bus angebunden sind, gehe ich davon aus, das so etwas nur klappen kann, wenn SG das so testet und freigibt und die haben momentan alle Hände voll zu tun, die original SW und die zugehörigen APPS sauber zum spielen zu bekommen.
Es gibt noch im Photovoltaik Forum einen Threat von mir, der zum Austausch solcher Fragen, die mehr die WR und die Hardware betreffen dienen soll. Da kannst DU Deine Frage mal posten und hast eine höhere Chance auf positive Rückmeldung...
Hier gehts eher um die Anbidung der WR an den IOBroker..,.
Gruss
Atlantis
-
@atlantis sagte in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
@bergischerjung Du hast Glück, bin seit 2 Wochen das erste mal wieder im Forum...
Ich habe 2 WR mit jeweils einer eigenen 12.8er Batterie.
Worin soll der Vorteil liegen, wenn Du die Batterie an beide WR andockst?
Die Batterie kann max 10KW laden/entladen und das schaft ja einer der WR alleine.Du möchtest die die Verluste im einen WR vom PV Strang zu internen GRID und im 2. WR vom internen GRID zum DC Kontakt der Batterie sparen, oder?
Nachdem die Batterien mit CAN Bus angebunden sind, gehe ich davon aus, das so etwas nur klappen kann, wenn SG das so testet und freigibt und die haben momentan alle Hände voll zu tun, die original SW und die zugehörigen APPS sauber zum spielen zu bekommen.
Es gibt noch im Photovoltaik Forum einen Threat von mir, der zum Austausch solcher Fragen, die mehr die WR und die Hardware betreffen dienen soll. Da kannst DU Deine Frage mal posten und hast eine höhere Chance auf positive Rückmeldung...
Hier gehts eher um die Anbidung der WR an den IOBroker..,.
Gruss
Atlantis
Der Vorteil liegt doch eindeutig auf der Hand. Die zentrale Verwaltung deiner Überschußenergie, die du in deinen Akku eingespeist bekommst. Das ist gängige und auch funktionierende Praxis im Wohnmobilbereich. Viele Solarmodule auf dem Womo Dach, die auf mehrere Solarladeregler aufgeschaltet, die dann auf einen Akku gelegt werden. Solange im Akku Strom vorhanden ist, kann die Energie auch von allen Energieverbrauchern im Womo genutzt werden ! Ein zweiter Akku, mit weiteren Modulen würde nur aus Redundanzgründen installiert werden. Ist wohl eher die Ausnahme.
In deinem Fall schaut es imho, falls ich es richtig verstanden habe, so aus, wenn in dem einen Stromkreis, wo der eine Akku drin hängt keine Energie mehr im Akku enthalten ist, aber im dem anderen Stromkreis, mit dem anderen Akku wäre noch Energie vorhanden, könntest du diese Energie nicht für den Bereich nutzen, wo der leere Akku vorhanden ist. D. h. du mußt den Strom kaufen, obwohl du ihn hättest. Macht so imho weniger Sinn und die geringere Effizienz hast du ja schon angesprochen.
Falls ich irre oder es falsch verstanden habe, bitte ich um entsprechende Info.
Ich halte es für einen großen Nachteil der heutigen Haus-Akku-Generation, dass nicht mehrere WR an einen Akku angeschlossen werden können. Gerade hinsichtlich solarer Aufrüstung oder wenn Altanlagen integriert werden sollen. Dass es trotzdem geht ist mir schon bewußt aber es bleibt ein großer Nachteil.
Wenn man im häuslichen Bereich beim Akku bei 48V DC max. bleibt könnte man es über Produkte von z. B. Victron Energy auf jeden Fall realisieren, dass ein zentraler Akku die Energie für alle Bereiche liefert.
-
Hallo Zusammen,
ich bin seit kurzem Besitzer eines Sungrow SG6KTL-M Wechselrichters. Ich habe die MODBUS-Variablen ebenfalls von Sungrow erhalten, bekomme aber keine Verbindung hin (ständiges Connect - Disconnect). Die Werte müssten so sein wie im angehängten Screenshot. Der WR ist mittels WLAN-Modul an das Netz angebunden. Hat jemand eine Idee was das Problem ist?
-
@shrimptaco
habe neben dem SH10 noch einen SG3K6-D und die gleichen Probleme.
Nach langem suchen bin ich über ein Forum in Australien gestolpert.
Hab mir dann das Ethernetmodul besorgt und seit dem geht es, wenn auch mit Neustarts exakt alle 5 Minuten. Woran das liegt hab ich noch nicht herausgefunden. -
@ostseeskipper
Danke für die Antwort! Ärgerlich, vor allem stellt sich die Frage, ob sich die 70€ für den LAN-Adapter lohnen, wenn es im Nachhinein doch nicht klappt... -
@shrimptaco
Kaufen, Testen und wenns nicht geht innerhalb von 14 Zagen zurückschicken. -
Moin @shrimptaco,
hast du das LAN-Modul mittlerweile testen können?
Ich habe auch einen SG Wechselrichter (SG10KTL-M) und bekomme ebenfalls keine Verbindung aufgebaut.Läuft immer auf einen timeout, auch wenn ich read timeout hochsetze:
2021-05-30 09:41:00.469 - info: host.iobroker-pi "system.adapter.modbus.0" enabled 2021-05-30 09:41:00.616 - info: host.iobroker-pi instance system.adapter.modbus.0 started with pid 13086 2021-05-30 09:41:03.299 - info: modbus.0 (13086) starting. Version 3.2.6 in /opt/iobroker/node_modules/iobroker.modbus, node: v12.22.1, js-controller: 3.2.16 2021-05-30 09:41:04.068 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:09.085 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:09.087 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:09.088 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:09.091 - warn: modbus.0 (13086) Poll error count: 1 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:10.092 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:41:12.125 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:17.129 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:17.132 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:17.134 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:17.137 - warn: modbus.0 (13086) Poll error count: 2 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:18.133 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:41:20.153 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:25.158 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:25.160 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:25.161 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:25.164 - warn: modbus.0 (13086) Poll error count: 3 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:26.162 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:41:28.171 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:33.179 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:33.181 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:33.183 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:33.185 - warn: modbus.0 (13086) Poll error count: 4 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:34.184 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:41:36.189 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:41.195 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:41.197 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:41.198 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:41.200 - warn: modbus.0 (13086) Poll error count: 5 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:42.199 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:41:44.206 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:49.212 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:49.214 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:49.215 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:49.218 - warn: modbus.0 (13086) Poll error count: 6 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:50.216 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:41:52.226 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:41:57.232 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:41:57.234 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:41:57.235 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:41:57.238 - warn: modbus.0 (13086) Poll error count: 7 code: {"err":"timeout","timeout":5000} 2021-05-30 09:41:58.236 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:42:00.246 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:42:05.252 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:42:05.254 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:42:05.254 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:42:05.256 - warn: modbus.0 (13086) Poll error count: 8 code: {"err":"timeout","timeout":5000} 2021-05-30 09:42:06.256 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:42:08.262 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:42:13.268 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:42:13.269 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:42:13.270 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:42:13.272 - warn: modbus.0 (13086) Poll error count: 9 code: {"err":"timeout","timeout":5000} 2021-05-30 09:42:14.270 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:42:16.283 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:42:21.287 - warn: modbus.0 (13086) Error: undefined 2021-05-30 09:42:21.289 - error: modbus.0 (13086) Request timed out. 2021-05-30 09:42:21.290 - error: modbus.0 (13086) Client in error state. 2021-05-30 09:42:21.292 - warn: modbus.0 (13086) Poll error count: 10 code: {"err":"timeout","timeout":5000} 2021-05-30 09:42:22.291 - info: modbus.0 (13086) Disconnected from slave 192.168.199.32 2021-05-30 09:42:24.296 - info: modbus.0 (13086) Connected to slave 192.168.199.32 2021-05-30 09:42:24.363 - info: host.iobroker-pi "system.adapter.modbus.0" disabled 2021-05-30 09:42:24.375 - info: host.iobroker-pi stopInstance system.adapter.modbus.0 (force=false, process=true) 2021-05-30 09:42:24.389 - info: modbus.0 (13086) Got terminate signal TERMINATE_YOURSELF 2021-05-30 09:42:24.390 - info: host.iobroker-pi stopInstance system.adapter.modbus.0 send kill signal 2021-05-30 09:42:24.393 - info: modbus.0 (13086) terminating 2021-05-30 09:42:24.396 - info: modbus.0 (13086) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2021-05-30 09:42:25.057 - info: host.iobroker-pi instance system.adapter.modbus.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) 2021-05-30 09:42:36.755 - info: host.iobroker-pi "system.adapter.modbus.0" enabled 2021-05-30 09:42:36.848 - info: host.iobroker-pi instance system.adapter.modbus.0 started with pid 13116 2021-05-30 09:42:39.541 - info: modbus.0 (13116) starting. Version 3.2.6 in /opt/iobroker/node_modules/iobroker.modbus, node: v12.22.1, js-controller: 3.2.16 2021-05-30 09:42:40.562 - info: modbus.0 (13116) Connected to slave 192.168.199.32 2021-05-30 09:42:50.584 - warn: modbus.0 (13116) Error: undefined 2021-05-30 09:42:50.587 - error: modbus.0 (13116) Request timed out. 2021-05-30 09:42:50.589 - error: modbus.0 (13116) Client in error state. 2021-05-30 09:42:50.595 - warn: modbus.0 (13116) Poll error count: 1 code: {"err":"timeout","timeout":10000} 2021-05-30 09:42:51.590 - info: modbus.0 (13116) Disconnected from slave 192.168.199.32 2021-05-30 09:42:53.600 - info: modbus.0 (13116) Connected to slave 192.168.199.32
Laut Modbus RS485 RTU Protocol.pdf für den WR sollten die Kommunikationseinstellungen und Register zum SGH identisch sein.
Jetzt hoffe ich auf eine positive Rückmeldung von dir.
Viele Grüße
hansen -
Hallo zusammen, ich habe ebenfalls einen Sungrow SH10RT per Modbus TCP mit dem iobroker verbunden. Prinzipiell läuft das auch gut. Allerdings kommt es ca. alle 5 - 6 Tage dazu, dass die Mobus-Schnittstelle am Sungrow nicht mehr reagiert. Der Adapter im iobroker meldet dann einen Socket Error. Ich habe auch mit anderen Tools versucht die Modbus Schnittstelle des Sungrows anzusprechen, leider das gleiche Ergebnis. Ich vermute deshalb das die Ursache auf der Seite des Sungrow liegt. Ein anderer Wechselrichter der Firma SMA wird ebenfalls über den Modbus Adapter per TCP-Verbindung ausgelesen und läuft seit dem Einschalten des Adapters stabil. Der Sungrow läuft auf der aktuellsten Firmware und bisher hilft nur ein Neustart des Geräts um die Modbus Verbindung wieder für die nächsten 5 - 6 Tage ans Laufen zu bekommen. Hat hier jemand schon ähnliche Beobachtungen mit dem Sungrow gemacht?
-
@freestyler ich habe das gleiche Verbindungsproblem, dass der iobroker nach etlichen Tagen erfolgreicher Verbindung nun gar nicht mehr kommunizieren will. Allerdings war in den letzten Tagen auch die Verbindung zur iSolarCloud offline. Nach einem Neustart des Wechselrichters (SH10RT) ist die Verbindung zur iSolarCloud nun wieder da, aber dafür kann sich der ioBroker nicht mehr mit dem Wechselrichter verbinden (Socket Error).
Gibt es einen Zusammenhang oder Konflikt zwischen der lokalen Modbus Netzwerk-Kommunikation und der iSolarCloud Kommunikation? Die sungrow Dokumentation schweigt sich zu diesem Thema völlig aus. und ich wüsste auch nicht, wie ich die iSolarCloud Kommunikation stoppen könnte. Beides läuft ja über die gleiche Netzwerk-Schnittstelle. -
Hi,
danke für die vielen Mühen und die gute Beschreibung, besonders an @Atlantis. Ich bin iobroker und Modbus Neuling und habe mich daran versucht die Verbindung zu meinem neuen Sungrow H10.RT aufzubauen, kriege es aber nicht ganz hin, dass ich die Werte auch angezeigt bekomme.
Mit dem QModMaster kann ich eine Verbindung aufbauen und bekomme auch sinnvolle Werte:
In der aktuellen Version vom iobroker (v5.1.25) und dem ModBus adapter (v.4.11) will es aber nicht recht klappen. Die ModBus Oberfläche ist jetzt etwas anders als in deinen Screenshots. Ich bin aber recht sicher, dass ich das richtig übertragen habe:
Im Modbus Protokoll steht:
modbus.0 2021-09-19 20:56:50.383 info Connected to slave 192.168.178.20 modbus.0 2021-09-19 20:56:50.133 info starting. Version 3.4.11 in C:/Program Files/iobroker/SmartHome/node_modules/iobroker.modbus, node: v10.17.0, js-controller: 3.3.15
Verbindung ist also scheinbar okay. Wo aber finde ich jetzt die Werte? Ich würde die unter "Objekte" --> "modbus" erwarten, aber dort steht nichts.
Über einen Tipp wäre ich sehr dankbar!
Viele GrüßeMartin
Achja noch was: Ich habe gelesen, dass neuere Firmwareupdates wohl die modbus Verbindung verschlüsseln (github).
Meine Version ist "ARM_SAPPHIRE_H_V11_V01_B" (lokaler Zugriff --> Einstellungen --> Systemparameter) . Welche habt ihr / Updaten oder besser nicht?
-
ich nochmal:
Das größte Problem war meine Unerfahrenheit mit iobroker:
Aus der Oberfläche heraus hab ich nicht erwartet, dass man die Ordner "modbus" mit Doppelklick erweitern kann...--> Einige Werte werden schonmal erfolgreich übertragen.
Aber:
Das klappt mit maximal 9 Adressen.
Wenn ich einen 10. Wert lesen möchte kommt im Protokoll:modbus.0 2021-09-20 23:03:32.406 warn Poll error count: 8 code: {"err":"timeout","timeout":5000} modbus.0 2021-09-20 23:03:32.405 error Client in error state. modbus.0 2021-09-20 23:03:32.405 error Request timed out. modbus.0 2021-09-20 23:03:32.405 warn Error: undefined modbus.0 2021-09-20 23:03:27.401 info Connected to slave 192.168.178.20
mit den modbus "Allgemein" Parametern habe ich erfolglos etwas herumgespielt
Hat jemand Ideen, oder könnte es an meiner veralteten "Firmware ab Werk" liegen?
-
@mka15
Ich hatte das auch schon mal bei einem Kunden, ich meine es lag an einem fehlerhaften Register.
Lösch das Register 12999 mal raus (am bester davor sichern).
VG Benjamin -
@krk-solar
Das Register 12999 war bei meinen Tests gar nicht drin.Habe auch viel mit den Parametern (Data polling interval, Read interval, max read request lengths) herumprobiert. Egal welche Register ich lese: 10 Register auslesen klappt. Wenn ich 11 Register eintrage, geht es nicht mehr. Alle Werte sind auch aufsteigend geordnet (da gibts auf github einen aktuellen Issue zu).
Aktuell habe ich aus Bequemlichkeiten den iobroker unter Windows an. Macht ein Test von einem RPi aus wohl Sinn?
Hier meine vollständige Registerliste. Die vom TE hab ich etwas angepasst, damit die neue Version des Plugins die frisst und auch noch umsortiert (gibt einen aktuellen github issue dazu..):
-
der QModBusMaster liest mehr als 10 Werte.... also muss es etwas mit der ModBus Adapter Konfiguration sein...
@Atlantis @miki @quorle @ostseeskipper @freestyler @smart-iot und alle anderen die es geschafft haben:
Könnte mir wer von euch die Konfigurationseinstellungen vom Adapter verraten und vielleicht noch eure Sungrow Firmwareversion?Viele Grüße
Martin
-
Normalerweise sollte es funktionieren. In diesem Thread steht eine überarbeitete Liste für das Eingangsregister.
Meine Firmware des SH8.0RT WR ist eigentlich aktuell. Bisher läuft der Adapter einwandfrei.
Hast du den WR eine feste IP im Router gegeben?
Hast du im Adapter unter Eingangsregister die richtigen Registernummer verwendet?Hier mal meine Konfiguration:
-
@quorle danke für die Infos.
das Fehlerbild blieb auch mit den Einstellungen dasselbe.
Ich habe jetzt doch ein Firmwareupgrade gefahren. So umständliche Lösungen hab ich selten gesehen... Per App und "Lokalen admin / user Zugriff" war keine FW Datei auswählbar (obwohl vorher heruntergeladen). Im Nachbarforum "pvForum" habe ich den Tipp gelesen einen isolarcloud login als Installateur zu machen (es gibt keine Prüfung des Firmennamens bei der Registrierung). Man muss anschließend die Anlage vom normalem Benutzer aus dem Installateur zugänglich machen. Danach konnte ich per Installateur-Webinterface die Firmware aktualisieren...
Jetzt zum ursprünglichen, jetzt gelösten/umgangenem Problem:
Mit iobroker auf einem RPI4 hat es auf Anhieb funktioniert. Ich vermute, dass der Adapter unter Windows ein anderes Verhalten aufweist. Die Fehlersuche ist wohl besser bei Github als hier ausgehoben. Mache da bald mal ein Ticket auf...Grüße!
-
Hallo,
ich bin IOBroker Neuling.Seit kurzem habe ich eine PV Anlage mit einem SunGrow SH10RT WR und einem 7,7 Speicher und möchte die gerne über IO Broker darstellen.
Die Anleitung ist wirklich gut geschrieben, allerdings bekomme ich über den Modbus scheinbar keinen Zugriff auf die Adressen (Screenshots anbei).
Ich habe zum testen erstmal nur die ersten 5 Adressen hinterlegt.
Die Daten vom WR kommen per LAN Kabel; Verbindungsaufbau per TCP funktioniert.Habt ihr eine Idee, wo dran das liegen könnte?