Arduino Mega - Capteur d'alcool MQ3
Ce guide vous accompagne dans l'intégration du capteur d'alcool MQ3 avec l'Arduino Mega pour détecter et mesurer la vapeur d'alcool et la concentration d'éthanol. Le capteur MQ3 est couramment déployé dans les projets d'analyseur d'haleine, les systèmes d'alarme d'alcool et les applications d'évaluation de la qualité de l'air.
Dans ce tutoriel, vous apprendrez :
- Comment connecter le module capteur d'alcool MQ3 à l'Arduino Mega
- Comment programmer l'Arduino Mega pour lire et évaluer les niveaux de vapeur d'alcool

Matériel requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (30 capteurs/écrans) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du capteur d'alcool MQ3
Le MQ3 fonctionne comme un Chémirésisteur à semi-conducteur d'oxyde métallique (MOS), identifiant l'alcool en mesurant les variations de résistance dans son matériau sensible. Conçu pour la détection de vapeur d'éthanol, ce capteur offre des performances fiables sur différents niveaux de concentration.
L'élément de détection du capteur est constitué de matériau de dioxyde d'étain (SnO2) stratifié sur un substrat céramique fait d'oxyde d'aluminium. Lorsqu'il est chauffé, la couche SnO2 devient chimiquement réactive aux molécules d'alcool dans l'air ambiant. Un maillage protecteur en acier inoxydable protège les composants internes tout en permettant aux molécules de gaz d'atteindre la chambre de détection.
Les applications courantes incluent les dispositifs d'éthylotest DIY, les systèmes de détection d'alcoolémie, les alarmes de vapeur d'alcool et la surveillance des niveaux d'alcool atmosphérique.
Spécifications techniques
- Tension d'alimentation : 5V DC
- Résistance de charge : 200 KΩ
- Résistance du chauffage : 33Ω ± 5%
- Consommation de chauffage : < 800mW
- Résistance de détection : 1 MΩ – 8 MΩ
- Plage de détection : 25 – 500 ppm (parties par million)
- Temps de préchauffage : 24-48 heures pour la première utilisation
Qu'est-ce que le ppm ? Les parties par million (ppm) décrivent la proportion de molécules de gaz cible par rapport au total des molécules de gaz. Par exemple, 500 ppm signifie qu'il y a 500 molécules d'alcool dans chaque 1 000 000 molécules de gaz, tandis que les 999 500 autres molécules sont des composants de l'air ambiant.
Brochage
Le module capteur MQ3 dispose de quatre connexions de broches :
- Broche VCC : Connecter à l'alimentation +5V.
- Broche GND : Connecter à la masse (0V).
- Broche DO : La sortie numérique passe à LOW lorsque l'alcool dépasse le seuil, HIGH lorsqu'elle est en dessous du seuil. Ajustez le seuil en utilisant le potentiomètre intégré.
- Broche AO : La sortie analogique fournit une tension proportionnelle à la concentration d'alcool. Des niveaux d'alcool plus élevés produisent des tensions plus élevées.

