Turinys:

Kalėdų eglutės šviesa, valdoma žaislo: 12 žingsnių (su paveikslėliais)
Kalėdų eglutės šviesa, valdoma žaislo: 12 žingsnių (su paveikslėliais)

Video: Kalėdų eglutės šviesa, valdoma žaislo: 12 žingsnių (su paveikslėliais)

Video: Kalėdų eglutės šviesa, valdoma žaislo: 12 žingsnių (su paveikslėliais)
Video: Vėl Tie Patys #174 apie atimtą vaiką, miestų eglutes ir SOP 2024, Liepa
Anonim
Image
Image
Paruošimas. LED juostelė
Paruošimas. LED juostelė

Sveikinimai kūrėjai!

Artėja Kalėdos ir Naujieji metai. Tai reiškia šventinę nuotaiką, dovanas ir, žinoma, ryškiai spalvingomis šviesomis papuoštą eglutę.

Man masinės prekybos eglutės žibintai per daug nuobodūs. Kad pradžiuginčiau vaikus, padariau unikalią eglutės puošmeną, kurią valdo žaislas.

Šiame vadove aš jums pasakysiu, kaip tai padaryti.

1 žingsnis: idėja

Idėja yra po eglute padėti, pavyzdžiui, minkštą žaislą ir padaryti jį protingą. Noriu, kad žaislas nuskaitytų bet kokio pritvirtinto objekto spalvą ir nupieštų tokios spalvos medį. Taigi, tai bus įdomus žaidimas vaikams, kurie gali naudoti skirtingus dalykus, kad dažytų Kalėdų eglutę skirtingomis spalvomis.

2 žingsnis: Paruošimas. LED juostelė

Paruošimas. LED juostelė
Paruošimas. LED juostelė
Paruošimas. LED juostelė
Paruošimas. LED juostelė
Paruošimas. LED juostelė
Paruošimas. LED juostelė

Pirma, turiu rasti įprastų Kalėdų lempučių pakaitalą.

Nauji žibintai turi būti ryškūs, spalvoti, o svarbiausia - lengvai programuojami.

Kalėdinėms lemputėms pasirinkau adresuojamą programuojamą skaitmeninę RGB ws2812b LED juostą. Šios LED juostos yra labai populiarios, jas galite rasti bet kur. Juos lengva prijungti prie įvairių „Arduino“valdiklių. Tokie šviesos diodai parduodami kelių dešimčių dalių juostose ir maitinami 5 12 arba 24 V nuolatine srove. Galite susieti kelias juostas iš eilės ir valdyti daugybę šviesos diodų.

Namuose radau porą tokių juostelių. Mano juostelės turi po 50 šviesos diodų ir yra varomos 5 V DC.

2 x WS2812B iš anksto lituoti LED modulio eilutės mazgai ~ 18 $

Čia yra galimas pakeitimas iš „Amazon“parduotuvės:

  • WS2812b 5m 60leds/pixels/m Lanksti individualiai adresuojama LED juostelė
  • ALITOVE 16.4ft WS2812B Individualiai adresuojama LED juostinė lemputė

LED juostos yra labai įvairios. Jie skiriasi šviesos diodų skaičiumi, atstumu tarp šviesos diodų, grupavimu, maitinimo įtampa ir tt Pasirinkite, ko norite.

Savo žaislui paruošiau mažą eglutę, todėl man užtenka 100LED.

3 žingsnis: Paruošimas. Žaislas

Paruošimas. Žaislas
Paruošimas. Žaislas
Paruošimas. Žaislas
Paruošimas. Žaislas

Raskite žaislą ir nuspręskite, kur įdėti LED juostos valdiklį.

Šis žingsnis yra pats svarbiausias, nes rezultatą įvertins vaikai =).

Netoliese esančioje žaislų parduotuvėje radau nuostabų Naujųjų metų lokį. Galite patobulinti jau turimą žaislą.

Aš nusprendžiau uždengti LED juostos valdiklį audiniu ir pasiūti prie meškos letenų. Noriu, kad meška atrodytų, kad turi dovaną.

Aš nusipirkau du audinio gabalus su juokingais raštais. Vienas yra minkštas pagrindui, o antrasis - plonas viršutiniam sluoksniui.

4 žingsnis: Paruošimas. Elektronika

Paruošimas. Elektronika
Paruošimas. Elektronika
Paruošimas. Elektronika
Paruošimas. Elektronika
Paruošimas. Elektronika
Paruošimas. Elektronika

Kad žaislas taptų protingesnis, jums reikia kai kurių elektroninių komponentų.

Aš naudoju „Amperka“parduotuvės pertraukimo lentas ir „Arduino“skydus. Kalbant apie mane, jie yra labai patogūs dėl modulinės struktūros. Modulius galima lengvai sujungti be litavimo.

Jums gali būti sunku juos įsigyti, todėl įtraukiu nuorodas su galimu pakeitimu.

Valdiklis

Aš naudoju ESP-12 kūrimo plokštę, pagrįstą ESP8266 lustu. Šios plokštės yra labai mažos ir turi pakankamai funkcijų. Geras pasirinkimas mažiems projektams, kuriems reikia ribotos vietos, net jei nenaudojate „WiFi“ir neprisijungiate prie interneto.

1 x „Amperka“„Wi-Fi“lizdas ~ 19 $

Aš naudoju šią kūrimo plokštę, nes ji suderinama su kitais to paties gamintojo moduliais.

Be to, jis turi kvadrato formą! Jis turėtų lengvai tilpti į mažą dėžutę, skirtą lokiui.

Galimas pakeitimas:

  • ESP-12E NODEMCU
  • WEMOS D1 MINI

Spalvų jutiklis

Norėdami nustatyti spalvą, naudoju „Amperka Troyka TCS34725“spalvų jutiklio pertraukimo plokštę. Mano jutiklis suderinamas su valdiklio plokšte, tačiau jį galima pakeisti šiuo:

1 x RGB spalvų jutiklis su IR filtru ir baltu šviesos diodu - TCS34725 ~ 8 $

Šis jutiklis bendravimui naudoja I2C sąsają. Jame yra įmontuotas ryškus šviesos diodas ir platūs nustatymai, pvz., Spalvų padidinimas arba spalvų integracija, kad būtų galima tiksliau atpažinti.

Mygtukas

Paprastas su „Arduino“suderinamas mygtukas. Aš naudoju jį kaip jutiklinį jutiklį, pranešdamas valdikliui, kad būtina perskaityti naujo elemento spalvą.

1 x „Amperka Troyka“mygtuko modulis ~ 1 $

Galimas pakeitimas:

  • „Adafruit“mygtuko maitinimo jungiklio išjungimas
  • Elektroninių statybinių blokų mygtukų modulis

Kintamosios srovės įtampos keitiklis

Norėdami maitinti šviesos diodų juostą ir valdiklį, aš nusipirkau AC-DC 5V 8A maitinimo šaltinį.

1 x 5V 8.0A 40W maitinimo šaltinis ~ 16 $

Mano LED juostelė maitinama 5 V įtampa. 8A srovės pakanka daugybei šviesos diodų. Aš taip pat maitinu ESP valdiklį iš šio maitinimo šaltinio. Maitinimo šaltinius būtinai įsigykite izoliuotuose gaubtuose, be atvirų kontaktinių kaladėlių!

Galimas pakeitimas:

  • ALITOVE 5V 8A 40W kintamosios srovės į nuolatinės srovės adapterį maitinimo šaltinio keitiklis
  • Reiškia gerai originalus LPV-60-5 5V 8A meanwell LPV-60 5V 40W

Neprivaloma:

DC-DC įtampos keitiklis ir WS2812b tvarkyklė

„Arduino“valdikliams „ws2812b“LED juostos signalinis laidas gali būti tiesiogiai prijungtas prie kaiščių valdiklio plokštėje. Dauguma ESP8266 kūrimo plokštės kaiščių nesuderinami su 5V logika. Dabar geriau prijungti LED juostą prie tokių valdiklių tiesiogiai. Norėdami išspręsti šią problemą, naudoju šį modulį.

1 x „Amperka Troyka ws2812“LED juostos tvarkyklė ~ 9 $

