Vom realiza un etilotest folosind un senzor care detectează nivelul de alcool din aer.
void setup() {
Serial.begin(9600);
}
void loop() {
int nivelAlcool = analogRead(A0);
Serial.print("Nivelul de alcool este: ");
Serial.println(nivelAlcool);
delay(1000);}
#define MQ3pin 0 //Definim senzorul MQ3
float sensorValue; //variabila pentru valoarea senzorului
void setup() {
Serial.begin(9600);
// Afișăm mesajul de mai jos
Serial.println(" Așteptăm 20 de secunde pentru încălzirea senzorului MQ3");
// Așteptăm 20 de secunde
delay(20000);
}
void loop() {
sensorValue = analogRead(MQ3pin); //Citim valoarea senzorului
Serial.print("Valoarea senzorului: "); // Afișăm valoarea
Serial.println(sensorValue);
delay(2000); // Așteptăm 2 secunde pentru următoarea citire
}
#define Sober 350 // Definim valoarea maximă pentru care nu avem alcoolemie
#define Drunk 450 // Definim valoarea minimă pentru care suntem cu alcoolemie
#define MQ3pin 0
float sensorValue; //variabila pentru senzor
void setup() {
Serial.begin(9600);
Serial.println("Așteptăm 20 de secunde pentru încălzirea senzorului MQ3!");
delay(20000); // Așteptăm 20 de secunde
}
void loop() {
sensorValue = analogRead(MQ3pin); // Citim valoarea senzorului
Serial.print("Valoarea senzorului: ");
Serial.print(sensorValue);
// Afișăm starea
if (sensorValue < Sober) {
Serial.println(" | Stare: Fără alcoolemie");
} else if (sensorValue >= Sober && sensorValue < Drunk) {
Serial.println(" | Stare: Cu alcoolemie");
} else {
Serial.println(" | Stare: Alcoolemie ridicată");
}
delay(2000); // Așteptăm 2 secunde pentru următoarea citire
}
Senzorul este acționat în interiorul său de către un încălzitor. Dispozitivul este alcătuit din carcasă (partea portocalie) și din 2 straturi de plasă din oțel inoxidabil fină, numită și antiexplozie, deoarece alcoolul este inflamabil.
Fiind un senzor analogic, chiar dacă nu există alcool în respirația noastră, valoarea senzorului nu va fi egală cu 0. Cât timp valoarea citită este sub 500 înseamnă că nu există alcool în respirație, dacă se trece de valoarea 500 înseamnă că senzorul sesizează un anumit grad de alcool în aer.
De obicei modelele de tip brick vin incorporate cu un mic potențiometru atașat pentru a ajusta sensibilitatea dispozitivului.
Observație! Pentru o precizie mai bună de citire a valorilor de pe senzor trebuie să așteptăm 24-48 de ore pentru încălzirea acestuia.