Pular para o conteúdo principal

Grove - Sensor de Gás(MQ2)

pir

O módulo Grove - Gas Sensor(MQ2) é útil para detecção de vazamento de gás (doméstico e industrial). É adequado para detectar H2, GLP, CH4, CO, álcool, fumaça ou propano. Devido à sua alta sensibilidade e tempo de resposta rápido, a medição pode ser feita o mais rápido possível. A sensibilidade do sensor pode ser ajustada por potenciômetro.

Sensor

Tipo de Gás

Adquira Agora

MQ2Gás combustível, fumaça
MQ3Vapor de álcool
MQ5GLP, gás natural, gás de cidade
MQ9Monóxido de carbono, gás de carvão, gás liquefeito
dica

Lançamos o Seeed Gas Sensor Selection Guide, que ajudará você a escolher o sensor de gás que melhor atenda às suas necessidades.

Recursos

  • Ampla faixa de detecção
  • Estável e com longa vida útil
  • Resposta rápida e alta sensibilidade
dica

Para mais detalhes sobre os módulos Grove, consulte o Grove System

Especificação

ItemParâmetroMínTípicoMáxUnidade
VCCTensão de trabalho4.955.1V
PHConsumo de aquecimento0.5-800mW
RLResistência de cargaajustável
RHResistência do aquecedor-33-Ω
RsResistência de detecção3-30

Plataformas Suportadas

ArduinoRaspberryArduPy

pir

pir

pir

cuidado

As plataformas mencionadas acima como suportadas são uma indicação da compatibilidade teórica ou de software do módulo. Na maioria dos casos, fornecemos apenas biblioteca de software ou exemplos de código para a plataforma Arduino. Não é possível fornecer biblioteca de software / código de demonstração para todas as possíveis plataformas de MCU. Portanto, os usuários precisam escrever sua própria biblioteca de software.

Ideias de Aplicação

  • Detecção de vazamento de gás.
  • Brinquedos
  • Aplicações de IoT
  • Detecções inteligentes

Primeiros Passos

A tensão de saída do sensor de gás aumenta quando a concentração de gás aumenta. A sensibilidade pode ser ajustada girando o potenciômetro. Para informações detalhadas sobre o sensor MQ-2, consulte o datasheet fornecido na seção Resources.

atenção

Observe que o melhor tempo de pré-aquecimento para o sensor é acima de 24 horas.

Brincar com Arduino

Hardware

  • Passo 1. Prepare os itens abaixo:
Seeeduino V4.2Base ShieldGrove-Gas Sensor-MQ2

pir

pir

pir

Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o Grove-Gas_Sensor-MQ2 à porta A0 do Grove-Base Shield.
  • Passo 3. Conecte o Grove - Base Shield ao Seeeduino.
  • Passo 4. Conecte o Seeeduino ao PC por meio de um cabo USB.

pir

Conecte o Grove - Gas Sensor(MQ2) à porta A0 como mostrado na figura acima.

nota

Se não tivermos o Grove Base Shield, também podemos conectar o Grove-Gas_Sensor-MQ2 diretamente ao Seeeduino como abaixo.

SeeeduinoGrove-Gas_Sensor-MQ2
5VVermelho
GNDPreto
Not ConenctedBranco
A0Amarelo

Software

existem alguns exemplos. Copie e cole o código abaixo em um novo sketch do Arduino e faça o upload deles respectivamente. Se você não souber como enviar o código, verifique how to upload code.

Exemplo básico: Detecção de gás

Neste exemplo, o sensor é conectado ao pino A0. A tensão lida do sensor é exibida. Esse valor pode ser usado como limiar para detectar qualquer aumento/diminuição na concentração de gás.

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);
}

Medição : Aproximação

Estes exemplos demonstram maneiras de saber a concentração aproximada de gás. De acordo com o datasheet dos sensores MQx, essas equações são testadas para condições padrão e não são calibradas. Elas podem variar com base em mudanças de temperatura ou umidade.

nota

Mantenha o sensor de gás em um ambiente de ar limpo.

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);

}

Em seguida, abra o monitor serial da Arduino IDE. Anote o valor de R0, pois ele será usado no próximo programa. Anote o R0 depois que a leitura estabilizar.

atenção

Substitua o R0 abaixo pelo valor de R0 testado acima.

Exponha o sensor a qualquer um dos gases listados acima.

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);

}

Agora, podemos obter a concentração de gás a partir da figura abaixo.

pir

De acordo com o gráfico, podemos ver que a concentração mínima que podemos testar é 100ppm e a máxima é 10000ppm, em outras palavras, podemos obter uma concentração de gás entre 0,01% e 1%. Entretanto, não podemos fornecer uma fórmula porque a relação entre a razão e a concentração é não linear.

Brincar com Raspberry Pi (com Grove Base Hat para Raspberry Pi)

Hardware

  • Passo 1. Itens usados neste projeto:
Raspberry piGrove Base Hat for RasPiGrove-Gas_Sensor-MQ2

pir

pir

pir

Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o Grove Base Hat ao Raspberry.
  • Passo 3. Conecte o Grove-Gas Sensor MQ2 à porta A0 do Base Hat.
  • Passo 4. Conecte o Raspberry Pi ao PC através de um cabo USB.

pir

nota

No passo 3 você pode conectar o Grove-Gas Sensor MQ2 a qualquer Porta Analógica, mas certifique-se de alterar o comando com o número de porta correspondente.

Software

  • Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
  • Passo 2. Baixe o arquivo-fonte clonando a biblioteca grove.py.
