Teensy syntetizátor

Zápisník experimentátora

Niekedy ma zaujme aj projekt niekoho iného. Teensy 3.2 je výkonný mikrokontrolér, ktorý je kompatibilný s Arduino IDE. Dave z YouTube kanála Notes and Volts vytvoril sériu videí, ktoré popisujú stavbu syntetizátora. Základom je Teensy 3.2 a Audio Board, špecializovaný shield pre audio výstup. Vo svojich videách postupne vysvetľuje tvorbu zvuku, pridávanie efektov a ovládanie cez MIDI. V tomto článku som popísal jednotlivé videá a podstatné informácie v každom videu. Doplnil som aj odkazy na jednotlivé spomínané súčiastky alebo technológie. Všetky vytvorené videá nájdete na konci článku. Posledné video obsahuje aj demo skladbu, takže môžete ľahko získať predstavu o tom, čo sa s týmto syntetizátorom dá zahrať.

1 Základný popis projektu

Navrhovanie syntetizátorov pomocou mikrokontrolérov je obľúbenou zábavkou domácich majstrov, ale výsledok má väčšinou nie práve najkrajší 8-bitový zvuk. Ono sa to dá, ale potrebujete na to trošku lepší mikrokontrolér. Dobrým príkladom sú napríklad Pocket Operatory, kde vo veľkosti bežnej kalkulačky získate veľmi slušný syntetizátor za pár desiatok Eur (vo vnútri je Silicon Labs EFM32 Gecko).

Toto je prvé video zo série, ktorá sa venuje návrhu syntetizátora pomocou mikrokontroléra Teensy 3.2. To je 32-bitový mikrokontrolér, ktorý je dobre integrovaný do IDE Arduina. Na vytvorenie syntetizátora používa Teensy a Audio Board, čo je šikovná doska, na ktorej je všetko audio-príslušenstvo zapojené a poskytuje 16-bitové rozlíšenie na všetko (vstupy aj výstupy). Syntetizátor sa dá vytvoriť aj bez toho, ale potom je audiokvalita výstupov nižšia.

Vo videu ukazuje základné naklikanie objektov audioknižnice v online nástroji, ktoré vygeneruje zdrojový kód syntetizátora. A potom ukazuje, ako to nahrať do mikrokontroléra a ako to celé spustiť.

Teensy Audio Library je špecializovaná knižnica na tvorbu zvukov. Obsahuje niekoľko desiatok rôznych tried, ktoré slúžia na tvorbu hudby. Používa sa tak, že si najprv vytvoríte kostru programu v online nástroji. Vyberiete si v zozname vstupov, výstupov, syntetizátorov a efektov tie, ktoré budete používať, prepojíte ich navzájom a vytvoríte syntetizátor. Túto kostru programu potom doplníte svojim kódom a tak ovplyvňujete výsledný zvuk.

2 Pure Data

Druhé video o tvorbe syntetizátora. Vo videu vytvoril syntetizátor z dvoch oscilátorov s pílovitým priebehom a jedným oscilátorom ružového šumu. To má napojené do mixu, ktorého výstup ide na i2s výstup (Audio Board). Na oscilátoroch má nastavené pevné frekvencie. Takýto syntetizátor sa zdá na prvý pohľad možno jednoduchý, ale je to v podstate to isté, čo nájdete v mnohých profesionálnych syntetizátoroch. Tie síce mávajú bohatšie možnosti nastavenia, ale dva oscilátory, ktoré možno spolu rôznym spôsobom kombinovať sú dostatočne dobré na to, aby vytvorili zaujímavý zvuk.

Ovláda to cez program Pure Data, kde k oscilátorom vytvorí 3 posuvníky, ktoré odosielajú údaje cez MIDI do Teensy vo forme MIDI Control Change Messages. V závere potom mixuje jednotlivé oscilátory a ukazuje, ako sa to prejavuje na výslednom zvuku.

Program Pure Data je zaujímavý nástroj na programovanie hudby. Dokáže v počítači simulovať to isté, čo robí vo videu aj Dave. Dokáže vytvárať zdroj zvuku pre syntetizátor. Program používa najmä preto, že Teensy sa dá pripojiť k počítaču ako MIDI zariadenie a cez MIDI ho možno ľahko ovládať. To mu umožňuje pohodlne navrhovať syntetizátor bez toho, aby musel už v tejto fáze pripájať k mikrokontroléru potenciometre a riešiť prípadné zmeny v návrhu tak, že to bude stále meniť na breadboarde.

3 Klaviatúra

V treťom videu o Teensy syntetizátore pripojil MIDI keyboard. Používa USB model, ktorý sa pripojí k počítaču. Preto v programe Pure Data doplnil MIDI In a prepojil ho priamo na MIDI Out, čím dosiahol to, že každú notu z keyboardu prenesie do Teensy.

Potom tam ešte doplní objekt Vradio s piatimi položkami. Tým vytvorí číslo, ktoré nadobúda hodnoty 0-5 a toto číslo odosiela cez MIDI Control Change tiež do Teensy. V minulom príspevku som spomenul, že v Teensy má vytvorené dva oscilátory. Toto číslo využíva tak, že na prvom oscilátore hrá tú istú notu, ako ide z MIDI keyboardu a na druhom ju posúva o -2 až +2 oktávy. Kto nie je zbehlý v technickej podstate hudby, posun frekvencie tónu o jednu oktávu znamená zdvojnásobenie frekvencie. A posun frekvencie presne o jednu oktávu je pre ľudské ucho veľmi príjemné, preto aj jeho posuny na druhom oscilátore vnímate ako zaujímavé zhutnenie pôvodného zvuku. Takto to aj bežne používajú hudobníci, keď hrajú napríklad nejaký akord, tak automaticky zduplikujú základnú notu akordu a zahrajú ju aj o oktávu nižšie, napriek tomu, že v notách to napísané nemajú.

Posledná zaujímavá vec na videu je to, ako sa vysporiadal s tým, že má vytvorený monofonický syntetizátor (v jednej chvíli iba jedna nota hrá) a pokúša sa hrať naraz viac kláves. Má v programe definovaný buffer na MIDI noty typu LIFO. Do buffera vkladá noty tak ako boli postupne stlačené a pri ich uvolnení odstráni notu z buffera a ak je tam ešte nejaká nota pod ním, zahrá opäť ju. Dosahuje tak zdanie polyfónie.

4 ADSR

Štvrté video o Teensy syntetizátore. ADSR je v zjednodušenej podobe obálka, ktorá tvaruje hlasitosť tónu. To dáva zahranému tónu vierohodnosť, pretože ak si predstavíte zvuk, ktorý vznikne po stlačení jednej klávesy na piáne, tak tesne po stlačení máte najsilnejší zvuk, ktorý postupne doznieva. Veľmi podobne sa zvuk tvaruje v syntetizátore, kde môžete nastaviť jeho nábeh (A), potom stíšenie (D) na úroveň (S), kde zvuk ostáva na jednej hlasitosti až do pustenia klávesy, po ktorom sa stíši hlasitosť na 0 (R). Ako rýchlo sa jednotlivé kroky udejú, tak to má obrovský vplyv na výsledný zvuk.

Druhá časť videa rieši už len skrášlenie nastavovacích prvkov v PureData, čo je časť, ktorú môžete pokojne ignorovať.

5 Tvar vlny

Piate video o Teensy syntetizátore. Tu sa už dostávame k zaujímavému zvuku. Konečne je vidno, načo mu boli už v prvom videu dva oscilátory. Doplnil do programu dve dôležité funkcie. Prvou je výber tvaru, ktorý si môže vybrať medzi sínusovým, trojuholníkovým, pílovým a obdĺžnikovým signálom. Toto môže urobiť na každom oscilátore samostatne.

Druhou dôležitou zmenou je možnosť na druhom oscilátore použiť funkciu detune. To si treba predstaviť ako možnosť upraviť frekvenciu druhého oscilátora až o 5 percent smerom nižšie. To dáva výslednému zvuku na zaujímavosti, pretože sa začnú miešať dve skoro rovnaké frekvencie a v uchu to veľmi zvláštne vibruje. Najmä keď sa to použije na nízkych tónoch, tak ako to ukazuje vo videu. Samozrejme to s funkciou detune netreba preháňať, je počuť že keď to potiahne na vyššiu hodnotu, že to už začína byť nepríjemne a rozladené.

