Skip to Content

Comment utiliser le capteur de gaz méthane MQ-4 avec Arduino

Comment utiliser le capteur de gaz méthane MQ-4 avec Arduino

Dans ce tutoriel, nous allons apprendre à utiliser le capteur de gaz méthane MQ-4 avec Arduino pour construire un système d’alarme de détection de gaz. Ce système utilisera une LED et un buzzer pour nous alerter lorsqu’une détection de gaz méthane est effectuée dans l’environnement.

Les capteurs de gaz sont essentiels dans diverses applications, notamment en milieu industriel, pour la sécurité domestique et la surveillance environnementale. Le capteur de gaz MQ-4 est spécialement conçu pour détecter le gaz méthane, ce qui le rend idéal pour les applications nécessitant la surveillance des fuites de méthane.

Pour créer notre système d’alarme de détection de gaz, nous allons connecter le capteur de gaz MQ-4 à une carte Arduino et le programmer pour déclencher la LED et le buzzer lorsque du gaz méthane est détecté. Commençons par rassembler les pièces nécessaires pour ce projet.

Pièces requises

Makerguides is a participant in affiliate advertising programs designed to provide a means for sites to earn advertising fees by linking to Amazon, AliExpress, Elecrow, and other sites. As an Affiliate we may earn from qualifying purchases.

Vous trouverez ci-dessous les pièces nécessaires pour ce projet. Si vous disposez déjà d’un ensemble de résistances et de quelques LED, vous n’aurez pas besoin du kit suggéré. Seule une LED rouge et une résistance de 220 Ohms sont nécessaires pour ce projet spécifique.

Arduino Uno

Dupont wire set

Jeu de fils Dupont

Half_breadboard56a

Plaque d’essai (breadboard)

USB Data Sync cable Arduino

Câble USB pour Arduino UNO

Kit Résistances & LED

Buzzer passif

Capteur de gaz MQ-4

Présentation du capteur de gaz MQ-4

Le capteur de gaz MQ-4 est un capteur populaire utilisé pour détecter le gaz méthane. Il est couramment utilisé dans les systèmes de détection de fuites de gaz et peut également détecter l’alcool, les fumées de cuisson et la fumée de cigarette. Il est très facile à utiliser et s’intègre parfaitement avec les cartes Arduino pour divers projets.

Caractéristiques du capteur de gaz MQ-4

Le capteur de gaz MQ-4 présente les caractéristiques suivantes :

  • Tension de fonctionnement : Le capteur fonctionne sur une plage de tension de 5V à 24V DC.
  • Tension du chauffage : Il nécessite une tension de chauffage de 5V ±0,2V.
  • Résistance du chauffage : Le capteur a une résistance de chauffage de 31Ω ±3Ω.
  • Consommation d’énergie : Faible consommation (100mA)
  • Sensibilité : Le capteur MQ-4 est très sensible au gaz méthane (CH4), ce qui le rend adapté à la détection des fuites de gaz naturel.
  • Plage de détection : Le capteur détecte le méthane dans une plage de 300 à 10 000 ppm (parties par million).
  • Temps de chauffe : Il nécessite environ 48 heures de chauffe avant de fournir des mesures précises.
  • Temps de réponse : Le temps de réponse du capteur est inférieur à 10 secondes.
  • Temps de récupération : Le temps de récupération est inférieur à 30 secondes.
  • Température de fonctionnement : Le capteur peut fonctionner dans une plage de -10°C à 50°C.
  • Dimensions : Le module du capteur MQ-4 mesure environ 32 mm x 20 mm x 22 mm.
  • Interface : Il peut être facilement connecté à des microcontrôleurs ou cartes de développement via des broches analogiques ou numériques.

Veuillez noter que ces spécifications peuvent légèrement varier selon le fabricant ou le modèle spécifique du capteur MQ-4.

Fonctionnement interne du capteur de gaz MQ-4

Dans cette section, nous jetons un rapide coup d’œil au fonctionnement interne du capteur MQ-4. Au cœur du capteur se trouve une couche sensible au gaz composée d’un oxyde métallique (SnO2). Lorsque le gaz méthane entre en contact avec cette couche, il réagit avec l’oxygène présent à la surface du SnO2. Cela entraîne une variation de la résistance du matériau. Nous mesurons cette variation pour détecter la présence et la concentration du gaz.

Les images ci-dessous sont extraites du MQ-4 Datasheet capteur et montrent ses composants et son circuit interne.

