Kazalo:

Arduino multi-track MIDI Loop Station: 6 korakov
Arduino multi-track MIDI Loop Station: 6 korakov

Video: Arduino multi-track MIDI Loop Station: 6 korakov

Video: Arduino multi-track MIDI Loop Station: 6 korakov
Video: How To Do Stable Diffusion XL (SDXL) DreamBooth Training For Free - Utilizing Kaggle - Easy Tutorial 2024, December
Anonim
Arduino multi-track MIDI Loop Station
Arduino multi-track MIDI Loop Station
Arduino multi-track MIDI Loop Station
Arduino multi-track MIDI Loop Station
Arduino večtirna postaja MIDI Loop
Arduino večtirna postaja MIDI Loop

Postaja z zanko ali zanka je v bistvu orodje za predvajanje vaših instrumentalnih rifov (zank) v realnem času. Ni mišljen kot snemalni medij, ampak instrument za oblikovanje navdiha brez motenj (in sčasoma izvedbo v živo …).

Obstaja veliko postaj za snemanje zvoka, tako v obliki namenske strojne opreme (skoraj vsak proizvajalec pedal za kitare ima svoj izdelek) kot računalniške programske opreme (odličen Linux Sooper Looper ali windows Mobius, če naštejemo najbolj znane). Našel sem le nekaj projektov o DIY, ki niso zvočni, ampak MIDI petlje, kar pomeni orodje za snemanje dogodkov MIDI in njihovo predvajanje takoj v zanki; večina teh projektov (vsi bi morali reči) so opuščeni ali izgubljeni … no, tukaj smo s popolnim projektom za vsakogar!

Ta postaja z zanko MIDI Arduino preprosto spremlja dohodne dogodke MIDI in jih predvaja. Morate samo pritisniti pedal za snemanje, ustvariti svoj najboljši riff doslej in ustaviti snemanje s ponovnim pritiskom na pedal. Super enostavno:)

Ta projekt temelji na odprti strojni opremi (Arduino DUE), programski opremi (lastna vdelana programska oprema in Arduino IDE), ki jo je mogoče prilagoditi, da odraža vaše želje.

Naredimo to!

PS: ja, super poceni je!

1. korak: Meje

Preden začnete s pridobivanjem delov strojne opreme za projekt, naj vam povem, katere so njegove omejitve, da se lahko odločite za nadaljevanje ali ustavitev tukaj.

- zaradi omejitev strojne opreme (v bistvu pomnilnika Aduino DUE) je privzeta največja dolžina zapisane fraze omejena na 46 sekund.

- zank ni mogoče shraniti in predvajati po zaustavitvi. Lahko pa jih pošljete v računalnik in jih shranite.

- ni kvantizacije zapiskov.

- Ura MIDI je podprta, vendar je trenutno v predhodni fazi.

- posneta sporočila MIDI so opomba vklopljena, opomba izključena, nadzorne spremembe in upogibanje višine tona; druga sporočila MIDI, na primer po dotiku, spremembi programa, SysEx itd., se ne upoštevajo.

- največja polifonija je privzeto nastavljena na 10 (spet omejitve pomnilnika Aduino DUE).

Pozitivna stran je, da so podprti MIDI tokovi iz več različnih instrumentov, od katerih vsak oddaja na svojem kanalu; to pomeni, da lahko posnamete več instrumentov MIDI hkrati, večplastno ali z lastno skladbo (več profesionalcev v naslednjem koraku;)).

Če se zdi, da je življenje s temi omejitvami smiselno (in to je zame), se boste s tem zelo dobro imeli;)

2. korak: Kako deluje

Omrežna postaja MIDI je tukaj zelo enostavna za upravljanje. Deluje na podoben način kot tiste strojne zvočne zanke, ki jih ima vsak proizvajalec kitarskih pedal v svojem katalogu.

1) Izberite skladbo, na katero želite posneti zaporedje MIDI. Privzeto je izbrana "ena", vendar jo lahko spremenite s pritiskom na enega od gumbov za skladbe (po enega za vsako skladbo).

2) Ko prvič pritisnete stikalo "REC"/nožni pedal, se zanka vključi. Zelena LED sveti. Počakal bo, dokler ne prejmete prve note, preden bo začel snemati dejansko zaporedje/riff.

3) Ko končate zaporedje, znova pritisnite stikalo "REC"/nožni pedal, da določite dejansko dolžino rifa. Zelena LED lučka ugasne. Zanka bo takoj začela reproducirati vaše zaporedje MIDI. Če dosežete največji čas, se snemanje samodejno ustavi in zaporedje se začne reproducirati v zanki.

