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

Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels). 6 քայլ (նկարներով)
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels). 6 քայլ (նկարներով)

Video: Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels). 6 քայլ (նկարներով)

Video: Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels). 6 քայլ (նկարներով)
Video: ESP32 Tutorial 6 - Using RGB LED Project 2.3 -SunFounder's ESP32 IoT Learnig kit 2024, Հուլիսի
Anonim
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels)
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels)
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels)
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels)
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels)
Լավագույն RGB լուսադիոդներ ցանկացած նախագծի համար (WS2812, Aka NeoPixels)

LED- ների հետ աշխատելիս մենք հաճախ սիրում ենք վերահսկել դրանց վիճակը (միացված/անջատված), պայծառությունն ու գույնը: Կան շատ ու շատ տարբեր եղանակներ, բայց ոչ մեկը այնքան կոմպակտ լուծում չէ, որքան WS2812 RGB LED- ը: Իր փոքրիկ 5 մմ x 5 մմ փաթեթում WS2812- ը ներառում է 3 գերապայծառ LED (կարմիր, կանաչ և կապույտ) և կոմպակտ վարորդի միացում (WS2811), որը պահանջում է ընդամենը մեկ տվյալների մուտքագրում `3 LED- ների վիճակը, պայծառությունն ու գույնը վերահսկելու համար:. 3 LED- ների վերահսկման համար անհրաժեշտ է միայն մեկ տվյալների գիծ, WS2811- ի հետ հաղորդակցության մեջ խիստ ճշգրիտ ժամկետների պահանջ է առաջանում: Այդ իսկ պատճառով պահանջվում է իրական ժամանակի միկրոկոնտրոլեր (օրինակ ՝ AVR, Arduino, PIC): Lyավոք, Linux- ի վրա հիմնված միկրոհամակարգիչը կամ մեկնաբանված միկրոկոնտրոլերը, ինչպիսիք են Netduino- ն կամ Basic Stamp- ը, չեն կարող ապահովել ժամանակի բավարար ճշգրտություն, որն անհրաժեշտ է: Եվ այսպես, այս Ուղեցույցում ես անցնում եմ այս LED- ներից մեկը կարգավորելու և Arduino Uno- ով կառավարելու գործընթացով: Այնուհետև ես ցույց եմ տալիս, թե որքան հեշտ է նրանցից մի քանիսը միմյանց միացնել հիանալի լուսավորման ցուցադրման համար: Դժվարության մակարդակ. Սկսնակ Ավարտի ժամանակը `10-15 րոպե

Քայլ 1: Նյութերի ցանկ

Նյութերի ցանկ
Նյութերի ցանկ

Այս հիանալի RGB LED- ն գալիս է 5050 (5 մմ x 5 մմ) փաթեթում `6 բարձիկներով, որոնք բավականին հեշտ է զոդել բեկումնային տախտակին: Քանի որ միակ լրացուցիչ բաղադրիչը, որն անհրաժեշտ է միացման միացման կոնդենսատորը, WS2812- ն անկեղծորեն առաջարկում է լավագույն լուծումը RGB LED լուսավորության և գույնի վերահսկման համար: Ներկառուցված մշտական հոսանքի LED վարորդը (WS2811) զգալիորեն օգտակար է երկու պատճառով. - Էլեկտրաէներգիայի մատակարարման և LED- ների միջև անհրաժեշտ չէ ավելացնել ընթացիկ սահմանափակող ռեզիստորներ (a.k.a. շնչափող դիմադրողներ): Այն, ինչ մեզ անհրաժեշտ է, շատ պարզ դիզայն է ՝ ապահովելու Power, Ground և 1 Control Input ՝ հիանալի լուսավորման էկրան ստեղծելու համար, որը բաղկացած է ոչ թե մեկ, այլ RGB LED լուսադիոդներից: Ճիշտ է! Այս LED- ներից մեկի Data Out կապը միացնելով մյուսի Data In- ին, մենք կարող ենք դրանք երկուսն էլ անկախ քշել նույն Control Input- ով: Եթե անհասկանալի է, թե ինչպես դա անել, մի անհանգստացեք, այս Ուղեցույցի ավարտին դուք լավ ճանապարհ կունենաք WS2812- ը ձեր ուզած նախագծին ավելացնելու ճանապարհին: Այս Instructable- ի համար ահա այն, ինչ մենք կօգտագործենք. Նյութեր. 3 x WS2812 RGB LED (նախապես զոդված փոքր ճեղքման տախտակի վրա) 1 x erոդվող առանց տախտակի ամուր հիմնական մետաղալար (գույների տեսականի; 28 AWG) 1 x Arduino Uno R3 1 x Break-away Pin Connector, 0.1 "Pitch, 8-Pin Male (Right-Angle) 1 x Pin Connector, 0.1" Pitch, 8-Pin Female (Right-Angle) 1 x Breakaway Pin Connector, 0.1 "Pitch, 8-Pin MaleTools: PC USB A/B Cable Wire Stripper Soldering Iron Նշումներ. Կախված ձեր նախագծից, WS2812 RGB LED- ները մատչելի են նաև առանց ճեղքման տախտակի `յուրաքանչյուրը մոտ 0,40 դոլարով, սակայն նախապես զոդված տարբերակի հարմարավետությունը գրավիչ է պարզ ծրագրերի համար:

Քայլ 2: Միացրեք Pin վերնագրերը

Միացրեք Pin վերնագրերը
Միացրեք Pin վերնագրերը
Միացրեք Pin վերնագրերը
Միացրեք Pin վերնագրերը
Միացրեք Pin վերնագրերը
Միացրեք Pin վերնագրերը

Նախորդ քայլին թվարկված բոլոր նյութերով, WS2812 RGB LED լուսավորելը բավականին ուղիղ է: Նախ, մենք ցանկանում ենք պատրաստել WS2812 Breakout Boards- ը `դրանք առանց զոդման տախտակի վրա տեղադրելու համար: Դա անելու համար մենք օգտագործում ենք մետաղալար (ամենատարածված կտրող գործիքները նույնքան լավ կաշխատեն) ՝ յուրաքանչյուր 8-պտույտ ժապավենը 2 x 3-պտույտ կտորների բաժանելու համար: Հիշեք, որ կտրելը մի փոքր բարդ է. Հաճախ ես փորձել եմ երկու արական գլուխների միջև եղած ակոսն օգտագործել որպես կտրելու ուղեցույց, և վերջում ես շատ պլաստմասսա կտրեցի այն վերնագրից, որը ցանկանում էի պահել: «Icingոհաբերելով» այն քորոցը, որտեղ մենք ցանկանում ենք կտրել, մենք ընդհանրապես խուսափում ենք խնդրից: Օգտագործելով տափակաբերան աքցան, մենք հանում ենք քորոցը, որտեղ ցանկանում ենք կտրել (այս դեպքում `4 -րդ և 8 -րդ քորոց): Քորոցները հեռացնելուց հետո մենք կարող ենք հեշտությամբ կրճատել այժմ դատարկ վերնագրերի կեսը: Այս տեխնիկան հավասարապես լավ է աշխատում կին վերնագրի հետ: Հետաքրքրվելուց և կտրելուց հետո մենք պետք է ունենանք 6 x 3-Pin գլուխներ, այսինքն ՝ 2 x ստանդարտ և 4 x ուղղանկյուն (2 x արու, 2 x էգ): Eringոդման երկաթի օգնությամբ մենք այժմ կարող ենք կապում կապակցված երեք տախտակներից յուրաքանչյուրին հետևյալ կերպ. Մեկ տախտակը պետք է ունենա 2 x ստանդարտ վերնագրեր, մինչդեռ մյուս երկու տախտակները պետք է ունենան 1 x ուղղանկյուն վերնագիր: Տախտակի վրա, որը կունենա ստանդարտ քորոցային վերնագրեր, մենք կապում ենք տախտակի ներքևի մակերեսին (այն կողմը, որտեղ գտնվում է LED- ը): Մյուս երկուսի վրա աջ անկյունների վերնագրերը (յուրաքանչյուր սեռից մեկը) կարող են տեղադրվել կամ վերևի կամ ներքևի մակերևույթի վրա: Նկատի ունեցեք, որ կարևոր է լինել հետևողական ՝ մի տախտակից մյուսը, արական և իգական վերնագրերի տեղադրման հարցում: Տախտակները կողմնորոշելու համար օգտակար է օգտագործել մակերևույթի ամրացման կոնդենսատորը. օգտագործելով սա որպես հղում, արական վերնագիրը պետք է զոդել մինչև կոնդենսատորին ամենամոտ ծայրը: Երբ կապումներն ամրացվեն, մենք պատրաստ ենք դրանցից մեկը միացնել Arduino- ին:

Քայլ 3. WS2812 Breakout Board- ը Arduino- ին միացնելը