Enroulé autour de la couche sensible (1) se trouve une bobine chauffante (4). C’est un composant important car la couche de SnO2 doit être chauffée pour que la réaction chimique avec le méthane ait lieu. C’est pourquoi vous sentirez que le capteur chauffe.

Ces composants sont enfermés dans un tube en céramique (5). Il protège physiquement la couche sensible et la bobine chauffante. Il aide également à maintenir une température stable à l’intérieur du capteur en fournissant une isolation thermique.

Enfin, nous avons les électrodes (2, 3), en or (Au) et platine (Pt). Elles sont fixées à la couche sensible. Les électrodes mesurent les variations de résistance de la couche sensible.

Caractéristiques de sensibilité du capteur MQ-4

Le capteur MQ-4 est principalement conçu pour détecter le méthane (CH4). Mais il présente aussi différents niveaux de sensibilité à d’autres gaz tels que le GPL (gaz de pétrole liquéfié), l’hydrogène (H2), le monoxyde de carbone (CO), l’alcool et la fumée. La sensibilité du capteur correspond au rapport entre la résistance du capteur dans différents gaz et sa résistance dans l’air pur. Le graphique suivant montre les caractéristiques de sensibilité pour ces gaz.

Pour le méthane, on constate que le MQ-4 a une excellente sensibilité. Cela signifie que nous pouvons détecter et mesurer avec précision les variations de concentration de méthane dans l’atmosphère. Même de petites variations de méthane entraînent des changements notables dans la résistance du capteur.

Pour le GPL et l’hydrogène, le capteur MQ-4 présente également une sensibilité assez élevée, bien que moins importante que pour le méthane. Cela signifie que nous pouvons détecter ces gaz, mais les mesures peuvent être moins précises ou réactives que pour le méthane.

Enfin, le capteur MQ-4 a une sensibilité plus faible au monoxyde de carbone, à l’alcool et à la fumée. Cela signifie que bien que le capteur réagisse à ces gaz, les variations de résistance seront plus faibles.

Dépendance à l’humidité et à la température du capteur MQ-4

Notez que la précision du capteur MQ-4 est influencée non seulement par la présence des gaz ciblés, mais aussi par des facteurs environnementaux tels que l’humidité et la température. Le graphique suivant montre la variation de la résistance en fonction de la température ambiante et de l’humidité :

L’humidité peut affecter les performances du capteur, principalement parce que la vapeur d’eau peut occuper les sites actifs sur la couche sensible en dioxyde d’étain (SnO2) où se produisent les réactions de détection des gaz. À des niveaux d’humidité élevés, la sensibilité du capteur au méthane diminue, ce qui peut entraîner des mesures moins précises.

La température est un autre facteur important lors de l’utilisation du capteur MQ-4. Le capteur MQ-4 intègre un élément chauffant pour maintenir la température nécessaire à la couche sensible SnO2. Cependant, la température ambiante peut toujours influencer les mesures du capteur.

Pour des mesures précises et stables, il peut être judicieux d’associer le capteur MQ-4 à un capteur de température et d’humidité. Notez également que le MQ-4 doit chauffer (rappelez-vous l’élément chauffant) pendant au moins 20 secondes avant que ses mesures ne deviennent stables et fiables.

Autres capteurs de la série MQ

Le capteur de gaz MQ-4 n’est qu’un des nombreux capteurs disponibles dans la série MQ. Chaque capteur de la série est conçu pour détecter un gaz spécifique. Vous trouverez ci-dessous une comparaison entre le capteur MQ-4 et d’autres capteurs MQ couramment utilisés :

  1. Capteur de gaz MQ-2 : Le capteur MQ-2 est conçu pour détecter plusieurs gaz, dont le méthane, le propane, le butane et l’alcool. Il offre une plage de détection plus large que le MQ-4, ce qui le rend adapté aux applications nécessitant la détection de plusieurs gaz.
  2. Capteur de gaz MQ-5 : Le capteur MQ-5 est spécifiquement conçu pour détecter le gaz naturel et le GPL. Il présente une sensibilité plus élevée à ces gaz que le MQ-4, ce qui le rend idéal pour les systèmes de détection de fuites de gaz.
  3. Capteur de gaz MQ-6 : Le capteur MQ-6 est conçu pour détecter le GPL, le butane et le propane. Il a une sensibilité similaire au méthane que le MQ-4, mais est plus ciblé sur la détection de ces gaz spécifiques.
  4. Capteur de gaz MQ-9 : Le capteur MQ-9 est conçu pour détecter le monoxyde de carbone, les gaz inflammables et la fumée. Il offre une plage de détection plus large que le MQ-4 et est couramment utilisé dans les systèmes de détection d’incendie.

