openHAB sorgt für ein warmes Bad – Teil 2

Vor einiger Zeit habe ich dir beschrieben, wie ich das HomeMatic-Termostat HM-CC-RT-DN in openHAB eingebunden habe. Dabei hatte ich den Fokus auf die manuelle Steuerung gelegt. Nun möchte ich dir beschreiben, wie du die mitgebrachten Thermostat-Modi ansteuern kannst.

HomeMatic bietet vier Modi, die du nutzen kannst:

  • Automatik (AUTO-MODE), wird über die HomeMatic-Konfiguration, z.B. die Software oder direkt am Thermostat programmiert.
  • Manuell (MANU-MODE), ist das Programm für das händische Festlegen der Temperatur etc. z.B. über openHAB. Die Temperatur bleibt bis zur nächsten Änderung bestehen.
  • COMFORT_MODE und LOWERING_MODE sind eigentlich gar keine weiteren Modi, sondern „drehen das Einstellrad“ auf genau die jeweils voreingestellten bzw. definierten Werte für Comfort- (Tag) und Spar- (Nacht) Betrieb. Es sind quasi zwei Werte zur Schnelleinstellung der (Soll-)Temperatur.
  • Boost (BOOST-MODE) – für eine definierbare Zeit wird das Ventil geöffnet; ist z.B. interessant, wenn du zum Baden den Raum aufwärmen willst. Die Dauer definierst du auch in der HomeMatic-Konfiguration. Anschließend springt das Thermostat wieder auf den ursprünglichen Modus zurück.
    (Quelle: Auszug aus dem Homegear-Forum, https://forum.homegear.eu/viewtopic.php?t=386)

 

Folgende Items brauchst du:

 

Und hier die Datei „bad.rules“, die im Hintergrund das Schalten der Modi übernimmt. Die erste Regel setzt nach deiner Auswahl den jeweiligen Modus, die zweite aktualisiert den Item in der Sitemap, damit du den aktuellen Status auch ablesen kannst:

Wundere dich nicht, zu Test- und Kontrollzwecken lasse ich mir beim Ändern des Modus eine Push-Nachricht von Telegram senden.

Und nun noch die Einbindung in die Sitemap:

 

Damit der Item „Temp_EG_Bad_modus_akt“ in openHAB sprechende Status-Hinweise gibt, hinterlegst du die Übersetzung in die HM-CC-RT-DN.map ab, die im Unterverzeichnis „transform“ liegt:

 

Mittlerweile setze ich ein Fensterkontakt ein, um bei offenen Fenster die Temperatur zu senken und per Push-Nachricht auf das offene Fenster hinzuweisen. Hierzu brauchst du nur ein Item:

Und eine Map „contact.map“ für sprechende Statushinweise:

Und eine Regel, die bei geöffneten Fenster, die Soll-Temperatur auf 5 Grad senkt:

 

Hat es geklappt? Hinterlass doch einen Kommentar. Ich freue mich über jede deiner Rückmeldungen!

7 Gedanken zu „openHAB sorgt für ein warmes Bad – Teil 2“

  1. Hi, vielen Dank für die tolle Aufbereitung des Themas.
    Ich sehe in den Rules das du immer direkt den gewählten Modus mit ON einschaltest. Wie sind hier deine Erfahrungen mit dem Wechsel von Comfort auf Lowering, oder von Manuell nach Auto?
    Ich habe mit einem Thermostat einige Zeit experimentiert und letztlich die Rule so geschrieben, dass ich zuerst Auto, Comfort und Lowering explizit auf OFF setze bevor in der case-Auswahl der gewählte Modus auf ON gesetzt wird. Den Manuell-Modus habe ich gar nicht, da die gewünschte Temperatur auch im Auto-Modus gesetzt werden kann. Dies hat für mich den Vorteil, dass beim nächsten zeitlich eingestellten Update die Temperatur wieder zurückgesetzt wird.

    rule …
    when
    item Modus received command
    then
    sendCommand(…AutoMode, OFF)
    sendCommand(…AutoMode, ON)
    sendCommand(…ComfortMode, OFF)
    sendCommand(…LoweringMode, OFF)
    Switch Modus.state
    case 1 : sendCommand(…ComfortMode, ON)
    case 2 : …

    1. Bisher hatte ich mit dem Umschalten keinerlei Probleme. Aber ich finde deinen Hinweis sehr wertvoll und werde meine Rules nochmals auf die Probe stellen. Ein explizites Ausschalten bevor der Modus gesetzt macht durch aus Sinn!

      1. Ich habe es mit den Einstellungen von Marc probiert und es funktionierte nur ein- oder zweimal nach dem restart von openhab.
        Nach dem Einfügen von ‚forceUpdate=true‘ bei den Switch-items von AUTO_MODE, BOOST_MODE, COMFORT_MODE, LOWERING_MODE und dem Number-item von MANU_MODE, klappt es hervorragend.
        (z.B: Switch Temperature_EG_Living_Mode_Auto { homematic=“address= LEQ1206428, channel=4, parameter=AUTO_MODE, forceUpdate=true“ })

  2. Hi,

    sehr gut und sehr interessant, besonders die Störungsauswertung.
    Aber vestanden habe ich nicht, warum du die Absenkung bei geöffnetem Fenster über openHAB realisierst, wobei ein direktes Pairing doch einfacher is.

    Gruß Hans-Gerd

    1. …natürlich wäre das einfacher, aber das kann doch jeder 😉
      Ernsthaft: Ich arbeite gerne mit Statusnachrichten über Pushover bzw. nun Telegram. Ich lass mich z.B. über das offene Fenster per Push-Nachricht informieren. Und das klappt nur, wenn die gesamte Logik über openHAB gesteuert wird.

      1. Hallo,

        bzgl. Pairing (eigentlich Teaming): Sendet der Fensterkontakt denn dann ausschließlich an das Thermostat? Ansonsten wäre eine Auswertung einer Rule bzgl. Telegram weiterhin möglich, aber die Temperatursturz-Erkennung wäre nicht von einer funktionierenden Rule-Engine abhängig.

        Gruß

        Christoph

        1. Hallo Christoph, ich habe den Fensterkontakt nicht mit dem Thermostat verbunden. openHAB vermittelt hier. Die Themperatursturz-Kennung vom Thermostat habe ich ausprobiert, funktionierte aber nicht so wie ich es mir vorgestellt habe.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.