Im letzten trockenen Sommer habe ich mich häufiger gefragt, wie viel Wasser mein Brunnen noch führt. Nach einer kurzen Internetrecherche schien mir der Abstandssensor HC-SR04 eine günstige und verlässliche Lösung um den Wasserpegel zu messen.
Was brauchte ich für diese Lösung? Zunächst natürlich den Abstandssensor HC-SR04, eine kleine Box um ihn einzubauen und eine Einführtülle. Dazu kommt ein 4-adriges Kabel, das am anderen Ende an die Platine einer OpenAndHome Sensorbox angelötet wird. Das USB-Kabel für den Stromanschluss wird bei der Sensorbox mitgeliefert.
Von die vier Adern die zum Abstandssensor führen werden je zwei an der Spannungsversorgung und zwei an D5 und D6 angelötet
Zuerst ein Test
Bevor ich die Hardware fest installiere möchte ich zuerst einen Test durchführen. Dazu habe ich den Abstandssensor mit Krokodilsklemmen angeschlossen und die Sensorbox in Betrieb genommen. Offensichtlich ist die nächste Wand auf die der Abstandssensor gerade „schaut“ 126 cm entfernt. Die Einheit (Meter) war zu diesem Zeitpunkt noch falsch und wurde von mir später in der ESPEasy Software angepasst.
Da ich den Abstanddsensor natürlich nicht so in meinem Brunnen hängen kann, habe ich zuerst in ein passendes Gehäuse zwei Löcher mit 16mm Durchmesser gebohrt, durch die die „Augen“ genau durchgesteckt werden können.
Muss ich den Abstandssensor kalibrieren?
Nachdem alles eingebaut und angeschlossen ist hat mich interessiert, wie genau der Abstandssensor misst. Dazu habe ich ihn 2 Meter von einer Wand entfernt aufgestellt. Wie man sieht weicht das tatsächliche Maß um einige Millimeter ab. Für meinen Zweck ist das aber völlig ausreichend.
Schließlich habe ich das Datenkabel entlang der Saugleitung zu meinem Brunnen verlegt und den im Gehäuse eingebauten Abstandssensor im Inneren meines Brunnes befestigt. Zum Zeitpunkt des Einbaus liegt der Wasserpegel rund 176 cm darunter
Um sehen zu können, ob es Schwankungen des Wasserpegels gibt und ob die Datenübertragung stabil funktioniert habe ich die Werte kurzerhand in Grafana eingebunden und bin mit dem Ergebnis sehr zufrieden. Die Werte schwanken um gerade mal 4 cm. Das sind rund 2 Prozent und ist für meine Abstandsmessung völlig ausreichend. Anfangs war ich mir nämlich zum Beispiel nicht sicher, ob der Abstandssensor eine Wasseroberfläche erkennen kann.
In meinem Heizraum gibt es die verschiedensten Temperaturen. Die vorhandenen zwei Sensoren waren mir zu wenig. Da das System von OpenAndHome sehr flexibel ist, beschloss ich zwei weitere Temperatursensoren in meiner Sensorbox anzulöten.
Nach Entfernung des Deckels und des Displays erkannte ich, wo ich die neuen Temperatursensoren anlöten musste. Die schwarzen und roten Drähte werden jeweils in die selbe Reihe wie die vorhandenen verlötet. Die gelben Drähte kommen an „D5“ und „D6“.
Zuerst zog ich vorsichtig das Display ab. Dann löste ich die Verschraubung der Platine mit dem Gehäuse und nahm die Platine heraus.
Der Reihe nach habe ich jeweils einen Draht durch das jeweilige Loch gesteckt, die Platine gedreht und anschließend angelötet. Nach wenigen Minuten war es erledigt.
Um Kurzschlüsse oder Fehlkontakte zu vermeiden habe ich alle überstehenden Drahtenden abgeschnitten. Dadurch verhindere ich auch, dass die Platine unter mechanischer Spannung angeschraubt wird, weil überstehende Drähte am Boden anstehen.
Aus Platzgründen führte ich ein Sensorkabel mit den bereits vorhandenen durch eine Zuführung. Den Zweiten führte ich zusammen mit der Stromversorgung (weißes Kabel) durch die zweite Öffnung. Nachdem die beiden neuen Temperatursensoren an den entsprechenden Positionen meines Heizsystems angebracht waren musste ich sie nur noch im ESP-Easy Mega (https://www.letscontrolit.com/wiki/index.php/ESPEasyMega) sichtbar machen.
Ohnen viel Aufwand habe ich die Daten natürlich auch in Grafana verfügbar gemacht.
Eigentlich wollte ich nur einen Alarm von Grafana bekommen, wenn mein Pufferspeicher abkühlt und ich meinen Brunner Kachelofen heizen muss, damit über dessen eingebauten Wärmetauscher der Puffer wieder aufgeheizt wird. Aktuell bekomme ich diese Info zwar schon über den Hinweis „Puffer Laden“ am Bedienpanel des Ofens. Allerdings eben nur, wenn ich dort bin.
Beim Stöbern in Grafana entdeckte ich dort die Möglichkeit Alarme zu erstellen, die Push-Nachrichten in Form einer E-Mail versenden. Die Realisierung war dann doch etwas tricky. Im Admin-Modus lassen sich zwar die entsprechenden Parameter finden, aber leider nicht ändern. Dazu ist dann das direkte Editieren der Konfigurationsdatei „grafana.ini“ nötig.
Zwei kleine „Helferlein“ um die Daten ins Grafana zu bekommen
Um diese zu ändern brauchte ich zuerst eine Software um unter Windows auf die Daten meines RaspPI zugreifen zu können. Außerdem noch einen Editor zum Bearbeiten der Datei. Ich installierte putty.exe und nutzte den VI-Editor. Nach Erstellung einer Sicherungskopie (man weiss ja nie) und ein bischen probieren habe ich die Einstellung gefunden die in meinem Fall funktionieren.
Den Alarm selbst zu erstellen ist dann in Grafana relativ einfach.
In meinem Beispiel soll ein Alarm (und damit eine E-Mail) ausgelöst werden, wenn ich heizen muss, also die Temperatur unter 40° fällt. In der Praxis kommt es erfahrungsgemäß dazu, dass aufgrund von Sensortoleranzen oder anderen Einflüssen gleich mehrere Alarme ausgelöst werden, wenn der Wert um den Schwellenwert schwankt („Sägezahn-Kurve“)
Ich habe es deshalb so eingestellt, dass der Mittelwert der letzten 5 Minuten eine Minute lang unter der Schwelle liegen muss (Vor-Alarm: orange Linie). Die E-Mail wird aber erst nach weiteren 3 Minuten verschickt (rote Linie). Sobald der Grenzwert wieder überschritten wird, gibt das System schließlich noch eine OK-Info ab (grüne Linie). Das war´s auch schon. Ab sofort schickt mir Grafana einen Alarm per E-Mail, wenn das Wasser im Pufferspeicher abgekühlt ist und ich meinen Kachelofen heizen soll 🙂
Und gleich noch eine Anwendung mit Alarm
Noch während ich alles umgesetzt habe kam mir dann eine weitere Idee. Vor kurzem hatte ich meinen externen Außen-Temperatursensor in mein System eingebunden. Wäre es nicht schön, wenn ich vor Glatteis gewarnt würde? Nach fünf Minuten war ein zweiter Alarm (Außentemperatur < 2°C) programmiert. Heute Morgen war es dann auch kalt genug. Da ich stolzer Besitzer einer Smartwatch bin werde ich sogar unmittelbar am Handgelenk informiert – ohne Verzögerung.
Noch bevor ich meine erste Sensorbox in Betrieb genommen habe, hatte ich bereits eine Wetterstation von der ich mir jede Stunde Daten auf mein Smartphone schicken lies. Ich bin also seit einem halben Jahr „zweispurig“ unterwegs gewesen. Auf der einen Seite die Daten meiner Sensorboxen schön graphisch aufbereitet über Grafana 🙂 und auf der Anderen: Meine Außentemperatur (und andere Daten wie Windstärke und -richtung) gemessen auf meinem Hausdach. Stündlich aktualisiert als Einzelwert – aber keine Historie.
Außensensor ist Pflicht
Für die Heizungssteuerung ist ein direkter Vergleich von Außentemperatur und Heizungstemperaturen sinnvoll. Deshalb hatte ich bereits einen meiner Sensoren aus Außensensor missbraucht. Temporär und deshalb auch nicht professionell positioniert. Es zeigte sich, dass er deutlich „träger“ auf Temperaturschwankungen reagierte, als meine Wetterstation. Die befindet sich ca. einen halben Meter über meinem Dachfirst. Also bestand die Aufgabe darin die Temperatur meiner Wetterstation auch in Grafana zur Verfügung zu stellen.
Zuerst musste ich mir eine Übersicht machen, welche Tool dafür nötig waren.
Damit sind die folgenden Schritte notwendig um die Daten in Grafana darzustellen:
Die Daten müssen von api.weather.com abgeholt werden. Ich hatte das schon für mein Handy eingerichtet und konnte die URL einfach kopieren.
Dann müssen die Daten an den Message-Broker Mosquitto unter „openandhome“ publiziert werden.
Telegraf nimmt die Daten von Mosquitto und schreibt diese in eine Influxdb. Diese Daten können dann im Dashboard in Grafana angezeigt werden. Da ich unter „openandhome“ die Daten bei Mosquitto publiziere können diese Daten im Dashboard dann ohne weitere Aktion verwendet werden.
Die Umsetzung
Das zugehörige Script für meinen RasperryPi ist relativ übersichtlich. Im Prizip hat es nur drei Zeilen: Die Adresse und den API-Key für meine Außentemperatur, die Zuweisung der Variablen und schließlich den Mosquitto_pub zur Übertragung.
Da ich also seit 19:15 genauere Außentemperaturen zur Verfügung hatte, konnte ich meinen „poivisorischen“ Sensor meiner Sensorbox sinnvoller verwenden. Ich beschloss ihn an der Vorlaufleitung meines Kachelofens (der in einem Wärmetauscher Warmwasser erzeugt) zum Pufferspeicher zu befestigen. Ich kann also am Verlauf der blauen Kurve exakt Nachverfolgen, wann der Kachelofen heißes Wasser in den Pufferspeicher abgibt.
Abgleich aller Informationen
Das wirkt sich natürlich auch in einer steigenden Temperatur in meinem Pufferspeicher aus (gelbe Kurve). Der könnte aber auch von der Solar-Thermie auf meinem Dach kommen. Und zwar immer dann, wenn die Sonne scheint. An dieser Stelle schließt sich der Kreis dann wieder, weil dann (bei Sonnenschein) auch mein Außensensor (die neue grüne Kurve) einen Anstieg melden würde. – Also alles besser zu analysieren 🙂
Mein bisher „provisorisch“ verwendeter Außensensor befindet sich jetzt an der Leitung vom Kachelofen (mit Wasserwärmetauscher) zum Pufferspeicher. Er hilft mir auch hier die Zusammenhänge zu verstehen. Zum Beispiel war mich ein zweistufiger Verlauf wie die blaue Kurve ihn zeigt so überhaupt nicht bewusst. Ich vermute, dass es am Dreiwegeventil liegt, das erst komplett öffnet, wenn die Rücklauftemperatur in den Kessel des Kachelofens eine Mindesttemperatur übersteigt. Es bleibt spannend, welche weiteren Erkenntnisse sich durch mein neues Setup ergeben 🙂
Ich habe mir den Raspberry PI von OpenAndHome natürlich nicht nur beschafft und eingebunden um über die Software „Grafana“ schöne Kurven meiner Temperatursensoren anzuschauen, sondern um aus den Verläufen Rückschlüsse auf meine Heizungssteuerung zu bekommen und mein Verhalten hier zu optimieren – im besten Fall auch ein Stück „smarter“ zu machen.
Aus diesem Grund habe ich mich ein bisschen näher mit „Grafana“ beschäftigt. Nach erfolgreicher Einbindung meines Raspberry PI sieht meine Übersicht in Grafana noch relativ „übersichtlich“ 😉 aus, da das Programm als Standardeinstieg die letzten 6 Stunden anzeigt:
Anpassung der Darstellung
Zuerst hat mich gestört, dass Schwankungen meines „Wohnungs-Sensors“ kaum sichtbar sind, da er im Vergleich zu meinen beiden Heizungs-Sensoren deutlich niedrigere Werte aufzeichnet (ca. 20 statt 50°C) und somit eigentlich einen anderen Maßstab bräuchte. In Grafana kein Problem. Über das Menü kann man jede Sensorbox einzeln darstellen lassen:
Jetzt fällt mir auf, dass gerade im Wohnzimmer die Werte sehr „gezackt“ dargestellt werden.
Ich hinterfrage den Darstellungszeitraum – 6 Stunden. Das macht natürlich für eine richtige Analyse kaum Sinn. Über das Menü kann man sich voreingestellte Zeitraume auswählen. Aber hier kann Grafana bei mir zusätzlich Punkten, weil der Zeitraum auch absolut individuell eingestellt werden kann. Man gibt einfach einen Startpunkt (also das linke Ende der Grafik) und einen Endpunkt (rechts) ein und bekommt genau diesen Zeitraum angezeigt. Konkret möchte ich mir mal zwei bestimmte, repräsentative Tage beginnend am Morgen ansehen:
Das Ergebnis ist eine Darstellung, die schon deutlich aussagefähiger ist. Ich erkenne sowohl in der Wohnung, als auch in meinem Heiz- und Warmwasserspeicher je einen Temperaturanstieg über den Tag gesehen. Und hier ist eben die individuelle Auswahl eines repräsentativen Zeitraums wichtig. Da es an den letzten Tagen häufig bewölkt war, ist es sehr hilfreich, dass Grafana bestimmte Zeiträume auswählen kann. So kann man dann auch deutlich die kurzfristige Entnahme von Warmwasser beim Abfallen der mittlere Kurve erkennen.
Heizwasser
Beim Heizwasser sieht man dagegen, dass die Temperatur eher langsam über die komplette Nacht fällt, bis das Wasser am nächsten Tag wieder von der Sonne über meine Solaranlage erwärmt wird (obere Kurve). Genau so verhält sich auch der Temperaturverlauf in der Wohnung, die bewusst große Fenster nach Süden hat. Durch die separate Darstellung mit einem eigenen Maßstab ist der Verlauf nun auch viel besser sichtbar als beim ersten Einstieg.
Je länger ich mich mit diesen Kurven beschäftigte, desto mehr Erkenntnisse habe ich bekommen. Zum Beispiel sieht man, dass die Wohnungstemperatur schon zur Mittagszeit den Höchstwert erreicht, während mein Pufferspeicher bis in die Abendstunden geladen wird. Das liegt an der Ausrichtung meiner Fenster und meiner Solaranlage und ist so absolut plausibel.
Eine weitere Erkenntnis – Mit Holz heizen „bringt was“ 🙂
Die Frage ist ja, was passiert an den bereits erwähnten Tagen, wenn keine Sonne scheint und es draußen kalt wird. Der Wärmeverbrauch findet ja trotzdem statt. Wie jedes Haus besitzt auch meines eine Heizung, allerdings einen Stückholzofen mit Wasser-Wärmetauscher. Ein teil der Wärme wird also durch Konvektion in die Wohnung abgegeben, ein anderer Teil erwärmt mein Heizungs- und Brauchwasser. Auch hier erlaubt mir Grafana einen Ausschnitt zu wählen, in dem dies deutlich erkennbar ist (Stelle links, an der der „Cursor“ steht):
Fazit
Grafana ist eine sehr einfache, aber hilfreiche Möglichkeit meine Daten zu analysieren und entsprechende Rückschlüsse aus den Messwerten meiner Sensoren zu ziehen. Ich werde mit Sicherheit noch weitere Erkenntnisse sammeln 🙂
Die Daten meiner Sensorboxen sind in meinem privaten Netzwerk rund um die Uhr verfügbar. Jetzt möchte ich natürlich auch von unterwegs aus Zugriff haben – und zwar so, dass auch nur ich selbst die Werte einsehen kann.
Da bietet sich eine sogenannte VPN-Verbindung mit meiner FritBox an. „VPN“ steht für „Virtuelles Privates Netzwerk“ und ermöglicht es mir kennwortgeschützt von überall aus auf die Daten in meinem Heimnetz zugreifen zu können. Das Einrichten ist relativ einfach. Zuerst füge ich in meiner FritzBox unter „Internet>Freigaben>VPN“ eine neue Verbindung hinzu.
Einstellungen der Fritzbox
Einstellungen am Smartphone
Danach wähle ich an meinem Smartphone „Einstellungen>Weitere Verbindungen>VPN“ und „VPN hinzufügen“
Danach übertrage ich die Daten meiner Fritzbox auf mein Smartphone
Sobald alle nötigen Daten eingetragen sind, ist mein VPN-Zugang „Home“ verfügbar
… und sobald die Verbindung hergestellt ist, habe ich von Überall aus Zugriff auf meine Daten:
Meine beiden Temperatursensoren in meinem Pufferspeicher habe ich jetzt seit einigen Tagen im Betrieb. Dauernd Temperaturen ablesen und sich merken ist aber auch blöd. Da habe ich mich natürlich sehr über meine nächste Lieferung von OpenAndHome gefreut. Wie immer alles sehr wertig und inclusive Installationsanleitung.
Da ich schon viel vom Mini-Computer Raspberry PI gehört habe war meine Neugier natürlich groß und ich habe ihn mir natürlich mal genau angesehen. Links geht es los mit dem USB-C Stromanschluss, zwei HDMI- und einer Video/Audio-Analogschnittstelle. Auf der anderen Seite sind jeweils 2x USB 2.0 und 2x USB 3.0 Anschlüsse und ein LAN-Eingang. Für meine Zwecke brauche ich zwar nur Strom und LAN, aber durch diesen beschriebenen Standard können sehr große Serien gefertigt und der RaspPI entsprechend günstig hergestellt werden.
Natürlich konnte ich es mir nicht nehmen lassen mal den Deckel zu lüften. Auffällig waren die beiden grauen Kühleinheiten (links oben). Wieder ein Beispiel, dass OpenAndHome weiter denkt und auf Nummer sicher geht. Gekühlte Elektronikbauteile haben einfach eine größere Lebenserwartung.
Das Anschließen war ein Kinderspiel. 1. Netzteil in die Steckdose, Ladekabel in den RaspPI. 2. Mit dem LAN-Kabel mit der Fritzbox verbinden.
Die Mitgelieferte Sensorbox ist berreits auf den Raspberry PI – also meinem Datensammler – eingelernt. Mit Hilfe der Installationsanleitung war es ein Kinderspiel die aufgezeichneten Daten an meinem Notebook verfügbar zu machen. Einmalig bei „Grafana“ anmelden und schon startet die erste Temperaturkurve auf dem Bildschirm.
Und dann zeigte sich wieder einmal wie felxibel das System von OpenAndHome ist. Meine Fritzbox ist in meinem Büro untergebracht. Viel Interessanter ist für mich jedoch die Temperatur im Wohnzimmer. Also einfach die neue Sensorbox dorthin „umgezogen“ und an eine vorhandene Steckdose angeschlossen. Ziel dieser Anschaffung war es ja auch, meine Temperaturdaten aus meinem Pufferspeicher aufzuzeichnen. Die Sensorbox leifert diese ja bereits in mein Netzwerk – also habe ich diese auch im Datensammler verknüpft. Und so liefert mir Grafana ab sofort drei Kurven: Oben, die Warmwasser- und Heizungstemperatur in meinem Pufferspeicher, unten die Temperatur im Wohnzimmer (Achtung, anderer Maßstab).
Deutlich zu erkennen: Am Tag sind jeweils die Temperaturen gestiegen, weil die Sonne das Wohnzimmer direkt, oder mein Wasser über die Solaranlage gewärmt hat. Auch schön zu sehen: Am zweiten Tag gab es Mittags ein Gewitter. Zwischen etwa Zwölf und Vierzehn Uhr – keine Temperatursteigerungen. Die steileren Abfälle der Warmwasserkurve kommen vom Duschen.
Als ich das Paket von openandhome ausgepackt habe war ich zuerst vom professionell anmutenten Inhalt begeistert. Die Sensoren, Kabel und das Gehäuse machen auf mich den Eindruck „Industriestandard“.
Die beiliegende Anleitung ist eine Schritt für Schritt Anleitung, die eine schnelle Inbetriebnahme ermöglicht. Zuerst steckte ich den USB Anschluss in mein Laptop und verband mich mit dem WLAN, das die Sensorbox anschließend aufgebaut hat.
Natürlich habe ich diese Seite sowohl am Laptop als auch auf meinem Smartphone sofort als Favorit abgelegt.
Für meine „händische“ Heizungssteuerung bin ich schon lange auf der Suche nach einer smarten Lösung. Mein Energiehaushalt stellt sich folgendermaßen dar: Meine Solaranlage erzeugt ausreichend Warmwasser im Sommerhalbjahr. Sobald diese Wärmemenge nicht mehr ausreicht heize ich das Wasser über den Wärmetauscher meines Stückholzofens, der sozusagen als „Abfallwärme“ über Luftkonvektion noch einzelne Zimmer heizt.
Dem gegenüber stehen zwei Verbraucher: Meine Gebäudeheizung und das Brauchwasser, zum Beispiel für Duschen etc. Während die Fußbodenheizung mit Vorlauftemperaturen von unter 30° C auskommt benötige ich für das Brauchwasser natürlich höhere Temperaturen. Um diese beiden Energielevel voneinander zu trennen besitze ich einen Wasser-Schichtenspeicher.
Die spannende Frage ist dann jeweils, ab wann muss der Holzofen befeuert werden. Wenn sich zum Beispiel die Heizwassertemperatur gerade an der Untergrenze befindet, aber die Sonne aufgeht und ein wolkenloser Tag bevorsteht, muss nicht neu angeheizt werden. Allerdings ist dazu eine gewisse Erfahrung und vor allem der Zugriff auf die Temperaturen in meinem Speicher nötig.
Der besitzt zwar Temperatursensoren, diese sind aber in die Heizungssteuerung eingebunden, nur im Heizraum verfügbar und nicht komfortabel ablesbar.
Ich suchte also eine Möglichkeit die aktuellen Temperaturen im Speicher für meinen Heiz- und den Warmwasserkreis jederzeit im Blick zu haben.
Mit einer Sensorbox von OpenAndHome konnte ich das jetzt sehr einfach realisieren 😊 Da nur für die Stromversorgung ein USB-Anschluss nötig ist, war ich sehr flexibel und brachte sie im Heizraum in der Nähe des Pufferspeichers und meiner Solaranlage an. So habe ich alles an einer zentralen Stelle. Die Datenübertragung erfolgt nämlich über mein eigenes WLAN-Netz und ist deshalb für andere nicht einsehbar, ein deutlicher Vorteil gegenüber offenen Cloud-Lösungen.
Auch die langen mitgelieferten Sensorkabel trugen zur Flexibilität bei. Ich führte Sie von der Sensorbox über bereits vorhandene Kabelschächte bis zu meinem Pufferspeicher. Der geschlitzte Isoliermantel ermöglichte es mir die Kabel innerhalb der Isolierung bis zur Position der Sensoren zu verlegen. Damit liegen sie nicht am Metallbehälter meines Speichers an und sind entsprechend vor hohen Temperaturen geschützt. Lediglich die Sensoren selbst berühren die metallische Außenhülle meines Pufferst und zwar der Sensor für die Fußbodenheizung in meinem Fall bei 100cm und der für Warmwasser bei 150 cm über Fußboden. Diese beiden Höhen habe ich der Montageanleitung des Speichers entnommen.
Anschließend habe ich die Sensorbox in meinem WLAN-Netzwerk eingebunden. Dank der mitgelieferten Schritt-für-Schritt Anleitung kein Problem. Sofort konnte ich über die entsprechende http-Adresse meine beiden Temperaturen auf jedem Internetfähigen Gerät abrufen.
Das war mir jedoch nicht komfortabel genug. Ich programmierte ein entsprechendes Script in der Smartphone-App „Tasker“ und übertrug diese beiden Werte an eine weitere App („Minimalistic Text“), die sie mir jetzt immer auf meinem Homebildschirm, stündlich aktualisiert darstellt. Da dort die aktuellen Wetterbedingungen und -prognosen verfügbar sind, kann ich jetzt wesentlich effektiver meine Heizung steuern 😊
Als nächste Schritte könnte ich mir eine Einbindung weiterer Sensoren, zum Beispiel Temperatur in einzelnen Räumen und Außentemperatur vorstellen. Außerdem möchte ich zukünftig auch meine Daten aufzeichnen um daraus weitere Erfahrungen für mein System zu sammeln. Das könnte dann wieder die Basis für weitere Programmierungen und Automatisierungen sein.
Wir sind für Transparenz und Offenheit und verwenden daher nur Opensource-Software und stellen unsere Anpassungen ebenfalls wieder für die Gemeinschaft zur Verfügung.