NEWS
Status vom Kostal Wechselrichter auslesen?
-
@homoran sagte in Status vom Kostal Wechselrichter auslesen?:
<IP>/api/dxs.json?dxsEntries=33555715
nein !! Das ist String 3. Ihr so so verdammt schnell, da komme ich nicht mit
-
@glasfaser sagte in Status vom Kostal Wechselrichter auslesen?:
kommt da nicht 23 , 24 , result 25
eben nicht. das stand darin.
ich habe ja 3 Elemente zugefügt (Spannung, Strom und Leistung)obwohl:
das sind ja nur die IDS, ich hab mir das array gar nicht angesehenEDIT:
du hast recht, es muss doch 25 sein, da Spannung und Strom nicht im array sind- werde ich sofort ändern
-
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
@homoran sagte in Status vom Kostal Wechselrichter auslesen?:
<IP>/api/dxs.json?dxsEntries=33555715
nein !! Das ist String 3. Ihr so so verdammt schnell, da komme ich nicht mit
das war ja auch so geplant!
die Frage war ob die Zahl zuvor die Leistung von String 2 brachte -
@homoran
Sorry, das finde ich nicht mehr raus. -
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
@homoran
Sorry, das finde ich nicht mehr raus.dann nimm mal das Skript aus dem Spoiler, ändere die IP und lass mal laufen.
Triggerst du auch auf Smartmeter?
-
Ich habe das Auslesen des KSEM noch nicht geschafft und war froh, dieses Script zu finden.
Das Problem beim KSEM und dem PIKO ist, dass die Verbindung beider das Auslesen des PIKO via MODBUS verhindert.
Ich habe das Script genommen:
// Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015) //Variable var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen var IPAnlage = url + '/api/dxs.json'; //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 Generator 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 ID_DC3Spannung = 33555714; // in V ID_DC3Strom = 33555713; // in A ID_DC3Leistung = 33555715; // 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 createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0); createState('Solaranlage.Summenwerte.Autarkiegrad_d',0); createState('Solaranlage.Summenwerte.Autarkiegrad_G',0); createState('Solaranlage.Summenwerte.Betriebszeit',0); createState('Solaranlage.Momentanwerte.Status','aus'); createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0); createState('Solaranlage.Momentanwerte.Eigenverbrauch',0); createState('Solaranlage.Summenwerte.Eigenverbrauch_d'); createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0); createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0); createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0); createState('Solaranlage.Summenwerte.Tagesertrag', 0); createState('Solaranlage.Summenwerte.Gesamtertrag', 0); createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0); createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0); createState('Solaranlage.Momentanwerte.P1Spannung'); createState('Solaranlage.Momentanwerte.P2Spannung'); createState('Solaranlage.Momentanwerte.P3Spannung'); createState('Solaranlage.Momentanwerte.P1Strom'); createState('Solaranlage.Momentanwerte.P2Strom'); createState('Solaranlage.Momentanwerte.P3Strom'); createState('Solaranlage.Momentanwerte.P1Leistung'); createState('Solaranlage.Momentanwerte.P2Leistung'); createState('Solaranlage.Momentanwerte.P3Leistung'); createState('Solaranlage.Momentanwerte.Leistung_String1'); createState('Solaranlage.Momentanwerte.Leistung_String2'); createState('Solaranlage.Momentanwerte.Leistung_String3'); 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 + '&dxsEntries=' + ID_P3Spannung + // 23 '&dxsEntries=' + ID_P3Strom + // 24 '&dxsEntries=' + ID_DC3Leistung, //25 function (error, response, body) { if(!error && response.statusCode ==200) { if(logging) log(body); var result = JSON.parse(body).dxsEntries; var Zustand = 'aus'; if (result[20].val == 0) { Zustand = 'aus'; } else if (result[20].value== 1) { Zustand = 'Leerlauf'; } else if (result[20].value == 2) { Zustand = 'Anfahren'; } else if (result[20].value == 3) { Zustand = 'Einspeisen MPP'; } else if (result[20].value == 4) { Zustand = 'Einspeisen abgeregelt'; } else if (result[20].value == 7) { Zustand = 'Isolationsmessung'; } else { Zustand = (String('Code ') + String('' + result[20].value)); } setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true); setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true); setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true); setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true); setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true); setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true); setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true); setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true); setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true); setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true); setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true); setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true); setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true); setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true); setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true); setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true); setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true); setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true); setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true); setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true); setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true); setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true); setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true); setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true); setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true); setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true); } else { log("Fehler: " + error + " bei Abfrage von: " + url, "warn"); } }); } schedule("*/11 * 5-23 * * *", Piko); //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
Leider fehlen immer noch die Werte für den String 3:
-
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
Leider fehlen immer noch die Werte für den String 3:
keine Fehler im log?
oder triggert das Skript bei dir gar nicht?
@homoran sagte in Status vom Kostal Wechselrichter auslesen?:
Triggerst du auch auf Smartmeter?
-
@homoran
Hier Log:javascript.0 2021-10-04 17:12:11.050 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:12:00.130 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:11:55.048 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:11:44.048 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:11:33.057 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:11:22.049 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:11:11.051 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:11:00.119 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:10:55.048 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:10:44.049 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:10:33.049 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:10:22.049 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:10:11.051 error Error in request callback: TypeError: Cannot read property 'value' of undefined
-
das nutzt nicht viel.
bitte Adapter auf logstufe debug stellen und/oder im logfenster unter dem Skript im Editor nachsehenund die Frage nach dem Trigger bitte endlich beantworten
-
@homoran
Der Javascript Adapter läuft auf debug. Das Script triggert im Sekundenrythmus, die Werte werden geliefert.
Im Log ändert sich trotz Debug nichts.ipt.0 2021-10-04 17:17:55.048 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:17:44.050 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:17:33.124 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:17:22.050 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:17:11.050 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:17:00.138 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:16:55.051 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:16:44.052 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:16:33.050 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:16:22.053 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:16:11.049 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:16:00.116 error Error in request callback: TypeError: Cannot read property 'value' of undefined javascript.0 2021-10-04 17:15:55.051 error Error in request callback: TypeError: Cannot read property 'value' of undefined
Im Script-Editor kommt kein Fehler:
-
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
Im Script-Editor kommt kein Fehler:
und was ist das für eine rote Welle am oberen Rand des Screenshots?
-
Markierungen im Script-Editor:
-
@martybr lass dir doch nicht alles aus der Nase ziehen!
was steht dann im mouse over, wenn du mit der Maus über die Welle gehst
-
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
@homoran sagte in Status vom Kostal Wechselrichter auslesen?:
<IP>/api/dxs.json?dxsEntries=33555715
nein !! Das ist String 3. Ihr so so verdammt schnell, da komme ich nicht mit
Bei 33555715
Ist eigentlich dort ein Ergebniss gekommen !?
-
Cannot find name "ID_Eigenverbrauch_d"
Das steht bei jeder Variable.
Auch in dem Original-Script, dass einwandfrei funktioniert.
Sorry, ich bin in Scripting nicht so versiert. Habe dein Script genommen, es funktioniert, es fehlen nur die Werte für den String 3.
-
@glasfaser sagte in Status vom Kostal Wechselrichter auslesen?:
Bei 33555715
steht zumindest im code, den er gepostet hat
-
@glasfaser
Ja, der Aufruf liefert genau den fehlenden Wert für den String 3.{"dxsEntries":[{"dxsId":33555715,"value":137.251205}],"session":{"sessionId":0,"roleId":0},"status":{"code":0}}
-
@martybr
Hier der Piko (zeitlich versetzt): -
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
Habe dein Script genommen, es funktioniert,
wirklich?
ich sehe nur rot@Glasfaser
kannst du damit was anfangen?muss da etwa jedesmal ein
var
oderconst
davor? -
ich importier es mal bei mir .. warte mal .
@martybr sagte in Status vom Kostal Wechselrichter auslesen?:
Leider fehlen immer noch die Werte für den String 3:
Ich hatte die Tage auch einen blöden Fehler mit (null) , erst beim erneuten Admin Anmelden waren dort Werte enthalten .