Hinzufügen eines Timers in Home Assistant

In diesem Beitrag werden wir etwas sehen, das in jedem Haus sehr nützlich und üblich ist, Verwenden von Timern, um eine Aktion zu beenden, wie zum Beispiel das Einschalten der Heizung während der von uns gewählten Zeit und das Ende der Laufzeit, dann ausschalten. Sowie die Bewässerung des Gartens oder was auch immer in den Sinn kommt.

 

Die Idee ist dies, haben in unserem Home Assistant eine Oberfläche wie die oben. Wissen, ob etwas läuft oder nicht, wie wir das Beispiel unseres eigenen Thermostats machen werden. Wir können es mit dieser Taste ein- oder ausschalten und müssen auch die Anzahl der Minuten angeben, die diese Aktion dauern soll. Alles vollständig anpassbar, klar.

gut, gut zu beginnen, Wir werden verschiedene Konfigurationen in unsere Konfigurationsdatei configuration.yaml einfügen, Einerseits werden wir einen binary_sensor haben, der die Entität für die Heizung sein wird, und durch MQTT werden wir in der Lage sein, seine zu steuern und zu kennen 2 Zustand, Entweder ist die Heizung eingeschaltet oder nicht, also im Abschnitt über binäre Sensoren, wir registrieren es:

binary_sensor:
...
  - Plattform: mqtt
    Name: "Heizung"
    state_topic: "RFBridge / Pfad"
    Availability_Topic: "Tele / Sonoff-Brücke-04/LWT"
    qos: 1
    payload_on: "Weg"
    payload_off: "Sin Cale"
    payload_available: "Online"
    payload_not_available: "Offline"
    Geräteklasse: Hitze
...

 

Wir benötigen außerdem einen input_boolean, um ihn über die GUI verarbeiten zu können, und dann lesen die Automatisierungen seinen Status (on u off) und tun, was sie zu tun haben, so in besagtem Abschnitt, wir hinzufügen:

input_boolean:
...
  timer_cale:
    Name: timer_cale
    Initiale: aus

 

mehr, Wir müssen eine Entität vom Typ Timer erstellen, Dies wird der Timer sein:

Timer:
...
  timer_cale:
    Name: timer_cale
    Dauer: 1800
...

 

und schließlich, Wir werden eine input_number hinzufügen, Dies ist ein numerischer Wert, den wir über die GUI bearbeiten und die Zeit einstellen können, zu der die Heizung eingeschaltet werden soll (in diesem Beispiel). Wir werden den Anfangswert angeben, in meinem Fall 60 (Minuten); einige minimale und maximale Werte, in meinem Fall 0 und 240 (Minuten) und schließlich der Sprung zwischen Zahl und Zahl, ich werde benützen 15 (Minuten), wir hätten so etwas wie:

input_number:
...
  timer_cale:
    Name: timer_cale
    Initiale: 60
    mir: 0
    max: 240
    Schritt: 15
    Modus: Schieberegler
...

 

Wir speichern die Datei und wie immer, Wir starten Home Assistant neu, um die neu hinzugefügte Konfiguration neu zu laden. Als nächstes werden die Automatisierungen erstellt, die wir benötigen, damit dies funktioniert.

 

  

Zuerst erstellen wir eine Automatisierung, die die Heizung einschaltet, wenn wir den Booleschen Wert manuell drücken, Die Aktionen, die sie ausführen werden, bestehen darin, den neuen Status der von uns erstellten Entität durch MQTT zu veröffentlichen, Wir werden also sehen, dass es eingeschaltet wurde, Wir werden auch den Timer starten und die Aktion ausführen, die die Heizung physisch einschaltet. In meinem Fall ist es ein Shell-Befehl, der ein Relais öffnet / schließt, das an einen Raspberry Pi neben dem Kessel angeschlossen ist. Dies hat jeder 🙂

 

Wir werden eine weitere Automatisierung erstellen, wenn die auf dem Timer angegebene Zeit abgelaufen ist und die Heizung ausgeschaltet werden soll. Der Auslöser ist, wenn der Timer abgelaufen ist. Dann senden wir per MQTT, dass die Stromversorgung nicht mehr eingeschaltet ist, Durch ein anderes Skript werde ich das Relais anweisen, die Heizung auszuschalten, und über die Lautsprecher zu Hause wird ein kleiner Ton gesendet und es wird uns mitgeteilt, dass die Heizung ausgeschaltet wurde.

 

Die letzte Automatisierung erfolgt, wenn wir den Countdown abbrechen, nämlich, wenn wir die Heizung vorzeitig ausschalten wollen. Die Automatisierung wird sehen, dass der Boolesche Wert "aus" ging.; dann stoppt es den Timer-Countdown, sendet das Thema per MQTT, dass die Heizung ausgeschaltet ist (Aktualisieren des Entitätsstatus) und schlussendlich, Es wird das Skript ausgeführt, das das Relais anweist, die Heizung auszuschalten.

Denken Sie daran, die Automatisierungen neu zu laden!

 

So fügen Sie es in die Lovelace-Oberfläche von Home Assistant ein, Nun, wie immer fügen wir eine Entitätskarte hinzu und fügen jedes Element hinzu, das wir am Anfang in der Konfigurationsdatei definiert haben.

 

Und so wäre die Home Assistant-Oberfläche, im normalen Modus belassen, Ausruhen; und rechts, sobald die Heizung eingeschaltet ist und abgesehen von ihrem Status sehen wir den Timer, wie sie abläuft.

 

Ich hoffe, Sie haben von Interesse, und danke fürs teilen & diese Likes in sozialen Netzwerken!