Բովանդակություն:
- Քայլ 1: Arduino- ի կարգավորում
- Քայլ 2: Կառավարման տարրերի ավելացում
- Քայլ 3: Արդյունքների ավելացում
- Քայլ 4: Կոդի վերբեռնում
- Քայլ 5: Շփոթություն
- Քայլ 6: Անհատականացում
Video: Arpeggiating Synthesizer (Mosquito I) ՝ 6 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Mosquito I- ը փոքր arpeggiating սինթեզատոր է, որն օգտագործում է Arduino Nano- ն և Mozzi ձայնային սինթեզի գրադարանը: Այն կարող է խաղալ ավելի քան քսան 8 քայլանոց հաջորդականություն, բայց կարող եք ավելացնել այնքան անհատական հաջորդականություններ, որքան ցանկանում եք: Համեմատաբար պարզ է տեղադրումը և չի պահանջում շատ մասեր:
Պարագաներ:
- Arduino Nano (կամ ցանկացած Arduino- ն իսկապես պետք է աշխատի)
- 5 եա պոտենցիոմետր (10K գծային)
- 2 եա Սեղմեք կոճակներ
- 1 լուսադիոդ
- 1 ea դիմադրություն (330 օմ)
- 2 ea դիմադրություն (1K)
- 1 ea դիմադրություն (2K)
- 1 եա էլեկտրոլիտիկ կոնդենսատոր (100 uF)
- 1 ե կերամիկական կոնդենսատոր (33 nF)
- 1 և ստերեո Jack
- Միացման մետաղալար
- Breadboard
Քայլ 1: Arduino- ի կարգավորում
Նախ, եկեք Նանոյին դնենք սեղանի վրա և ստեղծենք մեր հզորությունը.
- Տեղադրեք Նանոն հացահատիկի վրա: Տեղադրեք այնպես, ինչպես ցույց է տրված վերևի նկարում: Այն պետք է տեղավորվի տախտակի կենտրոնական ալիքի վրա: Դուք կցանկանաք, որ այն տեղադրվի տախտակի մի ծայրին, իսկ USB պորտը ՝ դեպի այն կողմ: Այս կերպ մալուխը չի խանգարի, երբ այն միացնենք: Եթե դուք օգտագործում եք ավելի մեծ Arduino, ինչպիսին է Uno- ն կամ Mega- ն, ապա, իհարկե, այն չեք դնի սեղանի վրա:
- Միացրեք հոսանքի ռելսերը Arduino- ին: Միացրեք ձեր տախտակի դրական (կարմիր) ռելսերից մեկը Arduino- ի 5V քորոցին `օգտագործելով մետաղալարեր կամ ցատկող լարեր: Այնուհետեւ միացրեք բացասական (կապույտ) ռելսերից մեկը Նանոյի GND կապումներից մեկին:
- Միացրեք հոսանքի ռելսերը միմյանց: Հացաթխի երկու կողմերում գտնվող ռելսերի երկայնքով էներգիա ստանալու համար միացրեք տախտակի երկու կողմերում գտնվող ռելսերը միմյանց ՝ մի կողմից դրական ռելսից մետաղալար անցկացնելով դեպի մյուս կողմի դրական երկաթուղով: Կրկնեք սա բացասական ռելսերով:
Քայլ 2: Կառավարման տարրերի ավելացում
Mosquito I- ն օգտագործում է հինգ պոտենցիոմետր և երկու կոճակ ՝ հսկիչների համար:
Պոտենցիոմետրեր.
- Կաթսաները դրեք տախտակի վրա: Տեղադրեք կաթսաները այնպես, որ յուրաքանչյուր կապում լինի իր շարքում:
- Միացրեք կաթսաները հոսանքի ռելսերին: Յուրաքանչյուր կաթսայի ձախ կողը (եթե կողպեքին եք նայում) միացրեք տախտակի բացասական ռելսերից մեկին: Յուրաքանչյուր կաթսայի աջ կողային կապը միացրեք տախտակի դրական ռելսերից մեկին:
- Միացրեք կաթսաները Arduino- ին: Միացրեք յուրաքանչյուր կաթսայի կենտրոնական քորոցը Arduino- ի անալոգային կապումներից մեկին: Առաջին կաթսայի կենտրոնական քորոցը միանում է A0- ին, երկրորդը `A1- ին և այլն, և վերջին կաթսան միացված է A4- ին:
Կոճակներ.
- Տեղադրեք կոճակներ սեղանի վրա: Տեղադրեք երկու կոճակները հացահատիկի վրա, որպեսզի նրանք անցնեն կենտրոնական ալիքը:
- Միացրեք դրական կողմերը: Սեղանի տախտակի մի կողմում միացրեք կոճակը սեղմող կողմերից մեկը դրական ռելսին:
- Միացրեք բացասական կողմերը: Տեղադրեք 1K դիմադրիչներից մեկը տախտակի վրա այնպես, որ մի ծայրը միացված լինի կոճակի չօգտագործված քորոցին, իսկ դիմադրության մյուս կողմը `բացասական ռելսին:
- Միացման կոճակը Arduino- ին: Շարքի վրա անցկացրեք մետաղալար, որը միացնում է կոճակը բացասական ռելսին D2 կապին: Նույնը արեք մյուս կոճակով, բայց միացրեք այն D3- ին:
Քայլ 3: Արդյունքների ավելացում
Մենք ձայնը դուրս ենք բերում 9 -րդ կապից, ինչպես նաև յուրաքանչյուր հաջորդականության առաջին քայլին լուսարձակում ենք LED: Ահա թե ինչպես պետք է սարքավորումներ սարքել դրա համար:
LED
- Տեղադրեք LED լուսատախտակի դատարկ տարածության մեջ:
- Միացրեք LED- ի բացասական (կարճ) ոտքը բացասական ռելսին:
- Տեղադրեք ընթացիկ սահմանափակող դիմադրություն: 330 օմ դիմադրության մի կողմը միացրեք LED- ի դրական (երկար) ոտքին: Ռեզիստորի մյուս կողմը միացրեք Arduino- ի D4 կապին:
Աուդիո ելք
- Տեղադրեք RC ցանցը: Arduino- ի ելքային ազդանշանը գալիս է 9 -րդ կապից, սակայն ազդանշանը կարող է մի փոքր ավելի տաք լինել, քան կարող են կարգավորել որոշ բարձրախոսներ: Գծի մակարդակին ինչ -որ բանի իջեցնելու համար ես ավելացրել եմ RC ցանց (Notes & Volts- ի դիզայնի հիման վրա): Տեղադրեք 33nF և 100uF կոնդենսատորները ՝ 2K դիմադրության հետ միասին, ինչպես ցույց է տրված պատկերում/սխեմատիկ: Համոզվեք, որ էլեկտրոլիտիկ 100uF կոնդենսատորը միացված է ճիշտ բևեռայնության հետ (դրական/երկար ոտքը Arduino- ի վրա կկցվի 9 -ի, իսկ ժապավենի հետ ՝ բացասական/կարճ ոտքը):
- Միացրեք աուդիո խցիկի բացասական կողմը գետնին: Աուդիո խցիկի միացումները մի փոքր կտարբերվեն `կախված ձեր օգտագործած տեսակից, բայց դրանք ընդհանուր առմամբ նույնն են: Մենք պետք է միացնենք թևի թևը գետնին: Սա երբեմն նշվում է մինուս խորհրդանիշով կամ պիտակվում որպես «թև», «մատանի» կամ «գնդ»: Եթե ձեր աուդիո խցիկի վրա պիտակներ չկան, գուցե անհրաժեշտ լինի խորհրդակցել տվյալների թերթիկի հետ կամ պարզապես մանրակրկիտ զննել բանալին և տեսնել, թե արդյոք կարող եք որոշել, թե որ քորոցը միացված է ճակատի թևի կամ արտաքին օղակի հետ:
- Միացրեք աուդիո խցիկի դրական կողմը 100uF կոնդենսատորի բացասական կողմին: Մեր ձայնային ազդանշանը այժմ հոսում է Arduino- ի 9 -րդ կապից RC ցանցի միջով և դուրս է գալիս 100uF կոնդենսատորի բացասական կողմից: Մենք դա կկապենք մեր ձայնային խցիկի դրական կողմի հետ: Սա սովորաբար նշվում է գումարած խորհրդանիշով կամ կարող է պիտակավորված լինել «հուշում»: Կրկին, եթե այն պիտակավորված չէ, գուցե անհրաժեշտ լինի զննել այն ՝ պարզելու համար, թե որ քորոցը կկապվի վարդակի ծայրին: Բացի այդ, եթե դուք օգտագործում եք ստերեո միակցիչ, կարող է լինել L հուշում և R հուշում միացում: Քանի որ մենք թողարկում ենք մոնո ազդանշան, կարող եք պարզապես միանալ հուշման միացումներից մեկին:
Կարևոր. Եթե գտնում եք, որ ձայնը չափազանց հանգիստ է, գուցե կարողանաք վերացնել RC ցանցը 1 -ին քայլում և անմիջապես միանալ Arduino- ի 9 -րդ կապից ձայնին: Եթե ձայնը միացնում եք նախապես ուժեղացուցիչի, ինչպես արտաքին համակարգչի բարձրախոսներին, որտեղ ձայնի ձայնային կոճակ կա, այն միացնում եք ինչ-որ բանի, բայց ես դա խորհուրդ չեմ տա այնպիսի բաների համար, ինչպիսիք են ականջակալները, ականջակալները կամ բարձրախոսին ուղղակիորեն միացնելը: Եթե դուք որոշեք վերացնել RC ցանցը, ես առաջարկում եմ բարձրացնել ձայնի ձայնը մինչև Arduino- ն վառելուց առաջ, այնուհետև աստիճանաբար բարձրացնել ձայնը `ձեր բարձրախոսները փչելուց խուսափելու համար:
Ամեն ինչ կարգավորելուց հետո կրկին ստուգեք, որ բոլոր կապերը ճիշտ տեսք ունենան և համապատասխանեն վերը նշված պատկերին և սխեմատիկին
Քայլ 4: Կոդի վերբեռնում
Այժմ, երբ սարքավորումն ամբողջությամբ կարգավորված է, մենք պատրաստ ենք լուծել ծրագրային ապահովման կողմը.
- Գործարկեք Arduino IDE- ն: Ձեր համակարգչում գործարկեք Arduino IDE- ն (եթե այն չունեք, կարող եք ներբեռնել այն https://www.arduino.cc/en/software- ից):
- Ներբեռնեք Mozzi գրադարանը: Mozzi գրադարանը մեզ թույլ է տալիս օգտագործել մեր Arduino- ն որպես սինթեզատոր: Այս գրադարանը ձեր IDE- ում ձեռք բերելու համար անցեք Mozzi github էջ https://sensorium.github.io/Mozzi/download/: Կտտացրեք կանաչ «Կոդ» կոճակին և ընտրեք Ներբեռնեք ZIP:
- Տեղադրեք Mozzi գրադարանը zip ֆայլից: Arduino IDE- ում գնացեք Sketch-> Include Library-> Add. ZIP Library… Գնացեք դեպի ներբեռնված zip ֆայլը այն ավելացնելու համար: Այժմ դուք պետք է տեսնեք Mozzi- ն, որը նշված է Sketch-> Include Library բաժնում:
- Ներբեռնեք Mosquito I Arduino ծածկագիրը: Դուք կարող եք դա ստանալ իմ github կայքից ՝ https://github.com/analogsketchbook/mosquito_one: (Նկատի ունեցեք, որ սխեմաները հասանելի են նաև այնտեղ, եթե դրանք ձեզ անհրաժեշտ են էլեկտրահաղորդման համար:
- Միացրեք Arduino- ն համակարգչին և վերբեռնեք ծածկագիրը:
Քայլ 5: Շփոթություն
Վերջ: Դուք պետք է կարողանաք միացնել ձեր բարձրախոսները աուդիո խցիկին և լսել արպեջիացված սինթեզի քաղցր ձայնը այդ անհանգիստ Նանոյից: Եթե սկզբում ոչինչ չեք լսում, փորձեք կոճակները կենտրոնացնել բոլոր կաթսաների վրա `համոզվելու համար, որ արժանապատիվ մեկնարկային արժեքներ եք ստանում:
Ահա թե ինչ են անում վերահսկիչները.
Կաթսաներ:
Գնահատում. Սա վերահսկում է, թե ինչ արագությամբ է նվագարկվում հաջորդականիչը: Այն մերժելը հաջորդաբար կատարում է դիսկրետ նոտաներ: Այն ավելի բարձր դարձնելով `նոտաները միաձուլվում են` ստեղծելով բոլորովին նոր ալիքի ձևեր:
Լեգատո. Երկրորդ կաթսան վերահսկում է լեգատո կամ նոտայի երկարությունը: Այն ավելի շատ ձախ թեքելը տալիս է կարճ, sticatto գրառումներ, մինչդեռ այն դեպի աջ ՝ ավելի երկար գրառումներ:
Pitch: Սա սահմանում է հաջորդականության հիմնական սկիպիդարը: Թեքության կառավարումը սահմանում է MIDI արժեքներ, ուստի այն ավելացնում/նվազեցնում է կիսադասի բարձրությունը, այլ ոչ թե անընդհատ քայլերի տեղաշարժը:
Փուլ. Այս բռնակն աջ թեքելը ներկայացնում է փուլային նուրբ էֆեկտ: Տեխնիկապես ասած, դա պատճառ է դառնում, որ Mosquito I- ի երկու տատանումները փոքր -ինչ անջատվեն, ինչն էլ առաջացնում է փուլային փուլ: Այնուամենայնիվ, դա սկիպիդարով հետևելը չէ, այնպես որ փուլային ազդեցությունը, հավանաբար, ավելի նկատելի է ավելի ցածր սկիպիդարների վրա:
Filտիչ. Այս կոճակը վերահսկում է ցածր փոխանցման ֆիլտրի անջատման հաճախականությունը: Այն ձախ թեքելը կտրում է բարձր հաճախականությունները ՝ առաջացնելով ավելի խլացված ձայն, մինչդեռ այն աջ թեքելը տալիս է ավելի պայծառ ձայն:
Կոճակներ:
Mosquito- ն ունի ավելի քան քսան տարբեր հաջորդականություն, որոնք կարող են լռելյայն խաղալ: Սեղմման կոճակները թույլ են տալիս ընտրել, թե որ հաջորդականությունն է խաղում: Մեկ կոճակը ձեզ տեղափոխում է հաջորդականությունների ցանկը, իսկ մյուսը իջնում է ցանկը:
Քայլ 6: Անհատականացում
Ես ավելացրել եմ մի շարք կանխադրված հաջորդականություններ, հիմնականում ՝ տարբեր սանդղակներ, բայց դուք կարող եք բավականին հեշտությամբ հարմարեցնել ծածկագիրը ՝ նվագարկվող գրառումների հաջորդականությունը փոխելու, նորերը ավելացնելու կամ հաջորդականությամբ նշումների քանակը փոխելու համար: Ստորև բերված են մանրամասներ, թե ինչպես է դա արվում, եթե ցանկանում եք հարմարեցնել այն:
Գոյություն ունեցող հաջորդականության մեջ նշումներ փոխելը
Հաջորդականությունները պահվում են զանգվածների զանգվածում, որոնք կոչվում են NOTES: Յուրաքանչյուր նոտա պահվում է որպես MIDI նոտայի արժեք, այնպես որ, եթե ցանկանում եք որոշակի հաջորդականությամբ փոխել նշումները, պարզապես փոխեք այդ հաջորդականության MIDI նշումների համարները: Լռելյայն կարգավորումն է ՝ յուրաքանչյուր հաջորդականությամբ խաղալ 8 քայլ, այնպես որ կարող եք ընդամենը 8 MIDI արժեք ունենալ հաջորդականությամբ (տե՛ս ստորև, եթե ցանկանում եք ունենալ հաջորդականության տարբեր երկարություններ):
Մի բան պետք է նշել, որ սկիպիդարների կոճակն ավելացնում է նոտայի փոխհատուցում NOTI զանգվածում նշված MIDI արժեքներին: Երբ կոճակը կենտրոնացած է, այն նվագում է զանգվածում նշված MIDI նոտաները, բայց երբ պտտեցնում եք սկիպիդարը, այն ավելացնում կամ հանում է կիսաձայնը նվագարկվող նոտաներին:
Նոր հաջորդականությունների ավելացում
Դուք կարող եք նոր հաջորդականություններ ավելացնել NOTES զանգվածին `պարզապես ցանկի վերջում ավելացնելով 8 նոտայի նոր զանգված: Եթե դա անեք, դուք նույնպես պետք է փոխեք numSequences փոփոխականի արժեքը `հաջորդականությունների նոր թվին համապատասխանելու համար: Օրինակ, NOTES զանգվածը լռելյայն ունի 21 հաջորդականություն, ուստի numSequences փոփոխականը սահմանվում է 21 -ի: Եթե ավելացնեք մեկ նոր հաջորդականություն, ապա պետք է numSequences փոփոխականը փոխեք 22 -ի:
Կարող եք ավելացնել այնքան նոր հաջորդականություններ, որքան ցանկանում եք:
Հերթականության երկարության փոփոխություն
Եթե ցանկանում եք փոխել ձեր հաջորդականությունների երկարությունը (եթե ցանկանում եք ասել 4 քայլից կամ 16 քայլից բաղկացած հաջորդականություն), կարող եք դա անել, բայց միակ նախազգուշացումն այն է, որ բոլոր հաջորդականությունները պետք է լինեն նույն երկարությամբ: Դուք նաև պետք է numNotes փոփոխականը սահմանեք ՝ ձեր հաջորդականությունների երկարությանը համապատասխանելու համար:
Այլ փոփոխություններ
Կան մի շարք այլ հարմարեցումներ, որոնք հնարավոր են, ինչպիսիք են ՝ ալիքի ձևի տեսակների փոխարկումը, ֆիլտրի կարգավորումները/արժեքները, որոնք դուրս են այս ձեռնարկի շրջանակներից: Mozzi ծածկագիրը պարզելը սկզբում կարող է մի փոքր դժվար լինել, բայց ես փորձել եմ հնարավորինս փաստաթղթավորել ծածկագիրը ՝ ցույց տալու համար, թե ինչ են անում կոդի տարբեր մասերը:
Կան Mozzi- ի ծածկագրի մի քանի հիմնական մասեր, որոնք ունեն բավականին կոնկրետ կիրառումներ, և ես դրանք թվարկել եմ ստորև ՝ ձեզ պատկերացում կազմելու համար, թե դրանք ինչի համար են օգտագործվում.
- setup () - Եթե նախքան այս գործառույթին ծանոթ լինելը ծրագրավորել եք Arduinos- ի համար, և այն գրեթե նույնն է օգտագործվում Mozzi- ում: Մենք այն օգտագործում ենք հիմնականում տատանումների, զտիչների և այլնի կանխադրված կարգավորումներ ստեղծելու համար:
- updateControl () - Այստեղ աշխատում է Mozzi ծածկագրի առյուծի բաժինը: Այնտեղ մենք կարդում ենք զամբյուղի և կոճակի արժեքները, քարտեզագրում և փոխակերպում այդ արժեքները սինթեզատոր օգտագործելու համար, և որտեղ կատարվում է հաջորդականությունը:
- updateAudio () - Սա Mozzi գրադարանից վերջնական արդյունքն է: Սովորաբար, այստեղ ծածկագիրը շատ փոքր է և նիհար, որովհետև այս գործառույթը Mozzi- ն օգտագործում է ժամացույցի բոլոր ցիկլերը առավելագույնի հասցնելու համար: Ինչպես տեսնում եք մոծակների ծածկագրում, այն կարող է մի փոքր գաղտնալսվել, բայց այն ամենը, ինչ մենք հիմնականում անում ենք, համադրում/բազմապատկում ենք մեր տարբեր ալիքների ձևերը, այնուհետև դրանք փոխում բիթերը ՝ համապատասխանեցնելով որոշակի թվային տիրույթին: Ավելի լավ է այս գործառույթը շատ թեթև պահել (ոչ թե Սերիական զանգեր կամ կարդալու կապում) և փոխարենը նյութերի մեծ մասը դնել controlUpdate () գործառույթի մեջ: Mozzi- ի փաստաթղթերը դա ավելի մանրակրկիտ են ներկայացնում:
Խորհուրդ ենք տալիս:
Arduino մեքենայի հետադարձ կայանման ահազանգման համակարգ - Քայլ առ քայլ: 4 քայլ
Arduino մեքենայի հետադարձ կայանման ահազանգման համակարգ | Քայլ առ քայլ. Այս նախագծում ես նախագծելու եմ մի պարզ Arduino մեքենայի հետադարձ կայանման սենսորային միացում ՝ օգտագործելով Arduino UNO և HC-SR04 ուլտրաձայնային տվիչ: Այս Arduino- ի վրա հիմնված Car Reverse ազդանշանային համակարգը կարող է օգտագործվել ինքնավար նավարկության, ռոբոտների ռանգի և այլ տեսականու համար
Happyնունդդ շնորհավոր Water Synthesizer- ի հետ MakeyMakey- ի և Scratch- ի հետ. 5 քայլ
Happyնունդդ շնորհավոր Water Synthesizer- ի հետ MakeyMakey- ի և Scratch- ի միջոցով. Ersաղիկների և երգելու փոխարեն կարող եք կառուցել այս տեղադրումը որպես մեծ անակնկալ ծննդյան տարեդարձերի համար
Ձայնային թռիչք Arduino Uno- ի հետ Քայլ առ քայլ (8 քայլ) `8 քայլ
Ձայնային թռիչք Arduino Uno- ի հետ Քայլ առ քայլ (8 քայլ). Ուլտրաձայնային ձայնային փոխարկիչներ L298N Dc կանացի ադապտեր էներգիայի մատակարարում արական dc pin Arduino UNOBreadboard և անալոգային նավահանգիստներ ՝ կոդը փոխարկելու համար (C ++)
Eurorack Synthesizer- ի սնուցման աղբյուր `8 քայլ
Eurorack Synthesizer Power Supply. Բարի գալուստ իմ Instructable, թե ինչպես կատարել DIY էլեկտրամատակարարում Eurorack սինթեզատորի համար: Խնդրում ենք տեղյակ լինել, որ իմ գիտելիքները էներգիայի մատակարարման նախագծման և Eurorack սինթեզատորի մասին անզուգական են: Takeգուշորեն ընդունեք իմ խորհուրդները: Ես պատասխանատվության չեմ ենթարկվի
Quad Speaker Synthesizer: 10 քայլ (նկարներով)
Quad Speaker Synthesizer: Ահա մի պարզ սինթեզատոր, որն ունի