Հեծանվավազք RGB LED- ի միջոցով գունային սպեկտրի միջոցով `օգտագործելով Raspberry Pi 2 և Scratch: 11 քայլ
Հեծանվավազք RGB LED- ի միջոցով գունային սպեկտրի միջոցով `օգտագործելով Raspberry Pi 2 և Scratch: 11 քայլ
Anonim
Հեծանվավազք RGB LED- ի միջոցով Գունավոր սպեկտրի միջոցով օգտագործելով Raspberry Pi 2 և Scratch
Հեծանվավազք RGB LED- ի միջոցով Գունավոր սպեկտրի միջոցով օգտագործելով Raspberry Pi 2 և Scratch

Թարմացրեք գրառումները մինչև փետրվարի 25, 2016 թ.

Ողջույն, տղերք, այս նախագծով ես ուզում էի օգտագործել Scratch- ը ՝ RGB LED- ը գունային սպեկտրի միջոցով շրջելու համար:

Կան բազմաթիվ նախագծեր, որոնք դա անում են Arduino- ի հետ, այնպես որ ես հետաքրքրված էի տեսնել, թե արդյոք կարող եմ արժանապատիվ արդյունք ստանալ Raspberry Pi- ի հետ:

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

Այս նախագիծը իմ հրահանգի շարունակությունն է `կոճակներով և քերծվածքով լուսադիոդի պայծառությունը փոխելու վերաբերյալ, որը կարող եք գտնել այստեղ.

www.instructables.com/id/PWM-Based-LED-Cont…

Հղում դեպի օրիգինալ Arduino Sketch I- ը հիմնված է իմ Scratch ծրագրի վրա.

www.arduino.cc/hy/Tutorial/DimmingLEDs հեղինակ Քլեյ Շիրկի

Քայլ 1. Միասին հավաքել այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս ծրագրի համար

Հավաքեք միասին այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագծի համար
Հավաքեք միասին այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագծի համար
Հավաքեք միասին այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագծի համար
Հավաքեք միասին այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագծի համար
Հավաքեք միասին այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագծի համար
Հավաքեք միասին այն իրերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագծի համար

Ձեզ անհրաժեշտ բաղադրիչներ

Raspberry Pi ՝ Raspian օպերացիոն համակարգով և ինտերնետ կապով

1 x Breadboard

1 x RGB LED (ընդհանուր կաթոդ)

3 x 330 օմ դիմադրություն (նարնջագույն նարնջագույն շագանակագույն)

4 x արական/իգական breadboard մալուխներ

1 x արական/արական տախտակի մալուխ (կամ եթե ունեք մեկ փոքր միջուկային մալուխ)

Քայլ 2. Հասկանալով, թե ինչ են անում RGB LED- ի ոտքերը

Հասկանալով, թե ինչ են անում RGB LED- ի ոտքերը
Հասկանալով, թե ինչ են անում RGB LED- ի ոտքերը

Վերցրեք ձեր RGB LED- ն և նայեք ոտքերին, կնկատեք, որ մի ոտքն ավելի երկար է, քան մնացած բոլորը: Ուղղորդեք LED- ն այնպես, որ այս ամենաերկար ոտքը ձախ կողմում լինի:

Պին 1 -ը օգտագործվում է LED- ի ԿԱՐՄԻՐ փայլը դարձնելու համար

Պին 2 -ը հիմնավորված քորոց է

Պին 3 -ը դարձնում է LED- ի փայլը Կանաչ

Պին 4 -ը լուսարձակում է LED- ը ԿԱՊՈՎ

RGB LED- ն, որն ես օգտագործում եմ, ունի ընդհանուր կաթոդ, ինչը հիմնականում նշանակում է, որ դուք դրա ոտքը միացնում եք Raspberry Pi- ի գրունտի քորոցին, որպեսզի այն աշխատի:

Քայլ 3. Տեղադրեք 330 Օմ դիմադրիչները և գետնին ցատկող մալուխը տախտակի մեջ

330 Օմ ռեզիստորները և գետնին ցատկող մալուխը տեղադրեք տախտակի մեջ
330 Օմ ռեզիստորները և գետնին ցատկող մալուխը տեղադրեք տախտակի մեջ

Դիագրամում ամեն ինչ հեշտ տեսանելի դարձնելու համար մենք կարող ենք տեղադրել դիմադրիչները և գրունտի մալուխը, որտեղ նրանք պետք է առաջինը լինեն: Դիմադրիչները չունեն բևեռականություն, ուստի կարևոր չէ, թե ինչ ճանապարհով են նրանք գնում:

Նշում. Ինչու՞ մեզ պետք է երեք դիմադրություն մեկ LED- ի համար:

Մտածեք RGB LED- ի մասին, որպես 3 տարբեր LED- ների մեկ փաթեթավորված մեկում: Եթե մի շղթայում ունենայինք 3 անհատական LED, մենք յուրաքանչյուրի համար ռեզիստոր կօգտագործեինք, ուստի մեզ անհրաժեշտ է դիմադրություն RGB LED- ի յուրաքանչյուր գունավոր ոտքի համար:

Քայլ 4. LED- ի ավելացում մեր շղթային

LED- ի ավելացում մեր շղթայում
LED- ի ավելացում մեր շղթայում
LED- ի ավելացում մեր շղթայում
LED- ի ավելացում մեր շղթայում

Այժմ մենք ունենք դիմադրիչներ և գրունտային մալուխ, մենք կարող ենք տեղադրել մեր LED- ն հացահատիկի միացման մեջ: Ուղղորդեք LED- ն այնպես, որ ամենաերկար ոտքը ձախից լինի:

Նրբորեն մի փոքր կտրեք ոտքերը, որպեսզի դրանք միացվեն տախտակին, համոզվեք, որ յուրաքանչյուր ոտք գտնվում է նույն գծի վրա, ինչպես համապատասխան դիմադրությունը:

Ամենաերկար ոտքը (ոտք 2) պետք է համընկնի սև գրունտային մալուխի հետ:

Քայլ 5. Մալուխների ամրացում Breadboard Մաս 1. Կապող գետնին

Մալուխների տեղադրումը Breadboard Մաս 1. Միացում գետնին
Մալուխների տեղադրումը Breadboard Մաս 1. Միացում գետնին
Մալուխների տեղադրումը Breadboard Մաս 1. Միացում գետնին
Մալուխների տեղադրումը Breadboard Մաս 1. Միացում գետնին
Մալուխների տեղադրումը Breadboard Մաս 1. Միացում գետնին
Մալուխների տեղադրումը Breadboard Մաս 1. Միացում գետնին

Նախ եկեք միացնենք գետնին Raspberry Pi- ից գետնի ոտքին LED- ով:

Իմ գծապատկերում ես միացրել եմ արական/իգական մալուխը Raspberry GPIO- ի 6 -րդ փինից դեպի հացաթխի գետնին `LED- ի ստորգետնյա ոտքը Raspberry Pi- ին միացնելու համար:

Տեղեկաքարտը ցույց է տալիս Raspberry Pi GPIO- ի քորոցների դասավորությունը: Նկարի աջ կողմում գտնվող 40 փին GPIO- ն Raspberry Pi 2 -ի համար է, որը ես օգտագործում եմ այս նախագիծը կատարելու համար:

Քայլ 6. Մալուխները կցվում են Breadboard- ին Մաս 2. Կարմիր LED ոտքը միացնելը

Մալուխները կցված են տախտակին Մաս 2. Կարմիր LED ոտքը միացնելը
Մալուխները կցված են տախտակին Մաս 2. Կարմիր LED ոտքը միացնելը
Մալուխները կցված են տախտակին Մաս 2. Կարմիր LED ոտքը միացնելը
Մալուխները կցված են տախտակին Մաս 2. Կարմիր LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 2. Կարմիր LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 2. Կարմիր LED ոտքը միացնելը

Մալուխի արական ծայրը մղեք ձախ կողմում գտնվող դիմադրիչի վերևի անցքի մեջ և մալուխի էգ ծայրը մղեք Raspberry Pi- ի GPIO17 (pin11) վրա:

GPIO կապումների տեղեկատու քարտը կօգնի ձեզ ուղղել դեպի ճիշտ քորոց:

Քայլ 7. Մալուխների ամրացում Breadboard- ին Մաս 3. Կանաչ LED ոտքը միացնելը

