Abri o meu portão com NFC! E agora, está aberto ou fechado?

Tema

Este projeto está relacionado com a automação do portão, utilização de tags NFC para abertura do mesmo e ainda controlar se o mesmo está aberto ou fechado através do Node-Red.

Resumo

A ideia em automatizar o portão foi para simplificar a vida à minha esposa. :smiley:
Quando vamos sair ou chegar a casa de carro uma coisa que temos que andar sempre à procura é do comando para abrir o portão.
Como o telemóvel está sempre por perto porque não utilizar o sensor NFC? Então para abrir/fechar o portão desbloqueamos o telemóvel e passamos numa tag colocada num local estratégico na consola do carro.
A grande dúvida, principalmente ao sair, é: será que ficou fechado? Utilizando um “reed-switch” no Shelly e um flow em Node-Red sou avisado de X em X tempo caso o portão não fique fechado. “Uauuu grande vantagem” dizem vocês! A particularidade do flow é eu poder ignorar o portão aberto por 5 ou 10 minutos ou então ignorar “sempre”.

Descrição

1 - Ligação do Shelly ao motor do portão
Já há no forum bastantes tópicos para este efeito e então foi só seguir e lá consegui. O meu objetivo era alimentar o Shelly com a voltagem do Portão, que neste caso é 24V, e ainda colocar o reed switch de forma a que quando o portão abre (parte que se encontra mais à esquerda na foto) o circuito fique aberto.
Após validar no manual quais as portas necessárias a ligação é a seguinte:


Nota: para este projeto, como não tenho interesse de ver na aplicação da Shelly, não achei necessário comprar o addon para sensores exteriores.

2 - Criação de sensores MQTT (IgnoreTime & LastTime)
Estes dois sensores têm por objetivo eu saber quanto tempo decidi ignorar o facto do portão estar aberto e ainda quando foi a última vez que tomei essa decisão. Vão ser essencialmente dois sensores que me vão ajudar no flow do próximo ponto.
Eu gosto de criar os sensores em MQTT pelos seguintes motivos:

  1. Consigo agregar os sensores por “device”
  2. Quando faço uma alteração no sensor não preciso fazer restart ao Home Assistant
  3. Consigo publicar fácilmente mensagens no Node-Red

Para criar os sensores no HomeAssistant:

  1. Aceder a Developer Tools / Services
  2. Escolher o service: mqtt.publish e colocar os payload abaixo:
IgnoreTime: https://pastebin.com/BzevCw9t

image

LastTimeTime: https://pastebin.com/TH41Zcup

image

3 - Configuração da tag NFC
O próximo passo é criar uma tag NFC que vai ser lida pelo nosso telemóvel e executar determinada ação desencadeada no Node-Red.
Para criar a tag NFC, preferencialmente no telemóvel para poderem logo escrever o Id:

  1. Aceder a Configuration / Tags
  2. Add Tag, atribuír um nome
  3. Create and Write
  4. Fazer scanning da tag

Nota: O tag Id vai ser necessário para o switch do 3º flow do Node-Red. Podem deixar em branco ou colocar um mais fácil. A minha sugestão é colocar TagPortaoRua.

4 - Criação do flow em Node-Red

O primeiro flow criado tem como trigger uma alteração de estado do sensor do shelly. Sempre que ele muda eu vou fazer reset aos meus sensores auxiliares no MQTT e ainda notificar qual o estado novo: “Aberto” ou “Fechado”.

AlteraçãoEstados: https://pastebin.com/vHvkf64J

O segundo flow criado tem como objetivo enviar as notificações para o telegram quando o portão está aberto e questionar se eu quero fechar ou ignorar. No caso de ignorar por quanto tempo: 5 minutos, 10 minutos ou sempre. A opção sempre surgiu pois há alturas em que quero ter o portão aberto deliberadamente e não quero constantemente ser notificado que ele está aberto.

FecharIgnorar: https://pastebin.com/vdfduVHj

O terceiro flow criado tem como obejtivo ler uma tag NFC e fazer com que o portão abra/feche.

image

TagScanner: https://pastebin.com/jBtX79j7

Resultado Final

Aqui vai um pequeno vídeo com o HomeAssistant e as notificações no Telegram enviadas pelo Node-Red:

Lista de Material

Para a realização deste projeto foi necessário:


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade