NEWS
Hausspeicher laden, dynamisch, tibberlink, Scripte
-
Das 1. Script ist das Blockly zum Erstellen der Datenpunkte und das Eintragen der Variablen.
Zuerst ein mal müssen 2 Datenpunkte als Alias erzeugt werden.
A:- alias.0.Sonnen.Status.userSoc dies sollte der Alias Datenpunkt sein von eurem AdapterDatenpunkt des Hausspeichers der die Kapazität eures Hausspeichers angibt in Prozent. Also der UserSoc
- alias.0.Sonnen.Control.Laden dies sollte der Alias Datenpunkt sein von eurem Hausspeicher Adapter der dir das Laden in Watt ermöglicht. Also Charging = 3000 Watt.
Bei den Variablen habt ihr folgende Einstellmöglichkeiten:
B:- Batteriespeicherkapazität in Wh: Also wieviel Nennkwh hat deine Batterie an Kapazität (Sonnenbatterie SB 10 5,5kwh Brutto = 5kwh oder 5000wH Netto)
- Beladeleistung in Wh: Mit wieviel Watt möchtest du deine Batterie vom Netz beladen, Achte bitte auf die maximale Ladeleistung was dein Speicher abkann. (SB10 mit 5,5kwH = 3400 Watt)
- Wirkungsgrad Hausspeicher: Hier kommt dein Wirkungsgrad deines Hausspeichers rein (Wirkungsgrad = Beladung / Entladung) solltest du das bereits als Datenpunkt ausrechnen dann nimm den Datenpunkt, solltest du es nicht berechnen setze hier die % von denen du ausgehst daß das dein Wirkungsgrad ist. Dieser Wert wird zur Berechnung herangezogen ob es sich überhaupt rentiert den Hausspeicher zu laden, als Beispiel ist der Tibberpreis Max bei 0,3€ und der Mindestpreis bei 0,25€ und der Wirkungsgrad von 70% eingestellt ist dann würde sich es erst rechnen bei einem Mindestpreis von 0,21€ da sonst der Verlust deines Speichers das günstige auffressen würde.
- Beladeleistungsfaktor 0-5 und 5-95: Dies ist ein Faktor für die Beladung deines Hausspeichers in diesem Fall 2, was heißt das, du hast eine Beladeleistung von 3000 watt eingestellt und dnun der Faktor 2 ( es wird zwischen den Bereichen des User Socs von 0-5% und 90-95% nur mit 1500 Watt geladen um die Batteriezellen zu schonen. Faktor ist änderbar, genauso wie die Beladeleistung unter Punkt 2
- Beladeleistung 95-100 siehe Punkt 4 (750 Watt Ladeleistung ( 3000 durch 4)
- Ladeprozente Hausspeicher: hier habe ich die Möglichkeit gegeben den Hausspeicher zwischen 90% und 100% laden zu lassen, das heißt dies wird dann dynamisch ausgerechnet wie lange der Hausspeicher zum laden auf 90% oder auf 100% braucht in Abhängigkeit wie voll er jetzt ist.
Ich hoffe es einigermaßen gut erklärt zu haben.
Bitte zuerst den Punkt A erledigen und dann den Punkt B. Das Script dann 1mal starten, somit werden hier die benötigten Datenpunkte angelegt.
Um das Logging müßt ihr euch selbst kümmern.Als nächsten Punkt solltet ihr den Adapter Tibberlink installieren.
In den Einstellungen bei Automation müßt ihr folgendes einstellen.
bei 1, den Datenpunkt auswählen der mit "beste Kosten" bezeichnet ist, er ist zu finden unter 0_userdata.0.Tibber.Beste_Kosten
bei 2, das selbe wie unter punkt 1 nur das sind die besten einzelstunden
das selbe spiel bei 3, das sind die besten stundenblöcke.Es sollte nun bei tibberlink unter Calcualtions die Ordner 0/1/2 zu finden sein, die dann diese 3 ausgewählten Datenpunkte steuern, die Datenpunkte von Tibberlink werden dann mit Daten gefüttert aus meinen Scripten.
-
- Script Grundlastberechnung
Hier wird von Sonnenuntergang bis Sonnenaufgang berechnet wieviel der Hausspeicher entläd, dies wird dann in Wh in einen Datenpunkt geschrieben und zwar zum Zeitpunkt des Sonnenaufgangs.
- Script Beladedauer Hausspeicher
Hier wird die dynamische Beladedauer berechnet in Abhängigkeit der aktuellen Kapazität und in Abhängigkeit der verschiedenen Faktoren der Beladeleistung.
Dies siehst du wenn du den Datenpunkt 0_userdata.0.Test.Ladeprozente_Hausspeicher auf 90% änderst wie sich die Zeit in Minuten unter dem Datenpunkt 0_userdata.0.Test.Beladedauer_Hausspeicher ändert.
!!!!!Achtung: aktuelle Einstellungen nur von 90 -100% möglich.
- Hauptscript:
Aktuellstes Script:
Es sind alle Datenpunkte gegeben bis auf die PV-Forecast-9Uhr-heute und die Pv-Forecast-Variable-9-Uhr-heute. Diese Werte müßt ihr an eure Gegebenheiten anpassen, die 1. Variable gibt den Wert deines PV Forecast Adapters um 9 Uhr aus, die 2. Variable ist die Variable um den Wert anzugeben unter dem dann dein Hausspeicher geladen werden soll.
Beispiel: Ist dein Vorhersagewert deiner Forecast 5kwh und die Variable ist 10 dann wird der Hausspeicher geladen, ist der Forecast Wert 5 und die Variable 3 dann wird nicht geladen. Dies mußt du dir so einstellen wie die Werte vom Forecast am besten passen.
Die forecast sind ja oft meilenweit weg.Was macht das Hauptscript, das beobachtet die Preise und den User soc 1mal zwischen 0 Uhr und 9 Uhr und läd dann in Abhängigkeit der Preise und der PV Forecast den Speicher. Das andere mal wird von 15 Uhr bis 23Uhr 59 beobachtet wie sich die Preise verhalten, hier gibt es natürlich keine Berücksichtugung des PV Forecasts, da ja ab 15 Uhr im Winter sowieso nichts mehr vom Dach kommt. Dies setzt dann die Werte in den Adapter Tibberlink und schaltet die auf True oder False.
-
- Script Hausspeicher laden in Abhängigkeit der Beladeleistung und dem eingestellten Beladewert von 90-100%
Hausspeicher laden version 1.txt
Hier wird die Batterie geladen wenn der Datenpunkt 0_userdata.0.Test.Batterie_laden auf true gestellt wird.
Als kleines "Zuckerl" habe ich noch ein Script um die Werte in Grafana dazustellen, was wurde geladen, aktuell ist es bei mir nicht so der hit, da mein Stromzähler (Holley) leider alle 4 Tage meint nur arbeiten zu müssen, also kommen auch bei Tibber keine reellen Werte an sondern nur geschätzte. Aber wenn sich hier jemand reindenken will dann gerne und die Arbeit mit dem Erstellen hat er zumindest mal halbs weg erledigt.
Das Script legt die Datenpunkte an, diese müssen dann nur noch mit influx geloggt werden und dann mit dem template von grafana ausgewertet werden.
Sollte die Verbindung vom Zähler zu Tibber nicht gelingen (weil die Batterien vom Tibber Pulse leer sind) oder der Zähler (wie in meinem Fall nicht funktioniert) dann seht ihr das in der 1. Kachel: Verbindung prüfen
Hier das Script:
grafana tibber.txtHier das Template für Grafana:
template grafana tibber.txtBitte im Text Editor das Wort "homesersetzen" mit deiner Home ID von Tibber ersetzen.
-
Ab hier kann diskutiert werden, ich hoffe auf eure faire Anerkennung, sollten Beleidigungen oder eine Kritik kommen die mir nicht gefällt, oder unter die Gürtellinie geht, wird der ganze Thread gelöscht. Ganz einfach. Für Kritik und Verbesserungen und vielleicht Hinzufügen von KI (Künstlicher INtelligenz) oder wenn jemand daraus einen Adapter erstellen will helfe ich mit, soweit es in meinem Ermessen steht, so daß jeder aus der IObroker Community davon profitieren kann. Das ist mein Ziel.
-
@babl danke für deinen Arbeiten. Wenn ich Zeit habe schaue ich mir alles an, denn ich bin auch an dem Thema.
Wenn du Lust hast verabreden wir uns einmal zum Austausch per Teams. -
@theloh klingt gut, ich habe auch lange überlegt wie man das angehen kann, 100% Anerkennung wird man nie erreichen, ich habe mir dann überlegt für mich was für mein zuhause die beste lösung ist und so habe ich versucht dies umzusetzen, nur sollte es für alle machbar sein, darum habe ich dies nun zum testen freigegeben, um fehler auszumärzen und interessante Diskussionen zu führen. Dass hier wahrscheinlich nicht alles so läuft sollte jedem klar sein, es ist halt einfach kein system daß man kopiert und es läuft, da jeder andere Voraussetzungen, aber auch Wünsche hat.
-
@babl so sieht’s aus.
-
Ich habe dein Script nun mangels Zeit und Speicher noch nicht ausprobiert. Liebäugle damit allerdings auch schon länger.
Das Problem was ich sehe wäre, dass der Wandlerverlust, egal wie hoch er be- oder errechnet wird immer den Maximalpreis voraussetzt.
Wie du schon schreibst wird X % vom Tageshöchstpreis genommen. Das Problem am Tageshöchstpreis ist aber, dass er in der Regel nur eine Stunde am Tag vorhanden ist.
Was passiert in den übrigen Stunden?Nehmen wir jetzt das Beispiel von morgen in ohne Gebühren, Netto Preise:
Ab 1 Uhr kostet die Kwh 0 ct -> Speicher läd.
Nach angenommenen 4 Stunden ist der Speicher voll.
Um 5 Uhr kommt noch nichts vom Dach und der Speicher fängt an zu entladen, ebenfalls noch beim Einkaufspreis von Tibber für 0 ct. Es erfolgt also ein Verlust in höhe des Ladeverlustes (nur auf den kwh Preis gemünzt).
Dieses Beispiel würde morgen bis 15 Uhr so gehen bis der Preis wieder steigt und der Verlust geringer wird.
Theoretisch müsste man hier nun den Ansatz angehen, dass der Speicher tatsächlich nur entladen wird sofern der Einkaufspreis den tatsächlichen Ladeverlust übersteigt.Sagt man dem Speicher jetzt er darf erst ab 16 Uhr entladen ist er ggf. voll und wird nicht "umsonst" mit Sonnenenergie getankt. (Edit: sehe gerade das du es versuchst mit Forecast zu lösen)
Diese Variable macht die Speicherung mit AC Strom zumindest nach meiner Denkweise meist nur Unrentabel oder habe ich etwas übersehen?
-
@torbennw hi, danke für deine ausführliche Erklärung zu dem Thema, ja das habe ich auch im Hinterkopf, aber leider ist das nicht so einfach, da das ganze halt auf forecast beruht. Ich denke du weißt wie gut oder schlecht hier die Werte teilweise auseinanderliegen. Darum habe ich eben den Forecast mitreingenommen, man könnte dies übrigens auch mit Wetterdaten testen (weatherunderground) aber da sind wir teilweise auch zwischen gut und böse.
Natürlich kann es passieren daß der Forecast nur 4kwh für mittag voraussagt und es trotzdem herrlicher Sonnenschein ist und du den erzeugten Strom dann einspeisen mußt, ja leider darum sind das Einstellungssachen für die du nach deinen Forecast Methoden das beste rausfinden musst. Das muß jeder für sich selber testen. In diesem Bereich wird es kein Tool geben daß immer zu 100% richtig ist.
Beispiel: Am Dienstag am 24.10.23 wurde bei uns 4kwh vorausgesagt bis mittags, reell sind 2,5kwh gekommen, in der Nacht hat aber die Batterie bei mir geladen und zwar um 1Uhr da die Grundlast bis 9Uhr laut Berechnung nicht reichte, Die Batterie war zu dieser Zeit 55% voll (5kwh Netto) also hat sie die restlichen kwh auf 100% nachgeladen. Dies lief hervorragend. Die Batterie kam bis Mittwoch 9 Uhr durch am Mittwoch wurden dann 10kwh vorausgesagt also hat sich die Batterie am Mittwoch durch die PV vollgeladen. Natürlich kann dies auch umgekehrt sein, wie oben schon beschrieben, aber da wir uns in Vorhersagen befinden ist das schwierig, wirst ja selber oft schon gemerkt haben daß das oft nicht stimmt. Noch dazu wir sind ein einem Tal und haben ein Fluß daneben da spielt der Nebel eine große Rolle die von den Pv Forecasts die ich kenne nicht berücksichtigt wird, wie auch, also muß man seine Einstellungen finden die am besten zu einem passen.
Und sind wir uns mal ehrlich wir jammern hier auf hohem Niveau. Hätten wir das nicht müßten wir alle Tage teueren Strom kaufen auch zu Zeiten wo die Spitzenpreise sind. Und das ist meistens da wo man auf der Couch liegt oder das Abendessen zubereitet.
-
@torbennw was allerdings möglich wäre, daß man die PV Forecast und den reellen Ertrag mitloggt und daraus eine Liste erstelllt mit der Abweichung in % und das mitrechnet, so ähnlich KI. Aber leider ist das 1. Zeitaufwendig, 2. für viele neue Nutzer denke ich mal unmöglich das ganze einzurichten und dann hat man aber immer noch bestimmte Unzulänglichkeiten.
-
@torbennw said in Hausspeicher laden, dynamisch, tibberlink, Scripte:
Was passiert in den übrigen Stunden?
Nehmen wir jetzt das Beispiel von morgen in ohne Gebühren, Netto Preise:
Ab 1 Uhr kostet die Kwh 0 ct -> Speicher läd.
Nach angenommenen 4 Stunden ist der Speicher voll.
Um 5 Uhr kommt noch nichts vom Dach und der Speicher fängt an zu entladen, ebenfalls noch beim Einkaufspreis von Tibber für 0 ct. Es erfolgt also ein Verlust in höhe des Ladeverlustes (nur auf den kwh Preis gemünzt).
Dieses Beispiel würde morgen bis 15 Uhr so gehen bis der Preis wieder steigt und der Verlust geringer wird.Brainstorming:
Mir schwebt an der Stelle vor, dass ich seitens TibberLink einen Ausgang habe der auf "beste Einzelstunden" basiert und die konfigurierte Anzahl Stunden selbstständig vergrößert, sofern weitere Stunden die gleichen Kosten wie die schlechteste innerhalb der konfigurierten aufweist... -> Modus "beste Einzelstunden smart" .... diesen Ausgang würde ich dann meiner Batteriesteuerung zusätzlich geben als "Blockiere Entladen". Sollte obiges Probleme am Beispiel 29.10.2023 lösen.
Oder - speziell für den Winterbetrieb - ein Ausgang "beste Kosten smart" hier würde dann kein Trigger-Preis genommen werden der absolut zu sehen ist, sondern ein Verhältnis - in der Form, dass man z.B. 5ct angibt und der Ausgang schaltet immer wenn momentaner Preis kleiner wie (Tagesdurchschnitt - 5ct) ist. Damit könnte man wiederum ein Entladen der Batterie verhindern. (statt "5ct" könnte das auch ein %-Wert sein)
-
Hey, super cool! Macht ruhig weiter, ich denke das wird richtig gut! Ich beschäftige mich schon eine Weile mit dem Thema und bekomme bald einen IMS vom Netzprovider installiert. Das sollte die Pulse-Thematik umschiffen. Ab 01.01.2024 sind die ja auf 20 Euro pro Jahr gedeckelt. Es gibt einen „kollegen“ der das Thema vor einiger Zeit beschrieben hat und seine Automatisierung anders gelöst hat:
https://www.techtalk.de/tibber-erfahrungsbericht/
Aber das Prinzip, das er beschreibt, deckt sich in etwa mit dem vorab beschriebenen „Problem“. Und in der Lösung ist das ohne Forecast umgesetzt.
Wie seht Ihr das?
-
@babl Ich hab mir mal deine Scripte angeschaut und hätt da mal eine Frage:
Wo kommen denn im Hauptscript die tibberlink DP her? (siehe SCreenShot)
Wenn ich gemäß deiner Anleitung vorgehe, dann sieht das bei mir unterhalb vom tibberlink-adapter bei calculations so aus :
das sind doch aber nicht die DP die oben im Hauptscript gebraucht werden, oder?
-
@icebear said in Hausspeicher laden, dynamisch, tibberlink, Scripte:
Wo kommen denn im Hauptscript die tibberlink DP her? (siehe SCreenShot)
Hat sich erledigt, nach update des Tibberlink Adapters heute, sind die DP da.
Trotzdem hab ich noch eine Frage, wie genau und mit welchen Werten müssen die Aliase angelegt werden?
Ich habs mal so gemacht wie ich dachte aber da meckert das Fehlerprotokoll immer rum.
Welche Werte müssen denn genau als Alias genommen werden und warum Alias?
-
@icebear hi, schön dass es schon mal soweit funktioniert, die alias brauchst du um 1. Den Batterieladestand in % zu haben, 2. Um den Befehl für das laden zu senden.
Ich weiss es gibt 100erte verschiedene Hausspeicher, darum kann man das nicht als feste variable abbilden, darum habe ich versucht dies als alias zu machen, so kannst du deinen User soc mit dem alias User soc immer in Verbindung halten und brauchst an den Scripten nix ändern, denn diese Punkte kommen häufig vor. Wenn du deinen alias genau so benennst wie oben unter Punkt A, dann sollte er eigentlich nicht meckern.
Es geht leider aktuell nicht anders, zumindestens wüsste ich nicht wie.
Ob du nun einen Sonnenspeicher hast oder nicht ist ja eigentlich egal, nur der alias sollte so heißen.
-
So jetzt hab ich noch eine Frage, bzw. Verständnisproblem:
Ich verstehe das Laden Blockly nicht so ganz, siehe ScreenShot
Du setzt oben die Variable 'User_Soc' auf den Wert vom 'alias.......userSoc'
wie kann dann unten bei falls [Wert vom Objekt ID] alias......userSOC der Wert 'Kleiner' als die Variable 'User_Soc' sein?
-
@icebear sagte in Hausspeicher laden, dynamisch, tibberlink, Scripte:
wie kann dann unten bei falls [Wert vom Objekt ID] alias......userSOC der Wert 'Kleiner' als die Variable 'User_Soc' sein?
weil
@icebear sagte in Hausspeicher laden, dynamisch, tibberlink, Scripte:
setzt oben die Variable 'User_Soc' auf den Wert vom 'alias.......userSoc'
nur beim Scriptstart gesetzt wird.
-
Ok. Danke.
Ich probier es dann mal aus ob es so funktioniert, das Problem ist das mein Speicher zum Beladen nur 'true' und 'false' kennt und die Beladeleistung selber regelt.
Deshalb muß ich das ein bischen umbauen. -
Hi babl,
danke für deine ganze Arbeit, wir haben auch einen Sonnenspeicher und sind bei Tibber, daher habe ich fast die gleichen Voraussetzungen wie bei dir. Deine Anleitung habe ich soweit befolgt, bekomme aber folgende Meldungen im Log:
2023-11-04 16:04:38.645 - info: javascript.0 (419377) Start javascript script.js.common.Bat_laden_skript 2023-11-04 16:04:38.671 - info: javascript.0 (419377) script.js.common.Bat_laden_skript: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 2023-11-04 16:04:38.721 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Batteriespeicher_Kapazität changed to 0_userdata.0.Test.Batteriespeicher_KapazitÃ_t 2023-11-04 16:04:38.723 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Tibber.Beste_Stundenblöcke changed to 0_userdata.0.Tibber.Beste_StundenblÃ_cke 2023-11-04 16:04:38.723 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstpreis.AVG changed to 0_userdata.0.Test.HÃ_chstpreis.AVG 2023-11-04 16:04:38.723 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstzeit.0 changed to 0_userdata.0.Test.HÃ_chstzeit.0 2023-11-04 16:04:38.724 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstzeit.1 changed to 0_userdata.0.Test.HÃ_chstzeit.1 2023-11-04 16:04:38.726 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstzeit.2 changed to 0_userdata.0.Test.HÃ_chstzeit.2 2023-11-04 16:04:38.784 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Batteriespeicher_Kapazität changed to 0_userdata.0.Test.Batteriespeicher_KapazitÃ_t 2023-11-04 16:04:38.790 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Tibber.Beste_Stundenblöcke changed to 0_userdata.0.Tibber.Beste_StundenblÃ_cke 2023-11-04 16:04:38.794 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstpreis.AVG changed to 0_userdata.0.Test.HÃ_chstpreis.AVG 2023-11-04 16:04:38.797 - warn: javascript.0 (419377) You are assigning a number to the state "0_userdata.0.Test.Höchstzeit.0" which expects a string. Please fix your code to use a string or change the state type to number. This warning might become an error in future versions. 2023-11-04 16:04:38.798 - warn: javascript.0 (419377) at createState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2589:25) 2023-11-04 16:04:38.798 - warn: javascript.0 (419377) at runNextTicks (node:internal/process/task_queues:60:5) 2023-11-04 16:04:38.798 - warn: javascript.0 (419377) at processImmediate (node:internal/timers:442:9) 2023-11-04 16:04:38.798 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstzeit.0 changed to 0_userdata.0.Test.HÃ_chstzeit.0 2023-11-04 16:04:38.802 - warn: javascript.0 (419377) You are assigning a number to the state "0_userdata.0.Test.Höchstzeit.1" which expects a string. Please fix your code to use a string or change the state type to number. This warning might become an error in future versions. 2023-11-04 16:04:38.802 - warn: javascript.0 (419377) at createState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2589:25) 2023-11-04 16:04:38.802 - warn: javascript.0 (419377) at runNextTicks (node:internal/process/task_queues:60:5) 2023-11-04 16:04:38.802 - warn: javascript.0 (419377) at processImmediate (node:internal/timers:442:9) 2023-11-04 16:04:38.803 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstzeit.1 changed to 0_userdata.0.Test.HÃ_chstzeit.1 2023-11-04 16:04:38.806 - warn: javascript.0 (419377) You are assigning a number to the state "0_userdata.0.Test.Höchstzeit.2" which expects a string. Please fix your code to use a string or change the state type to number. This warning might become an error in future versions. 2023-11-04 16:04:38.806 - warn: javascript.0 (419377) at createState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2589:25) 2023-11-04 16:04:38.806 - warn: javascript.0 (419377) Used invalid characters: 0_userdata.0.Test.Höchstzeit.2 changed to 0_userdata.0.Test.HÃ_chstzeit.2 2023-11-04 16:04:38.817 - info: javascript.0 (419377) State value to set for "0_userdata.0.Test.HÃ_chstzeit.0" has to be type "string" but received type "number" 2023-11-04 16:04:38.860 - info: javascript.0 (419377) State value to set for "0_userdata.0.Test.HÃ_chstzeit.1" has to be type "string" but received type "number" 2023-11-04 16:04:38.861 - info: javascript.0 (419377) State value to set for "0_userdata.0.Test.HÃ_chstzeit.2" has to be type "string" but received type "number" 2023-11-04 16:04:39.357 - info: javascript.0 (419377) Start javascript script.js.common.Bat_Hausspeicher_laden 2023-11-04 16:04:39.364 - warn: javascript.0 (419377) getState "alias.0.Sonnen.Status.userSoc" not found (3) 2023-11-04 16:04:39.365 - warn: javascript.0 (419377) at script.js.common.Bat_Hausspeicher_laden:4:12 2023-11-04 16:04:39.365 - warn: javascript.0 (419377) at script.js.common.Bat_Hausspeicher_laden:47:3 2023-11-04 16:04:39.367 - info: javascript.0 (419377) script.js.common.Bat_Hausspeicher_laden: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions 2023-11-04 16:04:40.829 - info: javascript.0 (419377) Start javascript script.js.common.Bat_Hauptskript 2023-11-04 16:04:40.834 - warn: javascript.0 (419377) getState "alias.0.Sonnen.Status.userSoc" not found (3) 2023-11-04 16:04:40.835 - warn: javascript.0 (419377) at script.js.common.Bat_Hauptskript:4:12 2023-11-04 16:04:40.835 - warn: javascript.0 (419377) at script.js.common.Bat_Hauptskript:90:3 2023-11-04 16:04:40.835 - warn: javascript.0 (419377) getState "0_userdata.0.Test.Batteriespeicher_Kapazität" not found (3) 2023-11-04 16:04:40.836 - warn: javascript.0 (419377) at script.js.common.Bat_Hauptskript:5:44 2023-11-04 16:04:40.836 - warn: javascript.0 (419377) at script.js.common.Bat_Hauptskript:90:3 2023-11-04 16:04:40.836 - info: javascript.0 (419377) script.js.common.Bat_Hauptskript: registered 4 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 2023-11-04 16:04:41.621 - info: javascript.0 (419377) Start javascript script.js.common.Bat_Grundlastberechnung 2023-11-04 16:04:41.626 - info: javascript.0 (419377) script.js.common.Bat_Grundlastberechnung: registered 3 subscriptions, 2 schedules, 0 messages, 0 logs and 0 file subscriptions 2023-11-04 16:04:42.753 - info: javascript.0 (419377) Start javascript script.js.common.Bat_Beladedauer 2023-11-04 16:04:42.760 - info: javascript.0 (419377) script.js.common.Bat_Beladedauer: registered 2 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
Wenn ich das richtig lese, findet era auch die Aliase nicht, sind aber im Alias Ordner angelegt:
Ich werde noch weiter probieren.
Gruß Timo
-
@timbo hi, schau mal deine alias datenpunkte genau an, die stimmen nciht mit meinen überein.
alias.0.Sonnen.Status.userSoc
und bei dir müßte es sein
alias.0.sonnen.status.usersoc.usersoc
kann das sein?
Ebenso stimmt mit deinen angelegten Datenpunkten was nicht, da eine fehlermeldung als string kommt und bei mir werden die datenpunkte definitv als number erzeugt, also muß das passen.
Tipp: Lösche unter UserData den kompletten Test Ordner und lasse die Datenpunkte anhand des Scripts "Datenpunkte erzeugen" auch die Datenpunkte erzeugen.