Skip to main content

Grove - Sensor de Gas(MQ2)

pir

El módulo Grove - Sensor de Gas(MQ2) es útil para la detección de fugas de gas (hogar e industria). Es adecuado para detectar H2, GLP, CH4, CO, Alcohol, Humo o Propano. Debido a su alta sensibilidad y tiempo de respuesta rápido, la medición se puede realizar lo antes posible. La sensibilidad del sensor se puede ajustar mediante potenciómetro.

Sensor

Tipo de Gas

Consigue Uno Ahora

MQ2Gas Combustible, Humo
MQ3Vapor de Alcohol
MQ5GLP, Gas Natural, Gas de Ciudad
MQ9Monóxido de Carbono, Gas de Carbón, Gas Licuado
tip

Hemos lanzado la Guía de Selección de Sensores de Gas de Seeed, te ayudará a elegir el sensor de gas que mejor se adapte a tus necesidades.

Características

  • Amplio alcance de detección
  • Estable y larga vida útil
  • Respuesta rápida y alta sensibilidad
tip

Más detalles sobre los módulos Grove consulta Sistema Grove

Especificaciones

ElementoParámetroMínTípicoMáxUnidad
VCCVoltaje de Trabajo4.955.1V
PHConsumo de Calefacción0.5-800mW
RLResistencia de Cargaajustable
RHResistencia del Calentador-33-Ω
RsResistencia de Detección3-30

Plataformas Compatibles

ArduinoRaspberryArduPy

pir

pir

pir

caution

Las plataformas mencionadas anteriormente como compatibles son una indicación de la compatibilidad de software o teórica del módulo. Solo proporcionamos biblioteca de software o ejemplos de código para la plataforma Arduino en la mayoría de los casos. No es posible proporcionar biblioteca de software / código de demostración para todas las plataformas MCU posibles. Por lo tanto, los usuarios tienen que escribir su propia biblioteca de software.

Ideas de Aplicación

  • Detección de fugas de gas.
  • Juguetes
  • Aplicaciones IoT
  • Detecciones Inteligentes

Primeros Pasos

El voltaje de salida del sensor de gas aumenta cuando la concentración de gas aumenta. La sensibilidad se puede ajustar girando el potenciómetro. Para información detallada sobre el sensor MQ-2, consulte la hoja de datos proporcionada en la sección Recursos.

warning

Tenga en cuenta que el mejor tiempo de precalentamiento para el sensor es superior a 24 horas.

Jugar con arduino

Hardware

  • Paso 1. Prepare los siguientes elementos:
Seeeduino V4.2Base ShieldGrove-Gas Sensor-MQ2

pir

pir

pir

Obtener Uno AhoraObtener Uno AhoraObtener Uno Ahora
  • Paso 2. Conecta Grove-Gas_Sensor-MQ2 al puerto A0 del Grove-Base Shield.
  • Paso 3. Conecta Grove - Base Shield al Seeeduino.
  • Paso 4. Conecta el Seeeduino a la PC mediante un cable USB.

pir

Conecta el Grove - Gas Sensor(MQ2) al puerto A0 como se muestra en la imagen de arriba.

note

Si no tenemos Grove Base Shield, también podemos conectar directamente Grove-Gas_Sensor-MQ2 al Seeeduino como se muestra a continuación.

SeeeduinoGrove-Gas_Sensor-MQ2
5VRojo
GNDNegro
No ConectadoBlanco
A0Amarillo

Software

hay algunos ejemplos. Por favor copia y pega el código de abajo en un nuevo sketch de Arduino, y súbelos respectivamente. Si no sabes cómo subir el código, por favor revisa cómo subir código.

Ejemplo básico: Detección de Gas

En este ejemplo, el sensor está conectado al pin A0. Se muestra el voltaje leído del sensor. Este valor puede usarse como umbral para detectar cualquier aumento/disminución en la concentración de gas.

void setup() {
Serial.begin(9600);
}

void loop() {
float sensor_volt;
float sensorValue;

sensorValue = analogRead(A0);
sensor_volt = sensorValue/1024*5.0;

Serial.print("sensor_volt = ");
Serial.print(sensor_volt);
Serial.println("V");
delay(1000);
}