Aš naudoju šį modulį, nes jis lengvai pritvirtinamas prie mano valdiklio. Be to, modulis turi 5 voltų loginį buferį ir nuolatinės srovės nuolatinės srovės įtampos keitiklį 5 arba 3,3 V. Tokiu būdu ESP valdiklis gali būti maitinamas vienu laidu kartu su 12 arba 24 V LED juostele.

5 žingsnis: Surinkimas. Elektronika

Surinkimas. Elektronika
Surinkimas. Elektronika
Surinkimas. Elektronika
Surinkimas. Elektronika
Surinkimas. Elektronika
Surinkimas. Elektronika
Surinkimas. Elektronika
Surinkimas. Elektronika

Surinkite elektroninius komponentus. Prijungiau savo komponentus, kaip parodyta pridedamoje schemoje.

Schema gali skirtis priklausomai nuo jūsų komponentų, tačiau prasmė išlieka ta pati.

  • Prijunkite mygtuką prie valdiklio. Aš prijungiau jį prie A2 Esp8266 kaiščio. Jei nenaudojate modulio, galite prijungti įprastą momentinį mygtuką per rezistorių.
  • Prijunkite spalvų jutiklį prie valdiklio. TCS34725 spalvų jutiklių pertraukimo plokštės bendrauja naudodami I2C magistralę. Sujunkite SDA ir SCL kaiščius tarp jutiklio ir valdiklio. Jei jutiklio plokštėje yra LED kaištis integruotam šviesos diodui valdyti, prijunkite jį. Aš susiejau savo LED kaištį su A0 Esp8266 kaiščiu.
  • Prijunkite vieną LED juostelės galą prie valdiklio. ws2812b LED juostelė jungiama prie valdiklio naudojant DI kaištį. Ws2812b LED juostų loginė įtampa yra 5 V. Jei naudojate „Arduino“tipo plokštes, galite prijungti DI kaištį tiesiai prie valdiklio kaiščio. Daugumos Esp8266 plokščių loginė lygio įtampa yra 3,3 V, todėl naudokite loginio lygio keitiklį arba LED juostos tvarkyklę. Aš litavau „DI Strip“laidą prie vairuotojo plokštės ir prijungiau vairuotojo plokštę prie „A5 Esp8266“kaiščio.
  • Prie maitinimo šaltinio pritvirtinkite kitą LED juostelės galą. Tas, kuris turi DO kaištį. Jei reikia, prijunkite kištuką prie maitinimo šaltinio. Nepamirškite izoliuoti laidų.

Mano „ws2812b“LED juostelę maitina 5 V įtampa. Tiek juostelę, tiek valdiklį maitinau iš vieno AC-DC 5V maitinimo šaltinio. Jei jūsų LED juostelė veikia 12 arba 24 V įtampa, naudokite žemesnės įtampos keitiklį, kad visa elektronika būtų maitinama iš vieno maitinimo šaltinio.

6 žingsnis: XOD

XOD
XOD
XOD
XOD

Užprogramuokime valdiklį.

Kaip ir ankstesniuose projektuose, valdiklio programinei įrangai naudoju XOD vaizdinio programavimo aplinką.

Aš paskelbiau keletą bibliotekų, kurių jums reikės norint sukurti programą. Taigi būtinai įtraukite juos į savo XOD darbo sritį.

  • gabbapeople/eglutė - bibliotekoje yra „ws2811 Neopixel“tvarkyklė ir „tcs34725“spalvų jutiklio įvyniojimas.
  • gabbapeople/color - biblioteka, skirta dirbti su spalvomis XOD.

Toliau aprašysiu, kaip užprogramuoti šį įrenginį XOD.

7 žingsnis: programavimas

Programavimas
Programavimas
Programavimas
Programavimas
Programavimas
Programavimas
Programavimas
Programavimas

Štai jums reikalingi mazgai:

TSC spalvų jutiklio mazgas.

Tai pirmasis mazgas, uždėtas ant pleistro. Jis naudojamas matuoti spalvų vertę iš jutiklio. „Node“naudoja I2C sąsają keistis duomenimis.

Spalvų jutiklis nustato paviršiaus spalvą RGB skalėje. Spalva yra šviesos šaltinio, objekto ir stebėtojo sąveikos rezultatas. Atspindėjus šviesai, ant objekto krintanti šviesa atsispindi arba sugeria priklausomai nuo paviršiaus savybių. Daugumoje spalvų jutiklių yra baltos šviesos skleidėjas ir trys šviesos intensyvumo jutikliai su spalvų filtrais.

  • LED ir LUM įvesties kaiščiai yra skirti įmontuotam šviesos diodui, esančiam jutiklio pertraukimo plokštėje. Šis įmontuotas šviesos diodas yra jutiklio šviesos skleidėjas. Pagal savo schemą aš įdėjau A0 reikšmę į LED kaištį ir nustatiau 1 šviesumo vertę į LUM kaištį.
  • IT kaištis nustato integravimo laiko vertę. Šis veiksnys apibūdina daugybę spalvų integravimo ciklų. Galimos IT vertės yra 1, 10, 20, 42, 64, 256.
  • GAIN kaiščio vertė yra stiprinimo koeficientas. Šis koeficientas pagerina spalvą. Galite padidinti spalvų vertę 4, 16 arba 60 kartų. Jūs negalite pagerinti spalvos. Tada GAIN kaiščio reikšmė turi būti lygi 1. Gavau tiksliausią rezultatą naudojant 20 IT ir 60 GAIN reikšmes.
  • INIT kaištis suaktyvina jutiklio inicijavimą ir nustato pasirinktinius veiksnius. Aš pakeičiu INIT kaiščio vertę į On boot.
  • UPD kaištis suaktyvina naują jutiklio nuskaitymą. Tegul ši vertė yra tęstinė.

„Tcs-color-node“pateikia spalvos reikšmę pasirinktinio tipo spalva.

Ws2811 mazgas

Šis mazgas naudojamas LED juostai arba matricai nustatyti.

  • DI kaištis skirtas plokštės prievado numeriui, prie kurio prijungta LED juostelė arba matrica. Pagal savo schemą aš jai priskiriu A5 vertę.
  • Įdėkite naudojamų šviesos diodų skaičių į SIZE kaištį. Turiu 2 ledines juostas iš 50 diodų, sujungtų viena su kita, todėl nustatiau SIZE reikšmę į 100.
  • B kaištis nustato bendrą šviesos diodų ryškumą nuo 0 iki 100. Aš nustatiau ryškumą iki 80.

Šis mazgas inicijuoja jūsų LED juostą arba matricą ir sukuria pasirinktinį tipą ws2811 tolesnėms operacijoms.

Visų spalvų mazgas

Kai įdiegtas mazgas ws2811, galite valdyti šviesos diodų juostą naudodami skirtingus funkcinius mazgus.

  • spalva-viskas. „Node“pasirinkta spalva nudažo visus juostos ar matricos šviesos diodus.
  • spalvos pikselis. Mazgas nuspalvina tam tikrą šviesos diodą ant juostos pasirinkta spalva. Įdėkite pikselių skaičių į PN kaištį.
  • spalva-n pikselių. Mazgas nuspalvina N šviesos diodų grupę pasirinkta spalva. Naudodami STRT kaištį nurodykite grupės pradžios šviesos diodo numerį. STEP kaiščiu nurodykite grupės tvarkingumą. Pavyzdžiui, norėdami dažyti kas antrą šviesos diodą, pradedant skaičiumi 30 ir baigiant skaičiumi 70, įveskite šias reikšmes: STRT = 30; N = 40 (70 - 30); ŽINGSNIS = 2.

Šiame projekte aš valdau visus šviesos diodus tuo pačiu metu ir naudoju visos spalvos mazgą.

Pirmąjį spalvotų mazgų įvesties kaištį susieju su mazgo ws2811 išvesties kaiščiu. Tada aš susieju įvesties CLR kaištį, kuris paima spalvos vertę, prie jutiklio išvesties kaiščio.

Impulsas ant visų spalvų mazgo SET kaiščio suaktyvina naują spalvų rinkinį.

Mygtuko mazgas

Mygtuku informuoju valdiklį apie naują objektą priešais spalvų jutiklį. Tam aš uždedu mygtuko mazgą ant pleistro ir susieju jo išvesties PRS kaištį su visos spalvos mazgo SET kaiščiu. Tokiu būdu, spustelėjus mygtuką, generuojamas pulso signalas, kad spalva pasikeistų.

Mygtuką pritvirtinau prie A2 Esp8266 kaiščio, todėl A2 reikšmę įdėjau į PORT kaištį.

Valymo mazgas

Spalvų jutiklis gali išgauti spalvų reikšmes dideliame diapazone. Tačiau LED juostelė negali rodyti tarp atspalvių. Norėdami tai išspręsti, naudoju tik vadinamąsias grynas spalvas. Jie turi savavališką atspalvį, tačiau visada turi maksimalų sodrumą. Norėdami išvalyti spalvų vertę, aš padedu valymo mazgą tarp „tsc-color-sensor“ir visų spalvų mazgų.

Pleistras paruoštas. Galite paspausti Diegti, pasirinkti plokštės tipą ir įkelti jį į įrenginį.

8 žingsnis: Surinkimas. Rėmas

Surinkimas. Rėmas
Surinkimas. Rėmas
Surinkimas. Rėmas
Surinkimas. Rėmas
Surinkimas. Rėmas
Surinkimas. Rėmas

Galiu pradėti kurti minkštą dėklą, įsitikindamas, kad prietaisas veikia taip, kaip turėtų.

Kaip rėmelį ant storo kartono atspausdinau dėžutės raštą.

Tada sulenkite dėžutės šonus ir padarykite kvadratinę skylę spalvų jutikliui.

Pastaba:

Šį dėklą padariau specialiai savo elektroniniams komponentams, kurie greičiausiai skiriasi nuo jūsų. Dėklas nėra universalus, be to, galite turėti visiškai kitokį žaislą. Taigi pasitelkite vaizduotę!

9 žingsnis: Surinkimas. Medžiaga

Surinkimas. Medžiaga
Surinkimas. Medžiaga
Surinkimas. Medžiaga
Surinkimas. Medžiaga
Surinkimas. Medžiaga
Surinkimas. Medžiaga

Aš uždėjau du skirtingus audinius vienas ant kito.

Minkštas storas audinys skirtas tūriui, o plonas - išvaizdai. Abiejuose audiniuose aš taip pat padariau skylę jutikliui.

Kartono rėmą ant audinio pritvirtinau įprasta lipnia juostele. Lygiai taip pat sutvarkiau skylės kraštus.

Tada nupjoviau papildomas audinio dalis ir rankomis susiuviau skylės kontūrą iš vidaus.

Turiu pasakyti, kad nesu geriausias siuvėjas, todėl nevertinkite kokybės. =)

10 žingsnis: Surinkimas. Minkštas dėklas

Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas
Surinkimas. Minkštas dėklas

Ištempiau audinį ir pritvirtinau ta pačia lipnia juostele. Juosta liks dėklo viduje ir nebus matoma.

Tada aš įdėjau prietaisą į rėmą ir visiškai susiuvau aplink kontūrą, išskyrus vieną kampą, kur eina laidai.

11 žingsnis: Surinkimas. Žaislas ir prietaisas

Surinkimas. Žaislas ir prietaisas
Surinkimas. Žaislas ir prietaisas
Surinkimas. Žaislas ir prietaisas
Surinkimas. Žaislas ir prietaisas
Surinkimas. Žaislas ir prietaisas
Surinkimas. Žaislas ir prietaisas

Prisiuvau savo prietaisą prie meškiuko letenų.

Norėjau, kad atrodytų, jog jis laiko mažą Kalėdų dovaną.

12 žingsnis: rezultatas

Rezultatas
Rezultatas
Rezultatas
Rezultatas

Kai prietaisas užprogramuotas ir pritvirtintas prie žaislo, galite prijungti LED juostelę ir pakišti žaislą po medžiu!

Prie meškiuko dovanos pritvirtinkite spalvotus daiktus ir eglutė bus nudažyta ta pačia spalva!

Prenumeruokite, jei jums patinka šis mini projektas! =)

Bus daug įvairių juokingų nurodymų.

Rekomenduojamas: