Tartalomjegyzék:

Erősítő szintetizátor (szúnyog I): 6 lépés
Erősítő szintetizátor (szúnyog I): 6 lépés

Videó: Erősítő szintetizátor (szúnyog I): 6 lépés

Videó: Erősítő szintetizátor (szúnyog I): 6 lépés
Videó: Аудиокомпрессор на макетной плате с использованием VCA из предыдущего видео 2024, December
Anonim
Erősítő szintetizátor (szúnyog I)
Erősítő szintetizátor (szúnyog I)

A Mosquito I egy kicsi arpeggifikáló szintetizátor, amely Arduino Nano -t és a Mozzi hangszintézis könyvtárat használja. Több mint húsz 8 lépéses sorozatot tud lejátszani, de tetszés szerinti számú egyéni sorozatot hozzáadhat. Összeállítása viszonylag egyszerű, és nem igényel sok alkatrészt.

Kellékek:

  • Arduino Nano (vagy bármely Arduino -nak valóban működnie kell)
  • 5 db potenciométer (10K lineáris)
  • 2 ea Nyomógombok
  • 1 db LED
  • 1 db ellenállás (330 ohm)
  • 2 ea ellenállás (1K)
  • 1 db ellenállás (2K)
  • 1 db elektrolit kondenzátor (100 uF)
  • 1 db kerámia kondenzátor (33 nF)
  • 1 ea sztereó jack
  • Csatlakozó vezeték
  • Kenyeretábla

Lépés: Az Arduino beállítása

Az Arduino beállítása
Az Arduino beállítása
Az Arduino beállítása
Az Arduino beállítása

Először tegyük fel a nanót a kenyérlapra, és állítsuk be az energiát:

  1. Helyezze a Nano -t a kenyértáblára. Helyezze a fenti képen látható módon. A kenyértábla középső csatornáján kell elhelyezkednie. Azt szeretné, ha a kenyértábla egyik vége felé helyezkedne el, az USB -port pedig arra az oldalra néz. Így a kábel nem fog akadályozni, amikor csatlakoztatjuk. Ha nagyobb Arduino -t használ, mint például az Uno vagy a Mega, akkor természetesen nem fogja felszerelni a kenyértáblára.
  2. Csatlakoztassa az elektromos síneket az Arduino -hoz. Csatlakoztassa a kenyérlap egyik pozitív (piros) sínjét az Arduino 5V -os csatlakozójához drót- vagy áthidaló vezetékek segítségével. Ezután csatlakoztassa az egyik negatív (kék) sínt a Nano egyik GND csapjához.
  3. Csatlakoztassa az elektromos síneket egymáshoz. Ahhoz, hogy áramot kapjon a kenyértábla mindkét oldalán lévő sínek mentén, csatlakoztassa egymáshoz a kenyértábla mindkét oldalán lévő síneket úgy, hogy vezetéket vezet az egyik oldalon lévő pozitív sínről a másik oldalon lévő pozitív sínre. Ismételje meg ezt a negatív sínekkel.

2. lépés: A vezérlők hozzáadása

A vezérlők hozzáadása
A vezérlők hozzáadása

A Mosquito I öt potenciométert és két gombot használ a vezérléshez.

Potenciométerek:

  1. Helyezze az edényeket a kenyérlapra. Helyezze az edényeket úgy, hogy minden csap a saját sorában legyen.
  2. Csatlakoztassa az edényeket az elektromos sínekhez. Csatlakoztassa az egyes edények bal oldali csapját (ha a gomb oldalát nézi) a kenyértábla egyik negatív sínjéhez. Csatlakoztassa az egyes edények jobb oldali csapját a kenyértábla egyik pozitív sínjéhez.
  3. Csatlakoztassa az edényeket az Arduino -hoz. Csatlakoztassa minden edény középső csapját az Arduino analóg csapjaihoz. Az első edény középső csapja az A0 -hoz, a második edény az A1 -hez és így tovább, míg az utolsó edény az A4 -hez van csatlakoztatva.

