Mündəricat:
- Addım 1: İlham alın
- Addım 2: Ehtiyacınız olan şey
- Addım 3: Qutunun qurulması
- Addım 4: Elektronika
- Addım 5: Bağlantılar və Kodlaşdırma
- Addım 6: Akril örtük
- Addım 7: Birlikdə gətirin
- Addım 8: Proqram və İdarəetmə
- Addım 9: Özünüzü yaradın və zövq alın
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Bir müddət əvvəl bu WS2812 LED-lərdən bəziləri ilə 10x10 LED-Coffetable qururam, amma köhnə məktəbli Snake oyununu ona bağlı bir smartfonla oynamaq mümkün olsa belə, daha xüsusi bir şey istəyirəm. Buna görə də animasiyalar yaratmaqla yanaşı oyunlar yaratmaq üçün daha çox imkanlar əldə etmək üçün bir kub şəklində düzəldilmiş bir neçə led qoymağa qərar verdim və buradayıq: RGB-Kərpic.
Bu layihəni maliyyələşdirən bütün LED-STUDIEN komandasına, xüsusən də əlaqə qurduğum şəxs olaraq Dennis Jackstienə təşəkkür edirəm. Onların köməyi olmadan bu cazibədar LED-Cube qura bilməzdim.
Addım 1: İlham alın
Burada çoxlu animasiyalar, qızdırılan bir atmosfer üçün (davam edən bir iş) atəş, musiqi vizuallaşdırıcısı və İlan oyunları və Tetris də daxil olmaqla Kərpicin bəzi imkanları olan bir neçə şəkil və kiçik bir video var.
Addım 2: Ehtiyacınız olan şey
Burada ehtiyacınız olan bütün materialların siyahısı var, bəziləri lazım deyil, digərləri isə favoritlərinizlə dəyişdirilə bilər:
- 500 WS2812 LED 30px/m
- 5V 30A enerji təchizatı
- Yeniyetməlik 3.2
- Wifi modulu ESP8266
-
bəzi ağac parçaları:
- 1x: 27, 2cm x 27, 2cm x 1, 0cm, qapaq üçün
- 2x: 29, 6cm x 27, 2cm x 1, 0cm, böyük yan panellər üçün
- 2x: 25, 2cm x 29, 6cm x 1, 0cm, kiçik yan panellər üçün
- 1x: 34, 0cm x 34, 0cm x 1, 9cm, alt üçün
- LED ızgarasının kənarları üçün 8x: 34, 0cm x 4, 6cm x 0, 3cm
- LED ızgarası üçün 100x: 34, 0cm x 3, 3cm x 0, 3cm
-
akril şüşə parçaları:
- 1x: 34, 0cm x 34, 0cm x 0, 3cm
- 2x: 34, 0cm x 36, 3cm x 0, 3cm
- 2x: 34, 6cm x 36, 3cm x 0, 3cm
- 1x: 10, 0cm x 7, 5cm x 0, 3cm (isteğe bağlı, terminal üçün)
- Teensy audioboard (isteğe bağlı)
- Tellər, gərginlik tənzimləyicisi, kabel sıxacları, səs siqnalı, düymə, temperatur sensoru (isteğe bağlı)
- ağac yapışqan, akril şüşə yapışqan, vintlər və digər xırda şeylər
Kubun altındakı bir terminal istəsəniz (elektrik cekini gözləmək isteğe bağlıdır):
- 230V güc jakı
- 230V açarı
- audio jak
- USB uzatma kabeli
Addım 3: Qutunun qurulması
Əvvəlcə taxta qutu və LED şəbəkə quracağıq. Kubun ölçüləri LED şeridindəki pikselin məsafəsi ilə müəyyən edilir. Bu vəziyyətdə piksel 3, 4 sm məsafədədir, buna görə kub 34 x 34 x 34 sm olmalıdır. Bu ölçüləri istifadə edərək çox vaxtınıza qənaət edəcəksiniz, çünki hər pikseldən sonra şeridi kəsib kiçik bir kabel ilə bir araya gətirməyinizə ehtiyac yoxdur.
Hamısı bir az taxta yapışqan ilə gəlir. Akril qutunun taxta qutunun üstünə mükəmməl uyğun gəlməsi üçün düzgün işləməlisiniz. Ətrafınızdakı bəzi könüllülərlə işləmək daha da asanlaşır və ya mənim kimi bir çərçivə gərginliyi istifadə edir.
Şəbəkənin kənarları və ızgaranın özü yüksək sıxlıqlı lövhədən (HDF) hazırlanmışdır. Bir masa mişarı istifadə etmək ən yaxşı seçimdir, çünki 100 -dən çox parçanı da kəsməlisiniz. Ölçüləri yuxarıdakı şəkildə görə bilərsiniz. X və y çıxıntılarını bir araya gətirmək üçün hər 3, 4 sm -də kiçik bir boşluğa (təxminən 0, 3 sm) ehtiyac var. Bitirdikdən sonra kənarlarını kubun üzərinə qoyub bir çox ağac yapışqanı ilə düzəldə bilərsiniz. Xüsusilə təxminən 45 dərəcə bir açıya sahib olduqları üçün bir az çətindir. Şəbəkəni kublara bağlamadan əvvəl, LED şeritləri əlavə etməlisiniz.
Addım 4: Elektronika
Yan tərəfdəki LED şeritləri kubun ətrafında bir dəfə gəzir, buna görə 40 piksel uzunluğunda 10 şeridi kəsin. Küpün üstündəki LEDlər üçün 10 piksel uzunluğunda 10 zolaq kəsin. Zolaqları üzərindəki oxla əlaqəli olaraq düzgün hizalamaq üçün diqqətli olun. Yapışqan şeridi kubdan çıxardıqdan sonra heç vaxt ilk dəfə tutmayacaq.
Güc mənbələri içərinin yan tərəfindəki bəzi vintlər ilə sabitlənir. LED -lərdən gələn elektrik kabelləri, hər bir LED şeridinin yaxınlığındakı kiçik deliklər vasitəsilə qutuya daxil olur.
Nəzarətçi Teensy 3.2, ESP8266 və Teensy audio lövhəsindən ibarətdir ki, bu da kubu işə salmaq üçün tələb olunmur. DHT11 yalnız kubun içindəki istiliyi yoxlamaq üçün idi, ancaq bir neçə saat ərzində bir neçə testdən sonra onu tərk edə biləcəyinizi söyləyə bilərəm.
Terminalda güc açarını və güc açarını tapa bilərsiniz (bunun keçid üçün ən yaxşı yer olmadığını başa düşdüyümdə çox gec idi). USB jakı Teensy proqramlaşdırmaq üçündür. Səs girişi LED-lərin musiqiyə uyğun hərəkət etməsi üçün Teensy audio lövhəsinə gedir. Bütün bunlar iki alüminium profildən tutulan aril şüşə üzərində kiçik bir barış üzərində birləşir. Bunu qarajda tapdınız, istədiyiniz hər şeyi istifadə edə bilərsiniz, çünki alt ağac paneli ilə örtülmüşdür və kubun görünüşünə qatqı təmin etmir.
Bir LED -in 60mA istifadə etdiyini unutmayın, cəmi 30A! Onları bağlayanda diqqətli olun! Enerji təchizatına bağlamadan əvvəl bütün sxemlərinizi yoxlamalısınız!
Addım 5: Bağlantılar və Kodlaşdırma
LEDlər Teensy -də 3 və 20 -ci pinlərdə iki matris olaraq bağlanır. Birincisi, üstdəki matris (10x10, 100 piksel), ikincisi isə yan tərəfdədir (40x10, 400 piksel). Üst matrisin LEDləri ziqzaq şəklində hizalanmışdır, yəni zolaqdakı oxlar hər zolaq üçün fərqli istiqamətlərdə olmalıdır, yan tərəfdəki LED şeritləri isə eyni istiqamətdə hizalanmışdır. Şəkillərə bir baxın, qırmızı xətt sizə ilk zolağın Doutunu bir sonrakı hissənin Dininə necə bağlayacağınızı göstərəcək.
Animasiyalar və oyunlar üçün aşağıdakı funksiyanı istifadə edərək iki matrisi 10x50 ölçüdə birinə çevirirəm:
boşluq setXYPixel (bayt x, bayt y, CRGB c) {
əgər (x <= 39) matrix_bottom (x, y) = c; başqa matrix_top (x - 40, y) = c; } // son setXYPixel ()
İlan oyunu üçün bəzi xüsusi halları tətbiq etməlisiniz:
- İlan başı yan matrisin yuxarı sətrinə vurduqda, üstdəki matrisə keçməlidir.
- İlan başı üst matrisin bir ucuna vurduqda alt matrisə keçməlidir.
- İlan başı yan matrisin sonuncu və ya birinci sütununa vurduqda, müvafiq olaraq birinci son sütuna keçməlidir.
Tetris oyunu üçün yuxarı sol küncdən başlayan bir sahə üçün buna bənzər bir şeyə ehtiyacınız var:
boşluq setXYPixel (bayt x, bayt y, CRGB c) {
əgər (y <10) matrix_top (x, y) = c; başqa matrix_bottom (x + 10, 19 - y) = c; } // son setXYPixel ()
Addım 6: Akril örtük
Kiçik qalınlığa görə taxta qutudan daha çətindir, lakin kifayət qədər vaxt və yapışqan çətinləşərkən kubu bir yerdə saxlamaq üçün yaxşı fikirlərlə birlikdə bunu əldə edəcəksiniz. Bu akril yapışqanın (Acrifix) gücünə təəccüblənirəm, buna görə də qırıq bir qab üçün narahat olmağınıza ehtiyac olmadığını düşünürəm.
Addım 7: Birlikdə gətirin
Bütün addımları tamamladıqdan sonra bütün hissələri bir araya gətirmək vaxtıdır. LED şəbəkəsini hələ birləşdirmədiyiniz zaman, indi bunu etmək vaxtıdır. Şəbəkəni kublara yapışdırmıram, çünki buna ehtiyac yoxdur və LED qırıldıqda heç bir problem olmadan onu dəyişə bilərsiniz, ancaq beş ızgaranı kubun üstünə tutub qoymaq üçün iki əliniz olmalıdır. akril örtükdə. Nəhayət, alt taxta paneli kuba vida edə bilərsiniz. Qapaq alt taxta panelə çox kiçik səkkiz vida ilə bərkidilmişdir.
Addım 8: Proqram və İdarəetmə
Teensy -nin eskizi bir neçə əsas animasiyanı özündə birləşdirən FastLED kitabxanasına əsaslanır. RGBLEDS kitabxana paketini eskizinizə əlavə etmək, çoxlu nümunə eskizləri olan mətni və 'sprite'ləri göstərmək üçün güclü matris cəbrini gətirir. Tetris də oynamaq istəyirsinizsə, yalnız iki rəngli matris istifadə etsə də, jollifactory -dən təlimatlandırıcıya baxın.
Smartfon tətbiqi, David Eickhoff tərəfindən çox yaxşı sənədlərə sahib olan NetIO -ya əsaslanır. NetIO-UI-Designer ilə düymələr, sürgülər, etiketlər və daha çox şey ilə öz istifadəçi interfeysinizi yarada bilərsiniz. Dizaynerdə gedən mesajlar üçün protokolu seçə bilərsiniz. Mənim vəziyyətimdə ən sadəsini götürdüm - UDP. Mesajlar ev şəbəkəm tərəfindən ESP8266 -ya göndərilir və Teensy məzmunu qiymətləndirəcək və göstərilən əmri idarə edəcək. Əlavə edilmiş faylı istifadə edərək öz interfeysinizi yaratmağa başlaya bilərsiniz və ya sadəcə seçdiyiniz bir tətbiqdən istifadə edə bilərsiniz.
Addım 9: Özünüzü yaradın və zövq alın
İndi hissələri almaq və öz Kərpicinizi qurmaq vaxtıdır. Hər hansı bir sualınız varsa, soruşmaqdan çekinmeyin.
Daha çox video üçün Youtube kanalıma baxa bilərsiniz. Bu hələ davam edən bir işdir, buna görə gələcəkdə daha çox material olacaq.
Oxuduğunuz üçün təşəkkür edirəm və öz Kərpicinizdə Tetris və ya digər gözəl oyunlar oynayın!
2016 Lampalar və İşıqlandırma Yarışmasında İkinci Mükafat
LED yarışmasında böyük mükafat
Tövsiyə:
NEOPIXEL İSTİFADƏ EDƏN RGB LED MATRIX: 8 Addım (Şəkillərlə birlikdə)
NEOPIXEL İSTİFADƏ EDƏN RGB LED MATRİSİ: Bu təlimatda sizə NEOPIXEL İSTİFADƏSİ ilə 5*5 RGB LEDMATRIX qurmağı göstərəcəyəm. Bu matrislə çox cazibədar fövqəladə cazibədar animasiyalar, emojilər və hərflər göstərə bilərik. gəlin başlayaq
Ünvanlandırılmayan RGB LED Strip Audio Vizualizator: 6 Addım (Şəkillərlə birlikdə)
Ünvanlandırılmayan RGB LED Şeridi Səs Vizualizatoru: Bir müddət televizor kabinetimin ətrafında 12v RGB LED şeridi vardı və əvvəlcədən proqramlaşdırılmış 16 rəngdən birini seçməyimə imkan verən darıxdırıcı LED sürücüsü tərəfindən idarə olunur! Məni motivasiya edən bir çox musiqi, amma işıqlandırma heç nə vermir
RGB LED CUBE 4x4x4: 6 Addım (Şəkillərlə birlikdə)
RGB LED CUBE 4x4x4: Bu gün Arduino Nanodan, 10 mm RGB LED -lərdən hazırlanan 4x4x4 ölçülü LED kubun - ümumi anod və cüt tərəfli PCB prototipinin necə hazırlanacağını paylaşacam
RGB Led Strip Bluetooth Controller V3 + Musiqi Sync + Ətraf İşığına Nəzarət: 6 Addım (Şəkillərlə birlikdə)
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control: Bu layihə bluetooth vasitəsilə telefonunuzla bir RGB LED şeridi idarə etmək üçün arduino istifadə edir. Rəngi dəyişə, işıqları musiqi ilə sinxronizasiya edə və ya ətraf işıqlandırma üçün avtomatik tənzimləyə bilərsiniz
Maqnit Soyuducu RGB LED Çərçivə: 8 Addım (Şəkillərlə birlikdə)
Manyetik Soyuducu RGB LED Çərçivəsi: Bu layihə ilə fotoşəkilləriniz, soyuducu maqnitləriniz və ya istədiyiniz hər şey soyuducunuzda qaranlıqda parlaya bilər. Çox asan bir DIY və bahalı olmayan bir layihədir, oğullarımı çox bəyənir, buna görə də paylaşmaq istəyirəm. Ümid edirəm bəyənərsən