Se você pensa em automatizar sua residência, sempre é bom ter cuidados preventivos com a segurança, principalmente contra incêndios. A cada dia são criados novos dispositivos para auxiliarem nesta importante tarefa, entre estes, hoje vamos dar especial destaque ao Sensor de Gás Arduino MQ-2.
Ele é um dispositivo que tem a função de verificar a presença de gás inflamável e/ou fumaça no local onde estiver instalado, alertando o sistema microcontrolador (por exemplo, o Arduino) do ocorrido. Para funcionamento trabalha com tensão DC de 5V, possuindo duas saídas de sinal (uma analógica e uma digital TTL).
Diante do alerta, o Arduino tomará as providências para as quais estiver programado, seja enviando sinais sonoros e/ou luminosos. Se instalado para atuar junto a uma válvula solenóide, é possível cessar a alimentação de gás da residência acabando com o vazamento e afastando o perigo.
Uma válvula solenóide é um dispositivo eletrônico capaz de bloquear a passagem de algum tipo de gás ou líquido em um condutor, de modo elétrico. Ou seja, ao aplicar uma tensão sobre a bobina haverá uma movimentação interna que interromperá a condução da matéria transportada de forma segura.
O Sensor de Gás Arduino MQ-2 é capaz de detectar diversos tipos de gases, entre eles: gás de petróleo liquefeito, butano, propano, metano, hidrogênio, álcool, gás natural, entre outros, ou mesmo fumaça.
Com múltiplos sensores em locais diferentes, você pode até mesmo saber onde é o foco da fumaça ou gás, alertando as equipes de socorro do vazamento de gás ou da presença da fumaça que muito possivelmente é um foco de incêndio.
Vídeo Projeto Sensor de Gás Arduino MQ-2
Produtos Utilizados
- Sensor de Gás Inflamável e Fumaça MQ-2
- Arduino UNO R3
- Módulo Relé 1 Canal 5V com Optoacoplador
- Buzzer 5V
Esquemático do Projeto
Para o teste basta realizar as ligações conforme o esquema abaixo:
Código de Programação
Conforme nosso código criado, o microcontrolador estará fazendo a leitura do sensor de gás arduino a todo o tempo, e se por algum momento o sensor detectar algum gás, ele irá verificar novamente e, se a detecção persistir, vai desativar a válvula solenóide responsável pelo fornecimento do gás e disparará o Buzzer.
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 |
/* Código Fonte */ int pinSensor = A0; //Pino Sensor int Rele = 3; //Pino Relé int buzzer = 2; //Pino Buzzer int var = 0; int ValDesarm = 30; //Variável para selecionar a quantidade de Gás/Fumaça detectada int valor = 0; void setup() { Serial.begin(9600); //Inicia porta Serial em 9600 baud pinMode(Rele, OUTPUT); pinMode(buzzer, OUTPUT); Serial.println("www.usinainfo.com.br"); } void loop() { valor = analogRead(pinSensor); //Faz a leitura da entrada do sensor valor = map(valor, 0, 1023, 0, 100); //Faz a conversão da variável para porcentagem Serial.println(valor); //Escreve o valor na porta Serial if (valor>=ValDesarm){ //Condição, se valor continuar maior que ValDesarm faça: digitalWrite(Rele, HIGH); //Liga relé para solenóide digitalWrite(buzzer, HIGH); //Dispara alarme de vazamento ou possível incêndio Serial.println("Alarme disparado!!!"); //Apresenta mensagem na porta serial delay(1000); //Tempo de disparo do alarme digitalWrite(buzzer, LOW); //Desliga o alarme delay(2000); //Aguarda }else{ digitalWrite(Rele, LOW); //Caso contrário permaneça com o relé desligado } delay(1000); } |
Conclusão
O Sensor de Gás Arduino MQ-2 é um dispositivo de grande utilidade, principalmente para sua segurança e a da sua casa. É um dispositivo de interface simples, mas que o deixa ainda mais prático de usar. Seu design é compacto, o que facilita sua utilização perto de fontes de gás ou fumaça, sem interferir na estética do seu ambiente.
Autor: Leonardo Dalla Porta
Olá, gostaria de saber qual a unidade de medida do sensor de gás MQ-2, por exemplo, ele me da uma medição na porta analógica de 200, ele numero é em que unidade de medida? Obrigado desde já.
Boa tarde!
Este valor dado pelo Sensor de Gás é dado em ppm (Partes Por Milhão).
Att Equipe UsinaInfo
Olá, preciso fazer uma medição constante de metano gerado em um sistema de tratamento de esgotos em escala laboratorial. Vocês vendem o kit já pronto ? Vi que no exemplo dado quando a medição de gás fica constante ele ativa um alarme, no meu caro a medição seria constante.
Boa tarde!
Este sensor é um sensor desenvolvido com fins didáticos e para quem necessita de indicações de presença ou não de um dos gases listados, devido ao fato de não conseguir isolar cada gás que detecta, os seus valores não são de total precisão. Infelizmente não temos um kit pronto referente a este projeto.
Att Equipe UsinaInfo.
Olá, gostaria de tirar uma dúvida, esse comando int var = 0; faz com que o 0 se torne uma variável?
Obrigado!
Bom dia Oséias, tudo bem?
Este comando faz com que se crie uma variável para armazenar o valor de leitura.
Boa noite, poderia me tirar uma duvida? a programação foi feita pelo c++, MatLab ou Scilab?
Olá Ramon, foi utilizado C++ para a programação do referente projeto.
Usinainfo, tá de parabéns pelo trabalho. Ganhou um fã da Automação!!!!
Muito obrigado, ficamos felizes em poder ajudar!
boa noite, quanto cobraria para desenvolver um programa com 3 sensores para leitura de gás de cozinha , e quando detectar o gás,acione o buzzer e envie msg sms através do módulo SIM800 para 1 ou 2 celulares. Favor me retornar no email
rodrigues.rodrigues1979@outlook.com
Aguardo , obrigado
Olá Liomar!
Infelizmente não trabalhamos com o desenvolvimento de projetos.
BOM DIA,
GOSTARIA DE SABER COMO FICARIA O ALGORITMO NA SEGUINTE OCASIÃO:
ELE DETECTA O VAZAMENTO E SÓ VOLTA A FUNCIONAR DEPOIS DE DADO UM RESET MANUAL, ATRAVÉS DE UM BOTÃO. POR QUE NO FUNCIONAMENTO ATUAL, ELE DETECTA O VAZAMENTO E CORTA ENQUANTO DETECTA, SÓ QUE PELO QUE VI O GÁS AINDA ESTARIA VAZANDO AOS POUCOS CONFORME ESTIVESSE UMA QUANTIDADE SUFICIENTE NO AMBIENTE PARA ACIONAR O SENSOR. OBRIGADO E É MUITO BOM PROJETO.
Bom dia Igor!
Infelizmente não trabalhamos com o desenvolvimento de projetos, nossos projetos são desenvolvidos com o intuito de instigar nosso público a desenvolver melhorias e aperfeiçoamentos. O procedimento desejado não é tão complicado de se desenvolver, precisaria incluir um botão e alterar o delay de reinicialização para um acionamento manual.
Olá, tenho interesse em fazer um projeto deste, mas quando detectar o gás/fumaça, disparar um e-mail ou SMS para celular. Sabe me dizer se é possível conectá-lo a uma placa wireless ou a uma placa que aceite chip 3G/4G?
Olá Juliana! É possível desenvolver este projeto sim, pode-se utilizar tanto o Módulo quanto o Shield Wireless ou GSM (compatível com cartão SIM).
Montei o projeto, porém funciona ao contrário, ou seja, quando aplico gás no sensor o arduino desarma o relé. Sem gás o arduino arma o relé.
Boa tarde Gláucio!
Isto ocorre pq existem dois modelos de módulos Relés, alguns com o acionamento em HIGH e outros com o acionamento em LOW, esta variação ocorre uma vez que o desenvolvimento do módulo possui pinos comuns de alimentação diferenciados. Para solucionar o problema, recomendamos que altere digitalWrite(Rele, HIGH) para digitalWrite(Rele, LOW) e digitalWrite(Rele, LOW) para digitalWrite(Rele, HIGH).
Ao compilar a programaçao aparece a mensagem: Invalid digit 8 in octal constant. O que fazer?
Boa Tarde Xavier!
Até o momento não tivemos de um retorno com este defeito e não temos maiores informações sobre o mesmo, verifique o seu código se está ok com o descrito em nosso site e caso tenha realizado alguma alteração, verifique as mesmas.
ola amigo boa noite, fiz a programaçao no arduino mas o buzzer não para de apitar mesmo sem a presença do gás.
Boa tarde Marco!
Se o Buzzer está conectado no pino 2 e o código está como descrito no artigo, infelizmente não vejo motivo de estar acontecendo tal problema.
Verifique o trimpot de sensibilidade do sensor se não está interferindo nos resultados e também, a ligação dos componentes na protoboard.
Olá, boa noite. Parabéns pelo projeto, extremamente útil. Gostaria de saber se existe a possibilidade de expandir esse projeto, incluindo um modulo wi-fi e possibilidade de envio de mensagem se ocorrer alguma alarme. Se sim, qual literatura deveria procurar? Obrigado.
Bom Dia Charles! Neste caso, recomendamo dar uma lida nos Artigos sobre ESP32, um microcontrolador semelhante ao Arduino, mas que possui sistema de comunicação wi-fi já integrado. Inclusive tenho um artigo que que comunica-se diretamente com o Telegram, claro que algumas adaptações seriam necessárias, mas é uma opção viável.
Fiz o Projeto, usei o mesmo código, só que o buzzer está disparando constantemente mesmo sem a ativação do mesmo pelas leituras do sensor MQ2. Qual deve ser o problema?
Olá Pedro! Tente capturar os valores do sensor através do monitor serial e verificar se estão dentro da faixa de análise do código.