Datasheet & Pinout: MQ-2 Røg- og Gassensor Modul

👃 MQ-2 Røg- og Gassensor Modul

MQ-2 er din microcontrollers næse. Et lille varmelegeme varmer et tin-dioxid-element op, og når der kommer røg eller brandbare gasser (LPG, propan, brint, metan) i luften, falder elementets modstand – og spændingen på AO stiger.

Modulet har både en analog udgang til rigtige målinger og en digital udgang med justerbar tærskel. Og ja: den bliver varm. Det er meningen.

🛒 Køb MQ-2 gassensor

Vigtigt: MQ-2 er en fin hobby-sensor til at opdage ændringer i luften, men den er ikke kalibreret og erstatter ikke en godkendt røg- eller gasalarm.

⚡ Hurtige specifikationer

Parameter Værdi
Sensor MQ-2 (SnO₂ halvleder-gassensor)
Forsyning 5,0 V ±0,2 V (varmelegemet kræver 5 V)
Varmelegeme ca. 31 Ω → ca. 160 mA / op til ca. 800–900 mW
Detekterer LPG, propan, brint (mest følsom), metan, røg og andre brandbare dampe
Koncentrationsområde ca. 300–10.000 ppm (brandbar gas)
Udgange AO: analog (højere = mere gas), DO: digital via LM393 med potentiometer
Indkøring Første gang: lad den køre 24–48 timer. Ved hver opstart: et par minutters opvarmning

📌 Pinout

Pin Navn Funktion Forbindes til
– VCC Forsyning 5 V 5V
– GND Stel GND
– DO Digital alarm-udgang (på de fleste moduler LOW ved gas) D2
– AO Analog udgang 0–5 V A0

Rækkefølgen af DO og AO varierer mellem printversioner – læs silketrykket. På de fleste MQ-moduler er DO aktiv LOW (signal-LED'en lyser samtidig), men tjek dit eget modul ved at prøve med en lighter (uden flamme!).

🔌 Sådan forbinder du den

MQ-2 Arduino UNO / Nano ESP32 (DevKit)
VCC 5V 5V / VIN
GND GND GND
AO A0 GPIO34 via spændingsdeler (AO kan nå 5 V)
DO D2 GPIO27 via spændingsdeler (DO er trukket op til 5 V)

Brug fx 10 kΩ i serie og 20 kΩ til GND på hver signal-ledning til ESP32. Husk så at regne den analoge værdi tilbage i koden.

💻 Eksempelkode

Bibliotek: ingen

const int AO_PIN = A0;
const int DO_PIN = 2;
const int GRAENSE = 400;   // find din egen værdi ved test

void setup() {
  Serial.begin(9600);
  pinMode(DO_PIN, INPUT);
  Serial.println("MQ-2 varmer op (vent et par minutter)...");
}

void loop() {
  int gas = analogRead(AO_PIN);
  bool alarm = (digitalRead(DO_PIN) == LOW); // aktiv LOW på de fleste moduler

  Serial.print("Gasniveau: ");
  Serial.print(gas);
  Serial.print("   DO-alarm: ");
  Serial.println(alarm ? "JA" : "nej");

  if (gas > GRAENSE) {
    Serial.println("Hov! Der lugter af noget!");
  }
  delay(1000);
}

Rå-værdien er relativ – den afhænger af temperatur, fugt og den enkelte sensor. Find "ren luft"-niveauet i dit eget rum og sæt grænsen et stykke over.

💡 KompoNemt-tip fra værkstedet

  • Den bliver varm: Varmelegemet trækker ca. 160 mA. Montér den, så den ikke rører plast eller ledninger, og forsyn den ikke fra en sløj USB-port med mange andre ting på.
  • Strøm fra 5V-pinnen: Arduino-boardets 5V-pin klarer det fint fra USB, men ikke fra en lille 3,3 V-regulator.
  • Indkør den: Nye sensorer driver meget de første døgn. Lad den stå tændt 24–48 timer, før du sætter din grænse.
  • Luft omkring: Gassen skal kunne nå sensoren – lav huller i kabinettet ud for nettet.
  • Test sikkert: Pust gas fra en lighter uden at tænde den mod sensoren på afstand. Aldrig åben ild ind i elektronikken.

🔧 Fejlfinding

  • Værdien kryber op og ned: Sensoren er ikke varmet op endnu. Vent et par minutter (første gang: et døgn).
  • DO-alarmen er altid aktiv: Drej potentiometeret, til signal-LED'en slukker i ren luft.
  • Arduino genstarter: Forsyningen kan ikke klare varmelegemet – brug en bedre USB-port eller ekstern 5 V.
  • Ingen reaktion: Tjek at modulet får 5 V. På 3,3 V bliver varmelegemet ikke varmt nok.

Sidder du fast? Skriv til os – vi hjælper gerne.