ESP32 - Capteur d'Alcool MQ3 (MicroPython)
Ce tutoriel vous guide à travers l'interfaçage du capteur d'alcool MQ3 avec un ESP32 en utilisant la programmation MicroPython pour détecter et mesurer les concentrations d'éthanol et de vapeur d'alcool. En détail, nous allons apprendre :
- Comment connecter le capteur d'alcool MQ3 à l'ESP32
- Comment écrire du code MicroPython pour ESP32 pour lire les données du capteur d'alcool MQ3

Matériel Requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 (ESP32 inclus) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À Propos du Capteur d'Alcool MQ3
Le capteur d'alcool MQ3 est conçu pour détecter l'éthanol et les vapeurs d'alcool dans l'air ambiant. Il utilise la technologie des semi-conducteurs à oxyde métallique (MOS), où un élément sensible en dioxyde d'étain (SnO2) change de résistance lorsqu'il est exposé à des molécules d'alcool. Le capteur dispose d'une broche de sortie numérique et d'une broche de sortie analogique pour transmettre les signaux.
Le capteur MQ3 est couramment utilisé dans les éthylomètres, les systèmes de détection d'alcool, les équipements de détection de conduite en état d'ivresse et la surveillance des vapeurs d'alcool dans l'environnement.
Brochage
Le module capteur d'alcool MQ3 possède quatre broches :
- Broche VCC : Connectez cette broche à VCC (5V).
- Broche GND : Connectez cette broche à GND (0V).
- Broche DO : C'est la broche de sortie numérique. Elle passe à LOW quand des vapeurs d'alcool sont détectées et à HIGH quand aucun alcool n'est présent. Vous pouvez ajuster le seuil de détection en utilisant le potentiomètre embarqué.
- Broche AO : C'est la broche de sortie analogique, qui génère une tension variant selon la concentration d'alcool. Des niveaux d'alcool plus élevés augmentent la tension, tandis que des niveaux plus bas la diminuent.

Le capteur possède également deux indicateurs LED :
- LED PWR : Indique que le capteur est alimenté.
- LED DO : S'allume quand l'alcool est détecté selon la valeur de la broche DO, et s'éteint quand aucun alcool n'est détecté.
Comment Ça Fonctionne
Concernant la broche DO :
- Le module possède un potentiomètre pour ajuster sa sensibilité aux niveaux d'alcool.
- Quand le niveau d'alcool dépasse le seuil défini, la broche de sortie du capteur passe à LOW, et la LED DO s'allume.
- Quand le niveau d'alcool est en dessous du seuil défini, la broche de sortie du capteur passe à HIGH, et la LED DO s'éteint.
Pour la broche AO :
- Quand la concentration d'alcool augmente, la tension augmente.
- Quand la concentration d'alcool diminue, la tension diminue.
Le potentiomètre n'affecte pas la valeur sur la broche AO.
Préchauffage du Capteur MQ3
Le capteur d'alcool MQ3 nécessite une période de préchauffage avant utilisation. Si le capteur n'a pas été utilisé depuis plus d'un mois, laissez-le se préchauffer pendant 24-48 heures pour assurer des lectures précises. S'il a été utilisé récemment, un préchauffage de 5 à 10 minutes est suffisant. Initialement, les lectures peuvent être élevées, mais elles se stabiliseront avec le temps.
Pour préchauffer le capteur MQ3, connectez ses broches VCC et GND à une source d'alimentation ou aux broches VCC et GND d'un ESP32, et laissez-le connecté pendant la durée requise.
Schéma de Câblage
Comme le module capteur d'alcool MQ3 possède deux sorties, vous pouvez choisir d'en utiliser une ou les deux, selon vos besoins.
- Comment connecter l'ESP32 et le capteur d'alcool MQ3 avec une breadboard (alimenté via câble USB)

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
- Comment connecter l'ESP32 et le capteur d'alcool MQ3 avec une breadboard (alimenté via broche Vin)

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
- Comment connecter l'ESP32 et le capteur d'alcool MQ3 avec un bloc de connexion à vis (alimenté via câble USB)

- Comment connecter l'ESP32 et le capteur d'alcool MQ3 avec un bloc de connexion à vis (alimenté via broche Vin)

| Capteur d'Alcool MQ3 | ESP32 |
|---|---|
| VCC | 3.3V |
| GND | GND |
| DO | GPIO 16 |
| AO | GPIO 36 (ADC0) |
Code ESP32 MicroPython - Lire la valeur de la broche DO
Étapes Rapides
Voici les instructions pour configurer et exécuter votre code MicroPython sur l'ESP32 avec Thonny IDE :
- Assurez-vous que Thonny IDE est installé sur votre ordinateur.
- Confirmez que le firmware MicroPython est chargé sur votre carte ESP32.
- Si c'est la première fois que vous utilisez un ESP32 avec MicroPython, consultez le guide ESP32 - Premiers pas. pour des instructions étape par étape.
- Connectez la carte ESP32 au capteur d'alcool MQ3 selon le schéma fourni.
- Connectez la carte ESP32 à votre ordinateur avec un câble USB.
- Ouvrez Thonny IDE sur votre ordinateur.
- Dans Thonny IDE, allez dans Outils Options.
- Dans l'onglet Interpréteur, choisissez MicroPython (ESP32) dans le menu déroulant.
- Assurez-vous que le bon port est sélectionné. Thonny IDE le détecte généralement automatiquement, mais vous devrez peut-être le sélectionner manuellement (comme COM12 sur Windows ou /dev/ttyACM0 sur Linux).
- Copiez le code MicroPython fourni et collez-le dans l'éditeur de Thonny.
- Sauvegardez le code sur votre ESP32 en :
- Cliquant sur le bouton Enregistrer ou en appuyant sur Ctrl+S.
- Dans la boîte de dialogue d'enregistrement, choisissez Appareil MicroPython.
- Nommez le fichier main.py.
- Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script.
- Placez une source de vapeur d'alcool près du capteur MQ3 (du gel hydroalcoolique ou de l'alcool isopropylique sur du coton fonctionne bien).
- Consultez le message dans le Shell en bas de Thonny.
Si la LED reste allumée en permanence ou ne s'allume pas, vous pouvez ajuster la sensibilité du capteur en tournant le potentiomètre embarqué.
Code ESP32 MicroPython - Lire la valeur de la broche AO
Étapes Rapides
- Copiez le code MicroPython fourni et collez-le dans l'éditeur de Thonny.
- Sauvegardez le code sur votre carte ESP32.
- Cliquez sur le bouton vert Exécuter (ou appuyez sur F5) pour exécuter le script.
- Introduisez des vapeurs d'alcool au capteur (gel hydroalcoolique ou alcool isopropylique).
- Consultez le message dans le Shell en bas de Thonny.
Vous pouvez utiliser les valeurs de DO ou AO pour détecter la présence d'alcool, déclencher une alarme ou journaliser des données pour des applications d'éthylomètre.
※ Note:
Ce tutoriel montre comment utiliser la fonction adc.read() pour lire les valeurs d'un ADC connecté à un capteur d'alcool. L'ADC de l'ESP32 convient aux projets ne nécessitant pas une haute précision. Cependant, si votre projet nécessite des mesures précises, tenez compte des points suivants :
- L'ADC de l'ESP32 n'est pas parfaitement précis et peut nécessiter une calibration pour des résultats précis. Chaque carte ESP32 peut varier légèrement, donc la calibration est nécessaire pour chaque carte individuelle.
- La calibration peut être difficile, surtout pour les débutants, et peut ne pas toujours donner les résultats exacts souhaités.
Pour les projets nécessitant une haute précision, envisagez d'utiliser un ADC externe (par ex. ADS1115) avec l'ESP32 ou optez pour un Arduino, qui possède un ADC plus fiable. Si vous souhaitez quand même calibrer l'ADC de l'ESP32, référez-vous au Driver de Calibration ADC ESP32.