Differences

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

Link to this comparison view

pm:prj2023:apredescu:theremin [2023/05/07 14:55]
ioan_daniel.arghira [Introducere]
pm:prj2023:apredescu:theremin [2023/05/25 18:53] (current)
ioan_daniel.arghira [Software Design]
Line 9: Line 9:
 Și se va folosi de un senzor care măsoară distanța dintre instrumentist și instrument, ​ Și se va folosi de un senzor care măsoară distanța dintre instrumentist și instrument, ​
 în funcție de care se va alege nota muzicală ce trebuie redată în momentul respectiv. în funcție de care se va alege nota muzicală ce trebuie redată în momentul respectiv.
 +
 +Ideea de la care am pornit a fost aceea de instrument muzical electronic, și a evoluat pe parcurs. Consider că acest proiect este util întrucât reprezintă un instrument care nu necesită o pregătire specială pentru a-l folosi, putând fi utilizat cu ușurință.
 </​note>​ </​note>​
 ===== Descriere generală ===== ===== 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ă. 
  
-Exemplu ​de schemă blochttp://​www.robs-projects.com/​mp3proj/​newplayer.html+* Arduino Uno - placa de dezvoltare Arduino care va controla semnalul emis de senzorul de distanță 
 + 
 +* Senzor de distanță - acesta va detecta poziția mâinii utilizatorului și va genera semnale de ieșire corespunzătoare 
 + 
 +* Buzzer - va emite sunetul generat de semnalul Arduino 
 + 
 +* Rezistențe - vor fi necesare pentru a limita curentul care trece prin buzzer și LED-uri 
 + 
 +* Breadboard - va fi necesară pentru a conecta componentele între ele 
 + 
 +* Jumper Wires - vor fi necesare pentru a conecta componentele la breadboard și Arduino 
 + 
 +{{:pm:prj2023:​apredescu:​schema_bloc_theremin.png?500|}}
 </​note>​ </​note>​
  
Line 21: Line 34:
  
 <note tip> <note tip>
-Aici puneţi tot ce ţine de hardware design: +Listă inițială de piese: 
-  * listă de piese + 
-  * scheme electrice ​(se pot lua şi de pe Internet şi din datasheet-urie.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png) +-Microcontroller Arduino Uno R3 
-  * diagrame de semnal ​ + 
-  * rezultatele simulării+-Buzzer, Piezo 
 + 
 +-Ultrasonic Sensor - HC-SR04 ​(Generic) 
 + 
 +-Jumper wires (generic)male/female wires 
 + 
 +-Butoane 
 + 
 +-Rezistoare pentru limitarea curentului 
 + 
 +Alimentarea se va face direct de la calculator prin intermediul conexiunii USB. 
 + 
 +{{:​pm:​prj2023:​apredescu:​screenshot_2023-05-16_235358.png?600|}} 
 + 
 +{{:​pm:​prj2023:​apredescu:​untitled.jpg?​300|}} 
 </​note>​ </​note>​
  
Line 32: Line 60:
  
 <note tip> <note tip>
-Descrierea codului aplicaţiei (firmware):​ +Aplicația va fi realizată utilizând mediul ​de dezvoltare ​Arduino IDE
-  * mediu de dezvoltare ​(if any) (e.g. AVR Studio, CodeVisionAVR) + 
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +Ca si biblioteci aditionale se foloseste LiquidCrystal_I2C si Wire
-  * algoritmi şstructuri ​pe care plănuiţi să le implementaţi + 
-  ​* ​(etapa 3surse şi funcţii implementate+Codul scris va fi în limbajul C șva fi încărcat direct ​pe plăcuță. 
 + 
 +S-a implementat o metodă de aproximare a notelor care trebuie redate, întrucât măsurarea distanței va avea erori. 
 + 
 +In partea de setup, pe langa initializarea datelor, se asteapta 5 secunde pentru a se inregistra distanta maxima fata de Theremin. Distanta maxima inregistrata initial sau o distanta mai mare va corespunde celei mai inalte note din scala aleasa. 
 + 
 +La fiecare pas se aproximeaza nota care trebuie cantata in acel moment. La distante mai mici de senzor se canta note mai joase. 
 + 
 +Exista un buton care este tratat ca si o intrerupere. Atunci cand acesta este apasat, se schimba scala (din A minor in C major si invers)
 + 
 +Atat scala cat si nota cantata la un moment dat este afisata pe LCD. 
 + 
 +Daca mana instrumentistului ramane la aceeasi distanta fata de senzor, se canta nota respectiva, se asteapta un mic delay, si dupa aceeasi nova va fi cantata iar. Rolul delay-ului respectiv este de a face sunetul produs mai placut, si acest delay se regaseste intre fiecare doua note cantate una dupa alta. 
 + 
 +{{:​pm:​prj2023:​apredescu:​arghira_ioan_daniel.zip|}} 
 </​note>​ </​note>​
  
pm/prj2023/apredescu/theremin.1683460503.txt.gz · Last modified: 2023/05/07 14:55 by ioan_daniel.arghira
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