WS2812 Breakout Board- ը Arduino- ին միացնելը
WS2812 Breakout Board- ը Arduino- ին միացնելը
WS2812 Breakout Board- ը Arduino- ին միացնելը
WS2812 Breakout Board- ը Arduino- ին միացնելը
WS2812 Breakout Board- ը Arduino- ին միացնելը
WS2812 Breakout Board- ը Arduino- ին միացնելը

Այս քայլով մենք կկապենք անհրաժեշտ կապերը Arduino- ի և մեր WS2812 Breakout տախտակներից մեկի միջև: Այդ նպատակով մենք կօգտագործենք առանց զոդման տախտակ և 3 x թռիչքային լարեր: Եթե դուք օգտագործում եք մետաղալար, ապա ժամանակն է կտրել 3 կտոր, յուրաքանչյուրը մոտ 4 երկարությամբ: Այժմ մենք կարող ենք տեղադրել WS2812 Breakout Board- ը (այն ստանդարտ վերնագրերով) մեր տախտակի բաժանարարի երկայնքով: Համոզված եղեք որ Arduino- ն անջատված է ինչպես էներգիայի աղբյուրից, այնպես էլ USB- ից, մենք կշարունակենք միացնել միացումները: WS2812 Breakout Board- ի ներքևի մասում մենք կարող ենք գտնել յուրաքանչյուր քորոցի անունը `VCC, DI (DO), GND: Օգտագործելով սա, որպես ուղեցույց, մենք շարունակում ենք Arduino- ից 5V և GND կապերը համապատասխանաբար համապատասխանաբար WCC2812 տախտակի VCC և GND կապերին: Այնուհետև Arduino- ի թվային կողմի 8 -րդ կապը մենք միացնում ենք WS2812 տախտակի DI քորոցին:, որը կոնդենսատորին ամենամոտ կողմի կենտրոնական քորոցն է: Այժմ մենք պատրաստ ենք բեռնել մեր ծրագիրը Arduino- ում և ստիպել WS2812- ը թարթել:

Քայլ 4: Արթնացնելով այն Arduino IDE- ով

Թարթել այն Arduino IDE- ով
Թարթել այն Arduino IDE- ով
Թարթել այն Arduino IDE- ով
Թարթել այն Arduino IDE- ով

Ենթադրեմ, որ դուք արդեն տեղադրել եք Arduino IDE- ն ձեր համակարգչին-համացանցում առկա բազմաթիվ ուղեցույցներ բավականին լավ են բացատրում գործընթացը: Theրագիրը, որը մենք պետք է բեռնենք մեր Arduino- ում, կարող եք ներբեռնել այստեղ: Այն բանից հետո, երբ մենք պարզապես կարող ենք կրկնակի սեղմել primer.ino ֆայլը որոնվածի ներսում> օրինակներ> այբբենարան թղթապանակ `այն Arduino IDE- ում բեռնելու համար (wirtten for version 1.0.5): Փաթեթը ներառում է կոդի կազմման համար անհրաժեշտ գրադարաններ, այնպես որ սխալներ չպետք է լինեն: Խնդրում ենք տեղադրել մեկնաբանություն, եթե կազմման հետ կապված որևէ խնդրի հանդիպեք: Arduino տախտակի տեսակը և USB պորտը Գործիքների ընտրացանկի միջոցով ընտրելուց հետո վերբեռնեք ծածկագիրը, և WS2812- ը պետք է սկսի թարթել ՝ փոխարինելով կարմիր, կանաչ և կապույտ: Այս WS2812 RGB LED- ների մասին ամենագեղեցիկ առանձնահատկությունն այն է, որ դրանք կարելի է բավականին հեշտությամբ «կապել շղթայով» `երկար LED- ներ և զանգվածներ ստեղծելու համար, որոնք պարունակում են այդ LED- ներից շատերը: Հաջորդ քայլում մենք դա անում ենք մեր պատրաստած 3 տախտակներով:

Քայլ 5: RGB LED լուսարձակների պատրաստում

RGB LED լուսարձակների պատրաստում
RGB LED լուսարձակների պատրաստում
RGB LED լուսարձակների պատրաստում
RGB LED լուսարձակների պատրաստում

Ներկառուցված LED շարժիչի սխեման (WS2811) թույլ է տալիս «շղթայակցել» մեկ LED- ին հաջորդին ՝ օգտագործելով միայն 1 տվյալների տող (!): Մի WS2812- ի Տվյալների ելքը մյուսի Տվյալների մուտքագրման հետ միացնելով, մենք կարող ենք վերահսկել LED- ների մի ամբողջ զանգվածի պայծառությունն ու գույնը Arduino- ում դրանցից մինչև 500 -ը: Իհարկե, շատ LED լուսարձակներ վարելու համար որոշ նկատառումներն անհրաժեշտ են. - Arduino- ն առավելագույնը կբարձրացնի իր RAM- ը `500 LED լուսարձակում` 30 Հց թարմացման արագությամբ: - Երկու տախտակները միմյանց միացնելու համար առաջարկվող առավելագույն տարանջատումը 6 դյույմ է `էներգիայի խափանումներից և տվյալների կոռուպցիայից խուսափելու համար: Այս նկատառումներով մենք կարող ենք բոլոր LED- ները քշել ՝ օգտագործելով 24-բիթ գույնի լուծում, պայծառության մակարդակներում, որոնք հետևողական են, և բավականին դիմացկուն է մարտկոցի հզորության (փոքր) փոփոխությունների փոփոխություններին: «Մարգարիտ կապելու» համար տախտակները, որոնք մենք պատրաստել ենք այս Ուղեցույցի համար, մենք սկսում ենք երկու տախտակներից մեկի էգ ծայրը մյուսից մյուսի արական ծայրով միացնելով ` Անկյունի վերնագրեր: Այնուհետև, երբ մեր Arduino տախտակն անջատված է Power- ից և USB- ից, մենք երկու տախտակի շղթայից արական ծայրը տեղադրում ենք առանց զոդման տախտակի վրա: Մենք երաշխավորում ենք, որ կապումներն համընկնում են WS2812 Breakout Board- ի հետ, որը միացված էր տախտակին: Նման դասավորվածությունը կունենա VCC և GND կապում ինչպես ուղիղ գլխատախտակից, այնպես էլ շղթայից `տախտակի նույն շարքում: Մենք տեղադրում ենք երկտախտանի շղթան երրորդ ճեղքման տախտակի վերջի մոտ, որը հակառակ է կոնդենսատորին: Ա այն բանից հետո, երբ ամեն ինչ միացված է, մենք կարող ենք գործարկել Arduino IDE- ն և տեքստի խմբագրիչով փոխել «#սահմանել NUM_LEDS 1» սահմանումը «#սահմանել NUM_LEDS 3»: Տախտակը Power և/կամ USB- ին նորից միացնելուց հետո կարող ենք վերբեռնել նոր ծրագիրը… և… BAM! Բոլոր երեք LED- ները պետք է հենց այնպես թարթեն:

Քայլ 6: Մթության մեջ, թող լինի լույս:

Մթության մեջ, թող լինի լույս
Մթության մեջ, թող լինի լույս
Մթության մեջ, թող լինի լույս
Մթության մեջ, թող լինի լույս

Այս Instructable- ը արագորեն ցույց տվեց, թե ինչպես օգտագործել WS2812 RGB LED- ը նախապես զոդված փոքրիկ բեկման տախտակների վրա: Մենք օգտագործեցինք Arduino- ն `LED- ների պայծառությունն ու գույնը վերահսկելու համար: Մի փոքր հիասթափեցնող է այն, որ մեր օգտագործած ծածկագիրը ստիպեց LED- ները միանգամից թարթել ՝ նույն ինտենսիվությամբ և գույնով: Գործողության այս ռեժիմը չի ցուցադրում «խելացի» LED վարորդի (WS2811) ամբողջ ներուժը, որը ներդրված է այս փաթեթում: Եվ այսպես, եկեք փորձենք բնօրինակ կոդի հետևյալ փոփոխությունները: Ինչպես նախկինում, դուք կբեռնեք և կբացահայտեք ֆայլը, այնուհետև կբացեք որոնվածը, որը պետք է բեռնվի Arduino- ում (որոնվածը> էֆեկտներ> effects.ino): Այս ցուցադրման համար անհրաժեշտ բոլոր ֆայլերը ներառված են, ուստի երրորդ կողմի գրականություն ավելացնելու կարիք չկա: կոդը պետք է կազմվի առանց որևէ փոփոխության --- այն արդեն տեղադրված է 3 LED- ների հետ աշխատելու համար: Այժմ ձեր երևակայության խնդիրն է մշակել հաջորդ նախագիծը, որտեղ այս շատ օգտակար, կոմպակտ, RGB LED- ները կարող են լուսավորել իրենց լույսերը: Ազատորեն տեղադրեք WS2812- ի միջոցով ձեր սեփական որոշ ստեղծագործություններ մեկնաբանությունների բաժնում:

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