Seite 1 von 22

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 2:03 pm
von fitzel
Vielen Dank an alle die hier so fleißig mitgeholfen haben!

Ich stehe an dem Punkt, dass ich am Montag mit meinem Elektriker die Installation eines Solax Hybrid G4 besprechen möchte. Ich habe für unser Auto bereits die OpenWB Series 2 standard+.

Ich bin mir noch unschlüssig, ob ich neben dem Wechselrichter noch etwas beim Smart Meter beachten muss, damit die Kombiination zum erwünschten Ergebnis führt. Ich würde Stand heute den WR und die open WB ans Netz hängen und als Smart Meter, das von Solax empfohlene

Solax Smart Meter DTSU666-D-Modbus 3-phasig bis 80A

verwenden.

Muss ich da noch weitere Komponenten verbauen lassen oder wäre ein anderes SmartMeter von Vorteil? Anbei einmal der Schaltplan. Ist das CT bereits das Smart Meter bzw. wird das Bauteil bei dem Wechselrichter bereits standardmäßig mitgeliefert. Sieht mir ja aus wie 3 phasige Amperzangen.

Danke im Voraus!

Jan

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 5:25 pm
von Peete
Hallo Jan,

Der X3-Hybrid G4 hat leider keine RJ45 Schnittstelle mehr, die Modbus (TCP 502) unterstützt.
Der Anschluss CT am WR ist der Anschluss für deinen DTSU666-D, welcher auch "nur" RS485 kann. Somit weiß der WR, ob Du aus dem Netz beziehst oder einspeist. Und mit einem USB WLAN/LAN Dongle wird dann alles an die SolaxCloud übermittelt.

Mit der jetzigen Installation bekommen wir aber keine Daten zur openWB, zumindest nicht alle paar Sekunden, sondern alle 5 Minuten. Das ist der Abfrageintervall der SolaxCloud.

Der X3-Hybrid G4 hat eine RS485 Schnittstelle unter dem COM Anschluss.

openWB braucht zur Regelung mindestens die EVU Werte. Also entweder das EVU Kit bestellen, oder du gehst an die RS485 Schnittstelle mit einem "Umsetzer" (Elfin) und übergibst somit die PV Werte an openWB.

Vllt kann HSC etwas beitragen. Der kennt sich mit den RS485 Modbus Adaptern aus.

Gemacht habe ich es noch nicht und ich habe auch noch keine Liste mit Registern, worauf ich mich beziehen könnte.

Gruß

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 7:08 pm
von aiole
RS485 macht sicher Sinn. Hauptsache die Register sind auch so geblieben, wie der letzte Stand, der hier gepostet wurde.

LAN-Adapter (Elfin + extra NT oder Protoss m. integr. NT) sollten die Daten dann ins LAN bringen.

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 7:22 pm
von okaegi
Hallo Peete,
Kannst du nochmal Tabelarisch auflisten, was du zwischen dem bestehenden Solax driver und deinem neuen Solax driver (für 3p Wr) geändert hast ?
Und zwar nach wr, evu und speicher getrennt. Kannst ja ganz links die Ramdiskvariable schreiben , und dann wo die jeweils herkommt für 3p und 1p.
Es geht immer noch um die Frage ob es Sinn macht einen komplett neuen Treiber zu erfassen, oder mittels Parameter zwischen 1p Wr (heute bestehend) und 3p Wr (neu jetzt von dir entwickelt) umzuschalten. Mach das bitte erst, wenn du das Gefühl hast das der neue Treiber läuft...
Danke Gruss Oliver

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 8:14 pm
von Peete
Alles was mit # auskommentiert ist war im originalen Modul aktiv und wird bei mir nicht mehr benutzt.

WR
pvwatt -> unverändert

Code: Alles auswählen

resp=client.read_input_registers(10, 2)
pv1 = unsigned16(resp, 0)
pv2 = unsigned16(resp, 1)
f = open('/var/www/html/openWB/ramdisk/pvwatt', 'w')
f.write(str( (pv1 + pv2) * -1   ) )  # Erzeugung negativ  
f.close()
daily_pvkwh braucht es nicht, da daily von openwb über pvwatt berechnet wird = Auskommentiert.

Code: Alles auswählen

