Smartes Energiemanagement – Trippelschritte voran

Die Solaranlage liefert inzwischen viele nützliche Daten und Strom. Der Stromzähler liefert nun auch entsprechende Details. Eine der Fragen dabei ist, wie ich das Erzeugungsprofil der Anlage und unser Nutzungsprofil zusammen bekomme und welche Profile sind das überhaupt? Und passt die Anlagendimensionierung so oder wäre es doch sinnvoll mehr davon zu haben?

Projekt: Smart Power Manager

Kontakt: Boris Dirnfeldner

Link– eigenes Projekt –

Situation Solaranlage:
Obgleich so langsam der Herbst da ist und die Anlage nun schon erkennbar weniger Leistung liefert als noch im August, vor allem durch die geringeren Sonnenzeiten und das ausgeprägter bedeckte bzw. nebelige Wetter, kommt dann (wenn die Sonne durchkommt) immer noch einiges rüber. Natürlich immer in Relation zur Anlagengröße (ist ja ein Kleinsterzeuger mit 600Wp).
Das Monitoring ist inzwischen stabil und die meisten Bugs gefixt. Eine Weboberfläche liefert mir sehr genaue Informationen und hat inzwischen auch eine hinreichende Reife.
Eine nun konsequente nächste Frage ist, ob sich eine Erweiterung der Solarerzeugung (z.B. Carportdach oder Hausdach) lohnt und wie das Setup dafür aussehen muss. Oder welche Voraussetzungen müssen erfüllt sein, damit sich das lohnt?

Situation Monitoring Smartmeter:
In den letzten beiden Wochen konnte ich auch das Erfassen der Daten aus dem Energiezähler im Sicherungskasten stabil bekommen. Es werden nun die Bezugs- und Einspeisedaten sicher erfasst und stehen im Netz zur weiteren Verwertung zur Verfügung. Eine rudimentäre Weboberfläche zeigt mir die aktuellen Daten auch bei Bedarf an, aber da hänge ich eher in der Datenbank, wenn ich was wissen will. Das Smartmeter ist bei den Zählern ist um den Faktor 10 genauer als die Solaranlage (1Wh statt 10Wh) und gibt auch bei Messungen 4x die Minute noch Änderungen sicher an. Da dies auch für den Einspeisezähler gilt, kann die “Ungenauigkeit” der Solaranlage hier etwas ausgeglichen werden.

Konzept Powermanager:
Datenerfassung ist ja ganz lustig, sollte aber auch was bringen. Als erstes benötige ich mal eine Aussage wie es aussieht, wenn ich Strombezug, -verbrauch und -einspeisung miteinander in Bezug bringe.
Da ich die beiden Datenerfassungsgeräte vorerst nicht weiter mit anderen Aufgaben belasten möchte, ist dafür ein weiterer Raspberry im Büro angedacht. Das Teil ist derzeit nur als zentraler MQTT-Server tätig, hat also massig freie Zeit und ohnehin die Rolle einer “Zentrale”.
Auf Basis der bereits vorhandenen Skripte soll es wieder eine vergleichbare Lösung sein, die zum einen die Daten der beiden Logger einsammelt, diese verdichtet und dann in eine eigene Datenbank abspeichert. Relevante Daten werden (erst mal) wieder per Weboberfläche dargestellt.
Zum Einsammeln bieten sich die MQTT-Sendungen der Logger an.

Software:
Einiges an Code ist ja schon vorhanden. Da ich mich über einige Codedubletten ärgere und ein Paar andere technische Schulden, geht es an alle 3 Pakete parallel. Code wird in ein Modul ausgelagert, vereinheitlicht und an ein Paar Stellen robuster gestaltet. Die MQTT-Meldungen mit den aktuellen Daten werden aufgenommen und verdichtet. Es stellt sich allerdings heraus, dass dieses System zwar gut und auch relativ stabil funktioniert, aber auch ziemlich umständlich ist, weil die Verarbeitung ausschließlich extern getriggert wird (durch die MQTT-Pakete) und damit auf viele Dinge geachtet werden muss. Die Lösung erscheint mir in der Folge dann doch zu anfällig und komplex, daher wurde das Konzept umgestellt auf eine Erfassung durch REST-Anfragen an die Logger direkt auf die Datenbanken. Dazu wurden in den beiden Skripten, die für die Weboberflächen zuständig sind, zusätzlich eine RESTful-Api reingepackt (die Oberfläche hat bereits eine Flask-basierende Basis) über die ich SQL-Anfragen ausführen kann. Damit bin ich wieder bei aktiven Anfragen basiert auf Scheduler-Zeitsteuerung und weg von den vielen Sonderfällen der event-basierten Bearbeitung. Derzeit laufen beide Schienen parallel, was mir die Prüfung der Daten erleichtert. Im Ergebnis bekomme ich nun die Daten für die Stromerzeugung, Strombezug und Stromeinspeisung in Tabellen gepackt in den Auflösungen Minute, Stunde und Tag. Dazu wird der Eigenverbrauch (also Erzeugung – Einspeisung) und der komplette Stromverbrauch berechnet (also Solarstromverbrauch + Bezug). Da die Solaranlage nur in 10Wh-Schritten die Zähler aktualisiert, sind Auflösungen <1 Minute hier nicht mehr sinnvoll.

