Mündəricat:
- Addım 1: Davanı hazırlayın
- Addım 2: LEDləri quraşdırın
- Addım 3: Düymə
- Addım 4: Attiny84
- Addım 5: Güc
- Addım 6: Kod
- Addım 7: Nəticə
Video: Vodka Hədiyyə qutunuzu təkmilləşdirin: 7 addım (şəkillərlə birlikdə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Bu təlimatda, bir az rgb LED əlavə edərək bir araq hədiyyə qutusunu necə təkmilləşdirdiyimi göstərəcəyəm. Üç iş rejimi var: statik rənglər, fırlanan rənglər və oyun rejimi. Oyun rejimində cihaz təsadüfi olaraq bir şüşə götürür və altındakı işığı yandıraraq oyunçunun çəkiliş etməsini təklif edir. Videoda bütün rejimlər təqdim olunur.
İstifadə etdiyim LEDlər WS2812B LED modullarına əsaslanan bir LED zolaqdan götürülmüşdür. Hər bir LED -in rəngini ayrı -ayrılıqda idarə etməyinizə imkan verdiyi üçün əladır və istədiyiniz qədər bir -birinin ardınca bağlaya bilərsiniz, buna görə də onları idarə etmək üçün yalnız bir rəqəmsal pin lazımdır. Adafruits NeoPixel kitabxanası ilə də uyğundur, buna görə asanlıqla başlaya bilərsiniz.
LEDləri idarə etmək və düyməni basmağa cavab vermək üçün bir Attiny84 istifadə etdim. Əvvəlcə hər şeyi adi bir Arduino ilə sınadım, ancaq korpusun içinə sığmır, buna görə də müstəqil çipdən istifadə etmək cavab idi.
Parçaları kasaya bağlamaq üçün şəffaf lent istifadə etdim, çünki isti yapışqan silahım yox idi və bu layihəni tezliklə bitirmək istəyirdim. Əlbəttə ki, bəyəndiyiniz hər hansı bir bağlama üsulundan istifadə edə bilərsiniz.
Addım 1: Davanı hazırlayın
Paketin açılması və şüşələrin çıxarılması ilə başlayın. Çalışarkən onları içmək istəyinizlə mübarizə aparmağa çalışın. Çantanın altındakı LED -lər üçün deşiklər etmək üçün bir dəri ustasından istifadə etdim, ancaq istədiyiniz vasitədən istifadə edə bilərsiniz.
Addım 2: LEDləri quraşdırın
LEDləri bağlamaq üçün LED şeridini bir qədər dəyişdirməli oldum. Şəkildən də göründüyü kimi, LED -lərin aralığı şüşə ilə eyni deyil. LED şeridini tək parçalara ayıraraq tel telləri ilə birlikdə lehimləməklə həll edilə bilər. LEDləri düzgün şəkildə lehimləmək üçün diqqətli olun ki, əvvəlki LED -in çıxışı növbəti LED -in girişinə keçsin. Bant parçaları ilə bağladım. Gərginliyə, məlumatlara və yer yastiqciklərinə asanlıqla daxil olmaq üçün zolağın ucunu da əydim.
Addım 3: Düymə
LED -lərin işıqlandırma rejimlərini statik, dəyişən və oyun arasında idarə etmək üçün korpusun ortasındakı şüşənin altına bir düymə quraşdırdım. Bu şəkildə orta şüşəni aşağıya basdığınız zaman düyməni aktivləşdirir və onunla hərəkətlər edə bilərsiniz. Şüşə aşağı basıldıqda basıldı, ancaq şüşənin ağırlığı altında basıldığı üçün alt hissəsində sağa yapışdırılmış bir düyməyə sahib olduğum üçün şanslı oldum.
Addım 4: Attiny84
LEDləri idarə etmək və düymə hərəkətlərinə cavab vermək üçün attiny84 mikro nəzarətçisindən istifadə etdim. LEDləri və düyməni idarə etmək üçün yalnız iki rəqəmsal sancağa ehtiyacım olduğu üçün yəqin ki, attiny85 də istifadə edə bilərdim, amma ətrafımda heç bir şey yox idi. Çipi nöqtəli misdən hazırlanmış bir protoboardda lehimlədim və bütün telləri və düymə açılan müqavimətini bağlama sxeminə uyğun olaraq bağladım. Gəmidə proqramlaşdırıla bilmək istədim, buna görə ISP -nin yanıb sönən pinlərini 2X3 başlığına lehimlədim. Sonra bu təlimatlara uyğun olaraq çipi Arduino ilə proqramlaşdırdım.
Addım 5: Güc
İçindəki bütün komponentləri gücləndirmək üçün adi bir USB kabeli istifadə etdim. USB 5 volt ötürdüyü və bütün komponentlərim bu gərginlikdə işlədiyi üçün heç bir tənzimləyiciyə ehtiyac yox idi. Cihazın ucunda kiçik bir çuxur açdım və USB kabelini oradan keçdim. Kassanın içərisindəki artıq naqilləri azaltmaq üçün kabelin topraklama və gərginlik xətləri led şeridin müvafiq xətlərinə lehimlənə bilər.
Addım 6: Kod
LEDləri idarə etmək üçün Adafruits NeoPixel kitabxanasından istifadə etdim. Buradan əldə edə bilərsiniz
Statik rənglər və fırlanan rənglər arasında cihazın davranışını dəyişdirmək istədim. Təsadüfi olaraq bir şüşə götürdüyü və altındakı ledi yandırdığı bir oyun rejimi əlavə etmək istədim. Buna nail olmaq üçün kodu həm qısa, həm də uzun basmağa reaksiya verdim. Uzun basışlar rejimi dəyişdirir və qısa basışlar oyun rejimində lotereyanı aktivləşdirir. Kodu birbaşa redaktorunuza kopyalaya biləcəyiniz və ya əlavə edilmiş faylı yükləyə biləcəyiniz üçün aşağıya yapışdırdım.
#daxil edin
#define LEDPIN 0 // ledlərinizi idarə etmək üçün rəqəmsal çıxış pin #define BUTTON 1 // düyməni bağlamaq üçün pin #PIXELCOUNT 5 təyin edin // şeridinizdəki ledlərin miqdarı p = 0; // fırlanma rejimi üçün faz int maxpow = 100; // fırlanan rejim üçün maksimum güc, 0 ilə 225 int rejimi arasında = 0; // ledlər hansı rejimdədir. 0: statik rənglər, 1: fırlanan rənglər, 2: oyun rejimi bool basdı = yalan; // int pushCount = 0 üçün itələmələrin izlənməsi; // qısa və uzun itələmələri müəyyən etmək üçün itələmə müddətini saymaq üçün cuonter uint32_t red = 0xff0000; // təsadüfən yanıb -sönən qırmızı rəng // statik rejim üçün rənglər: mavi, sarı, qırmızı, yaşıl, bənövşəyi uint32_t rəngləri [5] = {0x00ff00, 0xffff00, 0xff0000, 0x00ff00, 0xff00ff}; Adafruit_NeoPixel pikselləri = Adafruit_NeoPixel (PIXELCOUNT, LEDPIN, NEO_GRB + NEO_KHZ800); void setup () {pinMode (BUTTON, INPUT); piksel.begin (); } // təsadüfi olaraq bir şüşə/fincan seçmək və altındakı boşluğu döndərmək funksiyası () {randomSeed (millis ()); int fincan = təsadüfi (5); // təsadüfi kubokun seçilməsi // (int i = 1; i <100+fincan; i ++) {üçün (int j = 0; j
0){
itələdi = doğru; əgər (rejim <= 1) switchMode (); } pushCount = 0; // cari rejim keçidinə (hərəkətə) əsaslanan hərəkətlər etmək {hal 0: // statik rejim, hər bir led üçün statik rənglər (int i = 0; i
Addım 7: Nəticə
LED -lərin əlavə edilməsi onu həqiqətən bənzərsiz bir hədiyyə halına gətirir və onu həqiqətən bəzək elementi edir və oyun rejimi partiyalar üçün əla işləyir. Şüşələr boş olduqda, eyni ölçüdə şüşələr ilə əvəz edilə bilər.
Öz fikrimcə nəticələr olduqca yaxşı görünürdü və oyun rejimi olduqca əyləncəli və çıxılmaz idi. Hər dəfə bir anda bütün ləkələri yandıracaq bir cekpot buraxmağı düşündüm, amma dostlarım bunun çox qəddar olduğunu söylədi və yəqin ki, haqlıdırlar.
Bu təkmilləşdirmə və ya hack əlbəttə ki, hər hansı digər şüşə qabına tətbiq oluna bilər və s. LED -ləri daha böyük şüşələrin altındakı bir rəfə daha soyuq bir ev bəzək elementi etmək yaxşı olardı.
Tövsiyə:
Kilidli Hədiyyə Qutusu: 4 Addım (Şəkillərlə birlikdə)
Kilidli Hədiyyə Qutusu: Potansiyometrdən istifadə edərək kimin kim olduğunu və kim olduğunu yaza biləcəyiniz bir hədiyyə qutusu
Bayram Hədiyyə Qutu !: 5 Addım (Şəkillərlə birlikdə)
Bayram Hədiyyə Qutu !: Elektronikanı sevən birini tanıyırsınızsa, bu onlar üçün əla bir hədiyyə qutusudur! Bu təlimatda, musiqi çalınan və sarsıldıqda yanan bir ev qutusu hazırlayacaqsınız. Lazım olan budur: Adafruit GEMMA M0 - Miniatür geyilə bilən elektron
PlantCare Analar üçün Ən Yaxşı DIY Hədiyyə: 7 Adım (Şəkillərlə birlikdə)
PlantCare Analar üçün Ən Yaxşı DIY Hədiyyəsi: Hamıya salam, Bu, anam üçün mükəmməl hədiyyəni necə hazırladığım bir təlimatdır. Layihə çoxfunksiyalı, avtomatik suvarma qurğusudur. Cihazın xüsusiyyətləri: bitkilərin həqiqi torpaq rütubət səviyyəsini ölçür və göstərir
MacBook Pro -da (HDD + SSD) Sabit Diski Təkmilləşdirin: 4 Addım (Şəkillərlə birlikdə)
Bir MacBook Pro -da (HDD + SSD) Sabit Diski təkmilləşdirin: MacBook Pro'nuzdakı orijinal sabit disk bir az dolursa, onu çox daha böyük bir disklə əvəz edə bilərsiniz. Axı, sabit disklər 100 dollardan aşağı qiymətə satıla bilən 1 TB disklərlə ucuzlaşdı. Yaşlanmağınızı təmin etmək istəyirsinizsə
Apple MacBook -u təkmilləşdirin: Məlumat Yedəklənməsi və Qoruma .: 9 Adım (Şəkillərlə birlikdə)
Apple MacBookunuzu təkmilləşdirin: Məlumat Yedəklənməsi və Qoruma .: Mac sabit diskim həqiqətən yağlı və dolğun idi, iyrənc idi. Bu problem, orijinal MacBooks alan bir çox insanın başına gəlir. Kiçik bir sabit diskin sıx sıxılmasını hiss edirlər. Macbookumu ~ 2 il əvvəl almışdım və bu