resp=client.read_input_registers(80, 4)
#pvtoday = unsigned32(resp,0) / 10   # yield today
#f = open('/var/www/html/openWB/ramdisk/daily_pvkwh', 'w')
#f.write(str(pvtoday))
#f.close()
pvkwh und pvkwhk
Gesamtertrag wurde in wh ausgelesen und über / 1000 in pvkwhk übergeben. Kamen bei mir falsche Werte raus (Kommastelle).
pvkwhk braucht es auch nicht.

Code: Alles auswählen

#pvall = unsigned32(resp,2)       # yield overall
#f = open('/var/www/html/openWB/ramdisk/pvkwh', 'w')
#f.write(str(pvall))
#f.close()
#f = open('/var/www/html/openWB/ramdisk/pvkwhk', 'w')
#f.write(str(pvall / 1000))
#f.close()
#client.close()

# Gesamtertrag [kWh]
pvall = unsigned32(resp, 2) * 100      # yield overall
f = open('/var/www/html/openWB/ramdisk/pvkwh', 'w')
f.write(str(pvall))
f.close()
EVU
wattbezug -> keine Änderung

Code: Alles auswählen

resp=client.read_input_registers(0, 114)

value = signed32(resp, 70)
# for SolaX negative means get power from grid
value = -value

f = open('/var/www/html/openWB/ramdisk/wattbezug', 'w')
f.write(str(value))
f.close()
evuhz -> Register 7 wird ausschließlich von einem Solax X1 bedient (1phasig).
Habe ich auskommentiert. Das richtige Register laut Solax wäre 189. Das liefert nämlich evuhz direkt vom Meter und nicht vom WR. Hat bei mir mal den Wert 4999 gebracht, liefert aber aktuell 0. Habe die 109 genommen, welche die Frequenz von einem der Phasen des X3 ist. Geht also nicht beim X1.

Code: Alles auswählen

#frequenz = unsigned16(resp,7) / 100
#print (frequenz)
#f = open('/var/www/html/openWB/ramdisk/evuhz', 'w')
#f.write(str(frequenz))
#f.close()
bezugkwh und einspeisungkwh
Kommastelle falsch

Code: Alles auswählen

#consumed = unsigned32(resp,74) / 100
#print (consumed)
#f = open('/var/www/html/openWB/ramdisk/bezugkwh', 'w')
#f.write(str(consumed))
#f.close()

#einspeisung = unsigned32(resp,72) / 100
#f = open('/var/www/html/openWB/ramdisk/einspeisungkwh', 'w')
#f.write(str(einspeisung))
#f.close()

einspeisung = unsigned32(resp, 72) * 10
f = open('/var/www/html/openWB/ramdisk/einspeisungkwh', 'w')
f.write(str(einspeisung))
f.close()

consumed = unsigned32(resp, 74) * 10
f = open('/var/www/html/openWB/ramdisk/bezugkwh', 'w')
f.write(str(consumed))
f.close()
bezugw1, bezugw2 und bezugw3
Das passt nur für einen X3. Sind die EVU Meter Werte für die Leistung in Watt. Also Import/Export pro Phase. Ampere gibt es leider nicht, bzw. konnte ich nicht finden:

Code: Alles auswählen

resp=client.read_input_registers(130, 6)
value2 = signed32(resp, 0)
value2 = -value2
f = open('/var/www/html/openWB/ramdisk/bezugw1', 'w')
f.write(str(value2))
f.close()

value3 = signed32(resp, 2)
value3 = -value3
f = open('/var/www/html/openWB/ramdisk/bezugw2', 'w')
f.write(str(value3))
f.close()

value4 = signed32(resp, 4)
value4 = -value4
f = open('/var/www/html/openWB/ramdisk/bezugw3', 'w')
f.write(str(value4))
f.close()

Speicher
speicherleistung / speichersoc / speicherikwh / speicherekwh
Passt soweit. habe ich aber um den Gesamtzähler Speicher Ladung und Entladung erweitert.

Code: Alles auswählen

resp=client.read_input_registers(0, 114)
value1 = signed16(resp, 22)  #Batterie Power
value2 = unsigned16(resp, 28 )

f = open('/var/www/html/openWB/ramdisk/speicherleistung', 'w')
f.write(str(value1))
f.close()

f = open('/var/www/html/openWB/ramdisk/speichersoc', 'w')  #Batterieladezustand
f.write(str(value2))
f.close()
Das kam hinzu:

Code: Alles auswählen

