Na postagem anterior, “Node-RED com MQTT e IBM Watson”, além…
Alerta de incêndio com o Sensor de Fogo, NodeMCU e Blynk
Imagine um sistema que te avise quando houver um incêndio na sua residência? Isso seria bem interessante para seu projeto de automação residencial, além de permitir uma tomada de decisão rápida para combater tal incêndio, não é verdade? Com este tutorial você verá como é simples fazer uma aplicação para esta finalidade, usando o Sensor de Fogo em conjunto com NodeMCU e a ferramenta Blynk.
Mas antes de colocar a mão na massa, vamos conhecer um pouco sobre o Sensor de Fogo utilizado nesta prática.
O Sensor Detector de Fogo/chama Infravermelho é um módulo eletrônico desenvolvido com a finalidade de detectar a presença de fogo/chama/calor em determinado ambiente. A partir da detecção feita pelo sensor, o microcontrolador que estiver ligado ao módulo será notificado e poderá tomar uma ou várias ações que o usuário determinar.
Este módulo pode detectar o espectro de chama/fogo/calor que possua uma onda de largura de 760nm até 1100nm e que estejam até 80cm de distância do sensor. O módulo possui um ângulo de detecção de 60º e é sensível ao espectro de chamas.
A sensibilidade de detecção pode ser ajustada a partir de um pequeno potenciômetro (trimpot) que se encontra na placa, dessa forma tornando o módulo mais prático.
Seu princípio de funcionamento é bem simples: sempre que há fogo em um ambiente, há emissão de espectro infravermelho que pode ser detectado por quaisquer câmeras e detectores infravermelhos. Este sensor possui um receptor IR, que capta esse espectro infravermelho e envia a leitura a um microcontrolador. O sensor de chama é muito sensível ao comprimento de onda IR. A saída analógica (A0 ) emite um sinal de tensão em tempo real na resistência térmica, enquanto a saída digital (D0) emite um limite de sinal alto e baixo ajustável através do potenciômetro quando a temperatura atinge um determinado limite.
Há vários projetos em que esse Sensor Detector de Fogo/chama Infravermelho pode ser aplicado. Na automação residencial, por exemplo, pode ser utilizado para monitorar a residência e quando for ativado, este sensor notifica o microcontrolador que poderá acionar algum alarme ou acionar um sistema inibidor de incêndio. Na robótica pode ser utilizado em robôs com a finalidade de apagar fogo. São várias as possibilidades, bastando que o usuário faça a programação necessária para execução das ações.
Agora que já sabemos um pouco deste sensor, a ideia central da nossa prática de hoje é: assim que o sensor detectar fogo, será emitido uma notificação para seu smartphone, avisando de possível incêndio.
– O que vamos precisar para esta prática:
– 1 Sensor Detector de Fogo / chama Infravermelho;
Você encontra todos esses produtos e muito mais em nossa Loja Virtual. Utilize o cupom VIMDOBLOG e ganhe desconto na sua compra. Aproveite!!
– Esquema de ligação
– Tutorial de instalação e configuração do ambiente de programação do Arduino:
Para que a prática funcione, é necessário que você já esteja com a placa NodeMCU instalada no computador e que ela seja reconhecida pelo IDE do Arduino. Se ainda não tem o IDE do Arduino instalada e configurada para o NodeMCU, acesse os links abaixo e em seguida retorne para continuar:
Arduino – Instalação e Configuração do IDE no Windows
NodeMCU – Instalação no Windows
NodeMCU – Configurando a IDE do Arduino
– Instalação de Biblioteca
Para esta prática, é necessário a instalação de 2 bibliotecas em seu IDE:
- Biblioteca do Blynk (faça o download clicando aqui)
- Biblioteca do ESP8266 (faça o download clicando aqui)
Se você não sabe como fazer a instalação de bibliotecas no IDE, acesse o link abaixo e em seguida retorne para continuar:
Arduino – Importando bibliotecas para o IDE
– Código da prática:
O código para testes está abaixo, basta copiar o mesmo, colar no IDE:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
//INSERÇÃO DE BIBLIOTECAS NECESSÁRIAS #define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> BlynkTimer timer; //OBJETO DO TIPO BlynkTimer //CREDENCIAIS DO WIFI E AUTH TOKEN. //O AUTH TOKEN É ENVIADO PARA SEU EMAIL QUANDO CRIA O PROJETO NO APP. BASTA COPIAR O TOKEN E COLAR AQUI NO CÓDIGO char auth[] = "Seu Auth Token"; char ssid[] = "sua Rede Wifi"; char pass[] = "senha da sua Rede"; //VARIAVEL DE SINALIZAÇÃO int flag=0; //FUNÇÃO CRIADA PARA DETECÇAO DE FOGO void notifyOnFire() { //VARIÁVEL RECEBE A LEITURA DO PINO D1 DO NODEMCU int condicaoSensor = digitalRead(D1); /*O BLOCO ABAIXO VERIFICA A CONDIÇÃO DO SENSOR E SE FOI SINALIZADO. SE A CONDIÇÃO LER O VALOR 1(HIGH),O BLYNK ENVIA UMA NOTIFICAÇÃO DE ALERTA PARA O DISPOSITIVO MÓVEL */ if (condicaoSensor==1 && flag==0) { Serial.println("Fogo detectado"); Blynk.notify("Alerta! Fogo Detectado"); //ESSA VARIAVEL É RESPONSAVEL POR FAZER COM QUE O CÓDIGO NÃO ENVIE A NOTIFICAÇÃO CONSTANTEMENTE (EVITAR SPAM) flag=1; } //SE A CONDIÇÃO LER O VALOR 0 (LOW), NÃO HÁ FOGO else if (condicaoSensor==0) { //NÃO SINALIZA.PORTANTO, NÃO ENVIA A NOTIFICAÇÃO flag=0; } } void setup() { //INICIA A SERIAL Serial.begin(9600); //INICIA A COMUNICAÇÃO COM O BLYNK Blynk.begin(auth, ssid, pass); //DEFINE O PINO D1 COMO PINO DE ENTRADA pinMode(D1,INPUT_PULLUP); //CHAMA A FUNÇÃO notifyOnFire() timer.setInterval(1000L,notifyOnFire); } void loop() { //INICIA O BLYNK Blynk.run(); //INICIA O TIMER timer.run(); } |
Antes de carregar o código em sua placa, não esqueça te trocar essas informações:
Esse código auth[] será enviado ao seu email assim que criarmos a aplicação no Blynk. Basta copiá-lo do seu email e colar no código fonte.
No char ssid[] adicione o nome da sua rede Wifi.
No char pass[] adicione a senha da sua rede Wifi.
Feito essas modificações, basta carregar o código em seu NodeMCU.
– Aplicação Blynk
Pra quem não conhece e nunca trabalhou com o Blynk, a principal característica dessa ferramenta é permitir que a comunicação com uma plataforma microcontrolada / embarcada possa ser realizada sabendo o mínimo de programação e até mesmo sem criar uma linha de código. Ele permite que plataformas sejam controladas remotamente, de forma que dados de sensores e módulos possam ser obtidos e exibidos no aplicativo que fica instalado no dispositivo móvel. Permite também que cargas sejam acionadas, além de muitas outras funcionalidades que a ferramenta disponibiliza.
Um dos pontos cruciais do Blynk é a possibilidade de controlar a plataforma de qualquer lugar do mundo através do aplicativo instalado no dispositivo móvel. Para isto, basta que a plataforma esteja configurada e conectada ao servidor Blynk através da internet e que o aplicativo no dispositivo móvel também possua conexão com a internet.
Para fazer o download e instalação do app Blynk em seu smartphone ou tablet, será necessário que acesse a loja de aplicativos do seu dispositivo, ou clique aqui para download da ferramenta, caso use um dispositivo com Android. Se você usa um dispositivo com sistema operacional iOS (Apple), clique aqui para download da ferramenta.
Feito o download, abra o aplicativo. Para primeiro acesso, você deve realizar o cadastro no app. Clique em “Create New Account” para que você possa criar suas credenciais de entrada no app:
Insira um endereço de e-mail VÁLIDO, uma senha e clique em “Sign Up” para se registrar:
OBS: o endereço de e-mail deve ser válido, pois você receberá informações importantes em seu e-mail para que possa colocar seus projetos em funcionamento.
Nesta primeira tela de criação de projetos, clique em “New Project”:
Em seguida, dê um nome ao seu projeto. Em “CHOOSE DEVICE” selecione o Nodemcu:
Após selecionar a placa, clique em “Create”:
Após a criação do projeto será exibida uma mensagem, informando que o “Auth Token” do projeto foi enviado ao seu endereço de e-mail (aquele e-mail VÁLIDO que você usou para se registrar). Clique em OK:
Vá até a sua caixa de e-mail e confira (na caixa de entrada e lixo eletrônico) se recebeu uma mensagem do Blynk:
Você vai copiar o seu Auth token e colar no código-fonte, como mencionado mais acima.
Voltando ao aplicativo, clique no botão + e uma lista de widgets (Widget Box) será aberta na tela principal do projeto. Selecione o Widget de Notification:
A tela da aplicação terá somente esse Widget. Não será necessário configurarmos mais nada no app.
Após a inserção do Widget, clique na setinha para “rodar” nosso aplicativo.
– Resultado Final
Você pode conferir o resultado desta prática no vídeo abaixo.
Gostou do resultado final? Então deixe seu feedback nos comentários. Estou ansiosa para saber se você desenvolveu esta prática!!!
Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop
Página no Instagram: https://www.instagram.com/blogmasterwalkershop/
Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.
Espero ter contribuído com seu aprendizado. Até a próxima!!
Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.
Postagem anterior: Módulo GPS GY-NEO6MV2 – Guia completo de como usá-lo com o Arduino