6 Filter

Šieste video v poradí. Doplnil nový objekt filter a zapojil ho ako low pass filter. Zjednodušene to funguje rovnako ako podobné zapojenie, ktoré sa dá urobiť aj pomocou súčiastok. Do filtra idú dva parametre, hraničná frekvencia a hodnota rezonancie. Filter je dosť náročná funkcia a berie si 4 percentá výkonu Teensy.

Ale na tvorbu zvuku syntetizátora to má veľký dosah. Nie vždy je žiadúce, aby do výstupu išli všetky frekvencie. Ich orezanie pomocou LPF umožňuje vytvárať zaujímavé efekty. Ak si sadnete niekedy k skutočnému syntetizátoru, s týmto ovládacím prvkom zažijete veľa zábavy. Okrem LPF sa často používajú aj iné filtre, ale v tejto sérií videí nie sú spomínané. Napríklad hudobný nástroj Korg Electribe 2 obsahuje veľké množstvo filtrov tohoto druhu.

7 Pitch Bend

Siedmy diel. Pitch Bend koliesko. Trošku nudná epizóda, kde je skoro všetok priestor venovaný výpočtom. Pitch Bend koliesko je ťažko zohnateľná súčiastka a keď ju aj zoženiete, stojí skoro toľko ako lacnejší MIDI kontrolér so zabudovaným Pitch Bend. A pokiaľ nemáte cit na to, kedy použiť túto funkciu na jemnú úpravu frekvencie tónu, dosiahnete prapodivné výsledky, ktoré nebudú znieť veľmi dobre.

8 LFO

Diel číslo 8. LFO - Low Frequency Oscillator. Zjednodušene možno povedať, že je to zmena parametrov pomocou nízkej frekvencie, čo vytvára efekty, ako keby ste krútili niektorým potenciometrom na syntetizátore hore a dolu. Potenciometer môže ovládať rôzne parametre a to vytvára najrôznejšie jemné variácie v zvuku. LFO tieto veci robí rýchlo a presne za vás a hudobník si obvykle iba nastaví, čo sa má modifikovať a potom si už len hrá noty. Vo videu nastavuje LFO na filter a na výšku tónu. Treba si to vypočuť a minimálne polovica videa dáva dostatok hudobných ukážok, ako to vlastne funguje.

9 MIDI vstup

Diel číslo 9. MIDI. V predchádzajúcich epizódach bolo Teensy zapojené cez USB ako MIDI. Toto zapojenie stále zostalo, ale pridal aj klasický 5-kolíkový MIDI vstup. Zapojenie MIDI je notoricky známe a aj v tomto prípade sa v schéme drží doporučení. V zapojení má optoizolátor, ktorý oddeľuje jeho MIDI sekvencér SQ-1 od Teensy. Na konci videa je vidno aj ako spracúva Teensy signály z oboch zdrojov a z SQ-1 idú noty a z PureData zase CC správy, ktorými menil parametre syntetizátora aj v predchádzajúcich dieloch.

10 Hardvér

Diel č. 10. Od Pure Data k hardvéru.

V predchádzajúcich dieloch mal všetky ovládacie prvky v počítači v programe Pure Data a cez MIDI si parametre posielal do Teensy. Teraz ukazuje, ako pripojiť 15 potenciometrov cez analógový multiplexer a aký algoritmus používa na to, aby nestrávil priveľa času pri kontrole jednotlivých potenciometrov.

11 Krabička

Diel č. 11. Plošný spoj a hliníková krabička.

Dosť podrobne popisuje, ako čo navrhoval, aby sa mu tam zmestili všetky konektory a potenciometre a ukazuje aj, ako sa vŕta krabička a ako na ňu nalepil popisky.

12 Demo

Posledné video je demo skladba. Na toto mnoho amatérskych tvorcov syntetizátorov zabúda. Vytvoria syntetizátor a venujú veľa času tomu, aby predviedli, aké jednotlivé zvuky vedia vytvoriť. Ale hotová skladba je omnoho lepším dôkazom schopností autora. A táto elektronická skladba sa aj dá počúvať.



Video













29.06.2019


Menu