Solaredge Victron Venus OS und FHEM

Begonnen von Chris_XXX, 18 Dezember 2023, 15:00:30

Vorheriges Thema - Nächstes Thema

Chris_XXX

Hallo zusammen,
ich habe da ein Problem und weiß nicht ob man das überhaupt lösen kann. Ich habe:
Eine PV Anlage mit einem SE9K über TCP Modbus in Fhem eingebunden
Ein ESS mit einem Multiplus II und Venus OS.
Es ist wohl möglich den Solaredge WR mit dem Venus OS über TCP Modbus zu verbinden. Nur nutze ich die TCP Modbus Schnittstelle vom SE schon für FHEM. Und scheinbar ist nur Verbindung bei TCP Modbus und SE möglich (ich kenne mich da nicht wirklich aus aber ein Versuch und kurze Recherche bestätigen meine Vermutung - oder ich habe etwas falsch gemacht).
Weiß jemand ob es möglich ist aus dem Venus OS heraus Fhem per Modbus anzuzapfen? Oder in Fhem ein Modbus Gerät mit den gleichen Werten die es vom Solaredge bekommt zu emulieren und das ich dann wieder in Venus OS einhängen kann? Ich hoffe ich konnte mein Vorhaben einigermaßen beschreiben. Über Ideen würde ich mich freuen.

Danke und Gruß
Christian

kask

Wenn es wirklich Modbus TCP/IP  ist (gehe ich jetzt mal von aus), dann sollte es möglich sein mehrere clients(fhem,venus os) auf einen server (solaredge) los zu lassen.
Du must nur jedem client eine eigene ID geben.

Romoker

Ich stand vor demselben Problem. Leider kann nur ein Client auf den Modbus-TCP-Port des Solaredge PV-Inverters zugreifen. Gelöst habe ich das mit dem modbus-proxy von Tiago Coutinho.
Zu beachten ist, dass der Victron CCGX zwingend den Port 502 und die Modbus-ID 126 benötigt. Das muss bei den Konfigurationen von modbus-proxy, SE-Wechselrichter und FHEM berücksichtigt werden.
Meine modbus-proxy Config (/usr/lib/mproxy-conf.yaml):
devices:
- modbus:
    url: 192.168.xx.aa:502     # solaredge inverter url (mandatory)
    timeout: 10                # communication timeout (s) (optional, default: 10)
    connection_time: 0.1       # delay after connection (s) (optional, default: 0)
  listen:
    bind: 0:502                # listening address for all proxy participants (port 502 required for CCGX)

Solaredge:
Damit der SE-WR in CCGX erscheint, muss in SolarEdge-WR-App das Protokoll SunSpec aktiviert und die Modbus ID auf 126 gesetzt werden:
Communication → RS481 → Protocol → SunSpec (Non-SE Logger) → Device ID → Edit to 126
Im Victron-Dokument ist die Vorgehensweise detailliert beschrieben. Wichtig ist, am Ende der Konfiguration die RS485-1-Einstellung wieder auf den alten Stand zurückzustellen, so wie es am Ende der Beschreibung auch steht.

FHEM:
defmod ma_solaredge ModbusAttr 126 30 192.168.xx.bb:502 TCP192.168.xx.bb ist die IP-Geräteadresse, auf der modbus-proxy-Dienst läuft.

Ich habe mit FHEM, CCGX und Wallbox drei Clients, die über modbus-proxy die Daten vom SE-Wechselrichter abgreifen.
Das ganze ist schon eine Konfigurations-Hölle.

Viele Grüße

BeagleBoneBlack & Raspberry Pi 4; FB7490; div. Homematic Komponenten; CUL433: CUL_TX, Conbee II, SOMFY, 1-Wire, Z-Wave, Zigbee, SmartPlugs von Sonoff und Shelly mit MQTT

Chris_XXX

Hallo Romoker,

ja das hört sich nach genau dem an was ich machen will. Mit der Konfigurationshölle gebe ich dir recht. Ich habe noch ein Elgris Smart Meter mit eingebunden das sowohl den Victron als auch den Solaredge versorgt. Ich traue mich gar nicht hin langen weil ich froh bin das es im Moment läuft. Da war viel trial and error dabei.
Unter Fhem gibt es so eine Funktion nicht, oder?

VG
Christian

Romoker

@Chris_XXX: Wenn du eine FHEM-Modbus-Proxy-Funktion meinst, dann gibt es die nicht. Unabhängig davon musst du trotzdem an die SE-Wechselrichtekonfiguration ran.

Viele Grüße
BeagleBoneBlack & Raspberry Pi 4; FB7490; div. Homematic Komponenten; CUL433: CUL_TX, Conbee II, SOMFY, 1-Wire, Z-Wave, Zigbee, SmartPlugs von Sonoff und Shelly mit MQTT