Mündəricat:

Arduino & WS2811 Milad ağacı: 8 addım
Arduino & WS2811 Milad ağacı: 8 addım

Video: Arduino & WS2811 Milad ağacı: 8 addım

Video: Arduino & WS2811 Milad ağacı: 8 addım
Video: Adreslenebilir LED'ler, ışık ve müzik üzerinde akıllı WiFi garland Tuya 2024, Iyul
Anonim
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı
Arduino & WS2811 Milad ağacı

Christmas Lights Arduino və WS2811 digər oxşar layihələr olduğundan Arduino Xmass ağacı onları yeni başlayanlar üçün çox çətin hesab edirəm. Buna görə də Bluetooth nəzarəti və vu-metrlə daha mürəkkəb olanlarla qarşılaşmadan əvvəl sınaya biləcəyiniz bu sadə və xərcsiz bir layihəni dərc etmək qərarına gəldim.

Ailəm nümunələri tərtib etməkdən, mən də onları kodlaşdırmaqdan zövq alırdım. Ümid edirəm ki, siz də zövq alacaqsınız.

Ağac bəzəyi anam tərəfindən hazırlanır, ona deyim ki, paylaş və bəzi təlimatlar hazırla.

Təchizat:

  • Arduino nano
  • WS2811 led şeridi
  • Keçid edin
  • USB şarj cihazı
  • USB Kabel
  • Plastik qutu

Addım 1: Materiallar Bill

Materiallar Bill
Materiallar Bill

Budur istifadə etdiyim materiallar:

  • Arduino nano. Kabelləri birbaşa lövhəyə lehimlədiyim üçün qaynaqsız bir pin sifariş etdim.
  • 5V WS2811 50 LED şeridi. Daha diskret olan yaşıl kabellər də var.
  • Keçid edin. Uzun düyməli biri daha yaxşıdır.
  • USB şarj cihazı. Cib telefonundan istifadə olunmuşdur.
  • USB Kabel tipi A tipli mini B tipli kişi. Köhnə kameradan yenidən istifadə olunub.
  • Plastik qutu. Bir konfetdən yenidən istifadə etdim.
  • Kabel bağlayıcı.
  • Üç telli kabel.
  • Lehimləmə qalay.
  • Yapışqan silah üçün yapışqan.
  • İzolyasiya lenti
  • İstilik büzücü boru

Addım 2: İstifadə olunan alətlər

İstifadə olunan alətlər
İstifadə olunan alətlər
  • Qazma, matkap ucu.
  • Yapışqan silah.
  • Lehimleme dəmir.
  • Qayçı.

Addım 3: Şematik

Sxematik
Sxematik

Güc

Hər şeyi USB konnektoru ilə gücləndirəcəyik. Led şeridi gərginlik tənzimləyicisini həddindən artıq yükləməmək üçün VIN pinindən işləyəcək.

LED şeridi

Bir çox ünvanlı LED şeridi var. WS281x əsaslı olanlar çox yaygındır. Bu çip ailəsi, məlumat giriş pinində alınan məlumatlara əsaslanaraq hər rəng üçün Pulse Width Modulation (PWM) edir. Hər rəngdə ilk məlumat blokunu istifadə edir və məlumat axınının qalan hissəsini, məlumat pinindən çıxarıb növbəti çipə itələyir. Xoşbəxtlikdən, bütün bunları sizin üçün şəffaf edən Arduino kitabxanaları var.

Mikro nəzarətçi

WS2811 LED şeridi 5V məlumat girişinə ehtiyac duyduğundan 5V məntiqi olan bir Arduino seçirik. 3.3V -lük də istifadə edilə bilər, ancaq bir növ məntiq səviyyəsinə uyğunlaşma etməliyik. Əks təqdirdə, işləyə bilər, ancaq bir az gerilim düşməsi səhv məlumatlara səbəb ola bilər və ya LED şeridinə heç bir məlumat gəlməz.

Daha çox xərcləri azaltmaq istəyirsinizsə ATtiny85 kimi daha sadə mikrokontrollerlərdən istifadə edilə bilər. Yalnız 1 çıxış və bir girişə ehtiyacımız olduğu üçün. Versiyalardan asılı olaraq, USB portu yoxdursa, yanıb -sönmək daha çətindir.

Keçid edin

Uzun düyməli bir qutudan keçmək daha uyğun olacaq, sonra qələm olmadan işə sala bilərsiniz.

Yanlış siqnalların qarşısını almaq üçün Arduinoda daxili çəkmə müqavimətindən istifadə etdiyimiz üçün GND-yə bağlıdır. Sonra kodda 1 pulsasiya edilməyəcək və 0 pulsasiya edilməyəcək.

Addım 4: Kassa işlənməsi

