Tartalomjegyzék:
- 1. lépés: Korlátok
- 2. lépés: Hogyan működik?
- 3. lépés: Hardver
- 4. lépés: Szoftver
- 5. lépés: Huzalozás
- 6. lépés: Mi van, ha több MIDI -forrásom van?
Videó: Arduino többsávos MIDI Loop Station: 6 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
A loop állomás vagy looper lényegében egy eszköz az instrumentális riffek (loopok) valós idejű lejátszásához. Nem felvevőeszköznek szánták, hanem olyan eszköznek, amely figyelemelterelés nélkül alakítja az inspirációt (és végül élőben is fellép …).
Rengeteg hangrögzítő hurok állomás létezik, mind dedikált hardver (szinte minden egyes gitárpedálgyártó rendelkezik saját termékkel), akár számítógépes szoftver (a legismertebb Linux Sooper Looper vagy windows Mobius) formájában. Csak kevés projektet találtam a DIY nem audio, hanem a MIDI looperekről, ami egy eszköz a MIDI események rögzítésére és azonnali visszajátszására; a legtöbb ilyen projekt (mondhatom, mindegyik) elhagyott vagy elveszett … nos, itt egy teljes projekt mindenki számára!
Ez az Arduino MIDI hurokállomás egyszerűen nyomon követi a bejövő MIDI eseményeket és lejátssza azokat. Csak meg kell nyomnia a felvételi pedált, létre kell hoznia a legjobb riffjét, és le kell állítania a felvételt a pedál újbóli megnyomásával. Szuper könnyű:)
Ez a projekt könnyen megtalálható nyitott hardveren (Arduino DUE), szoftveren (saját firmware -em és Arduino IDE) alapul, és személyre szabható az Ön preferenciái szerint.
Csináljuk!
PS: Igen, nagyon olcsó!
1. lépés: Korlátok
Mielőtt elkezdené beszerezni a hardver alkatrészeket a projekthez, hadd mondjam el, melyek a határai, hogy eldönthesse, továbblép vagy itt áll meg.
- a hardver korlátai miatt (alapvetően Aduino DUE memória) a rögzíthető kifejezés alapértelmezett maximális hossza 46 másodperc.
- a ciklusokat nem lehet tárolni és lejátszani leállítás után. De elküldheti őket egy számítógépre, és elmentheti őket.
- nincs jegyzetek kvantálása.
- A MIDI óra támogatott, de jelenleg egy előzetes szakaszban.
- A rögzített MIDI -üzenetek megjegyzések, megjegyzések, vezérlési változtatások és hangmagasság -kanyar; más MIDI üzeneteket, például érintés, programváltás, SysEx stb. figyelmen kívül hagynak.
- a max polifónia alapértelmezés szerint 10 -re van állítva (ismét Aduino DUE memóriakorlátok).
A pozitívum az, hogy a MIDI adatfolyamok több különböző hangszerből is támogatottak, mindegyik saját csatornáján. ez azt jelenti, hogy egyszerre több MIDI hangszert rögzíthet, rétegesen vagy saját számmal (további profik a következő lépésben;)).
Ha ezekkel a korlátokkal való együttélés ésszerűnek tűnik (és számomra is az), akkor nagyon jól fogja érezni magát ezzel a dologgal;)
2. lépés: Hogyan működik?
A MIDI hurokállomás itt nagyon egyszerűen kezelhető. Hasonló módon működik, mint a hardver audio hurok állomások, amelyeket minden gitárpedálgyártó saját katalógusában talál.
1) Válassza ki azt a számot, amelyre rögzíteni szeretné a MIDI sorozatát. Alapértelmezés szerint az „egy” sáv van kiválasztva, de megváltoztathatja azt a műsorszámok egyik gombjának megnyomásával (minden számhoz egyet).
2) Amikor először nyomja meg a "REC" kapcsolót/lábpedált, a hurokkapcsoló bekapcsol. A zöld LED világít. Megvárja, amíg az első hangot meg nem kapja, mielőtt elkezdi rögzíteni a tényleges sorozatot/riffet.
3) Ha befejezte a sorozatot, nyomja meg ismét a "REC" kapcsolót/lábpedált a riff tényleges hosszának meghatározásához. A zöld LED kialszik. A looper azonnal elkezdi reprodukálni a MIDI szekvenciáját. Ha eléri a maximális időt, a felvétel automatikusan leáll, és a sorozat ismétlődni kezd ciklusban.
4) Most eldöntheti, hogy a "REC" kapcsoló/lábpedál lenyomásával újból hozzáadja -e a sorozatot az aktuális műsorszámhoz, vagy új műsorszámot választ és rögzít rajta. Mindkét esetben a sárga LED világít, még akkor is, ha az új sáv üres, mert "slave" sávról van szó (a legelső rögzített műsorszámhoz képest slave). Nyomja meg újra a túltöltés leállításához (a sárga LED kialszik).
Azok számára, akik audio hurkos állomásokkal kényelemben vannak, ezt a MIDI -folyamatot "REC/PLAY/OVERDUB" -nak nevezik, és ez az egyetlen támogatott.
Ha bármikor úgy érzi, hogy a legutóbbi overdub nem megfelelő, törölheti azt a "visszavonás" kapcsoló/lábpedál megnyomásával. A "REC" pedált 3 másodpercnél hosszabb ideig nyomva tartva törölheti a teljes aktuális sávot; visszaállíthatja a hurkot (szoftver -visszaállítás) az első három sávgomb egyidejű megnyomásával vagy az összes használt sáv törlésével.
Az aktuális műsorszám nyomógombjának megnyomásával elnémíthatja/elnémíthatja a zeneszámot.
Küldhetsz PÁNIKOT! üzenetet a pánik gomb megnyomásával. Akár PÁNIKOT is küldhetsz! üzenetet az első két sáv gombjának egyidejű megnyomásával.
A looper beépített egyszerű metronómot tartalmaz: a 64 -es jegyzethez tartozó MIDI -üzenetről szóló megjegyzést 100 BPM -en küldik a 10 -es csatornán (azon a csatornán, amelyet feltehetően hallgat a dobgép). Növelheti vagy csökkentheti a tempót az optikai kódoló forgatásával; az optikai kódoló kapcsoló lenyomásával engedélyezheti/letilthatja a metronómot. Ne feledje, hogy a dobgépet úgy kell beállítani, hogy hangot adjon (pergő, basszus vagy bármilyen más hangot), amikor a "64" MIDI hangot fogadja, különben a metronóm elnémul.
Ennek a MIDI hurokállomásnak a csupasz változata elkészíthető egyetlen lábkapcsolóval a felvétel elindításához és leállításához. Ha több mint 3 másodpercig lenyomva tartja a kapcsolót, újra inicializálja a hurokállomást.
Ha további időt szeretne fordítani a hardver fejlesztésére, a kapcsolók és gombok hozzáadásával rugalmasabbá válik a hurokállomás. A képen hogyan állítottam be a négy sávot (legfeljebb öt támogatott) teljes értékű hurokállomást.
FONTOS MEGJEGYZÉS: a képeim hardvere prototípus. A szükségesnél több jack aljzatot használtam, de csak négy gombot a műsorszámokhoz. Ennek oka az, hogy amikor elkezdtem a projektet, nem voltam teljesen biztos abban, hogy mi lesz a végső követelmény.
A gombok és a lábkapcsolók elektronikailag megfelelők, és az egyiket a másik helyett használhatja; az én igényeimre való tekintettel, mivel mindig túl kevés az alapterület (rohadt szép hatású pedálok;)), az egyetlen REC funkcióhoz kényszerítettem a pedálokat.
3. lépés: Hardver
Darabjegyzékben:
Teljes értékű 5 sávos MIDI hurokállomás
1x Arduino DUE
7x pillanatnyi nyomógomb
1x műanyag tok (én 150 x 110 x 70 mm -es tokot használtam)
2x 5 tűs DIN hüvelyi panelre szerelhető MIDI aljzat csatlakozó
1x 6,3 mm -es panelre szerelhető jack aljzat
1x kétoldalas 50x70 mm -es perforációs tábla
5x 3 mm -es LED (zöld)
1x 3 mm -es LED (sárga)
1x optikai kódoló
1x H11L1 optocsatoló
1x 1N4148 dióda
3x 1000 ohmos ellenállás
3x 220 ohmos ellenállások
10x 470 ohmos ellenállások
Néhány forrasztóhuzal, néhány kábel, forrasztóállomás… és szabadidő:)
A projekt befejezéséhez szükséges idő: 6-9 óra
Miért nem UNO?
Az első teszteket (és a kezdő munkakódot) egy "rendes" arduino UNO táblára írták. Ennek a táblának RAM -korlátai vannak, amelyek miatt a polifóniát "4" -re kellett csökkentenem, a maximális hossza kevesebb, mint 4 másodperc, és a felbontása 40 ms, max. Ez többcsatornás kezelés nélkül. A sebességkövetés eltávolításával 7 másodpercre tudtam növelni a felvételi időt.
Egy UNO -val megvalósíthat egy "működő" MIDI hurokállomást, de erősen korlátozott.
4. lépés: Szoftver
A szoftver nagymértékben támaszkodik a FortySevenEffects MIDI könyvtárra. Ez a könyvtár nagyszerű, és az ilyen jellegű projekteket még a hozzám hasonló, nem kódoló geek számára is megvalósíthatóvá teszi.
Az Arduino IDE és annak közössége egy másik fontos része ennek a "sikernek".
Nem részletezem a vázlat feltöltésének módját az arduino DUE -re. Ha ez az első tapasztalata az arduino IDE -vel, kérjük, először olvassa el ezt.
A kód két különböző változatát írtam, két teljesen különböző megközelítés alapján.
Az 1. verzió működési elve az, hogy az Arduino DUE rögzítése vagy túltöltése során ellenőrzi és tárolja a memóriájában (illékony) a támogatott MIDI -eseményeket (megjegyzés, megjegyzés, vezérlésváltás és hangmagasság -kanyar); Az időtengelyt 20 ms -os lépésekben kvantálják, és a fogadott üzeneteket ennek megfelelően tárolják ezekben a résekben. Lejátszás közben a tárolt MIDI üzeneteket visszaküldi a szintetizátornak az időkvantálás figyelembevételével.
A 2. verzió működési elve ehelyett az, hogy "egyszerűen" rögzítse a midi eseményt és azt az időpontot, amikor az eseményt aktiválni kell. A 2 -es verziónak más korlátai vannak, mint az 1 -es verzió (az előző lépésben felsorolt). próbálja ki mindkettőt, és használja azt, amelyik jobban működik.
Van egy előzetes órakezelés is, de némi módosítást igényel, hogy megfelelően működjön. A Code feltételezi, hogy 4/4 - 4 ütem ciklusot rögzít (16 ütés).
A külső óra kikapcsolásához tartsa lenyomva a "pánik" gombot a hurok bekapcsolásakor.
A kódok ITT tölthetők fel. A megjegyzések mindegyikükre vannak helyezve, így tetszés szerint hajlíthatja a firmware -t;)
5. lépés: Huzalozás
A MIDI IN és MIDI OUT áramköröket a mellékelt képek jelentik. Vegye figyelembe, hogy a TX1 és az RX1 használatos, nem a TX0 és az RX0.
Az Arduino DUE bemeneti csapok nem tudják kezelni az 5 V -ot, de a 3.3 V -ot; ezért használnak H11L1 optocsatolót a gyakoribb 6N138 helyett. Bizonyítékaim vannak arra, hogy a 6N138 -as feszültségosztóval párosítva csökkenti a TX1 -re menő jelfeszültséget, mint az első prototipemnél, bizonyos beállításokban hibásan működhet.
A LED -ek 470 ohmos ellenállásokon keresztül csatlakoznak az Arduino DUE kimeneti csapokhoz. Akár 1K ohmos ellenállásokkal csökkentheti a LED -ekre áramló áramot és csökkentheti azok fényességét.
A gombok/kapcsolók/aljzatok közvetlenül csatlakoztathatók az Arduino bemeneti csapokhoz a vázlatban aktivált bemeneti felhúzó ellenállásoknak köszönhetően. Nincs szükség külső (lehúzható) ellenállásokra.
Az optikai kódoló GND -hez és +5V -hoz van csatlakoztatva. A 2 480 ohmos ellenálláson átmenő Arduino bemeneti csapokhoz megy, minden optikai adatkimenethez egyet.
Az Arduino DUE tápellátása közvetlenül az 5 V -os csatlakozóról történik, és a +5 V egyenáramú hubon keresztül földelhető.
Minden alap egymáshoz kötődik.
Csatolva van egy táblázat az arduino csapok és az IN/OUT periféria csatlakozóival. Az Arduino pin számok tükrözik a proptípusom hardverét, és véletlenszerűnek tűnhetnek (valahogy …). Könnyedén módosíthatja a csap helyét a vázlatban tetszése szerint;)
6. lépés: Mi van, ha több MIDI -forrásom van?
A MIDI egyesülés rövid keresése után azt találtam, hogy a legpraktikusabb (és legolcsóbb) megoldás a MIDI kapcsoló.
A MIDI -kapcsoló egy passzív eszköz, amely lehetővé teszi a MIDI -forrást, és letiltja az összes többi forrást. Egyszerű a dolog.
A MIDI kapcsoló szíve egy többpozíciós (az enyém 6 pozíciós), 2 pólusú kapcsoló. Nagyon fontos, hogy a pólusok száma "2" legyen, mert minden MIDI -foglalatot teljesen ki kell vágni, ha nincs kiválasztva, és nem kommunikál a többiekkel. Mellékelve egy kép arról, amit saját használatra készítettem.
Ezen a linken egy séma.
Ajánlott:
NaTaLia Weather Station: Arduino Solar Powered Weather Station Helyesen: 8 lépés (képekkel)
NaTaLia Weather Station: Arduino Solar Powered Weather Station Helyesen: 1 év sikeres működés után 2 különböző helyen megosztom napelemes időjárás -állomási projektterveimet, és elmagyarázom, hogyan alakult ki olyan rendszerré, amely valóban képes túlélni hosszú ideig napenergiától. Ha követed
Larson Loop: 5 lépés
Larson Loop: Ezt a projektet Larson Loop -nak hívják, amelyet egy Larson Scanner nevű eszköz inspirált. Az ötlet az, hogy többszörös LED -ek vannak egy hurokban, ahol a LED -ek fénye úgy néz ki, mint egy hurokban. Ezenkívül egy potenciométert használnak a változtatáshoz
Fizzle Loop Synth V3 (555 időzítő): 11 lépés (képekkel)
Fizzle Loop Synth V3 (555 időzítő): Ez a harmadik Fizzle Loop Synth áramköröm, és az előző 2 -re épül, amelyek itt és itt találhatók. A szintetizátor szíve a 3, 555 Timer IC, amelyeket igazán érdekes hangjelzések és hangjelzések. A különbség a verzió között
Fizzle Loop Synth - 555 időzítő: 12 lépés (képekkel)
Fizzle Loop Synth - 555 Timer: A vibráló hurok szintetizátor néhány egyszerű 555 projekt összevonása után jött létre. A vibrációs hurok középpontjában egy Vactrol - egy egyszerű kis alkatrész, amely egy LED -ből és egy fényellenállásból, például egy CdS -ből készül. Hívás
MIDI 5V LED szalagos fényvezérlő a Spielatronhoz vagy más MIDI szintetizátorhoz: 7 lépés (képekkel)
MIDI 5V LED szalagfényvezérlő a Spielatronhoz vagy más MIDI szintetizátorhoz: Ez a vezérlő háromszínű LED szalagfényeket villan fel jegyzetenként 50mS-ért. Kék G5-től D#6-ig, piros E6-tól B6-ig és zöld C7-től G7-ig. A vezérlő egy ALSA MIDI eszköz, így a MIDI szoftver egyidejűleg képes kimenni a LED -ekre, mint egy MIDI szintetizáló eszköz