OpenDTU icon indicating copy to clipboard operation
OpenDTU copied to clipboard

SunSpec(kompatibel) Protokoll

Open De-Ichirou opened this issue 2 years ago • 1 comments

Das SunSpec-Protokoll ist Modbus-Basiert, am einfachsten ModbusTCP, was per WLAN ja sowieso schon in Hardware verfügbar ist. Damit wird es möglich, den/die Wechselrichter in anderen Systemen zu integrieren, z.B. Victron mit angeschlossenen Speichersystemen, die Daten in das System zu bekommen und (später) auch die Leistungslimitierung umsetzen zu können.

Hier werden insgesamt 2 relevante Komponenten benötigt:

  • Leistungslimitierung der WR
  • ModbusTCP mit SunSpec

Die Leistungslimitierung ist ja bereits in der Entwicklung, bis diese funktioniert könntest du eine Modbus-Verbindung vorbereiten? Im Setup wird zusätzlich zur IP-Adresse ein Schalter/Haken für Enable Modbus sowie ein Port (default: 502) benötigt.

Als Basis wird functioncode 0x04 Read Input Registers der Adressen 30001 bis 40000 sowie 0x03 Read Holding Registers und später wahrscheinlich 0x06 Write Single Register (Limits) benötigt. Ich schaue mir das SunSpec gerade an um die genaue Registerbelegung herauszukriegen. Eine Python-Implementierung gibt es bereits: https://github.com/sunspec/pysunspec2

Kannst du dazu eine define vorbereiten, in der man die entsprechenden Werte den registern zuweisen kann? Es kann sein, dass noch weiteres benötigt wird, für den Anfang und Test wäre es das einfachste, nur die AC-Werte in die Register 30000 und folgede zu schreiben, die man mit functioncode 0x04 lesen kann.

De-Ichirou avatar Jul 09 '22 10:07 De-Ichirou

Modbus TCP Sunspec wäre wirklich von Vorteil wenn man OpenDTU in eine größere Installation (z.B. Victron oder SMA) einbinden möchte.

dachauan avatar Nov 02 '22 11:11 dachauan

Hier ist der Code vom Victron VenusOS, wie dieser auf die SunSpec Register zugreift und auswertet.

sunspec_detector.cpp

in dem GitHub Verzeichnis drum Herum sind auch die Infos, wie das Auto Wechselrichter Auto Discovery durchgeführt wird.

Der ganze SunSpec Spezifikation ist riesig, doch wenn man sich auf dieses (paar) ModbusTCP Register beschränkt wäre viel geholfen.

Jan-X avatar Feb 21 '23 14:02 Jan-X

ich denke, dass das auch das wäre was ich bräuchte - eventuell in "fronius"-form - siehe https://github.com/tbnobody/OpenDTU/issues/553#issuecomment-1541374318

vielleicht hat jemand von hier inzwischen eine node red basierende "zwischenstation" gebaut und kann flows hier sharen?

AloisKlingler avatar May 29 '23 20:05 AloisKlingler

Due to the existence of https://github.com/helgeerbe/OpenDTU-OnBattery i would close this issue.

tbnobody avatar Sep 05 '23 16:09 tbnobody

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new discussion or issue for related concerns.

github-actions[bot] avatar Apr 03 '24 04:04 github-actions[bot]