İçindekiler:
- Adım 1: Gerekli Parçalar:
- Adım 2: ARDUINO KODU:
- Adım 3: ARDUINO KODU AÇIKLAMASI:
- 4. Adım: Pasta
- Adım 5: Güç Kullanım Kılavuzu
- Adım 6: Fritzing Diyagramı
- Adım 7: İKİ LED Halkayı Arduino'ya Bağlama
- Adım 8: DÖRT LED Halkayı Arduino'ya Bağlama
- Adım 9: Bağlantı Tabloları
- Adım 10: İKİ LED Halkayı Arduino'ya Bağlama
- Adım 11: Sonuç
Video: ATMEGA328 UNO V3.0 R3 Kartlı WS2812-B LED: 11 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Açıklama
Bu proje, görsel bir etki yaratmak için ICStation WS2812-B Programlanabilir Renkli LED Kartı ile ATMEGA328 UNO V3.0 R3 Kartı Uyumlu Arduino UNO R3'ü birleştirir. Üstelik "Disko" temalı bir parti veriyorsanız çok hoşunuza gidecek. Size bunlardan birini nasıl yapacağınızı göstereyim.
Adım 1: Gerekli Parçalar:
· Arduino UNO (veya uyumlu kart)· 4 x WS2812-B Programlanabilir Renkli LED Kartı
· 330 ohm direnç
· 4700 uF 16V Elektrolitik Kondansatör
· ekmek tahtası
· Dişi-Erkek Jumper telleri
· Breadboard Jumper telleri
· 2.1mm DC Soket Vidalı Klemensli
· 5V 4A Plugpack güç kaynağı
Not: Bu projeye pil kullanarak güç vermek mümkündür, ancak tavsiye edilmez ve riski size ait olmak üzere yapılır.
Ayrıca yapmanız (veya satın almanız) gereken bir Disco Ball Cake'e de ihtiyacınız olacak. Bunu karım yaptı. Ve birazdan göreceğiniz gibi pastanın içi Pembe çünkü çilekli pastaydı.
Arduino Kütüphaneleri ve IDEArduino IDE'yi buradan edinebilirsiniz: https://www.arduino.cc/en/Main/Software Muhtemelen çok eski olan 1.6.4 sürümünü kullandım… ama yine de iyi çalışıyor.
FastLED kütüphanesinin nasıl kullanılacağı hakkında buradan bilgi alabilirsiniz: https://fastled.io/ Ve buradan indirebilirsiniz: FastLED Kütüphanesi Muhtemelen güncel olmayan 3.0.3 sürümünü kullandım.
Adım 2: ARDUINO KODU:
Adım 3: ARDUINO KODU AÇIKLAMASI:
· FastLED Kitaplığı: Arduino IDE'nize FastLED kitaplığını indirip kurduğunuzdan emin olmanız gerekir. Kitaplık bu çizime dahil edilmiştir, aksi takdirde FastLED işlevleri çalışmayacaktır.
· "NUM_LEDS" değişkeni: Arduino'ya kaç LED'in kullanımda olduğunu söyler. Bu durumda, her biri 16 LED içeren ve dolayısıyla toplam 64 LED içeren 4 LED halkamız var. Daha düşük bir sayı tanımlarsanız, örneğin 16, çizim yalnızca ilk LED halkasındaki LED'leri aydınlatacaktır.
· "DATA_PIN" değişkeni: Arduino'ya LED halkasına veri iletimi için hangi Dijital Pin'i kullanacağını söyler. Bu durumda Digital Pin 9 kullanıyorum.
· Diğer değişkenler: LED rastgeleleştirme ve renk tonu kontrolü için kullanılan birkaç değişkenim daha var. Ton, LED'in rengidir. Hue değişkenini artırarak, LED'lerin gökkuşağı benzeri bir düzende dönmesini sağlayabilirsiniz. "Ton" değişkeni bir "bayttır", bu, sıfıra geri atlamadan önce yalnızca maksimum 255 değerine kadar çıkacağı anlamına gelir.
Başlatma Kodu: Bu eğitimdekinden farklı bir LED halkanız varsa, başlatma kodunu değiştirmeniz gerekebilir. Bu LED halkasının bir WS2812-B yonga seti vardır (ICStation web sitesine göre) ve bu nedenle şu satır:
· FastLED.addLed'ler(led'ler, NUM_LEDS); FastLED kitaplığına hangi yonga setinin kullanıldığını (NEOPIXEL), veri iletimi için kullanılan pini (DATA_PIN), kontrol edilecek LED dizisini (ledler) ve kontrol edilecek LED sayısını (NUM_LEDS) söyleyecektir. loop()": kodun bölümü: bir gökkuşağı efekti oluşturmak için "hue" değişkeni artırılır ve FastLED'in random8() işlevi kullanılarak rastgele bir LED seçilir.
· random8(x) işlevi: 0 ile x arasında rastgele bir sayı seçecektir.
· randomSeed() işlevi: sayıyı "gerçekten rastgeleleştirmeye" yardımcı olmak için vardır. Bu, kayan bir analogPin'in (A0) rastgeleliği okunarak yardımcı olur. AnalogPin 0 olması gerekmez, kullanılmayan herhangi bir analog pin olabilir.
· leds[rnd].setHSV(hue, 255, 255): Bu satır rastgele LED'i "hue" değişkenine eşit bir renk tonuna, doygunluk 255'e ve parlaklık 255'e eşit olacak şekilde ayarlar. Sıfıra eşit doygunluk LED beyaz parlıyor. Sıfırın parlaklığı esasen LED'i KAPALI konuma getirir.
· FastLED.show(): Arduino'dan LED halkasının Dijital giriş pinine bir mesaj gönderilene kadar LED halka ekranında herhangi bir fiziksel değişiklik yapılmayacaktır. Bu mesaj, FastLED.show()'u aradığınızda iletilir; işlev. Bu, LED halkalarına ekranlarını led dizisinde (ledler) bulunan bilgilerle güncellemelerini söyler. Yani tüm LED'leri yanacak şekilde ayarlarsanız, kart FastLED.show(); fonksiyon denir. Bunu bilmek önemlidir - özellikle kendi LED dizilerinizi tasarlamaya çalışırken.
· Gecikme(50) satırı: yanıp sönmeler arasındaki süreyi 50 milisaniyeye ayarlar. Saniyedeki flaş sayısını artırmak veya azaltmak için gecikmeyi değiştirebilirsiniz.
· leds.fadeToBlackBy(180) işlevi: LED'leri esasen 180 birim karartır. İstenilen solma hızına ulaşmak için bu sayıyı artırabilir veya azaltabilirsiniz. Bununla birlikte, bu işlevi çağırmayı unutursanız veya LED'leri yeterince söndürmeyi başaramazsanız, TÜM LED'lerin yanmasına neden olabilir ve bu da Arduino kartınızı potansiyel olarak tahrip edebilir - yani, LED halkalarının sayısına bağlı olarak. sahip olduklarını ve onlara nasıl güç vermeyi seçtiğinizi.
4. Adım: Pasta
· Slayt 1 - Taban Plakası: Pastayı üzerine koymadan ÖNCE taban plakasını tüm elektronik aksamlar takılı ve çalışır durumda olacak şekilde oluşturmak önemlidir. Üstünde Cake varken kabloları LED'leri ve devreleri taban plakasının altına yerleştirmeye çalışmak felakete davetiye çıkarır. Bu yüzden önce taban plakasını hazırlayın ve daha sonra kek yapma kısmına geçin.
· Slayt 2 - Pasta Yap: Topun iki tarafını yapmak için birkaç yarım küre kek kalıbına ihtiyacınız olacak. Kek, krema ve fondanın toplam ağırlığına dayanmak ve şeklini korumak için nispeten yoğun bir kek yapmalısınız. Soğuduktan ve soğuduktan sonra, bir küre oluşturmak için üst üste yerleştirebilirsiniz. Aralarında bir buz tabakası ile bir arada tutulurlar.
· Slayt 3 - Fondan Buzlanma: Fondan krema, özel bir yapışmaz altlık üzerine serilmelidir. Biraz un eklemenin yapışkanlığı azalttığını gördük. Fondanın kalınlığının baştan sona tutarlı olmasını sağlayan özel silindirler vardır. Daha sonra bunları kare parçalara ayırmanız gerekir (yaklaşık 1 cm kareler bizim için iyi oldu). Kareler daha sonra özel/yenilebilir gümüş fondan sır ile Gümüşe boyanır. Birkaç kat uygulamanız ve katlar arasında kurumasına izin vermeniz gerekebilir.
· Slayt 4 - Tabanda Buzlu Kek: Kek, taban plakasının üzerinde veya dışında buzlu olabilir… muhtemelen bunu taban plakasından yapmak daha iyi. Ancak bunu taban plakasında yapmaya karar verirseniz, LED'leri pastadan düşebilecek başıboş buzlanmadan (işlemde) korumanız gerekecektir. Pasta tamamen buzlandığında (buzlanma/dondurma ile), pastayı tahtanın ortasına yerleştirmeniz gerekecektir. Pastanın tabandan kayma olasılığı olabilir… o yüzden yerinde kalması için yapmanız gerekeni yapın.
· Slaytlar 5-7 - Fondan Kareleri Yerleştirin: Krema hala yumuşakken, daha sonra fondan karelerini pastanın etrafına yatay doğrusal bir desende hızlı, metodik ve yorulmadan yerleştirmeniz gerekecektir. Her seferinde bir sıra yaparak pastanın kuzey ve güney kutuplarına doğru ilerleyin. Pastanın kuzey kutbu için fondan bir daire kesebilirsiniz. 7. slaytta pastanın tepesinde bir delik göreceksiniz. Bu, daha sonra pastanın üstündeki süslemeleri yerinde tutmak için kullanılacak olan plastik bir teneke kutuyu soğutmak için yapıldı. Bunu, fondan daireyi pastanın üstüne yerleştirmeden önce yapın.
· Slayt 8 - Parıltı Ekleme: Tüm fondan kareleri pastanın üzerine yerleştirdikten sonra, bazı karelerdeki Gümüş sırın bir kısmının silinmiş olması çok olasıdır. Burası, birkaç kat daha gümüş cila ile tekrar üzerinden geçeceğiniz yerdir ve son katta, kurumadan önce, ekstra parlaklık vermek için pastanın her tarafına yenilebilir parıltı serpebilirsiniz.
· Slayt 9 - Son ürün: Son adım, pastanın üstüne biraz tel maytap ve başka süslemeler eklemektir. Telleri kuzey kutbundaki fondan kapağından içerideki kutuya doğru itin. Bu, tüm sıkı çalışmanızı mahvetmeden kabloları yerinde tutacaktır.
· WS2812-B yonga seti: Bu LED halkası, WS2812-B yonga setini kullanır ve 4 çıkış pinine sahiptir (GND, 5V, Din, Dout)
· Güç: Bu modüle güç sağlamak için 5V ve 1A'e kadar akım sağlamanız gerekir.
· Sinyaller: LED halkasını kontrol etmek için, Dijital Giriş pini (Din) aracılığıyla sinyal göndermeniz gerekir.
Dijital Çıkış pinini (Dout) kullanarak buna başka bir LED halkası bağlayabilirsiniz.
Adım 5: Güç Kullanım Kılavuzu
· Genel Kural: Halka üzerindeki her bir LED, Kırmızı, Yeşil ve Mavi ışığı iletebilir. Bu renklerin kombinasyonları başka herhangi bir rengi oluşturabilir. Beyaz ışık, bu renklerin üçünden aynı anda oluşur. Her bir renk, o rengi maksimum parlaklıkta gösterirken yaklaşık 20mA akım çekecektir. Maksimum parlaklıkta beyaz parlarken, tek LED yaklaşık 60mA çekecektir.
· Güç çarpanı: Her LED 60mA'ya kadar çekebiliyorsa ve tek bir LED halkasında 16 LED varsa, LED halkası başına 16x60mA = 960mA. Güvende olmak ve matematiği kolaylaştırmak için, LED halkası başına 1A'ya yetecek kadar akım sağladığınızdan emin olmanız gerekir. Modüllerden tam işlevsellik elde etmek istiyorsanız, 4 LED halka 5V 4A güç kaynağına ihtiyaç duyacaktır.
Adım 6: Fritzing Diyagramı
TEK LED Halkayı Arduino'ya Bağlama
· 3 kablo: LED halkasına bağlanmak için sadece 3 kabloya ihtiyacınız var. Herhangi bir zamanda sadece birkaç LED yakmayı planlıyorsanız, bu sorun olmaz. · GÜVENLİ YOL: Bunu yapmanın daha güvenli bir yolu, hem Arduino'ya hem de LED halkasına güç sağlamak için harici bir güç kaynağı kullanmaktır.
· Elektrolitik kondansatör: Güç kaynağı uçlarının pozitif ve negatif terminalleri arasına büyük bir 4700 uF 16V Elektrolitik kondansatör bağlayarak, kondansatörün negatif ayağı güç kaynağının negatif terminaline takılıyken, LED halkalarınızı herhangi bir başlangıçtan koruyacaksınız. akımın hücumu.
Direnci Koruma: Arduino'nun Dijital Pin 9'u (D9) ile LED Ring'in Dijital Giriş pini (Din) arasına 300-400 ohm'luk bir direnç yerleştirilmesi de tavsiye edilir. Bu, ilk LED'i olası voltaj yükselmelerinden korur
Uygun kablolar: Bu LED halkalarından birkaçını birbirine zincirlemeyi planlıyorsanız (aşağıya bakın), muhtemelen kabloları mümkün olduğunca kısa tutmak ve içlerinden geçen akımı kaldırabilecek düzgün bir ölçü kablosu kullanmak isteyeceksiniz.
Adım 7: İKİ LED Halkayı Arduino'ya Bağlama
Üç ekstra kablo: Ek bir LED halkası bağlamak için yalnızca 3 ekstra kabloya ihtiyacınız var. Bir kablonun birinci LED halkasının Dijital çıkışını (Dout) 2. LED halkasının Dijital Girişine (Din) bağlaması gerekir.
Güvende kalın: Bir kez daha, bunu yapmanın daha güvenli bir yolu, harici bir güç kaynağı, terminallerde büyük bir elektrolitik kapasitör ve Arduino ile ilk LED halkasının dijital giriş pimi arasında 300-400 ohm'luk bir direnç kullanmaktır.
Adım 8: DÖRT LED Halkayı Arduino'ya Bağlama
Altmış Dört LED: Her ek LED halkası için 3 ekstra kabloya ihtiyacınız vardır. 4 LED halkası toplam 64 LED sağlar.
AMPS'yi izleyin:Tam parlaklıkta, bu kurulum potansiyel olarak 4 amper'e kadar (veya LED halkası başına yaklaşık 1 amper) çekebilir
Harici Besleme gerekli: Çok fazla olduğunda bu LED'lere güç sağlamak için harici bir güç kaynağı kullanmak çok önemlidir. Harici bir güç kaynağı kullanmazsanız ve yanlışlıkla TÜM LED'leri yakarsanız, mikrodenetleyiciye aşırı akım çekişinden zarar verebilirsiniz.
Adım 9: Bağlantı Tabloları
Arduino'ya ONE LED Ring nasıl bağlanır
Adım 10: İKİ LED Halkayı Arduino'ya Bağlama
Adım 11: Sonuç
Bu eğitimde size bir Disco Ball pastasını nasıl dekore edeceğinizi ve ayrıca ICStation'dan RGB LED halkalarını nasıl kullanacağınızı gösterdik.
ICStation'daki dört ürünün bağlantısı:
www.icstation.com/icstation-atmega328-board…
www.icstation.com/icstation-ws2812-programm…
www.icstation.com/1pcs-dupont-wire-10cm-254…
www.icstation.com/bread-board-jump-line-jum…
Arkadaşlarımız Scott ve ailesi için Led hakkında harika bir sunum yaptıkları için teşekkürler.
İçeriğin orijinal kaynağı arkadaşımız Scott'tan geldi:
arduinobaics.blogspot.com.au/2016/06/ardui…
Bu pasajı beğendiyseniz, lütfen arkadaşlarınızla paylaşın.
Daha iyi bir inceleme yapabileceğinizi düşünüyorsanız, lütfen yorum yapın.
IC ürünleri hakkında daha fazla fikriniz varsa, lütfen bize e-posta ile ulaşın: [email protected]
Önerilen:
ESP32 Kartlı Step Motor: 4 Adım
ESP32 Kartlı Step Motor: Step motorlar, ayrı adımlarla hareket eden DC motorlardır. "Faz" adı verilen gruplar halinde organize edilmiş çoklu bobinleri vardır. Her faza sırayla enerji verilerek motor adım adım dönecektir. Step motorlar çok kullanışlıdır
Rekt-O-Matic Turbo S: Tek Kartlı Bitcoin Ticker: 12 Adım
Rekt-O-Matic Turbo S: Tek Kartlı Bitcoin Ticker: 25 Ekim 2019'da Bitcoin fiyatındaki bir gecede 7500 dolardan 10300 dolara yükselişi kaçırdınız mı? İyi ben yaptım. Bu tür şeyler kripto dünyasında olur. Millete ihtiyacınız olan şey Rekt-O-Matic Turbo S Bu, güzel bir OLED'li bir Bitcoin fiyat kaydı
M5stick-C ile Neopixel Ws2812 Gökkuşağı LED Glow - Rainbow'u Arduino IDE Kullanarak M5stack M5stick C Kullanarak Neopixel Ws2812 Üzerinde Çalıştırmak: 5 Adım
M5stick-C ile Neopixel Ws2812 Gökkuşağı LED Glow | Rainbow'u Neopixel Ws2812'de M5stack M5stick C Kullanarak Arduino IDE Kullanarak Çalıştırmak: Merhaba arkadaşlar bu talimatta Arduino IDE ile neopixel ws2812 LED'lerini veya led şerit veya led matrisi veya led halkayı m5stack ile m5stick-C geliştirme kartını nasıl kullanacağımızı öğreneceğiz ve bunu yapacağız. onunla bir gökkuşağı deseni
Ek Kartlı AVR Mini Kart: 7 Adım
Ek Kartlı AVR Mini Kartı: PIC 12f675 mini protoboard'a biraz benzer, ancak genişletilmiş ve ek kartlarla. attiny2313'ü kullanma
Robot Beyin: Bir Akşam Tek Kartlı Bir Bilgisayar Oluşturun: 11 Adım
Robot Beyin: Bir Akşam Tek Kartlı Bir Bilgisayar Oluşturun: Picaxe veya Arduino'nuzda bellek mi bitti? Ama bir PC iş için fazla mı? C, Basic, Forth, Pascal veya Fortran gibi dillerde programlanabilen bu açık kaynaklı tek kartlı bilgisayara bir göz atın. Bu kart, ucuz IC'ler kullanır ve del