Alarme de incêndio com ESP8266 NodeMCU 24

Neste post veremos como utilizar o sensor de gás MQ-7 e o de chama e fogo para criar um alarme de incêndio com ESP8266 NodeMCU. Se você preferir, é possível seguir o passo a passo com os demais modelos do ESP8266.

Antes de iniciar, eu sugiro a leitura do post Como programar o módulo ESP8266 NodeMCU pois iremos utilizar o firmware versão 1.5 do NodeMCU.

Alarme de incêndio com ESP8266 NodeMCU

As versões após a 1.0 devem ser criadas através do site NodeMCU custom builds, pois com a grande quantidade de módulos adicionados ao NodeMCU ficou complicado gerar uma versão pré-compilada. Para o projeto de hoje, os módulos GPIO, timer, WiFi e HTTP são necessários. É recomendado o uso dos módulos padrões file, net, node e UART.

No nosso exemplo iremos demonstrar como emitir um alarme caso detecte fogo ou gases, além de enviar uma notificação através do Pushbullet para o nosso Smartphone. Para quem ainda não conhece, o Pushbullet é um aplicativo gratuito que permite trocar notificações, links, arquivos e pequenos textos entre diversas plataformas.

Instale o Pushbullet em seu Smartphone ou computador. Após instalar acesse Sua conta e clique em Create Access Token para gerar uma chave de acesso a API do Pushbullet, que será utilizada mais abaixo.

Lista de componentes

Para montagem do alarme de incêndio com ESP8266, você vai precisar de:

Circuito alarme de incêndio com ESP8266

Ambos os sensores possuem pino analógico e digital, no nosso caso com a quantidade limitada de pinos analógicos iremos conecta-los através do pino digital, que irá retornar o valor 0 caso não detecte nenhum problema ou 1 se detectar gás ou fogo. Também utilizaremos um pino para ligar o buzzer, para emitir o alerta. Na imagem abaixo é possível observar o circuito montado. Lembre-se, o circuito é de 3.3 volts.

Circuito Sensor de Incêndio

Ambos os sensores possuem ajuste de sensibilidade, o que permite regulá-los de acordo com a necessidade.

Programa de monitoramento

Nas linhas 2, 4, e 6 definimos os pinos onde foram conectados os sensores e o buzzer. Já nas linha 85, 86, e 87 definimos os modos dos pinos, saída para o buzzer e entrada para os sensores.

Na linha 42 você deve informar o seu token de acesso da API do Pushbullet. Já na linha 91 você deve inserir o SSID e a senha do seu roteador.

A função buz_on tem por objetivo fazer com que o buzzer emita um beep a cada segundo caso detecte algum problema, como presença de gás ou fogo.

A função start é responsável por executar a cada meio segundo uma verificação nos sensores para detecção de gás ou fogo. Caso ela detecte a presença de um destes o alarme é iniciado. Caso tudo volte ao normal o alarme é desligado através da função buz_off.

A última linha com a chamada da função start é responsável por iniciar todo o processo de monitoramento.

E abaixo, temos a tela do smartphone com o aviso do nosso alarme de incêndio com ESP8266 NodeMCU:

Tela Push Bullet

Gostou? Deixe seu comentário logo abaixo. Em caso de dúvidas, caso queira trocar uma ideia, ou até mesmo dividir seu projeto, acesse nosso Fórum!

Posts Relacionados

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

24 Comentários

  1. Esse sensor funciona bem com 3.3V? Ele é descrito do datasheet como sendo de 5V

    1. O MQ-2 é 5v. Ajustamos o modelo para o correto, que é o MQ-7. Esse é 3.3 e 5v.

  2. Eu programo pelo Esplorer? Esse código não está funcionando

    1. Você compilou um firmware customizado como mencionado no artigo? Qual a versão do firmware que você está utilizando?

      1. Eu to usando o firmware do site que vcs colocaram la

        1. Qual o erro? Fizemos um ajuste no codigo que pode ser que resolva.

          1. O erro sumiu mas ele não manda msg pro push

  3. falta detalhes nesse post

  4. da esse erro

    PANIC: unprotected error in call to Lua API (stdin:14: attempt

    1. Falta uma parte do erro, podes mandar completo?

      Você compilou um firmware customizado como mencionado no artigo? Qual a versão do firmware que você está utilizando?

      1. O erro completo é esse: PANIC: unprotected error in call to Lua API (stdin:14: attempt to call global ‘is_buz_on’ (a boolean value))

        Eu usei o site que vocês recomendaram, baixei no e-mail e coloquei naquele exe do ‘nodemcu-flasher-master’ e configurei a porte certa.

        1. Ajustamos o codigo.

  5. Só fica fazendo o barulho de beep sem parar! Vcs não tem vergonha de postar isso no blog de vcs???

    1. Se o beep é continuo então a ligação está errada. Se faz beep sem parar você tem que ajustar a sensibilidade dos sensores.

      1. É um beep sem parar, mas se ele está constando que está pegando fogo não deveria aparecer a mensagem no meu pushbullet? E como eu ajusto a sensibilidade ideal?

  6. Eu programa só fica fazendo o beep também. Não é a sensibilidade dos sensores pq mesmo tirando eles do circuito o beep continua. Não envia msg nenhuma!!

  7. Vocês não vão arrumar esse programa? O meu também só apita mesmo tirando todos os sensores!!!!!!!!

  8. Alguem tem esse programa para a IDE do arduino?

  9. O sensor MQ-2 pode operar com 3.3v? na especificação ele está falando em 5v.

  10. Buonasera,nel programma di allarme gas con esp8266,crea errori perche’ non riesco a definire i sensori,buzzer.Potete aiutarmi a mettere il programma completo.E’ un bel progetto,complimenti. Grazie mille.

  11. Teria como ajustar o programa para a programação em Arduíno? Obrigado 🙂

  12. Obrigada, exatamente o que procurava

Trackbacks and Pingbacks

  1. […] tal fazer uma planta IoT que envia mensagem para o seu celular quando precisa ser regada? Ou um alarme de incêndio para sua casa? Você também pode desenvolver um relógio e até um bafômetro . Curtiu? Então […]