NEWS
Status vom Kostal Wechselrichter auslesen?
-
Hallo,
Ich würde gerne den Status von meinem Wechselrichter auslesen, weis aber nicht wie.
Im Datenlogger gibt es eine Datei, wie schon mit meinen Ertragsdaten glaube aber nicht das ich den richtigen da rausfischen kann. Weil der nicht immer an der selben Stelle steht
Hat jemand einen Vorschlag
Gruß Stoepselinho
-
Zum Kostal Wechselrichter gibt es hier schon Threads.
Entscheidend ist die Firmwareversion deines Piko.
Im MOment bekomme ich es so hin:
Gruß
Rainer
-
Ich habe einen Kostal 4.2 Ver. 3.76
ich würde gerne die Fehlermeldungen rausbekommen. bzw wann Anfahren, MPP, Leerlauf ist
-
Dann hast du wahrscheinlich noch die alte Oberfläche.
Damit hatte ich es hinbekommen.
http://forum.iobroker.net/viewtopic.php … 993#p84020
Mit der neuen klappt es nicht mehr
Gruß
Rainer
-
ja genau hab die alte Oberfläche.
mit dem Parser Adapter hol ich mir die ganzen Ertragswerte von meinem Suntrol.
-
Dann kannst du ja mit dem Parser auch die Meldungen auslesen, wie ich es in dem Thread beschrieben habe.
Übrigens habe ich auch alle Werte mit dem Parser-Adapter direkt am Piko ausgelesen.
Gruß
Rainer
-
probier ich aus, danke schonmal
-
Klappt soweit gut. Nur bei Störung klappt es wohl wegen dem „Ö“ nicht.
Zeigt der auch bei dir an welche Störung es gibt?
-
Ich hatte auch die Umlaute in dem verlinkten Thread abgefangen.
Es jakte sonst sogar schon beim leerzeichen vom "Einspeisen MPP".
Gruß
Rainer
-
Das hab ich auch gemacht mit den Umlauten klappt trotzdem irgendwie nicht
Hab das so genommen
(?:\s+([a-zA-Z äöüÄÖÜ]+))
-
ich habe inzwischen einen neuen Kostal bekommen, der nicht mehr dieses Webinterface hat, daher kann ich es nicht mehr testen.
In dem verlinkten Thread wird der online regex tester mit diesen Daten gefüttert.
Wie sieht das denn analog bei dir aus?
die Rückgabe der Anfrage in den unteren Kasten kopieren, den regex oben eintragen und das ganze auf javascript einstellen.
Gruß
Rainer
-
hallo,
wenn ich das in regex teste bekomm ich folgendes zurück:
Match 1 Full match 1921-1964 ` Störung Isolationsfehler` Group 1. n/a `Störung Isolationsfehler`
aber komischerweise wird nur St in die Variable geschrieben.
-
Erst mal mein Beileid:
Damit ging bei mir das Problem los.
Bei der Erstuntersuchung hat der Solarteur dann den Kostall gehimmelt und bis heute (nach etwa 2 1/2 Monaten) besteht der Fehler immer noch und alle Panels müssen vom Dach
BTT:
Hast du das im Parser richtig eingegeben?
Gruß
Rainer
-
Hi würde mich mal gerne einklinken.
Ich habe einen neuen Kostal mit der aktuellen Oberfläche beutzte im Moment den VZ zum darstellen meines Verbrauchs.
Ich lese den Kostal mittels PHP aus gibt es eine Möglichkeit das in iobrokerzubekommen.
Gruß Nils
-
Hallo NIls,
zum Auslesen des aktuellen Kostal gibt es hier im Forum ein Skript.
ich habe es noch ein wenig an meine Bedürfnisse angepasst (da ist aber noch viel Luft drin). Leider kommt man an die Fehlermelduungen nicht ran.
Die müsste man über ModBus auslesen. Die dazu notwendigen Informationen würde Kostal auf Anfrage gegen Unterschrift unter ein NDA herausgeben.
Hier "mein" Script:
! ````
// Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
! //Variablen
! //Leistungswerte
ID_DCEingangGesamt = 33556736; // in W
ID_Ausgangsleistung = 67109120; // in W
ID_Eigenverbrauch = 83888128; // in W
//Status
ID_Status = 16780032; // 0:Off
//Statistik - Tag
ID_Ertrag_d = 251658754; // in Wh
ID_Hausverbrauch_d = 251659010; // in Wh
ID_Eigenverbrauch_d = 251659266; // in Wh
ID_Eigenverbrauchsquote_d = 251659278; // in %
ID_Autarkiegrad_d = 251659279; // in %
//Statistik - Gesamt
ID_Ertrag_G = 251658753; // in kWh
ID_Hausverbrauch_G = 251659009; // in kWh
ID_Eigenverbrauch_G = 251659265; // in kWh
ID_Eigenverbrauchsquote_G = 251659280; // in %
ID_Autarkiegrad_G = 251659281; // in %
ID_Betriebszeit = 251658496; // in h
//Momentanwerte - PV Genertor
ID_DC1Spannung = 33555202; // in V
ID_DC1Strom = 33555201; // in A
ID_DC1Leistung = 33555203; // in W
ID_DC2Spannung = 33555458; // in V
ID_DC2Strom = 33555457; // in A
ID_DC2Leistung = 33555459; // in W
//Momentanwerte Haus
ID_HausverbrauchSolar = 83886336; // in W
ID_HausverbrauchBatterie = 83886592; // in W
ID_HausverbrauchNetz = 83886848; // in W
ID_HausverbrauchPhase1 = 83887106; // in W
ID_HausverbrauchPhase2 = 83887362; // in W
ID_HausverbrauchPhase3 = 83887618; // in W
//Netz Netzparameter
ID_NetzAusgangLeistung = 67109120; // in W
ID_NetzFrequenz = 67110400; // in Hz
ID_NetzCosPhi = 67110656;
//Netz Phase 1
ID_P1Spannung = 67109378; // in V
ID_P1Strom = 67109377; // in A
ID_P1Leistung = 67109379; // in W
//Netz Phase 2
ID_P2Spannung = 67109634; // in V
ID_P2Strom = 67109633; // in A
ID_P2Leistung = 67109635; // in W
//Netz Phase 3
ID_P3Spannung = 67109890; // in V
ID_P3Strom = 67109889; // in A
ID_P3Leistung = 67109891; // in W
!
var IPAnlage = '192.168.xxx.yyy/api/dxs.json'; // IP der Photovoltaik-Anlage
! createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d',0);
createState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G',0);
createState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit',0);
createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
createState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch',0);
createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d');
createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', 0);
createState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', 0);
createState('Messwerte.0.Solaranlage.Momentanwerte.P1Spannung');
createState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung');
createState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom');
createState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom');
createState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung');
createState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung');
! var logging = false;
var request = require('request');
! function Piko() {
if (logging) log("Piko 5.5 auslesen");
request('http://' + IPAnlage +
'?dxsEntries=' + ID_DCEingangGesamt +
'&dxsEntries=' + ID_Ausgangsleistung +
'&dxsEntries=' + ID_Eigenverbrauch +
'&dxsEntries=' + ID_Eigenverbrauch_d +
'&dxsEntries=' + ID_Eigenverbrauch_G +
'&dxsEntries=' + ID_Eigenverbrauchsquote_d +
'&dxsEntries=' + ID_Eigenverbrauchsquote_G +
'&dxsEntries=' + ID_Ertrag_d +
'&dxsEntries=' + ID_Ertrag_G +
'&dxsEntries=' + ID_Hausverbrauch_d +
'&dxsEntries=' + ID_Hausverbrauch_G +
'&dxsEntries=' + ID_Autarkiegrad_G +
'&dxsEntries=' + ID_Autarkiegrad_d +
'&dxsEntries=' + ID_Betriebszeit +
'&dxsEntries=' + ID_P1Spannung +
'&dxsEntries=' + ID_P2Spannung +
'&dxsEntries=' + ID_P1Strom +
'&dxsEntries=' + ID_P2Strom +
'&dxsEntries=' + ID_P1Leistung +
'&dxsEntries=' + ID_P2Leistung +
'&dxsEntries=' + ID_Status +
'&dxsEntries=' + ID_DC1Leistung +
'&dxsEntries=' + ID_DC2Leistung,function (error, response, body) { if(!error && response.statusCode ==200) { if(logging) log(body); var result = JSON.parse(body).dxsEntries; setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value); setState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', result[7].value, true); setState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', result[8].value, true); setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value); setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value); setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value); setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value); setState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit', result[13].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P1Spannung', result[14].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung', result[15].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom', result[16].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom', result[17].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung', result[18].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung', result[19].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Status', result[20].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1', result[21].value, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2', result[22].value, true); } else { log("Fehler: " + error + " bei Abfrage von: " + url, "warn"); } });
}
! schedule("*/10 * 5-23 * * *", Piko);
Nur noch die IP deiner Anlage eingeben und ggf. den cron ändern. Der liest im Moment alle 10 Sekunden aus. Gruß Rainer
-
Der Isolationsfehler lässt darauf schließen das ein Stecker abgesoffen ist. Ist zwar übel aber lösbar.
Ich bin mir sicher das ich es richtig eingegeben habe. Hatte es aber nochmal neu eingeben und muss jetzt abwarten.
-
Hallo zusammen.
Ich habe auch einen Kostal Piko 4.2 mit der alten Oberfläche und einen Raspi 3 mit IO Broker.
Kann ich den Parser Adapter auch nutzen um die aktuelle AC Ausgangsleistung des WR in der VIS zu visualisieren?
Wie wäre dann die RegEx?
Danke
Gruß
Käpten Karacho
-
Lässt sich die Firmware des Kostals (bei mir 10.1) eigentlich updaten auf die neue Oberfläche?
Gesendet von meinem Nexus 5X mit Tapatalk
-
Nur durch austausch des Kommunikationsboards
Gruß
Rainer
-
Könntest du mir auf die Sprünge helfen die Werte vom PIKO mit Parser auszulesen?
Ich komme mit den regex noch nicht wirklich klar. Ausgangsleistung zb? Den Status habe ich mit Hilfe von dem anderen Thread hinbekommen, leider hängt es an den Werten.