Բովանդակություն:
- Պարագաներ
- Քայլ 1: Էլեկտրոնիկա
- Քայլ 2: LED շերտի միացում
- Քայլ 3: Նախագիծը հարմարեցնել ձեր ստեղնաշարին
- Քայլ 4: Arduino ծածկագիրը
- Քայլ 5: Հնարավոր բարելավումներ…
- Քայլ 6: Կատարված է:
Video: MIDI2LED - MIDI վերահսկվող LED շերտի լուսային էֆեկտ. 6 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Սա իմ առաջին հրահանգն է, ուստի համբերիր ինձ:
Ես սիրում եմ երաժշտություն պատրաստել, և կենդանի իրավիճակներում, ինչպիսիք են հյուրասենյակի համերգները, ինձ դուր է գալիս, երբ կան լուսային էֆեկտներ, որոնք համընկնում են իմ նվագածի հետ: Այսպիսով, ես կառուցեցի Arduino- ի վրա հիմնված տուփ, որի շնորհիվ LED շերտը լուսավորվում է պատահական գույնով, երբ MIDI ստեղնաշարի վրա նշում եմ հարվածում, և որտեղ հարվածում եմ նոտային:
Պարագաներ
- Արդուինո Ունո
- Արդուինո պրոտոշիլդ
- MIDI խցիկ
- 1N4148 դիոդ
- 6N138 օպտո կցորդիչ
- ռեզիստորներ ՝ 2x 220 Օմ, 1x 10 կՕմ, 1x 470 Օմ
- WS2812B LED ժապավեն (60 LED)
- որոշ մնացորդային լարեր
- ջերմային նեղացման խողովակ
- հարմար պատյան Arduino- ի համար (ես օգտագործում եմ պլաստիկ միացման տուփ)
Ձեզ նույնպես պետք կգա
- զոդման եւ զոդման
- MIDI ստեղնաշար և MIDI մալուխ
Քայլ 1: Էլեկտրոնիկա
Շղթան բավականին պարզ է: Այն բաղկացած է ստանդարտ MIDI մուտքագրումից (Arduino- ից ձախ) և LED շերտի միացումից (Arduino- ի աջից): Տեղադրեք բոլոր մասերը պրոտոշիդի վրա, շատ տեղ կա: Ընդհանրապես խորհուրդ է տրվում օգտագործել արտաքին հոսանքի աղբյուր ՝ LED շերտը սնուցելու համար, բայց ես գտա, որ նվագելիս միաժամանակ մի քանի LED լուսարձակներ են միացված, ուստի կար Arduino +5V / GND- ի ՝ որպես էներգիայի ելք օգտագործելու խնդիր չկա: (Փորձեք խուսափել բոլոր ստեղները միաժամանակ և ամբողջ արագությամբ հարվածելուց;-)) Եթե որոշեք օգտագործել արտաքին էներգիայի աղբյուր, պարզապես միացրեք այն Arduino +5V և GND կապումներին: Ոմանք խորհուրդ են տալիս այս երկու տողերի միջև տեղադրել 100uF կոնդենսատոր (սխեմատիկորեն նշված չէ):
Մասերը կպցրեք protoshield- ին և միացրեք LED շերտը, ինչպես ցույց է տրված սխեմատիկայում:
Քայլ 2: LED շերտի միացում
Կարևոր է միացնել LED շերտի աջ ծայրը `մուտքի ծայրը: Իմ շերտն իգական միակցիչ ունի որպես մուտք, և ամբողջ երկայնքով ունի փոքր եռանկյունիներ, որոնք ուղղված են մուտքից: Ելքում կար արական միակցիչ (որպեսզի կարողանամ այն միացնել մեկ այլ ժապավենի, որը մեզ պետք չէ), ուստի ես այն անջատեցի և այն զոդեցի Arduino- ից եկող երեք մալուխներին: Երեք մալուխները LED շերտի վրա միասին կապելու և դրանք ավելի քիչ տեսանելի դարձնելու համար օգտագործեք ջերմության նվազեցման խողովակ:
Իմ օգտագործած լուսադիոդային ժապավենը հետևի մասում ունի կպչուն ժապավեն, այնպես որ այն հեշտությամբ կարելի է սոսնձել MIDI ստեղնաշարի հետևի մասում:
Քայլ 3: Նախագիծը հարմարեցնել ձեր ստեղնաշարին
Հնարավոր է ՝ ստիպված լինեք LED շերտը և Arduino ծածկագիրը հարմարեցնել ձեր ստեղնաշարին: Իմն ունի 76 ստեղն, իսկ շերտի երկարությունը գրեթե հենց ստեղնաշարի լայնությունն է: Եթե ունեք օրինակ 61 բանալին, ձեզ կարող է անհրաժեշտ լինել ավելի կարճ ժապավեն: LED շերտը կարող է կտրվել ցանկացած երկու LED- ների միջև: Պարզապես համոզվեք, որ կտրում եք ճիշտ մասը, այն ունի մուտքային վերջ (իգական միակցիչով) և ելքային վերջ (արական միակցիչով), անհրաժեշտ է պահպանել մուտքի վերջը: Կոդում փոխեք #սահմանումները համար
- NUMBER_OF_LEDS մինչև LED- ների քանակը, որոնք մնացել են ձեր գոտում վերջը կտրելուց հետո,
- NUMBER_OF_KEYS ձեր ստեղնաշարի ստեղների քանակին և
- MIN_KEY դեպի ձեր ամենացածր բանալու MIDI սկիպիդար: Դուք կարող եք դա գտնել ստեղնաշարի օգտագործողի ձեռնարկում; կամ օգտագործեք մի գործիք, որը ցուցադրում է MIDI գրառման համարը, օրինակ ՝ KMidiMon- ը Linux- ի համար, կամ Pocket MIDI- ը Windows- ի կամ Mac- ի համար. կամ փորձեք տարբեր արժեքներ, մինչև սարքը չպատասխանի ձեր ստեղնաշարի բոլոր ստեղներին
Քայլ 4: Arduino ծածկագիրը
Arduino- ի կոդը օգտագործում է MIDI գրադարանը (v4.3.1) քառասուն յոթ էֆեկտի կողմից և Adafruit NeoPixel գրադարանը (v1.3.4) ՝ Adafruit- ի կողմից: Տեղադրեք այս գրադարանները ՝ օգտագործելով Arduino IDE- ն: Այնուհետև կազմեք ծածկագիրը և տեղադրեք այն Arduino- ում ՝ առանց վահանի միացման (օպտիկական զույգը միացված է RX կապին, ինչը խոչընդոտում է վերբեռնումին): Միացրեք Arduino- ն USB մալուխի միջոցով (ես օգտագործում եմ USB պատի գորտնուկ):
Եթե ցանկանում եք փոփոխել կոդը ըստ ձեր ցանկության, ահա համառոտ ակնարկ, թե ինչպես է այն աշխատում. Յուրաքանչյուր հանգույցում MIDI մուտքագրումը կարդացվում է: Եթե Note On կամ Note Off իրադարձություն է ստացվել, կանչվում են MyHandleNoteOn կամ MyHandleNoteOff գործառույթները: Նրանք երկուսն էլ կանչում են updateVelocityArray գործառույթը, որը պահում է առանցքային համարի արագությունը (այսինքն ՝ որքան ուժգին եք սեղմել բանալին): Եթե արագությունը ավելի բարձր է, քան նախկինում պահված էր, ապա համապատասխան LED- ի գույնը սահմանվում է «ընթացիկ գույնի»: MIDI իրադարձությունների մշակումից հետո կանչվում է updateLedArray գործառույթը: Սա թարմացնում է «ընթացիկ գույնը» (որի կարմիր, կանաչ և կապույտ արժեքները փոխվում են ինքնուրույն գծային եղանակով, մինչև հասնի ստորին կամ վերին ծայրին, որի դեպքում գծային փոփոխության արագությունը սահմանվում է պատահական համարի), դանդաղ նվազեցնում է սեղմված նշումների արագությունը և թարմացնում յուրաքանչյուր LED- ի գույնի արժեքները, որոնք պետք է փոխեն իր գույնը (նոր նոտայի հարվածի կամ արագության նվազման պատճառով): Function showLedArray- ը գույները փոխանցում է Adafruit_NeoPixel կառուցվածքին, որը կոչվում է «պիքսելներ» և ստիպում է իրական LED- երին ցույց տալ գույները պիքսելների կառուցվածքում:
Քայլ 5: Հնարավոր բարելավումներ…
Նախագիծը երբեք չի ավարտվում: Միշտ կարող է ինչ -որ բան անել այն բարելավելու համար.
- Protoshield- ն այնքան քիչ մասեր է պարունակում, որ իսկապես թափոն է. կարելի է հեշտությամբ հասնել նույն ազդեցության Arduino Nano- ով և 15x7 անցքերով PCB- ով, ինչպես նաև կանացի քորոց վերնագրերով:
- MIDI- ի որոշ ազդանշաններ կորչում են: Եթե դա NoteOn է, համապատասխան LED- ը չի լուսավորվի. եթե դա NoteOff է, այն չի մարելու (դրա համար ես ներկայացրի արագության նվազեցումը, որն ապահովում է, որ LED- ները անվերջ չեն մնա): Ես դեռ փորձում եմ պարզել պատճառը: Հավանաբար, դա ժամանակի խնդիր է, և MIDI.read () - ը պետք է ավելի հաճախ կանչվի:
- MIDI- ի որոշ ազդանշաններ սխալ են ընթերցվում, այսինքն ՝ սխալ LED- ները լույս են տալիս: Կարող է կապված լինել վերը նշված կետի հետ: Անհրաժեշտ է որոշակի հետաքննություն:
- Շղթան նախագծված է հաճելի տեսողական էֆեկտ տալու համար ՝ առանց օգտվողի մեծ փոխազդեցության (բացի ստեղնաշար նվագելուց): Այնուամենայնիվ, ես կարող էի պատկերացնել, որ կարդացվող պոտենցիոմետր ավելացնեմ (օգտագործելով Arduino- ի անալոգային մուտքերից մեկը), որով կարող եք փոխել գույների փոփոխման առավելագույն արագությունը (ներկայումս #սահմանվում է որպես MAX_COLOR_CHANGE_SPEED = 20): Կամ չափեք NoteOn- ի երկու իրադարձությունների միջև միջին ժամանակը և համապատասխանաբար փոխեք MAX_COLOR_CHANGE_SPEED - դանդաղ երգերում գույնը պետք է փոխվի ավելի դանդաղ:
Քայլ 6: Կատարված է:
Միացրեք Arduino- ն USB մալուխի միջոցով (ես օգտագործում եմ USB պատի գորտնուկ): Միացրեք ձեր MIDI ստեղնաշարը MIDI խցիկին և սկսեք պտտվել: Դիտեք, թե ինչպես եմ նվագում մի փոքր թեթև երաժշտություն (բառախաղը, որքան էլ որ վատ լինի, նախատեսված է):
Խորհուրդ ենք տալիս:
WiFi վերահսկվող LED շերտի մատրիցով Clամացույցի լույս. 3 քայլ (նկարներով)
WiFi վերահսկվող LED շերտի մատրիցով Clամացույցի լույս. Ծրագրավորվող LED շերտեր, օրինակ. հիմնված WS2812- ի վրա, հետաքրքրաշարժ են: Դիմումները բազմազան են, և դուք արագորեն կարող եք ստանալ տպավորիչ արդյունքներ: Եվ ինչ -որ կերպ ժամացույցներ կառուցելը կարծես մեկ այլ տիրույթ է, որի մասին ես շատ եմ մտածում: Սկսած որոշակի փորձից
Կրկնակի հետաձգման էֆեկտ. 10 քայլ (նկարներով)
Կրկնակի հետաձգման էֆեկտ. SUPER պարզ կրկնակի հետաձգման ազդեցություն: Իմ նպատակն էր կառուցել հնարավորինս կոմպակտ, ամենախելացի ուշացումը `օգտագործելով միայն մի բուռ բաղադրիչ: Արդյունքը մի պարիսպից զուրկ, հեշտությամբ փոփոխվող աղմուկի մեքենա է ՝ զարմանալիորեն զանգվածային ձայնով: Թարմացում. Մանրամասներ
Փոփոխված RGBW LED շերտի վերահսկիչ, PIR վերահսկվող, ESP8285: 3 քայլ
Փոփոխված RGBW LED շերտի վերահսկիչ, PIR վերահսկվող, ESP8285. Տանը իմ գրասեղանի վերևում ես տեղադրել եմ RGBW LED ժապավեն: WiFi LED RGBW կարգավորիչը պետք է աշխատի այնպիսի հավելվածի հետ, ինչպիսին է Magic Home ծրագիրը: Այնուամենայնիվ, ես պարունակում եմ ESP8285 չիպ, որը ես փայլեցրել եմ իմ սեփական որոնվածով: Ես ավելացրեցի PIR, որով LED ժապավենը անցնում է
DIY կիթառի էֆեկտ. 8 քայլ
DIY Guitar Effect. Ես որոշեցի կառուցել էլեկտրական կիթառի էֆեկտ: Ինտերնետում կան բազմաթիվ սխեմաներ, ինչպես նաև կարճ տեսանյութեր, որոնք ցույց են տալիս, թե ինչպես են նրանք աշխատում, այնպես որ, եթե որևէ մեկը ցանկանում է ընտրել մեկը, ընտրելու շատ բան կա: Ես որոշեցի գնալ «Keele…» - ի հետ:
Երեք եղանակ ՝ արագության վերահսկմամբ LED հետապնդող միացում պատրաստելու համար + Հետ և չորրորդ էֆեկտ ՝ 3 քայլ
Երեք եղանակ `արագության վերահսկմամբ + հետևի և չորրորդ էֆեկտով լուսադիոդային շղթա պատրաստելու համար. LED Chaser Circuit- ի պատրաստման երեք տարբեր եղանակներ `-1: 4017 IC2: 555 erամաչափ IC3: