Schlagwort-Archive: Warmwasser

Eigene App / Datenkrake zum SmartHome

Wir haben eine App für die Wärmepumpe. Hier kann ich die aktuelle Temperatur im Warmwasserspeicher ansehen und ein paar Dinge einstellen. Die Wärmepumpe Ein- und Ausschalten, etc.

Dann haben wir eine zweite App für die PV Anlage. Aktueller Ertrag, Stromverbrauch, Netzbezug und Einspeisung. Finde ich alles hier.

Eine weitere App für das SmartHome von myHomeControl. Hier kann ich alle Temperatur-/Co2-/Feuchtesensoren, etc. abrufen und diverse Dinge am Haus steuern. Hier kann ich auch den Stromzähler für die Wärmepumpe und z.B. den Außenstrom ablesen und noch viele andere Dinge tun.

Was mich massiv gestört hat ist, dass viele Daten die mich regelmässig interessieren aus zig verschiedenen Anwendungen abgeholt werden müssen und es fehlten ein paar übersichtliche Graphen/Visualisierungen, die mir bestimmte Daten zusammenfassen.

Weiterhin fehlten mir generell ein paar Daten, die mich interessieren. Z.B. Heizungsvor- und Rücklauf kann ich nur an der Heizung selber oder am Wärmemengenmesser ablesen. Dafür muss ich aber in den Keller…und dahin gehe ich eigentlich nur zum Lachen…ok oder Wäsche waschen…

Achtung…jetzt wird es etwas technisch und mir ist klar, dass viele hier nur noch Bahnhof verstehen. Die springen einfach zum Schluss des Beitrags und schauen sich das Ergebnis an.

Also musste etwas eigenes her. Für die fehlenden Temperaturdaten habe ich mir ein paar OneWire DS18b20 Sensoren gekauft und mir eine Mini Applikation in einem embedded Jetty (googlen, wen es interessiert) geschrieben, welche diese Daten als REST Schnittstelle bereit stellt. Sourcecode dazu hier: https://github.com/thomasbecker/tempsensorserver.

MyHomeControl bietet eine nicht mehr ganz so moderne soap Schnittstelle. Dafür habe ich mir einen Java Client generiert und darauf basierend eine Scala Library geschrieben, welche alle für mich interessanten Daten möglichst performant und parallel aus dieser Schnittstelle ausliest und in für mich brauchbarer Form zur Verfügung stellt.

Der Wechselrichter der Photovoltaik von Fronius bietet eine modernere REST Schnittstelle an. Auch hierfür habe ich mir einen Scala Client geschrieben der die Daten ausliest in meine Objekte marshalled und mir zur Verfügung stellt.

Das alles nutzt dann eine von mir geschriebene Applikation basierend auf dem https://www.lagomframework.com.

Diese liest alle für mich relevanten Daten alle 10 Sekunden aus und schreibt sie in eine Cassandra Datenbank. Weiterhin stellt die Applikation verschiedene REST Schnittstellen zum Abruf der Daten zur Verfügung.

Hier der Quellcode zu dieser App: https://github.com/thomasbecker/home-integrator-lagom

Jetzt habe ich also alle Daten in 10 Sekunden Intervallen zentral in einer Datenbank liegen. Das ganze läuft auf einem einzelnen MiniPC mit sehr geringem Energieverbrauch im Keller in Form von verschiedenen Microservices in Docker Containern.

Jetzt, wo ich alle Daten zentral habe und Abrufen kann fehlt noch ein Frontend darauf. Das ist eine Ionic 4 App. Ionic ist ein sehr nettes Framework basierend auf Angular/Typescript, welche sowohl als Webapplikation im Browser, als auch nativ auf iOS oder Android läuft.

Hier habe ich also verschiedenste Daten visualisiert. Oben sind immer die momentanen Daten zu sehen, welche einmal pro Sekunde aktualisiert werden (d.h. diese Graphen sind animiert). Darunter ist ein Graph mit den historischen Daten der letzten 4h. Die Historie kommt aus der Cassandra Datenbank. Wir erinnern uns, alle 10 Sekunden landet ein Datensatz in der Datenbank. Nachdem die Historie geladen wurde wird auch der Graph unabhängig von der Datenbank einmal pro Sekunde mit neuen Werten ergänzt. Über die Buttons zwischen den Graphen kann man den Zeitraum variieren. Von 2h bis zu einem Jahr aktuell. Mehr brauche ich momentan nicht. Da bereits ab wenigen Stunden die Datenmenge schon recht groß wird errechnet das Backend hier ein “moving average” und reduziert die Gesamtanzahl der Datensätze auf aktuell exakt 750. D.h. konkret: Für 8h sind 2.880 Datensätze in der Datenbank (6 * 60 * 8). Bei einem 8h Graph benötige ich eine solche Präzision jedoch nicht. Also mache ich daraus 750 Datensätze mit den Durchschnittswerten des jeweiligen Zeitraums. Das reicht völlig für den Graphen und das ist in ca. 150ms beim Client. Das gleiche auch für eine Woche, einen Monat oder ein Jahr, etc..

Genug der Theorie. So sieht das ganze dann auf dem IPad aus:

Stromverbrauch des Hauses. Rot die Wärmepumpe. Schwarz Netzbezug bzw. wenn negativ: Netzeinspeisung. Grün Photovoltaik Ertrag.

Das ganze ist nicht nur interessant. Man kann damit tatsächlich auch was anfangen. So kann ich z.B. genau sehen, wieviel Temperatur das Haus über Nacht verliert, wenn ich nachts eine niedrigere Heizkurve fahre als tagsüber. Bzw. In der Übergangszeit schalte ich die Wärmepumpe nachts komplett aus. Um möglichst viel PV Strom für die Wärmepumpe zu nutzen.
Ebenso kann man sehr gut sehen, wie sich Wäsche aufhängen, Duschen, Baden, etc. auf die Luftfeuchtigkeit mit dem Entalpietauscher auswirkt. Und ich konnte die Nutzung der PV Anlage für die Wärmepumpe fast ohne Komfortverlust weiter optimieren. Komplett ausgeschaltet bei 5 Grad Außentemperatur verlieren wir nichtmal ein Grad, wenn ich die WP Abends um 20:30 Uhr komplett ausschalte und morgens um 10 Uhr wieder einschalte. Womit wir beim nächsten Thema wären. Ich wollte wissen, wieviel vom Wärmepumpenstrom wir über die PV abdecken. Fakt ist ja, dass wir im Winter am meisten Strom für die Wärmepumpe verbrauchen. Aber auch, dass im Winter bei kurzen Tagen und tiefstehender Sonne nur wenig PV Erträge vorhanden sind (wer hat sich das eigentlich so ausgedacht?). Trotzdem habe ich mal geschätzt, dass wir mit der 10 kWp PV auf dem Dach und meinen Optimierungen gut 30-40% abdecken können sollten.

Aber glauben ist nicht wissen und ein paar Bekannte haben das für viel zu optimistisch gehalten. Also mussten auch dafür Graphen her. Immer wenn ein Datensatz zum Stromverbrauch im Haus rein kommt, landet dieser in einer weiteren Tabelle in er Cassandra und zwar mit folgenden Daten: Stromverbrauch Wärmepumpe, Photovoltaik Ertrag und Abdeckung der Wärmepumpe durch PV Strom. Für diese Berechnung ignoriere ich stumpf alle anderen Stromverbrauche im Haus und tue so als gäbe es nur die Wärmepumpe. Der erste Versuch war die Daten in der Datenbank zu aggregieren. D.h. wenn ich die Daten für einen Monat abrufe dann sind das ein paar hundert Tausend Einträge auf die es ein paar Durchschnittswerte gruppiert nach Monat zu berechnen galt. Mir war klar, dass das nicht besonders performant und auch nicht die finale Lösung wird. Mich hat aber auch interessiert, was die Cassandra auf dem mäßig potenten MiniPC zu leisten vermag. Ich war erstaunt, dass die Daten dennoch in 2-5 Sekunden zur Verfügung standen. Aber spätestens bei der Übersicht für ein Jahr wurde es dann deutlich zu langsam. Also habe ich das aggregieren vom Lesen auf das Schreiben verlegt. Ich pflege jetzt mehrere Tabellen. Eine Stundenbasierte mit allen Daten. Die Daten in dieser Tabelle haben eine TimeToLive von 2h. D.h. nach 2h wird ein Datensatz wieder gelöscht. Eine weitere Tabelle mit den Durschnittswerten für jede Stunde des Tages. Eine weitere für jeden Tag des Monats. Eine weitere für jeden Monat des Jahres und eine letzte für die Jahre die da kommen.

Immer wenn ein neuer Datensatz rein kommt landet er in der Stundentabelle. Gleichzeitig hole ich mir alle Datensätze für die aktuelle Stunde (max. 360) und berechne den Durchschnitt der aktuellen Stunde neu. Diesen trage ich in die Tagestabelle als Durchschnitt für die aktuelle Stunde ein. Dann hole ich mir alle Durchschnittswerte für jede Stunde des aktuellen Tages (max. 24) und berechne den Tagesschnitt neu und trage das Ergebnis in die Monatstabelle ein, usw..
Das Schreiben dauert so etwas länger. Aber immer noch deutlich unter 50ms. Und mich interessiert auch nicht, wie lange das Schreiben dauert. Solange es schnell genug ist, dass alle Daten problemlos weg geschrieben werden können.

Für die Monatsansicht eines Jahres muss ich so also nur 12 Datensätze aus der richtigen Tabelle lesen. Anstatt mehrerer Millionen Datensätze zu aggregieren. Der gesamte Graph läd so im Client in 30-40ms. D.h. man klickt und ohne spürbare Verzögerung wird der Graph angezeigt.

Sabbel nich…wie sieht das Ergebnis aus? So:

Als erstes mal der Januar. Hier sieht man deutlich, dass relativ viel verbraucht wird und relativ wenig von der PV (grün) abgedeckt werden kann. Kalt, kurze Tage, tief stehende Sonne sind eine doofe Kombination.

Zum Vergleich der März. Hier kann ich überwiegend mit PV Strom heizen und Warmwasser bereiten. Der Gesamtverbrauch sinkt. Die PV Abdeckung steigt bereits sehr stark. Das wird jetzt noch verstärkt, weil wir seit ein paar Tagen die Wärmepumpe nur noch für Warmwasser laufen haben und nicht mehr heizen müssen. Und jeder Tag wird länger und die PV Erträge werden bis in den Sommer noch sehr stark ansteigen.

Hier dann die Jahresansicht für 2019. Man sieht deutlich, wie schlecht die Abdeckung im Januar ist (ca. 20%) und im März sind wir bei 65%.

Hier die “All time” Ansicht. Ich habe Daten im aktuellen Format nur für 2019. Im Dezember sind es nur Daten von zwei, drei Tagen. Man sieht aber, dass wir in 2019 jetzt schon mit großen Schritten auf die 40% Abdeckung zugehen. Ab April bis September/Oktober werden wir wohl auf 80-90% Abdeckung kommen, da wir nur noch Warmwasser machen müssen und die PV Erträge deutlich höher und länger über den Tag verteilt sein werden.

Also wieviel Wärmepumpenstrom kann denn jetzt von der PV über das Jahr verteilt abgedeckt werden? Keine Ahnung…fragt mich am 31.12.2019 um 23:59 Uhr nochmal. Dann weiß ich mehr. Aber ich korrigiere mein vorherigen Schätzungen mal auf deutlich über 40%.

D.h. unsere sowieso schon niedrigen Heizkosten von ca. 400-500€ / Jahr werden zu mindestens 40% … vermutlich noch etwas mehr von der PV getragen. Ergo tatsächlich zahlen wir wohl unter 300€ für Heizung- und Warmwasser für ca. 250qm beheizte Wohnfläche. In der 74qm Wohnung lagen wir deutlich über 600€.

Man kann also sagen, dass unser Heizkonzept ganz gut aufgeht und sich die Investition in gute Dämmung und vor allem die PV sehr schnell bezahlt machen wird. Die Mehrkosten von KFW55 (Standard bei Weberhaus) zu KFW40 wurden bei uns vom Tilgungszuschuss der KFW Bank übertroffen und die PV hat sich in ca. 3-4 Jahren (dann ist sie 6 bzw. 7 Jahre alt) bereits selbst bezahlt, wenn es so weiter geht. Das einzige, was mich ärgert ist, dass ich das Dach nicht gleich mit PV voll gemacht habe. Dann wären nämlich 20-25 kWp aufs Dach gegangen. Der Preis pro kWp wäre gesunken, die Abdeckung des Wärmepumpenstrom bei schlechtem Wetter/Winter wäre deutlich höher und auch diese Mehrinvestition hätte sich innerhalb von 6-8 Jahren selbst bezahlt. Aber dazu vielleicht später mal mehr.

Wärmepumpenverbrauch doch nicht zu hoch…

…hätte ich eigentlich auch sofort und selber drauf kommen können. Bin ich aber nicht. Der User „skyme“ aus dem Haustechnikdialog.de hatte den entscheidenden Hinweis.

Die schlechten AZ in den Sommermonaten kommen natürlich durch die Kühlung! Ich kann mit der Wärmepumpe ja auch kühlen, was sich im Sommer sehr positiv bemerkbar macht. Dadurch, dass wir bei hohen Außentemperaturen alles Verschatten ist es eigentlich immer gut auszuhalten im Haus. Wenn es aber eine sehr lange Hitzeperiode gibt und davon hatten wir ein paar ist die Kühlung sehr angenehm und bringt die Temperatur im Haus nochmal 2-3 Grad geschätzt nach unten und das macht dann schon einen großen Unterschied.

Mein Wärmemengenzähler kann aber die Energie die bei der Kühlung dem Haus zugeführt wird nicht zählen. Der Stromzähler den Verbrauch aber schon. Daher die schlechten Arbeitszahlen in den Sommermonaten. Verbrauch ist dann für Warmwasser + Kühlung. Im Sommer komplett von der Photovoltaik abgedeckt. D.h. kostenlos Warmwasser und Kühlung, da wir beides nur tagsüber und bei ausreichender PV Deckung machen.

Photovoltaik Eigenverbrauchsoptimierung

Wenn die Photovoltaik Anlage erst mal auf dem Dach ist, gilt es möglichst viel Eigenverbrauch zu erreichen. Dazu gehört, dass man Verbraucher, wie z.B. die Wasch- und Spülmaschine möglichst in die Ertragszeiten der Photovoltaik Anlage legt. D.h. bevorzugt tagsüber bei Sonnenschein waschen/spülen.

Gleiches gilt natürlich auch für alle anderen Verbraucher, die man in die Ertragszeiten legen kann ohne zu sehr an Komfort einzubüßen (Cappuccino muss z.B. morgens sein, wenn da keine Sonne scheint, Pech).

Das ich viel im HomeOffice arbeite kommt dem Eigenverbrauch natürlich auch entgegen. Dazu kommen aber noch ein paar weitere Dinge, die ich eingeplant habe.

Z.B. werde ich das Erwärmen des Warmwasserspeichers von der Wärmepumpe nur einmal am Tag, um die Mittagszeit machen lassen.

Ebenso werde ich mit einer Nachtabsenkung experimentieren. Normalerweise bringen Nachtabsenkungen keinen Vorteil, weil das Aufheizen danach i.d.R. genauso viel Energie verbraucht, wie über Nacht gespart wurde. Allerdings wird unser sehr gut gedämmtes Haus kaum abkühlen und die Wärmepumpe läuft bevorzugt tagsüber, wenn die Sonne scheint. Das wird aber weniger bringen, als die Warmwasserbereitung. Grund ist, dass im Winter, wenn am meisten geheizt werden muss auch am wenigsten solare Erträge da sind. Insbesondere bei unserer Ost/West Anlage mit flacher Dachneigung. Aber wenn es auch nur ein paar kWh gekauften Strom spart, hat es sich gelohnt.

Wenn ihr noch weitere Tipps zur Eigenverbrauchsoptimierung habt, immer her damit und Kommentare schreiben. 🙂

Warmwasserzirkulation

Eigentlich steht für mich fest, dass ich keine Warmwasserzirkulation möchte. Dem Komfortgewinn durch ständig warmes Wasser steht ein nicht unerheblicher und von vielen unterschätzter hoher Energieverbrauch entgegen.

Bei unserem Grundriss sind alle Zapfstellen übereinander. Bäder und Küche liegen alle übereinander an der gleichen Ecke des Hauses. Also sind sehr kurze Leitungswege möglich. Meine Idee war, sternförmig möglichst dünne (10-12mm) Leitungen zu den Zapfstellen und zu Dusche/Badewanne 16mm Leitungen. Dadurch ergeben sich maximal kurze Leitungswege und ein minimaler Wassermehrverbrauch und es dauert kaum länger bis warmes Wasser an der Zapfstelle ist. Nachteil der Geschichte ist, dass bei selten benutzten Zapfstellen, z.B. im Gästeduschbad das Wasser lange in der Leitung steht (stagniert). Die aktuelle Trinkwasserverordnung gibt vor, dass eine Ring- oder Reihengeschaltete Leitung mit Durchschleifverfahren für die einzelnen Zapfstellen vorzusehen ist.

Selbst damit sollten bei uns kurze Leitungswege und weniger als 3l Wasser in den Leitungen zur am weitest entfernten Zapfstelle möglich sein. Der Komfortverlust ist damit praktisch kaum vorhanden. Das Argument der Wasserverschwendung zählt bei uns in Deutschland nicht. Genau genommen verbrauchen wir durch Sparspülern am Klo, etc. deutlich weniger Wasser, als für die Abwasserkanäle vorgesehen ist. Dadurch müssen diese regelmässig mit großen Wassermengen frei gespült werden. Wassermangel haben wir in Deutschland auch nicht. Dennoch bin ich natürlich kein Freund von Wasserverschwendung. Aber ich wasche mir z.B. die Hände eh nur mit kaltem Wasser und Dusche überwiegend. Die Energieverschwendung einer Warmwasserzirkulation hat definitiv den größeren ökologischen Fußabdruck.

Bei Weberhaus würde die Vortex BWO 155 SL Pumpe verbaut werden. Diese hat einen Selbstlerneffekt und soll die Nutzerzeiten lernen. Das funktioniert so intelligent, dass diese Pumpe die ersten zwei Wochen fast durchgehend taktet und in dieser Zeit das Nutzerverhalten lernen soll. Mal davon abgesehen, dass bei uns keine festen Zeiten zum Duschen/Händewaschen spülen da sind, funktioniert das wohl in der Praxis auch nur sehr mässig. Im Internet finden sich zahlreiche Berichte von Pumpen die trotz ausreichender Lernphase das Frischwasser im Speicher über Nacht um viele Grade abkühlen und Energie verschwenden oder bei anderen willkürlich zu takten scheinen. Ein kurzer Stromausfall und die Lernzeit beginnt von vorne. Wieder 2 Wochen Energieverschwendung. So ein Teil kommt mir auf gar keinen Fall ins Haus.

Wenn der Haushersteller darauf besteht eine Zirkulationspumpe zu verbauen, dann soll er eine simple Pumpe verbauen. Von mir aus mit programmierbarem Timer. Diese kann ich dann einfach abschalten oder was ich dann wohl auch probieren würde, wären Bewegungsmelder in den Bädern, welche die Pumpe für z.B. eine Minute laufen lassen, sobald jemand das Bad betritt. Damit werden die unnötigen Laufzeiten auf ein Minimum reduziert.

Wen das Thema interessiert, der sollte mal nach dem Energieverbrauch der Warmwasserzirkulation im Netz suchen. Bei Altbauten mit nicht gedämmter Warmwasserleitung kann das einen erheblichen Anteil an den Gesamtheizkosten ausmachen! Selbst im modernen Neubau mit voll gedämmter Warmwasserleitung ist der Energieverlust nicht zu unterschätzen. Klar, die Wärme bleibt innerhalb des Hauses. Trotzdem gibt es nicht gewünschte Verluste.

Also bei uns entweder gar nicht. Oder abschaltbar und dann mit Bewegungsmelder im Bad. Für eine Zeitsteuerung brauchen wir zu unregelmässig Warmwasser. Selbstlernende kommen nicht in Frage.