Einbindung vom SolaX Wechselrichter
Re: Einbindung vom SolaX Wechselrichter
Was ich überhaupt nicht verstehe: Der Solax X3 hat einen integrierten LAN Anschluß und Du steckst noch einen extra Solax Pocket LAN Dongle rein.
Der Solax Pocket LAN Dongle ist aus meiner Sicht nur für Solax WR ohne integrierten LAN Anschluß notwendig.
Zum Beispiel haben die einfachen X1 Wechselrichter nur einen CAN Anschluß, aber keinen LAN. Da muss dann der Dongle benutzt werden.
Also den Dongle abziehen!
Bei mir kommuniziert der Solax X3 nur über den integrierten LAN Anschluß mit der Solax Cloud und ich frage über openWB zusätzlich die Register über 502 ab.
Also Dongle ab Das hast Du bisher anscheinend nicht gemacht.
Der Solax Pocket LAN Dongle ist aus meiner Sicht nur für Solax WR ohne integrierten LAN Anschluß notwendig.
Zum Beispiel haben die einfachen X1 Wechselrichter nur einen CAN Anschluß, aber keinen LAN. Da muss dann der Dongle benutzt werden.
Also den Dongle abziehen!
Bei mir kommuniziert der Solax X3 nur über den integrierten LAN Anschluß mit der Solax Cloud und ich frage über openWB zusätzlich die Register über 502 ab.
Also Dongle ab Das hast Du bisher anscheinend nicht gemacht.
openWB series2 standard+
Re: Einbindung vom SolaX Wechselrichter
Wir brauchen 2 verschiedene Module und zusätzlich stimmt das aktuelle Solax Modul nicht.
Es gibt den Solax X1 und den Solax X3.
Beim X1 ist zum Beispiel die WR Frequenz auf der 7 und beim X3 auf der 109, 113 und 117. Im Dokument ist die 7 = 0x0007 und die 109 = 0x006D.
Da es sich um die Frequenz vom WR handelt und nicht vom EVU, muss die 0x00BD (dez 189) GridFrequency verwendet.
Änderungen im Modul bezug_solax/solax.py
Frequenz:
von auf
Das passt schon mal.
Ich habe hier einen Carlo Gavazzi. Dieser versorgt den Solax mit Daten über RS485.
Davor hängt noch ein SDM630. Dessen Werte hole ich mit einem Raspberry und FHEM über einen RS485 USB Adapter ab.
Somit kann ich schön vergleichen.
Werte, die ich aus dem Solax X3 bekomme (EVU):
FeedinPower_Rphase(X3) = -160
FeedinPower_Sphase(X3) = 70
FeedinPower_Tphase(X3) = 52
Werte, die der SDM630 anzeigt
HA_SDM630M_1:Power_L1__W = 160
HA_SDM630M_1:Power_L2__W = -71
HA_SDM630M_1:Power_L3__W = -52
Welche Werte brauchen wir in openWB, damit das alles gut funktioniert? Ich suche dann die Register raus und übersetze sie in Dezimal.
Komisch ist, dass auf dem Display der openwb series 2 die EVU Werte angezeigt werden, aber über die index.php nicht.
Zu Arauhut seinem Fall. Er hat einen X1 und einen X3. Deshalb brauchen wir 2 verschiedene Module, da die Register andere sind.
Edit: Er hat keinen X1. Hatte ich falsch verstanden. Ich habe ihn angerufen. Nur der X3 Hybrid liefert Daten über 502.
Ist aber auch egal. Wir brauchen 2 Module
Es gibt den Solax X1 und den Solax X3.
Beim X1 ist zum Beispiel die WR Frequenz auf der 7 und beim X3 auf der 109, 113 und 117. Im Dokument ist die 7 = 0x0007 und die 109 = 0x006D.
Da es sich um die Frequenz vom WR handelt und nicht vom EVU, muss die 0x00BD (dez 189) GridFrequency verwendet.
Änderungen im Modul bezug_solax/solax.py
Frequenz:
von
Code: Alles auswählen
frequenz = unsigned16(resp,7) / 100
Code: Alles auswählen
frequenz = unsigned16(resp,189) / 100
Ich habe hier einen Carlo Gavazzi. Dieser versorgt den Solax mit Daten über RS485.
Davor hängt noch ein SDM630. Dessen Werte hole ich mit einem Raspberry und FHEM über einen RS485 USB Adapter ab.
Somit kann ich schön vergleichen.
Werte, die ich aus dem Solax X3 bekomme (EVU):
FeedinPower_Rphase(X3) = -160
FeedinPower_Sphase(X3) = 70
FeedinPower_Tphase(X3) = 52
Werte, die der SDM630 anzeigt
HA_SDM630M_1:Power_L1__W = 160
HA_SDM630M_1:Power_L2__W = -71
HA_SDM630M_1:Power_L3__W = -52
Welche Werte brauchen wir in openWB, damit das alles gut funktioniert? Ich suche dann die Register raus und übersetze sie in Dezimal.
Komisch ist, dass auf dem Display der openwb series 2 die EVU Werte angezeigt werden, aber über die index.php nicht.
Zu Arauhut seinem Fall. Er hat einen X1 und einen X3. Deshalb brauchen wir 2 verschiedene Module, da die Register andere sind.
Edit: Er hat keinen X1. Hatte ich falsch verstanden. Ich habe ihn angerufen. Nur der X3 Hybrid liefert Daten über 502.
Ist aber auch egal. Wir brauchen 2 Module
Zuletzt geändert von Peete am Mo Dez 06, 2021 4:21 pm, insgesamt 1-mal geändert.
openWB series2 standard+
-
- Beiträge: 7747
- Registriert: Mo Okt 08, 2018 4:51 pm
- Has thanked: 18 times
- Been thanked: 33 times
Re: Einbindung vom SolaX Wechselrichter
Danke für Deinen input. Das sieht doch schon mal erbaulich aus.
Guck' mal auf die Statusseite im openWB-GUI (rot = EVU-Werte).
Re: Einbindung vom SolaX Wechselrichter
Sein 2.WR wird erst noch über einen SDM eingebunden, und zwar siehe hier:viewtopic.php?p=50468#p50468Peete hat geschrieben: ↑Mo Dez 06, 2021 3:43 pm Wir brauchen 2 verschiedene Module und zusätzlich stimmt das aktuelle Solax Modul nicht.
Es gibt den Solax X1 und den Solax X3.
Beim X1 ist zum Beispiel die WR Frequenz auf der 7 und beim X3 auf der 109, 113 und 117. Im Dokument ist die 7 = 0x0007 und die 109 = 0x006D.
Da es sich um die Frequenz vom WR handelt und nicht vom EVU, muss die 0x00BD (dez 189) GridFrequency verwendet.
Änderungen im Modul bezug_solax/solax.py
Frequenz:
vonaufCode: Alles auswählen
frequenz = unsigned16(resp,7) / 100
Das passt schon mal.Code: Alles auswählen
frequenz = unsigned16(resp,189) / 100
Ich habe hier einen Carlo Gavazzi. Dieser versorgt den Solax mit Daten über RS485.
Davor hängt noch ein SDM630. Dessen Werte hole ich mit einem Raspberry und FHEM über einen RS485 USB Adapter ab.
Somit kann ich schön vergleichen.
Werte, die ich aus dem Solax X3 bekomme (EVU):
FeedinPower_Rphase(X3) = -160
FeedinPower_Sphase(X3) = 70
FeedinPower_Tphase(X3) = 52
Werte, die der SDM630 anzeigt
HA_SDM630M_1:Power_L1__W = 160
HA_SDM630M_1:Power_L2__W = -71
HA_SDM630M_1:Power_L3__W = -52
Welche Werte brauchen wir in openWB, damit das alles gut funktioniert? Ich suche dann die Register raus und übersetze sie in Dezimal.
Komisch ist, dass auf dem Display der openwb series 2 die EVU Werte angezeigt werden, aber über die index.php nicht.
Zu Arauhut seinem Fall. Er hat einen X1 und einen X3. Deshalb brauchen wir 2 verschiedene Module, da die Register andere sind.
...und kann vermutlich mit diesen Registern als 2. WR im PV1- Modul eingebunden werden:
download/file.php?id=9183&mode=view
Hier hatte ich zum EVU schon was geschrieben, warum vermutlich zur Zeit keine Leistung kommt und wie sie künftig gelesen werden könnte.
viewtopic.php?p=51779#p51779
VG
Re: Einbindung vom SolaX Wechselrichter
Durch die Änderung der Frequenz zeigt er mir nun den Import/Export (Netzbezug).
Im Status erhalte ich bei EVU folgende Werte:
Gesamtleistung [W] 12 (Imp.)
Bezug [kWh] 0,816
Einspeisung [kWh] 2,639
Frequenz [Hz] 49
Schieflast [A] 0
Die Werte für Phase 1 bis 3 sind alle 0.
Ich hab noch mal aufgelistet, wo ich mit meinem Modbus Tool passende Werte auslesen konnte (alles bezogen auf EVU):
Spannung [V] = GridVoltage (0x00BA)
Stromstärke [A] = Liefert der X3 nicht über Modbus
Leistung [W] = FeedinPower_Rphase(X3) / FeedinPower_Sphase(X3) / FeedinPower_Tphase(X3)
Power Faktor = Habe ich noch nicht geprüft.
GridVoltage_R(X3) / GridVoltage_S(X3) / GridVoltage_R(X3) sind die Werte vom WR für das PV Modul.
openWB series2 standard+
Re: Einbindung vom SolaX Wechselrichter
Meinst Du das ?
Grüße aus Kassel - Andreas
openWB series2 standard SW1.9 - Skoda Enyaq iV60 + Renault Zoe + SolaX X3-Hybrid-10.0-T-D + X3-Mic-6.0-T-D Wechselrichter (Gen 3) + HomeAssistant
openWB series2 standard SW1.9 - Skoda Enyaq iV60 + Renault Zoe + SolaX X3-Hybrid-10.0-T-D + X3-Mic-6.0-T-D Wechselrichter (Gen 3) + HomeAssistant
Re: Einbindung vom SolaX Wechselrichter
Peete hat geschrieben: ↑Mo Dez 06, 2021 10:58 am Was ich überhaupt nicht verstehe: Der Solax X3 hat einen integrierten LAN Anschluß und Du steckst noch einen extra Solax Pocket LAN Dongle rein.
Der Solax Pocket LAN Dongle ist aus meiner Sicht nur für Solax WR ohne integrierten LAN Anschluß notwendig.
Zum Beispiel haben die einfachen X1 Wechselrichter nur einen CAN Anschluß, aber keinen LAN. Da muss dann der Dongle benutzt werden.
Also den Dongle abziehen!
Bei mir kommuniziert der Solax X3 nur über den integrierten LAN Anschluß mit der Solax Cloud und ich frage über openWB zusätzlich die Register über 502 ab.
Also Dongle ab Das hast Du bisher anscheinend nicht gemacht.
Bitte korrigiert mich, aber meines Wissens nach
- kommunizieren die WR über die Dongles mit der Cloud,
- kann der SolaX Service-Techniker darüber auf das Gerät zugreifen
- gleicht der 2.WR (X3-Mic-6.0) seine PV Daten mit dem 1.WR (X3-Hybrid-10.0) ab, damit dieser die Ladung des Haus-Speichers steuern kann.
Mein Wunsch ist es natürlich, EVU-Werte, PV-Ladung und Speicherladung ausschließlich in openWB darzustellen.
Sobald das geht, überlege ich mir sicherlich, die Dongles zu entfernen.
Bis dahin stören Sie mich nicht, im Gegenteil, es ist die einzige Möglichkeit, in der Cloud die gesamte PV-Leistung zu sehen.
Grüße aus Kassel - Andreas
openWB series2 standard SW1.9 - Skoda Enyaq iV60 + Renault Zoe + SolaX X3-Hybrid-10.0-T-D + X3-Mic-6.0-T-D Wechselrichter (Gen 3) + HomeAssistant
openWB series2 standard SW1.9 - Skoda Enyaq iV60 + Renault Zoe + SolaX X3-Hybrid-10.0-T-D + X3-Mic-6.0-T-D Wechselrichter (Gen 3) + HomeAssistant
Re: Einbindung vom SolaX Wechselrichter
Soweit ist alles richtig verstanden, die Dongle sind für openWB uninteressant.
Nur
Dein 2. WR ist z. Zt. nicht im 1. WR eingebunden.
Die Steuerung für den Speicher erfolgt allein nur über die EVU- Daten vom Hybrid- WR.
Im Prinzip so, wie die openWB die EV- Ladung nur anhand der EVU- Daten steuert. PV- Daten sind nur kosmetischer Natur, wenn EVU vorhanden.
VH
Nur
ist so nicht richtig.gleicht der 2.WR (X3-Mic-6.0) seine PV Daten mit dem 1.WR (X3-Hybrid-10.0) ab, damit dieser die Ladung des Haus-Speichers steuern kann."
Dein 2. WR ist z. Zt. nicht im 1. WR eingebunden.
Die Steuerung für den Speicher erfolgt allein nur über die EVU- Daten vom Hybrid- WR.
Im Prinzip so, wie die openWB die EV- Ladung nur anhand der EVU- Daten steuert. PV- Daten sind nur kosmetischer Natur, wenn EVU vorhanden.
VH
Re: Einbindung vom SolaX Wechselrichter
Ich habe die modules/speicher_solax/solax.py erweitert.
Nun zeigt openWB auch an, wieviel kWh dem Speicher zugeführt und entnommen wurden.
Von
das kam noch hinzu:
Ist das so richtig mit den * 100. Die Werte passen.
Vorher stand es so da:
Speicher: -233 W (0,00 kWh I) (0,00 kWh E) - Ladestand: 20 %
Jetzt:
Speicher: -235 W (0,10 kWh I) (5,90 kWh E) - Ladestand: 20 %
In der Ramdisk sind die Werte wie folgt:
speicherekwh = 5900
speicherikwh = 100
Nun zeigt openWB auch an, wieviel kWh dem Speicher zugeführt und entnommen wurden.
Von
Code: Alles auswählen
#!/usr/bin/python
import sys
# import os
# import time
# import getopt
# import socket
# import struct
# import binascii
from pymodbus.client.sync import ModbusTcpClient
def unsigned16(result, addr):
return result.registers[addr]
def signed16(result, addr):
val = result.registers[addr]
if val > 32767:
val -= 65535
return val
ipaddress = str(sys.argv[1])
client = ModbusTcpClient(ipaddress, port=502)
resp=client.read_input_registers(0, 114)
# Batterie Power
value1 = signed16(resp, 22)
f = open('/var/www/html/openWB/ramdisk/speicherleistung', 'w')
f.write(str(value1))
f.close()
# Batterieladezustand
value2 = unsigned16(resp, 28 )
f = open('/var/www/html/openWB/ramdisk/speichersoc', 'w')
f.write(str(value2))
f.close()
Code: Alles auswählen
# Batterie entladen
value3 = unsigned16(resp, 32 ) * 100
f = open('/var/www/html/openWB/ramdisk/speicherekwh', 'w')
f.write(str(value3))
f.close()
# Batterie geladen
value4 = unsigned16(resp, 35 ) * 100
f = open('/var/www/html/openWB/ramdisk/speicherikwh', 'w')
f.write(str(value4))
f.close()
Vorher stand es so da:
Speicher: -233 W (0,00 kWh I) (0,00 kWh E) - Ladestand: 20 %
Jetzt:
Speicher: -235 W (0,10 kWh I) (5,90 kWh E) - Ladestand: 20 %
In der Ramdisk sind die Werte wie folgt:
speicherekwh = 5900
speicherikwh = 100
openWB series2 standard+
-
- Beiträge: 7747
- Registriert: Mo Okt 08, 2018 4:51 pm
- Has thanked: 18 times
- Been thanked: 33 times