Notez que nous avons un tutoriel pour un Air Pollution Monitoring and Alert System Using MQ-135 et un autre tutoriel sur le MQ3 Sensor & Arduino: Building An Alcohol Detector.

Brochage du capteur MQ-4

Un module de capteur MQ-4 typique est montré sur l’image ci-dessous. Il est généralement équipé de 4 broches : A0, D0, VCC et GND.

Pinout of MQ-4 Gas Sensor
Brochage du MQ-4

Voici le résumé des broches du module capteur de gaz méthane.

Noms des broches Description des broches Remarques
VCC Alimentation positive 5 V est la tension d’alimentation recommandée
A0 Sortie analogique Connectez cette broche à une entrée analogique de l’Arduino
D0 Sortie numérique Connectez à n’importe quelle broche GPIO de l’Arduino
GND Masse  

Au dos du module, vous trouverez un potentiomètre pour ajuster la sensibilité de la détection. Il y a aussi une LED d’alimentation (rouge) qui s’allume lorsque le module est sous tension et une LED de détection (verte) qui s’allume lorsque du gaz est détecté.

Backside of MQ-4 gas sensor module
Dos du module capteur de gaz MQ-4

Test du capteur de gaz MQ-4

Vous pouvez facilement tester le fonctionnement du module sans Arduino. Connectez VCC et GND à une alimentation 5V et la LED rouge d’alimentation à l’arrière du module devrait s’allumer. Attendez ensuite quelques secondes (pour des mesures stables >20 secondes). Vous remarquerez que le module chauffe légèrement. C’est normal. Il y a un élément chauffant à l’intérieur nécessaire au fonctionnement du capteur.

Testing the MQ-4 gas sensor
Test du capteur de gaz MQ-4

Si vous placez maintenant un briquet à proximité et appuyez sur le bouton pour libérer le gaz ( ne l’allumez pas ! ), la LED verte de détection à l’arrière devrait s’allumer. Sinon, ajustez le potentiomètre à l’arrière du module.

Dans la section suivante, nous verrons comment connecter le capteur MQ-4 à l’Arduino et écrire le code nécessaire pour commencer à détecter le gaz méthane.

Connexion des composants

Dans cette section, nous connectons toutes les pièces. Commençons par connecter l’alimentation à la breadboard, puis de là au capteur MQ-4 (fils bleu et rouge). Assurez-vous que le 5V est connecté au VCC du MQ-4. Ensuite, connectez la sortie analogique (A0) du MQ-4 avec un fil jaune à la broche A0 (entrée analogique) de l’Arduino.

Connecting the buzzer, led and MQ-4 to the Arduino
Connexion du buzzer, de la LED et du MQ-4 à l’Arduino

Lors de la connexion du buzzer, assurez-vous de connecter la borne positive (marquée d’un léger symbole (+)) à la broche 3 de l’Arduino (fil violet). L’autre borne est connectée à la masse.

Enfin, la LED. Nous connectons d’abord la résistance à la patte la plus longue de la LED (anode), puis la résistance à la broche 2 de l’Arduino (fil vert). L’autre patte de la LED doit être connectée à la masse.

Et voilà. Le câblage est terminé. Si vous avez besoin de plus de détails, consultez le tableau complet de câblage ci-dessous.

De Broche Couleur du fil Vers Broche
Arduino 5V Rouge Breadboard Rail positif
Arduino GND Bleu Breadboard Rail négatif
MQ-4 GND Bleu Breadboard Rail négatif
MQ-4 VCC Rouge Breadboard Rail positif
MQ-4 Sortie/Signal Jaune Arduino A0
Buzzer Positif (+) Violet Arduino ~4
Buzzer Négatif (-) Bleu Breadboard Rail négatif
Résistance N’importe laquelle LED Anode (patte longue)
Résistance N’importe laquelle Vert Arduino ~3
LED Cathode (patte courte) Bleu Breadboard Rail négatif

Dans la section suivante, nous écrirons le code pour notre système de détection de gaz.

Écriture du code Arduino

Dans cette section, nous allons écrire le code pour notre système d’alarme de détection de gaz. Nous voulons allumer la LED et activer le buzzer si le niveau de gaz dans l’environnement dépasse un certain seuil. Voici le code complet, et dans la section suivante, nous expliquerons ses parties.

const int ledPin = 2;
const int buzzerPin = 3;
const int sensorPin = A0;
const int threshold = 500;

void alarm_on() {
  digitalWrite(ledPin, HIGH);
  tone(buzzerPin, 5000);
  delay(1000);
  alarm_off();
}

void alarm_off() {
  digitalWrite(ledPin, LOW);
  noTone(buzzerPin);
  delay(500);
}

void setup() {
  Serial.begin(9600);
  pinMode(sensorPin, INPUT);
  pinMode(ledPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
}

void loop() {
  int sensorValue = analogRead(sensorPin);
  Serial.print("MQ-4:");
  Serial.println(sensorValue);
  (sensorValue > threshold) ? alarm_on() : alarm_off();
}

Constantes

Nous commençons par déclarer les constantes nécessaires.

const int ledPin = 2;
const int buzzerPin = 3;
const int sensorPin = A0;
const int threshold = 500;

D’abord, nous définissons ledPin, qui représente le numéro de la broche à laquelle la LED est connectée. buzzerPin est la broche à laquelle le buzzer est connecté. Ensuite, nous avons besoin d’une constante pour la broche sensorPin où le capteur MQ-4 est connecté. Enfin, nous définissons un threshold qui spécifie le niveau de gaz à partir duquel le système d’alarme s’active.

Fonctions d’alarme

Ensuite, nous définissons deux fonctions : alarm_on() et alarm_off(). Ces fonctions contrôlent le comportement du système d’alarme. La fonction alarm_on() est responsable de l’activation de l’alarme.

void alarm_on() {
  digitalWrite(ledPin, HIGH);
  tone(buzzerPin, 5000);
  delay(1000);
  alarm_off();
}

Dans cette fonction, nous mettons d’abord la broche de la LED à HIGH, allumant la LED. Puis nous activons le buzzer en générant un son à une fréquence de 5000 Hz. Nous attendons 1000 ms = 1 s, puis appelons alarm_off() pour éteindre l’alarme. Cela produit un bip tant que des niveaux élevés de gaz sont détectés.

void alarm_off() {
  digitalWrite(ledPin, LOW);
  noTone(buzzerPin);
  delay(500);
}

Dans la fonction alarm_off(), nous mettons d’abord la broche de la LED à LOW, éteignant la LED. Puis nous arrêtons le buzzer en appelant la fonction noTone(). Enfin, nous attendons 500 ms = 0,5 seconde.

Fonction setup

Dans la fonction setup(), nous initialisons la communication et les modes des broches. Rien de compliqué. Assurez-vous simplement que la broche du capteur est en mode INPUT.

void setup() {
  Serial.begin(9600);
  pinMode(sensorPin, INPUT);
  pinMode(ledPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
}

Fonction loop

Dans la fonction loop(), nous lisons en continu la valeur analogique du capteur MQ-4 et déclenchons l’alarme si la valeur dépasse le seuil.

void loop() {
  int sensorValue = analogRead(sensorPin);
  Serial.print("MQ-4:");
  Serial.println(sensorValue);
  (sensorValue > threshold) ? alarm_on() : alarm_off();
}

La seule partie intéressante ici est la ligne (sensorValue > 500) ? alarm_on() : alarm_off(), où nous utilisons une ternary conditional operator pour vérifier si la valeur du capteur est supérieure au threshold. Si c’est le cas, la fonction alarm_on() est appelée pour activer l’alarme. Sinon, la fonction alarm_off() est appelée pour éteindre l’alarme.

Cette boucle continue indéfiniment, surveillant en permanence la valeur du capteur et déclenchant l’alarme si nécessaire.

Exécution du code

Si vous ouvrez le moniteur série et exécutez ce code, vous verrez apparaître une ligne avec le label « MQ-4 ». Lorsque vous exposez ensuite le capteur MQ-4 au gaz méthane (par exemple, le gaz d’un briquet), vous devriez observer une augmentation soudaine de la valeur du capteur, suivie d’une décroissance plus lente. Voir l’image ci-dessous, où j’ai fait exactement cela.

Serial Plotter output with gas detection peak
Sortie du traceur série avec pic de détection de gaz

Félicitations, vous avez maintenant un système d’alarme de détection de gaz fonctionnel ! Amusez-vous bien ; )

Conclusion

Dans ce tutoriel, nous avons appris à utiliser le capteur de gaz méthane MQ-4 avec Arduino. Nous avons commencé par présenter les pièces nécessaires pour ce projet, incluant une carte Arduino, le capteur MQ-4, un buzzer, une LED, des fils de connexion et une breadboard.

Ensuite, nous avons détaillé le capteur MQ-4, expliquant son principe de fonctionnement et sa capacité à détecter le gaz méthane. Nous avons également mis en avant certaines caractéristiques clés de ce capteur.

Puis, nous sommes passés à l’aspect pratique du projet en expliquant comment connecter les composants ensemble. Nous avons fourni un schéma de câblage clair et des instructions étape par étape pour assurer une connexion réussie entre le capteur MQ-4 et la carte Arduino.

Une fois le matériel installé, nous avons écrit le code Arduino. Nous avons expliqué comment utiliser l’entrée analogique de l’Arduino pour lire les valeurs du capteur et déclencher une alarme lorsque la concentration de gaz dépasse un seuil donné.

En conclusion, le capteur de gaz méthane MQ-4 est un outil utile pour détecter les fuites de méthane ou surveiller les niveaux de méthane dans diverses applications. En suivant ce tutoriel, vous devriez maintenant bien comprendre comment utiliser ce capteur avec Arduino et interpréter ses mesures.

N’oubliez pas de toujours faire preuve de prudence lors de l’utilisation de capteurs de gaz et d’assurer une bonne ventilation dans l’environnement de test. La sécurité doit être une priorité absolue lorsqu’on manipule des gaz potentiellement dangereux.

Nous espérons que ce tutoriel vous a aidé à démarrer avec le capteur de gaz méthane MQ-4. Si vous avez d’autres questions ou besoin d’assistance supplémentaire, veuillez consulter la section FAQ ou nous contacter via les liens fournis.

Bonnes expérimentations et restez prudents !

Questions fréquemment posées

Voici quelques questions courantes sur l’utilisation du capteur de gaz méthane MQ-4 avec Arduino :

Q1 : Comment fonctionne le capteur de gaz MQ-4 ?

Le capteur de gaz MQ-4 fonctionne sur le principe de la conductivité des gaz. Il contient un élément sensible en dioxyde d’étain (SnO2) qui réagit avec le gaz méthane. Lorsque le méthane est présent, la conductivité de l’élément sensible augmente, ce qui peut être mesuré par l’Arduino.

Q2 : Le capteur MQ-4 peut-il détecter d’autres gaz que le méthane ?

Bien que le capteur MQ-4 soit principalement conçu pour détecter le méthane, il peut aussi détecter d’autres gaz inflammables comme le propane et le butane. Cependant, il peut être moins précis ou sensible pour ces autres gaz.

Q3 : Quelle est la précision du capteur MQ-4 ?

La précision du capteur MQ-4 peut varier selon plusieurs facteurs tels que l’étalonnage, les conditions environnementales et la concentration du gaz détecté. Il est recommandé d’étalonner le capteur périodiquement pour une meilleure précision.

Q4 : Comment calibrer le capteur MQ-4 ?

Pour calibrer le capteur MQ-4, vous pouvez l’exposer à une concentration connue de gaz méthane et ajuster le potentiomètre de sensibilité jusqu’à obtenir la réponse souhaitée. Il est important de suivre les recommandations du fabricant pour l’étalonnage.

Q5 : Puis-je utiliser le capteur MQ-4 pour des applications de sécurité ?

Bien que le capteur MQ-4 puisse détecter des gaz inflammables, il n’est pas certifié pour des applications de sécurité. Il est principalement destiné à des fins éducatives, de recherche et de prototypage. Pour des applications critiques en matière de sécurité, il est recommandé d’utiliser des capteurs certifiés répondant aux normes requises.

Q6 : Puis-je utiliser le capteur MQ-4 avec un ESP32 ?

Oui, le capteur MQ-4 peut également être utilisé avec un ESP32. Le câblage et le code seront similaires à ceux utilisés avec Arduino. Cependant, assurez-vous de vérifier les niveaux de tension et la compatibilité des broches entre le capteur et la carte ESP32.

Q7 : Puis-je faire fonctionner le système de détection de gaz sur batteries ?

C’est possible, mais cela nécessite des batteries assez volumineuses et je ne le recommande pas. Le capteur MQ-4 consomme environ 100mA et doit chauffer pendant au moins 30 secondes pour des mesures fiables. Cela signifie que même si nous mettons l’Arduino en mode deep-sleep pour économiser de l’énergie et le réveillons toutes les 5 minutes, le MQ-4 consommera la majeure partie de l’énergie.

N’oubliez pas de consulter le MQ-4 Gas Sensor Datasheet pour des informations et spécifications plus détaillées.

Liens

Voici quelques autres liens utiles concernant le capteur MQ-4 et son utilisation avec Arduino.