NEWS
Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden
-
Hallo,
herzlichen Dank für all die tollen Postings hier, ich habe soweit alle gelesen. Leider hat es mich nicht dazu in die Lage versetzt, die modbus Abfrage hinzubekommen.Hardware
Raspi 4 mit iobrokerSH10RT WR, Winter: SH10RT(COM1-001)
Sungrow Akku: WiNet: SBR160(COM1-200)
WLAN aktiv für Cloud. 192.168.188.107
LAN am WiNet zu Router: 192.168.188.108, 100 Mbit
LAN am WG: 192.168.188.113, 100 MbitSettings
Die Einstellungen habe ich von @Atlantis übernommen, vielen Dank dafür. Ich habe auch mit den unterschiedlichen Zeiten mal gespielt, welche oben diskutiert wurden.
Register & Co
Übernommen von GithubResultat
- Anschluss am LAN Winet: Verbindung kommt nicht zustande.
ja: Verbunden mit Host
ja: Lebenszeichen
nein: Verbunden mit Gerät oder Dienst
Log:
2023-12-06 18:48:20.476 debug Closing client on purpose. modbus.0 2023-12-06 18:48:19.475 debug Cleaning up request fifo. modbus.0 2023-12-06 18:48:19.474 debug Socket closed with error modbus.0 2023-12-06 18:48:19.468 info Disconnected from slave 192.168.188.108 modbus.0 2023-12-06 18:48:19.467 debug Closing client on purpose. modbus.0 2023-12-06 18:48:19.465 info Connected to slave 192.168.188.108 modbus.0 2023-12-06 18:48:19.080 info starting. Version 5.0.11 in /opt/iobroker/node_modules/iobroker.modbus, node: v18.19.0, js-controller: 5.0.16 modbus.0 2023-12-06 18:48:18.638 debug Plugin sentry Initialize Plugin (enabled=true) modbus.0 2023-12-06 18:48:18.599 debug States connected to redis: 127.0.0.1:9000 modbus.0 2023-12-06 18:48:18.539 debug States create User PubSub Client modbus.0 2023-12-06 18:48:18.538 debug States create System PubSub Client modbus.0 2023-12-06 18:48:18.525 debug Redis States: Use Redis connection: 127.0.0.1:9000 modbus.0 2023-12-06 18:48:18.485 debug Objects connected to redis: 127.0.0.1:9001 modbus.0 2023-12-06 18:48:18.477 debug Objects client initialize lua scripts modbus.0 2023-12-06 18:48:18.436 debug Objects create User PubSub Client modbus.0 2023-12-06 18:48:18.435 debug Objects create System PubSub Client modbus.0 2023-12-06 18:48:18.432 debug Objects client ready ... initialize now modbus.0 2023-12-06 18:48:18.395 debug Redis Objects: Use Redis connection: 127.0.0.1:9001
- Anschluss am WLAN Winet: Verbindung kommt nicht zustande.
ja: Verbunden mit Host
ja: Lebenszeichen
nein: Verbunden mit Gerät oder Dienst
Log:
2023-12-06 18:50:47.766 debug Closing client on purpose. modbus.0 2023-12-06 18:50:46.764 debug Cleaning up request fifo. modbus.0 2023-12-06 18:50:46.763 debug Socket closed with error modbus.0 2023-12-06 18:50:46.755 info Disconnected from slave 192.168.188.107 modbus.0 2023-12-06 18:50:46.753 debug Closing client on purpose. modbus.0 2023-12-06 18:50:46.752 info Connected to slave 192.168.188.107
- LAN Anschluss
Resultat das gleiche, wie bei 1 und 2. Erhalte den bereits im Form gemosteten Socket Error.
Winet
Unter Betriebs - > weiterleiten von Daten -> MODBUS-TCP IP1 erschien früher mal die iobroker IP. Mittlerweile auch nicht mehr.Verzweiflungstaten
- Neustart Router
- Neustart ioBroker
- Neustart WR nach jedem Wechsel
- Tischkante gebissen
- mehr Posts gelesen
- Tischkante gebissen
- wiederholtes Löschen und neu installieren des Adapters in iobroker
Ich wäre für Hilfe sehr dankbar.
LG & einen schönen Nikolaus-Abend. - Anschluss am LAN Winet: Verbindung kommt nicht zustande.
-
@ahnungsloshoffnungsvoll
Die Einstellungen im Adapter wären ja noch recht interessant gewesen, sei es drum.Verbindung: TCP
Partner IP: IP des Wechselrichters LAN oder WINet
Port: 502 (im Wechselrichter kontrollieren)-
IP des WR aufrufen
-
mit admin und pw8888 anmelden
-
System/Weitergabekonfiguration/Modbus
-
Port 502 Aktivieren
Geräte ID: 1 (im Wechselrichter kontrollieren)
-
Gerät/Geräteliste
-
Geräteadresse sollte auf "1" stehen
Dann sollte die Verbindung stehen, notfalls kann ein Update des WR helfen.
Mit dem ModbusMaster kann man dann mal versuchen einzelen Register zu lesen.
Dann kann man die Input und Holdings im IOB anpassen. -
-
@ahnungsloshoffnungsvoll du musst an den hintern LAN Port nicht an dem vom Dongel
-
@carsten-sauermann sagte in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
@ahnungsloshoffnungsvoll du musst an den hintern LAN Port nicht an dem vom Dongel
Stimmt so nicht ganz, mein SH8.0 läuft bei mir mit dem WiNet ohne Probleme seit 1,5 Jahren.
Es kann nur sein, das nicht alle Register Abfragbar sind. -
@mcbeath Vielen Dank. Das Passwort kannte ich noch nicht.
Ich habe festgestellt, dass der Port 502 auch eingeschaltet ist, per Terminal konnte ich den auch vorher anpingen, habe ich nicht erwähnt. Die Geräteadresse lautet 1, für den Akku 200, wie oben in den Posts auch schon bei anderen so beschrieben.
Der WR wurde bei Installation vor 2 Wochen auf das neuste Update gebracht, wobei ich keine Versionsnummer kenne oder finde.@carsten-sauermann Leider funktioniert das gar nicht bei mir, es kann eine Verbindung zum LAN Port nicht aufgebaut werden.
-
Mit der Liste von Atlantis habe ich auch begonnen. Bei mir hat sie nach einer Weile auch zu Abbrüchen geführt. Der Sungrow Wechselrichter verzeiht fehlerhafte Abfragen nicht (vielleicht ist es auch ein Problem des Protokolls, ich bin nicht sicher). Sicher bin ich nicht, aber ich glaube Atlantis fragt mehr Register ab als abfragbar sind. Da laufen dann Fehler auf bis die Verbindung abbricht.
Die späteren Registerlisten sind besser.
-
@ahnungsloshoffnungsvoll
Dann würde ich jetzt mal mit dem ModbusMaster anfangen eine Verbindung zum WR aufzubauen.Hatte anfangs auch Probleme mit der Verbindung.
-
@mcbeath ich habe leider kein Windows, nutze mal ein anderes Tool. Leider kann ich das inhaltlich nicht so deuten. Es scheint eine Verbindung herzustellen.
-
@ahnungsloshoffnungsvoll
Das sieht eigentlich doch vielversprechend aus.
Kenne das Tool nicht aber ich Werte es auch mal als verbunden.Auf was läuft denn der IOB? Raspi, Docker etc?
Eventuell liegt es daran, daß du dem System den Port 502 öffnen musst. -
@mcbeath
@mcbeath Ich nutze einen Raspberry 4, RapsiOS Lite und iobroker.
Der Port 502 ist offen.
Ein Teilerfolg ist getan.
Nachdem ich einen Glühwein getrunken habe, stand plötzlich die Verbindung.
Jedoch werden die Daten nicht in die Register geladen.
Log:
modbus.0 2023-12-07 20:22:02.806 debug [DevID_1] Poll start ---------------------
Leider hat ein weiterer Glühwein das Problem nicht behoben.
-
@ahnungsloshoffnungsvoll
komisch, so ähnlich war es bei mir auch, als ob der WR erst mal vom Test-Tool ins Leben gerufen werden müssteDu solltest mit den Registern langsam anfangen, wenn da Sachen drin stehen die der WR nicht mag
läuft teilweise gar nichts mehr (Nach meine Erfahrung)Auch besteht das Problem beim Importieren der Register das das Einlesen nicht sauber funktioniert.
Hat mit dem trennen der einzelnen Werte zu tun._address name description unit type len factor offset formula role room cw isScale 4999 Device type code Geräte Typ-Code int8be 1 1 0 value false false 5000 Nominal Output Power Installierte Leistung Kw uint16be 1 0.1 0 value false false 5001 Output Type uint16be 1 1.0 0 value false false 5002 Daily Output Energy Eigene Energienutzung heute (PV & Akku) Kwh uint16be 1 0.1 0 value false false 5003 Total Output Energy Eigene Energienutzung gesamt (PV & Akku) Kwh uint32sw 2 0.1 0 value false false 5005 Total Runing Time Laufzeit der Anlage h uint32sw 2 1.0 0 value false false 5007 Inside Temperature Temperatur im Wechselrichter °C int16be 1 0.1 0 value false false 5010 MPPT 1 Voltage MPPT1 Spannung V uint16be 1 0.1 0 value false false 5011 MPPT 1 Current MPPT1 Strom A uint16be 1 0.1 0 value false false 5012 MPPT 2 Voltage MPPT2 Spannung V uint16be 1 0.1 0 value false false 5013 MPPT 2 Current MPPT2 Strom A uint16be 1 0.1 0 value false false 5016 Total DC Power Aktuell PV-Leistung DC W uint32sw 2 1 0 value false false 5018 Spannung Ph A Spannung Phase L1 V uint16be 1 0.1 0 value false false 5019 Spannung Ph B Spannung Phase L2 V uint16be 1 0.1 0 value false false 5020 Spannung Ph C Spannung Phase L3 V uint16be 1 0.1 0 value false false 5030 Total Active Power Wirkleistung W int32sw 2 1.0 0 value false false 5032 Reactive Power Blindleistung VA® int32sw 2 0 value false false 5034 Power Factor Leistungsfaktor int16be 1 0.001 0 value false false 5035 Grid Frequency Netzfrequenz Hz uint16be 1 0.01 0 value false false 12999 System State Systemstatus uint16be 1 1 0 value false false 13000 Running State Betriebsstatus uint16be 1 1 0 value false false 13001 Daily PV Generation PV-Stromerzeugung heute Kwh uint16be 1 0.1 0 value false false 13002 Total PV Generation PV-Stromerzeugung gesamt Kwh uint32sw 2 0.1 0 value false false 13004 Daily export energy from PV PV-Einspeise Energie heute Kwh uint16be 1 0.1 0 value false false 13005 Total export energy from PV PV-Einspeise Energie gesamt Kwh uint32sw 2 0.1 0 value false false 13007 Load power Aktuelle Last W uint32sw 2 1 0 value false false 13009 Export power Aktuelle Leistung am Übergabepunkt W int32sw 2 1 0 value false false 13011 Daily battery charge energy from PV Energie in Speicher aus PV heute Kwh uint16be 1 0.1 0 value false false 13012 Total battery charge energy from PV Energie in Speicher aus PV gesamt Kwh uint32sw 2 0.1 0 value false false 13014 C02 Reduction C02 Einsparung kg uint32sw 2 0.1 0 value false false 13016 Daily direct Energy Consumption Direkter Eigenverbrauch aus PV heute Kwh uint16be 1 0.1 0 value false false 13017 Total direct Energy Consumption Direkter Eigenverbrauch aus PV gesamt Kwh uint32sw 2 0.1 0 value false false 13019 Battery voltage Batteriespannung V uint16be 1 0.1 0 value false false 13020 Battery current Batteriestrom A uint16be 1 0.1 0 value false false 13021 Battery power Batterieent-Ladeleistung W uint16be 1 1 0 value false false 13022 Battery level Batteriekapazität % uint16be 1 0.1 0 value false false 13023 Battery state of health Gesundheit der Batterie % uint16be 1 0.1 0 value false false 13024 Battery Temperature Batterietemperatur °C int16be 1 0.1 0 value false false 13025 Daily battery discharge Energy Tägliche Entladungsenergie der Batterie Kwh uint16be 1 0.1 0 value false false 13026 Total battery discharge Energy Gesamte Entladungsenergie der Batterie Kwh uint32sw 2 0.1 1 value false false 13028 Self-consumption of today Heutiger Anteil des Eigenverbrauches % uint16be 1 0.1 0 value false false 13029 Grid state Netzstatus uint16be 1 0.1 0 value false false 13030 Phase A current Strom Phase L1 aktuell A uint16be 1 0.1 0 value false false 13031 Phase B current Strom Phase L2 aktuell A uint16be 1 0.1 0 value false false 13032 Phase C current Strom Phase L3 aktuell A uint16be 1 0.1 0 value false false 13033 Total active power Aktuell PV-Leistung AC W int32sw 2 1 0 value false false 13035 Daily Import Energy Energie Bezug heute Kwh uint16be 1 0.1 0 value false false 13036 Total Import Energy Energie Bezug gesamt Kwh uint16be 1 0.1 0 value false false 13038 Battery Capacity Batterie-Kapazität Kwh uint16be 1 0.1 0 value false false 13039 Daily Charge Energy Batterie-Ladeenergie heute Kwh uint16be 1 0.1 0 value false false 13040 Total Charge Energy Batterie-Ladeenergie gesamt Kwh uint32sw 2 0.1 0 value false false 13044 Daily export energy Energie Netzeinspeisung heute Kwh uint16be 1 0.1 0 value false false 13045 Total export energy Energie Netzeinspeisung gesamt Kwh uint32sw 2 0.1 0 value false false 13049 Inverter alarm Inverter alarm uint32sw 2 1 0 value false false 13051 Grid-side fault Netzfehler uint32sw 2 1 0 value false false 13053 System fault 1 System Fehler 1 uint32sw 2 1 0 value false false 13055 System fault 2 System Fehler 2 uint32sw 2 1 0 value false false 13057 DC-side fault Fehler DC-Seitig uint32sw 2 1 0 value false false 13059 Permanent fault Permanenter Fehler uint32sw 2 1 0 value false false 13061 BDC-side fault BDC-side fault uint32sw 2 1 0 value false false 13063 BDC-side permanent fault BDC-side permanent fault uint32sw 2 1 0 value false false 13065 Battery fault Batterie Fehler uint32sw 2 1 0 value false false 13067 Battery alarm Battery Alarm uint32sw 2 1 0 value false false 13069 BMS alarm BMS Alarm uint32sw 2 1 0 value false false 13071 BMS protection BMS Sicherung uint32sw 2 1 0 value false false 13073 BMS fault 1 BMS Fehler 1 uint32sw 2 1 0 value false false 13075 BMS fault 2 BMS Fehler 2 uint32sw 2 1 0 value false false 13077 BMS alarm 2 BMS Alarm 2 uint32sw 2 1 0 value false false
Das ist mein Inputregister versuche Erstmal nur ein zwei Werte abzufragen.
Wenn das läuft kannst du die Liste erweitern.
Ich würde mal mit der 13009 Leistung am Übergabepunkt anfangen. -
@mcbeath said in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
13009 Export power Aktuelle Leistung am Übergabepunkt W int32sw 2 1 0 value false false
Ich hatte die Register bereits ausgedünnt, aber noch nicht soweit zurückgefahren. Ich habe nun folgendes Register als einziges:
mit dem Ergebnis:
Bei den Einstellungen:
Einiges schildern, das Alias benutzen nicht zu nutzen, jedoch verschwinden dann bei den Ergebnissen alle eingetragene Register.
-
Das „NaN“ vor dem Feldnamen heißt „Not a Number“. Ich denke das Register 13009 hat vermutlich ein Leerzeichen „13009 „. Damit ist es keine valide Registeraddresse und kann natürlich auch keine Ergebnisse liefern. Dieser invalide Request wird immer wieder abgesetzt bis der Server keine Requests mehr annimmt.
-
@gombersiob du H * E * L * D!
Ich danke dir. Ich musste da ziemlich oft das gleiche eintippen und korrigieren. Denn wiederholt stellte iobroker die Registerzahl einfach um, auf ganz andere Zahlen. Das verwundert mich ein wenig.
Ich danke auch @McBeath und @carsten-sauermann für eure Hilfe.
-
@gombersiob sagte in Sungrow WR SGH10RT erfolgreich mit MODBUS eingebunden:
Das „NaN“ vor dem Feldnamen heißt „Not a Number“. Ich denke das Register 13009 hat vermutlich ein Leerzeichen „13009 „. Damit ist es keine valide Registeraddresse und kann natürlich auch keine Ergebnisse liefern. Dieser invalide Request wird immer wieder abgesetzt bis der Server keine Requests mehr annimmt.
@ahnungsloshoffnungsvoll
Das war genau das, was ich meinte mit: "Das das Importieren nicht immer sauber klappt."
Tippfehler bei manueller eingabe waren da aber schon mit eingeschlossenFreut mich, wenn es jetzt auch bei dir Klappt
Die Registereingaben müssen schon sauber sein, sonst kann es auch zu anderen Stöungen kommen.
Und nur das Eintragen, was auch wirklich benötigt wir, weniger ist manchmal eben doch mehr. -
Leider habe ich es nirgends gefunden, aber gibt es eine Option zu erkennen, ob der Heizstab an-/ausgeschaltet wurde?
-
Per PM kam die Frage nach der "gesteuerten" Zwangsladung über Modbus
In VIS hab ich das so eingebunden:
In den Holdingregistern stehen diese
Ein Aus ist in Vis so
Viel Erfolg beim Verknüpfen, fortgeschrittene können das auch per Script an den Börsenpreis koppeln dann dann brauchts keine Handsteuerung.
-
@ Atlantis
und AlleHi, habe den Sungrow SH10RT-V112 und nach der @Atlantis Anleitung gemacht. Ich habe allerdings in der isolar cloud keine Geräteadresse.
Habe also in der modbus Instanz 1 eingetragen.
Bekomme auch Daten, allerdings verbindet und trennt der modbus Adapter sich ständig.Nachricht modbus.0 2024-01-25 21:19:05.623 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:19:04.569 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:18:04.567 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:18:02.627 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:17:02.623 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:17:01.570 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:16:01.566 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:15:59.630 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:14:59.626 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:14:58.569 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:13:58.567 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:13:56.632 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:12:56.628 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:12:55.571 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:11:55.566 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:11:53.628 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:10:53.625 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:10:52.571 info Connected to slave 192.168.178.72 modbus.0 2024-01-25 21:09:52.568 info Disconnected from slave 192.168.178.72 modbus.0 2024-01-25 21:09:50.626 info Connected to slave 192.168.178.72
Soll das so sein? Ist der Adapter nicht ständig verbunden?
Sind 13007 Wirkleistung und 5016 PV Leistung aktuell die gleichen Daten? Habe allerdings gerade 1032 W bei beiden und es ist dunkel.
Danke für die tolle Arbeit hier
Gruß
KlausOK, habe mich gerade über winet s verbunden, da bekomme ich Adressen. 1 für den WR und 200 für den Akku
Ich habe bis jetzt im Register 13000 running state den Wert 0, 8und 9 gehabt. Was bedeuten diese?
-
Bekomme auch Daten, allerdings verbindet und trennt der modbus Adapter sich ständig.
Die Registerliste von Atlantis hat Fehler. Wenn da ständig falsche Offsets abgefragt werden, verzeiht das der Slave nicht, irgendwann lässt er sich nicht mehr abfragen. Ich denke, das ist die Ursache für die Connection-Versuche - und die darauffolgenden Abbrüche. Es gibt in diesem sehr langen Thread noch viele andere Listen, die besser funktionieren.
Ein Reboot sollte die Modbus-Abfragen wieder ermöglichen. Bei mir hat auch schon geholfen, das LAN-Kabel abzuziehen.Sind 13007 Wirkleistung und 5016 PV Leistung aktuell die gleichen Daten? Habe allerdings gerade 1032 W bei beiden und es ist dunkel.
13007 beschreibt den Strom am Hausnetz (Import/Export) während 5016 die Eigen-Erzeugung beschreibt. Die Werte sind manchmal gleich. Jetzt sollte 5016 auf null stehen, während irgendein Verbraucher sicher läuft also 13007 in der Regel einen Wert anzeigt.
Ich habe bis jetzt im Register 13000 running state den Wert 0, 8und 9 gehabt. Was bedeuten diese?
Die Bits sind in der Beschreibung, die auch Atlantis verlinkt hat, beschrieben. Die 8 (BIT2) zum Beispiel besagt, dass die Batterie entladen wird. Das Bit ist auch gesetzt bei der 9 (BIT2 und Bit0). Bit0 sagt, dass Strom erzeugt wird. Bei 9 heißt, also, dass Strom erzeugt wird und dass die Batterie entladen wird.
-
Hi, Danke für die Erklärung. Habe jetzt mehrere andere txt und tsv versucht. Ich bekomme immer Daten, aber das Verbindungsverhalten bleibt. alle 61 Sekunden wird verbunden und sofort wieder getrennt.
Nur um sicher zu gehen in 13000 sind bei 9 Bit3 und Bit0 gesetzt?