Auslesen der Werte über HTTP

Eigentlich sollte die Kommunikation zwischen Loxone und Kostal Wechselrichtern "out-of-the-box" funktionieren, ist bei mir leider nicht der Fall.

Loxone will scheinbar auch keine Energie in die Weiterentwicklung der Anbindung von Kostal stecken, daher muss man sich nach alternativen Wegen umsehen.
Ich konnte über den integrierten Webserver relativ einfach die Werte des Wechselrichters auslesen und Loxone zur Verfügung stellen, wie das funktioniert, möchte ich hier beschreiben:

Abfragen kann man die Werte über folgende Url: http://<ip des Wechselrichter>/api/dxs.json
An diese Url werden dann die Parameter angehängt, die man erfahren will, zum Beispiel die aktuelle PV Leistung: http://<ip des Wechselrichter>/api/dxs.json?dxsEntries=33556736

Hier eine Auflistung einiger Werte, die der Wechselrichter zur Verfügung stellt:

Titel

Url-Parameter

Einheit

Titel

Url-Parameter

Einheit

Leistungswerte





DC-Leistung

33556736

W

AC-Leistung

67109120

W

PV Gesamtproduktion

251658753

kW

Betriebsstatus

16780032

0 = Aus
1 = Leerlauf
2 = Anfahren
3 = Einspeisen MPP
4 = abgeregelt
5 = Einspeisen
6 = ??
7 = ??
8 = ??


Batterie





Ladezustand

33556229

%

Ladezyklen

33556228

Int

Temperatur

33556227

Grad °

Stromspannung

33556226

V

Stromstärke

33556238

A

Laden/Entladen

33556230

bool

Energieversorger





bezogene Energie
(Hausverbrauch)

83886848

W

Eigenverbrauch

83888128

W

In der Loxone Config legt man nun einen "Virtuellen HTTP Eingang" an und fügt die zusammengebaute URL ein, will man z.B. die Werte Ausgangsleistung und Ladezustand wissen, sieht die URL wie folgt aus:

http://<ip des Wechselrichter>/api/dxs.json?dxsEntries=67109120&dxsEntries=33556229

Innerhalb des Eingangs legt man dann die entsprechenden Befehle "Virtueller HTTP Eingang Befehl" an. Die Befehlserkennung lautet dann: "dxsId":<Url-Parameter>,"value":\v:

Nun kann man den Energiemonitor entsprechend "füllen", wobei man zuvor einige Berechnungen machen muss, bevor man die passenden Werte erhält.

Energiemonitor Eingang Ps

Wir multipizieren Spannung und Stärke des Stroms der Batterie um die Leistung zu erhalten.
Im Viruellen Eingangsbefehl zum Laden/Entladen der Batterie geben wir bei den Eigenschaften im "Zielwert 1" der Korrektur -1 an.
Nun können wir die Leistung der Batterie mit dem Wert aus Laden/Entladen multiplizieren und erhalten entweder eine negative (laden) oder eine positive (entladen) Leistung.
Da das Ergebnis noch in Watt ist, müssen wir das Ganze (z.B. mit einem Skalierer) noch in kW umrechnen, danach landet der Wert dann im Ps Eingang des Energiemonitors.