NEWS
Eigenverbrauch PV - PIKO
-
dann brauchst du ein anderes Skript
Muss mal zu Hause suchen -
@Homoran sagte in Eigenverbrauch PV - PIKO:
Muss mal zu Hause suchen
Wow, sowas hast Du mal eben so zu Hause
Warte noch auf einen "TTL auf RS485 Adapter" dann wäre mein Versuch ihn über ein Wemos an iobroker zu koppeln.
-
@mkrobe sagte in Eigenverbrauch PV - PIKO:
@Homoran sagte in Eigenverbrauch PV - PIKO:
Muss mal zu Hause suchen
Wow, sowas hast Du mal eben so zu Hause
Warte noch auf einen "TTL auf RS485 Adapter" dann wäre mein Versuch ihn über ein Wemos an iobroker zu koppeln.
nee geht bei mir super mit dem Skript.
Ist aber auch hier aus dem Forum geklautEDIT:
auf die Schnelle gesucht:
https://forum.iobroker.net/topic/8690/status-vom-kostal-wechselrichter-auslesen/64ich hoffe das ist es
-
@Homoran sagte in Eigenverbrauch PV - PIKO:
auf die Schnelle gesucht:
https://forum.iobroker.net/topic/8690/status-vom-kostal-wechselrichter-auslesen/64
ich hoffe das ist esYeah, das geht auf Anhieb!
Alle Werte wie Ertrag,Gesamtertrag, Betriebsstunden etc. erscheinen!Allerdings fehlt noch das, was mich am meisten interessiert:
Die PV-Leistungen der einzelnen Strings. Da wir einen String auf der Nordseite betreiben, würde mich der Ertrag von diesem sehr interessieren.
Angezeigt werden die Netzleistungen, die sich ja auf alle drei Phasen
gleichmäßig verteilt. -
@mkrobe sagte in Eigenverbrauch PV - PIKO:
Die PV-Leistungen der einzelnen Strings
die müssten drin sein, zumindest in meiner Version
muss ich mir zu Hause ansehen.auf der gauge rechts oben sind beide Strings und die Gesamtproduktion (schlecht) zu sehen
Hier aktuell vom Handy
-
@Homoran
Also bei mir sind die Werte in iobroker:
entsprechen im Webinterface diesem:
interessant ist aber die PV-Seite die noch nicht erfasst ist:
-
@mkrobe die sollten drin sein - du hast noch drei Strings
???
meinen alten Piko hat der Soalrteur zerschossen und mir dann den neuen mit nur noch zwei Strings eingebaut -
@Homoran sagte in Eigenverbrauch PV - PIKO:
du hast noch drei Strings ???
Ich brauchte 3 Strings und der Piko 20 hat sie.
Unsere Anlage läuft erst seit 4 Wochen, da will ich natürlich alles genau beobachten... -
@mkrobe Hab mir gerade das Skript angesehen,
die Punkte:
//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
scheinen in den SetStates nicht berücksichtigt zu sein.
Ich muss heute Abend mal nach meiner Version sehenund einen DC3 müsste es auch noch geben -den müsste man dann suchen
-
@Homoran sagte in Eigenverbrauch PV - PIKO:
und einen DC3 müsste es auch noch geben -den müsste man dann suchen
müssten laut google diese IDs sein
6: {dxsId: 33555714 7: {dxsId: 33555713 8: {dxsId: 33555715
-
@Homoran
ja, wäre nett wenn Du mal Zeit dafür hast.Laut Script müssten PV- seitig die Daten zumindes für DC! und DC2 da sein, erscheinen aber nicht.
-
@mkrobe sagte in Eigenverbrauch PV - PIKO:
Laut Script müssten PV- seitig die Daten zumindes für DC! und DC2 da sein,
nein!
siehe meinen Beitrag von eben.das sind nur die Variablen. Diese werden bei dem Skript aber nicht bei SetState benutzt.
-
@Homoran sagte in Eigenverbrauch PV - PIKO:
Diese werden bei dem Skript aber nicht bei SetState benutzt.
Stimmt, zumindest sind sie String1+2 ausgeklammert.
(Sorry, ich hab's nicht so mit Scripten und ohne die Community, die solche zu Verfügung stellt, würde ich sowas nicht auf die Reihe kriegen)
-
@mkrobe sagte in Eigenverbrauch PV - PIKO:
ich hab's nicht so mit Scripten und ohne die Community, die solche zu Verfügung stellt, würde ich sowas nicht auf die Reihe kriegen
ich auch nicht, ich traue mich aber (sicherungskopie vorausgesetzt) in skripten Zeilen zu duplizieren und sie anzupassen
-
@Homoran
... das zumindest versuche ich dann auch.
aber alleine die Variablen in DuckDuckGo zu suchen ...
...wüsste ich erstmal nicht wonach man da sucht -
@mkrobe sagte in Eigenverbrauch PV - PIKO:
wüsste ich erstmal nicht wonach man da sucht
"PIKO"
"ID_DC1Spannung"und erhält:
https://www.msxfaq.de/sonst/iot/kostal15.htm -
-
@mkrobe Hier ist "mein" Skript.
// Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015) //Variable //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 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 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'); createState('Messwerte.0.Solaranlage.Momentanwerte.P3Leistung'); createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1'); createState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2'); createState('Messwerte.0.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_DC3Leistung, 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 || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true); setState('Messwerte.0.Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Status', result[20].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true); setState('Messwerte.0.Solaranlage.Momentanwerte.Leistung_String3', result[23].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;
bitte noch die IP anpassen
ich versuche eben noch "trocken" den String 3 einzubauenEDIT: Done - ohne Gewähr
-
@Homoran sagte in Eigenverbrauch PV - PIKO:
bitte noch die IP anpassen
ich versuche eben noch "trocken" den String 3 einzubauen
EDIT: Done - ohne GewährDanke schonmal!
Script läuft, aber ist eigentlich wie das alte, es werden nur die Leistungswerte "Netzseite" angezeigt, nicht jedoch die Leistungswerte der PV-Strings. -
@mkrobe Wann hast du das Skript genommen?
stand da schon EDIT?ggf. nochmals die Datenpunkte alle löschen und das Skript neu starten