Home Assistant-en denbora-neurgailu bat gehituz

Post honetan etxe guztietan oso erabilgarria eta komuna den zerbait ikusiko dugu, ekintza bat amaitzeko denbora-neurgailuak erabiltzea, adibidez, berogailua aukeratzen dugun denbora-tartean piztea eta epea amaitzerakoan, itzali dadin. Nola lorategiko ureztatzea edo bururatzen zaizkizun beste gauza batzuk ere.

Ideia hau da, Home Assistant-ean goiko irudiko bezalako interfaz bat izatea. Ezer piztuta dagoen jakitea edo ez, gure termostato propioaren adibidea hartuta egingo dugu. Botoi horrekin piztu edo itzal dezakegu eta gainera ekintza horrek iraun nahi dugun minutuen kopurua ere adierazi behar dugu. Dena guztiz pertsonalizagarria, claro.

Onena, ba, hasteko, gure configuration.yaml konfigurazio-fitxategian hainbat konfigurazio gehituko ditugu, alde batetik, binary_sensor bat izango dugu, eta hori izango da berogailuaren entitatea, eta MQTT bidez kontrolatu eta bere egoerak ezagutu ahal izango ditugu 2 egoerak, berogailua piztuta dago edo ez dago, beraz, sentsore binarioen atalean, izenpetzen dugu:

binary_sensor:
...
  - platform: mqtt
    name: "Berogailua"
    state_topic: "RFBridge/cale"
    availability_topic: "tele/Sonoff-Bridge-04/LWT"
    qos: 1
    payload_on: "Cale"
    payload_off: "Sin Cale"
    payload_available: "Online"
    payload_not_available: "Offline"
    device_class: heat
...

GUItik kudeatzeko input_boolean bat ere beharko dugu, eta gero automatizazioek bere egoera irakur dezaten (on edo off) eta egin behar dutena egin dezaten, beraz, atal horretan, gehitzen dugu:

input_boolean:
...
  temporizador_cale:
    name: temporizador_cale
    initial: off

Gehiago, Timer motako entitate bat sortu behar dugu, hau izango da denbora-iragazkia:

timer:
...
  temporizador_cale:
    name: temporizador_cale
    duration: 1800
...

Eta azkenik, input_number bat gehituko dugu, edozein balio numeriko izango da, gure GUI-tik manipula dezakeguna eta nahi dugun denbora ezarri dezakeguna berogailua pizteko (adibide honetan). Hasierako balioa adieraziko dugu, en mi caso 60 (minutu); balio minimo eta maximo batzuk, en mi caso 0 eta 240 (minutu) eta, azkenik, zenbaki bakoitzaren arteko saltoa, nik erabiliko dut 15 (minutu), nos quedaría algo como:

input_number:
...
  temporizador_cale:
    name: temporizador_cale
    initial: 60
    min: 0
    max: 240
    step: 15
    mode: slider
...

Fitxategia gordetzen dugu eta beti bezala, Home Assistant berrabiaraziko dugu gehitutako konfigurazioa kargatzeko. Hurrengoa izango da behar ditugun automatizazioak sortzea hau funtzionatzeari uzteko.

Lehenik eta behin automatizazio bat sortuko dugu, gure esku batez booleanoa sakatzen dugunean berogailua pizteko, ekintzak egingo duen hori izango da sortu berri dugun entitate horren egoera berria MQTT bidez argitaratzea, horrela ikusiko dugu piztuta dagoela, gainera, timer-a hasiko dugu eta egiaztatuko dugu, ekintza fisikoki berogailua pizteko. Nire kasuan, shell komando bat da, relé bat ireki/itzaltzen duena, Raspberry Pi batean sartutako kazolaren ondoan. Hau bakoitzak duenari dagokio 🙂

Beste automatizazio bat sortuko dugu, adierazitako denbora amaitzen denean eta berogailua itzali nahi dugunean. Trigger-a timer-a amaitu denean izango da. Gero MQTT bidez bidaliko dugu kalea ez dagoela piztuta, por otro script le diré al relé que apague la calefacción y por los altavoces de casa mandará un sonidito y nos dirá que la calefacción se apagó.

La última automatización será para cuando nosotros cancelemos la cuenta atrás, hau da, si queremos apagar la calefacción antes de tiempo. La automatización mirará que el booleano fue a 'off'; entonces parará la cuenta atrás del temporizador, enviará el topic por MQTT que la calefacción está apagada (actualizando el estado de la entidad) y finalmente, ejecutará el script que le dice al relé que apague la calefacción.

¡Recordar recargar las automatizaciones!

Para añadirlo en el interfaz Lovelace de Home Assistant, bada beti bezala, entitateen txartel bat gehitzen dugu eta konfigurazio fitxategian hasieran definitu ditugun elementu guztiak sartzen ditugu.

eta horrela geratuko litzateke Home Assistant interfazea, ezkerrean modu normalean, lasai dagoenean; eta eskuinean berogailua piztuta dagoenean, bere egoeraz gain, denbora-neurgailua nola jaitsi egiten den ikusiko dugu.

Espero dut zuentzat interesgarria izatea, eta eskerrak eman nahi dizkizuet partekatzeagatik & sare sozialetan 'likes' horiek!

Izenburuko mezuak

Egilea

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, ez zalantzarik izan nirekin harremanetan jartzeko, ahal duzun guztietan laguntzen saiatuko naiz, partekatu ahal dudan guztietan ;) . Dokumentuez gozatu!!!