PUZZELN FÜR FORTGESCHRITTENE – NODE-RED II – ENERGIEEFFIZIENTE POOLSTEUERUNG

Im letzten Teil haben wir uns angeschaut wie die Weihnachtsbaumbeleuchtung mit Hilfe einer Handvoll Puzzleteilen automatisch an- und wieder ausgeschaltet werden kann. Darüber hinaus haben wir euch gezeigt wie auf Wunsch beim Ein- bzw. Ausschalten eine Telegram-Nachricht verschickt wird. Über den Nutzen dieser „Spam“-Aktion in diesem Beispiel kann natürlich diskutiert werden, dafür gibt es deutlich bessere Anwendungsfälle, wie zum Beispiel die Benachrichtigung, wenn ein Fenster bzw. eine Türe zu lange geöffnet ist. Aber ohne jetzt weiter um den heißen Brei herum zu reden geht es jetzt wie versprochen ans Eingemachte!

Vor ein paar Wochen wurde unsere SEVEN|O Anbindung an Node-RED fertig und ist bereits in der Node-RED Sammlung frei verfügbar und kann von jedermann genutzt werden. Das ist jedoch nicht alles! So kurz vor Ostern können wir euch eine kleine Überraschung ins Nest legen, denn nicht nur die SEVEN|O Command Anbindung ist verfügbar, sondern darüber hinaus ist auch bereits die Anbindung ans BusJournal verfügbar. Diese zusätzliche Anbindung ermöglicht die Nutzung aller getrackten Daten, was den großen Vorteil mit sich bringt, dass Altdaten genutzt werden können und dies eine Vielzahl von zusätzlichen Logiken ermöglicht. Dazu aber später mehr im Beispiel.

Starten wir mit neuen Node-RED Nodes

Der SEVEN|O Command Node ist ein Baustein, bei dem aus der Liste aller in der SEVEN|O Instanz konfigurierten Commands selektiert werden kann. Das Besondere an diesem Node ist, dass er bidirektional genutzt werden kann. Das bedeutet der Node kann zum einen als Eingang genutzt werden, so dass Zustandsänderungen des ausgewählten Commands bereitgestellt und in der folgenden Logik genutzt werden können, wie zum Beispiel der Helligkeitswert von der Wetterstation, so dass die Weihnachtsbaumbeleuchtung bei einem definierten Wert automatisch eingeschaltet werden kann. Zum anderen kann der Node auch als Ausgang genutzt werden, so dass der entsprechende Command gesteuert werden kann, also zum Beispiel das Ein- bzw. Ausschalten der Weihnachtsbaumbeleuchtung.

Der SEVEN|O BusJournal Node ist ein Baustein bei dem ebenfalls aus der Liste aller in der SEVEN|O Instanz konfigurierten Commands selektiert werden kann. Jedoch unterscheidet sich hier die Funktionsweise. Der BusJournal Node startet die Anfrage von Altdaten im BusJournal. Sobald die zeitlich sortierte Ergebnisliste verfügbar ist wird das Ergebnis am Ausgang als Nachricht bereitgestellt und kann in den folgenden Node’s durch eine benutzerdefinierte Auswertung verwendet werden. Das hilft zum Beispiel, wenn man ermitteln will wann es zum Beispiel das letzte mal geregnet hat oder wann eine bestimmte Aktivität stattgefunden hat. Darüber hinaus können die Daten genutzt werden um Auswertungen wie Verbrauch, durchschnittliche Laufzeit, Temperaturverlauf, uvm. zu erstellen und zu nutzen.

Eine ausführliche Beschreibung wie die SEVEN|O Nodes konfiguriert werden müssen steht im Repository immer in der aktuellsten Version zur Verfügung.

Genug der Theorie!

Ein SmartHome verbindet Komfort, Luxus und Energieeffizienz. Genau das wollen wir durch die folgende Logik erreichen, indem der Whirlpool energieeffizient betrieben werden soll. Im optimalen Fall wird für die Heizung und Reinigung der selbst produzierte Strom genutzt.

Unterteilt ist die Steuerung in 3 Logiken

Die erste Funktion ist relativ einfach gehalten und hat nur die Aufgabe auf die eingestellte Zieltemperatur des Whirlpools zu lauschen. Ändert sich die Zieltemperatur wird diese über den SEVEN|O Command Node bereitgestellt und wird danach in die Node-RED Session gespeichert, so dass aus sämtlichen Logiken auf diesen Wert zugegriffen und damit auch genutzt werden kann.

Die zweite Funktion ist die eigentliche Logik um die Whirlpool-Heizung und Zirkulationspumpe, welche für die Reinigung genutzt wird, energieeffizient zu nutzen.

Fangen wir mit der Heizung an:

  • Die wichtigste Information, um zu entscheiden, ob die Heizung aktiviert werden soll oder nicht ist zweifelsohne die aktuelle Wassertemperatur. Ist die aktuelle Wassertemperatur mindestens 1 Grad kälter als die Zieltemperatur, dann ist diese Bedingung erfüllt.
  • Soll also geheizt werden, dann wird als nächstes überprüft ob die Photovoltaikanlage aktuell genug Strom produziert, so dass der selbst produzierte Strom genutzt werden kann, also kein externer Strom genutzt werden muss.
  • Ist auch diese Bedingung erfüllt, wird anhand der Daten eines Online Wetterdienstes (in diesem Fall OpenWeatherMap) geprüft, ob die Wettervorhersage für die folgenden 3 Stunden Sonne vorhersagt, so dass auch dort der selbst erzeugte Strom genutzt werden kann.

Sind all diese 3 Bedingungen erfüllt dann wird die Whirlpool Heizung aktiviert.

Zusätzlich zu den beschriebenen 3 Bedingungen wird zusätzlich mit Hilfe des BusJournal-Node überprüft ob die Zirkulationspumpe in den letzten 6 Stunden aktiviert war. War die Zirkulationspumpe in den letzten 6 Stunden nicht aktiv, hat also keine Reinigung stattgefunden, dann wird zusätzlich zur Heizung auch noch die Zirkulationspumpe aktiviert.

Damit der Badespaß nicht in einem Überlebenstraining der Navy Seals im kalten dreckigen Wasser endet, benötigt es jedoch noch einen Notfallplan, so dass auch im Fall das über einen längeren Zeitraum keine Sonne verfügbar ist das Wasser beheizt und gereinigt wird. In dieser Funktion wird mit Hilfe des BusJournals unabhängig zum aktuellen Wetter überprüft ob in den letzten 12 Stunden eine Reinigung stattgefunden hat oder nicht. Hat keine Reinigung stattgefunden wird sowohl die Zirkulationspumpe als auch die Whirlpool-Heizung aktiviert, so dass der Reinigungszyklus maximal 12 Stunden beträgt.

Ein weiterer Grund dieses maximalen Zyklus ist die Kontrolle der Wassertemperatur die nicht zu stark von der Zieltemperatur abweichen sollte, so dass nicht übermäßig viel Energie investiert werden muss um die Zieltemperatur zu erreichen.

Zusammenfassung

Wie hier schön zu sehen ist, kann durch die Verwendung von unterschiedlichen Diensten durch eine einfache Logik eine energieeffiziente Nutzung erreicht werden. Die beschriebene Funktionalität lässt sich ohne viel Aufwand und weitere Anwendungsfälle wie Waschmaschine, Trockner, Spülmaschine und vieles mehr transportieren.

Eine energieeffizientere Nutzung im eigenen Haushalt bleibt kein unerfüllbarer Wunsch!

Hat der Artikel euer Interesse geweckt? Wollt ihr noch einen weiteren Artikel zu diesem Thema? Dann meldet euch doch gerne bei mir!

By Published On: 27.3.2021Categories: Blog, KNX, Node-RED, SEVEN|O, Smart Home0 Comments