Kassa emalı
Kassa emalı
Kassa emalı
Kassa emalı

Elektronika üçün bir konfet qutusu istifadə etdim. Kifayət qədər yer tutan 3dPrint istifadə edin.

Yalnız Dremel çox alətlə qazın. 3 mm qazma ucundan istifadə etdim:

  • Keçid düyməsinə daxil olmaq üçün bir çuxur.
  • USB konnektoru üçün maşın çuxuru.
  • LED şeridi üçün kabel çıxışı. Qapağı çıxarmaq üçün qapağa qədər mexanikləşdirin.

Addım 5: Kabel çəkmə

Kablolama
Kablolama
Kablolama
Kablolama
Kablolama
Kablolama

Lehimləmə

Kabel qurmaq üçün bir lehimləmə dəmirinə ehtiyacımız olacaq. Təcrübəsizsinizsə, bu lehimləmə dərsini yoxlayın.

Öz təcrübəmdən məsləhətlər.

  • Əvvəlcə qalay tellərin ipuçlarını hazırlayın
  • Tel lehim yastığına daxil olduqdan sonra, əlavə qalay lehimləmə dəmiri ilə deyil, tel və lehim yastığı ilə əridilməlidir.

Düymə

D5 və GND daxil etmək üçün düyməni bağlayın.

İstifadə etdiyim dörd pin var. Daxili olaraq cütlər tərəfindən bağlanır, əvvəllər açıldığını sınayan (və ya batareyalı bir led) ilə yoxlayın.

Kabel

Lehim bir tərəfdən led şerit üçün kişi bağlayıcıdır. İstifadə etməyəcəyimiz LED şeridindən istifadə edə bilərsiniz.

İstifadə etdiyim rənglərdir.

  • Qırmızı (+5V) -> Qəhvəyi
  • Yaşıl (məlumatlar) -> Qara
  • Ağ (Gnd) -> Mavi

Arduino tərəfində

  • Qəhvəyi -> VIN
  • Mavi -> GND
  • Qara -> D4

LED şeridi

LED Strip iki üç pinli bağlayıcıya malikdir, giriş biri qadındır. Qısa qapanmanın qarşısını almaq üçün izolyasiya lenti və ya istilik büzülmə borusu ilə izolyasiya edilməli olan konnektoru olmayan qırmızı və ağ kabellər var.

Mikro nəzarətçi

Yalnız əvvəlcədən qalınlaşdırılmış kabelləri lehim yastiqciklərinə lehimləyin, Bağlayıcılar

Nəhayət, bütün bağlayıcıları bağlayın.

Addım 6: Elementlərin bərkidilməsi

Element Bərkitmə
Element Bərkitmə

Düymə Düyməni düzəltmək üçün bir yapışqan tapança istifadə etdim, bol miqdarda qoydum və düymə mexanizmini yapışdırmamağa diqqət et. İlk dəfə o qədər az yapışqan olduğu üçün iki dəfə etməliydim ki, düyməni basdığımız zaman yapışdı.

Mikro nəzarətçi Sabit deyil.

Nəhayət bir çəkmə olarsa, lehimləmə zədələnməməsi üçün bir kabel bağlayın.

Addım 7: Kod

Kod
Kod
Kod
Kod

Proqram vasitələri və yükləmə

Kod üçün FastLED kitabxanasından və Arduino IDE -dən istifadə etdik.

Kitabxananı Arduino IDE -də qurmaq üçün bu təlimatı izləyin Əlavə Arduino Kitabxanalarının Qurulması FastLED axtarış qutusuna qoyun.

Arduino nanoya yükləmək üçün bu təlimatı izləyin. Arduino Nano ilə işə başlayın

İstifadə

Mövcud animasiya rejimini dəyişdirmək üçün düyməni basmaq kifayətdir.

Kod Yükləmə

Https://gitlab.com/BitaMind/christmaslights/tree/master/arduino/ChristmasOneFile ünvanına baxın

Və ya faylın adını ChristmasOneFile.txt olaraq ChristmasOneFile.ino olaraq dəyişdirin

Sınaya biləcəyiniz çoxfunksiyalı bir sinif versiyası da var.

Yeni bir animasiya yaratmaq üçün məsləhətlər.

  • İstədiyiniz yeni bir üsul yaradın.
  • Ümumi animasiya sayını (MAX_MODES) bir artırın.
  • Yeni iş üçün AnimationUpdate dəyişdirin.

Addım 8: Düzəlişlər

  • 24.12.2019 Video əlavə edildi.
  • 25.12.2019 Kapak şəkli dəyişdirildi, imla düzəlişləri edildi.
  • 26.12.2019 Əlavə edilmiş mənbə faylı.
  • 21.11.2020 Qırılan bağlantılar yeniləndi

Tövsiyə: