Differences

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

Link to this comparison view

pm:prj2021:dbrigalda:pushup_counter [2021/05/09 20:35]
eduard.tudor
pm:prj2021:dbrigalda:pushup_counter [2021/06/04 09:48] (current)
eduard.tudor [Bibliografie/Resurse]
Line 1: Line 1:
-== **Pushup_counter** ==+====== Pushup_counter ​====== 
 + 
 + 
 + 
 + 
 + 
 + 
 +====== Introducere ======
  
  
-**Introducere** 
  
 Proiectul isi propune detectarea si numararea flotarilor pe care le va face utilizatorul. Acesta va putea seta un target de pe telefonul propriu, iar dispozitivul il va anunta treptat, atat la fiecare flotare efectuata cat si in momentul in care atinge target-ul ales. Proiectul isi propune detectarea si numararea flotarilor pe care le va face utilizatorul. Acesta va putea seta un target de pe telefonul propriu, iar dispozitivul il va anunta treptat, atat la fiecare flotare efectuata cat si in momentul in care atinge target-ul ales.
  
-**Descriere generala**+====== ​Descriere generala ​====== 
  
 {{:​pm:​prj2021:​dbrigalda:​pmproiect.jpg?​800x500|}} {{:​pm:​prj2021:​dbrigalda:​pmproiect.jpg?​800x500|}}
Line 12: Line 19:
 Utilizatorul are posibilitatea de a seta de pe telefon un numar de flotari, comunciarea dintre telefon si placa Arduino realizandu-se printr-un modul bluetooth. Pe placa vor exista 5 LED-uri care se vor aprinde treptat la fiecare flotare realizata (Ex: Daca target-ul setat este 10, atunci la fiecare flotare un LED se va aprinde la jumatate din intensitatea sa). De asemenea la fiecare flotare realizata, un buzzer va scoate un sunet specific, iar dupa ce target-ul a fost atins, buzzer-ul va emite un sunet care va avea o durata mai mare. Utilizatorul va avea posibilitatea de "​reset",​ apasand pe un buton care se va afla tot pe placa. Utilizatorul are posibilitatea de a seta de pe telefon un numar de flotari, comunciarea dintre telefon si placa Arduino realizandu-se printr-un modul bluetooth. Pe placa vor exista 5 LED-uri care se vor aprinde treptat la fiecare flotare realizata (Ex: Daca target-ul setat este 10, atunci la fiecare flotare un LED se va aprinde la jumatate din intensitatea sa). De asemenea la fiecare flotare realizata, un buzzer va scoate un sunet specific, iar dupa ce target-ul a fost atins, buzzer-ul va emite un sunet care va avea o durata mai mare. Utilizatorul va avea posibilitatea de "​reset",​ apasand pe un buton care se va afla tot pe placa.
  
-**Hardware design**+====== ​Hardware design ​====== 
 + 
 +**Lista de componente**
  
   * Placuta Arduino Uno   * Placuta Arduino Uno
Line 23: Line 32:
   * Fire   * Fire
  
-**Software design**+====== ​Software design ​====== 
 + 
 +    Am scris codul necesar dezvoltarii proiectului in Arduino IDE.  
 +    Pentru a comunica cu placa Arduino UNO am avut nevoie de biblioteca Wire.h.  
 +    De asemenea pentru a utiliza accelerometrul am folosit bibliotecile <​Adafruit_Sensor.h>​ si <​Adafruit_ADXL345_U.h>​. 
 +    Am folosit variabila de tip Adafruit_ADXL345_Unified accel pentru a accesa  
 +  valorile de pe axa OZ pe care le indica accelerometru pentru a detecta o schimbare a vitezei in  
 +  momentul in care se realizeaza miscarea de ridicare de la sol, astfel ajutandu-ma la numararea flotarilor.  
 +    Pentru fiecare componenta de pe placa am atribuit un nume pin-ului corespunzator:​ buttonPin, led1Pin, 
 +  led2Pin, led3Pin, led4Pin, led5Pin, buzzer. De asemenea mi-am definit cateva note muzicale reprezentate de sunete pentru buzzer la diferite frecvente.  
 +     ​Variabila count_value a fost incrementata la fiecare accelerare in sus pe axa OZ.  
 +     ​Variabila prestate a fost folosita pentru a detecta starea precedenta momentului accelerarii.  
 +     ​Variabila command, de tip string reprezinta fie un numar (care va declansa startul numaratorii si care  
 +  reprezinta targetul de flotari), fie "​restart"​ (care are rolul de a restarta numaratoarea,​ mai exact  
 +  de a stinge LED-urile si de a reseta la 0 valoarea variabilei count_value). 
 +    LED-urile si buzzer-ul au fost setate ca OUTPUT.  
 +    Pentru a monitoriza valorile aratate de accelerometru am folosit si o variabila event de tip sensors_event_t.  
 +====== Rezultate obtinute ====== 
 + 
 + 
 +     ​Rezultatele obtinute sunt cele dorite. Programul incepe atunci cand se introduce de pe telefonul mobil 
 +conectat prin bluetooth la placuta un numar reprezentand targetul de flotari.  
 +     La fiecare flotare efectuata se aude un sunet facut de buzzer urmand ca la final, daca toate flotarile ​   
 +au fost efectuate sa se auda un mini-cantec. De asemenea, la fiecare cincime din target se va aprinde un LED reprezentand progresul. 
 +     Un videoclip cu rezultatele finale ale proiectului se poate gasi la urmatorul link:  
 +      https://​www.youtube.com/​watch?​v=qxXCgdom7Lk&​ab_channel=EduardTudor 
 +      https://​youtu.be/​NIfdkVYjORU 
 +====== Concluzii ======
  
  
-**Rezultate obtinute**+Realizarea proiectului a reprezentat o experienta noua si foarte interesanta in care s-au imbinat perfect scrierea de cod si montarea 
 +anumitor componente pe o placuta de tip Arduino UNO. 
 +====== Download ======
  
  
-**Concluzii**+{{:​pm:​prj2021:​dbrigalda:​proiect_pm_finalizat.txt|}} 
 +====== Bibliografie/​Resurse ======
  
  
-**Download**+Documentatia in format PDF: {{:​pm:​prj2021:​dbrigalda:​ocw_cs_pub_ro_courses_pm_prj2021_dbrigalda_pushup_counter.pdf|}} 
 +Am folosit documentatii si am urmarit tutoriale in special pentru componentele cu care nu am lucrat la laborator: accelerometru si modul bluetooth.
  
  
-**Bibliografie/Resurse**+https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​dbrigalda/​pushup_counter
pm/prj2021/dbrigalda/pushup_counter.1620581758.txt.gz · Last modified: 2021/05/09 20:35 by eduard.tudor
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