This shows you the differences between two versions of the page.
pm:prj2022:bogdanc:theremin [2022/05/28 14:13] andrei.caraiman1807 [Descriere generală] |
pm:prj2022:bogdanc:theremin [2022/05/28 14:52] (current) andrei.caraiman1807 [Bibliografie/Resurse] |
||
---|---|---|---|
Line 13: | Line 13: | ||
Theremin, cunoscut si ca eterofon sau thereminofon este un instrument muzical electronic controlat fara interventia fizica a muzicianului. Denumirea sa provine de la fizicianul rus Lev Sergeyevich Termen, cunoscut si ca Léon Theremin ce a inventat acest instrument in 1919. Theremin folosea principiul heterodinei pentru a emite un semnal audio. Instrumentul contine 2 oscilatoare de radio frecventa. Un oscilator opereaza la frecventa fixa, pe cand cel de-al doilea va opera la o frecventa variabila in functie de miscarile muzicianului fata de antena. Mana muzicianului actioneaza ca o armatura a unui condensator variabil dintr-un circuit LC ce este parte a oscilatorului si determina frecventa sa. | Theremin, cunoscut si ca eterofon sau thereminofon este un instrument muzical electronic controlat fara interventia fizica a muzicianului. Denumirea sa provine de la fizicianul rus Lev Sergeyevich Termen, cunoscut si ca Léon Theremin ce a inventat acest instrument in 1919. Theremin folosea principiul heterodinei pentru a emite un semnal audio. Instrumentul contine 2 oscilatoare de radio frecventa. Un oscilator opereaza la frecventa fixa, pe cand cel de-al doilea va opera la o frecventa variabila in functie de miscarile muzicianului fata de antena. Mana muzicianului actioneaza ca o armatura a unui condensator variabil dintr-un circuit LC ce este parte a oscilatorului si determina frecventa sa. | ||
+ | Implementarea aleasa este una simplificata. Folosesc un senzor de distanta, care estimeaza distanta pana la un obiect(mana). In functie de aceasta, | ||
+ | se calculeaza o frecventa care va fi trimisa celor 6 buzzere. Cu cat distanta creste, cu atat nota este mai inalta, si invers. Senzorul infrarosu | ||
+ | detecteaza comenzile din telecomanda si poate modifica lungimea notelor (doime, patrime, optime) si octava. | ||
+ | |||
+ | {{:pm:prj2022:bogdanc:whatsapp_image_2022-05-28_at_2.25.57_pm.jpeg?300|}} | ||
- | {{:pm:prj2022:bogdanc:whatsapp_image_2022-05-13_at_8.17.57_pm.jpeg?200|}} | ||
</note> | </note> | ||
Line 24: | Line 28: | ||
- placuta de baza | - placuta de baza | ||
- | - transducer - senzor ultrasonic Velleman MA40A5R | + | - senzor de distanta |
- | - transmitter - emitator ultrasonic Velleman MA40A5S | + | - modul receptor infrarosu + telecomanda |
- | - un difuzor de 8 Ohm | + | - 6 buzzere |
- | - 17 rezistente | + | - 6 rezistente |
- | + | ||
- | - 14 condensatori | + | |
- | + | ||
- | - 4 diode | + | |
- | + | ||
- | - 3 tranzistori de audio-frecventa | + | |
- | + | ||
- | - 3 rezistente semi-reglabile multi-tura pentru reglaje | + | |
- | + | ||
- | - 2 amplificatoare operationale pentru amplificare si detectare de nivel | + | |
- | + | ||
- | - circuit logic NAND cu trigger Schmitt pentru generator ultrasonic | + | |
- | + | ||
- | Receptorul se conecteaza la chip pe o intrare (PA7) in convertorul analog digital (ADC) pentru ca micro-procesorul sa poata prelua datele ce sosesc de la senzor. Difuzorul se conecteaza la chip prin PWM (Pulse Width Modulation) pe pinul PD5 printr-un condensator de 100 uF. | + | |
- | + | ||
- | Schema electrica: | + | |
- | {{:pm:prj2022:bogdanc:whatsapp_image_2022-05-13_at_8.21.56_pm.jpeg?200|}} | + | |
+ | {{:pm:prj2022:bogdanc:image_2022-05-28_141509417.png?300|}} | ||
</note> | </note> | ||
Line 55: | Line 43: | ||
<note tip> | <note tip> | ||
- | Descrierea codului aplicaţiei (firmware): | + | Pentru a reprezenta notele muzicale, am folosit doi vectori de int-uri (tones1, tones2) - pentru doua octave. Comportamentul default este folosirea |
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | tones2. Dupa ce calculez distanta in functie de timpul primit de la senzor, alegem doar valorile sub 40cm, si vom alege o frecventa din vector |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | pe care o vom trimite la buzzer. Toate buzzerele sunt legate la pin-ul 12, pentru a avea aceeasi nota muzicala. Lungimea notei este reprezentata |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | de un delay, care initial este 125 = 1000 / 8 (nota este o optime). Cand nota este doime sau patrime, impartitorul va fi 2, respectiv 4. |
- | * (etapa 3) surse şi funcţii implementate | + | |
+ | Senzorul infrarosu receptioneaza semnale de la telecomanda, iar in functie de codul in hexa al semnalului, are 2 posibile actiuni: | ||
+ | - modificarea lungimii notei | ||
+ | - modificarea octavei | ||
</note> | </note> | ||
- | ===== Rezultate Obţinute ===== | ||
+ | ===== Concluzii ===== | ||
<note tip> | <note tip> | ||
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | Consider ca proiectul a fost util si interesant, iar timpul dedicat lui a fost placut. |
</note> | </note> | ||
- | |||
- | ===== Concluzii ===== | ||
- | |||
===== 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ă ;-). | + | {{:pm:prj2022:bogdanc:332cc_caraimanandrei_thereminpm.zip|}} |
- | + | ||
- | 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 ===== | ||
- | |||
- | <note tip> | ||
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | ||
- | </note> | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
<note> | <note> | ||
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | https://www.arduino.cc |
+ | |||
+ | https://ocw.cs.pub.ro/courses/pm | ||
</note> | </note> | ||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||