Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2024:aungureanu:dan_andrei.ionescu [2024/05/04 20:30]
dan_andrei.ionescu
pm:prj2024:aungureanu:dan_andrei.ionescu [2024/05/27 00:14] (current)
dan_andrei.ionescu [Etilotest]
Line 1: Line 1:
 ====== Etilotest ====== ====== Etilotest ======
 +Ionescu Dan-Andrei 333CC
 ===== Introducere ===== ===== Introducere =====
  
 <note tip> <note tip>
-Proiectul constă într-un etilotest care este menit să detecteze cantitatea de alcool din respirație. Mai întâi se va apăsa un buton iar utilizatorul ​pate incepe să sufle în senzorul ​de masurare a nivelului ​de alcool pentru ​cateva ​secunde. Apoi pe ecranul LCD va fi afișată valoarea de alcoolemie, iar în funcție de valoare se va aprinde led-ul pe una din culorile verde, galben, rosu. Dacă rezultatul obținut este unul foarte ridicat (roșu), se activează și buzzer-ul.+Proiectul constă într-un etilotest care este menit să detecteze cantitatea de alcool din respirație. Mai întâi se va apăsa un buton iar utilizatorul ​poate incepe să sufle în senzorul de alcool pentru ​câteva ​secunde. Apoi pe ecranul LCD va fi afișată valoarea de alcoolemie, iar în funcție de valoare se va aprinde led-ul pe una din culorile verde, galben, portocaliu, rosu, albastru. Dacă rezultatul obținut este unul foarte ridicat (albastru), se activează și buzzer-ul.
  
 Ideea a pornit de la etilotestele pe care le folosesc polițiștii in trafic, iar acest proiect este util deoarece poate compara valoarea de alcool obținută cu cea impusă de lege atunci cand ești la volan. În acest fel vom fi convinși că este o idee foarte proastă să ne urcăm la volan dacă am consumat chiar si o cantitate mică de alcool. Ideea a pornit de la etilotestele pe care le folosesc polițiștii in trafic, iar acest proiect este util deoarece poate compara valoarea de alcool obținută cu cea impusă de lege atunci cand ești la volan. În acest fel vom fi convinși că este o idee foarte proastă să ne urcăm la volan dacă am consumat chiar si o cantitate mică de alcool.
Line 13: Line 14:
 **Descriere** **Descriere**
  
-Utilizatorul trebuie să apese pe un buton, iar apoi utilizatorul poate sufla în senzorul MQ-3. Plăcuța Arduino va primi apoi informația și se va afișa cantitatea de alcool resimțită pe ecranul LCD. Totodată se aprinde LED-ul+Utilizatorul trebuie să apese pe un buton, iar apoi utilizatorul poate sufla în senzorul MQ-3 pentru 5 secunde. Plăcuța Arduino va primi apoi informația și se va afișa cantitatea de alcool resimțită pe ecranul LCD. Totodată se aprinde LED-ul
   * **Verde** - pentru valori apropiate de 0   * **Verde** - pentru valori apropiate de 0
-  * **Galben** - pentru valori medii +  * **Galben-Portocaliu** - pentru valori medii 
-  * **Rosu** - valori ridicate. Acest caz activează și buzzer-ul, nivelul de alcool din aer fiind foarte mare+  * **Rosu** - valori ​ridicate. 
 +  * **Albastru** - valori foarte ​ridicate.Acest caz activează și buzzer-ul, nivelul de alcool din aer fiind foarte mare
  
 **Schema Bloc** **Schema Bloc**
Line 27: Line 29:
 <note tip> <note tip>
 Aici puneţi tot ce ţine de hardware design: Aici puneţi tot ce ţine de hardware design:
-  ​* listă ​de piese +  ​Lista de piese 
-  ​* scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri, e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png) +  - Breadboard 
-  ​* diagrame de semnal ​ +  ​Arduino Uno R3 
-  ​* rezultatele simulării+  ​Senzor gaz MQ-3 alcool etanol 
 +  ​- Ecran LCD I2C 
 +  ​- Buzzer pasiv 
 +  - Buton 
 +  - LED RGB 
 +  - Baterie 9V 
 +  - 3 rezistente 220 ohmi 
 +  - 1 rezistenta 10kOhmi 
 + 
 +{{:​pm:​prj2024:​aungureanu:​schema1.png?​650|}} 
 + 
 +{{:​pm:​prj2024:​aungureanu:​schema2.png?​650|}} 
 </​note>​ </​note>​
  
Line 37: Line 51:
  
 <note tip> <note tip>
