A05|02 Analoger Gas Sensor MQ-2
Analog Gas Sensor (MQ-2)
Sensorwerte / Gassensoren
Mit einem Gassensor kann man seinen Projekten einen Geruchssinn geben. Falls du beispielsweise planst ein System zur Überwachung der Raumluftqualität oder eine Brandfrüherkennung einzurichten, ist der analoge Gassensor MQ2 eine gute Wahl.
Der MQ2 Gassensor wird oft in Geräten zur Erkennung von Gaslecklagen in der Industrie eingesetzt. Dieser Sensor eignet sich für die Erkennung von LPG, I-Butan, Propan, Methan, Alkohol, Wasserstoff und sogar Rauch. Der Erfassungsbereich des Sensors ist also sehr breit. Er hat eine hohe Empfindlichkeit und schnelle Reaktion. Die Empfindlichkeit kann durch das Drehpotentiometer eingestellt werden.
Spezifikationen
- Signalart: analog
- Spannung: 5V
- Pinabstand: 2,54mm
- Breiter Erfassungsbereich
- Schnelle Reaktion und hohe Empfindlichkeit
- Einfache Treiberschaltung
- Stabile und lange Lebensdauer
Die große Bandbreite an detektierten Gasen hat aber einen Nachteil: Man kann nicht unterscheiden, welche der vielen Gase gerade sensiert wird. Man muss den Einsatz schon relativ genau bestimmen: Bei einem Atem-Alkoholtest-Projekt ist es einleuchtend, dass wir eher weniger Wasserstoff oder Rauch messen werden.
Schwieriger wird es, wenn man in einem Projekt gleichzeitig zwei unterschiedliche Gase voneinander unterscheiden will (z.B. Methan von Propan). Für diesen Fall gibt es spezifische Gas-Sensoren, die eine einzige Gasart detektieren. Der MQ2 ist eher ein Allrounder.
Wie funktioniert der MQ2-Gassensor?
MQ2 ist der am häufigsten verwendeten Gassensoren der MQ-Sensorserie. Es handelt sich um einen Gassensor vom Typ Metalloxid-Halbleiter. Er wird auch als Chemie-Widerstand bezeichnet, da sich der Sensor-Widerstand in Abhängigkeit eines Gases ändert. Mithilfe eines einfachen Spannungsteiler-Netzwerks können Gaskonzentrationen erkannt werden.
Interner Aufbau des MQ2-Gassensors
Der Sensor ist von zwei Lagen eines feinen Edelstahlnetzes eingeschlossen. Es handelt sich um ein Anti-Explosionsnetz und stellt sicher, dass das Heizelement im Inneren des Sensors keine Explosion verursacht. Schließlich haben wir es teilweise mit brennbaren Gasen zu tun. Zudem bietet es Schutz und filtert störende Schwebeteilchen heraus. So gelangen nur gasförmige Elemente in die Kammer.
Die untere Darstellung zeigt das Innenleben des Sensors, wenn das äußere Netz entfernt ist. Die sternförmige Struktur besteht aus dem Sensorelement und sechs Anschlussbeinen, die über das Bakelite-Element (thermisch resistenter Kunststoff) hinausragen. Von den sechs Anschlüssen sind zwei (H) für die Beheizung des Sensorelements zuständig und über eine Nickel-Chrom-Spule verbunden. Die übrigen vier Leitungen (A und B), die für die Ausgangssignale zuständig sind, werden über Platin-Drähte angeschlossen. Diese Drähte sind mit dem Körper des Sensorelements verbunden und übertragen kleine Änderungen des Stroms, der durch das Sensorelement fließt.
Vereinfacht dargestellt basiert die Widerstandsänderung des Sensors auf der Leitfähigkeit eines Zinndioxid-Elementes. Wenn bei normalen Luftverhältnissen das Zinndioxid bei hoher Temperatur erhitzt wird, bindet es an seiner Oberfläche Sauerstoff. Aus diesem Grund befindet sich im Sensor ein Heizelement, um die Betriebstemperatur des Zinndioxids zu gewährleisten. Wie bereits erwähnt heftet sich die Luft an die Oberfläche des Zinndioxids an und zieht dabei die Elektronen im Zinndioxid-Leiter an. Dadurch wird der Elektronenfluss gestoppt – es fließt kein Strom.
Das Gegenteil ist der Fall, wenn bestimmte Gase die Sauerstoffmoleküle von der Zinndioxid-Oberfläche verdrängen. In diesem Fall werden Elektronen an das Zinndioxid abgegeben und der Strom kann frei durch den Sensor fließen.
Der Aufbau
Verbinde dein Arduino mithilfe der Jumper Wire mit dem Modul:
Der minimal Sketch
Der Sketch misst den aktuellen Sensorwert und sendet ihn zum seriellen Monitor. Wird dabei ein Schwellenwert von 500 überschritten schaltet wird die LED am Pin 13 eingeschaltet. Kopiere den unteren Sketch, füge ihn in die Arduino IDE ein und lade ihn auf das Arduino-Board rauf.
/********************************************************
A05|03 Analoger Gas Sensor MQ2
Mr Robot UXSD / www.mrrobotuxsd.com
*********************************************************/
int gasPin = A0; //Pin-Nummer des Gassensors
int ledPin = 13; //Pin-Nummer der LED
int gasValue = 0; //Variable zum Speichern der Gassensor-Werte
void setup()
{
//Initialisiere die Serielle Kommunikation mit 9600 Bits pro Sekunde:
Serial.begin(9600);
pinMode(ledPin, OUTPUT); //den ledPin als OUTPUT deklarieren
}
void loop()
{
gasValue = analogRead(gasPin); //lies den aktuellen Gassensor-Wert
Serial.print("Analoger Gassensor: ");
Serial.println(gasValue);
if(gasValue > 500)
{
digitalWrite(ledPin, HIGH); //schalte die LED ein
delay(gasValue); //pausiere gemäß dem Gassensor-Wert
}
else
{
digitalWrite(ledPin, LOW); //schalte die LED aus
delay(gasValue); //pausiere gemäß dem Gassensor-Wert
}
}
Schalte den seriellen Monitor ein, indem du in der Arduino IDE in der Menüleiste auf Werkzeuge > Serieller Monitor gehst.
Du solltest nun die folgende Anzeige sehen:
Eines solltest du zum Schluss unbedingt beachten: Der MQ2 spiegelt nur den ungefähren Trend der Gaskonzentration in einem zulässigen Fehlerbereich wider. Genaue Gaskonzentration nicht möglich. Der Nachweis bestimmter Komponenten in der Luft erfordert in der Regel ein präziseres und teureres Instrument als es dieser Sensor leisten kann. Wenn dein Projekt darauf abzielt, Gaskonzentrationen auf einem sehr präzisen Niveau zu messen, dann ist dieser Gassensor nicht zu empfehlen.
Falls du die hier beschriebenen Elektronik-Module nicht hast kannst du sie in meiner Einkaufsliste finden. Warum ich selber hauptsächlich mit Modulen der Marke Keyestudio arbeite erläutere ich unter diesem Blog-Artikel.