Sensor de Chama Infravermelho com Arduino
Entre as aplicações da automação estão os sistemas de segurança. São necessários para a proteção da vida em vários níveis, e dos bens materiais. Nesse tutorial iremos aprender como fazer um detector de fogo usando o sensor de chama infravermelho em conjunto com uma placa Arduino.
Caso queira ler mais sobre Arduino, acesse nosso tutorial O que é Arduino e como funciona?
Sistemas de Segurança
A presença de sensores de fumaça e fogo em shoppings e outros ambientes coletivos é definida por leis e normas. Quando detectado, é importantíssimo que se tomem medidas rápidas para garantir a segurança das pessoas. Em residências, onde a implantação desse tipo de sistema é escolha dos donos e moradores, sua existência não é tão comum. Entretanto, existem várias fontes de incêndio em casa.
Se você estiver dormindo e por algum motivo sua cozinha começa a pegar fogo, quanto tempo você levaria para reconhecer e controlar o fogo ou até mesmo evacuar a casa? Quanto antes detectar o problema, mais fácil será o seu controle.
Aqui entra a automação como nossa aliada. Vamos montar um sensor que detecta fogo usando um módulo sensor de chama.
Esse projeto é um protótipo: sistemas de segurança comerciais precisam de cuidados adicionais, que não são cobertos aqui.
Sensor de Chama Infravermelho
Nem sempre o fogo é visível, a luz emitida pela chama varia muito com o combustível do fogo, ou os compostos que estão sendo queimados. Porém, as chamas emitem luz na forma de radiação térmica, na região do infravermelho, que apesar de não ser visível, pode ser detectada.
Uma câmera térmica nos mostra a temperatura das superfícies através da captação de luz infravermelha emitido por elas. A câmera faz uma representação das temperaturas dessa luz invisível em luz visível, com o gradiente de temperatura representado por cores. O vermelho representa as superfícies mais quentes, e o azul as mais frias.
Módulo Sensor de Chama IR
Nosso Módulo Sensor de Chama é constituído de um fotodiodo capaz de detectar o espectro de luz infravermelha emitido por chama. Ele é sensível à fontes de luz com comprimento de onda entre 760 e 1100 nm.
O módulo possui duas saídas: uma analógica (A0) e uma digital (D0). Também possui um LED que indica se o sensor está ligado e outro LED que acende quando a saída digital está ativada.
A saída digital fica em nível lógico alto (1) e vai para baixo (zero) quando houver chama. A sensibilidade do sensor de chama pode ser ajustada através de um resistor variável presente no módulo. A saída analógica aponta o valor lido no fotodiodo, e pode ser utilizada no Arduino para ler o nível de calor detectado pelo sensor.
Mãos à obra – Fazendo nosso sistema detector de chama / Sensor de chama
Componentes necessários:
Montando o circuito do sensor detector de chama
Agora vamos montar o projeto. Antes de tudo, desligue o cabo USB de seu Arduino e monte seguindo a ligação da figura abaixo.
Conectando o Arduino ao Computador
Conecte seu Arduino ao computador e abra a IDE Arduino.
Caso ainda não tenha a Arduino IDE em seu computador, acesse nosso tutorial Como Instalar e Configurar o Arduino IDE.
Antes de carregar um programa, você precisa selecionar qual porta você deseja usar para fazer carregar o programa no Arduino (Upload). Dentro do Arduino IDE, clique no menu Ferramentas (Tools) e abra o submenu Porta (Port). Clique na porta que seu Arduino está conectado, tal como COM3 ou COM4. Geralmente aparece já a porta e o nome da placa: “COM3 (Arduino/Genuino Uno)”.
Você também precisa garantir que o tipo de placa apropriado está selecionado em Ferramentas (Tools) no submenu Placa (Board).
Programando a placa Arduino
Crie um programa (Sketch) e salve com o nome de “programa_sensor_de_chama”. Depois de salvar, copie o código abaixo.
//Programa: Sensor de Chama Arduino int pino_D0 = 7; int valor_d; void setup() { Serial.begin(9600); pinMode(pino_D0, INPUT); } void loop() { valor_d = digitalRead(pino_D0); Serial.print("Porta digital: "); Serial.println(valor_d); if (valor_d != 1) { Serial.println("Fogo detectado!!"); } delay(500); }
Colocando o Sensor de Chama para Funcionar
Caso tenha ocorrido tudo como esperado, ao acendermos um isqueiro próximo ao sensor, o LED irá acender. Abra o monitor serial para verificar o que está sendo lido. Deve funcionar como na figura abaixo.
Entendendo a Fundo
Entendendo o Software
– Declarando o pino de entrada utilizado
Na primeira parte do programa declaramos uma variável para armazenar o número do pino digital de entrada do Arduino (pino 7). Esse pino está ligado no pino de saída digital do sensor de chamas. A outra variável será usada para armazenar o valor da leitura do pino digital.
int pino_D0 = 7; int valor_d;
Em seguida inicializamos a comunicação serial com Serial.begin() e configuramos o pino 7 como entrada digital.
void setup() { Serial.begin(9600); pinMode(pino_D0, INPUT); }
Na função principal, iniciamos fazendo a leitura da entrada digital do pino 7 e armazenamos o valor na variável valor_d. Na sequência, fazemos a impressão no monitor serial do valor atual do pino digital.
valor_d = digitalRead(pino_D0); Serial.print("Porta digital: "); Serial.println(valor_d);
Por fim, o programa realizada uma checagem do estado do pino digital. Se o pino for pro nível lógico baixo (zero), é sinal de que há chama, e o aviso de “fogo” é enviado para o monitor serial.
if (valor_d != 1) { Serial.println("Fogo detectado!!"); }
O código todo fica assim:
//Programa: Sensor de Chama Arduino int pino_D0 = 7; int valor_d; void setup() { Serial.begin(9600); pinMode(pino_D0, INPUT); } void loop() { valor_d = digitalRead(pino_D0); Serial.print("Porta digital: "); Serial.println(valor_d); if (valor_d != 1) { Serial.println("Fogo detectado!!"); } delay(500); }
Considerações Finais
Esperamos que tenham gostado!
Deixe seu comentário com duvidas, sugestões ou com a foto ou vídeo de seu projeto. Compartilhe à vontade!
Engenheiro Eletricista pela UFES, Técnico em Automação industrial pelo IFES, MBA Gestão de Projetos pela USP e Fundador do Vida de Silício. Sonhador com uma única pretensão, fazer a diferença.