Differences

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

Link to this comparison view

pm:prj2023:ncaroi:theremin [2023/04/29 18:01]
stefan.magirescu [Rezultate Obţinute]
pm:prj2023:ncaroi:theremin [2023/05/29 21:20] (current)
stefan.magirescu [Rezultate Obţinute]
Line 2: Line 2:
 ===== Introducere ===== ===== Introducere =====
  
-La modul general, theremin-ul este un instrument electronic actionat prin apropierea mainilor de doua tije metalice. Functioneaza pe principiul campului electric dintre tije si mainile artistului care formeaza un condensator. Traditional vorbind, theremin-ul urca si coboara in pitch in maniera continua, neavand posibilitatea sa reproduca ​scari muzicale decat prin intermediul unei actionari precise. Acestea fiind spuse, de la varianta initiala patentata in 1928, au aparut diverse alte implementari,​ dintre care de interes este cea a firmei de sintetizatoare Moog: +La modul general, theremin-ul este un instrument electronic actionat prin apropierea mainilor de doua tije metalice. Functioneaza pe principiul campului electric dintre tije si mainile artistului care formeaza un condensator. Traditional vorbind, theremin-ul urca si coboara in pitch in maniera continua, neavand posibilitatea sa reproduca ​game muzicale decat prin intermediul unei actionari precise. Acestea fiind spuse, de la varianta initiala patentata in 1928, au aparut diverse alte implementari,​ dintre care de interes este cea a firmei de sintetizatoare Moog: 
 https://​www.thomann.de/​ro/​moog_theremini.htm?​glp=1&​gclid=Cj0KCQjwgLOiBhC7ARIsAIeetVDaKhzZaq6mZ4_InQ-u-zvjAsvgWeDArAeIOMtrJnRAeyeYFO5b75waAhu8EALw_wcB https://​www.thomann.de/​ro/​moog_theremini.htm?​glp=1&​gclid=Cj0KCQjwgLOiBhC7ARIsAIeetVDaKhzZaq6mZ4_InQ-u-zvjAsvgWeDArAeIOMtrJnRAeyeYFO5b75waAhu8EALw_wcB
  
-Acest theremin este capabil sa ia scari muzicale dupa cum este selectat de utilizator, astfel incat, pana si cel mai afon utilizator va suna delicios :)+Acest theremin este capabil sa ia game muzicale dupa cum este selectat de utilizator, astfel incat, pana si cel mai afon utilizator va suna delicios :)
  
 In acest sens, m-am gandit sa construiesc si eu un theremin capabil de a selecta intre diverse moduri de cantat, insa bazandu-mi implementarea pe senzori ultrasonici in locul antenelor, acesta fiind si elementul de noutate fata de implementarile (mediocre, daca imi este permis) de pe net. De asemenea, este mai ieftin cu vreo 2000 de lei fata de thereminul din link :D In acest sens, m-am gandit sa construiesc si eu un theremin capabil de a selecta intre diverse moduri de cantat, insa bazandu-mi implementarea pe senzori ultrasonici in locul antenelor, acesta fiind si elementul de noutate fata de implementarile (mediocre, daca imi este permis) de pe net. De asemenea, este mai ieftin cu vreo 2000 de lei fata de thereminul din link :D
Line 16: Line 16:
  
 <note tip> <note tip>
-Aici puneţi tot ce ţine de hardware design+Lista piese
-  * listă de piese +  * 2 x Arduino Uno 
-  * scheme electrice ​(se pot lua şi de pe Internet şi din datasheet-uri,​ e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png+  * 2 x senzor ultrasonic 
-  * diagrame de semnal ​ +  * LCD 4*16 
-  * rezultatele simulării+  * encoder module 
 +  * Sparkfun Musical Instrument Shield 
 +  * MCP4131 ​(potentiometru digital
 +  * potentiometru 10K linear (logaritmic ar fi fost mai bine dar csf) 
 +  * output jack 
 +  * power jack 
 +  * SPDT power switch 
 +  * PCB
 </​note>​ </​note>​
 +
 +{{:​pm:​prj2023:​ncaroi:​1.png?​300 |}}
 +{{:​pm:​prj2023:​ncaroi:​2.png?​300 |}}
  
 ===== Software Design ===== ===== Software Design =====
  
 +Folosesc API-urile de la fiecare modul (encoder, LCD, senzor ultrasonic, Sparkfun).
 +Cu functia map, distribui distanta dintre maini si senzor la 1-2 octave si respectiv la volum 0-100%.
 +Fiecare scara si mod muzical am ales sa le reprezint prin array-uri de 0 si 1, unde 0 este un semiton, iar 1 este un ton. De exemplu, gama majora (ttsttts) devine 1101110. Fiecare nota este calculata pe baza formulei Freq = note x 2^(N/12), N fiind al catelea semiton vrem sa il calculam.
  
-<note tip> +Meniul initial ne permite sa alegem intre tonalitatea dorita ​(do, re, mi, la#, sib etc.si gama dorita ​(ionian, phrygianharmonic minor, hungarian minor etc.)
-Descrierea codului aplicaţiei ​(firmware)+
-  * mediu de dezvoltare ​(if any) (e.g. AVR StudioCodeVisionAVR) +
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +
-  * (etapa 3surse şi funcţii implementate +
-</​note>​+
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-Still building B)+Proiectul a iesit asa cum mi-am dorit si suna bine :D Cum n-as putea reproduce asta in imagini, pls take my word for it :)
 + 
 +Obs. singura treaba putin enervanta este ca butonul encoder nu prezinta filet, ceea ce nu imi permite sa il fixez cum trebuie de cutia PVC 
 {{ :​pm:​prj2023:​ncaroi:​20230429_173953.jpg?​600 |}} {{ :​pm:​prj2023:​ncaroi:​20230429_173953.jpg?​600 |}}
- 
 ===== Concluzii ===== ===== Concluzii =====
  
-===== Download =====+O initiativa cool, mi-as fi dorit sa fi avut mai multe astfel de proiecte in facultate!
  
-<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ă ;-). 
- 
-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>​ 
  
 +{{:​pm:​prj2023:​ncaroi:​65650864_625011761325794_1356296267726061568_n.jpg?​600| }}
 +===== Download =====
 +Descarca sursele: {{:​pm:​prj2023:​ncaroi:​coduri.zip|
 +}}
 ===== Jurnal ===== ===== Jurnal =====
  
pm/prj2023/ncaroi/theremin.1682780513.txt.gz · Last modified: 2023/04/29 18:01 by stefan.magirescu
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