Nyomógombok:

  1. Helyezze a gombokat a kenyértáblára. Helyezze a két nyomógombot a kenyértáblára úgy, hogy a középső csatornán átnyúljanak.
  2. Csatlakoztassa a pozitív oldalakat. A kenyértábla egyik oldalán csatlakoztassa a nyomógomb egyik csapját a pozitív sínhez.
  3. Csatlakoztassa a negatív oldalakat. Helyezze az 1K ellenállások egyikét a kenyértáblára úgy, hogy az egyik végét a nyomógomb nem használt csapjához, az ellenállás másik oldalát pedig a negatív sínhez csatlakoztassa.
  4. Csatlakozás gomb az Arduino -hoz. Futtasson egy vezetéket azon a soron, amely a gombot a negatív sínhez csatlakoztatja a D2 tűhöz. Tegye ugyanezt a másik gombbal, de csatlakoztassa a D3 -hoz.

3. lépés: Kimenetek hozzáadása

Kimenetek hozzáadása
Kimenetek hozzáadása

Hangot adunk ki a 9. érintkezőből, valamint LED -et villogunk minden sorozat első lépésében. A következőképpen állítsa be a hardvert ehhez.

VEZETTE

  1. Helyezzen egy LED -et a kenyértábla üres helyére.
  2. Csatlakoztassa a LED negatív (rövid) lábát a negatív sínhez.
  3. Helyezzen be áramkorlátozó ellenállást. Csatlakoztassa a 330 ohmos ellenállás egyik oldalát a LED pozitív (hosszú) lábához. Csatlakoztassa az ellenállás másik oldalát az Arduino D4 tűjéhez.

Hang kimenet

  1. Helyezze el az RC hálózatot. Az Arduino kimeneti jele a 9 -es tűből származik, de a jel valamivel melegebb lehet, mint néhány hangszóró. Annak érdekében, hogy valami közelebb kerüljön a vonalszinthez, hozzáadtam egy RC hálózatot (a Notes & Volts tervei alapján). Helyezze a 33nF és 100uF kondenzátorokat a 2K ellenállással együtt a képen/sematikusan látható módon. Győződjön meg arról, hogy a 100uF elektrolit kondenzátor megfelelő polaritással van csatlakoztatva (a pozitív/hosszú láb az Arduino 9 -es érintkezőjéhez és a negatív/rövid láb az aljzathoz csatlakozik).
  2. Csatlakoztassa az audiocsatlakozó negatív oldalát a földhöz. Az audio jack csatlakozók kissé eltérhetnek a használt típustól függően, de általában mindegyik ugyanúgy működik. Az emelő hüvelyét a földhöz kell csatlakoztatnunk. Ezt néha mínusz szimbólummal jelölik, vagy "hüvely", "gyűrű" vagy "gnd" címkével látják el. Ha nincsenek címkék az audiocsatlakozón, előfordulhat, hogy olvassa el az adatlapot, vagy csak alaposan vizsgálja meg az aljzatot, és nézze meg, hogy meg tudja -e határozni, melyik tű csatlakozik az aljzat hüvelyéhez vagy külső gyűrűjéhez.
  3. Csatlakoztassa az audio jack pozitív oldalát a 100uF kondenzátor negatív oldalához. Hangjelünk az Arduino 9. érintkezőjéről az RC hálózaton keresztül áramlik, és a 100uF kondenzátor negatív oldaláról jön ki. Ezt csatlakoztatjuk az audio jack csatlakozó pozitív oldalához. Ezt általában plusz szimbólummal jelölik, vagy "tipp" címkével láthatják el. Ismételten, ha nincs feliratozva, akkor meg kell vizsgálnia, hogy kiderüljön, melyik csap csatlakozik az aljzat hegyéhez. Továbbá, ha sztereó aljzatot használ, előfordulhat, hogy L- és R -csúcs csatlakozik. Mivel mono jelet adunk ki, egyszerűen csatlakozhat az egyik csúcscsatlakozáshoz.

Fontos: Ha úgy találja, hogy a hang túl halk, akkor az 1. lépésben megszüntetheti az RC -hálózatot, és közvetlenül az Arduino 9. tűjéből származó hanghoz csatlakozhat. Ennek rendben kell lennie, ha a hangot olyan erősítőhöz csatlakoztatja, mint a külső számítógépes hangszórók, ahol van hangerőszabályzó, de nem ajánlom fejhallgatóhoz, fülhallgatóhoz vagy közvetlenül a hangszóróhoz való csatlakoztatáshoz. Ha mégis úgy dönt, hogy megszünteti az RC -hálózatot, azt javaslom, hogy az Arduino bekapcsolása előtt kapcsolja le teljesen a hangszórók hangerejét, majd fokozatosan növelje a hangerőt, hogy elkerülje a hangszórók elfújását.

Miután mindent beállított, ellenőrizze, hogy az összes csatlakozás megfelelőnek tűnik-e, és megfelel-e a fenti képnek és sematikus ábrának

4. lépés: A kód feltöltése

Most, hogy a hardver minden készen áll, készen állunk a szoftveroldal kezelésére:

  1. Indítsa el az Arduino IDE -t. Indítsa el számítógépén az Arduino IDE -t (ha nincs meg, akkor letöltheti a https://www.arduino.cc/en/software webhelyről).
  2. Töltse le a Mozzi könyvtárat. A Mozzi könyvtár lehetővé teszi számunkra, hogy Arduino -junkat szintetizátorként használjuk. Ha ezt a könyvtárat IDE -jébe szeretné beszerezni, menjen a Mozzi github oldalára https://sensorium.github.io/Mozzi/download/. Kattintson a zöld "Kód" gombra, és válassza a ZIP letöltése lehetőséget.
  3. Telepítse a Mozzi könyvtárat a zip fájlból. Az Arduino IDE-ben lépjen a Vázlat-> Könyvtár bevonása->. ZIP-könyvtár hozzáadása… Navigáljon a letöltött zip-fájlhoz a hozzáadáshoz. Most látnia kell a Mozzi-t a Vázlat-> Könyvtár felvétele szakaszban.
  4. Töltse le a Mosquito I Arduino kódot. Ezt a github webhelyemről szerezheti be: https://github.com/analogsketchbook/mosquito_one. (Ne feledje, hogy a kapcsolási rajzok ott is elérhetők, ha szükségesek a kábelezéshez.
  5. Csatlakoztassa az Arduino -t a számítógéphez, és töltse fel a kódot.

5. lépés: Messing körül

Ez az. Képesnek kell lennie arra, hogy a hangszórókat az audio jack csatlakozóhoz csatlakoztassa, és hallja az arpeggizált szintézis édes hangját az itt lévő kis Nano -ból! Ha először nem hall semmit, próbálja a gombokat minden edényre középre helyezni, hogy megbizonyosodjon arról, hogy megfelelő kezdőértékeket kap.

A vezérlők a következők:

Edények:

Rate: Ez szabályozza, hogy a szekvenszer milyen gyorsan játssza le. Ha lekapcsolja, a diszkrét hangokat egymás után játssza le. Ha felfelé fordítja, a jegyzeteket összemosja, és teljesen új hullámformákat hoz létre.

Legato: A második bank a legato vagy a hang hosszát szabályozza. Ha balra fordítja, akkor rövid, sticatto hangokat készít, jobbra pedig hosszabb hangokat.

Hangmagasság: Ez állítja be a sorozat alapmagasságát. A hangmagasság -szabályozó MIDI -értékeket állít be, így a félmagasságban növeli/csökkenti a hangmagasságot, nem pedig folyamatos hangmagasság -eltolódást.

Fázis: A gomb jobbra forgatása finom fázishatást eredményez. Technikailag ez azt eredményezi, hogy az I. szúnyog két oszcillátora kissé elcsúszik, ami a fázist okozza. Ez azonban nem követi a hangmagasságot, így a fokozási hatás valószínűleg jobban érzékelhető az alacsonyabb hangszínnel.

Szűrő: Ez a gomb szabályozza az aluláteresztő szűrő levágási frekvenciáját. Ha balra fordítja, a magas frekvenciákat lekapcsolja, ami tompább hangot eredményez, míg jobbra forgatása világosabb hangot eredményez.

Gombok:

A Mosquito több mint húsz különböző sorozatot tartalmaz, amelyeket alapértelmezés szerint lejátszhat. A nyomógombokkal kiválaszthatja, hogy melyik sorozatot játssza le. Az egyik gomb felfelé mozgatja a sorozatok listáját, a másik pedig lefelé.

6. lépés: Testreszabás

Testreszabás
Testreszabás

Hozzáadtam egy csomó alapértelmezett szekvenciát, többnyire különböző léptékűeket, de a kódot meglehetősen könnyen testreszabhatja a lejátszott hangjegyek sorrendjének megváltoztatásához, újak hozzáadásához vagy a sorozat jegyzeteinek számához. Az alábbiakban részletezzük, hogyan történik ez, ha testre szeretné szabni.

Jegyzetek megváltoztatása a meglévő sorrendben

A szekvenciákat a NOTES nevű tömbök tárolják. Minden jegyzet MIDI -jegyzetértékként kerül tárolásra, ezért ha meg szeretné változtatni a jegyzeteket egy adott sorozatban, akkor csak módosítsa a sorozat MIDI -jegyzeteinek számát. Az alapértelmezett beállítás az, hogy sorozatonként 8 lépést kell lejátszani, így csak 8 MIDI -érték lehet egy sorozatban (lásd alább, ha különböző hosszúságú sorozatokat szeretne).

Egy dolgot meg kell jegyezni, hogy a hangmagasság gomb a NOTES tömbben megadott MIDI értékekhez jegyzeteltolást ad. Ha a gomb középre van állítva, akkor lejátssza a tömbben megjelölt MIDI-hangokat, de a hangmagasság-elforgatásakor félhangot ad hozzá vagy von le a lejátszott hangokhoz.

Új sorozatok hozzáadása

Új sorokat adhat hozzá a NOTES tömbhöz, ha egyszerűen hozzáad egy új 8 jegyű tömböt a lista végéhez. Ha mégis ezt teszi, akkor a numSequence változó értékét is módosítania kell, hogy megfeleljen az új sorozatszámnak. Például a NOTES tömb alapértelmezés szerint 21 szekvenciát tartalmaz, így a numSequence változó értéke 21. Ha hozzáad egy új sorozatot, akkor a numSequence változót 22 -re kell változtatnia.

Annyi új sorozatot adhat hozzá, amennyit csak akar.

A sorozat hosszának megváltoztatása

Ha módosítani szeretné a sorozatok hosszát (ha 4 vagy 16 lépéses sorozatot szeretne), akkor ezt megteheti, de az egyetlen figyelmeztetés az, hogy minden sorozatnak azonos hosszúságúnak kell lennie. Azt is be kell állítania a numNotes változót, hogy megfeleljen a sorozatok hosszának.

Egyéb változások

Számos egyéb testreszabás is lehetséges, például a hullámforma típusok váltása, a szűrőbeállítások/értékek, amelyek kívül esnek az oktatóanyag keretein. A Mozzi -kód kitalálása először kissé kihívást jelenthet, de megpróbáltam a kódot a lehető legnagyobb mértékben dokumentálni, hogy megmutassam, mit csinálnak a kód különböző részei.

A Mozzi kódjának néhány fő része meglehetősen specifikus felhasználású, és ezeket az alábbiakban felsoroltam, hogy megértsük, mire használják őket:

  • setup () - Ha az Arduinos programozását korábban elvégezte, és nem ismeri ezt a funkciót, és nagyjából ugyanazt használja a Mozzi -ban. Leginkább oszcillátorok, szűrők stb. Alapértelmezett beállításainak megadására használjuk.
  • updateControl () - Itt végzi a dolgát a Mozzi -kód oroszlánrésze. Itt olvassuk a pot és gomb értékeket, feltérképezzük és átalakítjuk ezeket az értékeket a szintetizátorba, és ahol a szekvenálás történik.
  • updateAudio () - Ez a Mozzi könyvtár végső kimenete. Általában a kód itt nagyon kicsi és sovány, mivel ezt a funkciót használja a Mozzi, hogy maximalizálja az összes lehetséges órajelet. Amint a szúnyogkódban látható, kissé titokzatos lehet, de alapvetően csak annyit teszünk, hogy egyesítjük/megsokszorozzuk a különböző hullámformáinkat, majd kétszer eltoljuk őket, hogy illeszkedjenek egy adott számtartományhoz. A legjobb, ha ezt a funkciót nagyon könnyűnek tartjuk (nem a soros hívásokat vagy az olvasótűket), és a legtöbb dolgot a controlUpdate () függvénybe helyezzük. A Mozzi dokumentációja ezt alaposabban részletezi.

Ajánlott: