NEWS
IOBroker Anbindung an einen Kostal Plenticore
-
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
Was kann ich tun, um nicht erst Storm einzuspeisen und später dann wieder kaufen zu müssen, wobei der Speicher währenddessen max. 50% voll war?
Leider leider hat der Adapter damit nichts zu tun. Das macht die KOSTAL Logik
-
@homeuser Wenn auf Grund von mehreren Tagen ohne Sonne die Batterie im Ruhemodus 2 ist, wird weder ent- noch aufgeladen. Das kann man in der Kostal App sehen. Nach einigen Sonnenstunden schaltet der Kostal dann wieder in einen anderen Modus um.
-
@strathcole said in IOBroker Anbindung an einen Kostal Plenticore:
Leider leider hat der Adapter damit nichts zu tun. Das macht die KOSTAL Logik
Dann verstehe ich wohl nach und nach, was der Adapter tut und was nicht.
Aber könnte man die Kostal-Logik nicht auch mit den Adapter verbessern (bzw. austricksen), wenn man bei einem solchen Forecast den MinSoc dynamisch sehr weit hoch setzt und damit den Wechselricht motiviert lieber den Speicher zu laden? -
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
@strathcole said in IOBroker Anbindung an einen Kostal Plenticore:
Leider leider hat der Adapter damit nichts zu tun. Das macht die KOSTAL Logik
Dann verstehe ich wohl nach und nach, was der Adapter tut und was nicht.
Aber könnte man die Kostal-Logik nicht auch mit den Adapter verbessern (bzw. austricksen), wenn man bei einem solchen Forecast den MinSoc dynamisch sehr weit hoch setzt und damit den Wechselricht motiviert lieber den Speicher zu laden?Leider nein. Das würde vermutlich noch mehr Probleme schaffen als lösen.
- Würde er dann vermutlich die komplette PV-Leistung in die Batterie schieben und den Hausverbauch aus dem Netz holen
- Würde er bei Verbrauchspeaks (Kochen, Waschen etc.) die Batterie nicht verwenden und auch aus dem Netz ziehen
Die einzige Möglichkeit, dieses Problem zu meistern, wäre eine Steuerung via Modbus bei aktivierter "Externe Steuerung"-Option (kann nur der Installateur).
-
@homeuser Kannst du denn vielleicht mal den Datenpunkt
plenticore.0.devices.local.battery.SmartBatteryControl
in den History- oder Influx-Adapter packen und schauen, wie er vom Adapter gesteuert wird?
Wenn ich es recht im Kopf habe, sollte der Adapter den bei schlechter Prognose eigentlich auffalse
setzen, was wiederum (eigentlich!) dazu führt, dass auch der WR die Batterie immer bei Überschuss lädt und nicht einspeist.Allerdings ist es, wie @hal schon sagte. Wenn die Batterie im Ruhemodus 2 ist, dann wird sie gar nicht geladen, egal was man macht. Den Batterieruhemodus kann auch nur der Installateur zwangsweise zurücksetzen.
-
@strathcole Ich habe es im History-Adapter dazugefügt. Mal sehen, wann mal wieder Sonne kommt. Wo finde ich die Info zum Ruhemodus 2? Ich habe die Info schon mal gesehen, finde sie aber nicht mehr
-
@homeuser said in IOBroker Anbindung an einen Kostal Plenticore:
Wo finde ich die Info zum Ruhemodus 2? Ich habe die Info schon mal gesehen, finde sie aber nicht mehr
Habe die Info doch gefunden im Wechselrichter. Die Info dort ist
Batteriestatus NormalKann der Speicher überhaupt in Ruhemodus gewesen sein, wenn der Verlauf am Tag davor so war?
-
@StrathCole Nachdem ich bisher den ModBus Adapter erfolgreich eingesetzt habe, bin ich gestern auf deinen Kostal Plenticore API Adapter gestoßen. Ich habe ihn installiert und es hat alles problemlos geklappt. Danke für den tollen Adapter !!! Die Daten stelle ich mit der iQontrol Vis und Graphana dar.
Mit dem Wetter habe ich eine Schwierigkeit: Unter forecast / city bekomme ich "sophienhoehe" angezeigt.
Wie kann ich meinen Standort " Bad Harzburg" eingeben? -
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
Habe die Info doch gefunden im Wechselrichter. Die Info dort ist Batteriestatus Normal
Ja, der aktuelle Status sagt nicht (mehr) viel aus, wie der Status die Tage davor war.
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
Kann der Speicher überhaupt in Ruhemodus gewesen sein, wenn der Verlauf am Tag davor so war?
Ja. Kann sein, denn der Ruhemodus wird nach bestimmten (unbekannten) Regeln ein- und ausgeschaltet. Es gibt zwar grobe Regeln, die man in der Anleitung vom WR lesen kann, aber wann genau welcher Ruhemodus aktiv wird, ist schwer zu sagen. Es kann aber durchaus sein, dass es je nach Wetter mehrere Tage mit etwas Sonne braucht, bis er wieder aus ist.
-
@garbracht sagte in IOBroker Anbindung an einen Kostal Plenticore:
@StrathCole Nachdem ich bisher den ModBus Adapter erfolgreich eingesetzt habe, bin ich gestern auf deinen Kostal Plenticore API Adapter gestoßen. Ich habe ihn installiert und es hat alles problemlos geklappt. Danke für den tollen Adapter !!!
Freut mich
Mit dem Wetter habe ich eine Schwierigkeit: Unter forecast / city bekomme ich "sophienhoehe" angezeigt.
Wie kann ich meinen Standort " Bad Harzburg" eingeben?Leider gar nicht. Dieser Standort wird nur informationshalber ausgegeben und ist der, der anhand der Webseite Kachelmannwetter und deiner Koordinaten, die du im ioBroker hinterlegt hast, als Basis genommen wird. Du kannst das auch prüfen, indem du direkt auf die Kachelmann Seite gehst und dort deinen Ort angibst.
Diese Info wird aber nur für Kachelmann genutzt und nicht für die Übrigen Forecast-Quellen. Dort wird dein Standort nach Länge und Breite genutzt. -
@strathcole said in IOBroker Anbindung an einen Kostal Plenticore:
@homeuser Kannst du denn vielleicht mal den Datenpunkt
plenticore.0.devices.local.battery.SmartBatteryControl
in den History- oder Influx-Adapter packen und schauen, wie er vom Adapter gesteuert wird?
Wenn ich es recht im Kopf habe, sollte der Adapter den bei schlechter Prognose eigentlich auffalse
setzen, was wiederum (eigentlich!) dazu führt, dass auch der WR die Batterie immer bei Überschuss lädt und nicht einspeist.Heute war ein Tag mit anfangs Sonne, so dass ich Infos sammeln konnte.
Das Chart mit SmartBatteryControl
Außerdem habe ich zwischendurch aufgeschrieben wieder das Ladzustand des Speicher war und ob geladen wurde, verbraucht oder eingespeist (war blöd, dass ich es nicht im History aktiviert hatte; mache ich für morgen).
Um 12:10 Uhr habe ich den Batteriestatus angeschaut. Der stand auf "Normal".
Morgen ist wieder Sonne. Dann kann ich weiter aufzeichnen was wann wo passiert. Ich würde jetzt mal noch den Stand Speicherladung, Verbrauch, Ladung und Einspeisung aufzeichnen. Weitere Ideen, was nützlich sein könnte, um das Verhalten zu prüfen/verstehen?
-
@StrathCole Ich habe gerade doch mal in den Code geschaut, ob ich eine Idee habe, was passiert. Da es nicht viele Stellen gibt bzgl. SmartBatteryControl, habe ich mich von dort rückwärts durchgehangelt.
In plenticore.js sind die Zeilen 2329-2333 auskommentiert. Den auskommenierten Code habe so verstanden, dass das SmartBatteryControl auf false gesetzt wird, wenn die noch "freie" Energie (Energie des Tages minus erwarteter Verbrauch minus noch fehlende Ladung im Speicher) kleiner ist als 70% der Peakleistung. Oder wenn SoC kleiner ist als die Schwelle, die man in der Adapter-Konfig eingestellt hat.
Statt der auskommentierten Zeilen werden jetzt die darunter stehenden verwendet. Diese sind mir unklar (nicht der Code, sondern die Gedanken dahinter).
Und weil ich es dabei gerade gesehen habe: Ist der Faktor 0,7 drin wegen der Kappung bei 70% der Peakleistung? Wäre es möglich das konfigurierbar zu machen für Leute, die - so wie ich - wegen der Förderung des Speichers eine Kappung bei 50% haben? (Bitte keine Kommentare, ob das sinnvoll war. Man lerne ja einiges erst bei der ersten PV-Anlage und nicht davor....)
-
@strathcole Danke für deine schnelle Antwort. Die Sache hat sich inzwischen geklärt: ich habe nochmal auf der ioBroker Seite mit den Systemeinstellungen / Ortskoordinaten nachgeschaut. Da wird auch eine Karte angezeigt. In der Nähe meines Hauses ist eine Bushaltestelle mit der Bezeichnung "Sophienhöhe". Der Text wurde wohl übernommen ??? Also alles i.O.
Ich rechne damit, daß ich im Sommer Strom übrig haben werde. Ich möchte den nicht ins Netz einspeisen, sondern dazu benutzen, mein Brauchwasser aufzuwärmen. Dazu plane ich, entweder eine Heizstab oder eine Brauchwasserwärmepumpe einzusetzen. Wenn du deinen Adapter in diese Richtung erweiterst, wäre ich interessiert. Soweit ich weiß hat der Plenticore auch eine Schaltausgang, den man ggf. benutzen kann. Dazu ist aber wohl eine Freischaltung durch Kostal notwendig.
Noch eine schönen Abend.
-
@garbracht sagte in IOBroker Anbindung an einen Kostal Plenticore:
Wenn du deinen Adapter in diese Richtung erweiterst, wäre ich interessiert. Soweit ich weiß hat der Plenticore auch eine Schaltausgang, den man ggf. benutzen kann. Dazu ist aber wohl eine Freischaltung durch Kostal notwendig.
Das wird schwierig für mich, da ich so etwas nicht habe und ansehen / testen kann.
-
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
Statt der auskommentierten Zeilen werden jetzt die darunter stehenden verwendet. Diese sind mir unklar (nicht der Code, sondern die Gedanken dahinter).
Das kann ich dir anhand der Zeilen erklären:
if(parseInt(curSoCPercentage) < parseInt(curMinSoC) + 8) { adapter.log.info('Disabling battery management because ' + curMinSoC + ' is too high for current SoC ' + curSoCPercentage); fc_above_70 = false; } else if(power_plus >= 2 * adapter.config.battery_capacity) { fc_above_70 = true; } else { fc_above_70 = false; }
Die erste Abfrage deaktiviert die Steuerung, wenn die aktuelle SoC des Speichers kleiner ist als die eingestellten minSoC + 8%. KOSTAL hat nämlich die Eigenart, dass das Management im Sommer sonst sofort greift und man mit Pech dann einen Verbrauchspeak hat, der aus dem Netz zieht. Daher 8% Puffer.
Die zweite Abfrage prüft, ob die Prognose für die verbleibende Tagesleistung mind. das Doppelte der Batteriekapazität ist. Wenn nicht, wird die Steuerung auch deaktiviert. In allen übrigen Fällen ebenso.
Bei dir müsste also die verbleibende Prognose > 2xSpeicherkapazität gewesen sein. -
@garbracht Da ich auch meine Wärmpumpe gerne dann laden will, wenn Strom verfügbar (oder sogar übrig) ist, habe ich etwas in der Richtung in Blockly aufgesetzt (Da ich zu lange selbst nicht mehr wirklich SW entwickelt habe, ist Blockly zufriedenstellender).
Es ist vorgesehen, dass die Wärmepumpe lädt, wenn das Wasser zu kalt wird (egal ob Strom da ist) oder wenn Strom da ist oder wenn Strom zu viel ist oder der Raum zu warm wird (weil unser uralter Trockner drin stehlt).Das geht recht problemlos mit Hilfe dies Adapters aber außerhalb vom Adapter selbst.
Bei Interesse kann ich es Dir schicken. -
@strathcole said in [IOBroker Anbindung an einen Kostal Plenticore](/post/73446
Die zweite Abfrage prüft, ob die Prognose für die verbleibende Tagesleistung mind. das Doppelte der Batteriekapazität ist. Wenn nicht, wird die Steuerung auch deaktiviert. In allen übrigen Fällen ebenso.
Bei dir müsste also die verbleibende Prognose > 2xSpeicherkapazität gewesen sein.Vom Code her verstanden, aber was ist der technische Gedanke dahinter? Den verstehe ich bislang nicht.
-
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
@strathcole said in [IOBroker Anbindung an einen Kostal Plenticore](/post/73446
Die zweite Abfrage prüft, ob die Prognose für die verbleibende Tagesleistung mind. das Doppelte der Batteriekapazität ist. Wenn nicht, wird die Steuerung auch deaktiviert. In allen übrigen Fällen ebenso.
Bei dir müsste also die verbleibende Prognose > 2xSpeicherkapazität gewesen sein.Vom Code her verstanden, aber was ist der technische Gedanke dahinter? Den verstehe ich bislang nicht.
Also:
Kostal hat die Eigenheit, dass die Steuerung in beide Richtungen versagt. Nehmen wir an, du hast ein paar Tage Sonne und dann einen Tag mit mieser Prognose. Dann würde KOSTAL die Batterie erst einmal nicht laden, weil ja die vergangenen Tage gut waren.
Also schaue ich, dass die KOSTAL-Steuerung deaktiviert wird, wenn die Prognose (restlicher Tag) weniger ist als 2x die Batteriekapazität. Damit wollte ich sicherstellen, dass die Batterie nicht zu spät geladen wird.
Die andere Richtung kann ich nicht beeinflussen, also dass KOSTAL die Batterie nach mehreren Tagen schlechter Leistung bei einem Sonnentag sofort lädt.Optimieren könnte man sicherlich, dass man die Abschaltschwelle der Steuerung selbst festlegen kann, entweder als Faktor der Batteriekapazität oder als absoluten Wh Wert. Aber dazu werde ich erst einmal nicht kommen.
Warum es bei dir nicht gut funktioniert, verstehe ich aber bisher noch nicht. -
@strathcole said in IOBroker Anbindung an einen Kostal Plenticore:
Warum es bei dir nicht gut funktioniert, verstehe ich aber bisher noch nicht.
Ich habe gerade den Debugoutput eingeschaltet und bin Code und Output durchgegangen. Und siehe, die Ursache ich vermutlich simpel: Ich habe meine Speicherkapazität in kWh (5,12) anstatt Wh (5120) angegeben. Dadurch sind natürlich alle Vergleiche etc. Quatsch.
Mal schauen, was jetzt so in den nächsten Tagen passiert. Vielleicht lese ich mich auch weiter in den Code ein. Falls ich Vorschläge habe, melde ich mich. -
@homeuser sagte in IOBroker Anbindung an einen Kostal Plenticore:
@strathcole said in IOBroker Anbindung an einen Kostal Plenticore:
Warum es bei dir nicht gut funktioniert, verstehe ich aber bisher noch nicht.
Ich habe meine Speicherkapazität in kWh (5,12) anstatt Wh (5120) angegeben. Dadurch sind natürlich alle Vergleiche etc. Quatsch.
Das erklärt natürlich einiges.