Մալուխները կցված են Սեղանի տախտակին Մաս 3. Կանաչ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 3. Կանաչ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 3. Կանաչ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 3. Կանաչ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 3. Կանաչ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի տախտակին Մաս 3. Կանաչ LED ոտքը միացնելը

Մալուխի արական ծայրը մղեք մեջքի դիմադրիչի հենց վերևի անցքի մեջ և մալուխի էգ ծայրը մղեք Raspberry Pi- ի GPIO18 (pin12) վրա:

GPIO կապումների տեղեկատու քարտը կօգնի ձեզ ուղղել դեպի ճիշտ քորոց:

Քայլ 8. Մալուխները կցվում են Breadboard- ին Մաս 4. Կապույտ LED ոտքը միացնելը

Մալուխները կցված են Սեղանի սեղանին Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի սեղանին Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանատուն Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանատուն Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի սեղանին Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի սեղանին Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի սեղանին Մաս 4. Կապույտ LED ոտքը միացնելը
Մալուխները կցված են Սեղանի սեղանին Մաս 4. Կապույտ LED ոտքը միացնելը

Մալուխի արական ծայրը մղեք աջ կողմում գտնվող ռեզիստորի վերևի անցքի մեջ և մալուխի էգ ծայրը մղեք Raspberry Pi- ի GPIO27 (pin13) վրա:

GPIO կապումների տեղեկատու քարտը կօգնի ձեզ ուղղել դեպի ճիշտ քորոց:

Քայլ 9. Programրագրավորում Scratch- ում. Circuit Check

Mingրագրավորում Scratch- ում. Circuit Check
Mingրագրավորում Scratch- ում. Circuit Check
Mingրագրավորում Scratch- ում. Circuit Check
Mingրագրավորում Scratch- ում. Circuit Check
Mingրագրավորում Scratch- ում. Circuit Check
Mingրագրավորում Scratch- ում. Circuit Check

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

LED թեստը վերահսկվում է 3 զույգ ստեղներով:

A և Z- ն վերահսկում են RED- ը, A- ն միանում է կարմիրին, Z- ն ՝ կարմիրին

S և X- ը վերահսկում են GREEN- ը, S- ն միանում է կանաչին, X- ն անջատում է կանաչը

D և C- ն վերահսկում են BLUE- ը, D- ն միացնում է կապույտը, C- ն անջատում է կապույտը

Պինին բարձրության վրա դնելը լուսարձակում է LED- ը, ցածրը դնելով ՝ LED- ն անջատում է:

Ներբեռնեք ծրագիրը և փորձարկեք ձեր սխեման, եթե ցանկանում եք վստահ լինել, որ այն միացված է ճիշտ:

Քայլ 10. mingրագրավորում քերծվածքում. Ինչ էի ուզում անել RGB LED- ի հետ

Mingրագրավորում Scratch- ում. Ինչ էի ուզում անել RGB LED- ի հետ
Mingրագրավորում Scratch- ում. Ինչ էի ուզում անել RGB LED- ի հետ