Erste Erkenntnisse:
Die Daten sind ein wichtiger Schritt vorwärts. Leider funktioniert die exakte Korrelation auf Minutenbasis wegen der geringeren Messauflösung der Solaranlage nicht so gut, wenn nicht viel Sonne da ist (mehrere Minuten nix, dann wieder ein Block von 10Wh). Spätestens auf der Ebene Stunde ist das aber egal. Zur Erkennung einer Überversorgung durch die Solaranlage kann ich aber mit den Daten des Smartmeters arbeiten. Ich sehe weiterhin eine fast vollständige Verwertung der erzeugten Leistung, allerdings auch Überschuss, wenn die Sonne mal Gas gibt. Die Solaranlage ist damit recht gut für die Grundlastversorgung ausgelegt. Durch die Messauflösung von einer Minute kann ich auch gut Verbrauchsprofile sehen, z.B. wenn der Backofen aktiv ist. Damit kann ich nun ziemlich genau sagen, wann ich welche Energiemengen benötige (und wann nicht). Dampfbügeleisen und Backofen sind hier wohl die Könige des Strombezugs, dann Herd, Geschirrspüler und Waschmaschine.

Verbrauchs- und Erzeugungsdaten:
Über Nacht zieht das Haus aktuell etwa 250W. Tagsüber liege ich etwa 100W drüber. Damit brauche ich ca. 6KWh täglich zur Grundversorgung. Im realen Verbrauch sehe ich 10-12 KWh an normalen Tagen. Die Solaranlage lieferte an guten Sonnentagen bis zu 617W (Begrenzung durch den Wechselrichter), über den Tag aktuell bis zu 3 KWh, an optimalen Tagen knapp 4 KWh maximal.
Die Einspeisung ist vernachlässigbar (seit April 14 KWh), aber an guten Sonnentagen in der Spitzenzeit gut erkennbar.

Solaranlage erweitern oder nicht?
Es zeichnet es sich jetzt schon ab, dass ich mit zusätzlicher Anlagenleistung ohne Speichermöglichkeit meistens nichts anfangen kann bzw. nur relativ kurze Spitzenphasen besser abdecken kann. Damit ist auch erst mal die Frage einer Anlagenerweiterung vom Tisch, bis ich entweder einen bezahlbaren Stromspeicher finde oder geeignete Verbraucher mit Steuerungsmöglichkeit. Das Einspeisen ins Stromnetz ist derzeit eher unattraktiv, weil die Refinanzierungszeiten mir persönlich da noch deutlich zu lange sind und die Erträge zu gering. Erste Angebote mit Speichermöglichkeiten über die Netzversorger (“Strom-Cloud”) finde ich zwar konzeptionell interessant, sind allerdings auch bisher nicht attraktiver als Einspeisung und günstiger Ökostrombezug. Umgekehrt sind die Stromspeicher auch noch zu teuer, was wiederum zu lange zur Refinanzierung braucht. Und nur zum Spaß ist mir das Ganze dann derzeit zu aufwändig und auch zu teuer.

Weiterer Ausblick:
Mit dem direkten Vergleich Einspeiseleistung gegen Bezugsleistung kann ich nun Schaltschwellen für Verbraucher definieren, die nur bei Sonnenstromüberschuss laufen sollen.
Die Logik dafür kann im Logger des Smartmeters dazu gebaut werden und dann z.B. über MQTT wieder entsprechende Benachrichtigungen verteilen.
Ein erster Kandidat wird wohl eine Umwälzpumpe zur Algenbekämpfung im IBC-Wassertank sein, auch als Proof-of-Concept. Die Poolpumpe bleibt ein ständiger Kandidat, und mit etwas guten Willen und Zeit finden sich sicher weitere Kandidaten.
Ein kleiner Stromspeicher mit steuerbarer Leistungsregelung wäre eine Idee um mehr (zusätzliche) Solarleistung nutzbar zu machen, verbietet sich aber derzeit noch aus Kostengründen.
Vorerst werden aber fleißig weiter Daten gesammelt, auch um eine bessere Idee zu bekommen wie die Jahreszeiten hier Einfluss nehmen.

Intelligentes Messsystem mit Sprachbarriere

Mit der Solaranlage ist das (ursprüngliche) Thema Stromverbrauch wieder in den Fokus gerückt. Um eine Idee über das hauseigene Verbrauchsprofil zu bekommen, braucht es Messungen und Daten. Und dafür soll unser “intelligentes Messsystem” mitarbeiten.

Projekt: Really Smart Meter

Kontakt: Boris Dirnfeldner

Link– eigenes Projekt –

Situation:
Wie viele andere Bürger dieses Landes sind wir auch mit einem sogenannten “intelligenten Messsystem” beglückt worden. Bisher ist es mir vollkommen unklar, was nun genau der Vorteil davon sein soll, zumal außer Strombezug und Stromeinspeisung keine weiteren Daten erfasst werden. Ohne Telemodul werden die auch nicht übertragen und Zugriff darauf ist ohnehin nicht geplant. Man hat also einen digitalen 2-Wege-Zähler mit LCD-Display. Eigentlich gibt es wohl auch ein RS-485 Interface, das ist aber verplombt und nicht zugänglich. Die Intelligenz an der Geschichte ist eigentlich der Weg, wie einem die Dinger aufdoktriert werden und man dafür zur Kasse gebeten wird. Für mich ist das Teil zumindest soweit nützlich, als das ich damit keinen anderen Zählertausch wegen der Solaranlage gebraucht habe. Der alte hatte keine Rücklaufsperre und wäre halt völlig regelwidrig gewesen (Stichwort Rückwärtslauf).

Konzept:
Obwohl das Teil, so wie es normalerweise genutzt wird, dumm wie ein Ziegelstein ist, hat es dennoch eine aktuelle IR-Schnittstelle. Die ist zwar nicht so ganz einfach nutzbar, aber zumindest vorhanden. Bei der Übertragung wird wohl SML (Smart Meter Language) verwendet. An sich ein ziemlich komplexes Ding und sicher nichts für Gelegenheitsbastler. Für die Schnittstelle haben sich aber bereits Projekte gebildet, die mit den Daten aus den Kästen eine gewisse Intelligenz reinbringen. Leider scheint es aber sehr abhängig vom Gerät und Betreiber zu sein, was genau verfügbar ist. Das Projekt Volkszähler.org hat hier eine sehr umfangreiche Lösung zur Datenerfassung und Darstellung für verschiedene Zählerschnittstellen und -typen erarbeitet. Die Lösung ist mir aber zu umfangreich. Eine kompaktere Lösung findet sich in smeterd, der die ganze Kommunikation und Erfassung in eine einfach zu verwendende Lösung kapselt. Der notwendige Adapter (IR Sende- und Empfangsdiode) kann inzwischen fertig aufgebaut gekauft werden. Zwar recht teuer, aber dafür kein eigenes Abenteuer. Dazu ein kleiner Raspberry Zero mit WLAN und USB-Schnittstelle, und schon sollte ich die Daten selber erfassen können.

Adaptercheck:
Der Adapter wird per Magnet über dem Interface befestigt und hängt dann recht stabil und leicht entfernbar am Zähler. Er bietet ein USB-Interface und meldet sich als serielles Gerät am Betriebssystem an. Ein Testprogramm hat das Teil auch dabei. Also Testprogramm auf Laptop, alles miteinander verbunden und los geht es. Tatsächlich liefert der intelligente Ziegelstein Zählwerte für Strombezug (OBIS-Nr. 1.8.0) und -Einspeisung (OBIS-Nr. 2.8.0) mit einer Genauigkeit von 1/10 Wh. Dazu noch die ID und Seriennummer und das wars. Naja, wenig genug aber besser als was andere berichten. Die Schnittstelle ist wohl auch manchmal einfach deaktiviert und muss dann erst vom Betreiber freigeschalten werden. Ist dann wohl auch nicht ganz einfach. So gesehen sieht es ja ganz gut aus.

Datenlogger:
Der Raspberry Zero ist ein recht kompakter Genosse und findet viel Platz im Schaltschrank. Vorher hat er ein aktuelles Release von Raspbian bekommen und wurde in den grundlegenden Funktionen eingerichtet. WLAN-Verbindung ist da, SSH-Server und VNC laufen und die aktuellen Updates sind auch drin. Im Schaltschrank ist eine Steckdose drin (manchmal denke ich mit und habe Dinge vorbereitet) und mit einem Powerstrip und ein Paar Kabelbindern ist das Ganze auch recht schnell montiert. Das Stromkabel werde ich bei Gelegenheit noch sauberer führen, aber grundsätzlich passt das so. Der Adapter meldet sich auch ordentlich im Betriebssystem als /dev/ttyUSB0. Und das Beste ist, das WLAN hat ausreichend Dampf um durch das Blech vom Schaltschrank immer noch eine gute Verbindung zu bekommen.

Software:
Mit dem vorhandenen Python-Code der Solaranlage habe ich schon mal die meisten Teile parat, lediglich der Teil mit der Datenerfassung muss geändert werden. Naja, und gefühlte 4.000.000 Konfigurationen, Settings, … geht aber relativ schnell. Die Bibliothek kann per “pip” installiert werden und der erste Versuch sieht auch vielversprechend aus. Eine Debug-Ausgabe des SML-Datenpakets hat schon alle (verfügbaren) Daten schön drinnen. Also das Ganze in mein Programm reingebaut und dann die Abfrage der Datenpunkte dazu, und schon geht nix mehr. Obwohl die Methoden richtig angesprochen werden und das Objekt alle Daten bekommen hat, rückt es die entsprechenden Werte nicht raus (NULL). Also rein in den Code und siehe da, der Einfachheit halber holt sich der Autor die Daten per Regex. Leider hatte aber sein Smartmeter die Daten etwas anders aufgebaut, daher gehen seine Abfragen ins Leere. Mit den Codeschnipseln kann ich aber für mein Smartmeter passende Regex bauen, und damit bekomme ich auch die Daten sauber raus. Das ganze noch aufgeräumt, die Installation als Service angepasst und eingerichtet und schon bekomme ich nun alle 5 Sekunden den aktuellen Stand der Dinge in eine lokale SQLite Datenbank. Das Programm ergänzt die Daten dabei noch um Deltas zum Vorgänger und erlaubt so recht einfache Verdichtungen und Visualisierungen.

Fazit:
Wie immer hat es kleinere Probleme gegeben, aber eigentlich konnte ich das Konzept recht schnell umsetzen. Die Datenerfassung funktioniert und gibt mir nun Optionen, unser Strommanagement wirklich intelligenter zu machen. Eine Verbrauchersteuerung z.B. in Abhängigkeit von Strombezug und Stromerzeugung wäre nun z.B. möglich. Das ist dann aber ein anderes Projekt.

Weiterer Ausblick:
Vorerst werden erst mal weiter Verbrauchsdaten erfasst. Ich werde wohl demnächst sowohl für das Smartmeter als auch die Solaranlage die aktuellen Messpunkte zum MQTT-Server senden. Als einer der dann nächsten Schritte soll eine Visualisierung sowohl von der Solaranlage als auch vom Smart Meter zusammenfassen und Vergleiche erlauben. Da muss ich aber erst mal drüber nachdenken wie ich das wirklich machen möchte. Bin mal gespannt wie bei uns der Verbrauch über den Tag wirklich aussieht, und wie der Ertrag der Solaranlage dazu passt.

Überlegungen:
Nachdem die Solaranlage detaillierte Daten liefert, wäre es doch auch sinnvoll zu wissen wie es beim Hausanschluss aussieht. Und eigentlich habe ich dafür ja ein geeignetes Gerät eingebaut bekommen.

Wir benutzen Cookies und Logs mit personenbezogenen Daten ausschließlich für essentielle Funktionen wie z.B. bei der Benutzeranmeldung oder der Fehlersuche. Für Videos werden weitere Cookies von Drittanbietern benötigt. Details finden sie unter dem Link "Weitere Informationen".