Índice:
Vídeo: Detector de alarme de incêndio minúsculo Esp8266 MQTT IFTTT Domótica: 4 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Eu queria detectar se meu sistema de detecção de fumaça doméstico está em alarme. Tenho oito detectores de fumaça em minha casa e eles estão interligados. Se um detector de fumaça estiver em alarme, o outro receberá um sinal por meio do fio de sinal de interconexão. Meu sensor lê o fio de interconexão e envia as informações para minha automação residencial (Openhab2) via MQTT e me alarma também via IFTTT.
Este instrutível foi inspirado neste projeto
Etapa 1: Design
Em primeiro lugar, você precisa saber como os detectores de fumaça se comunicam. Tenho detectores Ei146.
Os detectores de fumaça são interconectados por meio de uma linha "IC". Se um detector de fumaça é ativado, ele gera um sinal de 6V - 8V na linha IC, veja a imagem da tela do oscilópio.
Eu li a tensão da linha IC através de um optoacoplador (4N35), para isolar os detectores de fumaça da minha automação residencial por segurança.
O alarme de fumaça é alimentado pela tensão principal (220V AC), que usei para alimentar o módulo ESP-01
No esquema você pode ver como as peças estão conectadas. Eu uso um ESP-01 porque é pequeno e barato.
Etapa 2: Construindo o PCB
Nas fotos e comentários nas fotos você pode ver como o PCB está montado.
Eu otimizei o layout para caber em componentes em um pequeno PCB, o ESP-01 fica sobre outros componentes. Eu prendo o ESP-01 por meio de conectores fêmeas para garantir uma programação fácil por meio de um programador USB. Depois que o módulo é montado, você pode atualizar o novo firmware Over The Air (OTA) através do IDE Arduino ou HTTPupdate (veja o esboço)
Etapa 3: Programação do ESP8266
Veja meu Github para o código. Eu uso todos os pinos utilizáveis do ESP-01 como pinos GPIO, que inclui GPIO1 (TX) e GPIO3 (RX). Portanto, a comunicação serial não é possível e não deve ser inicializada, caso contrário, a declaração de GPIO1 e GPIO3 torna-se nula.
Observação: não puxe o GPIO0, GPIO1 ou GPIO2 para baixo na inicialização, porque o programa não inicia. Descobri que o GPIO03 pode ser puxado para baixo na inicialização
Eu programo meu EPS-01 através deste adaptador modificado.
O programa funciona da seguinte maneira:
- Se o botão flash for pressionado na inicialização, o módulo iniciará o modo OTA.
- HTTPupdate é inicializado.
- Conectando-se a WiFi e MQTT (luz verde acesa)
- Lê o valor do pino do sensor (conectado ao pino IC do alarme de fumaça)
- Se um incêndio for detectado, aguarde o debounce e, em seguida, aumente o alarme (também luz vermelha acesa) via
- MQTT - a mensagem MQTT é lida via Openhab e uma regra gera uma notificação via meu aplicativo
- IFTTT - 1 - por meio de um IFTTT Webhook, um gatilho é iniciado e envia uma notificação.
- IFTTT - 2 - por meio de um IFTTT Webhook, um gatilho é iniciado e envia um SMS para minha esposa
- Se a conexão MQTT for perdida (luz verde apagada), a mensagem LWT (ERROR) é enviada ao tópico e lida pelo Openhab.
Etapa 4: montagem do módulo
Projetei e imprimi em 3D uma caixa que se encaixa perfeitamente na abertura do cabo não utilizado da placa de base do alarme de fumaça, sem necessidade de parafusos.
Editar: arquivos stl são adicionados.
Colei os LEDs e a chave OTA no lugar com cola quente. A caixa é fechada com 4 parafusos.
Ligue e esteja pronto!