Ethylomètre Arduino MQ-3

Le capteur MQ-3 Arduino peut détecter la concentration de vapeur d’alcool dans l’air. Sur la base du module MQ-3 et d’afficher LCD 16×2, il est possible de créer un éthylotest (l’éthylotest est le nom d’un appareil permettant de déterminer la concentration d’alcool dans le sang par l’air expiré). Le capteur de vapeur d’alcool MQ-3 est assez facile à connecter à un microcontrôleur et il est également facile d’écrire un programme pour la carte Arduino.


Ce dont vous aurez besoin

  • Arduino Uno / Arduino Nano / Arduino Mega
  • capteur d’alcool MQ-3
  • LEDs et resistances
  • afficheur LCD 1602 i2c
  • fils de connexion
  • librairie LiquidCrystal_I2C.h

Matériel supplémentaire sur ce sujet:

  1. Minuterie de compte à rebours Arduino
  2. Station Météo avec DHT11 et LCD 1602
  3. Arduino Horloge avec LCD 1602 sans RTC

Utiliser le capteur d’alcool MQ-3 Arduino

Le capteur MQ-3 est un dispositif semi-conducteur peu coûteux permettant de mesurer la présence de vapeur d’alcool dans l’air à des concentrations comprises entre 0,05 mg/L et 10 mg/L. L’alcootest basé sur l’élément sensible SnO2 utilise une réaction chimique pour déterminer le taux d’alcool. Ce capteur a une faible conductivité dans l’air pur, qui augmente linéairement avec la concentration de vapeur d’alcool dans l’air humain expiré.

Module du capteur d'alcool MQ-3 Arduino
Module du capteur d’alcool MQ-3 Arduino

Caractéristiques MQ3 sensor

  • Alimentation: 5 Vcc
  • Sortie analogique
  • Dimensions: 37 x 27 x 13 mm

Le MQ-3 est très sensible et protégé contre les interférences telles que la fumée et les vapeurs d’hydrocarbures. Le capteur analogique dispose de 4 sorties: VCC alimentation et Gnd masse, ainsi qu’une sortie numérique et analogique. Pour des mesures précises, il est nécessaire d’atteindre la température de fonctionnement avec le chauffage intégré (environ 40 degrés) en laissant le module d’alcool Arduino MQ-3 allumé pendant 10 minutes.

Construire ethylomètre avec MQ-3 Arduino

Comment construire alcootest sur Arduino Uno
Comment construire alcootest sur Arduino Uno et LEDs

Pour la première option, nous utiliserons des LED Arduino pour indiquer le niveau de vapeur d’alcool dans l’air. Lorsque la valeur admissible est dépassée, la LED orange ou rouge s’allume. Notez que le capteur est analogique, il doit donc être calibré. L’utilisation d’un éthylotest numérique permet d’obtenir des informations sur la concentration de vapeur d’alcool en fractions par million (ppm) ainsi qu’en milligrammes par litre (mG/L).

Programme Arduino pour éthylotest MQ-3 et LEDs

int mq3;

void setup() {
   pinMode(A1, INPUT);
   analogWrite(A1, LOW);

   pinMode(10, OUTPUT);
   pinMode(11, OUTPUT);
   pinMode(12, OUTPUT);

   Serial.begin(9600);
   LCD.init();
   LCD.backlight();
 }

void loop() {
   mq3 = analogRead(A1);

   Serial.print("Alcohol: ");
   Serial.println(mq3);

   if (mq3 < 100) {
      digitalWrite(10, HIGH);
      digitalWrite(11, LOW);
      digitalWrite(12, LOW);
   }
 
   if (100 > mq3 < 200) {
      digitalWrite(10, LOW);
      digitalWrite(11, HIGH);
      digitalWrite(12, LOW);
   }
 
   if (mq3 > 200) {
      digitalWrite(10, LOW);
      digitalWrite(11, LOW);
      digitalWrite(12, HIGH);
   }
}

Explication du code Arduino éthylotest MQ-3 et LEDs:

  1. les valeurs du capteur dans les instructions if doivent être calibrées;
  2. les données du capteur seront affichées sur le moniteur du port série.
Comment construire alcootest sur Arduino Uno et LCD
Comment construire Arduino alcootest sur Uno et LCD
LCD 1602 i2c Arduino Uno Arduino Nano Arduino Mega
GND GND GND GND
VCC 5V 5V 5V
SDA A4 A4 20
SCL A5 A5 21

Assemblez le circuit comme sur l’image ci-dessus. Les ports SDA et SCL de l’écran Arduino sont connectés aux broches A4 et A5 de l’Arduino Uno. Le capteur doit être connecté à 5V et GND et la sortie analogique à la broche A1. La première fois que vous allumez le capteur, il se peut qu’une odeur étrange se dégage de la MQ3 lorsqu’elle chauffe – c’est normal. Après avoir assemblé le schéma de câblage, chargez le programme suivant pour l’appareil.

Programme Arduino pour éthylotest MQ-3 et LCD

#include "Wire.h"
#include "LiquidCrystal_I2C.h"
LiquidCrystal_I2C LCD(0x27,16,2);

int mq3;

void setup() {
   pinMode(A1, INPUT);
   analogWrite(A1, LOW);

   Serial.begin(9600);
   LCD.init();
   LCD.backlight();
 }

void loop() {
   mq3 = analogRead(A1);

   Serial.print("Alcohol: ");
   Serial.println(mq3);

   LCD.setCursor(0,0);
   LCD.print("Alcohol: ");
   LCD.print(mq3);

   delay(100);
   LCD.clear();
}

Explication du code éthylotest MQ-3 Arduino et LCD:

  1. le schéma de connexion de l’écran LCD à Arduino Mega sera différent, parce que ce microcontrôleur a des broches séparées SDA, SCL;
  2. LCD affiche les valeurs de MQ3 traitées par l’ADC du microcontrôleur.

Conclusion. Si vous n’avez pas d’écran LCD 16×2 i2c, vous pouvez simplement commenter ou supprimer la partie inutile du code. Dans ce cas, les informations provenant du capteur MQ-3 connecté à la carte Arduino seront affichées uniquement sur le port serie de Arduino IDE. Si vous avez des questions sur la connexion ou la programmation du capteur MQ-3 pour l’éthylotest Arduino Uno, laissez-les dans les commentaires de cet article.





8 Replies to “Ethylomètre avec Arduino et sensor d’alcool MQ3”

  1. Bonsoir,
    Je débute sur les arduino et j’aurais aimé avoir quelque renseignement complémentaires.
    Que voulez vous dire quand vous disez que les valeurs du capteur doivent etre calibré dans les instruction if ?
    Si je prend le programme que vous avez mis pour l’utilisation avec le LCD et je le charge dans la carte, est ce que je dois changer des infos dedans ou en rajouter ou pas ?
    Cordialement, Merci

    Corentin

    1. C’est vous qui décidez. Vous pouvez modifier le seuil à partir duquel un voyant particulier s’allume.

  2. Bonjour, c’est possible d’envoyer les données sur un téléphone pour créer une application qui va avec l’ethylometre ?

        1. Vous buvez un verre de bière, soufflez sur l’alcootest, puis sur le capteur MQ-3. Sur la base de ces valeurs, vous créez une échelle de concentration d’alcool

  3. bonjour,
    pourquoi une mega est neccesaire?
    une nano ou une uno ne ferait t’elle pas l’affaire ?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.