Turinys:

„Digispark“ir „WS2812“vaivorykštės ratas dėžutėje: 4 žingsniai (su nuotraukomis)
„Digispark“ir „WS2812“vaivorykštės ratas dėžutėje: 4 žingsniai (su nuotraukomis)

Video: „Digispark“ir „WS2812“vaivorykštės ratas dėžutėje: 4 žingsniai (su nuotraukomis)

Video: „Digispark“ir „WS2812“vaivorykštės ratas dėžutėje: 4 žingsniai (su nuotraukomis)
Video: Digispark ATTINY85 IR remote for PC 2024, Lapkritis
Anonim
Image
Image
„Digispark & WS2812 Rainbow Wheel“dėžutėje
„Digispark & WS2812 Rainbow Wheel“dėžutėje
„Digispark & WS2812 Rainbow Wheel“dėžutėje
„Digispark & WS2812 Rainbow Wheel“dėžutėje

Šis mažas projektas buvo sukurtas aplink gražiai išdrožtą 10x6x5 cm medinę dėžę, kurią radau parduotuvėje.

Geriausia jo savybė, kuri iš tikrųjų nebuvo tinkamai užfiksuota fotoaparate, yra šviesti ryškiomis, prisotintomis spalvomis, medžio raižyto dėžutės dangčio šonuose.

Kita vertus, atminkite, kad naudojant vaivorykštės efektą siaurų RGB 5050 šviesos diodų juostelėje visada atsiras baltos spalvos apšvietimas per kelis centimetrus nuo šviesos diodų, nes kiekvieno pikselio spalva netrukus susimaišo su kaimynais. Jei norite išvengti šio efekto, galite pabandyti naudoti fokusavimo objektyvą

Dėl LDR lempos ryškumas išlaikomas proporcingas aplinkos šviesai: lempa spindės dienos šviesos sąlygomis ir nebus per ryški, kai bus naudojama kaip naktinė lemputė, tamsoje.

Prekės

Sąmata:

  • viena „Attiny85 Digispark“(klono) plokštė su „Micronucleus“įkrovos tvarkykle
  • vienas 8x WS2812 baras
  • vienas LDR, naudojamas lempos ryškumui sureguliuoti, atsižvelgiant į aplinką
  • vienas 10KΩ ištraukiamasis rezistorius LDR
  • USB mikro kabelį, skirtą „Digispark“programuoti ir lemputei maitinti, kai tai bus padaryta
  • tuščiavidurė medinė dėžutė
  • 5 V⎓ maitinimo šaltinis (galintis tiekti ne mažiau kaip 500 mA)

Įgūdžiai ir įrankiai:

  • „PlatformIO“(veikia „Visual Studio Code“) kaip IDE - bet kuris „Arduino IDE“atliks darbą
  • lituoklis, šiek tiek litavimo vielos ir pagrindiniai litavimo įgūdžiai
  • kai kurie laidai, žirklės
  • šiek tiek klijų, pincetų
  • kai kurie nepermatomi dažai (padengti „Digispark LED“ir apsaugoti LDR nuo lempos šviesos poveikio)

1 žingsnis: „Digispark“ir „PlatformIO“

„Digispark“(ir kiekvienas klonas, kuriame yra tas pats 8 bitų mikrovaldiklis) yra pertraukimo plokštė, sukurta aplink „AVR Attiny85“, galinti tiesioginį USB ryšį dėka „Micronucleus“įkrovos. Daugiau informacijos rasite jos wiki:

„PlatformIO“yra ekosistema, kurią naudoju programuodama „Digispark“. Norėdami su juo dirbti, turite įdiegti „Visual Studio Code“

2 žingsnis: schema ir laidai

Schema ir laidai
Schema ir laidai
Schema ir laidai
Schema ir laidai
Schema ir laidai
Schema ir laidai

Litavimas

  1. prijunkite tris laidus prie WS2812 juostos (įžeminimo, maitinimo ir duomenų įvesties)
  2. laidas įžemintas ir Vcc prie 5V ir GND „Digispark“kaiščio
  3. lituokite laidą prie „Digispark“P0 kaiščio
  4. lituokite 10KΩ rezistorių prie plokštės GND ir P2 kaiščių
  5. naudokite du laidus, kad prijungtumėte LDR prie 5 V ir P2 kaiščių (dėl estetinių priežasčių naudojau vos matomus emaliuotus laidus)

3 žingsnis: programinė įranga

Šio projekto kodą rasite mano „GitHub“:

Malonu žinoti:

  • #include turi būti naudojamas dirbant su „PlatformIO“
  • parametrai, pvz., kaiščių priskyrimas, WS2812 šviesos diodų skaičius, vaivorykštinio rato greitis ir tamsios/šviesios slenksčiai tiek LED, tiek LDR yra kodo pradžioje
  • „Adafruit Neopixel“yra biblioteka, naudojama valdyti WS2812 šviesos diodus
  • „RunningMedian“biblioteka naudojama LDR rodmenims padaryti stabilesniems; dėl nustatytų ribų, atvaizduojančių šviesos diodų ryškumo ribas, tai ypač malonu esant mažam ryškumui, kai dėl nedidelių svyravimų gali erzinti mirgėjimas
  • Nerasite jokių bandymų užrakinti „Attiny85“, todėl projektas liks redaguojamas

Keletas patarimų (taip pat rodomi „GitHub“faile README.md):

  • Norėdami įkelti kodą, būtinai turėkite USB kabelį su kiekvienu kaiščiu: pigūs įkrovimo kabeliai dažnai turi tik +5 V ir įžemintą laidą
  • Įkėlus iš „PlatformIO“į „DigiSpark“, po kompiliavimo turite prijungti „DigiSpark“, nors konsolė neperspėja „dabar laikas prijungti„ DigiSpark “, kaip tai daro„ Arduino IDE “.
  • Greitas problemos sprendimas įkeliant į „DigiSpark“iš „PlatformIO“„MacOS“: PIO problema 111
  • Pigūs USB įkrovikliai gali suteikti nešvarią/triukšmingą išvestį, dėl kurios šviesos diodai gali keistai mirgėti, ypač esant mažam ryškumui: įsitikinkite, kad turite švarų 5 V nuolatinės srovės šaltinį, arba filtruokite, pridėdami kondensatorių (arba tinkamesnę grandinę)

4 žingsnis: korpuso ir apdailos lietimas

Korpuso ir apdailos lietimas
Korpuso ir apdailos lietimas
Korpuso ir apdailos lietimas
Korpuso ir apdailos lietimas
Korpuso ir apdailos lietimas
Korpuso ir apdailos lietimas
  • Iškirpkite skylę pasirinktoje dėžutėje, kur priimsite projektą, ir prijunkite USB kabelį. Atminkite, kad kuo didesnė skylė aplink mikro USB jungtį, tuo daugiau šviesos nutekės iš jūsų LED juostos, nebent nepateiksite nepermatomo sandariklio.
  • Iškirpkite skylę LDR; įsitikinkite, kad jis nenukreiptas į sritį, kurią apšvies šviesos diodai, kitaip automatinis reguliavimas nukris
  • Išgraviruokite vidinį paviršių, kad liktų vietos šviesos diodų juostai, nes neturėtumėte tiesiogiai matyti šviesos diodų, žiūrėdami į savo lempą
  • Uždenkite nepermatoma medžiaga LDR apačią, kad išvengtumėte trukdžių aplinkos ryškumui, kurį sukelia WS2812 juosta
  • Norėdami užmaskuoti „Digispark“maitinimo laidą, naudokite lašą nepermatomų dažų, taip išvengdami, kad jis blizgėtų dėžutės viduje
  • Klijuokite „Digispark“plokštę, LED juostą, LDR ir kiekvieną kabelį, kad tuščiavidurės dėžės vidus neatrodytų netvarkingas
  • Numatykite USB kabelį su jungikliu, kad lengvai įjungtumėte ir išjungtumėte lempą

Rekomenduojamas: