Obsah:
- Krok 1: Materiály
- Krok 2: Inštalácia softvéru
- Krok 3: Pripojenie akcelerometra
- Krok 4: Pripojenie senzorov Flex
- Krok 5: Rozhranie s max
- Krok 6: Zostavenie zvyšku maximálneho kódu
- Krok 7: Doslova to všetko dať dohromady
Video: Technika nosenia: Rukavice meniace hlas: 7 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Zdá sa, že v dnešnej dobe sú v móde rukavice s neuveriteľnými schopnosťami. Aj keď je Thanosova nekonečná rukavica dosť silnou rukavicou, chceli sme vytvoriť rukavicu, ktorá dokáže ešte niečo pozoruhodnejšie: zmeniť hlas nositeľa v reálnom čase.
Tento návod poskytuje návod, ako sme navrhli rukavice na zmenu hlasu. Náš návrh využíval rôzne senzory a mikrokontrolér v rukavici na detekciu pohybov, ktoré boli odoslané prostredníctvom kódu Arduino do opravy Max, kde bol náš zvukový signál potom zábavným spôsobom zmenený a skreslený. Špecifické snímače, pohyby a zvukové zmeny, ktoré sme použili, sú flexibilné z rôznych dôvodov; toto je len jeden zo spôsobov, ako si vytvoriť rukavice meniace hlas!
Tento projekt bol súčasťou komunitného partnerstva medzi študentmi Pomona College a Fremont Academy of Engineering Femineers. Je to skutočne zábavná zmes elektronického inžinierstva a prvkov elektronickej hudby!
Krok 1: Materiály
Diely:
- Mikrokontrolér HexWear (ATmega32U4) (https://hexwear.com/)
- Akcelerometer MMA8451 (https://www.adafruit.com/product/2019)
- Krátke flexibilné snímače (x4) (https://www.adafruit.com/product/1070)
- Ľahké bežecké rukavice
- Skrutky a podložky #2 (x8)
- Krimpovacie konektory; Rozchod 22-18 (x8) (https://www.elecdirect.com/crimp-wire-terminals/ring-crimp-terminals/pvc-ring-terminals/ring-terminal-pvc-red-22-18-6- 100 ks)
- Odpor 50 kΩ (x4)
- Drôt (~ 20 gauge)
- Samolepiaci zatvárací špendlík
- Plsť alebo iná tkanina (~ 10 štvorcových palcov)
- Šijacie nite
- Zipsy
- Prenosný počítač
- USB mikrofón
Nástroje
- Spájkovacia súprava
- Odizolovače a strihače drôtov
- Elektrická páska
- Teplovzdušná pištoľ
- Skrutkovač
- Nožnice
- Šijacia ihla
Softvér:
- Max by Cycling '74 (https://cycling74.com)
- Softvér Arduino (https://www.arduino.cc/en/Main/Software)
Krok 2: Inštalácia softvéru
Začneme tým, čo je skutočne najzábavnejšou súčasťou každého projektu: inštalácia knižníc (a ďalšie).
Arduino:
Stiahnite si a nainštalujte softvér Arduino (https://www.arduino.cc/en/Main/Software).
HexWear:
1) (Iba Windows, používatelia systému Mac môžu tento krok preskočiť) Nainštalujte ovládač na https://www.redgerbera.com/pages/hexwear-driver-installation. Stiahnite a nainštalujte ovládač (súbor.exe uvedený v kroku 2 v hornej časti prepojenej stránky RedGerbera).
2) Nainštalujte požadovanú knižnicu pre Hexware. Otvorte Arduino IDE. V časti „Súbor“vyberte „Predvoľby“. Prilepte miesto, ktoré je určené pre adresy URL doplnkového panela správcov
github.com/RedGerbera/Gerbera-Boards/raw/master/package_RedGerbera_index.json.
Potom kliknite na „OK“.
Prejdite na Nástroje -> Doska: -> Správca rady. V ponuke v ľavom hornom rohu vyberte možnosť Prispené.
Vyhľadajte a potom kliknite na dosky Gerbera a kliknite na položku Inštalovať. Ukončite a znova otvorte Arduino IDE.
Aby ste sa uistili, že je knižnica nainštalovaná správne, prejdite na Nástroje -> Doska a posuňte sa do spodnej časti ponuky. Mali by ste vidieť sekciu s názvom „Dosky Gerbera“, pod ktorou by sa mal objaviť aspoň HexWear (ak nie viac dosiek ako mini-HexWear).
Akcelerometer:
Stiahnite si a nainštalujte knižnicu akcelerometra (https://learn.adafruit.com/adafruit-mma8451-accelerometer-breakout/wiring-and-test)
Krok 3: Pripojenie akcelerometra
Na interakciu s týmto projektom potrebujeme dva hlavné typy senzorov: akcelerometer a flex senzory. Budeme ich skúmať jeden po druhom, počnúc akcelerometrom. Najprv potrebujeme, aby sa hardvérové pripojenia zhodovali.
Aby ste predišli poškodeniu šesťhranu, odporúčame vložiť skrutku a podložku č. 2 cez požadované porty a potom k nej pripevniť všetky spoje. Aby sa pri hre s rukavicou niečo neuvoľnilo, spoje by mali byť spájkované a/alebo krimpované. Pri každom zapojení pomocou niekoľkých palcov drôtu vykonajte nasledujúce spojenia od šesťuholníka k akcelerometru (referenčné informácie nájdete na vyššie uvedených vývodoch):
VSTUPNÉ NAPÄTIE VINGROUND GNDSCL/D3 SCLSDA/D2 SDA
Keď je všetko zapojené, sme pripravení testovať!
Ako test spustite ukážkový kód akcelerometra v Arduino (Súbor-> Príklady-> Adafruit_MMA8451-> MMA8451demo) a uistite sa, že môže vychádzať na sériový monitor. Pri držaní na úrovni by malo produkovať zrýchlenie v dôsledku gravitácie (~ 10 m/s) v smere z. Naklonením akcelerometra sa toto zrýchlenie bude merať v smere x alebo y; použijeme to, aby sme nositeľovi umožnili zmeniť zvuk otáčaním ruky!
Teraz musíme dáta akcelerometra prezentovať tak, aby mohli byť prepojené s Max. Aby sme to urobili, musíme vytlačiť hodnoty x a y, prípadne upravené tak, aby zodpovedali požadovanému rozsahu (pozri časť 6). V našom priloženom kóde robíme nasledujúce:
// Zmerajte smer x a smer y. Delíme a násobíme, aby sme sa dostali do správnych rozsahov pre MAX (rozsah 1000 v x a rozsah 40 v y) xdir = event.acceleration.x/0,02; ydir = abs (event.acceleration.y)*2; // Vytlačte všetko v čitateľnom formáte pre Max - s medzerami medzi každým číslom Serial.print (xdir); Serial.print ("");
To by malo Hex vytlačiť upravené hodnoty smerov x a y akcelerometra každý riadok. Teraz sme pripravení pridať flexibilné senzory!
Krok 4: Pripojenie senzorov Flex
Ak dokážeme rozpoznať ohýbanie prstov, používateľ môže získať veľa potenciálnych ovládačov zvuku. Flexibilné snímače to urobia. Každý snímač ohybu je v zásade potenciometer, kde neohnutý má odpor ~ 25 KΩ, zatiaľ čo úplne ohnutý má odpor ~ 100 KΩ. Každý flex senzor sme vložili do jednoduchého deliča napätia s 50K odporom, ako je znázornené na prvom obrázku.
Opäť použite pomerne krátke dĺžky drôtu (majte na pamäti, že to všetko bude pasovať na zadnú stranu rukavice), spájkujte štyri moduly deliča napätia. Štyri moduly budú zdieľať ten istý Vin a zem-skrútili sme spolu odizolované konce drôtov, aby sme mali iba jeden zvod na spájku. Nakoniec vezmite štyri moduly a vytvorte prepojenia uvedené na druhom obrázku (ak niekto vie, ako to urobiť bez toho, aby ste urobili strašne zamotaný neporiadok, odhaľte svoje tajomstvá).
Teraz potrebujeme kód Arduino na čítanie napätí z každého senzora. Na naše účely sme ohybné senzory považovali za spínače; boli buď zapnuté alebo vypnuté. Náš kód ako taký jednoducho nastaví prahovú hodnotu napätia-nad touto prahovou hodnotou vyvedieme na sériový port 1 (to znamená, že snímač je ohnutý), v opačnom prípade vydáme 0:
// Vezmite číslo
analógové vzorky a sčítajte ich pre každý snímač Flex
while (sample_count <NUM_SAMPLES) {
súčet 10 += analógové čítanie (A10);
sum9 += analogRead (A9);
sum7 += analógové čítanie (A7);
súčet11 += analogické čítanie (A11);
sample_count ++;
// Krátke oneskorenie, aby ste ich nebrali príliš rýchlo
oneskorenie (5);
}
// vypočítajte napätie, spriemerovanie z rýchlych vzoriek
// použite 5.0 pre 5,0V ADC
referenčné napätie
// Kalibrované je 5,015 V
referenčné napätie
napätie10 = ((float) súčet10 /
(float) NUM_SAMPLES * 5,015) / 1024,0;
napätie9 = ((float) súčet9/
(float) NUM_SAMPLES * 5,015) / 1024,0;
napätie7 = ((float) súčet7 /
(float) NUM_SAMPLES * 5,015) / 1024,0;
napätie11 = ((float) súčet11 /
(float) NUM_SAMPLES * 5,015) / 1024,0;
// Skontrolujte, či každý flex senzor
je väčší ako prah (prah) - ak áno, nastavte číslo
// Pinkie prst
ak (napätie10> prah)
{
//-5 na zvýšenie
výška hlasu o jednu oktávu
flex10 = -10;
}
else flex10 = 0;
//Prstenník
ak (napätie9>
(thresh-0,4)) {
// 5 na zníženie
výška hlasu o jednu oktávu
flex9 = 5;
}
else flex9 = 0;
//Prostredník
if (napätie7> prah) {
// 1 na nastavenie
efekt reverbu
flex7 = 1;
}
else flex7 = 0;
//Ukazovák
ak (napätie11> prah)
{
// 50 na nastavenie
cykly do 50
flex11 = 93;
}
else flex11 = 0;
// Resetovanie celého počítania
premenná na 0 pre ďalšiu slučku
sample_count = 0;
suma10 = 0;
súčet9 = 0;
súčet7 = 0;
súčet11 = 0;
V tomto mieste by mal sériový port zobrazovať hodnoty orientácie akcelerometra a tiež to, či je každý snímač ohybu ohnutý. Sme pripravení nahovoriť náš kód Arduino s Maxom!
Krok 5: Rozhranie s max
Teraz, keď hexadecimálny kód chrlí veľa čísel cez sériový port, potrebujeme softvér Max na čítanie týchto signálov. Blok kódu zobrazený vyššie robí práve to! Nemáš za čo.
Dôležitá poznámka: po nahraní kódu do hexu zatvorte všetky okná sériového portu a potom zmeňte zakrúžkované písmeno v kóde max tak, aby zodpovedalo hexadecimálnemu portu. Ak si nie ste istí, ktoré písmeno chcete nastaviť, stlačením „tlačenej“časti kódu Max sa zobrazia všetky pripojené porty.
Vytlačený riadok zo sériového portu Hex sa číta pomocou bloku kódu Max a potom sa rozdelí na základe oddeľovačov medzier. Výstup na konci bloku Max vám umožní uchopiť každé číslo jednotlivo, takže prvý výstupný priestor spojíme s miestom, kam chceme, aby smer x akcelerometra smeroval, druhý priestor bude v smere y atď. Teraz ich len spojte s číselnými blokmi a uistite sa, že fungujú. Mali by ste byť schopní pohybovať akcelerometrom a snímačmi ohybu a vidieť, ako sa čísla menia v softvéri Max.
Krok 6: Zostavenie zvyšku maximálneho kódu
Vzhľadom na silu jazyka Max tu môžete skutočne popustiť uzdu svojej fantázii všetkými spôsobmi, ktorými môžete pomocou zvukovej rukavice zmeniť magický signál. Ak vám však dochádzajú nápady, vyššie je prehľad toho, čo náš kód Max robí a ako funguje.
Pre každý parameter, ktorý sa pokúšate zmeniť, si pravdepodobne budete chcieť pohrávať s rozsahom hodnôt pochádzajúcich z kódu Arduino, aby ste získali správnu citlivosť.
Niekoľko ďalších tipov na riešenie problémov Max:
-
Ak nepočujete zvuk
- uistite sa, že je Max nastavený na príjem zvuku z vášho mikrofónu (možnosti Vstupné zvukové stavové zariadenie)
- uistite sa, že je zapnutý posúvač Hlavnej hlasitosti v Maxe a všetky ďalšie ovládače hlasitosti, ktoré môžete mať vo svojom kóde
-
Ak sa zdá, že kód nič nerobí
- uistite sa, že je vaša oprava zamknutá (symbol zámku v dolnom ľavom rohu)
- Pomocou odpočtov v záplate Max zabezpečte, aby vaša oprava Max stále získavala údaje zo sériového portu Arduino. Ak nie, skúste resetovať sériový port (ako je popísané v kroku 5) a/alebo skontrolovať vaše fyzické zapojenie.
-
Divné zvuky orezávania pri zmene parametrov
to má niečo do činenia s tým, ako ~ tapin a ~ tapout fungujú; konkrétne, že keď zmeníte ich hodnoty, resetujú sa, čo spôsobí orezanie. Vzhľadom na naše obmedzené znalosti programu sme si takmer istí, že v Maxe existuje lepší spôsob, ako to urobiť a problém odstrániť …
Krok 7: Doslova to všetko dať dohromady
Všetko, čo teraz zostáva, je pripojiť naše obvody k našej rukavici. Vezmite si ďalšiu tkaninu a vystrihnite pásy o niečo väčšie ako ohybové senzory. Prišite ďalšiu tkaninu na prst rukavice, kde sa kĺb ohýba, pričom ponechajte akýsi rukáv, v ktorom bude sedieť snímač flexa (senzory flexa nemôžeme len tak prilepiť priamo na rukavicu, pretože tkanina rukavice sa pri ohýbaní prstov naťahuje). Akonáhle je objímka väčšinou ušitá, zasuňte flex senzor a opatrne prišite elektródy k rukavici tak, aby bol flex senzor upevnený na mieste. Opakujte to pre každý flex senzor.
Ďalej pomocou samolepiaceho zatváracieho špendlíka pripevnite Hex k zadnej časti rukavice (možno budete chcieť na špendlík naliať horúce lepidlo, aby ste sa uistili, že sa počas nosenia neodstráni). Prišite akcelerometer na zápästie rukavice. Nakoniec kúzlo zipsov krásne vyčistite od všetkých nevzhľadných drôtov.
Ste pripravení vyskúšať svoju dokonalú rukavicu speváckej sily! (Dôrazne odporúčame „Harder Better Faster Stronger“spoločnosti Daft Punk, aby ste naplno predviedli svoje schopnosti meniť hlas.)
Odporúča:
Technika nosenia Parkinsonovej choroby: 4 kroky
Technika nosenia Parkinsonovej choroby: Viac ako 10 miliónov ľudí na celom svete žije s Parkinsonovou chorobou (PD). Progresívna porucha nervového systému, ktorá spôsobuje stuhnutosť a ovplyvňuje pohyb pacienta. Zjednodušene povedané, mnoho ľudí trpelo Parkinsonovou chorobou, ale
Prstencové svetlo LED meniace farbu: 11 krokov
Prstencové svetlo LED s meniacou sa farbou: Dnes vyrobíme 20 -palcové LED kruhové svetlo s meniacimi sa farbami. Viem, že kruhové svetlá majú zvyčajne kruhový tvar, ale toto bude štvorec, aby to bolo trochu jednoduchšie. Tento mini projekt je primárne pre fotografov, ktorí potrebujú
Melodický hlas: 4 kroky
Melodický hlas: koncepcia jednoduchých nástrojov a jednoduchých komunálnych požiadaviek; utiliser. Et pour ce faire, on a bien fait recurs au okruhu int é gr é. On oui! C'est le coeur m ê me de Melodic Voice qu
Svetlo Shadowbox meniace farbu: 5 krokov (s obrázkami)
Farby Shadowbox Light meniace farbu: Po prázdninách sme skončili s prebytkom nepoužívaných rámov tieňa z Ikea. Preto som sa rozhodol urobiť z jedného z nich narodeninový darček pre svojho brata. Cieľom bolo vytvoriť osvetľovací prvok napájaný batériami s logom jeho kapely a
RGB LED lacné a ľahké nočné svetlo meniace farbu: 3 kroky
RGB LED lacné a ľahké nočné svetlo meniace farbu: Tento projekt bol celkom jednoduchý, keď som sa hral a prišiel na to, čo chvíľu trvalo. Ide o to, aby ste mohli zmeniť farbu pomocou prepínača a mať tiež možnosti stmievania LED. Toto sú položky, ktoré budete potrebovať na