Le module MQ-2 est un détecteur de gaz combustibles et de fumées à sortie analogique et numérique. Il repose sur un capteur à oxyde d’étain (SnO2) dont la conductivité augmente dès qu’apparaissent dans l’air des vapeurs inflammables : GPL, propane, butane, méthane, hydrogène, alcool ou fumée. C’est le capteur le plus répandu des projets de détection de fuite de gaz sur Arduino et ESP32.
La carte porte le capteur, un comparateur LM393 et un potentiomètre de réglage. Elle délivre deux signaux : une tension analogique continue qui suit la concentration, et un signal numérique tout ou rien qui bascule au franchissement d’un seuil que vous fixez vous-même au tournevis — de quoi faire sonner un buzzer ou couper une alimentation en quelques lignes de programme.
À quoi sert un module MQ-2 ?
- Alerte de fuite de gaz — surveiller une cuisine, un local de bouteilles ou une chaudière et déclencher un buzzer avant que la fuite ne devienne dangereuse.
- Détection de fumée — repérer une fumée épaisse au-dessus d’un poste de travail ou d’un four.
- Commande de ventilation — démarrer un extracteur par relais dès que le niveau dépasse le seuil.
- Mesure pédagogique — suivre en continu sur le moniteur série la réponse du capteur à une bougie, à un briquet ou à l’alcool.
- Enregistrement de la qualité d’air — relever une tendance sur la journée avec une carte à mémoire, pour observer le comportement d’un local.
Caractéristiques techniques
| Référence | MQ-2 — module capteur de gaz à sortie analogique et numérique |
|---|---|
| Élément sensible | Oxyde d’étain (SnO2) déposé sur un tube céramique chauffé, sous grille métallique |
| Gaz détectés | Gaz combustibles et fumées : GPL, propane, butane, méthane, hydrogène, alcool, fumée |
| Sensibilité marquée | GPL, propane et hydrogène |
| Plage annoncée | 300 à 10 000 ppm pour les gaz combustibles |
| Tension de chauffage | 5,0 V, en continu ou en alternatif |
| Tension de circuit | Jusqu’à 24 V en continu selon le constructeur ; 5 V en usage courant |
| Consommation du chauffage | Au plus 900 mW, soit environ 180 mA sous 5 V — la partie la plus gourmande du module |
| Résistance de charge | Réglable ; les constructeurs recommandent une valeur de l’ordre de 20 kΩ pour un étalonnage au gaz de pétrole liquéfié |
| Sortie analogique | Tension continue qui suit la concentration, à relire sur une entrée analogique du microcontrôleur |
| Sortie numérique | Comparateur LM393, seuil réglé par le potentiomètre de la carte |
| Témoins | Deux LED : mise sous tension, et état de la sortie numérique |
| Broches du module | 4 broches mâles au pas de 2,54 mm |
| Préchauffage | Le capteur demande plusieurs dizaines d’heures de chauffe pour un étalonnage réellement stable |
| Température d’usage | Environ 20 °C et 65 % d’humidité relative pour les conditions de référence du constructeur |
Les quatre broches du module
La sérigraphie de la carte donne l’ordre des broches, et c’est elle seule qui fait foi :
VCC | L’alimentation positive, en 5 V. C’est aussi l’alimentation du chauffage du capteur. |
|---|---|
GND | La masse, référence commune du montage. |
DO | La sortie numérique du comparateur. Elle change d’état quand la concentration franchit le seuil réglé par le potentiomètre. |
AO | La sortie analogique, à relier à une entrée analogique du microcontrôleur. |
Comment le module fabrique sa mesure
Le capteur est chauffé en permanence : sa surface, portée à température, réagit avec l’oxygène de l’air et acquiert une résistance élevée. Quand des vapeurs combustibles ou des fumées arrivent à son contact, cette résistance chute — d’autant plus que la concentration est forte. Le module transforme cette résistance en tension, et c’est cette tension qui est exploitée deux fois.
La sortie analogique AO
Elle donne à lire en continu le niveau détecté, sur une échelle de 0 à 1023 avec un convertisseur 10 bits d’Arduino. Cette valeur n’est pas une concentration en ppm : le constructeur publie une courbe qui met en relation cette réponse avec une concentration, mais elle vaut dans des conditions de référence précises, à une température et une humidité données. Dans la pratique, on s’en sert comme d’un repère : la valeur au repos dans l’air propre, puis celle obtenue près d’une source, et le seuil se place entre les deux.
La sortie numérique DO et le réglage du seuil
Le comparateur LM393 compare en permanence la tension du capteur à une référence fixée par le potentiomètre. Dès que le seuil est franchi, la sortie numérique bascule et la LED de sortie s’allume. Le réglage se fait en trente secondes : approchez la source de gaz à la distance où vous voulez que l’alarme parte, puis tournez lentement le potentiomètre jusqu’à l’instant où la LED s’allume. Sur plusieurs cartes, DO passe au niveau bas quand le seuil est franchi ; c’est la LED, allumée dans tous les cas, qui reste le repère fiable.
Le choisir dans la famille MQ
La série MQ partage le même format de carte et le même brochage, mais chaque référence vise des gaz différents : le choix dépend du gaz à surveiller.
| MQ-2 | Gaz combustibles et fumées — GPL, propane, butane, méthane, hydrogène. C’est le modèle polyvalent, celui de cette page. |
|---|---|
| MQ-4 | Gaz naturel et méthane, avec une meilleure sélectivité sur le gaz de ville. |
| MQ-3 | Vapeurs d’alcool, retenu pour l’éthylométrie et le contrôle d’alcool dans l’air expiré. |
| MQ-7 | Monoxyde de carbone. C’est le seul de la famille à ne pas viser un gaz combustible mais un gaz toxique, et il se reconnaît à son cycle de chauffage alterné. |
Si l’objectif est la sécurité des personnes dans un logement — le monoxyde de carbone ou un détecteur de fumée —, aucun module de cette famille ne remplace un appareil homologué.
Mini-projet : une alarme de gaz avec buzzer
Un montage complet en une quinzaine de minutes : le module surveille l’air, l’Arduino affiche en continu le niveau et l’état du comparateur, et un buzzer se fait entendre dès que le seuil du programme ou celui du potentiomètre est franchi.
Ce qu’il faut
| La détection | Le module MQ-2 — celui de cette page |
|---|---|
| Le cerveau | Une carte Arduino Uno R3 et son câble USB |
| Le son | Un buzzer actif de 5 V |
| Le support | Une plaque d’essai et des fils de prototypage : le module demande 5 V, deux signaux et une masse |
Le câblage
Module VCC | → Arduino 5V |
|---|---|
Module GND | → Arduino GND |
Module AO | → Arduino A0 |
Module DO | → Arduino D2 |
| Buzzer, fil rouge | → Arduino D8 |
| Buzzer, fil noir | → Arduino GND |
Le programme
À copier dans l’IDE Arduino, puis à téléverser sur la carte :
/*
* Alarme de gaz et de fumee - module capteur MQ-2
* Carte : Arduino Uno R3
* Montage : module MQ-2 (AO et DO) et un buzzer actif
*
* Composants, brochage et fiche complete : www.marocproduits.com
*/
const byte PIN_DO = 2; // sortie numerique du module
const byte PIN_BUZZER = 8; // buzzer actif
const byte PIN_AO = A0; // sortie analogique du module
int seuil = 400; // a ajuster apres lecture du moniteur serie
void setup() {
pinMode(PIN_DO, INPUT);
pinMode(PIN_BUZZER, OUTPUT);
Serial.begin(9600);
Serial.println("Surveillance de l'air en cours.");
Serial.println("Laissez le module chauffer quelques minutes a l'air libre,");
Serial.println("relevez la valeur affichee, puis placez le seuil juste au-dessus.");
}
void loop() {
int niveau = analogRead(PIN_AO); // 0 a 1023
int etatDO = digitalRead(PIN_DO); // etat du comparateur du module
Serial.print("niveau = ");
Serial.print(niveau);
Serial.print(" sortie numerique = ");
Serial.println(etatDO);
// Alarme si le seuil du programme OU celui du potentiometre est franchi.
if (niveau >= seuil || etatDO == LOW) {
digitalWrite(PIN_BUZZER, HIGH);
} else {
digitalWrite(PIN_BUZZER, LOW);
}
delay(500);
}Comment ça marche
analogRead(PIN_AO)relit la tension de la sortie analogique, entre 0 et 1023. Plus la valeur monte, plus il y a de vapeurs dans l’air.digitalRead(PIN_DO)constate la décision du comparateur : le module a déjà tranché selon son potentiomètre, le programme ne fait que la lire.- Les deux conditions sont mises côte à côte : le seuil du programme est modifiable depuis le code, celui du potentiomètre se règle au tournevis sans retéléverser. L’un ou l’autre suffit à déclencher.
- Le buzzer est un modèle actif : il contient son propre oscillateur, un simple niveau haut le fait sonner. Avec un buzzer passif, il faudrait employer
tone()en précisant la fréquence. - La pause de 500 ms laisse le capteur respirer et garde le moniteur série lisible.
Régler le seuil
Laissez le module chauffer à l’air libre, puis relevez la valeur affichée par le moniteur série : c’est votre repère de repos. Placez le seuil du programme quelques centaines de points au-dessus, approchez ensuite une source de gaz — un briquet non allumé suffit — et vérifiez que le niveau monte franchement. Si vous préférez le potentiomètre, tournez-le jusqu’à l’instant où la LED de sortie s’allume, puis relâchez.
Variante : couper plutôt que biper
Pour agir sur une vanne, une ventilation ou une alarme extérieure, la sortie numérique du module pilote l’entrée d’un module 1 relais 5 V : le contact du relais ouvre ou ferme la ligne à commander, en isolant complètement le circuit de puissance du circuit de commande. Comme pour tout montage en 230 V, coupez le disjoncteur avant d’intervenir, ne travaillez jamais sous tension et enfermez les bornes dans un boîtier isolant.
Points d’attention
- Ce module n’est pas un appareil de sécurité. Il ne porte aucune homologation et ne remplace ni un détecteur de gaz normalisé ni un détecteur de fumée certifié. Pour la protection des personnes, l’appareil homologué reste indispensable ; le module sert à expérimenter et à automatiser.
- Il détecte, il ne dose pas. La sortie analogique est un niveau relatif, dérivé de la température et de l’humidité ambiantes. Aucun résultat en ppm ne peut être annoncé sans étalonnage au gaz de référence, ce qu’un montage amateur ne peut pas faire de façon fiable.
- Le préchauffage n’est pas une précaution de confort. Un capteur à peine mis sous tension affiche une valeur qui continue de dériver pendant des heures. Pour une mesure sérieuse, le constructeur parle de plusieurs dizaines d’heures de chauffe ; pour un simple essai, laissez au moins quelques minutes et refaites le réglage à froid.
- Tous les gaz combustibles se ressemblent pour lui. Alcool, fumée de cigarette, aérosols, vapeurs de solvant et gaz d’un briquet produisent la même réaction. Il ne distingue pas la source : c’est à vous de placer le capteur là où une fausse alerte est improbable.
- L’échauffement fait partie du fonctionnement. Le capteur chauffe réellement, et sa consommation est celle d’un petit appareil. Ne l’enfermez pas dans un boîtier clos, ne le collez pas à un plastique sensible à la chaleur et prévoyez une alimentation capable de fournir ce courant en plus du reste du montage.
- Un module chaud attire l’attention des enfants et des animaux. Pour un montage définitif, fixez la carte à l’abri des mains et des museaux, et éloignez-la de tout textile.
Questions fréquentes
Peut-on connaître la concentration exacte en gaz ?
Pas de façon exploitable avec ce seul module. La réponse du capteur dépend de la température, de l’humidité, de l’âge du capteur et du gaz présent, et le constructeur ne garantit une correspondance qu’en conditions de référence. Pour un usage sérieux, le capteur s’étalonne avec un gaz de concentration connue, ce qui suppose un équipement de laboratoire.
Pourquoi la valeur affichée descend-elle lentement le premier jour ?
Parce que le capteur est en cours de préchauffage et que sa résistance de repos n’est pas encore stabilisée. C’est le comportement normal d’un capteur à oxyde d’étain, et non un défaut de la carte. Le réglage du seuil devient fiable quand la valeur de repos cesse de dériver.
Fonctionne-t-il en 3,3 V ?
Non, pas correctement. Le chauffage est prévu pour 5 V, et une alimentation en 3,3 V le fait chauffer insuffisamment : les mesures deviennent erratiques et la sortie analogique plafonne. Sur une carte en 3,3 V, alimentez le module en 5 V et adaptez le niveau du signal si votre microcontrôleur n’accepte pas cette tension en entrée.
Est-il sensible au monoxyde de carbone ?
Il y réagit, comme à la plupart des gaz réducteurs, mais il n’est pas conçu pour cela et ne donne aucune garantie sur ce gaz. Le monoxyde de carbone est un gaz sans odeur qui tue, et sa surveillance relève d’un appareil homologué ou d’un capteur dédié au monoxyde, pas d’un module généraliste.
Combien de temps faut-il pour que l’alarme se déclenche ?
Le capteur réagit en quelques secondes à une forte concentration et en quelques dizaines de secondes à une faible concentration. Ce délai dépend de l’air ambiant et de la distance à la fuite, et aucune temporisation interne ne le raccourcit : c’est la ventilation du local autour du capteur qui fait la différence.
Comment savoir si le module fonctionne ?
La LED de mise sous tension s’allume dès l’alimentation, et la valeur analogique doit évoluer quand vous approchez un briquet non allumé ou un chiffon imbibé d’alcool. Si rien ne bouge, vérifiez d’abord l’ordre des broches sur la sérigraphie, puis l’alimentation en 5 V, puis laissez le capteur chauffer plus longtemps : un module froid se comporte comme un module muet.
À combiner avec
Le module se câble directement sur une carte à entrée analogique. Pour démarrer, une carte Arduino Uno R3 avec son câble USB suffit, posée sur une plaque d’essai de 400 points et reliée avec un jeu de câbles Dupont — quatre fils pour le module, deux pour l’alarme.
Pour l’alarme elle-même, un buzzer actif se met à sonner dès sa mise sous tension, sans réglage de fréquence. Si le montage doit agir sur une ventilation ou une vanne au lieu de biper, la variante ci-dessus avec un module relais est la suite naturelle du projet.