# Batterie entladen LSB 29 MSB 30
valuei29 = unsigned16(resp, 29)
valuei30 = unsigned16(resp, 30)
f = open('/var/www/html/openWB/ramdisk/speicherekwh', 'w')
f.write(str((valuei29 + (valuei30 * 65536)) * 100 ) )
f.close()

# Batterie geladen LSB 33 MSB 34
valuei33 = unsigned16(resp, 33)
valuei34 = unsigned16(resp, 34)
f = open('/var/www/html/openWB/ramdisk/speicherikwh', 'w')
f.write(str((valuei33 + (valuei34 * 65536)) * 100 ) )
f.close()
Morgen gebe ich Feedback, ob die Speicherwerte für das tögliche laden und entladen passen. Das ist das Einzige, was ich heute nicht sehen konnte.

Re: Einbindung Solax- WR Gen4

Verfasst: Fr Dez 10, 2021 9:16 pm
von HSC
fitzel hat geschrieben: Fr Dez 10, 2021 2:03 pm Vielen Dank an alle die hier so fleißig mitgeholfen haben!

Ich stehe an dem Punkt, dass ich am Montag mit meinem Elektriker die Installation eines Solax Hybrid G4 besprechen möchte. Ich habe für unser Auto bereits die OpenWB Series 2 standard+.
........
Danke im Voraus!

Jan
Hallo Jan,
ich weiss nicht so recht, ob Du Dir da mit dem Gen 4 einen großen Gefallen tust, sorry.
Wir haben jetzt für einen X3-Gen3 ca. 1 Monat gebraucht, um ca. 5 Parameter in die openWB zu bekommen. Hier ging es vor ca. 20 Seiten mal los: viewtopic.php?p=49600#p49600
Dank Peete ist es jetzt gelungen, das Modul anzupassen, da er diesen WR zuhause hat und die Programmierung dafür selbst erstellen konnte.

Da in angekündigter Weise der Gen 4 Daten nicht mehr über LAN liefern kann, können Daten aus ihm nur noch per 2- Draht auf einen Modbus- Netzwerk- Adapter gebracht werden. Von dort übers Netzwerk zur openWB und dann muss dafür wohl ein weiteres Modul mit entspr. Registerauslesung kreiert werden. Sowas macht meist nur Sinn, wenn man es selbst schreiben und an seinem WR testen kann. Ob wiederum die uns bekannten Register dann auch für die Schnittstelle gelten, kann ich nicht sagen.

Indirekte Lösungen gibt es gewiss, Peete hatte es schon angedeutet (EVU-Kit usw.) Bei einer Neuanlage sollte sowas aus einer Hand kommen.
Meine Empfehlung, halte Ausschau nach einem in openWB gängigen Hybrid- WR inkl. EVU- Messung (meist hier verwendet sind SMA, Kostal, SolarEdge und Fronius). Diese sind schon häufig integriert und Du bekommst auch bei Problemen viel nützliche Unterstützung aus dem Forum.
VG

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 9:42 pm
von Peete
Mach den Solax mal nicht so schlecht :)

Ich möchte keinen anderen haben :)

Re: Einbindung vom SolaX Wechselrichter

Verfasst: Fr Dez 10, 2021 9:50 pm
von Peete
Bei meinem Lieferanten bauen und programmieren Sie gerade einen Rundsteuerempfänger für die G4 Solax WR. Dieser greift ebenfalls über RS485 auf die Register zu.

Das wird schon gehen. Im schlimmsten Fall eben noch das EVU Kit.

Re: Einbindung Solax- WR Gen4

Verfasst: Fr Dez 10, 2021 9:51 pm
von HSC
Hey Du... So oft ist er aber (noch) nicht.
Habe ja nur meine ehrliche Sichtweise niedergeschrieben. 🙋‍♂️

Hast Du nochmal in Dein Tageslog geschaut? Sollte seit 12:30 ja eigentlich nach Faktoranpassung besser aussehen, oder?
VG

Re: Einbindung Solax- WR Gen4

Verfasst: Fr Dez 10, 2021 9:53 pm
von HSC
Peete hat geschrieben: Fr Dez 10, 2021 9:50 pm Bei meinem Lieferanten bauen und programmieren Sie gerade einen Rundsteuerempfänger für die G4 Solax WR. Dieser greift ebenfalls über RS485 auf die Register zu.

Das wird schon gehen. Im schlimmsten Fall eben noch das EVU Kit.
Da würde ich schon das 1. Problem sehen, wenn doppelt auf die Schnittstelle zugegriffen werden muss.
VG