Medición : Aproximación

Estos ejemplos demuestran formas de conocer la concentración aproximada de Gas. Según la hoja de datos de los sensores MQx, estas ecuaciones están probadas para condiciones estándar y no están calibradas. Puede variar según el cambio de temperatura o humedad.

note

Por favor mantenga el Sensor de Gas en un ambiente de aire limpio.

void setup() {
Serial.begin(9600);
}

void loop() {
float sensor_volt;
float RS_air; // Get the value of RS via in a clear air
float R0; // Get the value of R0 via in H2
float sensorValue;

// Get a average data by testing 100 times
for(int x = 0 ; x < 100 ; x++)
{
sensorValue = sensorValue + analogRead(A0);
}
sensorValue = sensorValue/100.0;


sensor_volt = sensorValue/1024*5.0;
RS_air = (5.0-sensor_volt)/sensor_volt; // omit * RL
R0 = RS_air/9.8; // The ratio of RS/R0 is 9.8 in a clear air from Graph (Found using WebPlotDigitizer)

Serial.print("sensor_volt = ");
Serial.print(sensor_volt);
Serial.println("V");

Serial.print("R0 = ");
Serial.println(R0);
delay(1000);

}

Luego, abre el monitor serie del IDE de Arduino. Anota el valor de R0 y esto se usará en el siguiente programa. Por favor anota el R0 después de que la lectura se estabilice.

warning

Reemplaza el R0 de abajo con el valor de R0 probado arriba.

Expón el sensor a cualquiera de los gases listados arriba.

void setup() {
Serial.begin(9600);
}

void loop() {

float sensor_volt;
float RS_gas; // Get value of RS in a GAS
float ratio; // Get ratio RS_GAS/RS_air
int sensorValue = analogRead(A0);
sensor_volt=(float)sensorValue/1024*5.0;
RS_gas = (5.0-sensor_volt)/sensor_volt; // omit * RL

/*-Replace the name "R0" with the value of R0 in the demo of First Test -*/
ratio = RS_gas/R0; // ratio = RS/R0
/*-----------------------------------------------------------------------*/

Serial.print("sensor_volt = ");
Serial.println(sensor_volt);
Serial.print("RS_ratio = ");
Serial.println(RS_gas);
Serial.print("Rs/R0 = ");
Serial.println(ratio);

Serial.print("\n\n");

delay(1000);

}

Ahora, podemos obtener la concentración de gas de la figura a continuación.

pir

Según el gráfico, podemos ver que la concentración mínima que podemos probar es 100ppm y la máxima es 10000ppm, en otras palabras, podemos obtener una concentración de gas entre 0.01% y 1%. Sin embargo, no podemos proporcionar una fórmula porque la relación entre la proporción y la concentración es no lineal.

Jugar con Raspberry Pi (Con Grove Base Hat para Raspberry Pi)

Hardware

  • Paso 1. Elementos utilizados en este proyecto:
Raspberry piGrove Base Hat para RasPiGrove-Gas_Sensor-MQ2

pir

pir

pir

Obtener UNO AhoraObtener UNO AhoraObtener UNO Ahora
  • Paso 2. Conecta el Grove Base Hat al Raspberry.
  • Paso 3. Conecta el Grove-Gas Sensor MQ2 al puerto A0 del Base Hat.
  • Paso 4. Conecta el Raspberry Pi a la PC a través del cable USB.

pir

note

Para el paso 3 puedes conectar el Grove-Gas Sensor MQ2 a cualquier Puerto Analógico pero asegúrate de cambiar el comando con el número de puerto correspondiente.

Software

  • Paso 1. Sigue Setting Software para configurar el entorno de desarrollo.
  • Paso 2. Descarga el archivo fuente clonando la librería grove.py.
cd ~
git clone https://github.com/Seeed-Studio/grove.py
  • Paso 3. Ejecuta los siguientes comandos para escribir el código.
cd grove.py/grove
nano grove_gas_sensor_mq2.py

Luego debes copiar el siguiente código en este archivo y presionar ++ctrl+x++ para salir y guardar.

import math
import sys
import time
from grove.adc import ADC

class GroveGasSensorMQ2:

def __init__(self, channel):
self.channel = channel
self.adc = ADC()

@property
def MQ2(self):
value = self.adc.read(self.channel)
return value

Grove = GroveGasSensorMQ2


def main():
if len(sys.argv) < 2:
print('Usage: {} adc_channel'.format(sys.argv[0]))
sys.exit(1)

sensor = GroveGasSensorMQ2(int(sys.argv[1]))

print('Detecting...')
while True:
print('Gas value: {0}'.format(sensor.MQ2))
time.sleep(.3)

if __name__ == '__main__':
main()
  • Paso 4. Ejecuta el siguiente comando para ejecutar el código
python grove_gas_sensor_mq2.py 0
success

Si todo va bien, podrás ver el siguiente resultado

pi@raspberrypi:~/grove.py/grove $ python grove_gas_sensor_mq2.py 0
Detecting...
Gas value: 760
Gas value: 714
Gas value: 675
Gas value: 637
Gas value: 603
Gas value: 568
Gas value: 535
Gas value: 506
Gas value: 481
Gas value: 464
Gas value: 449
Gas value: 429
Gas value: 413
Gas value: 456
Gas value: 470
Gas value: 440
Gas value: 404
Gas value: 373
Gas value: 352
Gas value: 339
Gas value: 330
^CTraceback (most recent call last):
File "grove_gas_sensor_mq2.py", line 69, in <module>
main()
File "grove_gas_sensor_mq2.py", line 66, in main
time.sleep(.3)
KeyboardInterrupt

Puedes salir de este programa simplemente presionando ++ctrl+c++.

note

Puede que hayas notado que para el puerto analógico, el número de pin en la serigrafía es algo como A1, A0, sin embargo en el comando usamos el parámetro 0 y 1, igual que el puerto digital. Así que por favor asegúrate de conectar el módulo en el puerto correcto, de lo contrario puede haber conflictos de pines.

Jugar Con Raspberry Pi (con GrovePi_Plus)

Hardware

  • Paso 1. Prepara las siguientes cosas:
Raspberry piGrovePi_PlusGrove-Gas_Sensor-MQ2

pir

pir

pir

Consigue Uno AhoraConsigue Uno AhoraConsigue Uno Ahora
  • Paso 2. Conecta el GrovePi_Plus al Raspberry.
  • Paso 3. Conecta el Grove-Gas_Sensor-MQ2 al puerto A0 del GrovePi_Plus.
  • Paso 4. Conecta el Raspberry a la PC a través del cable USB.

pir

Software

  • Paso 1. Sigue Setting Software para configurar el entorno de desarrollo.
  • Paso 2. Clona el repositorio de Github con Git.
cd ~
git clone https://github.com/DexterInd/GrovePi.git
  • Paso 3. Ejecuta los siguientes comandos para usar este sensor
cd ~/GrovePi/Software/Python
python grove_gas_sensor.py

Aquí está el código de grove_gas_sensor.py:

#!/usr/bin/env python
#
# GrovePi Example for using the Grove Gas Sensor
#
# The GrovePi connects the Raspberry Pi and Grove sensors. You can learn more about GrovePi here: http://www.dexterindustries.com/GrovePi
#
# Have a question about this example? Ask on the forums here: http://forum.dexterindustries.com/c/grovepi
#
'''
## License
The MIT License (MIT)
GrovePi for the Raspberry Pi: an open source platform for connecting Grove Sensors to the Raspberry Pi.
Copyright (C) 2017 Dexter Industries
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
'''

# NOTE:
# There are 5 gas sensors
# MQ2 - Combustible Gas, Smoke
# MQ3 - Alcohol Vapor
# MQ5 - LPG, Natural Gas, Town Gas
# MQ9 - Carbon Monoxide, Coal Gas, Liquefied Gas
# 02 - Oxygen
# The sensitivity can be adjusted by the onboard potentiometer
#
# https://www.seeedstudio.com/wiki/Grove_-_Gas_Sensor
# https://www.seeedstudio.com/wiki/Grove_-_Gas_Sensor(MQ5)
# https://www.seeedstudio.com/wiki/Grove_-_Gas_Sensor(O%E2%82%82)

import time
import grovepi

# Connect the Grove Gas Sensor to analog port A0
# SIG,NC,VCC,GND
gas_sensor = 0

grovepi.pinMode(gas_sensor,"INPUT")

while True:
try:
# Get sensor value
sensor_value = grovepi.analogRead(gas_sensor)

# Calculate gas density - large value means more dense gas
density = (float)(sensor_value / 1024.0)

print("sensor_value =", sensor_value, " density =", density)
time.sleep(.5)

except IOError:
print ("Error")

Jugar con Wio Terminal (ArduPy)

Hardware

  • Paso 1. Prepara los siguientes elementos:
Raspberry piGrovePi_PlusGrove-Gas_Sensor-MQ2

pir

pir

pir

Obtener Uno AhoraObtener Uno AhoraObtener Uno Ahora
  • Paso 2. Conecta el GrovePi_Plus al Raspberry.
  • Paso 3. Conecta el Grove-Gas_Sensor-MQ2 al puerto A0 del GrovePi_Plus.
  • Paso 4. Conecta el Raspberry a la PC a través del cable USB.

pir

Software

  • Paso 1. Sigue Setting Software para configurar el entorno de desarrollo.
  • Paso 2. Clona el repositorio de Github con Git.
cd ~
git clone https://github.com/DexterInd/GrovePi.git
  • Paso 3. Ejecuta los siguientes comandos para usar este sensor
cd ~/GrovePi/Software/Python
python grove_gas_sensor.py

Aquí está el código de grove_gas_sensor.py:

#!/usr/bin/env python
#
# GrovePi Example for using the Grove Gas Sensor
#
# The GrovePi connects the Raspberry Pi and Grove sensors. You can learn more about GrovePi here: http://www.dexterindustries.com/GrovePi
#
# Have a question about this example? Ask on the forums here: http://forum.dexterindustries.com/c/grovepi
#
'''
## License
The MIT License (MIT)
GrovePi for the Raspberry Pi: an open source platform for connecting Grove Sensors to the Raspberry Pi.
Copyright (C) 2017 Dexter Industries
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
'''
# NOTE:
# There are 5 gas sensors
# MQ2 - Combustible Gas, Smoke
# MQ3 - Alcohol Vapor
# MQ5 - LPG, Natural Gas, Town Gas
# MQ9 - Carbon Monoxide, Coal Gas, Liquefied Gas
# 02 - Oxygen
# The sensitivity can be adjusted by the onboard potentiometer
#
# https://www.seeedstudio.com/wiki/Grove_-_Gas_Sensor
# https://www.seeedstudio.com/wiki/Grove_-_Gas_Sensor(MQ5)
# https://www.seeedstudio.com/wiki/Grove_-_Gas_Sensor(O%E2%82%82)

import time
import grovepi

# Connect the Grove Gas Sensor to analog port A0
# SIG,NC,VCC,GND
gas_sensor = 0

grovepi.pinMode(gas_sensor,"INPUT")

while True:
try:
# Get sensor value
sensor_value = grovepi.analogRead(gas_sensor)

# Calculate gas density - large value means more dense gas
density = (float)(sensor_value / 1024.0)

print("sensor_value =", sensor_value, " density =", density)
time.sleep(.5)

except IOError:
print ("Error")

Jugar con Wio Terminal (ArduPy)

Hardware

  • Paso 1. Prepara los siguientes elementos:
Wio TerminalGrove - Sensor de Gas(MQ2)

pir

pir

Consigue Uno AhoraConsigue Uno Ahora
  • Paso 2. Conecta Grove - Gas Sensor(MQ2) al puerto Grove A0 del Wio Terminal.

  • Paso 3. Conecta el Wio Terminal a la PC a través del cable USB Type-C.

pir

Software

  • Paso 1. Sigue ArduPy Getting Started para configurar el entorno de desarrollo ArduPy en Wio Terminal.

  • Paso 2. Asegúrate de que el firmware ArduPy esté flasheado en Wio Terminal. Para más información, por favor sigue aquí.

aip build
aip flash
  • Paso 3. Copia el siguiente código y guárdalo como ArduPy-mq2.py:
from machine import Pin, ADC
from machine import LCD
from machine import Sprite
import time

mq2 = ADC(Pin(13))
lcd = LCD()
spr = Sprite(lcd) # Create a buff

def main():
spr.createSprite(320, 240)
while True:
spr.setTextSize(2)
spr.fillSprite(spr.color.BLACK)
spr.setTextColor(lcd.color.ORANGE)
spr.drawString("MQ2 Reading", 90, 10)
spr.drawFastHLine(40, 35, 240, lcd.color.DARKGREY)
spr.setTextColor(lcd.color.WHITE)
spr.drawString("- Current Level: ", 20, 50)
spr.drawNumber(mq2.read(), 220,50)
spr.pushSprite(0,0)
time.sleep_ms(500)

print("MQ2 Gas Sensor Reading is: ", mq2.read())

if __name__ == "__main__":
main()
  • Paso 4. Guarda el ArduPy-mq2.py en una ubicación que conozcas. Ejecuta el siguiente comando y reemplaza <YourPythonFilePath> con la ubicación de tu ArduPy-mq2.py.
aip shell -n -c "runfile <YourPythonFilePath>"
# Example:
# aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-mq2.py"
  • Step 5. We will see the gas value display on terminal as below, and displaying on the Wio Terminal LCD screen.
ansonhe@Ansons-Macbook-Pro ~:aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-mq2.py"
Positional argument (/dev/cu.usbmodem1414301) takes precedence over --open.
Connected to ardupy
MQ2 Gas Sensor Reading is: 60
MQ2 Gas Sensor Reading is: 61
MQ2 Gas Sensor Reading is: 62
MQ2 Gas Sensor Reading is: 62
MQ2 Gas Sensor Reading is: 64
MQ2 Gas Sensor Reading is: 63
MQ2 Gas Sensor Reading is: 66
MQ2 Gas Sensor Reading is: 64
MQ2 Gas Sensor Reading is: 65
MQ2 Gas Sensor Reading is: 65
MQ2 Gas Sensor Reading is: 65
MQ2 Gas Sensor Reading is: 64

pir

Visor de Esquemas en Línea

Recursos

Proyectos

Arduino y Sensor de Gas MQ2: El módulo Grove Sensor de Gas (MQ2) es útil para la detección de fugas de gas (hogar e industria). Es adecuado para detectar H2, GLP, CH4 y CO.

Nariz electrónica para detectar maduración de frutas

ED-E: Sistema de Automatización y Monitoreo del Hogar

Monitoreo y Respuesta Inteligente Escalable de Calidad del Aire ¡Monitoreo de Calidad del Aire que utiliza el Módulo de Cómputo Intel Edison, Amazon AWS, Visualización a través de Kibana, y drones!

Octopod: Proyecto Inteligente de Automatización del Hogar IoT Octopod, un sistema completo de automatización del hogar de forma única que te permite monitorear tu hogar y mantener la seguridad con IA y cerraduras RFID inteligentes.

Soporte Técnico y Discusión de Productos

Actualizable a Sensores Industriales

Con el controlador S2110 y el registrador de datos S2100 de SenseCAP, puedes convertir fácilmente el Grove en un sensor LoRaWAN®. Seeed no solo te ayuda con la creación de prototipos, sino que también te ofrece la posibilidad de expandir tu proyecto con la serie SenseCAP de sensores industriales robustos.

La carcasa IP66, configuración Bluetooth, compatibilidad con la red global LoRaWAN®, batería integrada de 19 Ah y el potente soporte de la APP hacen del SenseCAP S210x la mejor opción para aplicaciones industriales. La serie incluye sensores para humedad del suelo, temperatura y humedad del aire, intensidad de luz, CO2, EC, y una estación meteorológica 8 en 1. Prueba el último SenseCAP S210x para tu próximo proyecto industrial exitoso.

Loading Comments...