Esta é uma versão “Premium” do seguinte tutorial:
O tutorial original é bastante básico e continha um pequeno erro, pelo que decidi criar um novo tutorial tendo como base o flow que eu próprio utilizo para controlar as luzes de presença dos quartos. Fiz também uns pequenos ajustes em relação ao meu flow (faço algumas verificações que para o exemplo não são necessárias - modo de férias activo, presenças em casa, etc) de modo a simplificar e permitir uma melhor compreensão do funcionamento do flow, que é o seguinte:
NOTA: Neste flow utilizo offsets em minutos relativos ao nascer e pôr do sol e não uma hora especifica. Caso queiram utilizar uma hora definida por vocês, podem usar essa parte do exemplo original.
No Home Assistant
Do lado do Home Assistant deverá ser colocado o seguinte, nos respectivos ficheiros ou package:
Script:
script:
#### LUZES DE PRESENÇA DOS QUARTOS
manual_lp_quartos_on:
alias: Quarto Liga Luz Presença
sequence:
- service: input_boolean.turn_on
data:
entity_id: input_boolean.lp_quartos_manual
manual_lp_quartos_off:
alias: Quarto Desliga Luz Presença
sequence:
- service: input_boolean.turn_off
data:
entity_id: input_boolean.lp_quartos_manual
Input Boolean:
input_boolean:
#### MANUAL MODE
lp_quartos_manual:
name: Luzes em Manual
icon: mdi:toggle-switch
Input Number:
input_number:
#### Temporizador das luzes de presença dos quartos
auto_lp_quartos_light_offset_on:
name: Offset ON
icon: mdi:timer
min: -90
max: 90
step: 10
auto_lp_quartos_light_offset_off:
name: Offset OFF
icon: mdi:timer
min: -90
max: 90
step: 10
Light:
light:
#### BEDROOMS LIGHT GROUP
- platform: group
name: Grupo Luzes dos Quartos
entities:
- light.luz_de_presenca_q1
- light.luz_de_presenca_q2
- light.luz_de_presenca_q3
Este grupo vai permitir simplificar e reduzir o numero de nodes necessários no flow. Depois de colocarem tudo isto no HA e reiniciarem, criem um cartão de Lovelace com as entidades.
No Node-Red
Utilizaremos de novo o node Schedex pois é bastante flexível e aceitando vários parâmetros à entrada para configuração, podendo ser controlados externamente o parâmetros para ligar, desligar, offset on, offset off, on time, off time entre muitos outros.
Configurem os nodes do seguinte modo:
- Offset ON
- Set Offset ON
- Offset OFF
- Set Offset OFF
- Manual Override STATE
- Clock Quartos
- on/off?
- LP Quartos ON
- Manual Override ON
- Manual Override OFF
- LP Quartos OFF
Descrição
Quando no HA escolhem o offset para ligar e desligar, os nodes Offset ON e Offset OFF lêem os valores (a cada 10 segundos - podem alterar o valor a vosso gosto) e através dos nodes Set Offset ON e Set Offset OFF enviam a informação para o Clock Quartos.
Quando chega a hora de ligar ou desligar é enviado um comando que passa pelo node on/off?, o qual analisa a informação e a reencaminha pela saída respectiva, ligando ou desligando as luzes mas também colocando o input_boolean.lp_quartos_manual
na posição correcta.
Caso seja necessário ligar as luzes antes da hora activando o input_boolean.lp_quartos_manual
, o Clock Quartos dará ordem para ligar as luzes e manterá o input_boolean.lp_quartos_manual
na posição correcta. Quando chegar a hora de desligar, o Clock Quartos dará ordem para desligar as luzes e colocará o input_boolean.lp_quartos_manual
na posição de desligado.
Caso seja necessário desligar as luzes antes da hora , o Clock Quartos dará ordem para desligar e manterá o input_boolean.lp_quartos_manual
na posição correcta. Quando chegar a hora de ligar, o Clock Quartos dará ordem para ligar as luzes e colocará o input_boolean.lp_quartos_manual
na posição de ligado.
Conclusão
O Node Red é uma optima ferramenta para criar automações e com algum tempo, paciência e alguma pesquisa é possível criar automações bastante úteis rapidamente.
A parte da inversão e manutenção automática do
input_boolean.lp_quartos_manual
(Manual Override ON e Manual Override OFF) não foi ainda testada por mim durante tempo suficiente mas durante as ultimas semanas tem funcionado bem comigo. Caso tenham algum comportamento que não o expectável informem-me.