4) Zdaj se lahko odločite, da boste zaporedje zapisali na trenutni skladbi ali izbrali novo skladbo in nanjo posneli s pritiskom na stikalo "REC"/nožni pedal. V obeh primerih zasveti rumena LED, tudi če je nova skladba prazna, ker je to "podrejena" skladba (podrejena prvemu posnetemu tiru). Ponovno pritisnite, da ustavite prekrivanje (rumena LED ugasne).

Za tiste, ki imate radi zvočne postaje, se ta napredek MIDI imenuje "REC/PLAY/OVERDUB" in je edini podprt.

Če kadar koli menite, da vaš zadnji zapis ni v redu, ga lahko izbrišete s pritiskom na stikalo "razveljavi"/nožni pedal. Celotno trenutno skladbo lahko počistite tako, da pritisnete pedal "REC" za več kot 3 sekunde; zanko (ponastavitev programske opreme) lahko ponastavite tako, da hkrati pritisnete prve tri gumbe skladb ali počistite vse uporabljene posnetke.

Skladbo lahko izklopite/vklopite s pritiskom na gumb za skladbo trenutne skladbe.

Lahko pošljete PANICO! sporočilo s pritiskom na gumb za paniko. Lahko celo pošljete PANICO! sporočilo, tako da hkrati pritisnete prva dva gumba za skladbe.

Zanka ima vgrajen preprost metronom: opomba o sporočilu MIDI za noto številke "64" se pošlje s hitrostjo 100 BPM na kanalu 10 (kanal, ki ga verjetno poslušate z bobnarskim strojem). Tempo lahko povečate ali zmanjšate z nastavitvijo optičnega kodirnika; s pritiskom na stikalo optičnega dajalnika lahko omogočite/onemogočite metronom. Upoštevajte, da mora biti vaš bobnarski stroj nastavljen za predvajanje zvoka (zanka, bas ali kateri koli drug zvok, ki vam je ljubši), ko prejmete opombo MIDI "64", sicer bo metronom izklopljen.

Barebone različico te MIDI zanke je mogoče sestaviti z enim samim stikalom za začetek in ustavitev snemanja. Če stikalo držite pritisnjeno več kot 3 sekunde, boste znova inicializirali postajo zanke.

Če želite vložiti nekaj dodatnega časa v razvoj strojne opreme, boste z dodajanjem stikal in gumbov postajo zanke naredili bolj prilagodljivo. Na sliki je prikazano, kako sem konfiguriral svoje štiri skladbe (podpira jih do pet) polno opremljeno postajo zanke.

POMEMBNO OPOMBA: strojna oprema na mojih slikah je prototip. Uporabil sem več vtičnic, kot je bilo potrebno, vendar le štiri gumbe za skladbe. To je zato, ker ob začetku projekta nisem bil popolnoma prepričan, kakšne bodo končne zahteve.

Gumbi in nožna stikala so elektronsko enakovredni in lahko uporabite enega namesto drugega; za svoje potrebe, ker je vedno premalo prostora (prekleto lepi pedali z učinkom;)), sem omejil stopalke na eno samo funkcijo REC.

3. korak: Strojna oprema

Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema

Račun za materiale:

Popolnoma predstavljena 5-skladna postaja z zanko MIDI

1x Arduino DUE

7x trenutni gumbi

1x plastično ohišje (uporabil sem ohišje 150 x 110 x 70 mm)

2x 5-polni priključek za MIDI vtičnico na ženski plošči DIN

1x 6,3 mm vtičnica za montažo na ploščo

1x dvostranska 50x70 mm perf deska

5x 3 mm LED (zelena)

1x 3 mm LED (rumena)

1x optični dajalnik

1x optični sklopnik H11L1

1x 1N4148 dioda

3x 1000 ohmski upori

3x 220 ohmski upori

10x 470 ohmski upori

Nekaj spajkalne žice, nekaj kablov, spajkalna postaja … in prosti čas:)

Čas, potreben za dokončanje projekta: 6-9 ur

Zakaj ne UNO?

Prvi testi (in začetna delovna koda) so bili napisani na "običajni" arduino plošči UNO. Ta plošča ima omejitve RAM -a, zaradi katerih sem morala zmanjšati polifonijo na "4", največjo dolžino na manj kot 4 sekunde in ločljivost 40 ms pri največ. To brez večkanalnega upravljanja. Z odstranitvijo sledenja hitrosti sem lahko čas snemanja podaljšal do 7 sekund.

Z UNO lahko takrat uresničite "delujočo" postajo z zanko MIDI, vendar zelo omejeno.

4. korak: Programska oprema

Programska oprema se močno opira na knjižnico FortySevenEffects MIDI. Ta knjižnica je odlična in omogoča tovrstne projekte tudi za tiste, ki niso koderji, kot sem jaz.

Arduino IDE in njegova skupnost sta še en pomemben del tega "uspeha".

Ne bom se spuščal v podrobnosti o tem, kako naložiti skico na vaš arduino DUE. Če je to vaša prva izkušnja z arduino IDE, najprej preberite to.

Napisal sem dve različici kode, ki temelji na dveh popolnoma različnih pristopih.

Načelo delovanja različice 1 je, da med snemanjem ali prekrivanjem Arduino DUE preveri in shrani v svoj (nestanoviten) pomnilnik podprte dogodke MIDI (opomba vklopljena, opomba izključena, sprememba nadzora in upogibanje višine tona); časovno os kvantizirajo v korakih po 20 ms, prejeta sporočila pa se ustrezno shranijo v te reže. Med predvajanjem se shranjena sporočila MIDI pošiljajo nazaj v sintetizator ob upoštevanju časovne kvantizacije.

Načelo delovanja različice 2 je, da "preprosto" zapiše midi dogodek in čas, ko se mora dogodek sprožiti. Različica 2 ima drugačne omejitve kot različica 1 (navedena v prejšnjem koraku). preizkusite oba in uporabite tistega, ki vam najbolj ustreza.

Obstaja tudi predhodno ravnanje z uro, vendar bo za pravilno delovanje potreboval nekaj prilagoditev. Koda predvideva, da posnamete zanko 4/4 - 4 taktov (16 utripov).

Zunanjo uro lahko deaktivirate tako, da pritisnete gumb "panika", ko vklopite zanko.

Kode so naložene TUKAJ. Komentarji so povsod, tako da lahko po želji upognete to vdelano programsko opremo;)

5. korak: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje

Vezja MIDI IN in MIDI OUT so navedena na priloženih slikah. Upoštevajte, da se uporabljata TX1 in RX1, ne TX0 in RX0.

Arduino DUE vhodni zatiči ne zmorejo 5V, vendar 3.3V; zato se namesto bolj običajnega 6N138 uporablja optični sklopnik H11L1. Imam dokaze, da bi lahko uporaba 6N138 skupaj z delilnikom napetosti za zmanjšanje napetosti signala, ki gre na TX1, tako kot v mojem prvem prototipu, v nekaterih nastavitvah delovala nepravilno.

LED so povezane z izhodnimi zatiči Arduino DUE prek uporov 470 Ohmov. Uporabite lahko upor do 1K ohma, da zmanjšate tok, ki prehaja na LED, in zmanjšate njihovo svetilnost.

Gumbi/stikala/priključki so neposredno povezani z vhodnimi zatiči Arduino zahvaljujoč vhodnim upogibnim uporom, aktiviranim na skici. Zunanji (spustni) upori niso potrebni.

Optični dajalnik je priključen na GND in +5V. Gre za vhodne zatiče Arduino, ki potekajo skozi 2 480 ohmskih uporov, po enega za vsak optični izhod podatkov.

Arduino DUE se napaja neposredno iz 5V zatiča in ozemljen prek +5V DC zvezdišča.

Vsi razlogi so med seboj povezani.

Priložena je miza s povezavami iz arduino zatičev na V/IZ izhodno enoto. Številke pin Arduino odražajo tiste v moji strojni opremi za prototip in bi lahko izgledale (nekako so …) naključne. Mesto zatiča na skici lahko preprosto spremenite po svoji volji;)

6. korak: Kaj, če imam več kot en vir MIDI?

Kaj, če imam več kot en vir MIDI?
Kaj, če imam več kot en vir MIDI?

Po kratkem iskanju združitve MIDI sem ugotovil, da je najbolj praktična (in poceni) rešitev stikalo MIDI.

Preklopnik MIDI je pasivna naprava, ki omogoča vir MIDI in onemogoča vse druge vire. Tako enostavno.

Srce MIDI stikala je večpozicijsko (moje je 6 pozicijsko), 2 polno stikalo. Zelo pomembno je, da je število polov "2", ker mora biti vsaka vtičnica MIDI popolnoma odrezana, če ni izbrana in ne v komunikaciji z drugimi. V prilogi je slika tiste, ki sem jo uresničil za lastno uporabo.

Na TEJ POVEZAVI shema.

Priporočena: