Neste artigo vamos aprender a usar um sensor para montar um sistema de identificação de focos de incêndio e gases inflamáveis. Para isso vamos usar um sensor MQ 2, que identifica gases como metano, gás natural, hidrogênio, fumaça, dentre outros. Podemos utilizar esse sensor para validar sistemas de monitoramento do ar, bem como protótipos de sistemas de verificação da qualidade do ar e presença de gases perigosos.
Apesar de fácil e prático, é um sensor indicado para propósitos experimentais e de validação(uso em bancada e laboratório). O autor e o blog não se responsabilizam por qualquer dano relativo à sua má utilização em sistemas reais.
O principal componente desta montagem é o sensor MQ 2, mostrado na figura abaixo:
Sensor MQ 2
Este sensor tem capacidade de detectar concentrações de gases inflamáveis e fumaça no ambiente. É um módulo bem pequeno e simples, muito prático de ser integrado em projetos de automação residencial ou protótipos de produtos eletrônicos. O nível de concentração máximo permitido é ajustado por um pequeno trimpot no módulo. Quando algum gás ultrapassa esse nível, a saída digital do sensor(D0) é acionada em nível alto. Em concentrações normais(abaixo do valor ajustado no trimpot) a saída permanece em nível baixo.
O módulo também possui uma saída analógica(A0), que permite medir a variação na concentração dos gases no ar com mais precisão. Para usar a saída analógica é preciso um conversor AD, como o que o próprio Arduino disponibiliza em seus canais analógicos.
Apesar de ser fácil e prático de usar, o sensor não é indicado para utilização em sistemas reais de segurança contra incêndio. O fabricante o recomenda para propósitos experimentais e validação de produtos. O autor e o blog não se responsabilizam por qualquer dano gerado em virtude de sua utilização. Caso deseje desenvolver um sistema real de segurança contra incêndios ou gases perigosos, recomendamos a pesquisa e utilização de sensores industriais e mais robustos.
Sensor MQ-2 com display LCD
Ao final, teremos uma montagem como a da foto acima.
As especificações do sensor são as seguintes:
O módulo possui quatro pinos. São dois para alimentação(VCC e GND) e dois sinais de saída, um digital e outro analógico:
Recomendamos fortemente a leitura do datasheet do MQ 2.
De acordo com o datasheet, o sensor MQ 2 pode ser utilizado nas seguintes aplicações:
Em nosso projeto, vamos fazer o seguite:
Utilizar um sensor MQ-2 para identificar altas concentrações de gases inflamáveis ou fumaça e acionar um alarme(buzzer) de aviso. Ao mesmo, vamos mostrar uma mensagem de aviso em um display LCD 16×2
Um ponto interessante é o seguinte. Existem vários sensores da série MQ. Por exemplo, o MQ-3, que detecta álcool, o MQ-7, que detecta monóxido de carbono, o MQ-4, que detecta gás metano, e vários outros modelos para tipos específicos de gases. Todos eles possuem pinagem semelhante(VCC, GND, Saída Analógica e Saída Digital). Dessa forma, o circuito que você conhecer aqui é extensivo para todos esses outros sensores. Apenas tenha o cuidado de confirmar a pinagem.
De posse desses componentes, podemos montar o circuito abaixo. Repare que usamos o MQ-3 para montar o circuito, o que não muda o projeto pois, como dissemos, se aplica para toda a série de sensores.
Montagem circuito para uso do mq-2 com arduino
Com a montagem pronta podemos carregar o software abaixo. Se você acompanha os trabalhos aqui do blog então nada no programa será novidade para você. O LCD nós apresentamos e falamos sobre sua tecnologia neste post. O sensor MQ-2 segue um esquema muito parecido com vários outros sensores utilizados com Arduino, como o sensor de umidade e os vários outros modelos da família MQ.
Basicamente, o firmware faz o seguinte: Declara as diretivas associando strings aos pinos que serão utilizados. Configura os I/Os, o LCD e a porta serial. Na função void loop(), as duas saídas do sensor MQ-2 são constantemente lidas para avaliar se algum gás foi detectado.
A principal observação é em relação à calibração do sensor. Um pequeno trimpot permite ajustar a sensibilidade do sensor(nível em que a saída D0 vai para 5V). Aqui nos nossos testes, em ambiente normal, sem presença de gases, a saída analógica varia entre 130 e 150. Usamos um acendedor de fogão para poluir as proximidades do sensor com gás natural. A resposta do sensor foi extremamente rápida, indo de 150 para mais de 700. Essa dinâmica depende da densidade de gases no ambiente, e para ter um ajuste adequado são necessários alguns testes reais no local de instalação(lembre-se que esse sensor é voltado para testes e validação em bancada, e não para aplicações reais)
Nós declaramos uma variável SensorLevel para ser usada como limite para acionar o Buzzer e enviar a mensagem de alerta no LCD. Esse valor deve ser calibrado de acordo com seus testes de bacada. É interessante você variar esse parâmetro para estudar a dinâmica do sensor.
#include <LiquidCrystal.h> //Ligacoes de Hardware #define Buzzer 10 #define MQ2_Analog 0 #define MQ2_Digital 2 #define SensorLevel 500 #define LCD_RS 9 #define LCD_E 8 #define LCD_D4 3 #define LCD_D5 4 #define LCD_D6 5 #define LCD_D7 6 int digital_read = 0; int analog_read = 0; LiquidCrystal lcd(LCD_RS, LCD_E, LCD_D4, LCD_D5, LCD_D6, LCD_D7);//RS E D4 D5 D6 D7 void setup() { // Configura os IOs pinMode(MQ2_Digital, INPUT); pinMode(Buzzer, OUTPUT); // Inicializa a serial Serial.begin(9600); //Inicializa o LCD lcd.begin(16, 2); } void loop() { // Le os dados do sensor MQ2 digital_read = digitalRead(MQ2_Digital); analog_read = analogRead(MQ2_Analog); //apresenta as leituras na porta serial Serial.println("Saida Digital:"); Serial.println(digital_read); Serial.println(" Saida Analogica:"); Serial.println(analog_read); if (analog_read > SensorLevel) { // Apresenta os dados no LCD lcd.clear(); lcd.setCursor(0,0); lcd.print("Ar contaminado!"); // Aciona o Buzzer digitalWrite(Buzzer, HIGH); } else { // Apresenta os dados no LCD lcd.clear(); lcd.setCursor(0,0); lcd.print("Ar normal"); // Desliga o buzzer e o led vermelho digitalWrite(Buzzer, LOW); } delay(2000); }
Para aplicações reais, com sensores comerciais mais robustos, existem normas como a NBR IEC 60079-29-2 – Detecção de gases em atmosferas explosivas e a NR33 – Norma trabalhista que regulamenta o trabalho em espaços confinados, que estabelecem critérios de uso e calibração que são muito importantes. A NR33, por exemplo, estabelece vários critérios para calibração de detectores de gases em ambientes confinados.
Lembre-se que detecção de gases é um assunto sério, caso esteja desenvolvendo uma aplicação comercial, se atenha às regras e normais legais e tenha em vista que trabalhos de bancada(como o apresentado aqui) não devem ser empregados em situações reais.
Você também pode conferir o código completo e atualizado visitando o repositório desse post no GitHub da Eletrogate.
A maior parte dos fios usados na ligação são para o LCD. A interface com o sensor e o Buzzer tomam apenas alguns fios. Veja como ficou o sistema!
Sensor MQ-2 com Arduino e LCD e Buzzer
Gostou do projeto? Esperamos que agora você já consiga incorporar não só o MQ-2, mas qualquer outro sensor da família MQ. Esses sensores podem detectar uma variedade muito grande de gases e são fáceis e práticos de serem introduzidos em projetos com arduino e pequenos sistemas microprocessados. Se tiver alguma pergunta, deixe nos comentários!
Para conhecer os demais sensores da família, visite esse link.
Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.
|
A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.
Tenha a Metodologia Eletrogate dentro da sua Escola! Conheça nosso Programa de Robótica nas Escolas!