Բովանդակություն:
- Քայլ 1: Նյութեր
- Քայլ 2: theրագրաշարի տեղադրում
- Քայլ 3: Արագացուցիչի միացում
- Քայլ 4: Flex սենսորների ամրացում
- Քայլ 5: Առավելագույնի հետ շփում
- Քայլ 6. Կառուցեք Մաքսային ծածկագրի մնացած մասը
- Քայլ 7: Բառացիորեն ամեն ինչ միասին դնել
Video: Հագանելի տեխնիկա. Ձայնը փոխող ձեռնոց `7 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:48
Դե, թվում է, թե անհավատալի ուժ ունեցող ձեռնոցներն այս օրերին բարկանում են: Թեև Thanos- ի Infinity ձեռնոցը բավականին հզոր ձեռնոց է, մենք ցանկանում էինք ձեռնոց պատրաստել, որը կարող է անել նույնիսկ ավելի ուշագրավ մի բան. Փոխել իրական ժամանակի կրողի ձայնը:
Այս Instructable- ը ներկայացնում է այն, թե ինչպես ենք մենք նախագծել ձայնը փոխող ձեռնոց: Մեր դիզայնի մեջ օգտագործվեցին ձեռքի տարբեր սենսորներ և միկրոկոնտրոլեր `շարժումները հայտնաբերելու համար, որոնք Arduino կոդի միջոցով ուղարկվեցին Max կարկատուն, որտեղ մեր ձայնային ազդանշանը այնուհետև փոխվեց և խեղաթյուրվեց զվարճալի եղանակներով: Մեր օգտագործած հատուկ տվիչները, շարժումները և ձայնի փոփոխությունները ճկուն են տարբեր նկատառումներով. սա ձայնը փոխող ձեռնոց ստեղծելու միայն մեկ միջոց է:
Այս նախագիծը Պոմոնա քոլեջի ուսանողների և Ֆրեմոնտի ինժեներական ֆեմիներների ակադեմիայի միջև համայնքային համագործակցության մի մասն էր: Դա էլեկտրոնային ճարտարագիտության և էլեկտրոնային երաժշտության տարրերի իսկական զվարճալի խառնուրդ է:
Քայլ 1: Նյութեր
Մասեր:
- HexWear միկրոկառավարիչ (ATmega32U4) (https://hexwear.com/)
- MMA8451 արագացուցիչ (https://www.adafruit.com/product/2019)
- Կարճ ճկման տվիչներ (x4) (https://www.adafruit.com/product/1070)
- Թեթև վազող ձեռնոց
- #2 պտուտակներ և լվացարաններ (x8)
- Սեղմիչ տերմինալի միակցիչներ; 22-18 չափիչ (x8) (https://www.elecdirect.com/crimp-wire-terminals/ring-crimp-terminals/pvc-ring-terminals/ring-terminal-pvc-red-22-18-6- 100 հատ)
- 50kΩ դիմադրություն (x4)
- Մետաղալար (20 ֆունտ չափիչ)
- Ինքնասոսնձվող անվտանգության քորոց
- Eltգացված կամ այլ գործվածք (~ 10 քմ)
- Կարի թել
- Zipties
- Նոթբուք
- USB խոսափող
Գործիքներ
- Oldոդման հավաքածու
- Մետաղալարեր և մետաղալարեր
- Էլեկտրական ժապավեն
- Տաք օդային ատրճանակ
- Պտուտակահան
- Մկրատ
- Կարի ասեղ
Softwareրագրային ապահովում:
- Max by Cycling '74 (https://cycling74.com)
- Arduino ծրագրակազմ (https://www.arduino.cc/hy/Main/Software)
Քայլ 2: theրագրաշարի տեղադրում
Սկսենք նրանից, թե որն է իսկապես ցանկացած նախագծի ամենահուզիչ մասը `գրադարանների տեղադրում (և ավելին):
Arduino:
Ներբեռնեք և տեղադրեք Arduino ծրագիրը (https://www.arduino.cc/hy/Main/Software):
HexWear:
1) (Միայն Windows- ի համար, Mac- ի օգտվողները կարող են բաց թողնել այս քայլը) Տեղադրեք վարորդը ՝ այցելելով https://www.redgerbera.com/pages/hexwear-driver-installation: Ներբեռնեք և տեղադրեք վարորդը (.exe ֆայլը, որը նշված է Քայլ 2 -ում ՝ կապված RedGerbera- ի էջի վերևում):
2) Տեղադրեք պահանջվող գրադարանը Hexware- ի համար: Բացեք Arduino IDE- ն: «Ֆայլ» բաժնում ընտրեք «Նախապատվություններ»: Լրացուցիչ խորհուրդների մենեջերի URL- ների համար նախատեսված տարածքում տեղադրեք
github.com/RedGerbera/Gerbera-Boards/raw/master/package_RedGerbera_index.json:
Այնուհետև կտտացրեք «Լավ»:
Գնացեք Գործիքներ -> Տախտակ. -> Տախտակի կառավարիչ: Վերին ձախ անկյունի ընտրացանկից ընտրեք «Նպաստված»:
Որոնեք, այնուհետև կտտացրեք Gerbera խորհուրդներին և կտտացրեք Տեղադրեք: Դուրս եկեք և վերաբացեք Arduino IDE- ն:
Գրադարանը ճիշտ տեղադրված լինելու համար գնացեք Գործիքներ -> Տախտակ և ոլորեք դեպի ցանկի ներքևը: Դուք պետք է տեսնեք «Գերբերայի տախտակներ» վերնագրով մի հատված, որի տակ պետք է գոնե հայտնվի HexWear (եթե ոչ ավելի շատ վահանակներ, ինչպիսիք են mini-HexWear- ը):
Արագացուցիչ
Ներբեռնեք և տեղադրեք արագացուցիչի գրադարանը (https://learn.adafruit.com/adafruit-mma8451-accelerometer-breakout/wiring-and-test)
Քայլ 3: Արագացուցիչի միացում
Այս նախագծի հետ փոխազդեցության համար մեզ անհրաժեշտ են երկու հիմնական տեսակի տվիչներ `արագացուցիչ և ճկուն տվիչներ: Մենք դրանք կքննենք մեկ առ մեկ ՝ սկսած արագացուցիչից: Նախ, մեզ անհրաժեշտ են ապարատային կապերը ՝ համապատասխանեցնելու համար:
Ձեր Hex- ին վնասելուց խուսափելու համար խորհուրդ ենք տալիս տեղադրել #2 պտուտակ և լվանալ ցանկալի նավահանգիստների միջով, այնուհետև ամրացնել բոլոր միացումներն այդ պտուտակին: Ձեռնոցի հետ խաղալիս որևէ բան չթուլանալու համար կապերը պետք է զոդվեն և (կամ) ծալվեն: Յուրաքանչյուր կապի համար օգտագործելով մի քանի սանտիմետր մետաղալար, կատարեք հետևյալ միացումները Hex- ից մինչև արագացուցիչի վրա (տե՛ս վերևի քորոցները հղման համար).
Մուտքային լարման VINGROUND GNDSCL/D3 SCLSDA/D2 SDA
Երբ ամեն ինչ լարված է, մենք պատրաստ ենք փորձարկման:
Որպես թեստ, գործարկեք արագացուցիչի ընտրանքային կոդը Arduino- ում (Ֆայլ-> Օրինակներ-> Adafruit_MMA8451-> MMA8451demo) ՝ համոզվելով, որ այն կարող է թողարկվել Սերիական մոնիտորի վրա: Այն պետք է դուրս գա արագացման շնորհիվ ծանրության (~ 10 մ/վ) z ուղղությամբ, երբ պահվում է մակարդակում: Արագացուցիչը թեքելով ՝ այս արագացումը կչափվի x կամ y ուղղությամբ; մենք կօգտագործենք դա ՝ թույլ տալով կրողին փոխել ձայնը ՝ պտտելով ձեռքը:
Այժմ մենք պետք է արագացուցիչի տվյալները ներկայացնենք այնպես, որ այն հնարավոր լինի կապել Max- ի հետ: Դա անելու համար մենք պետք է տպենք x և y արժեքները, որոնք, հավանաբար, փոփոխված են ՝ ցանկալի տիրույթին համապատասխանելու համար (տես Մաս 6): Այստեղ կցված մեր ծածկագրում մենք անում ենք հետևյալը.
// Չափել thex- ուղղությունը և y- ուղղությունը: Մենք բաժանվում և բազմապատկվում ենք ՝ MAX- ի ճիշտ տիրույթների մեջ ընկնելու համար (1000 -ում x- ում և 40 -ում y- ում) xdir = event.acceleration.x/0.02; ydir = abs (event.acceleration.y)*2; // Տպել ամեն ինչ Max- ի համար ընթեռնելի ձևաչափով `յուրաքանչյուր համարի միջև տարածություններով Serial.print (xdir); Serial.print ("");
Սա պետք է վեցանկյունը տպի արագացուցիչի x և y ուղղությունների փոփոխված արժեքները յուրաքանչյուր տողում: Այժմ մենք պատրաստ ենք ավելացնել ճկուն տվիչներ:
Քայլ 4: Flex սենսորների ամրացում
Այն, ով կրում է, կարող է ստանալ բազմաթիվ պոտենցիալ ձայնային վերահսկիչներ, եթե մենք կարողանանք հայտնաբերել կռացած մատները: Flexկուն սենսորները հենց դա կանեն: Յուրաքանչյուր ճկվող սենսոր, ըստ էության, պոտենցիոմետր է, որտեղ չկռված ունի K 25KΩ դիմադրություն, մինչդեռ լիովին ճկված ՝ ~ 100KΩ դիմադրություն: Մենք յուրաքանչյուր ճկուն սենսոր դնում ենք պարզ լարման բաժանարարի մեջ `50K դիմադրիչով, ինչպես ցույց է տրված առաջին նկարում:
Կրկին օգտագործելով բավականին կարճ երկարությամբ մետաղալարեր (հիշեք, որ այս ամենը տեղավորվելու է ձեռնոցի հետևի մասում), կպցրեք չորս լարման բաժանարար մոդուլ: Չորս մոդուլները կկիսվեն նույն Vin- ով և գետնին-մենք ոլորեցինք լարերի պոկված ծայրերը միասին, այնպես որ մենք կունենանք զոդման ընդամենը մեկ կապ: Ի վերջո, վերցրեք չորս մոդուլները և կատարեք երկրորդ նկարում ցուցադրվող կապերը (եթե ինչ -որ մեկը գիտի, թե ինչպես դա անել առանց սարսափելի խճճված խառնաշփոթի, խնդրում ենք բացահայտել ձեր գաղտնիքները):
Այժմ, մեզ անհրաժեշտ է Arduino կոդը ՝ յուրաքանչյուր սենսորից լարման մեջ կարդալու համար: Մեր նպատակների համար մենք ճկուն տվիչներին վերաբերվեցինք որպես անջատիչներ; նրանք կամ միացված էին, կամ անջատված: Որպես այդպիսին, մեր կոդը պարզապես սահմանում է լարման շեմ-այս շեմից բարձր, մենք 1-ը թողարկում ենք Սերիական պորտին (այսինքն ՝ սենսորը թեքված է), հակառակ դեպքում մենք թողնում ենք 0:
// Վերցրեք մի շարք
անալոգային նմուշներ և դրանք ավելացրեք յուրաքանչյուր Flex սենսորի համար
while (sample_count <NUM_SAMPLES) {
sum10 += analogRead (A10);
sum9 += analogRead (A9);
sum7 += analogRead (A7);
sum11 += analogRead (A11);
նմուշ_հաշիվ ++;
// Կարճ ուշացում ՝ դրանք շատ արագ չվերցնելու համար
ուշացում (5);
}
// հաշվարկել լարումը, միջին արագությունը արագ նմուշների վրա
// օգտագործել 5.0 -ը 5.0V ADC- ի համար
հղման լարումը
// 5.015V- ը չափագրված է
հղման լարումը
լարման 10 = ((բոց) գումար 10 /
(բոց) NUM_SAMPLES * 5.015) / 1024.0;
լարման 9 = ((բոց) գումար 9/
(բոց) NUM_SAMPLES * 5.015) / 1024.0;
լարում 7 = ((բոց) գումար 7 /
(բոց) NUM_SAMPLES * 5.015) / 1024.0;
լարման 11 = ((բոց) գումար 11 /
(բոց) NUM_SAMPLES * 5.015) / 1024.0;
// Ստուգեք, արդյոք յուրաքանչյուր ճկուն սենսոր
ավելի մեծ է, քան շեմը (շեմը). եթե այո, ապա սահմանեք թիվը
// Pinkie մատը
եթե (լարումը 10> շեմ)
{
//-5 բարձրացնել
ձայնի բարձրությունը մեկ օկտավայով
flex10 = -10;
}
այլապես flex10 = 0;
//Մատանեմատ
եթե (լարման 9>
(շեմ -0,4)) {
// 5 -ից ցածր
ձայնի բարձրությունը մեկ օկտավայով
flex9 = 5;
}
այլապես flex9 = 0;
//Միջնամատ
if (volt7> thresh) {
// 1 սահմանելու համար
արձագանքման ազդեցություն
flex7 = 1;
}
այլապես flex7 = 0;
// ցուցամատ
եթե (լարման 11> շեմ)
{
// 50 սահմանելու համար
ցիկլեր մինչև 50
flex11 = 93;
}
այլապես flex11 = 0;
// Վերականգնել բոլոր հաշվարկները
փոփոխական 0 -ի համար հաջորդ հանգույցի համար
նմուշ_հաշիվ = 0;
գումար 10 = 0;
գումար 9 = 0;
գումար 7 = 0;
գումար 11 = 0;
Այս պահին Սերիայի նավահանգիստը պետք է ցույց տա արագացուցիչի կողմնորոշման արժեքները, ինչպես նաև `արդյոք յուրաքանչյուր ճկվող սենսոր թեքված է: Մենք պատրաստ ենք մեր Arduino ծածկագրին խոսել Max- ի հետ:
Քայլ 5: Առավելագույնի հետ շփում
Այժմ, երբ Hex ծածկագիրը բազմաթիվ թվեր է թքում թերի սերիայի միջոցով, մեզ անհրաժեշտ է Max ծրագրակազմը ՝ այս ազդանշանները կարդալու համար: Վերևում պատկերված կոդի բլոկը հենց դա է անում: Շատ բարի գալուստ:
Կարևոր նշում. Ծածկագիրը Hex- ում վերբեռնելուց հետո փակեք սերիական պորտի բոլոր պատուհանները, այնուհետև Max ծածկագրում շրջապատված տառը փոխեք, որպեսզի համապատասխանի Hex նավահանգստին: Եթե վստահ չեք, թե որ տառը պետք է սահմանել, Max կոդի «տպել» հատվածը սեղմելով ՝ կցուցադրվեն բոլոր միացված պորտերը:
Hex- ի սերիական նավահանգստից տպագրված տողը կարդացվում է Max կոդի բլոկի միջոցով, այնուհետև բաժանվում է ՝ հիմնվելով տարածության սահմանազատիչների վրա: Max բլոկի վերջում թողած ելքը թույլ է տալիս առանձին վերցնել յուրաքանչյուր թիվ, ուստի մենք առաջին ելքային տարածությունը կմիացնենք այնտեղ, որտեղ մենք ցանկանում ենք գնալ արագացուցիչի x ուղղություն, երկրորդ տարածությունը կլինի y ուղղությունը և այլն: հիմա, պարզապես միացրեք դրանք թվային բլոկներին `ապահովելու համար, որ դրանք աշխատում են: Դուք պետք է կարողանաք շարժել արագացուցիչը և ճկուն տվիչները և տեսնել, թե ինչպես են թվերը փոխվում Max ծրագրաշարում:
Քայլ 6. Կառուցեք Մաքսային ծածկագրի մնացած մասը
Հաշվի առնելով Max լեզվի հզորությունը, դուք իսկապես կարող եք թույլ տալ, որ ձեր երևակայությունը մարվի այստեղ ՝ բոլոր եղանակներով, որոնցով դուք կարող եք փոփոխել մուտքային ձայնային ազդանշանը ձեր կախարդական ուժային ձեռնոցով: Այնուամենայնիվ, եթե ձեր գաղափարները սպառվեն, վերը նշված է, թե ինչ է անում և ինչպես է աշխատում մեր Max կոդը:
Յուրաքանչյուր պարամետրի համար, որը փորձում եք փոխել, հավանաբար կցանկանաք խառնվել Arduino կոդից ստացվող արժեքների շրջանակին `ճիշտ զգայունություն ստանալու համար:
Max- ի անսարքությունների վերացման մի քանի այլ խորհուրդներ.
-
Եթե ձայն չեք լսում
- համոզվեք, որ Max- ը կարգավորել է ձեր խոսափողից աուդիո ստանալը (Ընտրանքներ Աուդիո կարգավիճակի մուտքագրման սարք)
- համոզվեք, որ Max- ում Master Volume սլայդերը միացված է, և ցանկացած այլ ձայնի կարգավորիչներ, որոնք կարող եք ունենալ ձեր ծածկագրում
-
Եթե ծածկագիրը կարծես ոչինչ չի անում
- համոզվեք, որ ձեր կարկատանը կողպված է (կողպեքի նշանը ներքևի ձախ անկյունում)
- Max կարկատակի ընթերցումների միջոցով համոզվեք, որ ձեր Max կարկատածը դեռ տվյալներ է ստանում Arduino սերիական նավահանգստից: Եթե ոչ, փորձեք վերականգնել սերիական նավահանգիստը (ինչպես նկարագրված է Քայլ 5 -ում) և/կամ ստուգել ձեր ֆիզիկական լարերի միացումները:
-
Պարամետրերը փոխելու ժամանակ կտրելու տարօրինակ ձայներ
սա կապված է ~ tapin- ի և ~ tapout- ի աշխատանքի հետ; մասնավորապես, երբ դուք փոխում եք նրանց արժեքները, դրանք վերակայվում են, ինչը առաջացնում է կտրումը: Հաշվի առնելով ծրագրի վերաբերյալ մեր սահմանափակ գիտելիքները, մենք գրեթե համոզված ենք, որ դա ավելի լավ միջոց է դա անել Max- ում և խնդիրը վերացնել…
Քայլ 7: Բառացիորեն ամեն ինչ միասին դնել
Մնում է միայն միացնել մեր սխեման մեր ձեռնոցին: Վերցրեք ձեր լրացուցիչ հյուսվածքը և կտրեք ժապավեններից փոքր -ինչ ավելի մեծ շերտեր: Ձեռքի մատի վրա կարել լրացուցիչ հյուսվածք, որտեղ թեքվում է ճկուն սենսորը (մենք չենք կարող ճկվող սենսորները ուղղակի սոսնձել ձեռնոցի վրա, քանի որ ձեռքի հյուսվածքը ձգվում է մատների թեքվելիս)): Երբ թևը հիմնականում կարված է, սահեցրեք ճկվող սենսորը դեպի ներս և զգուշորեն կարեք լարերը դեպի ձեռնոցը ՝ ամրացնելով ճկվող սենսորը տեղում: Կրկնեք սա յուրաքանչյուր ճկուն սենսորի համար:
Հաջորդը, օգտագործեք ինքնասոսնձվող անվտանգության քորոցը ՝ Hex- ը ձեռնոցի հետևի մասին ամրացնելու համար (գուցե ցանկանաք մի փոքր տաք սոսինձ դնել քորոցի վրա, որպեսզի համոզվեք, որ այն մաշվածության ընթացքում չի ջնջվի): Կարել արագաչափը ձեռնոցի դաստակին: Ի վերջո, օգտագործեք կայծակաճարմանդների կախարդանքը `գեղեցիկ մաքրելու ցանկացած տհաճ լարերը:
Դուք պատրաստ եք փորձության ենթարկել երգելու ձեր ամենաուժեղ ձեռնոցը: (Կարո՞ղ ենք խորհուրդ տալ Daft Punk- ի «Ավելի դժվար, ավելի արագ ՝ ավելի ուժեղ» ՝ ձեր ձայնը փոխելու ունակությունները լիարժեք ցուցադրելու համար)
Խորհուրդ ենք տալիս:
Հագանելի լապտեր (CPX- ով) ՝ 8 քայլ
Հագանելի լապտեր (CPX- ով). Բարև բոլորին, ես պատրաստել եմ կրելի լապտեր, որը կարելի է կրել ձեր ձեռքին: Ես օգտագործել եմ Adafruit- ի կոդը ՝ ծածկագրող կայք, որտեղ դուք տեղադրում եք կոդերի բլոկներ: Այս ուսանելիում ես ձեզ կասեմ, թե ինչ եմ արել CPX- ը (Circuit Playground Ex
Հագանելի Photon Beatbox: 7 քայլ
Wearable Photon Beatbox: Այս նախագիծը ոգեշնչված էր Adafruit- ում գտած ֆոտոնային տուփի ծածկագրով. դարձնելով այն կրելի էլեկտրոնային ժիլետ, որը կփոխվի
Հագանելի էլեկտրոնային նշան ՝ 6 քայլ (նկարներով)
Հագանելի էլեկտրոնային կրծքանշան. Ահա մի հիանալի ծրագիր, որը պետք է ձեռնարկել, եթե մտադիր եք գնալ Hardware/Python հանդիպմանը կամ մտադիր եք գնալ ձեր տեղական Makerfaire: Պատրաստեք կրելի էլեկտրոնային կրծքանշան, որը հիմնված է Raspberry Pi Zero և PaPiRus pHAT eInk էկրանների վրա: Կարող եք հետևել
Հագանելի տեխնիկա ՝ օդային հարվածային գործիքներ ՝ 5 քայլ
Wearable Tech: Air Drums. Այս նախագծի մեր նպատակն էր արագացուցիչ սարքերից և պիեզո սկավառակներից պատրաստել կրելի թմբուկի հավաքածու: Գաղափարն այն էր, որ ձեռքի հարվածից որոգայթ աղմուկ կխաղա; կամ, ոտնաթաթի սեղմումով, հնչում էր բարձր գլխարկի կամ բասի թմբուկի ձայն: Վերահսկելու համար
Wizard ձեռնոց. Arduino վերահսկվող վերահսկիչ ձեռնոց. 4 քայլ (նկարներով)
Կախարդի ձեռնոց. Arduino- ի վերահսկվող ձեռնոց. The Wizard ձեռնոց: Իմ նախագծում ես պատրաստել եմ ձեռնոց, որը կարող ես օգտագործել քո սիրած կախարդական խաղերը զով և սուզիչ եղանակով խաղալու համար `օգտագործելով ընդամենը մի քանի հիմնական arduino- ի և arduino- ի ակտիվներ: դուք կարող եք խաղալ այնպիսի խաղեր, ինչպիսիք են երեցների գրքերը, կամ դուք