NEWS
Hausspeicher laden, dynamisch, tibberlink, Scripte
-
@babl
Ja da hätte er aber um 4 und 5 Uhr laden müssen. Klar wenn die Werte erst gegen Mitternacht kommen ist die Stunde 23 Uhr nicht nutzbar. Warum arbeitest du nicht mit den automatischen Kanälen des Tibber link Adapter? -
Was ist der Wert: 0_userdata.0.SolarAstrozeitPVVorhersage.Heute...????
und bei PV-Forecast. Welcher Wert soll da genommen werden?
Die Leistung um 10 Uhr?
Der Ertrag bis 10 Uhr?
Der Ertrag vom ganzen Tag?
-
@vitali-förster das ist ein datenpunkt von einem PV-Forecast Adapter, musst du schauen welcher am besten paßt bei dir, hier gibt es ja mehrere pv forecast.
den wert 10 dieser ist gedacht was vom pv forecast adapter für den tag vorausgesagt wird.
-
Worauf ziehlt denn das Hausspeicher_nicht_entladen-Skript ab?
Das schmeißt mir ein paar Einträge ins Log.javascript.0 2024-01-06 09:00:46.519 warn at processTimers (node:internal/timers:512:7) javascript.0 2024-01-06 09:00:46.519 warn at listOnTimeout (node:internal/timers:569:17) javascript.0 2024-01-06 09:00:46.519 warn at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2743:34) javascript.0 2024-01-06 09:00:46.518 warn at Object.<anonymous> (script.js.Tibber.Hausspeicher_nicht_entladen:9:7) javascript.0 2024-01-06 09:00:46.518 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1740:20)
-
@blacksheep587 wenn die preise innerhalb deines wirkunggrades liegen, dann entladed die batterie nicht sondern wird strom vom netz gezogen, denn durch den verlust sparst ja nichts.
-
Hi babl,
das verstehe ich nicht ganz, laut deinem Skript ist es so, wenn der aktuelle Strompreis < Durchschnittspreis Tag ist, dann würde er das Entladen sperren. Da fließt aber nicht der Wirkungsgrad mit ein!
des weiteren vestehe ich auch diese Veroderung hier nicht, wo du die Strompreise von morgen mit heute vergleichst.
-
@diamand2k22 zu 1. das habe ich erst später eingebaut, habe da schon wieder zig neue versionen.
Ich lad hier mal die neuste Version rein.
5.txt -
Danke schau ich mir mal an
-
hab mir deine Version 5 angeschaut, wirkt ja ziemlich komplex!
wie zufrieden bist du mit der Funktion? -
@diamand2k22 also, es sind noch kleine verbesserungen nötig, aber in großen und ganzen läuft das jetzt so wie ich mir das vorstelle, heute entläd die batterie z.B. nicht auch nciht während des Tages, da 1. zu wenig PV vom Dach kommt wegen Schneefall und bedecktem Himmel und 2. der Strompreis nicht teuerer ist als die 80% Wirkungsgrad die der Tibberlink Adapter berechnet.
In der Früh hat sie kurz in den billigsten Stunden auf 100% geladen daß ist auch gut, da dann Sonnen nicht die Volladung nach 30 Tagen machen kann, die einfach nicht ins Konzept passen.
Mit 97% wird die Batterie dann wohl in die Nacht gehen, dabei wird sie dann aber auch nicht entladen und das ist nun noch mein kleines Problem was ich hab,
- Sind moirgen die PV Panel so voll Schnee daß nichts runterkommt, da die PV Forecast bei 10kwh liegt oder nicht. (Glaskugel sei wachsam)
Würde das morgen nämlich stimmen dann könnte ich heute die Batterie ihren Dienst verrichten lassen und morgen würde sie durch die Sonne vollgeladen, aber ist dem auch so. Ist das Morgen dann der Fall ärgere ich mich, weil der ganze Strom eingespeist wird oder im anderen Fall, weil die Batterie dann leer ist.
Das muß ich nun noch näher beobachten. Eventuell baue ich mir in die Vis einen Schalter ein, der dann das nicht Entladen lahm legt.
-
ich versuche gerade, das Skript für mich etwas schlanker zu gestalten mit Hilfe der Automatischen Kanäle aus dem Tibberlink Adapter. Aber deine Ideen sind schon sehr gut!
Mal ein anderes Thema, kannst du mir sagen, wie ich bei dem Tibberlink Adapter die AmountHours bei den Channels richtige eintrage bzw. was bedeuten diese und wofür brauch ich die eigentlich genau?Danke!
-
@babl Moin babl, ich hab das Skript 5 mal durchgeschaut, dazu müssen wieder einige Datenpunkte neu erzeugt werden, richtig?
-PV-Soll-Grundlast-erreicht --> Ist die Berechnung der "Soll-Grundlast" bereits im alten "Grundlast-Berechnung"-Skript enthalten?
-Ordner Tibber und Datenpunkt Batteriemanagement_laden
-fronius.0.inverter.1.PAC --> hier trägst du die aktuelle DC-Leistung ein?P.S. heute ist mein erster Tag mit aktivem Vertrag und es geht gleich gut los:
-
@diamand2k22 die Amount Hours sind die Stunden in denen z.B die Batterie geladen wird, also 3 h bedeutet er sucht sich über den ganzen Tag verteilt die günstigsten 3 Stunden raus, darum schreibe ich in meinem Script die Amount Hours in Abhängigkeit der Dauer wie lange die Batterie braucht um auf den gewünschten Wert vollgeladen zu werden.
Danke ja ich bin immer noch in der Findungsfase aber es wird schön langsam. Da aktuell bei uns immer mal Sonne ist konnte man das auch mit den weniger Prozenten gut testen, heute früh um 3 Uhr hat das Script ausgerechnet daß ich für den ganzen Tag 72% User Soc brauche um über den Tag zu kommen, um 3 Uh war die Batterie bei 67% also hat sie bis 72% geladen, dies erfolgte in Abhängigkeit der PV Vorhersage. Natürlich müßte man nun noch die 24 h -6 Stunden der Erzeugung rechnen dann wäre es noch genauer. Aber wo fängt man an und wo hört man auf.
-
@blacksheep587 sagte in Hausspeicher laden, dynamisch, tibberlink, Scripte:
@babl Moin babl, ich hab das Skript 5 mal durchgeschaut, dazu müssen wieder einige Datenpunkte neu erzeugt werden, richtig?
-PV-Soll-Grundlast-erreicht --> Ist die Berechnung der "Soll-Grundlast" bereits im alten "Grundlast-Berechnung"-Skript enthalten?
-Ordner Tibber und Datenpunkt Batteriemanagement_laden
-fronius.0.inverter.1.PAC --> hier trägst du die aktuelle DC-Leistung ein?P.S. heute ist mein erster Tag mit aktivem Vertrag und es geht gleich gut los:
Jepp leider müssen noch Datenpunkte erzeugt werden, ich bin leider noch nicht dazugekommen dies zu ändern. Die PV-Soll-Grundlast Scripte sind im Script 5 mit dabei, den Datenpunkt musst du noch anlegen.
Tibber und Datenpunkt Batteriemanagement laden und entladen, sind nur 2 weitere Datenpunkte die das Triggern was der tibberlink Adapter ausgibt, die über das Script 5 angesteuert werden.
Ja aktuell hat Tibber ein wenig Probleme mit ihren Servern, die sind total überrannt worden.
-
ah ok, das heißt, wenn ich bei Best Single hours -> Amount hours eine 4 eintrage dann nimmt er z.B. die drei günstigsten Stunden mit 0,25€ und noch die vierte Stunde auch wenn die dann z.B. 0,28€ kostet?
Best Hours Block sind die günstigsten zusammenhängende Stunden oder?
BestPrice ist wenn der Preis unter einen angegebenen Triggerpreis fällt?
Was bedeutet der Kanal Intelligenter Batteriepuffer?
Sorry das ich so blöd Frage aber die Beschreibung auf GitHub ist jetzt nicht wirklich gut
-
@diamand2k22 intelligenter batteriepuffer, bedeutet er nimmt die besten stunden die anzahl kannst wieder einstellen, dann kannst du hier deinen wirkungsgrad deiner batterie eingeben für 80% wäre das der Wert 0.2, dann hast du 2 datenpunkte der eine ist zum batterie laden da in den güstigsten zeiten, und der andere sperrt deine batterie so daß sie nicht entläd innerhalb der summe der besten preise (als Beispiel du hast 4 Stunden ausgewählt, die günstigste stunde kostet 0,25€, dann 0,26€ dann 0,26€ und dann wieder 0,25€, dann ist der Durchschnittspreis 0,255€ hier musst du dann deinen Wirkungsgrad draufrechnen, also die 0,255:80*100= 0,31875€.
Das heißt nun ist man zwischen den 2 werten 0,31875 und 0,255 wird dein Batteriespeicher zum entalden gesperrt da sich der Netzbezug ja auf Grund des Wirkungsgrades immer noch rechnet, ist der Preis drüber wird die Sperre aufgehoben und der Speicher hat wieder die normale Funktion.
-
@babl super danke! gut erklärt!
bei mir sieht es so ausich kann sieben Spalten befüllen, hast du zufällig ein Config Beispiel, wo genau jetzt was rein muss?
-
@diamand2k22 so nach langem testen meinerseits und dass viele meiner alten Freunde nun Sonnen den Rücken kehren, da es eine Preiserhöhung gab, habe ich mir die Mühe gemacht und alles zusammengeschrieben, ich hoffe nun ist es für jedermann verständlich.
-
Die ganzen Scripte findet ihr hier.
Beschreibung findet ihr hier.
Hausspeicher dynamisch laden.zipKurze Erklärung: Am 17.1. 19 Uhr fiel der Strompreis unter meinen Wirkungsgrad der Batterie, also wurde der Netzbezug aktiviert, sieht man auch oben schön unter User soc daß nichts mehr entladen wird, (trotzdem verliert der Stromspeicher mit nur 1 Jahr alten Module 4 innerhalb 8 Stunden 2%. Am 18.1. 3 Uhr war der Strompreis am niedrigsten und die Batterie lud auf 100% mit dynamischer Beladeleistung, bitte von den Aussetzern nichts denken, hier ist die Batterie immer für 5 (genau um diese Uhrzeit)Minuten nicht erreichbar, bin aber noch nie dahintergekommen warum das so ist) gegen 9 Uhr kamen dann die ersten Sonnenstrahlen, die aber gleich wieder weg waren, darum wurde hier auf Batterie umgestellt, gegen 11 Uhr reichte dann die Sonnenstrahlung aus um die Grundlast + 100Wh zu decken und das Script schaltet um auf Batterie, es wurde dann ein wenig eingespeichert, gegen 14 Uhr reichte die Sonnenstrahlung nicht mehr und der Netzbezug wurde wieder aktiviert da die Preise unterhalb der obersten Schwelle des Wirkungsgrades waren. Am 19.1 um 0 Uhr wurde dann der Netzbezug aufgehoben weil die PV Vorhersage für heute über 5kwh betrug, die Batterie wurde nicht geladen da der vorhergesehene User Soc (um die Grundlast zu decken) bei einem User Soc von 48% lag und wir darüber waren. Die Batterie wurde dann am 19.1. wieder auf 86% durch die Sonne geladen.
Bitte vergeßt nicht, wir arbeiten hier mit vielen Unbekannten und Voraussagen, daher wird es nie eine 100% zufriedenstellende Lösung für jedermann geben.
Natürlich möchte ich mich auch bei den Erstellern des iobroker und der verschiedenen Adapter bedanken.
-
@babl @babl Danke für deine ganze Mühe & Arbeit!
Ich habe soweit alles nachvollziehen können, scheitere jetzt aber bei dem Import der Skripte, das ist ganz merkwürdig.Ich gehe auf Skripte importieren:
Habe dort alle Skripte auf einmal reingezogen.
Sind aber nicht in der Liste der vorhandenen Skripte.Wenn ich jetzt noch einmal ein Skript importiere, bekomme ich folgende Meldung:
Sind die in einem anderen Ordner zu finden? Ich habe meine ganzen Skripte im Ordner common gespeichert.
Wenn ich das ganze direkt als Blockly importiere bekomme ich folgende Fehlermeldung:
Einer eine Idee wo dran es liegen könnte?
Gruß Timo