Differences

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

Link to this comparison view

pm:prj2021:avaduva:alcoholtester [2021/05/27 13:37]
alexandru.popa0809 [Software Design]
pm:prj2021:avaduva:alcoholtester [2021/05/27 15:08] (current)
alexandru.popa0809 [Concluzii]
Line 52: Line 52:
   * În funcția setup, inițializez ecranul LCD, configurez pin-ul pentru buzzer și afișez pe ecran un mesaj corespunzător,​ lăsând la încălzit senzorul pentru câteva secunde.   * În funcția setup, inițializez ecranul LCD, configurez pin-ul pentru buzzer și afișez pe ecran un mesaj corespunzător,​ lăsând la încălzit senzorul pentru câteva secunde.
   * În funcția loop, calibrez senzorul, iau valoarea pe care acesta o transmite și afișez un mesaj specific în funcție de mai multe intervale.   * În funcția loop, calibrez senzorul, iau valoarea pe care acesta o transmite și afișez un mesaj specific în funcție de mai multe intervale.
-              * //​calibrateSensor()//:​ citesc valoarea data de senzor de pe pin-ul 0 cu analogRead. Fiind o valoare prea mare, a trebuit sa calibrez senzitivitatea rezistenței potentiometrului din modul, pe care am setat-o la 32.000. RS_gas este rezistenta ​senzorului, care se schimba ​în funcție de concentrația gazului, iar R0 este rezistenta ​la o valoare ​stiuta ​fără prezența altor gaze în jur. Am aflat valoare minima si maxima, iar pentru a afișa o valoare cat mai ușor de recunoscut, am schimbat capetele intervalului prin funcția map. RS_gas se calculeza dupa formula:+              * //​calibrateSensor()//:​ citesc valoarea data de senzor de pe pin-ul 0 cu analogRead. Fiind o valoare prea mare, a trebuit sa calibrez senzitivitatea rezistenței potentiometrului din modul, pe care am setat-o la o alta valoare, după mai multe încercări. RS_gas este rezistența ​senzorului, care se schimbă ​în funcție de concentrația gazului, iar R0 este rezistența ​la o valoare ​știută ​fără prezența altor gaze în jur. Dupa o serie de ecuatii, pe care le-am explicat mai jos, am aflat valoarea minimă și maximă, iar pentru a afișa o valoare cat mai ușor de recunoscut, am schimbat capetele intervalului prin funcția map.
               * //​alcoholLevel()//:​ se face media a doua valori, cu un anumit delay între ele, pentru o valoare cat mai corecta               * //​alcoholLevel()//:​ se face media a doua valori, cu un anumit delay între ele, pentru o valoare cat mai corecta
               * //​printLCD()//:​ se afișează un mesaj pentru o anumită valoare data de senzor. Dacă valoarea este prea mare, buzzer-ul scoate un sunet.               * //​printLCD()//:​ se afișează un mesaj pentru o anumită valoare data de senzor. Dacă valoarea este prea mare, buzzer-ul scoate un sunet.
-<note tip>RS = [(Vin x R / Vout] - R, unde R este rezistenta potentiometrului.</​note> ​+<note tip>RS = [(Vin x R / Vout] - R, unde R este rezistenta potentiometrului. 
 + 
 +Pentru a calcula R0 trebuie sa aflu valoarea lui RS_gas în aerul curat. Acest lucru se poate face luând valorile date de senzor și convertindu-le la tensiuni. Apoi se calculează R0 cu formula R0 = RS / 60, unde 60 este raportul dintre rezistențe în aerul curat. 
 + 
 +</​note> ​
  
  
Line 61: Line 65:
  
 ===== Rezultate obtinute ===== ===== Rezultate obtinute =====
 +{{:​pm:​prj2021:​avaduva:​poza_1_etilotest.jpeg?​500}}
  
 +{{:​pm:​prj2021:​avaduva:​poza_2_etilotest.jpeg?​500}}
 +
 +{{:​pm:​prj2021:​avaduva:​poza_3_etilotest.jpeg?​500}}
 +==== Demo ====
 +Am testat proiectul folosind spirt, caz în care valoarea arătată ar trebui să se apropie de maxim, ceea ce se și întâmplă. De asemenea, am mai testat proiectul și cu câteva beri și arată rezultatele dorite.
 +
 +
 +[[https://​www.youtube.com/​watch?​v=LG1hvTKXphs&​ab_channel=AlexPopa|Demo]]
 ===== Concluzii ===== ===== Concluzii =====
 +A fost un proiect interesant și mi-a plăcut să lucrez la el. Fiind primul proiect hardware pe care l-am făcut, am învățat lucruri noi și utile. Am intampinat cateva dificultăți în a calibra senzorul. În final, am reușit să-l fac sa dea rezultate cât mai corecte, mai aproape de realitate. Ceea ce este important de știut, este ca nu te poți baza pe valorile oferite de acest senzor, deoarece este unul ieftin, care nu oferă rezultate atât de exacte.
 +
  
 ===== Download ===== ===== Download =====
   * {{:​pm:​prj2021:​avaduva:​schema_bloc_etilotest.png?​linkonly|}}   * {{:​pm:​prj2021:​avaduva:​schema_bloc_etilotest.png?​linkonly|}}
   * {{:​pm:​prj2021:​avaduva:​schema_el_etil.png?​linkonly|}}   * {{:​pm:​prj2021:​avaduva:​schema_el_etil.png?​linkonly|}}
 +  * {{:​pm:​prj2021:​avaduva:​poza_1_etilotest.jpeg?​linkonly|}}
 +  * {{:​pm:​prj2021:​avaduva:​poza_2_etilotest.jpeg?​linkonly|}}
 +  * {{:​pm:​prj2021:​avaduva:​poza_3_etilotest.jpeg?​linkonly|}}
 +
 +{{:​pm:​prj2021:​avaduva:​arhiva_cod.zip|}}
 ===== Jurnal ===== ===== Jurnal =====
   * **25 aprilie 2021**: crearea paginii de wiki, completarea temei proiectului,​ descrierea proiectului și adăugarea schemei bloc    * **25 aprilie 2021**: crearea paginii de wiki, completarea temei proiectului,​ descrierea proiectului și adăugarea schemei bloc 
   * **19 mai 2021**: testarea componentelor,​ calibrarea senzorului MQ-3, crearea hardware a proiectului   * **19 mai 2021**: testarea componentelor,​ calibrarea senzorului MQ-3, crearea hardware a proiectului
   * **21 mai 2021**: completarea descrierii, adăugarea schemelor electrice   * **21 mai 2021**: completarea descrierii, adăugarea schemelor electrice
 +  * **26 mai 2021**: finalizarea părții software
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
   * [[https://​lastminuteengineers.com/​mq3-alcohol-sensor-arduino-tutorial/​]]   * [[https://​lastminuteengineers.com/​mq3-alcohol-sensor-arduino-tutorial/​]]
Line 76: Line 97:
   * [[https://​components101.com/​sensors/​mq-3-alcohol-gas-sensor]]   * [[https://​components101.com/​sensors/​mq-3-alcohol-gas-sensor]]
   * [[https://​www.instructables.com/​LCD-1602-With-Arduino-Uno-R3/​]]   * [[https://​www.instructables.com/​LCD-1602-With-Arduino-Uno-R3/​]]
 +  * [[https://​thestempedia.com/​tutorials/​interfacing-mq-3-gas-sensor-with-evive/​]]
 [[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​avaduva/​alcoholtester&​do=export_pdf | Export to PDF]] [[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​avaduva/​alcoholtester&​do=export_pdf | Export to PDF]]
  
  
pm/prj2021/avaduva/alcoholtester.1622111832.txt.gz · Last modified: 2021/05/27 13:37 by alexandru.popa0809
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