Gabriel BERCARU (78505) - Procesor efecte chitară

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Prezentarea pe scurt a proiectului:

  • Proiectul are ca scop realizarea unui procesor de efecte pentru chitară.
  • Mod de funcționare: semnalul generat de chitară este preluat și trecut printr-un circuit de modificare. Acesta poate efectua diverse operații pe semnal, producând la ieșire un semnal (sunet) diferit de cel inițial.
  • Am decis să lucrez la acest proiect datorită interesului față de domeniul procesărilor audio și cel al instrumentelor muzicale.
  • Consider că proiectul este important pentru a îmi consolida cunsotinele acumulate pe parcursul primelor laboratoare de PM (despre ATmega324). De asemenea, proiectul în stare finală este util pentru oricine poate cânta la chitară.

Descriere generală

Mai jos este prezentată schema bloc a proiectului:

Semnalul de intrare este captat prin intermediul unei mufe Jack și transmis pentru citire către ATmega324 (prin intermediul senzorilor analogici ai ADC-ului).

Va exista o ordine prestabilită a efectelor disponibile. Utilizatorul poate determina ce efect să fie aplicat asupra semnalului de intrare prin intermediul butoanelor:

  • Butonul de ciclare prin efecte, care trece la aplicarea următorului efect din secvența prestabilită;
  • Butonul de ciclare prin secvențele de efecte presetate-vor exista anumite secvențe speciale de efecte (corespunzătoare anumitor piese). Prin intermediul acestui buton se va trece la următoarea secvența preînregistrata (următoarea piesă);
  • Butonul de ciclare în cadrul unei secvențe-acesta controlează ce efect din cadrul unei secvențe este activ.

Piesa curentă / efectul curent vor fi afișate pe LCD.

Aplicarea fiecărui efect se va realiza prin trecerea semnalului captat printr-unul din circuitele de modificare existente. Selecția circuitului de modificare către care se va redirecta semnalul se face prin intermediul unui circuit de switching (4066) controlat de către microprocesor. Similar în cadrul ieșirii, un alt circuit de switching va decide care dintre intrările corespunzătoare fiecărui circuit de modificare va fi transmisă mai departe spre ieșire.

Este posibil ca înainte de redirectarea spre unul dintre circuitele de modificare, semnalul să trebuiască să fie amplificat, caz în care va fi introdus un etaj de amplificare (realizat cu un amplificator operațional LM386).

Hardware Design

În tabelul de mai jos sunt trecute piesele necesare:

Piese Cantitate
Placă de bază ATmega324 1
LCD Text 2 x 16 1
Mufă Jack 2
Butoane setări 3
Potenţiometru 10kΩ 1
Circuit switch bilateral (CD4066B) 2
Amplificator operaţional (LM386) 1
Baterie 9V 1
Tranzistor NPN (2N2222) 2
Tranzistor PNP (2N3906) 2
Diode cu comutare rapidă (1N914) 2
Condensator 22 pF 3
Condensator 32 pF 1
Condensator 47 pF 2
Condensator 0.1 uF 1
Condensator 25 uF 1
Condensator 1 mF 1
Rezistor 1 kΩ 2
Rezistor 8.2 kΩ 2
Rezistor 10 kΩ 8
Rezistor 18 kΩ 2
Rezistor 47 kΩ 1
Rezistor 100 kΩ 2
Rezistor 150 kΩ 1
Rezistor 560 kΩ 2

Schema electrică a proiectului

Întrucât fiecare efect va fi implementat prin intermediul unui circuit separat, vor fi alcătuite două circuite separate. Am împărțit schema principală în trei subscheme - una care prezintă modul de conectare al microprocesorului, captarea semnalului de intrare, amplificarea acestuia, controlul switch-urilor, redirectarea semnalului spre unul dintre circuitele de efect și transmiterea semnalului spre etajul de ieșire.

Celelalte două scheme prezintă circuitele de efect ce vor fi implementate.

Schemele electrice au fost realizate folosind un program disponibil online (EasyEDA).

Schema electrică principală:

Schema electrică pentru efectul 1:

Schema electrică pentru efectul 2:

Software Design

Pentru dezvoltare am folosit WinAVR.

Intrucat utilizatorul poate trimite comenzi catre procesorul de efecte doar prin intermediul butoanelor, in codul sursa am implementat o rutina pentru tratarea intreruperilor sosite pe porturile la care sunt legate butoanele.

Procesorul de efecte ofera doua moduri de lucru: unul in care se cicleaza prin lista de efecte disponibile, iar altul prin care se cicleaza printr-o lista predefinita de secvente de efecte.

Un efect este obtinut prin trecerea semnalului de la chitara printr-un switch (CD4066B). Intrucat am implementat 3 efecte, sunt folositi doar 3 * 3 + 2 = 11 pini din cei 14 disponibili pe un circuit CD4066B. 3 dintre pini vor comanda pe care canal va fi transmis semnalul de la chitara, pentru aplicarea efectului. Pinii de control de pe CD4066B vor fi legati la PD0, PD1 respectiv PD2. Doar unul dintre ei va permite transmisia semnalului mai departe, astfel ca pentru a codifica efectele am ales 1 (001b), 2 (010b) si 4(100b). Bitul de 1 va corespunde portului activ (PD0, PD1 sau PD2).

Pentru primul mod de lucru, cele trei codificari ale efectelor sunt pastrate intr-un buffer circular. La fiecare apasare a butonului legat la PB0, index-ul efectului curent va fi incrementat circular.

Pentru al doilea mod de lucru, am inregistrat o lista de 3 secvente a cate 5 efecte fiecare. Fiecare secventa opereaza in mod similar cu buffer-ul circular folosit la primul mod de lucru. Se mentine cate un index pentru a regasi efectul curent in fiecare secventa. Index-ul este incrementat circular (doar pentru secventa selectata curent).

In bucla principala a programului, se seteaza PD0, PD1 si PD2 cu valorile date de codificarea indexului curent.

Rezultate Obţinute

Mai jos sunt prezentate cele doua circuite analogice pentru aplicarea fiecarui efect.

Blue Clipper

Jordan Boss-Tone

Prin conectarea iesirii chitarei la fiecare dintre pinii de intrare in circuit, se obtine o variatie a semnalului de intrare (semnalul de intrare distorsionat, pe care a fost aplicat efectul).

Concluzii

Proiectul a reprezentat o ocazie de a incerca sa creez ceva ce aveam in plan de mult timp.

Am inteles pe parcurs concepte interesante legate de procesarea semnalelor audio, care m-au ajutat la crearea partii de hardware a proiectului.

De asemenea, am inteles cum poate fi folosit un microcontroller pentru a comanda circuite analogice distincte.

Download

Bibliografie/Resurse

pm/prj2018/astratulat/procesor-efecte-chitara.txt · Last modified: 2021/04/14 17:07 (external edit)
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