Wenn Ihr Vertrag dem Markt folgt, ist Ihnen das wahrscheinlich schon passiert. Das Energie-Dashboard zeigt eine Kostenangabe für gestern. Sie schauen einen Tag später noch einmal nach, und sie ist eine andere. Oder eine Stunde enthält eine Spitze an Energie, die niemand verbraucht hat, bewertet zu dem Preis, den diese Stunde gerade hatte.
Sie bilden sich das nicht ein, und Sie sind nicht allein:
"But for some reason the dashboard always calculates more than it should." — odechr, Home-Assistant-Forum, Thread 496113
"showing a cost/income far higher than realistic." — andreaskin, Thread 647174
Das ist kein Fehler, den Sie in Ihrer eigenen Konfiguration finden können, und genau deshalb überlebt er so viele Abende der Fehlersuche. Es ist eine Abweichung zwischen zwei Zeitauflösungen.
Der Mechanismus in einem Absatz
Home Assistant berechnet Energiekosten aus seinen Langzeitstatistiken, und die sind stündlich. Für einen Festpreis ist das genau richtig: Eine Stunde zu einem Satz ist eine Stunde zu einem Satz. Bei einem Vertrag, der während des Tages neu bepreist wird, ist die Stunde das Problem — und wenn etwas die Aufzeichnung unterbricht, wird die Stunde zum ganzen Problem.
Die treffendste Beschreibung stammt von jemandem, dem es passiert ist:
"It is just adding all the energy you missed to the hour the system was turned back on." — anon11644107, Thread 965144
Also: Home Assistant startet neu, oder ein Sensor fällt aus und kommt zurück, und der Zähler springt. Die Energie der Lücke ist real — Ihr Zähler hat sie gemessen —, aber sie kommt auf einmal an, landet in der Stunde des Neustarts und wird zu dem Preis dieser Stunde bewertet. Wenn die Lücke die günstigen Nachtstunden überspannt hat und Sie erst beim Frühstück zurückkommen, haben Sie die Nacht gerade zum Morgenpreis gekauft.
Dieselbe Form taucht in anderen Varianten auf. Eine Sensor-Integration kann sich nach einem Neustart tausendfach vervielfachen — das ist ein offenes Issue im Home-Assistant-Core, #136428, gemeldet als:
"After a Home Assistant restart, the value of a sensor integration is multiply by 1000" — roumano, Core #136428
Und ein Gerät, das seine Stromversorgung verliert, kann seinen eigenen Zähler auf null zurücksetzen, was die empfangende Seite als Verbrauch liest:
"This causes our Shelly 3EMs to reboot and then HA records a major peak of 1000's of kWh being consumed." — msa, Thread 479362
Nichts davon ist ein Fehler im Aufbau von Home Assistant. Stündliche Statistiken sind ein vernünftiges Design, und die Umgehungen, die Leute teilen — Verfügbarkeits-Templates, das Korrigieren von Zeilen unter Entwicklerwerkzeuge → Statistiken, die Wahl der Methode left bei einer Riemann-Integration —, funktionieren alle. Sie kosten nur viele Abende für eine Zahl, die eigentlich keine Verteidigung brauchen sollte.
Was sich ändert, wenn der Preis dort angewendet wird, wo die Energie gemessen wird
Die Alternative ist kein besseres Dashboard. Sie besteht darin, die Entscheidung einen Schritt früher zu treffen, bei dem Gerät, das misst.
Ein RBgrid-Hub ermittelt einen Preis je 15-Minuten-Periode: aus der Day-Ahead-Quelle, die Sie für Ihre Zone wählen (day-ahead price), aus einer Ersatzquelle, falls die erste für diese Periode nichts liefert, und sonst aus Ihrem eigenen Tarifplan. Ihr Vertrag wird darauf angewendet — ein Faktor, dann ein Aufschlag (markup), dann die Abgaben pro kWh, das Netzentgelt (grid fee) und die Umlage (renewable levy) Ihres Plans, dann die MwSt. (VAT) —, es sei denn, die Quelle veröffentlicht bereits den Endkundenpreis. Dann wird nichts hinzugefügt und nichts doppelt gezählt.
Dann tut er den Teil, auf den es in diesem Artikel ankommt: Er speichert den verwendeten Preis neben der Energie, für die er verwendet wurde, mit der Quelle jeder Periode, und hält das 40 Tage lang.
Daraus folgen drei Konsequenzen, und sie sind das ganze Argument:
- Eine Lücke bleibt eine Lücke — auf dem Hub. Der Hub misst und bewertet weiter, während Home Assistant neu startet, denn keine der beiden Aufgaben läuft in Home Assistant. Sein eigener Bestand hat keine falsche Stunde, und nachträglich muss nichts rekonstruiert werden. Was Home Assistant dann anzeigt, hängt davon ab, wie die Daten des Hubs es erreichen, und das ist der nächste Abschnitt.
- Ein Preis hängt an seiner eigenen Energie. Die Kosten von 02:15–02:30 wurden aus dem Preis von 02:15–02:30 berechnet, zum damaligen Zeitpunkt, und diese Zuordnung ist festgehalten. Sie hängt nicht davon ab, in welcher Stunde die Zahl später gelesen wird.
- Sie können es prüfen. Nicht „der Zahl vertrauen", sondern die Zeile lesen.
Die Statistiken von Home Assistant bleiben stündlich. Dieser Artikel sagt etwas anderes nicht, und nichts hier ändert, was das Energie-Dashboard speichert. Das Geld in den 15-Minuten-Perioden lebt auf dem Hub und in seinem eigenen Protokoll; was Home Assistant erreicht, ist die stündliche Sicht, die es schon immer geführt hat.
Was tatsächlich in Home Assistant ankommt, und über welchen Weg
Der Bestand des Hubs und das Energie-Dashboard sind zwei verschiedene Dinge, und das zweite hängt davon ab, wie Sie beides verbunden haben. Das ist wichtiger, als es klingt, denn es entscheidet, ob die Neustart-Stunde auf Ihrem Bildschirm noch einen Sprung zeigt.
- Wenn das Energie-Dashboard seine Kosten aus dem eigenen Kosten-Entity des Hubs nimmt, ist die Stunde, die es zeigt, eine Summe von Perioden, die der Hub einzeln bepreist hat — nicht ein stündlicher Durchschnittspreis, angewendet auf einen Klumpen Energie.
- Wenn Sie Ihren eigenen Preissensor über der Energie des Hubs behalten haben, rechnet Home Assistant ihn wie bisher, mit der Zeitauflösung, die es schon immer hatte. Das Protokoll des Hubs und das Dashboard werden dann voneinander abweichen, und das Protokoll ist dasjenige mit den Perioden.
- Ein Neustart unterbricht trotzdem, was Home Assistant aufzeichnet, egal was der Hub inzwischen getan hat. Ihre Energie und Ihr Geld sind auf dem Hub intakt. Ob die Lücke innerhalb von Home Assistant repariert wird, hängt vom Weg ab — und von einer Einstellung, und genau die lohnt es, zu kennen.
Der stündliche Statistik-Import, und die Einstellung, die niemand erwähnt
Die RBgrid-Integration gehört zu einer der beiden Betriebsarten des Hubs: der Hub als ESPHome-Gerät geflasht. Wenn Ihr Hub die eigenständige Firmware fährt und über MQTT mit Home Assistant spricht, gibt es keinen Import, den Sie einschalten müssten. Der Wechsel zwischen beiden ist ein Neuflashen, keine Einstellung. Es ist also eine Entscheidung am Anfang und kein Schalter, den Sie später umlegen.
Auf diesem Weg fragt die Integration den Hub jede Stunde nach seinem eigenen stündlichen Buch und schreibt es als zweite Reihe von Zeilen in die Langzeitstatistiken von Home Assistant, neben die, die Home Assistant für Ihre Live-Sensoren ohnehin führt — jede Stunde mit der Energie und den Kosten, die der Hub für diese Stunde berechnet hat. Das läuft von selbst, einmal pro Stunde, und holt auf, ab dort, wo es aufgehört hat. So wird eine Pause von Tagen Stunde für Stunde nachgetragen, statt in eine Stunde gekippt zu werden. Die Schaltfläche Import into HA statistics auf dem History tab des Panels führt denselben Durchlauf sofort aus; sie ist kein eigener Mechanismus. In den Auswahlfeldern von Home Assistant erscheinen die Zeilen mit Namen wie RBgrid Hub Main energy in und … cost.
⚠️ Standardmäßig schaut Ihr Energie-Dashboard nicht auf diese Zeilen. Der Einrichtungsassistent der Integration verbindet das Dashboard mit den Live-Zählern, und dort zeigt ein Neustart weiterhin den bekannten Sprung in der Stunde, in der Home Assistant wieder hochkam. Die importierten Zeilen, die keine Lücke haben, sind in den Quelleneinstellungen des Energie-Dashboards verfügbar — Sie müssen sie gezielt auswählen.
So ist die ehrliche Form dreischichtig: Der eigene Bestand des Hubs hat nie eine falsche Stunde; die importierten Statistiken geben Home Assistant eine lückenlose Kopie dieses Bestands; und das Dashboard zeigt, auf welchen der beiden Sie es richten.
Wie Sie Ihre eigene Rechnung Zeile für Zeile prüfen
Das sollten Sie einmal tun, damit Sie beim nächsten Mal, wenn eine Zahl falsch aussieht, wissen, wo Sie nachsehen können.
- Öffnen Sie auf dem Hub die Seite Prices und gehen Sie zu Applied prices.
- Wählen Sie den gewünschten Tag. Die Tabelle hat eine Zeile je abgeschlossener 15-Minuten-Periode: Period · Buy · Sell · Source.
- Laden Sie die CSV herunter. Die Spalten sind die Startzeit in der eigenen Zeit des Hubs, der Gesamtkaufpreis, der Verkaufspreis und die Quelle.
- Vergleichen Sie einen Zeitraum, der Sie interessiert, mit der Abrechnung Ihres Anbieters.
Die Spalte Source wird am häufigsten übersehen und dann doch gebraucht. Sie sagt, woher der Preis jeder Periode stammt: Ihre primäre Quelle, Ihre Ersatzquelle, ein Preis, der aus Home Assistant übergeben wurde, der Stundendurchschnitt, falls Ihr Vertrag stündlich abgerechnet wird, oder Ihr Tarifplan, wenn nichts diese Periode abgedeckt hat. Eine Zeile mit plan ist kein Fehler. Sie bedeutet, dass für diese Periode kein Marktpreis galt und der Zonentarif sie bepreist hat — eine andere Zahl, die aber richtig zustande gekommen ist.
Ein Tag kann weniger als 96 Zeilen haben. Das ist kein verlorener Preis: Das Protokoll erfasst die Perioden, während denen der Hub lief. Ein Neustart, ein Update oder ein Stromausfall hinterlässt also eine Lücke, und die Lücke bedeutet, dass der Hub nicht da war.
Was das nicht leistet
Das sei klar gesagt, weil eine Seite über Preise der einfachste Ort ist, mehr zu suggerieren, als wahr ist.
- Es stimmt nicht exakt mit der Abrechnung Ihres Anbieters überein. Wir messen an Ihren Klemmen, der Anbieter misst an seinem Zähler. Das Protokoll sagt Ihnen, welche Perioden was gekostet haben und warum, nicht, was auf Ihrer Rechnung steht.
- Es schaltet nichts. Der Hub kann Ihnen — und einer Automation — mitteilen, dass ein Zeitraum günstig ist, als Benachrichtigung. Was die Spülmaschine startet, ist Home Assistant, ein Umschalter oder Sie.
- Es ändert nicht die Zeitauflösung von Home Assistant. Siehe den Hinweis oben. Das bleibt wichtig, weil genau das ist, worauf Leute hoffen.
- Es ist kein Urteil über Ihren Vertrag. Ob ein Vertrag mit dynamischem Preis (dynamic price) zu Ihnen passt, ist eine Sache zwischen Ihnen und Ihrem Anbieter.
Weiterlesen
- Where your price comes from — die Quellen, die Ersatzkette, was Ihr Vertrag mit einem Marktpreis macht.
- How cost is calculated — die Kette von einer gemessenen Kilowattstunde bis zum Geld, mit der Verzweigung für Spot- und All-in-Quellen.
- Every circuit into Home Assistant — die beiden Betriebsarten des Hubs mit Home Assistant.
Zitate stammen aus öffentlichen Threads im Home-Assistant-Forum und aus GitHub-Issues; Autoren und Thread-Nummern sind angegeben, damit Sie jeden Thread vollständig lesen können — auch die Teile, die diesem Artikel widersprechen.