Scratch ծրագրավորումը հաճելի փորձ է: Այն ունի սեղմման և քաշման ինտերֆեյս և բավականին ինտուիտիվ է: Չնայած այն հիմնականում ստեղծվել է ծրագրավորմանը երեխաներին ծանոթացնելու համար, ես իրականում կարծում եմ, որ դա բավականին օգտակար ծրագրավորման միջավայր է, քանի որ, իմ կարծիքով, ցուցադրված է իմ նախագծում լուսադիոդի վերահսկման կոդում:

Ահա թե ինչ էի ուզում տեղի ունենալ.

Գույնի փոփոխությունները կիրականացվեն երեք փուլով.

Առաջին փուլում մենք սկսում ենք առավելագույնը կարմիրով, իսկ կանաչը և կապույտը `շատ փոքր մակարդակի:

Այնուհետև մենք սկսեցինք նվազեցնել կարմիր պայծառությունը -1 -ով, մինչդեռ կանաչի պայծառությունը բարձրացնելով 1 -ով:

Մենք օգտագործել ենք օղակի հաշվիչ ՝ սահմանափակելու համար, թե քանի անգամ է դա տեղի ունեցել:

Երբ հանգույցի հաշվիչը հասավ 255 -ի, մենք սկսեցինք երկրորդ փուլը:

Երկրորդ փուլում կանաչը կլինի առավելագույնը, կարմիրը և կապույտը `ցածր մակարդակի:

Մենք նվազեցնում ենք կանաչ պայծառությունը -1 -ով, իսկ բլյուզի պայծառությունը բարձրացնում ենք 1 -ով:

Երկրորդ հանգույցի մեր հանգույցի հաշվիչը սահմանվեց 509:

Երբ այն հասնի 509 -ի, մենք կսկսենք 3 -րդ փուլը:

Երրորդ փուլում կապույտը առավելագույն պայծառության մեջ է, իսկ կանաչը և կարմիրը `ցածր մակարդակի վրա:

Մենք սկսում ենք նվազեցնել կապույտի պայծառությունը -1 -ով, իսկ կարմիր պայծառությունը մեծացնում ենք 1 -ով:

Երբ օղակի հաշվիչը կհասնի 763 -ի, ցիկլը կսկսվի 1 -ին փուլից:

Մենք ունենք երեք փոփոխական ՝ redVal, greenVal և blueVal, որոնք պահում են յուրաքանչյուր գույնի պայծառության մակարդակի արժեքները, և այդ արժեքներն այնուհետև ուղարկվում են ճիշտ GPIO կապերին, որոնք ուժ են տալիս LED- ների ոտքերին ՝ յուրաքանչյուր գույնի պայծառության արժեքը սահմանելու համար, ինչը հերթով մեզ տալիս է գույնի խառնուրդ, որը մենք ցանկանում ենք:

Եվ դա իմ փորձն է շրջել գունային սպեկտրով RGB LED- ի և Scratch- ի միջոցով:

Եթե ունեք Arduino և վարում եք այն էսքիզը, որն ինձ ոգեշնչեց գրել Scratch տարբերակը, ապա կտեսնեք, որ ընդհանրապես գույն չի թարթում: Ես լիովին վստահ չեմ, թե ինչու է Scratch տարբերակը այդքան թարթում: Ես կասկածում եմ, որ Arduino- ն ավելի լավ է վարում PWM- ը, բայց եթե իմ ծածկագրում տեսնեք ինչ -որ բան, որը բարելավման կարիք ունի, ես իսկապես երախտապարտ կլինեմ, եթե ժամանակ տրամադրեք ինձ ասելու համար:

Շնորհակալ եմ, որ կարդում եք իմ ուսանելի ուղերձը: Հուսով եմ, որ լավ օր կունենաք:

Քայլ 11: Scratch ծրագրի էկրանի գրավում

Scratch ծրագրի էկրանի գրավում
Scratch ծրագրի էկրանի գրավում

Եթե ցանկանում եք ինքներդ զբաղվել ծրագրավորմամբ, այստեղ ուշադիր նայեք դասավորությանը:

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