cd ~
git clone https://github.com/Seeed-Studio/grove.py
  • Passo 3. Execute os comandos abaixo para escrever o código.
cd grove.py/grove
nano grove_gas_sensor_mq2.py

Então você deve copiar o código a seguir neste arquivo e pressionar ++ctrl+x++ para sair e salvar.

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()
  • Passo 4. Execute o comando abaixo para rodar o código
python grove_gas_sensor_mq2.py 0
success

Se tudo correr bem, você conseguirá ver o seguinte 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

Você pode sair deste programa simplesmente pressionando ++ctrl+c++.

nota

Você pode ter notado que, para a porta analógica, o número do pino na serigrafia é algo como A1, A0, entretanto no comando usamos os parâmetros 0 e 1, exatamente como na porta digital. Portanto, certifique-se de conectar o módulo na porta correta, caso contrário pode haver conflitos de pinos.

Brincar com Raspberry Pi (com GrovePi_Plus)

Hardware

  • Passo 1. Prepare os itens abaixo:
Raspberry piGrovePi_PlusGrove-Gas_Sensor-MQ2

pir

pir

pir

Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o GrovePi_Plus ao Raspberry.
  • Passo 3. Conecte o Grove-Gas_Sensor-MQ2 à porta A0 do GrovePi_Plus.
  • Passo 4. Conecte o Raspberry ao PC através de um cabo USB.

pir

Software

  • Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
  • Passo 2. Use git clone no repositório do Github.
cd ~
git clone https://github.com/DexterInd/GrovePi.git
  • Passo 3. Execute os comandos abaixo para usar este sensor
cd ~/GrovePi/Software/Python
python grove_gas_sensor.py

Aqui está o 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")

Brincar com Wio Terminal (ArduPy)

Hardware

  • Passo 1. Prepare os itens abaixo:
Raspberry piGrovePi_PlusGrove-Gas_Sensor-MQ2

pir

pir

pir

Adquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o GrovePi_Plus ao Raspberry.
  • Passo 3. Conecte o Grove-Gas_Sensor-MQ2 à porta A0 do GrovePi_Plus.
  • Passo 4. Conecte o Raspberry ao PC através de um cabo USB.

pir

Software

  • Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
  • Passo 2. Use git clone no repositório do Github.
cd ~
git clone https://github.com/DexterInd/GrovePi.git
  • Passo 3. Execute os comandos abaixo para usar este sensor
cd ~/GrovePi/Software/Python
python grove_gas_sensor.py

Aqui está o 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")

Brincar com o Wio Terminal (ArduPy)

Hardware

  • Passo 1. Prepare os itens abaixo:
Wio TerminalGrove - Gas Sensor(MQ2)

pir

pir

Adquira agoraAdquira agora
  • Passo 2. Conecte o Grove - Gas Sensor(MQ2) à porta Grove A0 do Wio Terminal.

  • Passo 3. Conecte o Wio Terminal ao PC através de um cabo USB Tipo-C.

pir

Software

  • Passo 1. Siga o ArduPy Getting Started para configurar o ambiente de desenvolvimento ArduPy no Wio Terminal.

  • Passo 2. Certifique-se de que o firmware ArduPy esteja gravado no Wio Terminal. Para mais informações, siga aqui.

aip build
aip flash
  • Passo 3. Copie o código a seguir e salve-o 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()
  • Passo 4. Salve o ArduPy-mq2.py em um local que você conheça. Execute o seguinte comando e substitua <YourPythonFilePath> pelo local do seu ArduPy-mq2.py.
aip shell -n -c "runfile <YourPythonFilePath>"
# Example:
# aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-mq2.py"
  • Passo 5. Veremos o valor do gás exibido no terminal como abaixo e também na tela LCD do Wio Terminal.
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

Visualizador de Esquemático Online

Recursos

Projetos

Arduino E Sensor de Gás MQ2: O módulo Grove Gas Sensor (MQ2) é útil para detecção de vazamento de gás (residencial e industrial). Ele é adequado para detectar H2, LPG, CH4 e CO.

Nariz eletrônico para detectar o amadurecimento de frutas

ED-E: Sistema de Automação e Monitoramento Residencial

Monitoramento e Resposta Inteligente e Escalável da Qualidade do Ar Monitoramento da qualidade do ar que usa o Intel Edison Compute Module, Amazon AWS, visualização através do Kibana e drones!

Octopod: Projeto de Automação Residencial Inteligente IoT Octopod, um sistema de automação residencial completo com formato exclusivo que permite monitorar sua casa e manter a segurança com IA e fechaduras RFID inteligentes.

Suporte Técnico & Discussão de Produto

Atualizável para Sensores Industriais

Com o SenseCAP S2110 controller e o S2100 data logger, você pode facilmente transformar o Grove em um sensor LoRaWAN®. A Seeed não apenas ajuda você na prototipagem, mas também oferece a possibilidade de expandir seu projeto com a série SenseCAP de robustos sensores industriais.

O invólucro IP66, a configuração via Bluetooth, a compatibilidade com a rede global LoRaWAN®, a bateria interna de 19 Ah e o poderoso suporte do APP fazem do SenseCAP S210x a melhor escolha para aplicações industriais. A série inclui sensores para umidade do solo, temperatura e umidade do ar, intensidade luminosa, CO2, EC e uma estação meteorológica 8 em 1. Experimente o mais recente SenseCAP S210x para o seu próximo projeto industrial de sucesso.

Loading Comments...