-Descrierea codului aplicaţiei (firmware)+Tool-uri utilizate
-  * mediu de dezvoltare ​(if any) (e.g. AVR StudioCodeVisionAVR+  * Arduino IDE  
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib+  * Fritzing pentru schema electrica si schema bloc 
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +  * TinkerCad pentru simularea schemei 
-  * (etapa 3surse şi funcţii implementate+ 
 +Biblioteci folosite: 
 +  * <​Wire.h>​ - pentru comunicarea I2C in Arduino 
 +  * <​LiquidCrystal_I2C.h>​ - pentru a ma folosi ​de LCD I2C 16x2 cu adresa 0x3F 
 + 
 +Functii: 
 +  * setup - initializarea pinilor si a lcd-ului cu un mesaj default ​(Press the button to start) 
 + 
 +  * loop - verifica daca butonul a fost apasat. Daca da, se va astepta un numar prestabilit de secunde ​(10) pentru ca senzorul MQ-3 sa se incalzeasca,​ pentru ca rezultatul sa fie unul cat mai aproape de realitateDupa ce a trecut timpulsenzorul va masura pentru 5 secunde cantitatea de alcool din aer (pentru testare am apropiat o sticla de bautura/​spirt sau chiar parfum de senzor). Dupa cele 5 secunde va fi afisat procentajul final de alcool resimtit alaturi de un mesaj sugestiv, led-ul va lumina in culoarea respectiva, iar daca valoarea este una mare se va auzi si buzzer-ul. 
 + 
 +  * convertToBAC(int senzorValue) ​aplica o formula pentru a transforma valoarea senzorului intr-un procent similar unitatii de masura BAC (Blood Alcohol Content) 
 + 
 +  * setColor(float red, float green, float blue) - schimba culoarea led-ului 
 + 
 +  * interpolate(float value, float start1, float end1, float start2, float end2) - realizeaza interpolarea a 2 valori 
 + 
 +  * updateLED(float concentration,​ bool flicker) - modifica valorile rgb ale ledului folosind functia de interpolare pentru o schimbare dinamica a ledului (o tranzitie oarecum smooth verde->​galben->​portocaliu->​rosu->​mov)
 </​note>​ </​note>​
  
Line 47: Line 77:
  
 <note tip> <note tip>
-Care au fost rezultatele obţinute în urma realizării proiectului vostru.+Cazuri: 
 + 
 +{{:​pm:​prj2024:​aungureanu:​sober.jpg?​300|}}{{:​pm:​prj2024:​aungureanu:​hadadrink.jpg?​300|}} 
 + 
 +{{:​pm:​prj2024:​aungureanu:​drunk.jpg?​300|}}{{:​pm:​prj2024:​aungureanu:​verydrunk.jpg?​300|}} 
 + 
 +{{:​pm:​prj2024:​aungureanu:​memoryloss.jpg?​300|}}{{:​pm:​prj2024:​aungureanu:​coma.gif?​225|}} 
 + 
 +Demo: https://​youtube.com/​shorts/​cVLA5MBoGZA?​feature=share
 </​note>​ </​note>​
  
 ===== Concluzii ===== ===== Concluzii =====
  
 +A fost o experienta interesanta,​ fiind prima data cand fac un proiect de acest fel ma gandeam sa fie  greu, dar a fost mai ok decat ma asteptam.
 ===== Download ===== ===== Download =====
  
 <note warning> <note warning>
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).+Arhiva proiect
  
-Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:​prj20??:​c?:​nume_student** (dacă este cazul)**Exemplu:​** Dumitru Alin, 331CC -> **:​pm:​prj2009:​cc:​dumitru_alin**.+{{:pm:prj2024:aungureanu:dan_andrei.ionescu.zip|}}
 </​note>​ </​note>​
  
Line 63: Line 102:
  
 <note tip> <note tip>
-Puteți avea și o secțiune ​de jurnal în care să poată urmări asistentul ​de proiect progresul ​proiectului.+Saptamana 9: 22-26 Aprilie -> Alegerea temei proiectului 
 + 
 +Saptamana 10: 29-03 Mai -> Am dat comanda ​de componente 
 + 
 +Saptamana 12: 13-17 Mai -> Realizarea schemei electrice, asamblarea hardware si un inceput ​de software 
 + 
 +Saptamana 13: 20-24 Mai -> Finalizare cod, testarea ​proiectului ​si realizarea pagini de wiki 
 </​note>​ </​note>​
  
Line 69: Line 115:
  
 <​note>​ <​note>​
-Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse ​Software** şi **Resurse Hardware**.+ 
 +Resurse software: 
 + 
 +https://​github.com/​fdebrabander/​Arduino-LiquidCrystal-I2C-library 
 +https://​www.arduino.cc/​reference/​en/​language/​functions/​advanced-io/​tone/​ 
 + 
 +Resurse ​hardware: 
 + 
 +https://​projecthub.arduino.cc/​semsemharaz/​interfacing-rgb-led-with-arduino-b59902 
 +https://​www.optimusdigital.ro/​ro/​optoelectronice-lcd-uri/​62-lcd-1602-cu-interfata-i2c-si-backlight-galben-verde.html 
 +https://​components101.com/​sensors/​mq-3-alcohol-gas-sensor 
 </​note>​ </​note>​
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
  
pm/prj2024/aungureanu/dan_andrei.ionescu.1714843810.txt.gz · Last modified: 2024/05/04 20:30 by dan_andrei.ionescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0