Sensor de gas y humo MQ2 Arduino

MQ2 Arduino sensores son adecuados para detectar GLP, propano, metano, alcohol, hidrógeno, humo. Siendo más sensible al GLP y propano. Los sensores MQ-2 se utilizan en proyectos domésticos inteligentes para la detección puntual de gas o humo. El sensor pertenece a la familia de sensores MQ, de bajo coste y fácil uso. Veamos la conexión y el uso del detector de gas y humo MQ-2 con un microcontrolador Arduino.

Para esta actividad necesitaremos:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • detector de humo y gas MQ2;
  • LEDs y resistencias de 220 Ohm;
  • protoboard;
  • cables de conexion;
  • libreria MQ2.h

Sensor de gas MQ2 Arduino datasheet, pinout

El principio del MQ2 se basa en un detector fabricado con una aleación de estaño y óxido de aluminio, que se calienta considerablemente durante el funcionamiento del sensor. La reacción química que se produce cuando las moléculas de gas hidrocarburo entran en contacto con el elemento sensor modifica la resistencia del sensor. Midiendo el cambio en la resistencia, es posible conocer la concentración exacta de gas en el aire.

MQ2 Gas/Smoke Sensor Arduino pinout, datasheet
MQ2 Gas/Smoke Sensor Arduino pinout, datasheet

Características MQ2 Gas/Smoke Sensor:

  • Alimentación: 5V
  • Consumo de corriente: 180 mA
  • Sensibilidad: 300-10000 ppm
  • Temperatura: de -10 a +50°C
  • Humedad: 95% máx
  • Interfaz: analógica y digital

La tensión de salida analógica del módulo cambia en proporción a la concentración de humo o gas. Cuanto mayor sea la concentración de gas, mayor será la tensión de salida. La señal lógica puede calibrarse acercando el sensor al humo que se desea detectar. A continuación, gire el potenciómetro en el sentido de las agujas del reloj (para aumentar la sensibilidad del sensor) hasta que se encienda el LED rojo del módulo MQ2.

Conectar detector de gas y humo MQ2 Arduino

Conexión detector de gas MQ2 Arduino
Conexión módulo detector de gas MQ2 Arduino

Veamos dos variantes del programa de sensor de humo MQ2. La primera variante es sin librería y otro ejemplo con la librería MQ2.h. En el siguiente ejemplo, conecte el pin A1 al puerto lógico del sensor de gas (señal digital). En el primer programa, la información sobre la concentración de gas se envía al puerto serie del monitor de puerto Arduino IDE. Después de conectar el sensor al microcontrolador Arduino Uno, carga el programa.

Programa Arduino para sensor de humo y gas MQ2

#define PIN_MQ2 A1
#define LED     13

int value;

void setup() {
  Serial.begin(9600);
  pinMode(LED, OUTPUT);
  pinMode(PIN_MQ2, INPUT);
}

void loop() {
   value = analogRead(PIN_MQ2);

   Serial.println("VALUE - " + String(value));
   Serial.println(" ");

   if (value > 200) { digitalWrite(LED, HIGH); }
   else { digitalWrite(LED, LOW); }

   delay(200);
}

Explicación sketch para sensor de humo Arduino MQ2:

  1. el umbral del LED se puede cambiar en la sentencia condicional if Arduino;
  2. en este ejemplo, tendrá que calibrar el sensor, es decir, configurar el LED para que se encienda en un umbral de concentración de gas determinado. El sensor no reconoce los tipos de gas, por lo que es mejor utilizar la biblioteca para MQ2.
Utilizar el detector MQ2 con la biblioteca MQ2.h
Utilizar el detector de gas MQ2 con la biblioteca MQ2.h

Para el siguiente ejemplo, cambie el puerto A1 de la salida analógica del módulo (Salida A0) a la salida digital (Salida D0). El módulo debe tener la calefacción del sensor activada (puente en la placa del sensor MQ-2 cerrado). Después de conectar el sensor al Arduino, carga el siguiente programa en la placa. MQ2 Gas/Smoke Sensor debe estar en modo de calefacción constante durante el funcionamiento (puente cerrado).

Programa para sensor de gas con la librería MQ2.h

#include "MQ2.h"

#define PIN_MQ2 A1
#define RED     13
#define BLU     7
MQ2 mq2(PIN_MQ2);

int lpg, co, smoke;

void setup() {
  Serial.begin(9600);
  mq2.begin();
  pinMode(RED, OUTPUT);
  pinMode(BLU, OUTPUT);
}

void loop() {
   float* values = mq2.read(true);

   lpg = mq2.readLPG();
   co = mq2.readCO();
   smoke = mq2.readSmoke();

   Serial.println("LPG - " + String(lpg));
   Serial.println("CO - " + String(co));
   Serial.println(" ");

   if (lpg > 100) { digitalWrite(RED, HIGH); }
   if (co > 100) { digitalWrite(BLU, HIGH); }
   else { digitalWrite(RED, LOW); digitalWrite(RED, BLU); }

   delay(200);
}

Explicación sketch para sensor de gas con la librería MQ2.h:

  1. la información se transmite al monitor serie del puerto Arduino IDE;
  2. el umbral del LED puede modificarse en la sentencia if y el programa puede configurarse para detectar la concentración de otro gas.

Conclusión. El MQ2 es uno de los sensores de gas más utilizados de la serie de sensores MQ Arduino. El módulo es perfecto para proyectos que requieren un sistema de control de la calidad del aire ambiente. Es capaz de detectar concentraciones de gas tan bajas como 200 ppm en el aire. Si tienes alguna duda sobre la conexión del MQ2 al microcontrolador Arduino y los sketches, por favor, déjala en los comentarios del post.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *