Turinys:

Atnaujinkite savo degtinės dovanų dėžutę: 7 žingsniai (su nuotraukomis)
Atnaujinkite savo degtinės dovanų dėžutę: 7 žingsniai (su nuotraukomis)

Video: Atnaujinkite savo degtinės dovanų dėžutę: 7 žingsniai (su nuotraukomis)

Video: Atnaujinkite savo degtinės dovanų dėžutę: 7 žingsniai (su nuotraukomis)
Video: High Density 2022 2024, Birželis
Anonim
Image
Image
Atnaujinkite savo degtinės dovanų dėžutę
Atnaujinkite savo degtinės dovanų dėžutę
Atnaujinkite savo degtinės dovanų dėžutę
Atnaujinkite savo degtinės dovanų dėžutę

Šioje pamokoje parodysiu, kaip atnaujinau degtinės dovanų dėžutę, pridėdamas prie jos keletą rgb šviesos diodų. Jis turi tris darbo režimus: statines spalvas, besisukančias spalvas ir žaidimo režimą. Žaidimo režimu prietaisas atsitiktinai paima vieną buteliuką ir po juo mirksi lempute, siūlydamas žaidėjui fotografuoti. Visi režimai pateikiami vaizdo įraše.

Mano naudojami šviesos diodai buvo paimti iš LED juostos, pagrįstos WS2812B LED moduliais. Jie yra puikūs, nes leidžia jums valdyti kiekvieno šviesos diodo spalvą atskirai ir galite juos susieti po kito tiek, kiek jums patinka, todėl norint valdyti juos reikia tik vieno skaitmeninio kaiščio. Jie taip pat suderinami su „Adafruits NeoPixel“biblioteka, todėl galite lengvai pradėti.

Naudojau „Attiny84“, kad valdyčiau šviesos diodus ir reaguotų į mygtukų paspaudimus. Pirmiausia viską išbandžiau naudodami įprastą „Arduino“, tačiau jis tiesiog netilpo į dėklo vidų, todėl atsakymas buvo naudojant atskirą lustą.

Dalims pritvirtinti prie dėklo naudojau skaidrią juostą, nes neturėjau karšto klijų pistoleto ir norėjau greitai užbaigti šį projektą. Žinoma, galite naudoti bet kokį jums patinkantį tvirtinimo būdą.

1 žingsnis: Paruoškite dėklą

Paruoškite bylą
Paruoškite bylą
Paruoškite bylą
Paruoškite bylą
Paruoškite bylą
Paruoškite bylą

Pradėkite nuo pakuotės atidarymo ir butelių išėmimo. Stenkitės kovoti su noru juos gerti dirbdami. Aš naudoju odininką, kad padarytų skylutes šviesos diodams korpuso apačioje, tačiau galite naudoti bet kokį jums patinkantį įrankį.

2 žingsnis: įdiekite šviesos diodus

Įdiekite šviesos diodus
Įdiekite šviesos diodus
Įdiekite šviesos diodus
Įdiekite šviesos diodus
Įdiekite šviesos diodus
Įdiekite šviesos diodus
Įdiekite šviesos diodus
Įdiekite šviesos diodus

Norėdami sumontuoti šviesos diodus, turėjau šiek tiek pakeisti LED juostą. Kaip matyti iš paveikslėlio, šviesos diodų tarpai nėra tiksliai tokie kaip buteliuose. Tai galima išspręsti supjaustant LED juostelę į atskiras dalis ir lituojant jas kartu su vielos gabalais. Būkite atsargūs, kad lituotumėte šviesos diodus teisingai, kad ankstesnio šviesos diodo išvestis patektų į kito šviesos diodo įvestį. Sujungę juos atgal, galite juos sumontuoti prie korpuso. Užfiksavau juosteles. Aš taip pat sulenkiau juostos galą, kad būtų galima lengvai pasiekti įtampą, duomenis ir įžeminimo blokus.

3 žingsnis: mygtukas

Mygtukas
Mygtukas
Mygtukas
Mygtukas
Mygtukas
Mygtukas

Norėdami valdyti šviesos diodų apšvietimo režimus tarp statinio, kintančio ir žaidimo, po viduriniu buteliu įdėjau mygtuką per dėklą. Tokiu būdu, kai spaudžiate vidurinį buteliuką žemyn, jis suaktyvina mygtuką ir galite su juo atlikti veiksmus. Man pasisekė, kad turėjau mygtuką, kuris buvo prilipęs prie dugno, kad jis būtų nuspaustas, kai butelis buvo nuspaustas, bet nebuvo prispaustas po butelio svoriu.

4 žingsnis: Attiny84

84 straipsnis
84 straipsnis
84 straipsnis
84 straipsnis
84 straipsnis
84 straipsnis

Norėdami valdyti šviesos diodus ir reaguoti į mygtukų veiksmus, naudoju „attiny84“mikrovaldiklį. Tikriausiai galėjau naudoti ir „attiny85“, nes šviesos diodams ir mygtukui valdyti reikia tik dviejų skaitmeninių kaiščių, tačiau aš jų neturėjau. Aš lituodavau mikroschemą ant taškinio vario protoboato gabalo ir pritvirtinau prie jo visus laidus ir mygtukų ištraukimo rezistorių pagal elektros instaliacijos schemą. Norėjau, kad jis būtų programuojamas laive, todėl lituodavau ISP mirksinčius kaiščius prie 2X3 antraštės. Tada aš užprogramavau lustą su „Arduino“pagal šias instrukcijas.

5 žingsnis: maitinimas

Galia
Galia
Galia
Galia
Galia
Galia

Norėdami maitinti visus viduje esančius komponentus, naudoju įprastą USB kabelį. Kadangi USB tiekia 5 voltų įtampą ir visi mano komponentai veikia ta įtampa, nereikėjo jokių reguliatorių. Aš padariau nedidelę skylę iki prietaiso galo ir perėjau per USB kabelį. Kabelio įžeminimo ir įtampos linijos gali būti lituojamos prie atitinkamų LED juostos linijų, kad sumažėtų perteklinis laidų kiekis korpuso viduje.

6 žingsnis: kodas

Šviesos diodams valdyti naudoju „Adafruits NeoPixel“biblioteką. Jį galite gauti iš čia

Norėjau, kad galėčiau pakeisti įrenginio elgesį tarp statinių spalvų ir besisukančių spalvų. Taip pat norėjau pridėti žaidimo režimą, kai jis atsitiktinai paima vieną butelį ir mirksi po juo. Norėdami tai pasiekti, sukūriau kodą, kuris reaguotų tiek trumpai, tiek ilgai paspaudus mygtuką. Ilgas paspaudimas keičia režimą, o trumpas paspaudimas aktyvina loteriją žaidimo režimu. Įklijavau žemiau esantį kodą, kad galėtumėte jį nukopijuoti tiesiai į redaktorių arba atsisiųsti pridėtą failą.

#įtraukti

#define LEDPIN 0 // skaitmeninis išvesties kaištis, skirtas valdyti LED lemputes // sukimosi režimo fazė int maxpow = 100; // maksimali sukimosi režimo galia, nuo 0 iki 225 int režimas = 0; // koks režimas yra šviesos diodai. 0: statinės spalvos, 1: besisukančios spalvos, 2: žaidimo režimo bool stumiama = klaidinga; // stumti sekimą į int pushCount = 0; // kuratorius, norėdamas suskaičiuoti pastūmimo ilgį, kad nustatytų tarp trumpų ir ilgų stūmimų uint32_t red = 0xff0000; // raudona spalva mirksi atsitiktinės atrankos būdu // spalvos statiniam režimui: žalsvai mėlyna, geltona, raudona, žalia, violetinė uint32_t spalvos [5] = {0x00ff00, 0xffff00, 0xff0000, 0x00ff00, 0xff00ff}; Adafruit_NeoPixel pikseliai = Adafruit_NeoPixel (PIXELCOUNT, LEDPIN, NEO_GRB + NEO_KHZ800); void setup () {pinMode (BUTTON, INPUT); pixels.begin (); } // funkcija atsitiktine tvarka išrinkti vieną buteliuką/puodelį ir mirksėti po juo esančia lempute void rotate () {randomSeed (millis ()); int puodelis = atsitiktinis (5); // atsitiktinio puodelio parinkimas // šauni animacija, kurioje šviesos diodai yra slinkiami per lovą, kad būtų sukurtas atsitiktinis efektas (int i = 1; i <100+puodelis; i ++) {for (int j = 0; j

0){

stumiamas = tiesa; if (režimas <= 1) switchMode (); } pushCount = 0; // veiksmų atlikimas pagal dabartinį režimo jungiklį (režimas) {atvejis 0: // statinis režimas, kiekvienos šviesos diodo statinės spalvos (int i = 0; i

7 žingsnis: Išvada

Išvada
Išvada
Išvada
Išvada

Pridėjus šviesos diodų, tai tikrai tampa unikalia dovana ir tikrai puošniu dekoravimo elementu, o žaidimo režimas puikiai tinka vakarėliams. O kai buteliai yra tušti, juos galima pakeisti tokio paties dydžio taurėmis.

Mano nuomone, rezultatai atrodė gana geri, o žaidimo režimas buvo gana įdomus ir jaudinantis. Aš galvojau, kad kaskart turėčiau numesti prizą, kuriame iš karto sužibėtų visos dėmės, bet mano draugai sakė, kad tai būtų per žiauru ir jie tikriausiai teisūs.

Šis atnaujinimas ar įsilaužimas, žinoma, gali būti taikomas bet kokio kito tipo butelių talpykloms ir pan. Manau, kad būtų šaunu įdiegti šviesos diodus ant lentynos po didesniais buteliais, kad būtų dar vėsesnis namų dekoravimo elementas.

Rekomenduojamas: