Home Assistant Anleitung how to… Entwicklung von Entity-Werten mittels Ableitung interpretieren

Ich hatte ja bereits ausgeführt, dass ich mittels Home Assistant die Temperatur unserer Sauna „überwache“. Hierfür habe ich mittels ESPHome ein günstiges Thermometer für entsprechend hohe Temperaturen eingebunden und weiß so jederzeit, wie warm es in der Sauna ist.

Wie auch auch bereits geschrieben habe, möchte ich immer dann eine todoist-Aufgabe „Keller wischen“ erstellt bekommen, wenn ich mit dem Saunieren fertig bin.

Aber woran erkenne ich und, ob ich mit dem Saunieren wirklich fertig bin?

Klar, das naheliegendste ist eine simple Prüfung ob die Temperatur unterhalb eines bestimmten Schwellwertes liegt. Denn wenn es beispielsweise kälter als 25 Grad in der Sauna ist, ist diese wohl nicht eingeschaltet.

Wenn nun aber der ESPHome-Sensor (warum auch immer!) zwischenzeitlich nicht verfügbar (also unavailable) ist und dann wieder verfügbar ist, wird die Prüfung „Temperatur < 25 Grad“ triggern!

Home Assistant: How to... Kurzanleitungen und Nützliches für Home Assistant!

Natürlich kann man diesen Umstand ignorieren, oder man ist ein Freak wie ich, und sucht nach einer besseren Lösung! 🙂

Die Lösung des Problems lautet Ableitung – also auf Englisch Derivative (Home Assistant Derivative)!

Mittels einer Ableitung einer Funktion erhält man die Info, ob die Funktion steigt oder sinkt. Also benötige ich eine Ableitung der Temperatur der Sauna. Denn nur wenn die Temperatur tatsächlich sinkt, möchte ich meine Automation ja auslösen lassen.

In Home Asistant definiert man hierfür einfach einen neuen Sensor, welche ich „sauna_derivative“ nenne. Hierbei legen wir fest, auf welchen Wert (also welche „Funktion“) sich die Ableitung beziehen soll und welcher Zeitraum hierbei betrachtet werden soll.

sensor:
- platform: derivative 
  source: sensor.temperatur_sauna
  name: sauna_derivative
  time_window: "01:00:00"

In meinem Fall habe ich eine Stunde (time_window: „01:00:00“) für die betrachtete Zeit gewählt.

Als Ergebnis erhalte ich nun einen neuen Sensor: sensor.sauna_derivative, welcher den Wert der Ableitung der Temperatur enthält.

Der Wertverlauf des neuen Sensors sieht dann konkret wie folgt aus:

Home Assistant Anleitung how to... Entwicklung von Entity-Werten mittels Ableitung interpretieren

Wenn die Sauna nicht in Betrieb ist, ist der Derivative-Sensor um den Wert Null (Bereich vor 18:45). Dann schalte ich die Sauna ein und die Kurve steigt deutlich an. Gegen 19:30 habe ich die Temperatur weiter hochgeschaltet, was den Sprung erklärt.

Gegen 21:30 war ich mit dem Saunieren fertig und der Sensor fällt deutlich ins Negative.

Aus „Versuchen“ weiß ich, dass es bis ca. -50 runtergeht. Also habe ich meine Automation wie folgt angepasst:

- alias: "Wischen nach Sauna"
  trigger:
    platform: numeric_state
    entity_id: sensor.sauna_derivative
    below: -40
    for:
      minutes: 1
  condition:
    condition: template
    #6*60*60=21600
    value_template: '{{ as_timestamp(now()) - (as_timestamp(state_attr("automation.wischen_nach_sauna", "last_triggered")) or 0) > 21600 }}'
  action:
  - service: todoist.new_task 
    data:
      content: Keller wischen!
      project: F5c
      due_date_string: Tomorrow

Sobald der Derivative-Sensor für mindestens eine Minute kleiner als -40 ist, wird die Automation getriggert.

Bislang hatte ich mit dieser Lösung noch keine falsche Auslösung der Automation, was mathematisch für mich auch absolut Sinn macht.

Die Lösung finde ich persönlich deswegen absolut genial, da fail-proven und dennoch einfach!

Weitere sinnvolle Anwendungsfälle habe ich für den Derivative-Sensor noch nicht!

Hierbei handelt es sich um einen von mir so genannten Quicktipp. In dieser kleinen „Home Assistant how-to“ Reihe, gebe ich hilfreiche Tipps und Tricks, welche mir die Arbeit mit Home Assistant vereinfachen und deswegen vielleicht auch für dich hilfreich sein können!

Dieser Beitrag ist Teil einer kleinen Beitrags-Serie rund um den hass.io Home Assistant.

AngebotBestseller Nr. 1
Echo Dot (3. Gen.) Intelligenter Lautsprecher mit Alexa,...*
  • Unser beliebtester smarter Lautsprecher – Jetzt mit neuem...
  • Steuern Sie die Musikwiedergabe per Sprachbefehl – Streamen Sie...

*= Preis inkl. MwSt., ggf. zzgl. Versandkosten. Letzte Aktualisierung vor 60 Minuten / Affiliate Links / Bilder von der Amazon Product Advertising API. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.

Schreibe einen Kommentar

Die folgenden im Rahmen der DSGVO notwendigen Bedingungen müssen gelesen und akzeptiert werden:
Durch Abschicken des Formulares wird dein Name, E-Mail-Adresse und eingegebene Text in der Datenbank gespeichert. Für weitere Informationen wirf bitte einen Blick in die Datenschutzerklärung.