NodeRED: Subflow Heizprofil einstellen

Ich möchte in jedem Raum ein separates Heizprofil für die Thermostate auswählen können, damit der Heizkörper bei einer Feier nicht bereits in die Nachtabsenkung geht. Diese Einstellung pro Raum soll durch eine globale Einstellung überschrieben werden können, damit ich das gesamte Haus in einen definierten Zustand versetzen kann. Im Alltag hat sich für mich herausgestellt, dass ich mit vier Profilen auskomme. Ich verwende Homematic IP Heizkörper und Wandthermostate*, von denen die Basic-Thermostate HmIP-eTRV-B* maximal drei Profile im Gerät speichern können. Das von mir verwendete vierte ist jedoch kein „richtiges“ Profil sondern schaltet das Thermostat nur in einen manuellen Frostschutz-Modus.

Dafür habe ich mir einen Subflow erstellt, der die Nachricht für das Homematic IP Thermostat erstellt.

Verwendete Heizprofile

Für jedes Thermostat gibt es immer alle drei Profile. Auch wenn es im Schlafzimmer immer 18°C warm sein soll, gibt es diese Profile, eben drei mal mit durchgängig 18°C.

  • Arbeit: Da wir regelmäßige Arbeitszeiten ohne Schichten haben, genügt uns hier ein Thermostat-Profil. Enthalten ist eine Nachtabsenkung und morgens sowie nachmittags bis abends warme Zimmer.
  • zu Hause: Dieses Thermostat-Profil enthält die Einstellungen für den Fall, dass wir ungeplant zu Hause sind. Also tägliches Heizen und wiederum eine Nachtabsenkung.
  • Party: Das ist ein Profil, mit dem die Raumtemperatur auf der Komforttemperatur gehalten wird. Eine Nachtabsenkung gibt es nur in den Schlafräumen. Hierzu müssen wir jedoch, je nach Jahreszeit, noch unsere Heizung umstellen, da diese selbst sonst in die Nachtabsenkung geht und an den Heizkörpern nichts mehr ankommt.
    Wenn Du auf die automatische Nachtabsenkung verzichten kannst, so benötigst Du kein separates Profil im Thermostat, da es wie das nächste Profil „aus“ behandelt werden könnte.
  • aus: Dieses Profil wird abgebildet, indem das Thermostat in den manuellen Modus gestellt sowie die niedrigste Temperatur für den Frostschutz eingestellt wird. Ich stelle zudem gleich das Hauptprofil „Arbeit“ ein, damit ich am Raumthermostat auf „Automatik“ stellen kann.

Subflow für die Profilauswahl

Der Subflow ist überschaubar und enthält nur wenige Nodes. Er unterscheidet nach eingehendem Topic, ob das Profil umgeschalten werden soll oder nur temporär eine andere Temperatur gewünscht ist.

Subflow zur Profilauswahl
Subflow zur Profilauswahl

Nach dem Import musst du noch dein Thermostat anpassen, gegebenenfalls auch noch den eingehenden Link.

Bearbeiten der Eigenschaften des Thermostat-Nodes
Bearbeiten der Eigenschaften des Thermostat-Nodes

Verwendung

  • Der Subflow bekommt über ein Dropdown-Node in Textform mitgeteilt, welches Profil gewünscht ist. Dieser Wert kann durch eine globale Einstellung überschrieben werden.
  • Der eingestellte Wert wird im Flow gespeichert, damit bei einem Neustart der Wert zur Verfügung steht.
  • Zusätzlich habe ich noch zwei optionale Buttons vorgesehen, die ich für temporäre Temperaturänderungen verwende. Das hat sich bei Thermostaten mit Kindersicherung als praktisch erwiesen 🙂
Verwendung des Subflows
Verwendung des Subflows

Hinweis
Ich hätte gern die UI-Elemente (Dropdown-Node und die beiden Buttons) sowie das Sichern des aktuellen Profils mit in den Subflow gezogen. Leider kann man, wenn man Standard-Nodes verwendet, den Elementen im Subflow nicht programmatisch sagen, wohin sie platziert werden sollen. Auch hat ein Subflow keinen Zugriff auf die Umgebung des aufrufenden Flows, um dort Daten zu speichern oder abzufragen.

Darstellung in der UI

In meiner UI habe ich eine globale Einstellung, die alle Thermostate auf einen definierten Wert setzt:

Eine globale Einstellung wird verwendet, um alle Thermostate in einem „Rutsch“ zu setzen.
Das gleiche Dropdownfeld findet sich auch in der Raum-Einstellung, um die globale Einstellung zu überschreiben.

Für die Raumeinstellung nutze ich den Node node-red-contrib-ui-level, welchen du über „Palette verwalten“ des Hamburgermenüs installierst.

Für die UI wird der Level-Node, ein Dropdownfeld und ein paar Taster genutzt.
Für die UI wird der Level-Node, ein Dropdownfeld und ein paar Taster genutzt.

Updates

  • 17.02.2023: Typos
  • 22.01.2023: Abschnitt für die UI hinzugefügt
5/5 - (3 votes) // Hilf durch deine Bewertung mit, diesen Blog zu verbessern!
Abonnieren
Benachrichtige mich bei
5 Kommentare
Älteste
Neueste Beliebteste
Inline Feedbacks
Alle Kommentare