⚠️ AVERTISSEMENT LÉGAL ET DE SÉCURITÉ IMPÉRATIF
- Usage Strictement Éducatif : Ce montage est un projet pédagogique pour comprendre les capteurs de gaz. Il est imprécis et ne doit JAMAIS être utilisé pour déterminer l'aptitude à conduire.
- Limites du MQ-3 : Ce capteur est sensible à l'humidité, à l'acétone (présente dans l'haleine des diabétiques ou après un régime), et à d'autres COV (Composés Organiques Volatils). Il ne remplace pas un éthylomètre certifié à cellule électrochimique.
- La Règle d'Or : Boire ou Conduire, il faut choisir. En cas de doute, ne prenez pas le volant ou utilisez un éthylomètre homologué.
Bienvenue sur TechFix Hub ! La détection de l'alcool dans l'haleine est un classique de l'électronique DIY. Aujourd'hui, nous revisitons ce projet en le modernisant. Nous allons combiner la simplicité visuelle du circuit intégré LM3914 (pour une version analogique autonome) avec la puissance de traitement d'un ESP32 (pour une version connectée et calibrée).
Au-delà du simple montage, ce guide vous apprendra la chimie du capteur MQ-3, les pièges de la calibration, et comment filtrer les lectures bruitées pour obtenir un résultat exploitable. Préparez votre fer à souder !
🔬 1. Le Principe Physico-Chimique du MQ-3
Le capteur MQ-3 n'est pas un simple interrupteur. C'est un dispositif complexe qui repose sur le dioxyde d'étain (SnO₂). Voici comment il fonctionne :
- La Bobine de Chauffage : Le capteur contient une résistance chauffante interne qui doit monter à environ 300°C pour que le SnO₂ devienne sensible. C'est pourquoi le MQ-3 consomme environ 150-200 mA en permanence. Une alimentation faible (comme un port USB d'ordinateur non alimenté) fera échouer le projet.
- La Détection : En présence de vapeur d'éthanol, l'oxygène adsorbé à la surface du SnO₂ réagit, libérant des électrons. Cela diminue la résistance du capteur.
- Le Pont Diviseur : Le capteur est monté en série avec une résistance de charge (R_L). La tension de sortie (AOUT) augmente lorsque la résistance du capteur diminue (c'est-à-dire quand il y a de l'alcool).
🛠️ 2. Liste des Composants (BOM)
⚡ 3. Schéma Électronique et Câblage
Figure 1 : Le signal analogique du MQ-3 (après le pont diviseur) est envoyé à l'entrée du LM3914. Les LEDs s'allument séquentiellement selon la tension.
Points Clés du Câblage :
- LM3914 Pin 5 (Signal Input) : Connectez ici la sortie AOUT du module MQ-3.
- LM3914 Pin 9 (Mode) : Reliez au V+ (5V) pour le mode "Barre" (les LEDs s'accumulent). Reliez au GND pour le mode "Point" (une seule LED s'allume à la fois).
- Résistances de Référence (Pin 6 & 7) : Elles définissent la plage de tension (généralement 0V à 5V pour un MQ-3 alimenté en 5V).
🎯 4. La Calibration : L'Étape la Plus Critique
Un MQ-3 non calibré est inutile. Sa résistance de base varie d'un capteur à l'autre et avec l'humidité ambiante. Voici la procédure rigoureuse :
- Préchauffage (Burn-in) : Allumez le circuit dans un environnement à l'air libre (sans alcool). Laissez chauffer le capteur pendant au moins 3 à 5 minutes. La résistance interne doit se stabiliser.
- Réglage du "Zéro" (Air pur) : Tournez le potentiomètre du module MQ-3 (ou le VR1 du circuit) jusqu'à ce que la tension de sortie (AOUT) soit à son minimum (généralement autour de 0,5V à 1V). Sur le LM3914, seule la première LED verte doit être éteinte ou faiblement allumée.
- Test de Réponse : Approchez une source d'alcool (désinfectant pour les mains, sans toucher le capteur). Les LEDs doivent monter rapidement. Retirez la source : les LEDs doivent redescendre lentement (le capteur met du temps à "nettoyer" sa surface).
🚀 5. L'Upgrade "TechFix Hub" : Version Numérique ESP32 avec Filtrage
Le LM3914 est génial, mais il ne donne qu'une indication relative. Pour une analyse plus poussée, remplaçons-le par un ESP32. Le code ci-dessous intègre un filtre de moyenne mobile pour lisser les lectures bruitées du capteur, et une conversion en tension réelle.
// Code TechFix Hub - Éthylomètre MQ-3 avec Filtrage (ESP32/Arduino)
const int mq3Pin = 34; // GPIO 34 pour ESP32 (A0 pour Arduino Uno)
const int numReadings = 20; // Taille du filtre de moyenne mobile
int readings[numReadings];
int readIndex = 0;
int total = 0;
int average = 0;
void setup() {
Serial.begin(115200);
Serial.println("🛑 TechFix Hub Breathalyzer Init...");
Serial.println("⏳ Préchauffage du capteur MQ-3 en cours (60s)...");
// Initialiser le tableau de lecture à 0
for (int i = 0; i < numReadings; i++) {
readings[i] = 0;
}
delay(60000); // Attendre 1 minute pour la stabilisation thermique
Serial.println("✅ Capteur prêt. Soufflez doucement dans l'embouchure.");
}
void loop() {
// 1. Soustraire la lecture précédente du total
total = total - readings[readIndex];
// 2. Lire la nouvelle valeur et l'ajouter au total
// Note: ESP32 a une résolution de 12 bits (0-4095), Arduino 10 bits (0-1023)
readings[readIndex] = analogRead(mq3Pin);
total = total + readings[readIndex];
// 3. Avancer à la position suivante
readIndex = readIndex + 1;
if (readIndex >= numReadings) {
readIndex = 0;
}
// 4. Calculer la moyenne
average = total / numReadings;
// 5. Conversion en tension (Adapter 3.3 ou 5.0 selon votre microcontrôleur)
float voltage = average * (3.3 / 4095.0); // Pour ESP32
Serial.print("Valeur brute moyenne: ");
Serial.print(average);
Serial.print(" | Tension: ");
Serial.print(voltage, 2);
Serial.println(" V");
// Seuil d'alerte (À CALIBRER IMPÉRATIVEMENT avec votre propre capteur à l'air libre)
// Exemple: si la valeur de base à l'air libre est de 800, on alerte à 1200
if (average > 1200) {
Serial.println("⚠️ ATTENTION : Concentration élevée détectée ! Ne pas conduire.");
// Ici, vous pourriez ajouter un buzzer ou une alerte Bluetooth
}
delay(200); // Petit délai pour la stabilité
}
💡 Astuce de Pro : Le MQ-3 met du temps à récupérer après une forte exposition. Attendez toujours que la valeur de base revienne à la normale avant de faire un nouveau test.
🔗 Pour Aller Plus Loin sur TechFix Hub
Maîtrisez les capteurs et l'électronique avec nos guides complémentaires :
✅ Conclusion
Construire un éthylomètre DIY est un projet fascinant qui enseigne les bases de la chimie des capteurs, des ponts diviseurs de tension et du traitement du signal. Cependant, gardez toujours à l'esprit ses limites intrinsèques : sensibilité à l'humidité, dérive thermique et manque de spécificité à l'éthanol pur. Utilisez ce projet pour apprendre, expérimenter et sensibiliser, mais laissez la sécurité routière aux appareils certifiés. L'électronique est un outil formidable, mais la responsabilité reste humaine.
🛠️ Vous rencontrez des problèmes de calibration avec votre MQ-3 ?
Vos lectures sont instables ou le capteur ne semble pas réagir ? Décrivez votre configuration (alimentation, module ou capteur brut) dans les commentaires ci-dessous, la communauté TechFix Hub vous aidera à diagnostiquer le problème !