Autor: Ciorceanu Andrei-Razvan
Grupa: 334CA
Scopul proiectului este de a estima aproximativ alcoolemia din aerul expirat de o persoana, calculata pe baza unor formule ce tin cont de timpul care a trecut de cand a fost consumat alcool si de sexul persoanei(in urma unor studii s a constatat ca acesta este singurul factor care influenta cantitatea de alcool din sange exprimata in mg/L,nu se tine cont de inaltimea/greutatea persoanei respective). Astfel se pot evita situatiile in care o persoana se urca la volan sub influenta bauturilor alcoolice, este util mai ales pentru utilizarea in anumite tari in care legea permite conducerea autoturismului dupa ce a fost consumat alcool pana intr-o limita prestabilita.
Ideea pentru acest proiect mi a venit acum putin timp cand am vizitat Germania si am aflat ca acolo legea permite conducerea autoturismului sub influenta alcoolului sub o anumita limita(echivalentul a 2 beri la 0.33). Dar aceasta alcoolemie poate varia de la o persoana la alta in functie de timpul de cand au fost consumate, astfel am considerat ca un astfel de dispozitiv este util pentru a determina cu exactitate concentratia de alcool pentru a ramane in limita legala. De asemenea in Romania limita legata este de 0 mg/L astfel orice valoare peste poate duce la diferite sanctiuni din ce in ce mai grave de la pierderea permisului de conducere pana la dosar penal.
In primul rand, utilizatorul trebuie sa schimbe valoarea potentiometrului pentru a seta sexul(prima jumatate a potentiometrului este setata pentru Female, cealalta jumatate pentru Male) astfel incat sa se efectueze o masuratoare cat mai exacta si a tine cont de toate variabilele in calculul pentru aflarea alcoolemiei din aerul expirat. Pe baza datelor obtinute prin senzor aparatul va efectua calculele pe baza unor formule si va transmite concentratia catre device-ul de afisaj, care va interactiona cu un buzzer, ce se va aprinde in functie de rezultatul emis. Pentru calculul acestor formule se efectueaza 10 masuratori pentru datele primite de la senzor deoarece acesta nu este foarte exact si dureaza putin timp pana se incalzeste rezistenta lui interna si incepe sa transmita valori corecte.
Am folosit 2 potentiometre,unul liniar utilizat in efectuarea calculelor,care va interactiona cu utilizatorul, iar cel de al doilea potenntiometru este conectat la ecranul LCD pentru a folosi o rezistenta mai mare si cu ajutorul caruia se poate seta intensitatea afisajului.
Am folosit ultima versiune de Arduino IDE,de unde folosesc biblioteca deja implementata LiquidCrystal pentru a putea interactiona cu ecranul LCD si a folosi functii de afisare deja implementate in aceasta.(cum ar fi setCursor,clear,print). Am initializat ecranul LCD pentru pinii la care l am conectat,apoi definesc constantele de calcul iar in functia setup initializez si ceilalti pini pentru button INPUT_PULLUP,pentru buzzer de tipul OUTPUT iar senzorul de gaz si potentiometrul liniar ca INPUT. Codul proiectului se gaseste in sectiunea de “Cod” in fisierul betivo-metru.ino,iar in cadrul acestuia am folosit functiile deja implementate din biblioteca Arduino Standard cum ar fi digitalRead(),analogRead(),delay() cat si functiile pentru setarea buzzerului,adica tone() si noTone(). Am decis folosirea unui buton pentru ca altfel senzorul citea date incontinuu,efectuarea calculelor se facea destul de rapid iar pe ecranul lcd apareau continuu mesaje care durau prea putin pentru a fi citite. Mai multe detalii despre implementarea codului cat si despre formulele utilizate pentru calcului concentratiei de alcool se gasesc in sectiunea README,fisier care se afla in aceeasi arhiva cu codul.
Aceasta a fost prima mea interactiune mai in detaliu,inafara laboratorului cu o placuta Arduino si diferite componente si pot spune ca experienta a fost una placuta,chiar daca am avut ceva batai de cap din cauza pieselor pentru ca unele nu mergeau si a trebuit sa petrec ceva timp facand debugg sa aflu de ce. In final am obtinut un aparat care masoara aproximativ cantitatea de alcool din aerul expirat,aceasta masurare aproximativa nu este foarte acurata din cauza performantelor senzorului cat si calculele reprezinta o aproximare a adevaratului rezultat,tocmai de aceea am obtinut rezultate putin probabile pentru oameni in cazul unor bauturi cu care a fost testat.
https://www.teachmemicro.com/mq-3-alcohol-sensor/
Conectarea pieselor: