Բովանդակություն:
- Պարագաներ
- Քայլ 1. Հասկանալ RGB LED շերտերի տեսակները
- Քայլ 2. Ձայնային ազդանշանի ուժեղացում
- Քայլ 3. Ազդանշանի տարրալուծում ստացիոնար սինուսոիդների գումարի մեջ - տեսություն
Video: Ոչ հասցեական RGB LED շերտի աուդիո վիզուալիզատոր. 6 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Որոշ ժամանակ 12V RGB LED ժապավեն ունեի հեռուստացույցի պահարանիս շուրջը, և այն կառավարվում է ձանձրալի LED վարորդի միջոցով, որը թույլ է տալիս ինձ ընտրել 16 նախապես ծրագրավորված գույներից մեկը:
Ես լսում եմ շատ երաժշտություն, որն ինձ մոտիվացնում է, բայց լուսավորությունը պարզապես չի տրամադրում տրամադրությունը: Այն շտկելու համար որոշեցի վերցնել ձայնային ազդանշանը, որը տրվել էր իմ բարձրախոսին AUX (3.5 մմ անցք) միջոցով, մշակել այն և համապատասխանաբար վերահսկել RGB ժապավենը:
LED- ները արձագանքում են երաժշտությանը `հիմնված Bass (Low), Treble (Mid) և High հաճախությունների մեծության վրա:
Հաճախականությունների տիրույթ - Գույնը հետևյալն է.
Lowածր - կարմիր
Միջին - կանաչ
Բարձր - կապույտ
Այս նախագիծը ներառում է շատ DIY իրեր, քանի որ ամբողջ սխեման կառուցվել է զրոյից: Սա պետք է բավականին հեշտ լինի, եթե այն տեղադրեք սեղանի վրա, բայց բավականին դժվար է այն կպցնել PCB- ին:
Պարագաներ
(x1) RGB LED ժապավեն
(x1) Arduino Uno/Nano (Mega- ն խորհուրդ է տրվում)
(x1) TL072 կամ TL082 (TL081/TL071- ը նույնպես լավ է)
(x3) TIP120 NPN տրանզիստոր (TIP121, TIP122 կամ N-Channel MOSFET- ներ, ինչպես IRF540, IRF 530 նույնպես լավ են)
(x1) 10kOhm պոտենցիոմետր գծային
(x3) 100kOhm 1/4watt ռեզիստորներ
(x1) 10uF էլեկտրոլիտիկ կոնդենսատոր
(x1) 47nF կերամիկական կոնդենսատոր
(x2) 3.5 մմ աուդիո միակցիչ - իգական
(x2) 9 Վ մարտկոց
(x2) 9 Վ մարտկոցի անջատիչ միակցիչ
Քայլ 1. Հասկանալ RGB LED շերտերի տեսակները
Գոյություն ունեն LED շերտերի երկու հիմնական տեսակ ՝ «անալոգային» և «թվային»:
Անալոգային տիպի (նկ. 1) ժապավենները զուգահեռաբար միացված են բոլոր LED- ները, ուստի այն գործում է որպես մեկ հսկայական եռագույն LED; կարող եք ամբողջ ժապավենը սահմանել ձեր ուզած գույնի վրա, բայց չեք կարող վերահսկել LED- ի առանձին գույները: Դրանք շատ հեշտ են օգտագործել և բավականին էժան:
Թվային տիպի (նկ. 2) շերտերն աշխատում են այլ կերպ: Նրանք ունեն LED- ի յուրաքանչյուր LED- ի համար, շերտը օգտագործելու համար դուք պետք է թվային կոդավորված տվյալներ ուղարկեք չիպերին: Այնուամենայնիվ, սա նշանակում է, որ դուք կարող եք վերահսկել յուրաքանչյուր LED առանձին: Չիպի լրացուցիչ բարդության պատճառով դրանք ավելի թանկ են:
Եթե դժվարանում եք ֆիզիկապես ճանաչել անալոգային և թվային տիպի ժապավենների միջև եղած տարբերությունները,
- Անոլոգի տիպի համար օգտագործեք 4 կապում, 1 ընդհանուր դրական և 3 բացասական, այսինքն ՝ մեկ RGB յուրաքանչյուր գույնի համար:
- Թվային տիպի օգտագործումը 3 կապում է ՝ դրական, տվյալների և հիմքի:
Ես կօգտագործեմ անալոգային տիպի շերտեր, քանի որ
- Շատ քիչ են կամ չկան Instructables- ը, որոնք սովորեցնում են երաժշտական ռեակտիվ անալոգային ժապավեն պատրաստել: Նրանց մեծամասնությունը կենտրոնանում է թվային տիպի վրա և ավելի հեշտ է ստիպել նրանց արձագանքել երաժշտությանը:
- Շուրջս անալոգային տիպի շերտեր ունեի:
Քայլ 2. Ձայնային ազդանշանի ուժեղացում
Ձայնային ազդանշանը, որն ուղարկվում է աուդիո խցիկի միջոցով, դա է
անալոգային ազդանշան, որը տատանվում է +200mV և -200mV սահմաններում: Այժմ սա խնդիր է, քանի որ մենք ցանկանում ենք աուդիո ազդանշանը չափել Arduino- ի անալոգային մուտքերից մեկով, քանի որ Arduino- ի անալոգային մուտքերը կարող են չափել միայն 0 -ից մինչև 5V լարումներ: Եթե մենք փորձեինք չափել ձայնային ազդանշանի բացասական լարումները, ապա Arduino- ն կկարդար միայն 0V, և մենք վերջում կտրեցինք ազդանշանի ներքևը:
Այն լուծելու համար մենք պետք է ուժեղացնենք և փոխհատուցենք աուդիո ազդանշանները, որպեսզի դրանք ընկնեն 0-5V տիրույթի սահմաններում: Իդեալում, ազդանշանը պետք է ունենա 2.5V ամպլիտուդ, որը տատանվում է 2.5V- ի սահմաններում, այնպես որ դրա նվազագույն լարումը 0V է, իսկ առավելագույն լարումը `5V:
Ուժեղացում
Ամրացուցիչը շղթայի առաջին քայլն է, այն մեծացնում է ազդանշանի ամպլիտուդը + կամ - 200 մՎ -ից մինչև + կամ - 2.5 Վ (իդեալական): Ուժեղացուցիչի մյուս գործառույթն է պաշտպանել աուդիո աղբյուրը (այն, ինչ առաջին հերթին ստեղծում է ձայնային ազդանշան) մնացած միացումից: Ելքային ուժեղացված ազդանշանը ամբողջ հոսանքը կստանա ուժեղացուցիչից, այնպես որ միացումից հետո դրա վրա դրված ցանկացած բեռ չի զգացվի ձայնային աղբյուրի կողմից (իմ դեպքում հեռախոսը/iPod- ը/նոութբուքը): Դա արեք ՝ տեղադրելով TL072 կամ TL082 (նկ. 2) փաթեթում գործող անջատիչներից մեկը ոչ շրջվող ուժեղացուցիչի կազմաձևում:
TL072- ի կամ TL082- ի տվյալների թերթիկում ասվում է, որ այն պետք է սնուցվի +15 և -15V լամպերով, բայց քանի որ ազդանշանը երբեք չի ուժեղանա + կամ -2.5 Վ -ից բարձր, լավ է op -amp- ը գործարկել ավելի ցածր բանով: Ես օգտագործեցի երկու ինը վոլտ մարտկոցներ, որոնք միացված էին շարքով ՝ + կամ - 9V էլեկտրամատակարարում ստեղծելու համար:
Միացրեք ձեր +V (PIN 8) և –V (PIN 4) op-amp- ին: Մոնո միացումից միացրեք ազդանշանը դեպի ոչ շրջվող մուտքի (փին 3) և միացրեք վարդակի հիմնային քորոցը ձեր լարման մատակարարման 0V հղմանը (ինձ համար սա հաջորդականությամբ երկու 9V մարտկոցների միջև միացումն էր): Հաղորդակցեք 100kOhm ռեզիստորին op-amp- ի ելքի (pin 1) և inverting input (pin 2) միջև: Այս միացումում ես օգտագործեցի 10kOhm պոտենցիոմետր, որը լարված էր որպես փոփոխական ռեզիստոր `իմ ոչ շրջվող ուժեղացուցիչի շահույթը (գումարը, որն ուժեղացուցիչն ուժեղացնում է): Հաղորդալարեք այս 10K գծային կոնաձև տուփը շրջվող մուտքի և 0V տեղեկանքի միջև:
DC Օֆսեթ
DC օֆսեթային սխեման ունի երկու հիմնական բաղադրիչ ՝ լարման բաժանարար և կոնդենսատոր: Լարման բաժանարարը պատրաստված է երկու 100k ռեզիստորներից, որոնք միացված են Arduino- ի 5V հոսանքից մինչև գետնին: Քանի որ ռեզիստորներն ունեն նույն դիմադրությունը, նրանց միջև խաչմերուկում լարումը հավասար է 2,5 Վ -ի: Այս 2.5 Վ հանգույցը 10uF կոնդենսատորի միջոցով կապված է ուժեղացուցիչի ելքի հետ: Երբ կոնդենսատորի ուժեղացուցիչի լարումը բարձրանում և ընկնում է, այն առաջացնում է լիցքի մի պահ կուտակում և հետ մղում 2.5 Վ հանգույցին ամրացված կոնդենսատորի կողմից: Սա հանգեցնում է նրան, որ 2.5 Վ հանգույցի լարումը տատանվում է վեր և վար, կենտրոնացված շուրջ 2.5 Վ:
Ինչպես ցույց է տրված սխեմատիկայում, 10uF կոնդենսատորի բացասական կապը միացրեք ուժեղացուցիչից ելքին: Կափարիչի մյուս կողմը միացրեք երկու 100k դիմադրիչների միջև, որոնք միացված են 5V- ի և գետնի միջև: Բացի այդ, ավելացրեք 47nF կոնդենսատոր 2.5 Վ -ից գետնին:
Քայլ 3. Ազդանշանի տարրալուծում ստացիոնար սինուսոիդների գումարի մեջ - տեսություն
Ձայնային ազդանշանը, որն ուղարկվում է ցանկացած 3.5 մմ -անոց խցիկի միջոցով, գտնվում է
միջակայքը `20 Հց -ից 20 կՀց: Այն նմուշառված է 44.1 կՀց հաճախականությամբ և յուրաքանչյուր նմուշ կոդավորված է 16 բիթով:
Ձայնային ազդանշանը կազմող հիմնական տարրական հաճախականությունները քայքայելու համար ազդանշանին կիրառում ենք Fourier Transform, որը ազդանշանը քայքայում է ստացիոնար սինուսոիդների գումարի մեջ: Այլ կերպ ասած, Ֆուրյեի վերլուծությունը ազդանշանն իր սկզբնական տիրույթից (հաճախ ժամանակ կամ տարածություն) փոխակերպում է հաճախականության տիրույթում ներկայացման և հակառակը: Բայց այն ուղղակիորեն սահմանումից հաշվարկելը հաճախ չափազանց դանդաղ է գործնական լինելու համար:
Նկարները ցույց են տալիս, թե ինչ տեսք ունի ազդանշանը ժամանակի և հաճախականության տիրույթում:
Հենց այստեղ է, որ Ֆուրիեի արագ փոխակերպման (FFT) ալգորիթմը բավականին օգտակար է:
Ըստ սահմանման, FFT- ն արագորեն հաշվարկում է նման փոխակերպումները ՝ գործոնավորելով DFT մատրիցը ՝ դառնալով սակավ (հիմնականում զրո) գործոնների արտադրանք: Արդյունքում, այն կարողանում է նվազեցնել DFT- ի O (N2) հաշվարկման բարդությունը, որը ծագում է, եթե պարզապես կիրառվում է DFT- ի սահմանումը O (N log N), որտեղ N- ը տվյալների չափն է: Արագության տարբերությունը կարող է հսկայական լինել, հատկապես երկար տվյալների հավաքածուների դեպքում, որտեղ N- ը կարող է լինել հազարավոր կամ միլիոնավոր: Կլորացման սխալի առկայության դեպքում շատ FFT ալգորիթմներ շատ ավելի ճշգրիտ են, քան DFT- ի սահմանումը ուղղակի կամ անուղղակի գնահատելը:
Պարզ ասած, դա պարզապես նշանակում է, որ FFT ալգորիթմը ցանկացած ազդանշանի Fourier Transform- ի հաշվարկման ավելի արագ միջոց է: Սա սովորաբար օգտագործվում է ցածր հաշվարկային հզորությամբ սարքերի վրա:
Խորհուրդ ենք տալիս:
RGB լուսավորություն + աուդիո վիզուալիզատոր. 4 քայլ (նկարներով)
RGB Backlight + Audio Visualizer. Բարի գալուստ իմ հրահանգներ, թե ինչպես կարելի է RGB LED լուսարձակ կառուցել, օրինակ. ձեր հեռուստացույցի կամ գրասեղանի հետևի կողմը: Սխեմատիկան ինքնին շատ պարզ է, քանի որ WS2812 LED շերտերը շատ հեշտ են ինտերֆեյսի մեջ, օրինակ ՝ Arduino Nano- ի հետ: Նշում. որ մեզ պետք չէ
Wiggly Wobbly - Տեսեք Ձայնային ալիքները !! Իրական ժամանակի աուդիո վիզուալիզատոր !!: 4 քայլ
Wiggly Wobbly - Տեսեք Ձայնային ալիքները !! Իրական ժամանակի աուդիո վիզուալիզատոր !!: Երբևէ մտածե՞լ եք, թե ինչ տեսք ունեն Բզեզի երգերը: Թե՞ պարզապես ուզում եք տեսնել, թե ինչպիսի տեսք ունի ձայնը: Հետո մի անհանգստացեք, ես այստեղ եմ, որպեսզի օգնեմ ձեզ դարձնել այն:
Կայլո Ռենի Lightsaber- ի վրա հիմնված աուդիո վիզուալիզատոր. 5 քայլ
Kylo Ren- ի Lightsaber- ի վրա հիմնված աուդիո վիզուալիզատոր. Ոգեշնչված Kylo Ren- ի թեթև սվինով, ես որոշեցի աուդիո վիզուալիզատոր սարքել ՝ օգտագործելով arduino- ին միացված LED- ները, այնուհետև մշակել երգերի հիման վրա LED- ները զարկելու համար … ճիշտ կռահեցիք: Imperial March
Ինչպես կատարել զգեստների համար հաճախականության աուդիո վիզուալիզատոր (Arduino նախագիծ). 8 քայլ (նկարներով)
Ինչպես կատարել հաճախականության համար աուդիո վիզուալիզատոր զգեստի համար (Arduino նախագիծ). Այս Instuctable- ում ես կտրամադրեմ խորհուրդներ, ծրագրեր և ծածկագրեր `ապակեպլաստե ապակուց պատրաստված փրփուրի կոստյումի մեջ կառուցված հուզիչ աուդիո վիզուալիզատոր պատրաստելու համար: Theանապարհին ես կկիսվեմ օգտակար քայլերով և լրացուցիչ ծածկագրերով, որոնք ոմանք ցանկանում են ներդնել arduino FFT գրադարանները
Mint Box Աուդիո ընտրիչ `3.5 մմ Աուդիո անջատիչ` 6 քայլ
Անանուխի տուփ Աուդիո ընտրիչ. 3.5 մմ Աուդիո անջատիչ. Խնդիր. Հաճախ իմ աշխատասեղանին պետք է ականջակալներ օգտագործել խաղերի կամ երաժշտություն լսելու համար, երբ սենյակում են այլ մարդիկ, իսկ հետո պետք է անցնել բարձրախոսներին, եթե ուզում եմ ծիծաղելի ցուցադրել տեսանյութ կամ ինտերնետային զանգ կատարեք հեռավոր ազգականի հետ: Թ