Einbindung eines Sungrow SH10RT: SH05,SH06,SH08,SH10

Begonnen von 3gmann, 05 November 2020, 11:22:14

Vorheriges Thema - Nächstes Thema

FhemPiUser

#15
Ich habe 2 SH10RT im Parallelmodus und beide sind sowohl mit Winet-S-Adapter als auch am LAN-Anschluß per Ethernet verbunden.

Die Modbus-Abfrage funktionieren bei mir am LAN-Anschluss, über den Winet-S-Anschluß inzwischen mit dem  neuen Update auch, aber merkwürdigerweise wird dann in iSolarCloud keine Daten mehr angezeigt.

Habt ihr das auch?

sollte man nicht den Parameter "closeAfterResponse" auf 1 setzen?

3gmann

Hallo,
leider hat mein SH10RT noch keinen Winet-S-Adapter sondern nur einen WiFi-Dongle, und der ist nicht in Betrieb, mache alles über den LAN. Von daher kann ich leider nichts dazu sagen.
Ich würde mal mit dem Service von Sungrow telefonieren - habe da bisher fast nur gute Erfahrungen gehabt.

Von den Solarcloud's der Wechselrichterhersteller halte ich jetzt nicht all zu viel - sind meiner Meinung nach nur Datensammler ohne nennenswerten Mehrwert. Auswertung und Steuerung läuft bei mir ausschließlich über FHEM.

LG Gerhard
"Kommunikation ist der Motor aller Entwicklungen!"
Eigenbau FHEM-Server, IPCAM; Plenticore Plus 10; SH10RT; Mitsubishi ECODAN PUD-SHWM120YAA + EHSD-YM9D; eigene Hardware Arduino; MQTT; Modbus...

FhemPiUser

Danke, inzwischen habe ich es auch hinbekommen und ich bekomme fast alle Werte in FHEM angezeigt.

Einzig der Netzbezug fehlt noch. Habt ihr den als Modbus-Wert?

3gmann

Zitat von: FhemPiUser am 12 Mai 2022, 19:12:31

Einzig der Netzbezug fehlt noch. Habt ihr den als Modbus-Wert?

Die Netzbezugsenergie findet man z.B im Registerwert 13036 Daly Import Energy (Abfrage Register -1 = 13035)
oder im Registerwert 13037 Total Import Energy (Abfrage Register -1 = 13036)

Auszug Modbus Protocol Singrow:
Note:
Communication address = protocol address – 1. If data of address 5000 is to be inquired, the
corresponding sending address data is 4999 (0x1387);

Hier ein Auszug meiner Konfigurationsdatei
attr SH10rt_Fast obj-i13035-expr $val/10
attr SH10rt_Fast obj-i13035-poll 1
attr SH10rt_Fast obj-i13035-polldelay x299
attr SH10rt_Fast obj-i13035-reading Daily_Import_Energy
attr SH10rt_Fast obj-i13035-type S16
attr SH10rt_Fast obj-i13036-expr $val/10
attr SH10rt_Fast obj-i13036-poll 1
attr SH10rt_Fast obj-i13036-polldelay x299
attr SH10rt_Fast obj-i13036-reading Total_Import_Energy
attr SH10rt_Fast obj-i13036-type U32

LG Gerhard
"Kommunikation ist der Motor aller Entwicklungen!"
Eigenbau FHEM-Server, IPCAM; Plenticore Plus 10; SH10RT; Mitsubishi ECODAN PUD-SHWM120YAA + EHSD-YM9D; eigene Hardware Arduino; MQTT; Modbus...

FhemPiUser

#19
danke, aber ich meinte den aktuellen Netzbezug in KW. Die Daily und Total-Werte hatte ich.

Außerdem fehlt mir noch der Daily Eigenverbrauch. Daily_Direct_Energy_Consumption frage ich zwar ab wie hier gepostet, der Wert stimmt aber überhaupt nicht mit iSolarCloud überein.

Gibt es eigentlich irgendwo die Modbus Dokumentation mit allen Registerwerten für den SH10RT zum Nachschlagen?


FhemPiUser

#21
Bei mir zeigt weiterhin Daily_Direct_Energy_Consumption nicht den korrekten Wert an.

Ich nehme an der korrekte korrespondierende Wert in der iSolarCloud App ist "Eigenverbrauch" in der Übersicht und "Täglicher Energieverbrauch der Last" unter "Gerät / SH10RT / Allgemeine Informationen". Stimmt der Wert bei Euch mit Daily_Direct_Energy_Consumption überein?

Ich habe 2 SH10RT im Parallelmodus. Der Master hat bei dem Wert in der App "-35.1", der Slave "50.3" bei "Täglicher Energieverbrauch der Last" unter "Gerät / SH10RT / Allgemeine Informationen". Macht in Summe "15.2", was der Anzeige "Eigenverbrauch" in der Übersicht der App entspricht. In Fhem wird aber "0.1" beim Master angezeigt. Beim Slave stehen die korrekten "50.3".

Laut Modbus-Protokoll von Sungrow ist Daily_Direct_Energy_Consumption vom Typ "U16". Meine Definition in Fhem ist daher


attr SH10rt_1 dev-type-U16-len 1
attr SH10rt_1 dev-type-U16-unpack n
...
attr SH10rt_1 obj-i13016-expr $val/10
attr SH10rt_1 obj-i13016-poll 1
attr SH10rt_1 obj-i13016-polldelay x10
attr SH10rt_1 obj-i13016-reading Daily_Direct_Energy_Consumption
attr SH10rt_1 obj-i13016-type U16


Jemand eine Idee, warum der Daily_Direct_Energy_Consumption im Master nicht korrekt angezeigt wird?

P.S.: Finde es merkwürdig, wenn der Wert in der App negativ ist, wenn angeblich der Typ unsigned sein soll. Vielleicht hängt es damit zusammen, aber mit Typ "S16" funktioniert es auch nicht...

3gmann

Hallo zusammen,

ich betreibe ebenfalls zwei Wechselrichter allerdings keine zwei Sungrow's. Sondern einen Kostal Plenticore und einen SH10RT. Dabei ist mir aufgefallen, dass der Kostal hauptsächlich die Energieversorgung der Hauses (Eigenverbrauch) übernimmt und der Sungrow für die Einspeisung der überschüssigen Energie zuständig ist, und nur dann Energie für den Eigenverbrauch zur Verfügung stellt wenn die Power des Kostal WR nicht ausreicht. Deshalb auch hier nur kleine Leistungswerte für den Eigenverbrauch. Hier ein Auszug aus der Datenbank von gestern.

SH10RT
"2022-05-14 00:02:05",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0",Daily_direct_Energy_Consumption,0,
"2022-05-14 06:32:28",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0.1",Daily_direct_Energy_Consumption,0.1,
"2022-05-14 07:12:29",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0.2",Daily_direct_Energy_Consumption,0.2,
"2022-05-14 20:33:09",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0.3",Daily_direct_Energy_Consumption,0.3,

Kostal (letzter Eintrag)
"2022-05-14 20:45:33",Plenticore,MODBUSATTR,"Dailey_PV_KWh: 15.0",Dailey_PV_KWh,15.0,

Ergibt zusammen 15,3 KWh

D.h. ein WR übernimmt Hauptsächlich die Eigenversorgung der andere speist die überschüssige Energie ins Netz.

Welche genauen Registerwerte für Daily_direct_Energy_Consumption stehen nun im Master und im Slave?
Meiner Meinung nach dürften beide Werte addiert den Eigenverbrauch des Systems wiederspiegeln. Bei einem Eigenverbrauch von 15,2 KWh müssten somit wenn im Master der Wert 0,1 steht im Slave 15,1 stehen das ergibt dann zusammen 15,2.

In welchem Registereintrag bei welchem WR steht der Wert 50,3? und in welchem Registereintrag bei welchem WR der Wert 15,2 bzw -35,1. Also nicht in der App sondern direkt in den Modbusregistern der WR.

viele Grüße Gerhard
"Kommunikation ist der Motor aller Entwicklungen!"
Eigenbau FHEM-Server, IPCAM; Plenticore Plus 10; SH10RT; Mitsubishi ECODAN PUD-SHWM120YAA + EHSD-YM9D; eigene Hardware Arduino; MQTT; Modbus...

FhemPiUser

#23
Leider passt das bei mir nicht wie bei Dir. Ich betreibe ja 2 SH10RT im Sungrow Parallelmodus, d.h. der Master fragt über den Bus Werte vom Slave ab bzw. sie kommunizieren miteinander, damit in der App alle Werte in Summe für Master+Slave angezeigt werden können.

Der Registerwert ist "obj-i13016-reading Daily_Direct_Energy_Consumption" (also Register 13017),
In Fhem wurde gestern "0.1" beim Master angezeigt. Beim Slave standen "50.3". Der korrekte Eigenverbrauch laut App war  15.2.

Kannst Du mal schauen, welcher Wert in der iSolarCloud App bei Dir unter "Gerät / SH10RT / Allgemeine Informationen" dem "obj-i13016-reading Daily_Direct_Energy_Consumption" im fhem entspricht?

Ist das "Täglicher Energieverbrauch der Last" ganz unten im Abschnitt "Informationen über Verbraucher" (siehe Screenshot)?

Da standen wie gesagt in der App für den Slave genau die "50.3", die ich auch in fhem beim Slave unter  "obj-i13016-reading Daily_Direct_Energy_Consumption" bekomme. Bei Master steht da aber ein negativer Wert, was laut Typdefinition U16 für i13016 eigentlich garnicht geht...


