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

Թարմացրեք ձեր օղու նվերների տուփը. 7 քայլ (նկարներով)
Թարմացրեք ձեր օղու նվերների տուփը. 7 քայլ (նկարներով)

Video: Թարմացրեք ձեր օղու նվերների տուփը. 7 քայլ (նկարներով)

Video: Թարմացրեք ձեր օղու նվերների տուփը. 7 քայլ (նկարներով)
Video: ՇՏԱՊ! ԹԱՐՄԱՑՐԵՔ ՁԵՐ ՀԻՇՈՂՈՒԹՅՈՒՆԸ, ՈՐՆ Է ԿԱՐԵՎՈՐԸ? 2024, Նոյեմբեր
Anonim
Image
Image
Թարմացրեք ձեր օղու նվերների տուփը
Թարմացրեք ձեր օղու նվերների տուփը
Թարմացրեք ձեր օղու նվերների տուփը
Թարմացրեք ձեր օղու նվերների տուփը

Այս խրատական ձեռնարկում ես ցույց կտամ, թե ինչպես եմ ես օղու նվերների տուփը բարձրացրել ՝ դրան ավելացնելով մի քանի rgb LED: Այն ունի երեք գործող ռեժիմ ՝ ստատիկ գույներ, պտտվող գույներ և խաղի ռեժիմ: Խաղի ռեժիմում սարքը պատահականորեն վերցնում է մեկ շիշ և դրա տակ շողում լույսը ՝ առաջարկելով խաղացողին կրակել: Բոլոր ռեժիմները ներկայացված են տեսանյութում:

LED- ները, որոնք ես օգտագործել եմ, վերցված են WS2812B LED մոդուլների վրա հիմնված լուսադիոդային ժապավենից: Նրանք հիանալի են, քանի որ դրանք թույլ են տալիս վերահսկել յուրաքանչյուր LED- ի գույնը առանձին, և դրանք կարող եք կապել մեկը մյուսի հետևից այնքան, որքան ցանկանում եք, այնպես որ դրանք վերահսկելու համար ձեզ հարկավոր է ընդամենը մեկ թվային քորոց: Նրանք նաև համատեղելի են Adafruits NeoPixel գրադարանի հետ, այնպես որ կարող եք հեշտությամբ սկսել:

Ես օգտագործել եմ Attiny84 ՝ LED- ները վերահսկելու և կոճակների սեղմումներին արձագանքելու համար: Ես նախ ամեն ինչ փորձարկեցի սովորական Arduino- ի հետ, բայց այն պարզապես չէր տեղավորվի պատյանում, այնպես որ ինքնուրույն չիպի օգտագործումը պատասխանն էր:

Օգտագործեցի թափանցիկ ժապավեն ՝ մասերը պատյանին ամրացնելու համար, քանի որ տաք սոսնձի ատրճանակ չունեի և ցանկանում էի շուտով ավարտել այս նախագիծը: Դուք, իհարկե, կարող եք օգտագործել կցորդի ցանկացած եղանակ, որը Ձեզ դուր է գալիս:

Քայլ 1: Պատրաստեք գործը

Պատրաստեք գործը
Պատրաստեք գործը
Պատրաստեք գործը
Պատրաստեք գործը
Պատրաստեք գործը
Պատրաստեք գործը

Սկսեք ՝ բացելով փաթեթը և հանելով շշերը: Փորձեք պայքարել այն խմելու ցանկության դեմ, երբ աշխատում եք: Գործի ներքևում լուսադիոդների համար անցքեր պատրաստելու համար ես կաշվագործ էի, բայց դուք կարող եք օգտագործել այն գործիքը, որը Ձեզ դուր է գալիս:

Քայլ 2: Տեղադրեք LED- ները

Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները

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

Քայլ 3: Կոճակ

Կոճակ
Կոճակ
Կոճակ
Կոճակ
Կոճակ
Կոճակ

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

Քայլ 4: Attiny84

Attiny84
Attiny84
Attiny84
Attiny84
Attiny84
Attiny84

LED- ները վերահսկելու և կոճակի գործողություններին արձագանքելու համար ես օգտագործեցի attiny84 միկրո վերահսկիչ: Ես, հավանաբար, կարող էի օգտագործել attiny85- ը, քանի որ LED- ները և կոճակը գործարկելու համար ինձ ընդամենը երկու թվային կապում են պետք, բայց կողքիս տեղադրում չունեի: Ես կպցրեցի չիպը մի կետավոր պղնձե տախտակի մի կտորի վրա և ամրացրեցի բոլոր լարերը և կոճակը քաշող դիմադրիչը դրան `ըստ էլեկտրագծերի դիագրամի: Ես ուզում էի այն ծրագրավորելի դարձնել նավի վրա, այնպես որ ես ISP- ի առկայծող կապումները զոդեցի 2X3 վերնագրով: Հետո ես ծրագրավորեցի չիպը Arduino- ի հետ `այս հրահանգների համաձայն:

Քայլ 5: Հզորություն

Ուժ
Ուժ
Ուժ
Ուժ
Ուժ
Ուժ

Ներքին բոլոր բաղադրիչները սնուցելու համար ես օգտագործեցի սովորական USB մալուխ: Քանի որ USB- ն ապահովում է 5 վոլտ, և իմ բոլոր բաղադրիչներն աշխատում են այդ լարման վրա, որևէ կարգավորիչի կարիք չկար: Ես մի փոքր անցք կատարեցի մինչև սարքի ծայրը և USB մալուխն անցա դրա միջով: Մալուխի գրունտային և լարման գծերը կարող են սոսնձվել led շերտի համապատասխան գծերին `պատյան ներսում ավելորդ լարերը նվազեցնելու համար:

Քայլ 6: Կոդ

LED- ները վերահսկելու համար ես օգտագործեցի Adafruits NeoPixel գրադարանը: Դուք կարող եք ստանալ այստեղից

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

#ներառում

#սահմանեք LEDPIN 0 // թվային ելքային քորոց ՝ ձեր լուսարձակները կառավարելու համար #սահմանեք ԿՈUTՅԹ 1 // քորոց ՝ կոճակը միացնելու համար #սահմանեք PIXELCOUNT 5 // ձեր շերտի բոցերում լեդերի քանակը p = 0; // փուլ պտտվող ռեժիմի int maxpow = 100; // պտտվող ռեժիմի առավելագույն հզորությունը `0 -ից 225 int ռեժիմում = 0; // որ ռեժիմներն են led- երը: 0 ՝ ստատիկ գույներ, 1 ՝ պտտվող գույներ, 2 ՝ խաղի ռեժիմի bool հրում = կեղծ; // հետևել հրումներին դեպի int pushCount = 0; // cuonter հաշվել ճնշման երկարությունը `կարճ և երկար մղումների միջև որոշելու համար uint32_t կարմիր = 0xff0000; // կարմիր գույնը պատահականացման համար թարթում է // գույները ստատիկ ռեժիմի համար. Adafruit_NeoPixel պիքսել = Adafruit_NeoPixel (PIXELCOUNT, LEDPIN, NEO_GRB + NEO_KHZ800); void setup () {pinMode (BUTTON, INPUT); pixels.begin (); } // գործառույթը ՝ պատահականորեն մեկ շիշ/բաժակ վերցնելու և դրա տակ led- ը բռնկելու համար անվավեր պտտել () {randomSeed (millis ()); int բաժակ = պատահական (5); // ջոկելը պատահական բաժակ // զվարճալի անիմացիա, որտեղ led- ները ոլորվում են, որպեսզի պատահական ազդեցություն ունենա (int i = 1; i <100+բաժակ; i ++) {for (int j = 0; j

0){

հրված = ճշմարիտ; եթե (ռեժիմ <= 1) switchMode (); } pushCount = 0; // ընթացիկ ռեժիմի անջատիչի (ռեժիմի) հիման վրա գործողություններ կատարելը {case 0: // ստատիկ ռեժիմ, յուրաքանչյուր led- ի համար ստատիկ գույներ (int i = 0; i

Քայլ 7: Եզրակացություն

Եզրակացություն
Եզրակացություն
Եզրակացություն
Եզրակացություն

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

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

Այս արդիականացումը կամ կոտրումը, իհարկե, կարող է կիրառվել շշերի ցանկացած այլ տեսակի տարայի վրա և այլն: Կարծում եմ, որ լավ կլինի տեղադրել լուսադիոդները ավելի մեծ շշերի տակ գտնվող դարակում, որպեսզի նույնիսկ տան ավելի զով դեկորացիայի տարր դառնա:

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