Differences

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

Link to this comparison view

pm:prj2026:ciprian.popescu0411:clarisse.braviceanu [2026/05/09 03:40]
clarisse.braviceanu created
pm:prj2026:ciprian.popescu0411:clarisse.braviceanu [2026/05/17 01:54] (current)
clarisse.braviceanu [Hardware Design]
Line 1: Line 1:
-====== ​AeroBeat ​======+======Aero Beat ======
 ===== Introducere ===== ===== Introducere =====
- 
 <note tip> <note tip>
 Prezentarea pe scurt a proiectului vostru: Prezentarea pe scurt a proiectului vostru:
Line 9: Line 8:
   * de ce credeţi că este util pentru alţii şi pentru voi   * de ce credeţi că este util pentru alţii şi pentru voi
 </​note>​ </​note>​
-===== Descriere generală ===== 
  
 +**Aero Beat** este un instrument muzical virtual care simulează o baterie reală folosind
 +două bețe de tobă echipate cu senzori de mișcare. Fiecare bată conține un modul
 +giroscop + accelerometru (GY-521 / MPU-6050) montat pe vârf, care detectează direcția
 +și intensitatea loviturii în aer. În funcție de gestul efectuat, sistemul identifică
 +una dintre cele 3 tobe virtuale asociate fiecărei bețe (stânga, mijloc, dreapta) și
 +redă în timp real sunetul corespunzător printr-un amplificator de chitară. Simultan, un LED RGB se
 +aprinde și o aplicație mobilă evidențiază vizual toba lovită sau chiar oferind un joc de tip wack-a-mole sau PianoTiles.
 +
 +**Ce face:**
 +Cântărețul ține câte o bată în fiecare mână și efectuează lovituri în aer.
 +Sistemul detectează lovitura, identifică toba vizată pe baza direcției de mișcare,
 +redă sunetul corespunzător,​ aprinde LED-ul RGB și trimite informația către o aplicație
 +mobilă care afișează vizual toba activată. Exista si un buton care schimba genul tobelor (jazz, rock etc.)
 +
 +**Scopul proiectului:​**
 +Crearea unui instrument de percuție virtual care să ofere experiența cântatului la
 +tobe fără a necesita o baterie fizică — fără zgomot mecanic, fără spațiu ocupat și
 +fără a deranja pe nimeni din jur.
 +
 +**Ideea de la care am pornit:**
 +Mereu mi-am dorit să cânt la tobe, însă locuiesc la apartament și am vecini cu copil mic.
 +O baterie reală este scumpă, voluminoasă și, cel mai important, extrem de zgomotoasă.
 +Mi-am propus să construiesc un sistem care să îmi ofere aceeași experiență fără să
 +deranjez pe nimeni.
 +
 +**De ce este util:**
 +  * Pentru muzicieni începători sau avansați care vor să exerseze fără investiție
 +    majoră în echipament și fără probleme de zgomot
 +  * Pentru persoanele care locuiesc la apartament sau în spații unde zgomotul este
 +    o problemă reală (copii mici, vecini, program de noapte)
 +    ​
 +===== Descriere generală =====
 <note tip> <note tip>
 O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează. O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează.
- 
 Exemplu de schemă bloc: http://​www.robs-projects.com/​mp3proj/​newplayer.html Exemplu de schemă bloc: http://​www.robs-projects.com/​mp3proj/​newplayer.html
 </​note>​ </​note>​
 +{{:​pm:​prj2026:​ciprian.popescu0411:​image_2026-05-09_042252584.png?​600|}}
  
-===== Hardware Design ===== 
  
 +===== Hardware Design =====
 <note tip> <note tip>
 Aici puneţi tot ce ţine de hardware design: Aici puneţi tot ce ţine de hardware design:
Line 27: Line 57:
 </​note>​ </​note>​
  
-===== Software Design =====+**Listă de piese:** 
 +  * ATmega328P Xplained Mini — microcontroler principal 
 +  * 2x GY-521 (MPU-6050) — senzori giroscop + accelerometru 3 axe, montați pe vârful betelor 
 +  * 2 x DFPlayer Mini + card SD — modul redare audio, fișiere .mp3 cu sunete de tobă 
 +  * Modul Bluetooth HC-05 
 +  * Display LCD1602 HD44780 
 +  * LED RGB (anod comun sau catod comun) 
 +  * Amplificator de chitară — output audio 
 +  * Modul jack 3.5mm + adaptor jack 3.5mm → 6.35mm — conectare la amplificator 
 +  * 2x bețe de tobă (suport fizic pentru senzori) 
 +  * Rezistoare, fire, breadboard / PCB, buton
  
 +**Schema electrica:​**
  
 +{{:​pm:​prj2026:​ciprian.popescu0411:​sch_schematic1_1-p1_2026-05-17.png?​600|}}
 +
 +
 +
 +^ Componenta ^ Pin componenta ^ Conectare ^
 +| ATmega328P Xplained Mini | PC4 / SDA | Bus I2C Date (spre MPU-6050 și LCD) |
 +| ATmega328P Xplained Mini | PC5 / SCL | Bus I2C Ceas (spre MPU-6050 și LCD) |
 +| ATmega328P Xplained Mini | PD4 (UART TX) | RX DFPlayer (prin rezistor 1kΩ) |
 +| ATmega328P Xplained Mini | PD5 (UART RX) | TX DFPlayer |
 +| ATmega328P Xplained Mini | PD6 (SoftSerial TX) | RXD HC-05 (Bluetooth) |
 +| ATmega328P Xplained Mini | PD7 (SoftSerial RX) | TXD HC-05 (Bluetooth) |
 +| ATmega328P Xplained Mini | PB5 | LED on-board |
 +| ATmega328P Xplained Mini | 5V (J202-5) | Alimentare module (5V) |
 +| ATmega328P Xplained Mini | 3.3V (J202-4) | Pin AD0 MPU-6050 #2 |
 +| ATmega328P Xplained Mini | GND (J202-6) | Masă comună (GND) |
 +
 +^ Componenta ^ Pin componenta ^ Conectare ^
 +| MPU-6050 #1 (Bâta stângă) | VDD | 5V |
 +| MPU-6050 #1 (Bâta stângă) | GND | Masă comună (GND) |
 +| MPU-6050 #1 (Bâta stângă) | SDA | PC4 ATmega328P |
 +| MPU-6050 #1 (Bâta stângă) | SCL | PC5 ATmega328P |
 +| MPU-6050 #1 (Bâta stângă) | AD0 | Masă comună (GND) |
 +
 +^ Componenta ^ Pin componenta ^ Conectare ^
 +| MPU-6050 #2 (Bâta dreaptă) | VDD | 5V |
 +| MPU-6050 #2 (Bâta dreaptă) | GND | Masă comună (GND) |
 +| MPU-6050 #2 (Bâta dreaptă) | SDA | PC4 ATmega328P |
 +| MPU-6050 #2 (Bâta dreaptă) | SCL | PC5 ATmega328P |
 +| MPU-6050 #2 (Bâta dreaptă) | AD0 | 3.3V ATmega328P |
 +
 +^ Componenta ^ Pin componenta ^ Conectare ^
 +| DFPlayer Mini | VCC | 5V |
 +| DFPlayer Mini | GND | Masă comună (GND) |
 +| DFPlayer Mini | RX | PD4 ATmega328P (prin rezistor 1kΩ) |
 +| DFPlayer Mini | TX | PD5 ATmega328P |
 +| DFPlayer Mini | DAC_R | Pin R (Ring) Jack 3.5mm (prin rezistor 100Ω) |
 +| DFPlayer Mini | DAC_L | Pin L (Tip) Jack 3.5mm (prin rezistor 100Ω) |
 +
 +^ Componenta ^ Pin componenta ^ Conectare ^
 +| Modul Jack TRRS 3.5mm | R (Ring) | DAC_R DFPlayer (prin rezistor 100Ω) |
 +| Modul Jack TRRS 3.5mm | L (Tip) | DAC_L DFPlayer (prin rezistor 100Ω) |
 +| Modul Jack TRRS 3.5mm | GND (Sleeve) | GND DFPlayer |
 +
 +^ Componenta ^ Pin componenta ^ Conectare ^
 +| Rezistor 1kΩ | Capăt 1 | PD4 ATmega328P |
 +| Rezistor 1kΩ | Capăt 2 | RX DFPlayer Mini |
 +| Rezistor 100Ω (Canal Drept) | Capăt 1 | DAC_R DFPlayer Mini |
 +| Rezistor 100Ω (Canal Drept) | Capăt 2 | Pin R (Ring) Modul Jack TRRS |
 +| Rezistor 100Ω (Canal Stâng) | Capăt 1 | DAC_L DFPlayer Mini |
 +| Rezistor 100Ω (Canal Stâng) | Capăt 2 | Pin L (Tip) Modul Jack TRRS |
 +
 +{{:​pm:​prj2026:​ciprian.popescu0411:​image_2026-05-17_015303140.png?​400|}}
 +
 +
 +**Descrierea Arhitecturii Hardware**
 +
 +Inima sistemului este placa de dezvoltare ATmega328P Xplained Mini, care face prelucrarea semnalelor pentru detectarea loviturilor și trimiterea comenzilor audio. Placa furnizează atât tensiunea de 5V pentru alimentarea principală a modulelor, cât și tensiunea de 3.3V, folosită strict ca referință logică de adresare pentru unul dintre senzori.
 +
 +Pentru detectarea mișcărilor și a unghiurilor de înclinare ale bețelor, sistemul utilizează două module inerțiale MPU-6050 (giroscop și accelerometru). Deoarece ambele module folosesc protocolul I2C și împart aceleași linii fizice de date (SDA pe PC4 și SCL pe PC5), a fost necesară configurarea unor adrese hardware diferite: pinul AD0 al senzorului de pe bâta stângă este conectat la GND (setând adresa la 0x68), în timp ce pinul AD0 al senzorului de pe bâta dreaptă este conectat la 3.3V (setând adresa la 0x69). Acest procedeu permite microcontrolerului să comunice independent cu ambele bețe în timp real, pe aceeași magistrală.
 +
 +Generarea și redarea sunetelor sunt realizate de un modul DFPlayer Mini cu card SD. Acesta comunică asincron prin interfața UART hardware cu ATmega328P (folosind pinii PD4 și PD5). Pentru a proteja pinul RX al DFPlayer-ului (care este conceput pentru niveluri logice de 3.3V) de semnalele logice de 5V emise de ATmega328P, a fost introdus un rezistor de protecție de 1kΩ pe linia de transmisie (TX spre RX).
 +
 +Ieșirea audio analogică este preluată de la pinii DAC_R și DAC_L ai DFPlayer-ului și dirijată către un modul Jack TRRS de 3.5mm prin intermediul a două rezistoare de 100Ω. Aceste rezistoare au dublu rol: limitează curentul de ieșire și protejează convertorul digital-analog al modulului MP3. Pentru a elimina interferențele și a rezolva problema buclelor de masă (ground loops) la conectarea spre un amplificator de chitară extern, pinul GND (Sleeve) al jack-ului a fost rutat direct la pinul GND dedicat al DFPlayer-ului,​ izolând astfel masa de semnal audio de masa generală a microcontrolerului. Sistemul hardware este scalabil și include deja alocarea pinilor (PD6/PD7) pentru implementarea unui modul Bluetooth HC-05 și folosirea pinilor existenți I2C pentru adăugarea unui ecran LCD 1602.
 +===== Software Design =====
 <note tip> <note tip>
 Descrierea codului aplicaţiei (firmware): Descrierea codului aplicaţiei (firmware):
Line 38: Line 143:
 </​note>​ </​note>​
  
-===== Rezultate Obţinute =====+**Mediu de dezvoltare:​** 
 +  * PlatformIO (VS Code) cu framework Arduino pentru ATmega328P 
 +  * Board: ATmega328P Xplained Mini, upload via xplainedmini programmer
  
 +**Librării folosite:**
 +  * Wire.h — comunicație I2C cu MPU-6050 (Lab 6)
 +  * Arduino.h — framework de bază
 +
 +===== Rezultate Obţinute =====
 <note tip> <note tip>
 Care au fost rezultatele obţinute în urma realizării proiectului vostru. Care au fost rezultatele obţinute în urma realizării proiectului vostru.
Line 47: Line 159:
  
 ===== Download ===== ===== Download =====
- 
 <note warning> <note warning>
 O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului:​ surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului:​ surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).
- 
 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**. 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**.
 </​note>​ </​note>​
  
 ===== Jurnal ===== ===== Jurnal =====
- 
 <note tip> <note tip>
 Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.
 </​note>​ </​note>​
  
-===== Bibliografie/​Resurse =====+  * Săptămâna 1: Alegerea componentelor,​ testare conectivitate I2C cu MPU-6050 
 +  * Săptămâna 2: Implementare algoritm de detecție lovitură, calibrare pe axa Y 
 +  * Săptămâna 4: Integrare DFPlayer Mini, LED RGB, aplicație mobilă (în progres, 50% done) 
 +  * Săptămâna 5: Integrare Ecran LED, buton pentru schimbarea genului tobelor, modul Bluetooth pentru conectivitate mai usoara intre boxa sau telefon (în progres)
  
 +
 +===== Bibliografie/​Resurse =====
 <​note>​ <​note>​
 Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**.
 </​note>​ </​note>​
  
-<​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​+**Resurse Hardware:​** 
 +  * MPU-6050 Product Specification — InvenSense 
 +  * ATmega328P Xplained Mini User Guide — Microchip (DS50002659B) 
 +  * DFPlayer Mini Datasheet — DFRobot 
 +  * GY-521 Module Schematic
  
 +
 +**Resurse Software:**
 +  * Arduino Wire Library Documentation — https://​www.arduino.cc/​en/​reference/​wire
 +  * PlatformIO Documentation — https://​docs.platformio.org
 +  * MPU-6050 Register Map — InvenSense RM-MPU-6000A
 +
 +<​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2026/ciprian.popescu0411/clarisse.braviceanu.1778287244.txt.gz · Last modified: 2026/05/09 03:40 by clarisse.braviceanu
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