3gmann

Hallo,

Hier die heutigen aktuellen Wert aus der Datenbank in FHEM:
"2022-05-16 00:04:59",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0",Daily_direct_Energy_Consumption,0,
"2022-05-16 06:45:16",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0.1",Daily_direct_Energy_Consumption,0.1,
"2022-05-16 07:45:20",SH10rt_Fast,MODBUSATTR,"Daily_direct_Energy_Consumption: 0.2",Daily_direct_Energy_Consumption,0.2,

Hier die Daten aus der I-SolarCloud:
Zeit                                   (kWh)
2022-05-16 00:00:00   0
2022-05-16 07:30:00   0,1
2022-05-16 08:00:00   0,2

Somit identische Werte.

Ich baue eine zweite Anlage mit folgender Konfiguration:
SH10RT als Master mit Batterie PV-Generator 11,5KWp
SH10RT als Slave ohne Batterie PV-Generator 11,5KWp

Leider erst ab ca. September verfügbar (Lieferzeiten z.Z. eine Katastrophe)
Dann kann ich das auch selbst überprüfen.

Noch eine Frage: Können die Registerwerte der einzelnen Wechselrichter über ModbusTCP nicht separat abgefragt werden? So dass zwei Configs in FHEM existieren die die jeweiligen Registerwerte des Master WR und Slave WR auslesen und speichern oder wird das bereits gemacht und die Werte sind falsch - dann Serviceticket bei Sungrow.

LG Gerhard




"Kommunikation ist der Motor aller Entwicklungen!"
Eigenbau FHEM-Server, IPCAM; Plenticore Plus 10; SH10RT; Mitsubishi ECODAN PUD-SHWM120YAA + EHSD-YM9D; eigene Hardware Arduino; MQTT; Modbus...

FhemPiUser

#25
danke und ja, ich frage Master und Slave WR jeweils separat per eigenem ModbusAttr-device ab. Die Werte vom Master sind anders als die in der App, die vom Slave stimmen überein. Ich mache mal ein Serviceticket auf, fürchte aber, dass ich keine Antwort bekomme...

FhemPiUser


tfhem

Hallo,

ich konnte dank der Anleitung meinen Wechselrichter ebenfalls einbinden. Allerdings wundert es mich, dass sich die Verbindung ständig aufbaut und gleich wieder schließt.

2022-08-04 21:17:32 ModbusAttr SH10rt_Fast DISCONNECTED
2022-08-04 21:17:33 ModbusAttr SH10rt_Fast CONNECTED
2022-08-04 21:17:33 ModbusAttr SH10rt_Fast DISCONNECTED
2022-08-04 21:17:34 ModbusAttr SH10rt_Fast CONNECTED
2022-08-04 21:17:35 ModbusAttr SH10rt_Fast DISCONNECTED
2022-08-04 21:17:35 ModbusAttr SH10rt_Fast CONNECTED


Das LAN-Kabel ist im wandzugerichteten Anschluss gesteckt, während in der anderen LAN-Buchse derWiNet-S-Dongle hängt. Ist das Verhalten normal?

Viele Grüße
Tobi

FhemPiUser

#28
Beim SH10RT gibt es ja noch immer Probleme mit der Stabilität der Modbus-Verbindung und eine Lösung von Sungrow lässt auf sich warten.

Ich frage aktuell alle 30s stabil per modbusattr über den WiNet-S-Anschluss ab, aber über WiNet-S bekommt man nicht alle Register.

Um die restlichen Registr zu bekommen, frage ich am LAN-Anschluss im 10min Intervall mit einem weiteren modbusattr device ab. Schneller geht leider nicht, dann trennt der SH10RT die Verbindung immer wieder für ca. 10min. 10min Intervall ist natürlich viel zu langsam.

Angeblich kann man durch geschicktes Timing der Abfragen auch am LAN-Anschluss eine halbwegs stabile modbus-Verbindung mit kurzem Interval (<1s) hinbekommen (siehe https://www.photovoltaikforum.com/thread/170810-sungrow-hat-probleme-mit-der-modbus-verbindung/?postID=2660675#post2660675).

Hat mal jemand versucht das Timing mit modbusattr in fhem durch Konfiguration der entsprechenden attr hinzukommen? Mir ist das bisher nicht gelungen...

StefanStrobel

Hallo FhemPiUser,

wenn ich Dich richtig verstehe, dann geht es Dir darum möglichst wenig Verzögerung zwischen dem Verbindungsaufbau und dem nächsten anstehenden Request zu bekommen. Das hängt vor allem vom queueDelay ab. Den kannst Du auch auf 0.1 oder sogar 0.05 setzen. Ebenso die anderen Delays.
Wenn es dann noch nicht klappt, hilft verbose 5. Dann sollte man das Timing gut im Log sehen.

Gruß
    Stefan