Differences

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

Link to this comparison view

pm:prj2025:ajipa:bogdan.trifan2412 [2025/05/02 09:12]
bogdan.trifan2412
pm:prj2025:ajipa:bogdan.trifan2412 [2025/05/05 14:30] (current)
bogdan.trifan2412
Line 1: Line 1:
 ====== Gym Assistant ====== ====== Gym Assistant ======
 +
 ===== Introducere ===== ===== Introducere =====
  
-In acest proiect ​imi propun ​sa dezvolt un sistem de "​supervizare"​ +În acest proiect ​îmi propun ​să dezvolt un sistem de "​supervizare"​ 
-pentru [[https://​musclewiki.com/​machine/​male/​triceps/​machine-chest-press/​|**Machine Chest Press**]].+pentru [[https://​musclewiki.com/​machine/​male/​triceps/​machine-chest-press/​|Machine Chest Press]].
  
-<!-- Ce face si care este scopul lui: --> +Dispozitivul meu va avea următoarele funcționalități
-Dispozitivul meu va avea urmatoarele functionalitati+    Numără repetările/​pauzele ​făcute ​la acest aparat, ​alături ​de durata lor 
-Numara repetarile/​pauzele ​facute ​la acest aparat, +    Redă muzică în timpul antrenamentului  
-  alaturi ​de durata lor +    Motivează ​utilizatorii ​în momente de inactivitate, prin redarea unor mesaje ​audio inspiraționale ​(ex. **David Goggins**) 
-Reda muzica in timpul antrenamentului +    Stimulează ​utilizatorii ​să facă măcar ​3 seturi de 8 repetări, cu pauze maxim 45 de secunde 
-Motiveaza ​utilizatorii ​in momente de inactivitatea, +    Simulează ​accesul la o sală de fitness pe bază de cartelă
-  ​prin redarea unor mesake ​audio inspirationale ​(ex. **David Goggins**) +
-Stimuleaza ​utilizatorii ​sa faca macar 3 seturi de 8 repetari, +
-  ​cu pauze maxim 45 de secunde +
-Simuleaza ​accesul la o sala de fitness pe baza unei cartele+
  
-<!-- Ideea de la care am pornit: --> +Am găsit inspirație ​pentru acest proiect la sală
-Am gasit inspiratie ​pentru acest proiect la sala+Aici, cel mai important e să te concentrezi pe exercițiul ​efectiv, nu să stai -ți numeri ​repetările.
-Aici, cel mai important e sa te concentrezi pe exercitiul ​efectiv, +
-nu sa stai sa-ti numeri ​repetarile.+
  
-<​!-- ​De ce cred ca este util pentru altii si pentru mine: --> +Deși pare un task simplu, ​să ai pe cineva (sau **ceva**) care să facă asta pentru tine este o mare diferență.
-Desi pare un task simplu, +
-sa ai pe cineva (sau **ceva**) care sa faca asta pentru tine este o mare diferenta.+
  
-Mai ales daca iti impinge ​limitele la maxim prin mesaje ​motivationale ​precum +Mai ales dacă îți împinge ​limitele la maxim prin mesaje ​motivaționale ​precum 
-*"mai poti inca 3"**"hai inca una"* sau clasicul ​*"Who's gonna carry the boats?"*+''​mai poți încă ​3''​''​hai încă ​una''​, sau clasicul ​''​Who's gonna carry the boats?''​
-Aduce energia care te face sa nu renunti.+Aduce energia care te face să nu renunți.
  
-Consider ​ca dispozitivul meu este ideal pentru persoanele care vin singure +Consider ​că dispozitivul meu este ideal pentru persoanele care vin singure 
-la sala si nu au pe nimeni care sa faca asta pentru ei.+la sală și nu au pe nimeni care să facă asta pentru ei.
  
 +<note tip>
 +Având în vedere poziționarea senzorilor,
 +proiectul meu poate monitoriza DOAR exercițiul de [[https://​musclewiki.com/​machine/​male/​triceps/​machine-chest-press/​|Machine Chest Press]],
 +un exercițiu simplu în care doar trebuie să împingi o bară în față.
 +</​note>​
  
-> Avand in vederea pozitionarea senzorilor, 
-> proiectul meu poate monitoriza DOAR exercitiul de [**Machine Chest Press**](https://​musclewiki.com/​machine/​male/​triceps/​machine-chest-press/​),​ 
-> un exercitiu simplu in care doar trebuie sa impingi o bara in fata. 
- 
- 
- 
- 
-===== Descriere generala ===== 
  
 +===== Descriere generală =====
  
  
 ==== Schema bloc ==== ==== Schema bloc ====
  
-![img](./​Images/​PM-Project-schema-bloc.jpg)+{{:​pm:​prj2025:​ajipa:​gym_assistant_PM-Project-schema-bloc.jpg?600}}
  
  
-Diagrama a fost realizata in [draw.io](https://​app.diagrams.net/​). +Diagrama a fost realizată în [[https://​app.diagrams.net/​|draw.io]].
  
 ==== Audio Files ==== ==== Audio Files ====
  
-Pentru a descarca ​melodii de pe YouTube drept fisiere ​**MP3**, am fosolosit+Pentru a descărca ​melodii de pe YouTube drept fișiere ​**MP3**, am folosit
-<https://​y2mate.nu/​en-CVeZ/​>+  * https://​y2mate.nu/​en-CVeZ/​
  
-Pentru a transforma **MP3**-urile ​in fisiere ​**WAV**, am folosit: +<note tip> 
-<https://​audio.online-convert.com/​convert-to-wav>​+Pentru a transforma **MP3**-urile ​în fișiere ​**WAV**, am folosit: 
 +  * https://​audio.online-convert.com/​convert-to-wav 
 +</note>
  
 +Opțiunile folosite la convertirea **MP3 -> WAV**:
 +  * Bit resolution: **8 bit**
 +  * Audio frequency: **16 kHz**
 +  * Audio channels: **Mono**
  
-Optiunile folosite la convertirea **MP3 -> WAV**: +Înainte de a pune fișierele audio pe microSD, 
-Bit resolution: ​**8 bit** +am formatat cardul în modul **FAT32** 
-* Audio frequency: **16 kHz** +și am denumit fișierele corespunzător.
-* Audio channels: **Mono**+
  
- +<note warning> 
-Inainte de a pune fisierele audio pe microSD, +**⚠️ ​Atenție!** Sistemele de fișiere ​**FAT** folosesc ​convenția [[https://​en.wikipedia.org/​wiki/​8.3_filename|8.3 filename]]
-am formatat cardul in modul **FAT32** +ceea ce înseamnă că denumirea ​fișierelor
-si am denumit fisierele corespunzator. +  * nu poate avea mai mult de **8** caractere ​înainte ​de punct 
- +  * maxim **3** caractere pentru extensie 
-⚠️ ​Atentie! Sistemele de fisiere ​**FAT** folosesc ​conventia ​[8.3 filename](https://​en.wikipedia.org/​wiki/​8.3_filename+</​note>​
-(*also called a **short ​filename** or **SFN***)+
-ceea ce inseamna ca denumirea ​fisierelor+
-* nu poate avea mai mult de **8** caractere ​inainte ​de punct +
-* maxim **3** caractere pentru extensie+
  
 ==== Conectarea butoanelor ==== ==== Conectarea butoanelor ====
  
-Data Sheet Push-Buttons:​ <https://​wiki-content.arduino.cc/​documents/​datasheets/​Button.pdf> +  ​[[https://​wiki-content.arduino.cc/​documents/​datasheets/​Button.pdf|Data Sheet Push-Buttons]] 
-<https://​components101.com/​switches/​push-button>+  [[https://​components101.com/​switches/​push-button|Push-button info]]
  
-<img src="https://​components101.com/​sites/​default/​files/​component_pin/​Push-button-Pinout.gif" height=250px width=auto>​+{{https://​components101.com/​sites/​default/​files/​component_pin/​Push-button-Pinout.gif?250x}}
  
 +<note tip>
 +Picioarele care formează o linie sunt **direct conectate**.
 +</​note>​
  
-> Picioursele care formeaza o line sunt **direct conectate**.+Înainte de a face cablajul între butoanele de pe cutie și breadboard,​ 
 +am făcut următoarele ​*"​simulări"​în TinkerCAD. 
 +Așa trebuie să arate conexiunea cu un push-button:​
  
-Inainte de a face cablajul intre butoanele de pe cutie si breadboard,​ +{{:​Images:​vertical-button.png?250x}} 
-am facut urmatoarele *"​simulari"​* in TinkerCAD+{{:Images:​horizontal-button.png?​250x}}
-Asa trebuie sa arate conexiunea cu un push-buton:+
  
-<img src="​./​Images/​vertical-button.png"​ height=250px width=auto>​ +Exemplu cod (basic) pentru a detecta apăsarea butonului:
-<img src="​./​Images/​horizontal-button.png"​ height=250px width=auto>​+
  
- +<​code ​cpp>
-Exemplu cod (basic) pentru a detecta apasarea butonului:​ +
- +
- +
-```cpp+
 #define PIN_BUTTON 3 #define PIN_BUTTON 3
  
Line 110: Line 100:
 { {
   if (digitalRead(PIN_BUTTON) == LOW) {   if (digitalRead(PIN_BUTTON) == LOW) {
-  Serial.println("​butonul a fost apasat!"​);​+    ​Serial.println("​butonul a fost apasat!"​);​
   }   }
   delay(100);   delay(100);
 } }
-``` +</​code>​
  
 ===== Hardware Design ===== ===== Hardware Design =====
- 
- 
  
 ==== Lista piese ==== ==== Lista piese ====
  
-Arduino UNO R3 +  * Arduino UNO 
-4 x [push-buttons](https://​ardushop.ro/​ro/​butoane--switch-uri/​713-buton-mic-push-button-trough-hole-6427854009050.html) +  ​* ​4 x [[https://​ardushop.ro/​ro/​butoane--switch-uri/​713-buton-mic-push-button-trough-hole-6427854009050.html|push-buttons]] 
-Ecran LCD 16x2 cu modul I2C +  ​* ​Ecran LCD 16x2 cu modul I2C 
-- Rezistente ​220Ω +  * Rezistențe ​220Ω 
-[MicroSD Module](https://​ardushop.ro/​ro/​module/​1553-groundstudio-microsd-module-6427854023056.html?​gad_source=1&​gbraid=0AAAAADlKU-7r0Viay1-t361QlB21iOgs0&​gclid=Cj0KCQjwqv2_BhC0ARIsAFb5Ac84XfsbeL3-M0mj8zEMxlvniXkfdQ1SGlEzoFS0otF-lMW6SyWNGnUaAvFmEALw_wcB) +  * [[https://​ardushop.ro/​ro/​module/​1553-groundstudio-microsd-module-6427854023056.html|MicroSD Module]] 
-[Card MicroSD 16 GB](https://​www.optimusdigital.ro/​ro/​memorii/​8678-card-microsd-original-de-16-gb-cu-noobs-compatibil-cu-raspberry-pi-4-model-b-varianta-bulk.html?​search_query=%090104110000057297%09&​results=1) +  * [[https://​www.optimusdigital.ro/​ro/​memorii/​8678-card-microsd-original-de-16-gb-cu-noobs-compatibil-cu-raspberry-pi-4-model-b-varianta-bulk.html|Card MicroSD 16 GB]] 
-  ​- ​Nu am gasit un card mai mic 🙁 +    ​* ​Nu am găsit ​un card mai mic 🙁 
-[Speaker for Micro:bit](https://​www.emag.ro/​modul-difuzor-waveshare-36-52x43-44-mm-compatibil-cu-micro-bit-arduino-speakerformicro-bitwaveshare14542/​pd/​D785XQMBM/?​ref=history-shopping_418333718_138738_1) +  * [[https://​www.emag.ro/​modul-difuzor-waveshare-36-52x43-44-mm-compatibil-cu-micro-bit-arduino-speakerformicro-bitwaveshare14542/​pd/​D785XQMBM|Speaker for Micro:bit]] 
-  ​- ​Cred ca erau si alte optiuni ​mult mai ieftine 🙂 +    ​* ​Cred că erau și alte opțiuni ​mult mai ieftine 🙂 
-[Stabilizator de 3.3 V](https://​www.optimusdigital.ro/​ro/​electronica-de-putere-stabilizatoare-liniare/​168-modul-cu-sursa-de-alimentare-de-33-v.html?​search_query=0104110000000521&​results=1) ​(pentru Vin al Speaker-ului) +  * [[https://​www.optimusdigital.ro/​ro/​electronica-de-putere-stabilizatoare-liniare/​168-modul-cu-sursa-de-alimentare-de-33-v.html|Stabilizator de 3.3 V]] (pentru Vin al Speaker-ului) 
-2 x [Senzor ultrasonic HC-SR04](https://​www.optimusdigital.ro/​ro/​senzori-senzori-ultrasonici/​9-senzor-ultrasonic-hc-sr04-.html?​search_query=0104110000000866&​results=1) +  ​* ​2 x [[https://​www.optimusdigital.ro/​ro/​senzori-senzori-ultrasonici/​9-senzor-ultrasonic-hc-sr04-.html|Senzor ultrasonic HC-SR04]] 
-[Breadboard 830 puncte](https://​www.optimusdigital.ro/​ro/​prototipare-breadboard-uri/​8-breadboard-830-points.html?​search_query=breadboard+830&​results=15) +  * [[https://​www.optimusdigital.ro/​ro/​prototipare-breadboard-uri/​8-breadboard-830-points.html|Breadboard ​830 puncte]] 
-[Fire Colorate Mamă-Tată](https://​www.optimusdigital.ro/​ro/​fire-fire-mufate/​878-set-fire-mama-tata-40p-30-cm.html?​search_query=Fire+Colorate&​results=49) +  * [[https://​www.optimusdigital.ro/​ro/​fire-fire-mufate/​878-set-fire-mama-tata-40p-30-cm.html|Fire Colorate ​Mamă-Tată]
-- [Fire Colorate Tată-Tată](https://​www.optimusdigital.ro/​ro/​fire-fire-mufate/​890-set-fire-tata-tata-40p-30-cm.html?​search_query=Fire+Colorate&​results=49) +  * [[https://​www.optimusdigital.ro/​ro/​fire-fire-mufate/​890-set-fire-tata-tata-40p-30-cm.html|Fire Colorate ​Tată-Tată]
-[Modul RFID RC522](https://​www.optimusdigital.ro/​ro/​wireless-rfid/​67-modul-cititor-rfid-mfrc522.html?​search_query=rfid&​results=37) +  * [[https://​www.optimusdigital.ro/​ro/​wireless-rfid/​67-modul-cititor-rfid-mfrc522.html|Modul RFID RC522]]
- +
  
 ==== Schema circuit ==== ==== Schema circuit ====
  
-![img](./​Images/​circuit_design.png+{{:​pm:​prj2025:​ajipa:​gym_assistant_circuit_design.png?600}}
  
-> Schema a fost realizata in [Cirkit Designer IDE](https://​app.cirkitdesigner.com/​).+<note tip> 
 +Schema a fost realizată în [[https://​app.cirkitdesigner.com/​|Cirkit Designer IDE]]. 
 +</​note>​
  
  
pm/prj2025/ajipa/bogdan.trifan2412.1746166354.txt.gz · Last modified: 2025/05/02 09:12 by bogdan.trifan2412
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