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

Digispark & WS2812 Rainbow Wheel in a Box: 4 քայլ (նկարներով)
Digispark & WS2812 Rainbow Wheel in a Box: 4 քայլ (նկարներով)

Video: Digispark & WS2812 Rainbow Wheel in a Box: 4 քայլ (նկարներով)

Video: Digispark & WS2812 Rainbow Wheel in a Box: 4 քայլ (նկարներով)
Video: Rainbow wheel, wooden box (8x WS2812, DigiSpark, NeoPixel) 2024, Նոյեմբեր
Anonim
Image
Image
Digispark & WS2812 Rainbow Wheel in a Box
Digispark & WS2812 Rainbow Wheel in a Box
Digispark & WS2812 Rainbow Wheel in a Box
Digispark & WS2812 Rainbow Wheel in a Box

Այս փոքրիկ նախագիծը կատարվել է գեղեցիկ փորագրված 10x6x5 սմ չափսի փայտե տուփի շուրջ, որը ես գտա խանութում:

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

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

Լամպի պայծառությունը LDR- ի շնորհիվ համաչափ է պահվում շրջակա լույսի հետ. Լամպը փայլում է ցերեկային պայմաններում և շատ պայծառ չի լինի, երբ օգտագործվում է որպես գիշերային լույս, մթության մեջ:

Պարագաներ

Ապրանքների հաշիվը:

  • մեկ Attiny85 Digispark (կլոն) տախտակ ՝ իր Micronucleus bootloader- ով
  • մեկ 8x WS2812 բար
  • մեկ LDR, որն օգտագործվում է լամպի պայծառությունը կարգավորելու համար ՝ կախված շրջապատից
  • LDR- ի համար մեկ 10KΩ քաշվող դիմադրություն
  • USB միկրո մալուխ ՝ Digispark- ը ծրագրավորելու և լամպը միացնելուց հետո միացնելու համար
  • խոռոչ փայտե տուփ
  • 5V⎓ էներգիայի աղբյուր (կարող է ապահովել ոչ պակաս, քան 500 մԱ)

Հմտություններ և գործիքներ

  • PlatformIO (աշխատում է Visual Studio կոդով) որպես IDE. Ցանկացած Arduino IDE կանի աշխատանքը, չնայած
  • soldոդման երկաթ, զոդման մետաղալարեր և զոդման հիմնական հմտություններ
  • որոշ էլեկտրագծեր, մկրատ
  • որոշ սոսինձ, պինցետ
  • որոշ անթափանց ներկ (Digispark LED- ը ծածկելու և LDR- ը լամպի լույսի ազդեցությունից պաշտպանելու համար)

Քայլ 1: Digispark և PlatformIO

Digispark- ը (և յուրաքանչյուր 8-բիթանոց միկրոկառավարիչի մասնակցությամբ) հանդիսանում է AVR Attiny85- ի շուրջ կառուցված բեկումնային տախտակ, որը ունակ է ուղիղ USB հաղորդակցման Micronucleus bootloader- ի շնորհիվ: Լրացուցիչ տեղեկություններ գտեք նրա վիքիում ՝

PlatformIO- ն այն էկոհամակարգն է, որն օգտագործել եմ Digispark- ը ծրագրավորելու համար: Դրա հետ աշխատելու համար դուք պետք է տեղադրեք Visual Studio Code:

Քայլ 2: Սխեմատիկ և լարերի միացում

Սխեմատիկ և էլեկտրամոնտաժ
Սխեմատիկ և էլեկտրամոնտաժ
Սխեմատիկ և էլեկտրամոնտաժ
Սխեմատիկ և էլեկտրամոնտաժ
Սխեմատիկ և էլեկտրամոնտաժ
Սխեմատիկ և էլեկտրամոնտաժ

Oldոդման

  1. միացրեք երեք լար WS2812 բարին (հող, հոսանքի մուտք և տվյալների մուտքագրում)
  2. մետաղալարեր և Digccark- ի VV- ից մինչև 5V և GND քորոց
  3. միացրեք մնացած մետաղալարերը Digispark- ի P0 կապում
  4. 10KΩ դիմադրություն կպցրեք տախտակի GND և P2 կապումներին
  5. օգտագործել երկու լար `LDR- ը 5V և P2 կապումներին միացնելու համար (ես գեղագիտական նկատառումներով հազիվ տեսանելի էմալապատ լարեր եմ օգտագործել)

Քայլ 3: Fրագրակազմ

Գտեք այս նախագծի ծածկագիրը իմ GitHub- ում ՝

Հաճելի է իմանալ, թե:

  • #Include- ը պետք է օգտագործվի PlatformIO- ի հետ աշխատելիս
  • պարամետրերը, ինչպես քորոցների նշանակումը, WS2812 LED- ների քանակը, ծիածանի անիվի արագությունը և մուգ/պայծառ շեմերը ինչպես LED- ների, այնպես էլ LDR- ի համար գտնվում են ծածկագրի սկզբում
  • Adafruit Neopixel- ը գրադարանն է, որն օգտագործվում է WS2812 LED- ները վերահսկելու համար
  • RunningMedian գրադարանը օգտագործվում է LDR ընթերցումները ավելի կայուն դարձնելու համար. Սահմանված սահմանների պատճառով, լուսադիոդային լուսավորության սահմանների քարտեզագրում, սա հատկապես հաճելի է ցածր պայծառության պայմաններում, որտեղ փոքր տատանումները կարող են հանգեցնել տհաճ թարթման
  • Դուք չեք գտնի Attiny85- ը կողպելու փորձ, այնպես որ նախագիծը կմնա խմբագրելի

Որոշ հուշումներ (հայտնվում են նաև GITHub- ի README.md ֆայլում).

  • Կոդը վերբեռնելու համար համոզվեք, որ յուրաքանչյուր լարով USB մալուխ ունեք. Էժան լիցքավորման մալուխները հաճախ ունենում են ընդամենը +5V և լարային լարով
  • PlatformIO- ից DigiSpark- ին վերբեռնելու համար հարկավոր է միացնելուց հետո DigiSpark- ը միացնել, չնայած որ կոնսոլը չի զգուշացնում «այժմ ժամանակն է միացնել DigiSpark- ը», ինչպես դա անում է Arduino IDE- ն:
  • MacOS- ի PlatformIO- ից DigiSpark- ում բեռնման խնդրի արագ լուծում. PIO թողարկում 111
  • Էժան USB լիցքավորիչները կարող են ապահովել կեղտոտ/աղմկոտ ելք, ինչը կարող է LED- ները տարօրինակ կերպով թրթռալ հատկապես ցածր պայծառության դեպքում. Համոզվեք, որ ունենաք 5VDC մաքուր աղբյուր կամ զտեք կոնդենսատոր (կամ ավելի համապատասխան միացում) ավելացնելով:

Քայլ 4: Պատյան և ավարտական հպում

Պատյան և ավարտական հպում
Պատյան և ավարտական հպում
Պատյան և ավարտական հպում
Պատյան և ավարտական հպում
Պատյան և ավարտական հպում
Պատյան և ավարտական հպում
  • Նախագիծը հյուրընկալելու համար ձեր ընտրած տուփի մեջ փոս բացեք ՝ ձեր USB մալուխը միացնելու համար: Տեղյակ եղեք, որ որքան մեծ է անցքը միկրո USB միակցիչի շուրջ, այնքան ավելի մեծ է լույսի արտահոսքը ձեր LED բարից, եթե չեք ապահովում ինչ -որ անթափանց կնիք:
  • LDR- ի համար փոս փորել; համոզվեք, որ այն ուղղված լինի դեպի այն տարածքը, որը լուսավորվելու է LED- ներով, հակառակ դեպքում ավտոմատ կարգավորումը կընկնի մի հանգույցի մեջ
  • Ներքևի մակերեսը փորագրեք ՝ լուսադիոդային սանդղակի համար տեղ ազատելու համար, քանի որ ձեր լամպին նայելիս չպետք է ցանկանաք ուղղակիորեն տեսնել LED- ները:
  • Փակեք LDR- ի ներքևի անթափանց միջավայրով ՝ շրջակա միջավայրի պայծառությունը զգալու միջամտությունից խուսափելու համար WS2812 բարը
  • Օգտագործեք մի կաթիլ անթափանց ներկ `դիմակավորելու Digispark հզորությունը, դրանով իսկ խուսափելով այն փայլելուց տուփի ներսում
  • Սոսինձ Digispark տախտակ, LED բար, LDR և յուրաքանչյուր մալուխ, որպեսզի խուսափեք ձեր խոռոչի տուփի ներքին հարդարանանքից:
  • Նախատեսեք USB մալուխ անջատիչով, որպեսզի հեշտությամբ միացնեք և անջատեք լամպը

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