Բովանդակություն:

Raspberry Pi Stompbox Synth մոդուլ. 6 քայլ (նկարներով)
Raspberry Pi Stompbox Synth մոդուլ. 6 քայլ (նկարներով)

Video: Raspberry Pi Stompbox Synth մոդուլ. 6 քայլ (նկարներով)

Video: Raspberry Pi Stompbox Synth մոդուլ. 6 քայլ (նկարներով)
Video: The SquishBox: a Raspberry Pi Synthesizer 2024, Հուլիսի
Anonim
Raspberry Pi Stompbox Synth մոդուլ
Raspberry Pi Stompbox Synth մոդուլ
Raspberry Pi Stompbox Synth մոդուլ
Raspberry Pi Stompbox Synth մոդուլ

Այս նախագծի նպատակն է Fluidsynth- ի վրա հիմնված ձայնային մոդուլի տեղադրումը ստոմփբոքսի մեջ: «Ձայնի մոդուլ» տերմինն այս դեպքում նշանակում է մի սարք, որն ընդունում է MIDI հաղորդագրություններ (այսինքն ՝ նոտայի արժեքը, ձայնը, բարձրության թեքությունը և այլն) և սինթեզում է իրական երաժշտական հնչյուններ: Տեղադրեք այն MIDI վերահսկիչի հետ, որոնք լեգեոն են, էժան և հաճախ շատ թույն (ինչպես ստեղնաշարերը): և ունեք սինթեզատոր, որը կարող եք անվերջ ձևափոխել և փոփոխել, և ձևավորել այնպես, ինչպես հարմար է ձեր խաղաոճին:

Այս նախագծի լայն ակնարկն այն է, որ մենք վերցնում ենք մի փոքր տախտակ ունեցող Linux համակարգիչ (այս դեպքում Raspberry Pi 3), կցում ենք բնույթի LCD, մի քանի կոճակ և USB ձայնային քարտ (քանի որ Pi- ի ներքին ձայնը այնքան էլ լավ չէ) և ամեն ինչ սեղմեք Hammond 1590bb ստոմբոքսի մեջ (ինչպես կիթառի էֆեկտների համար օգտագործվողները) ՝ USB MIDI, հոսանքի և աուդիո ելքերի որոշ արտաքին միացումներով: Այնուհետև մենք կարգավորում ենք ներքին ծրագրակազմը `գործարկելու ծրագիր, որը գործարկում է FluidSynth (հիանալի, բազմաֆունկցիոնալ, անվճար ծրագրակազմի սինթեզատոր), վերահսկում է LCD էկրանը և թույլ է տալիս փոխել կարկատաներն ու կարգավորումները` օգտագործելով սեղմման կոճակները:

Այս կառուցվածքի վերաբերյալ ես չեմ մանրամասնի մանրամասն քայլ առ քայլ մանրամասներ (այնտեղ շատ հեյ-i-made-a-cool-ազնվամորի-պի-գործի ձեռնարկներ կան), այլ փոխարենը կփորձեմ կենտրոնանալ, թե ինչու եմ պատրաստել շինարարության և նախագծման տարբեր ընտրություններ, երբ ես գնացի: Այս կերպ, հուսով ենք, կարող եք փոփոխություններ կատարել `ձեր նպատակներին համապատասխան` առանց խրված լինելու այնպիսի բաների, որոնք հետագայում պարզվում է, որ չեն աշխատում:

ԹԱՐՄԱՈՄ (մայիս 2020). Թեև այս հրահանգավորումը դեռ հիանալի վայր է նման նախագծի մեկնարկի համար, ես շատ բարելավումներ եմ կատարել ինչպես ապարատային, այնպես էլ ծրագրային մասում: Ամենավերջին ծրագրակազմը FluidPatcher- ն է, որը հասանելի է GitHub- ում: Ուսումնասիրեք վիքիդրամը ՝ Raspberry Pi- ի իրերը կարգավորելու բազմաթիվ մանրամասների համար: Ստուգեք իմ կայքը Geek Funk Labs SquishBox- ում շարունակական նորությունների և թարմացումների համար:

Պարագաներ

Սա ամենակարևոր բաղադրիչների (և բացատրության) կարճ ցուցակն է.

  • Raspberry Pi 3 համակարգիչ - boardանկացած տախտակ ունեցող Linux համակարգիչ կարող է աշխատել, սակայն Pi 3 -ն ունի բավականաչափ մշակման հզորություն ՝ Fluidsynth- ն աշխատեցնելու համար ՝ առանց որևէ ուշացման, և բավականաչափ հիշողություն ՝ մեծ ձայնային տառատեսակներ բեռնելու համար: Թերությունն այն է, որ այն ունի վատ ինքնաթիռի ձայն, ուստի ձեզ անհրաժեշտ է USB ձայնային քարտ: CHIP- ն այլընտրանք է, որը ես ուսումնասիրում եմ (ավելի փոքր հետք, ավելի լավ ձայն, բայց ավելի քիչ հիշողություն/պրոցեսոր)
  • Hammond 1590BB պարիսպ - Ես առաջարկում եմ գնել այն, որը նախապես փոշիացված է, եթե ցանկանում եք գույն ունենալ, եթե ստոմբոքսներ նկարելը ձեզ դուր չի գալիս: Ես թերթել եմ բազմաթիվ հաղորդագրությունների տախտակներ, բայց կարծում եմ, որ ես համբերություն կամ ներկի ճիշտ տեսակը չունեմ, քանի որ երկու փորձից հետո իմ արդյունքները բավականին նման են:
  • USB ձայնային քարտ - Դուք կարող եք գտնել դրանցից մեկը բավականին էժան: Ըստ Adafruit- ի այս հիանալի ձեռնարկի (շատերից մեկը), դուք պետք է հավատարիմ մնաք այն մեկին, որն օգտագործում է CM109 չիպսեթը `առավելագույն համատեղելիության համար:
  • Նիշերի LCD - դրանք ձեռք բերելու շատ տարբեր վայրեր կան, բայց քորոցները, կարծես, բավականին ստանդարտ են: Համոզվեք, որ լուսավորություն եք ստանում, որպեսզի ծխած ակումբներում խաղալու ժամանակ տեսնեք ձեր կանխադրվածները:
  • Մեկ ակնթարթային կոճակներ (2) - Մի փոքր ավելի դժվար է ձեռք բերել, բայց ես միանգամից փոխարկվելու փոխարեն ստացա մի ակնթարթ, որպեսզի ավելի բազմակողմանիություն ունենամ: Ես կարող եմ նմանակել ծրագրակազմի փոխարկումը, եթե ցանկանում եմ այդ վարքագիծը, բայց այս կերպ կարող եմ նաև ունենալ տարբեր գործառույթներ կարճ հպման, երկար սեղմման և այլն:
  • Adafruit Perma -Proto Գլխարկ Pi- ի համար - Սա ինձ օգնեց ձեռք բերել LCD և այլ բաղադրիչներ, որոնք միացված են Pi- ի ընդլայնման նավահանգստին ՝ առանց լրացուցիչ տարածք զբաղեցնելու: Եթե ես փորձեի օգտագործել սովորական տախտակ, ապա այն պետք է դուրս գար Pi- ի կողքերից, որպեսզի միանայի GPIO- ի բոլոր անհրաժեշտ կապումներին: Երկկողմանի երեսպատման և համապատասխան ամրացման անցքերը նույնպես շատ օգտակար էին: Այս ամենի լույսի ներքո դա իսկապես ամենաէժան տարբերակն էր:
  • USB միակցիչներ `1 B տիպի իգական սեռի ուժ, իսկ A- ի տիպից` արու և էգ յուրաքանչյուրը `երկու, որոնցով կարելի է ներքին միացումների համար պատրաստել նիհար, ճկուն երկարացուցիչ մալուխներ:
  • 1/4 դյույմանոց աուդիո խցիկներ. Ես օգտագործել եմ մեկ ստերեո և մեկ մոնո: Այդ կերպ ստերեոն կարող է լինել ականջակալների/մոնո խցիկ, կամ պարզապես ձախ ազդանշանը կրել, եթե մյուս միակցիչը միացված է:

Քայլ 1: Ներքին էլեկտրոնիկա

Ներքին էլեկտրոնիկա
Ներքին էլեկտրոնիկա
Ներքին էլեկտրոնիկա
Ներքին էլեկտրոնիկա
Ներքին էլեկտրոնիկա
Ներքին էլեկտրոնիկա

Մենք LCD- ը և դրա հետ կապված բաղադրիչները և սեղմման կոճակները կմիացնենք Pi գլխարկին: Բացի այդ, մենք կավելացնենք USB-B և USB-A միակցիչ ՝ համապատասխանաբար հոսանքը և MIDI սարքը միացնելու համար: Մենք բերում ենք USB-A պորտը, որովհետև ձայնային քարտը միացնելու համար մենք պետք է օգտագործենք Pi- ի USB պորտերից մեկը, որը մենք ցանկանում ենք ունենալ պարիսպի ներսում, այնպես որ մենք չենք կարող ունենալ USB պորտերը տուփի կողքին: Ես ուժի համար օգտագործեցի USB-B պորտ, որովհետև զգացի, որ այն կարող է ավելի շատ պատիժ պահանջել, քան Pi- ի միկրո USB USB միակցիչը, ինչպես նաև չկարողացա գտնել լավ կողմնորոշում, որտեղ միակցիչն ամեն դեպքում կարող է լինել տուփի եզրին:

Դուք պետք է դանակ օգտագործեք `անցքերի միջև հետքերը կտրելու համար, որտեղ դուք կպչեք USB կապերի համար նախատեսված կապում: Պարզապես զգույշ եղեք, որ մյուս կապերը միացնող տախտակի վրա չկտրեք որևէ ներքին հետք, կամ եթե պատահաբար (ինձ նման) նորից միացրեք դրանք ՝ օգտագործելով ցատկող մետաղալարեր: USB-B վարդակի Vcc և GND կապումներն անցնում են համապատասխանաբար 5V- ի և GND- ի Pi- ի ընդլայնման նավահանգստում: Այս կերպ դուք կարող եք սնուցել ձեր stompbox- ը հեռախոսի լիցքավորիչով (ենթադրելով, որ այն ունի բավականաչափ հզորություն - 700 մԱ, կարծես, աշխատում է ինձ համար, բայց դուք կարող եք ավելին իմանալ, որ USB պորտը բավականաչափ հյութ ունի ձեր վերահսկիչին սնուցելու համար) և USB A -B մալուխով:

Ես գտնում եմ, որ ժապավենի մալուխի երկարությունները իսկապես լավ են աշխատում ՝ շատ կապում բաները միացնելու համար ՝ առանց չափազանց շատ մետաղալար սպագետտի ունենալու: Ես դա արեցի, այլ ոչ թե տղամարդու վերնագրերը միացրեցի LCD- ի վրա, այնուհետև այն գլխարկի մեջ կպցրեցի, որովհետև զգացի, որ ինձ որոշակի ազատություն է պետք LCD- ը տեղադրելու համար, որպեսզի կարողանամ այն լավ կենտրոնացնել: LCD- ը պետք է ունենա պոտենցիոմետր, որն օգտագործում եք կոնստրաստը կարգավորելու համար: Համոզվեք, որ այն դնում եք այնպիսի վայրում, որտեղ այն չի ծածկվի LCD- ով, այնպես որ կարող եք տուփի մեջ անցք անել `դրան հասնելու և հակադրությունը մեկ անգամ կարգավորելու համար: ամեն ինչ հավաքված է:

Խորհրդակցեք սխեմատիկայի հետ ՝ մանրամասների համար, թե ինչն է որտեղ միանում: Ուշադրություն դարձրեք, որ կոճակները միացված են 3.3 Վ -ին - ոչ 5 Վ! GPIO կապանքները գնահատվում են միայն 3.3 Վ - 5 Վ - ի դեպքում 5 Վ կվնասի ձեր պրոցեսորը: USB-A խցիկը միանում է ժապավենային մալուխի մեկ այլ շերտի, որը կարող եք միացնել USB խրոցակին, որը դուք կմիացնեք Pi- ի USB պորտերից մեկին ձեր MIDI վերահսկիչի համար: Կտրեք լրացուցիչ մետաղը վարդակից, որպեսզի այն ավելի քիչ դուրս գա, և տաք սոսինձ օգտագործեք լարումից ազատվելու համար. Դա պարտադիր չէ, որ գեղեցիկ լինի, քանի որ այն թաքնված կլինի տուփի ներսում:

Քայլ 2: Աուդիո ելքի լարերի միացում

Աուդիո ելքի լարերի միացում
Աուդիո ելքի լարերի միացում
Աուդիո ելքի լարերի միացում
Աուդիո ելքի լարերի միացում
Աուդիո ելքի լարերի միացում
Աուդիո ելքի լարերի միացում

Անկախ նրանից, թե որքան փոքր USB ձայնային քարտ եք գտնում, այն կամ դրա վարդակից, ամենայն հավանականությամբ, շատ հեռու կմնան Pi- ի USB պորտերից, որպեսզի ամեն ինչ տեղավորվի տուփի մեջ: Այսպիսով, միացրեք մեկ այլ կարճ USB միակցիչ ժապավենային մալուխից, USB վարդակից և տաք սոսինձից, ինչպես ցույց է տրված վերևում նկարում: Իմ ձայնային քարտը դեռ մի փոքր չափազանց կոպիտ էր, որպեսզի այն չկարողանայի պարունակել մնացած ամեն ինչում, այնպես որ ես պլաստիկը հանեցի և այն փաթաթեցի ինչ -որ ժապավենով, որպեսզի այն իրերի դեմ կարճ չմնա:

Ձայնային քարտից ձեր 1/4 դյույմանոց ձայնը ստանալու համար կտրեք ծայրը 3.5 մմ ականջակալով կամ AUX մալուխով: Համոզվեք, որ այն ունի 3 միակցիչ ՝ ծայր, մատանի և թև (TRS), ի տարբերություն 2 -ի կամ 4 -ի: Թևը պետք է մանրացված լինի, ծայրը սովորաբար աջ ալիքն է, իսկ օղակը (միջին միակցիչը) սովորաբար մնում է: Դուք պարզապես կարող եք ծայրը և մատանին միացնել երկու մոնո (TS - հուշում, թև) 1/4 դյույմ խցիկներով և վերջ դրա հետ, բայց դուք կարող եք ստանալ ավելի բազմակողմանիություն `մի փոքր լրացուցիչ լրացուցիչ էլեկտրագծերի միջոցով: Գտեք TS միակցիչ, որն ունի երրորդ ակնթարթային շփում, ինչպես սխեմատիկորեն ցուցադրված է վերևի գծապատկերում: Խրոցակի տեղադրումը խախտում է այս կոնտակտը, այնպես որ, ինչպես կարելի է հուսալ, դիագրամից կարող եք ասել, ձախ ազդանշանը այնուհետև կգնա դեպի TS խցիկ, եթե խրոցակը տեղադրված է, և TRS խցիկի օղակին, եթե խրոցակը տեղադրված չէ: Այս կերպ դուք կարող եք ականջակալներ միացնել ստերեո խցիկին, մեկ մոնո մալուխը `ստերեո խցիկին` համակցված աջ/ձախ (մոնո) ազդանշանի համար, կամ յուրաքանչյուր խցիկում `առանձին աջ և ձախ (ստերեո) ելքերի համար:

Ես խցիկների գրունտները կապեցի ձայնային քարտից եկող մալուխի հետ, այնպես որ տուփի մեջ ամեն ինչ կիսում է նույն հիմքը, և ես խուսափում եմ ստորգետնյա օղակների տհաճ բզզոցից: Կախված նրանից, թե ինչին եք միացված, այն կարող է ունենալ հակառակ ազդեցություն, ուստի կարող եք ներառել անջատիչ, որը թույլ կտա կամ միացնել կամ «բարձրացնել» գետինը 1/4 դյույմանոց խցիկների վրա:

Քայլ 3: Պատյան պատրաստելը

Պատյան պատրաստելը
Պատյան պատրաստելը
Պատյան պատրաստելը
Պատյան պատրաստելը
Պատյան պատրաստելը
Պատյան պատրաստելը

Այս քայլը ներառում է էկրանի, կոճակների, միակցիչների և այլնի համար արկղի կտրվածքները, ինչպես նաև Pi գլխարկը տեղադրելու համար պարիսպների էպոքսիդացումը:

Սկսեք ՝ տեղադրելով բոլոր բաղադրիչները պատյանում ՝ համոզվելու համար, որ ամեն ինչ տեղավորվում և ճիշտ կողմնորոշված է: Այնուհետև զգուշորեն չափեք և նշեք, թե որտեղ եք պատրաստվում անցքեր կատարել: Կլոր անցքեր կտրելիս խորհուրդ եմ տալիս սկսել փոքրից և աշխատել մինչև անհրաժեշտ չափի. Ավելի հեշտ է փոսը կենտրոնացնել, և ավելի քիչ հավանական է, որ ձեր փորվածքը խցանվի: Ուղղանկյուն անցքերը կարող են կտրվել `նախատեսված բացման հակառակ անկյուններում փոս փորելով, այնուհետև ոլորահատ սղոցով կտրելով մյուս երկու անկյունները: Ալյումինի այս հաստությունը իրականում լավ կտրում է ոլորահատ սղոցով, քանի դեռ նրբանկատորեն գնում եք: Քառակուսի ֆայլը շատ օգտակար է բացվածքների անկյունները քառակուսացնելու համար: Plugարպ մալուխներ ունենալու դեպքում USB վարդակների բացերը մի փոքր առատաձեռն դարձրեք:

Երկաստիճան էպօքսիդը (ինչպես Գորիլայի սոսինձը նկարում) լավ է աշխատում գլխարկի դիմացկունությունը մետաղական պատյանին ամրացնելու համար: Պողպատե բուրդով կամ պտուտակահանով մի փոքր քերծեք պարիսպի մակերևույթը և կողպեքների հատակը, որպեսզի էպոքսիդն ավելի լավ բռնի: Ես խորհուրդ եմ տալիս ամրացնել ձեր հակադրությունները Pi գլխարկին դրանք սոսնձելուց առաջ, որպեսզի իմանաք, որ դրանք ճիշտ տեղադրված են. Այստեղ տեղաշարժվելու շատ տեղ չկա: Ես օգտագործեցի ընդամենը երեք հակադրություն, քանի որ իմ LCD- ը չորրորդի ճանապարհին էր: Խառնել էպոքսիդային երկու բաղադրիչները, մի քանիսը կպցնել խառնուրդների վրա և սեղմել դրանք տեղում: Խուսափեք մասերի ճոճվելուց կամ տեղակայելուց ավելի քան 10-15 վայրկյան հետո, հակառակ դեպքում կապը կդառնա փխրուն: Տվեք նրան 24 ժամ, որպեսզի այն շարունակի աշխատել: Ամբողջական բուժումը տևում է մի քանի օր, ուստի անհարկի մի շեշտեք կապը:

Եթե դուք չեք ցանկանում մեկ այլ հոբբի ստեղծել ստոմպբոքսներ նկարելուց, ես առաջարկում եմ թողնել ալյումինը մերկ (իրականում վատ տեսք չունի) կամ գնել նախապես ներկված պատյան: Ներկը չի ցանկանում կապվել մետաղի հետ: Եթե ցանկանում եք փորձել այն, ավազեք ամենուր, որտեղ ցանկանում եք, որ ներկը կպչի, նախ օգտագործեք լավ մեքենայի նախաներկ լակի ներկ, քսեք ձեր ուզած գույնի մի քանի շերտ, այնուհետև թողեք հնարավորինս չորանա: Լուրջ - հաղորդագրությունների տախտակների մոլագարները հուշում են այնպիսի բաների մասին, ինչպիսիք են այն թողնել երեք ամիս ուղիղ արևի տակ կամ մեկ շաբաթով ցածր ջերմաստիճանի վրա դրված թոնրի վառարանում: Իմ առաջին ներկման աշխատանքների մանրացված, կեղևավորված մնացորդները սրբելուց հետո, երկրորդ փորձս դեռ չիպսեր ու գոգներ է հավաքում իմ հավաքածուի պայուսակի գրիչներից, իսկ ավարտը կարելի է ատամել եղունգով: Որոշեցի զիջել և գնացի պանկ ոճի համար ՝ տառերի համար օգտագործելով սպիտակեցման նշիչ:

Քայլ 4: Softwareրագրաշարի տեղադրում

Softwareրագրաշարի տեղադրում
Softwareրագրաշարի տեղադրում
Softwareրագրաշարի տեղադրում
Softwareրագրաշարի տեղադրում

Նախքան ամեն ինչ լցնել stompbox- ում և այն ամուր պտտել, դուք պետք է ծրագրակազմ ստեղծեք Raspberry Pi- ի վրա: Ես առաջարկում եմ սկսել Raspbian OS- ի նոր տեղադրմամբ, այնպես որ ստացեք Raspberry Pi Foundation- ի վերջին պատճենը և հետևեք այնտեղ տրված հրահանգներին `այն SD քարտի վրա պատկերելու համար: Բռնեք ստեղնաշար և էկրան կամ օգտագործեք վահանակի մալուխ ՝ ձեր Pi- ին առաջին անգամ մուտք գործելու համար և անցեք հրամանի տող: Համոզվեք, որ ունեք ծրագրակազմի և որոնվածի վերջին թարմացումները, մուտքագրեք