Un retour visuel est fourni par deux LED intégrées :
- PWR-LED : S'allume lorsque le module reçoit de l'alimentation.
- DO-LED : Reflète l'état de la sortie numérique—s'illumine lors de la détection d'alcool, reste éteinte sinon.
Comment ça fonctionne
Le MQ3 fonctionne grâce aux changements de résistance dans son matériau semi-conducteur de dioxyde d'étain (SnO2) :
Dans l'air propre : La surface SnO2 chauffée attire les molécules d'oxygène atmosphérique, qui piègent les électrons et forment une couche d'appauvrissement. Ce piégeage d'électrons crée une barrière de conduction, maintenant une résistance électrique élevée.
Lorsqu'exposé à l'alcool : Les molécules d'alcool réagissent avec l'oxygène de surface, libérant les électrons piégés dans le réseau de dioxyde d'étain. Cette libération d'électrons augmente considérablement la conductivité—des concentrations d'alcool plus élevées résultent en des valeurs de résistance plus faibles.
Le capteur fournit deux modes de sortie distincts :
Sortie numérique (broche DO) :
- Le niveau de seuil est ajustable via le potentiomètre de réglage intégré.
- La détection au-dessus du seuil fait passer DO à LOW et allume la LED indicatrice.
- Les lectures en dessous du seuil maintiennent DO à HIGH avec la LED éteinte.
Sortie analogique (broche AO) :
- La tension de sortie change proportionnellement avec la concentration d'alcool.
- Vapeur d'alcool plus élevée = tension de sortie augmentée.
- Vapeur d'alcool plus faible = tension de sortie diminuée.
- Note : Le potentiomètre de réglage affecte seulement le seuil numérique, pas le signal analogique.
Préchauffage et calibration
Exigences de préchauffage
Pour un fonctionnement précis, le capteur MQ3 nécessite un chauffage adéquat :
- Première utilisation ou après un long stockage (30+ jours) : Faites fonctionner le chauffage en continu pendant 24-48 heures pour stabiliser le capteur et obtenir des lectures cohérentes.
- Fonctionnement de routine : Une période de préchauffage rapide de 5-10 minutes est suffisante. Les premières lectures peuvent montrer des valeurs élevées mais se stabiliseront à la normale en quelques minutes.
Préchauffez le capteur en connectant ses broches VCC et GND à 5V et à la masse respectivement—soit par une alimentation soit directement depuis les broches d'alimentation de votre Arduino Mega.
Trouver vos valeurs seuils
Les capteurs de gaz basés sur chauffage comme le MQ3 peuvent dériver après des périodes de stockage. Pour les implémentations d'éthylotest, déterminez les valeurs seuils appropriées grâce à ce processus de calibration :
- Enregistrez la ligne de base dans l'air propre : Faites fonctionner le capteur dans l'air frais sans alcool présent. Notez la lecture analogique (généralement 100-150).
- Testez avec de la vapeur d'alcool : Amenez de l'alcool isopropylique ou du désinfectant pour les mains près du capteur (ne pas faire de contact), permettant à la vapeur d'atteindre le détecteur. Enregistrez les valeurs élevées (habituellement 400-900 selon la force de la vapeur).
- Définissez les plages de détection : Basé sur vos mesures, créez des zones seuils :
- État sobre : Valeurs sous ligne de base + 20 (par exemple : < 120)
- Niveau modéré : Valeurs dans la plage moyenne (par exemple : 120-400)
- Niveau élevé : Valeurs au-dessus de la limite modérée (par exemple : > 400)
Note : Chaque unité de capteur et environnement d'exploitation produit des valeurs différentes. Calibrez avec votre matériel réel avant d'utiliser dans toute application.
Réglage du seuil numérique
Ajustez le point de déclenchement de la broche DO en utilisant le potentiomètre du module :
- Exposez le capteur à la vapeur d'alcool.
- Tournez le potentiomètre dans le sens horaire jusqu'à ce que la LED s'allume.
- Tournez lentement dans le sens antihoraire jusqu'à ce que la LED s'éteigne juste.
- Votre seuil numérique est maintenant calibré.
Schéma de câblage
Le module MQ3 fournit des sorties numériques et analogiques. Utilisez soit une sortie individuellement soit les deux ensemble selon les besoins de votre projet.
| Capteur d'alcool MQ3 | Arduino Mega |
|---|---|
| VCC | 5V |
| GND | GND |
| DO | 19 |
| AO | A0 |

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Code Arduino Mega - Lecture de sortie numérique
Étapes rapides
- Copiez le code dans Arduino IDE
- Cliquez sur le bouton Upload pour transférer le code vers l'Arduino Mega
- Placez une source de vapeur d'alcool près du capteur (utilisez du désinfectant pour les mains ou de l'alcool à friction sur un coton-tige)
- Vérifiez le moniteur série pour les résultats
Conseil : Si les résultats de détection ne correspondent pas à la réalité (faux déclenchements ou détections manquées), ajustez le potentiomètre sur le module. Tournez dans le sens horaire pour augmenter la sensibilité ou dans le sens antihoraire pour la diminuer jusqu'à ce que la détection devienne précise.
Code Arduino Mega - Lecture de sortie analogique
Étapes rapides
- Collez le code dans Arduino IDE
- Cliquez sur le bouton Upload pour programmer l'Arduino Mega
- Exposez le capteur à la vapeur d'alcool (vapeurs de désinfectant pour les mains ou d'alcool isopropylique)
- Surveillez les valeurs changeantes dans le moniteur série
Avec les sorties numériques et analogiques disponibles, vous pouvez implémenter une logique basée sur des seuils pour déclencher des alarmes, activer des indicateurs visuels ou enregistrer des données pour des applications d'éthylotest.
Code Arduino Mega - Éthylotest avec détection de seuil
Cet exemple montre comment interpréter les lectures analogiques en utilisant des seuils calibrés pour estimer les niveaux de consommation d'alcool.
Étapes rapides
- Important : Calibrez d'abord votre capteur en utilisant l'exemple de lecture analogique pour déterminer les valeurs seuils appropriées pour votre capteur spécifique.
- Modifiez les constantes SOBER_THRESHOLD et DRUNK_THRESHOLD dans le code avec vos valeurs calibrées.
- Téléchargez le code mis à jour vers l'Arduino Mega
- Testez en introduisant de la vapeur d'alcool (vapeur d'alcool isopropylique ou de désinfectant pour les mains)
- Observez les mises à jour de statut dans le moniteur série
Avertissement : Ceci est un projet éducatif uniquement. N'utilisez pas cet appareil comme éthylotest officiel ou pour déterminer la sécurité de conduite.