Seite 13 von 35
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 7:57 pm
von arauhut
aiole hat geschrieben: ↑Mo Dez 06, 2021 7:43 pm
arauhut hat geschrieben: ↑Mo Dez 06, 2021 4:45 pm
aiole hat geschrieben: ↑Mo Dez 06, 2021 3:53 pm
.......
Guck' mal auf die Statusseite im openWB-GUI (rot = EVU-Werte).
Meinst Du das ? 2021-12-06 openWB Status EVU.jpg
ja
Wieso hast Du da keine Werte?
Gute Frage, die ich der Community schon hier stellte.
Habe mit @HSC per PN darüber diskutiert, ihm die Screenshots gesandt und genau das stellte er auch fest.
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 8:29 pm
von Peete
Weil die Frequenz nicht passt.
Modul muss angepasst werden (/var/www/html/openWB/modules/bezug_solax/solax.py):
Code: Alles auswählen
alt: frequenz = unsigned16(resp,7) / 100
neu: frequenz = unsigned16(resp,189) / 100
print (frequenz)
f = open('/var/www/html/openWB/ramdisk/evuhz', 'w')
f.write(str(frequenz))
f.close()
Warum steht jetzt hier
Im Solax Modbus PDF ist folgendes zu finden:
GridFrequency(X1) = Register hex 0x0007 / dez 7
GridFrequency_R(X3) = Register hex 0x006D / dez 109
GridFrequency_S(X3) = Register hex 0x0071 / dez 113
GridFrequency_T(X3) = Register hex 0x0075 / dez 117
GridFrequency = Register hex 0x00BD / dez 189
GridFrequency(X1) ist die Frequenz vom einphasigen Wechselrichter. Sobald ein X3 das Modul nutzt, kommt Wert 0 zurück.
GridFrequency_R / S / T sind die Frequenzen vom 3 phasigen Wechselrichter.
GridFrequency ist der einzige Wert, der vom 3ph Zähler an den WR übermittelt wird und über die 502 zu openWB kommt. Also der wirkliche EVU Hz Wert.
openWB hat geschrieben: ↑So Dez 05, 2021 11:09 am
Das hatte ich schonmal.
Komisch ist das da nichts kommt.
Ausgelesen werden 70, 72,74 (Dec), das entspricht den 0x0046 / 0x0048 / 0x004a aus der Doku.
Komisch das 2 der Werte gehen.
Kannst Du das bitte anpassen. Ich habe es HSC bereits gezeigt.
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 9:02 pm
von aiole
arauhut hat geschrieben: ↑Mo Dez 06, 2021 7:57 pm
Gute Frage, die ich der Community schon hier stellte.
Habe mit @HSC per PN darüber diskutiert, ihm die Screenshots gesandt und genau das stellte er auch fest.
Na ja - aktuell bekommt der wichtigste Messpunkt (EVU) keine Werte. Das versuchen die Kollegen über die Registeraufschlüsselungen hinzubekommen (Auslesung über WR). Ich blicke hier aber zugegebenermaßen hier nicht mehr ganz durch.
Normalerweise läuft es so:
EVU-Zähler liefert über eine Datenleitung (RS485 oder LAN) Werte an Deinen WR (1). Die WR-Daten (PV-Erzeugung) stellt der WR selbst bei.
OWB greift nun auf den WR per LAN zu und holt sich EVU- und PV-Daten ab.
Jetzt kommt aber noch ein 2. WR bei Dir hinzu, wo ich nicht weiß, wie der die Daten abgeben soll. Am besten wäre, wenn er sie an WR1 übergibt.
Vor allem blicke ich noch nicht, worum ein extra Zähler (SDM630) verwendet werden soll. Messen denn beide WR die PV-Werte nicht intern selbst?
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 9:03 pm
von Peete
Hier noch der Beweis:
Und so sieht die Datei jetzt aus
Andreas (arauhut) sieht dann auch die EVU Werte, wenn Register 189 genommen wird.
Er hat dann aber immer noch das Problem, dass der PV Wert von WR X3-Mic nicht übermittelt wird. Das kann aber nicht vom openWB Support gelöst werden. Der integrierte LAN Anschluss am X3-Hybrid liefert die Modbus Werte, der Dongle schickt die Daten an die Cloud und der X3-Mic kann kein Modbus, da schickt der Dongle auch die Werte in die Cloud. Die Cloud kaskadiert dann beide Wechselrichter und zeigt mit 5 Minuten versatz den richtigen PV Wert an.
Er muss jetzt den X3-Mic irgendwie an die openWB bekommen. Entweder wie im Handbuch beschrieben über die RS485 Schnittstelle, oder über einen 2. SDM (wie HSC schon ausgeführt hat).
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 9:06 pm
von HSC
Dank @Peete ist das Problem entschlüsselt.
Nur wenn die Frequenz korrekt in openWB eingelesen werden kann, werden die aktuellen EVU- Watt auch verarbeitet.
Bislang wurde im Solax- Modul nur die WR- Frequenz vom 1p- X1 verwendet (dez 007), nicht von EVU. Deshalb wird vom 3p-X3 nichts sichtbar.
Richtigerweise muss die EVU- Frequenz (dez 189) verwendet werden, dann kommen auch die EVU- Watt über den X3.
VG
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 9:11 pm
von HSC
aiole hat geschrieben: ↑Mo Dez 06, 2021 9:02 pm
.....
Jetzt kommt aber noch ein 2. WR bei Dir hinzu, wo ich nicht weiß, wie der die Daten abgeben soll. Am besten wäre, wenn er sie an WR1 übergibt.
Vor allem blicke ich noch nicht, worum ein extra Zähler (SDM630) verwendet werden soll. Messen denn beide WR die PV-Werte nicht intern selbst?
Der 2.WR wird AC- seitig über einen 2. SDM (ID 002) am Modbus des 1. WR bzw. 1. SDM für EVU mit in den 1. WR eingelesen. Darüber sollten dann (später, da 2.SDM noch nicht installiert) auch die PV- Daten vom 2. WR direkt kommen.
Falls nicht, kann das PV1- Modul um die entspr. Register erweitert werden.
VG
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Mo Dez 06, 2021 9:40 pm
von HSC
Peete hat geschrieben: ↑Mo Dez 06, 2021 7:36 pm
Ich habe die modules/speicher_solax/solax.py erweitert.
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()
das kam noch hinzu:
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()
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
....mit dem Korrektur- Faktor ×100 sollte das passen. Das hatte ich schon mehrmals in dieser Art gesehen....
VG
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Di Dez 07, 2021 5:53 am
von openWB
Lasst zunächst den zweiten WR bitte mal Weg, ich glaube der verwirrt nur und ist für die Funktion unerheblich.
@peete
Wenn ich dich richtig verstanden hab brauchen wir schlicht 2 Varianten, die derzeitige Auselsung und die mit den anderen Registern, korrekt?
Wäre es auch damit getan wenn die extra Dongle nicht genutzt würden?
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Di Dez 07, 2021 6:40 am
von HSC
openWB hat geschrieben: ↑Di Dez 07, 2021 5:53 am
Lasst zunächst den zweiten WR bitte mal Weg, ich glaube der verwirrt nur und ist für die Funktion unerheblich.
@peete
Wenn ich dich richtig verstanden hab brauchen wir schlicht 2 Varianten, die derzeitige Auselsung und die mit den anderen Registern, korrekt?
Wäre es auch damit getan wenn die extra Dongle nicht genutzt würden?
GuMo,
ich antworte mal für Peete, da er ggf. schon unterwegs ist. Wir hatten gestern abend telefoniert. Peete hat bei sich auch den X3 und anfänglich das gleiche Problem, bis er auf "189" geändert hat.
Es wird im Modul für alle WR (X1 & X3) nicht die "dec 7" benötigt, da diese nur die erzeugte WR- Frequenz darstellt (indirekte EVU- f). Analog wären dies im 3p- X3 die "dec 109, 113, & 117".
Für alle WR ist die direkte EVU- Frequenz mit "dec 189" verfügbar. Nur damit kommen die aktuellen Watt in openWB an.
Es braucht eigentlich keine 2 Varianten, entscheide bitte selbst.
Sehr gut wäre auch die gleichzeitige Implementierung der im- und exportierten Speicher kWh für die Tagessummen. Siehe hier:
viewtopic.php?p=51859#p51859
Ja, PV vom 2. WR bleibt z. Zt. aussen vor, erstmal soll EVU korrekt laufen.
Und die Dongle finden für uns hier auch keine Anwendung. Ob @arahut sie später noch für seine Cloud nutzen möchte, kann er dann entscheiden...
VG
Edit: noch ne' Frage zur Frequenz- Verarbeitung:
Steckt da im Modul eine Sicherheitsabfrage drin?
Also, "verarbeite nur die aktuellen Watt, wenn die Frequenz vorhanden ist"??
Vielen Dank
Re: Einbindung vom SolaX Wechselrichter
Verfasst: Di Dez 07, 2021 6:56 am
von openWB
Wenn „einfach“ die Register geändert werden wird das aber in Folge in irgendeiner anderen Konstellation nicht mehr funktionieren.
Ich würde halt gerne wissen welche das ist.