sudo apt-get update && sudo apt-get upgrade

sudo rpi- թարմացում

Հաջորդը, դուք ցանկանում եք համոզվել, որ կարող եք օգտագործել wifi ՝ Pi- ին ssh- ի համար և փոփոխություններ կատարել, երբ այն փակվել է պարիսպի ներսում: Նախ, միացրեք ssh սերվերը `մուտքագրելով

sudo raspi-config

և անցնելով «Միացման տարբերակներ» և միացնել ssh սերվերը: Այժմ ավելացրեք անլար ցանց pi- ին ՝ խմբագրելով wpa_supplicant.conf ֆայլը.

sudo vi /etc/wpa_supplicant/wpa_supplicant.conf

և վերջում ավելացնել հետևյալ տողերը.

ցանց = {

ssid = "your-network" psk = "your-password"}

Փոխարինեք ձեր ցանցը և ձեր գաղտնաբառը վերը նշված արժեքներով այն ցանցի համար, որին ցանկանում եք, որ լռելյայնորեն միանա Pi- ն, ամենայն հավանականությամբ, ձեր տան WiFi երթուղիչը, կամ գուցե ձեր հեռախոսի թեժ կետը կամ մուտքի կետի ռեժիմում աշխատող նոութբուքը: Ձեր Pi- ին միանալու մեկ այլ այլընտրանք է այն տեղադրել որպես wifi մուտքի կետ, այնպես որ կարող եք պարզապես միանալ դրան ՝ անկախ նրանից, թե որտեղ եք գտնվում: Ստորև իմ գրած ինտերֆեյսը նաև հնարավորություն է տալիս Pi- ի հետ զուգակցել մեկ այլ bluetooth սարք, որից հետո կարող եք միանալ դրան `օգտագործելով սերիական bluetooth- ը:

FluidSynth- ը տեղադրելու համար մուտքագրեք

sudo apt-get տեղադրել fluidsynth

Այս քայլին կցված ֆայլերը ապահովում են միջերես stompbox- ի կառավարման և FluidSynth- ի միջև և պետք է պատճենվեն /home /pi գրացուցակում: Ահա կարճ բացատրություն, թե ինչ է անում յուրաքանչյուր ֆայլ.

  • squishbox.py - Python սցենար, որը սկսվում և հաղորդակցվում է FluidSynth- ի օրինակով, կարդում է ստոմպբոքս կոճակներից մուտքագրվող տվյալները և տեղեկատվություն գրում LCD- ին
  • config_squishbox.yaml - կազմաձևման ֆայլ (հիմնականում) մարդու համար ընթեռնելի YAML ձևաչափով, որը պահում է squishbox ծրագրի պարամետրերը և կարկատել տվյալները:
  • fluidsynth.py - Պիթոնի փաթաթան, որը կապեր է ապահովում FluidSynth գրադարանի C գործառույթներին, և իմ կողմից ավելացվել են բազմաթիվ լրացուցիչ կապեր ՝ FluidSynth- ի ավելի շատ գործառույթներ մուտք գործելու համար:
  • ModWaves.sf2 - Շատ փոքր ձայնային տառատեսակ, որը ես տրամադրեցի ՝ Soundfont ձևաչափով մոդուլյատորների օգտագործման և հզորության ցուցադրման համար:

Ունենալով Python սցենար, որը կարգավորում է FluidSynth գործընթացը և կարգավորում է բոլոր կոճակները/LCD իրերը, բավականին լավ է աշխատում. MIDI հաղորդագրությունները ուղղակիորեն գնում են FluidSynth, և սցենարը դրա հետ փոխազդում է միայն անհրաժեշտության դեպքում:

Python սցենարին անհրաժեշտ են մի քանի python գրադարաններ, որոնք լռելյայն տեղադրված չեն: Դուք կարող եք դրանք տեղադրել ուղղակիորեն Python Package Index- ից ՝ օգտագործելով հարմար pip գործիքը.

sudo pip տեղադրել RPLCD pyyaml

Ի վերջո, ցանկանում եք, որ Pi- ն գործարկի python սցենարը boot- ում: Դա իրականացնելու համար խմբագրեք rc.local ֆայլը.

sudo vi /etc/rc.local

Տեղադրեք հետևյալ տողը ֆայլում վերջնական «ելք 0» տողից անմիջապես առաջ.

python /home/pi/squishbox.py &

Քայլ 5: Վերջնական հավաքում

Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով

Նախքան բոլոր կտորները տուփի մեջ դնելը, շատ լավ գաղափար է ամեն ինչ միացնել և համոզվել, որ ծրագրակազմն աշխատում է, ինչպես ցույց է տրված վերևի պատկերներում: 3-6-րդ պատկերները ցույց են տալիս բոլոր առանձին մասերը և աստիճանաբար ինչպես են դրանք տեղավորվում իմ տուփի մեջ: LCD- ն իրականում ամրացված է լարերը դրա վրա սեղմելով, բայց եթե դա ձեզ դուր չի գալիս, կարող եք օգտագործել տաք սոսինձ կամ ավելացնել մի քանի պտուտակներ: Տուփի կափարիչի վրա տեղադրված նարնջագույն կպչուն ժապավենը պետք է թույլ չտա Pi- ին մետաղի դեմ կարճանալուց:

Հնարավոր է, որ ստիպված լինեք փորձեր կատարել և վերակազմավորել ՝ իրերը համապատասխանեցնելու համար: Փափուկը լավ է. Որքան քիչ մասեր են պտտվում տուփի մեջ, այնքան լավ: Թվում է, թե ջերմությունը խնդիր չէ, և ես որևէ խնդիր չեմ ունեցել, երբ wifi ազդանշանը փակվի պարիսպով: Նկարում պատկերված չեն կպչուն ռետինե ոտքեր (դրանք կարող եք գտնել շինարարական խանութում) տուփի ներքևի մասում, որպեսզի այն չսահի շրջակայքում, երբ նստում եք:

Դիտեք անկանխատեսելի բախման/ճզմման/ճկման, երբ իրերը պտտվում են միասին: Մնում է ստուգել, որ մալուխների տեղադրման ժամանակ բավականաչափ տարածք կա 1/4 դյույմանոց խցիկների համար. Հուշումները մի փոքր հեռու են մնում, քան խցիկի կոնտակտները: Բացի այդ, իմ կառուցման ընթացքում ես Pi- ն մի փոքր ծայրին մոտ տեղադրեցի: տուփի և կափարիչի շրթունքը սեղմեց SD քարտի ծայրին և կտրեց այն:

Քայլ 6: Օգտագործում

Image
Image
Օգտագործումը
Օգտագործումը
Օգտագործումը
Օգտագործումը

Ձայնային մոդուլը, որը ես նկարագրել եմ այս քայլերում և վերը նշված ծրագրակազմը գործարկելը բավականին օգտագործելի և ընդարձակելի է տուփից դուրս, բայց հնարավոր են բազմաթիվ փոփոխություններ/տատանումներ: Ես պարզապես համառոտ նկարագրեմ այստեղ ինտերֆեյսը. Մտադիր եմ այն անընդհատ թարմացնել github պահոցում, որտեղ, հուսով եմ, նաև թարմացված վիքի եմ պահելու: Վերջապես, ես կքննարկեմ, թե ինչպես կարող եք փոփոխել կարգավորումները, ավելացնել նոր հնչյուններ և կատարել ձեր սեփական փոփոխությունները:

Սկսելու համար միացրեք USB MIDI վերահսկիչը տուփի USB-A խցիկին, 5V հոսանքի աղբյուրը USB-B վարդակին և միացրեք ականջակալներ կամ ուժեղացուցիչ: Մի փոքր անց LCD- ը ցույց կտա «squishbox v xx.x» հաղորդագրությունը: Երբ կարկատանի համարը և անունը հայտնվում են, դուք պետք է կարողանաք նվագարկել նոտաներ: Կոճակների ցանկացած կարճ հպում փոխում են կարկատանը, մի քանի վայրկյան պահելով ցանկացած կոճակ ՝ ձեզ մտնում է կարգավորումների ընտրացանկ, իսկ կոճակը պահել մոտ հինգ վայրկյան հնարավորություն է տալիս վերագործարկել ծրագիրը, վերագործարկել Pi- ը կամ փակել Pi- ն (NB Pi- ն չի անջատում իր GPIO- ի կապանքները, երբ այն դադարում է, ուստի LCD- ն երբեք չի անջատվի: Պարզապես սպասեք մոտ 30 վայրկյան, նախքան այն միացնելը):

Պարամետրերի ընտրացանկի ընտրանքներն են.

  • Update Patch - պահպանում է ֆայլում պահվող ընթացիկ կարկատում կատարած ցանկացած փոփոխություն
  • Save New Patch - պահում է ընթացիկ կարկատանը և ցանկացած փոփոխություն որպես նոր կարկատել
  • Ընտրեք Բանկ
  • Սահմանել շահույթ - սահմանել ելքի ընդհանուր ծավալը (fluidsynth- ի «շահույթի» տարբերակ), չափազանց բարձրը տալիս է աղավաղված արտադրանք
  • Chorus/Reverb - փոփոխել ընթացիկ հավաքածուի արձագանքը և երգչախմբի կարգավորումները
  • MIDI Connect - փորձեք միացնել նոր MIDI սարք, եթե այն փոխանակեք, երբ ծրագիրը աշխատում է
  • Bluetooth զույգ - տեղադրեք Pi- ն հայտնագործման ռեժիմում, որպեսզի կարողանաք զուգակցել մեկ այլ bluetooth սարք դրա հետ
  • Wifi կարգավիճակ - հաղորդեք Pi- ի ընթացիկ IP հասցեն, որպեսզի կարողանաք ներմուծել այն

Config_squishbox.yaml ֆայլը պարունակում է տեղեկատվություն, որը նկարագրում է յուրաքանչյուր կարկատել, ինչպես նաև այնպիսի բաներ, ինչպիսիք են MIDI երթուղին, էֆեկտների պարամետրերը և այլն: Այն գրված է YAML ձևաչափով, որը համակարգչին վերլուծելու համար տվյալների ներկայացման միջլեզու միջոց է: -ընթեռնելի: Այն կարող է բավականին բարդ լինել, բայց այստեղ ես պարզապես օգտագործում եմ այն որպես միջոց ՝ ներկայացնելու Python- ի բառարանների կառուցվածքը (այլ լեզուներում ասոցիատիվ զանգվածներ/հեշեր) և հաջորդականությունները (ցուցակներ/զանգվածներ): Ես շատ մեկնաբանություններ դրեցի նմուշի կազմաձևման ֆայլում և փորձեցի կառուցել այն այնպես, որ աստիճանաբար տեսնենք, թե ինչ է անում յուրաքանչյուր հատկություն: Նայեք և փորձարկեք, եթե հետաքրքրասեր եք և ազատ զգացեք հարցեր տալ մեկնաբանություններում: Այս ֆայլի խմբագրմամբ դուք կարող եք շատ բան փոխել մոդուլի հնչյուններն ու գործունակությունը փոխելու համար: Կարող եք հեռակա մուտք գործել և խմբագրել, կամ FTP- ով փոփոխված կազմաձևման ֆայլը փոխանցել Pi- ին, այնուհետև վերագործարկել ՝ օգտագործելով միջերեսը կամ մուտքագրելով

sudo python /home/pi/squishbox.py &

հրամանի տողում: Սցենարը գրված է այնպես, որ սկսի ինքն իրեն ոչնչացնելու այլ դեպքեր, որպեսզի կոնֆլիկտներ չլինեն: Սցենարը մի քանի նախազգուշացում կթքի հրամանի տողում, երբ այն գործի, երբ որսում է MIDI սարքերին միանալու համար և տարբեր վայրերում փնտրում է ձեր ձայնային տառատեսակները: Այն կոտրված չէ, սա պարզապես ծույլ ծրագրավորում է իմ կողմից. Ես կարող էի դրանք բռնել, բայց պնդում եմ, որ դրանք ախտորոշիչ են:

Երբ տեղադրում եք FluidSynth- ը, դուք ստանում եք նաև բավականին լավ անվճար FluidR3_GM.sf2 ձայնային տառատեսակ: GM- ն նշանակում է ընդհանուր MIDI, ինչը նշանակում է, որ այն պարունակում է «բոլոր» գործիքները, որոնք նշանակված են ընդհանուր համաձայնեցված կանխադրված և բանկային համարներին, որպեսզի MIDI նվագարկիչները, ովքեր ֆայլեր են նվագում այս ձայնային տառատեսակով, կարողանան գտնել դաշնամուրի, շեփորի համար մոտավորապես համապատասխան ձայն:, պարկապզուկներ և այլն: Եթե ցանկանում եք ավելի շատ/տարբեր հնչյուններ, կարող եք ինտերնետում գտնել բազմաթիվ անվճար ձայնային հնչերանգներ: Ամենակարևորը, ձայնային տառատեսակի ճշգրտումը լայնորեն հասանելի է, իրականում բավականին հզոր է, և կա հրաշալի բաց կոդով խմբագիր ձայնային տառատեսակների համար, որը կոչվում է Polyphone: Դրանով դուք կարող եք ստեղծել ձեր սեփական ձայնային տառատեսակները հում WAV ֆայլերից, ինչպես նաև կարող եք մոդուլյատորներ ավելացնել ձեր տառատեսակներին: Մոդուլյատորները թույլ են տալիս վերահսկել սինթեզի շատ տարրեր (օրինակ ՝ ADSR ծրար, մոդուլյացիայի ծրար, LFO և այլն) իրական ժամանակում: ModWaves.sf2 ֆայլը, որը ես ներառել եմ վերևում, տալիս է մոդուլյատորների օգտագործման օրինակ, որը թույլ է տալիս քարտեզագրել ֆիլտրի ռեզոնանսը և անջատման հաճախականությունը կառավարման փոփոխության MIDI հաղորդագրությանը (որը կարող է ուղարկվել ձեր վերահսկիչի կոճակով/սահնակով): Այստեղ այնքան մեծ ներուժ կա. Գնացեք խաղալու:

Հուսով եմ, որ այս ձեռնարկը շատ գաղափարներ է առաջացնում և ուրիշներին տալիս է լավ շրջանակ `ստեղծելու իրենց ուրույն սինթետիկ ստեղծագործությունները, ինչպես նաև աջակցելու լավ ձայնային տառատեսակների, ձայնային տառատեսակի բնութագրերի և հիանալի անվճար ծրագրակազմի շարունակական առկայությանը և զարգացմանը, ինչպիսիք են FluidSynth- ը և Polyphone- ը:. Իմ ուրվագծած կառուցվածքը ոչ ամենալավն է, ոչ էլ միակ միջոցը նման բան համատեղելու համար: Սարքավորման կողմից, հնարավոր փոփոխությունները կարող են լինել ավելի մեծ տուփ `ավելի շատ կոճակներով, հին (5-պին) MIDI մուտքով/ելքով և (կամ) աուդիո մուտքերով: Պիթոնի սցենարը կարող է փոփոխվել (ներողություն իմ սակավ մեկնաբանության համար) `այլ վարքագծեր ապահովելու համար, որոնք կարող են ձեզ ավելի հարմար լինել. Ես մտածում եմ յուրաքանչյուր կարկատանին ավելացնել« էֆեկտների »ռեժիմ, որտեղ այն կգործի որպես իրական էֆեկտների ստոմբոքս, միացնելով կարգավորումները: և անջատված: Կարելի է ավելացնել նաև լրացուցիչ ծրագրակազմ ՝ թվային աուդիոէֆեկտներ ապահովելու համար: Կարծում եմ, որ ավելի լավ կլիներ, որ Pi- ն գործարկվեր wifi AP ռեժիմով, ինչպես նկարագրված է վերևում, և այն կարող է նույնիսկ ապահովել բարեկամական վեբ ինտերֆեյս ՝ կազմաձևման ֆայլը խմբագրելու համար: Խնդրում ենք ազատ զգալ տեղադրել ձեր սեփական գաղափարները/հարցերը/քննարկումները մեկնաբանությունների էջում:

Ես ուզում եմ հսկայական, մեգա աջակցություն տրամադրել FluidSynth- ի և Polyphone- ի ստեղծողներին `անվճար, բաց կոդով ծրագրակազմ տրամադրելու համար, որը մենք բոլորս կարող ենք օգտագործել հիանալի երաժշտություն ստեղծելու համար: Ես սիրում եմ օգտագործել այս բանը, և դուք դա հնարավոր դարձրեցիք:

Խորհուրդ ենք տալիս: