Etilotest
Autor: Bucura Stefan-Alexandru
Grupa: 333CD
Introducere
Acest proiect constă în realizarea unui dispozitiv etilotest simplu, cu scopul de a detecta și semnaliza prezența vaporilor de alcool din aerul expirat. Proiectul folosește un senzor de alcool (MQ-3), două LED-uri de semnalizare, un buzzer pentru avertizare sonoră, un display OLED pentru afișarea valorii măsurate și un encoder rotativ pentru controlul aparatului printr-un meniu.
Dispozitivul este gândit ca un tester rapid și accesibil, ușor de folosit înainte de a conduce, oferind feedback vizual, sonor și numeric. Este portabil și alimentabil de la sursă externă.
Descriere generală
Senzorul MQ-3 detectează vaporii de alcool din aerul expirat
Valoarea citită este afișată pe un display OLED
În funcție de valoare, se aprinde LED-ul roșu sau verde și se activează buzzerul pentru avertizare
Utilizatorul poate naviga prin meniu folosind encoderul rotativ pentru a vedea moduri diferite de afișare (valoare sau sancțiune)
Hardware Design
Componenta | Numar bucati | Documentatie |
Arduino ATmega328P | 1 | Datasheet ATmega328P |
Senzor de alcool MQ-3 | 1 | MQ-3 Alcohol Sensor |
Buzzer Activ 5V | 1 | - |
LED-uri (rosu, verde) | 2 | - |
Rezistori 220 ohm | 2 | - |
Encoder rotativ cu buton | 1 | - |
Display OLED SSD1306 | 1 | |
Software Design
Codul este dezvoltat pentru microcontrollerul ATmega328P, compilat și încărcat folosind Arduino IDE. Nu s-au utilizat funcții standard Arduino (pinMode, digitalRead, analogRead etc.), ci doar lucrul direct cu registre.
Librării folosite:
Funcționalități implementate:
Meniu interactiv controlat cu encoder (Start Test, Set Prag 1, Set Prag 2, Mod Afisare)
Afișare numerică sau textuală în funcție de valoarea măsurată (e.g., “Avertisment”, “Dosar Penal”)
Avertizare sonoră și vizuală (buzz continuu + LED roșu pentru valori periculoase)
Calibrare automată a senzorului la pornire și secvență de start-up (buzzer + LED)
Toate intrările/ieșirile tratate la nivel de registru (DDRx, PORTx, PINx, ADMUX, ADCSRA etc.)
Rezultate Obţinute
Produsul final funcționează conform cerințelor: detectează alcoolul din aerul expirat, oferă avertizare sonoră și vizuală, iar meniul este complet funcțional și ușor de navigat. Displayul arată clar informațiile. Pragurile se pot ajusta ușor și nu se salvează între porniri, conform cerinței.
DEMO video - etilotest
Link GitHub
Concluzii
Proiectul și-a atins scopul de a crea un etilotest portabil, fiabil, ușor de utilizat, fără utilizarea funcțiilor standard Arduino. Codul este optimizat la nivel de registru, meniul este complet funcțional, iar feedbackul vizual și sonor este bine sincronizat cu valorile senzorului. Este un proiect ideal pentru uz educațional și personal.
Jurnal
04.05.2025 - alegere temă proiect
07.05.2025 - comandă componente
09.05.2025 - testare componente (senzații false MQ-3)
11.05.2025 - montaj pe breadboard și test buzzer/LED-uri
13.05.2025 - implementare ecran și meniu
15.05.2025 - integrare citire encoder
18.05.2025 - implementare praguri și conversie mg/L
22.05.2025 - feedback sonor/LED în funcție de valoare
25.05.2025 - optimizare interfață și calibrare senzor
27.05.2025 - testare finală și demo video
Bibliografie/Resurse
Resurse Software
Resurse Hardware