This shows you the differences between two versions of the page.
pm:prj2021:dbrigalda:pushup_counter [2021/05/09 20:52] eduard.tudor |
pm:prj2021:dbrigalda:pushup_counter [2021/06/04 09:48] (current) eduard.tudor [Bibliografie/Resurse] |
||
---|---|---|---|
Line 34: | Line 34: | ||
====== 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 ====== | ====== 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 ====== | ====== Concluzii ====== | ||
+ | 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 ====== | ====== Download ====== | ||
+ | {{:pm:prj2021:dbrigalda:proiect_pm_finalizat.txt|}} | ||
====== Bibliografie/Resurse ====== | ====== Bibliografie/Resurse ====== | ||
Documentatia in format PDF: {{:pm:prj2021:dbrigalda:ocw_cs_pub_ro_courses_pm_prj2021_dbrigalda_pushup_counter.pdf|}} | 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. | ||
+ | |||
+ | |||
+ | https://ocw.cs.pub.ro/courses/pm/prj2021/dbrigalda/pushup_counter |