İçindekiler:
- Adım 1: Malzeme Listesi
- Adım 2: Pin Başlıklarını Bağlama
- Adım 3: WS2812 Breakout Board'u Arduino'ya Bağlama
- Adım 4: Arduino IDE ile Yanıp Söndürme
- Adım 5: Bir RGB LED Şeridi Oluşturma
- Adım 6: Karanlığa, Işık Olsun
Video: Herhangi Bir Proje için En İyi RGB LED'ler (WS2812, Diğer adıyla NeoPixels): 6 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
LED'lerle çalışırken genellikle durumlarını (açık/kapalı), parlaklıklarını ve renklerini kontrol etmeyi severiz. Bununla ilgili pek çok farklı yol var, ancak hiçbiri WS2812 RGB LED kadar kompakt bir çözüm değil. Küçük 5mm x 5mm paketinde WS2812, 3 süper parlak LED (Kırmızı, Yeşil ve Mavi) ve 3 LED'in durumunu, parlaklığını ve rengini kontrol etmek için yalnızca bir veri girişi gerektiren kompakt bir sürücü devresi (WS2811) içerir.. 3 LED'i kontrol etmek için yalnızca bir veri hattına ihtiyaç duyma pahasına, WS2811 ile iletişimde son derece hassas zamanlama talebi ortaya çıkıyor. Bu nedenle gerçek zamanlı bir mikrodenetleyici (örn. AVR, Arduino, PIC) gereklidir. Ne yazık ki, Linux tabanlı bir mikro bilgisayar veya Netduino veya Basic Stamp gibi yorumlanmış bir mikro denetleyici, gereken yeterli zamanlama doğruluğunu sağlayamaz. Ve böylece, bu Eğitilebilir Tabloda, bu LED'lerden birini bir Arduino Uno ile kurma ve kontrol etme sürecinden geçiyorum. Ardından, harika bir aydınlatma ekranı için birkaçını birbirine bağlamanın ne kadar kolay olduğunu gösteriyorum! Zorluk seviyesi: Başlangıç Tamamlama Süresi: 10-15 Dakika
Adım 1: Malzeme Listesi
Bu harika RGB LED, bir koparma panosuna lehimlenmesi oldukça kolay olan 6 pedli 5050 (5mm x 5mm) pakette gelir. Gereken tek ek bileşen bir ayırma kapasitörü olduğundan, WS2812, bir RGB LED'in rengini ve parlaklığını kontrol etmek için dürüstçe en iyi çözümü sunar. Gömülü sabit akım LED sürücüsü (WS2811) iki nedenden dolayı oldukça kullanışlıdır: - Voltaj değişse bile ~18mA'lık sabit bir akım her bir LED'i çalıştıracaktır. - Güç kaynağı ve LED'ler arasına akım sınırlayıcı dirençler (a.k.a jikle dirençleri) eklemeye gerek yoktur. Tek ihtiyacımız olan, bir değil, bir dizi RGB LED'den oluşan harika bir aydınlatma ekranı oluşturmak için Güç, Toprak ve 1 Kontrol Girişi sağlamak için çok basit bir tasarım. Doğru! Bu ledlerden birinin Data Out pinini diğerinin Data In pinine bağlayarak aynı Kontrol Girişi ile ikisini birbirinden bağımsız olarak çalıştırabiliriz! Bunu nasıl yapacağınız açık değilse, endişelenmeyin, bu Eğitilebilir Tablonun sonunda, istediğiniz herhangi bir projeye WS2812'yi ekleme yolunda olacaksınız! Bu Eğitim Tablosu için kullanacağımız şey şudur: Malzemeler: 3 x WS2812 RGB LED (küçük bir devre kartına önceden lehimlenmiştir) 1 x Lehimsiz Breadboard Katı Çekirdekli Tel (çeşitli renkler; 28 AWG) 1 x Arduino Uno R3 1 x Ayrılabilir Pinli Konnektör, 0.1" Aralık, 8-Pin Erkek (Dik Açı) 1 x Pin Konnektör, 0.1" Aralık, 8-Pin Dişi (Dik Açı) 1 x Breakaway Pin Konnektör, 0.1" Adım, 8-Pin MaleTools: PC USB A/B Kablo Tel Sıyırıcı Lehimleme Demir Notlar: Projenize bağlı olarak, WS2812 RGB LED'lerin her biri yaklaşık 0,40 ABD doları karşılığında bir devre kartı olmadan da temin edilebilir, ancak önceden lehimlenmiş seçeneğin rahatlığı basit uygulamalar için çekicidir.
Adım 2: Pin Başlıklarını Bağlama
Önceki adımda listelenen tüm malzemelerle, bir WS2812 RGB LED'i yakmak oldukça basittir. İlk olarak, WS2812 Breakout Board'larını lehimsiz devre tahtasına yerleştirmek için hazırlamak istiyoruz. Bunu yapmak için, her bir 8-Pin şeridi 2 x 3-Pin parçalara ayırmak için bir tel kesici kullanıyoruz (en yaygın kesme aletleri aynı şekilde işe yarayacaktır). Kesimi yapmanın biraz zor olduğunu unutmayın; Çoğu zaman kesim için bir kılavuz olarak iki erkek başlık arasındaki oluğu kullanmaya çalıştım ve sonunda tutmayı düşündüğüm bir başlıktan çok fazla plastik kestim. Kesimi yapmak istediğimiz pimi 'feda ederek' sorundan tamamen kaçınıyoruz. Pense kullanarak kesmek istediğimiz pimi (bu durumda 4. ve 8. pimi) çekiyoruz. Pimler çıkarıldıktan sonra artık boş olan başlıkların ortasını kolayca kesebiliriz. Bu teknik, dişi başlık ile eşit derecede iyi çalışır. Merak edip kestikten sonra 6 adet 3-Pin başlığımız yani 2 adet standart ve 4 adet dik açılı (2 x erkek, 2 x dişi) başlıklarımız olmalıdır. Bir havya yardımıyla artık pinleri aşağıdaki şekilde üç koparma kartının her birine bağlayabiliriz. Bir pano 2 x standart başlığa sahip olmalıdır, diğer iki panonun her biri 1 x dik açılı başlığa sahip olmalıdır. Standart pin başlıklarının olacağı panoda pinleri panonun alt yüzeyine (LED'in bulunduğu tarafın karşı tarafına) yerleştiriyoruz. Diğer ikisinde, dik açılı başlıklar (her cinsiyetten biri) üst veya alt yüzeye yerleştirilebilir. Erkek ve dişi başlıkların yerleşiminde bir tahtadan diğerine tutarlı olmanın önemli olduğunu unutmayın. Kartları yönlendirmek için yüzeye monte kapasitörün kullanılması yararlıdır; bunu referans olarak kullanarak, erkek başlık kapasitöre en yakın uca lehimlenmelidir. Pimler lehimlendikten sonra birini Arduino'ya bağlamaya hazırız!
Adım 3: WS2812 Breakout Board'u Arduino'ya Bağlama
Bu adımda bir Arduino ile WS2812 Breakout Board'larımızdan biri arasında gerekli bağlantıları yapacağız. Bu amaçla lehimsiz devre tahtası ve 3 x atlama teli kullanacağız. Bir tel makarası kullanıyorsanız, şimdi her biri yaklaşık 4 uzunluğunda 3 parça kesmenin zamanı geldi. Artık WS2812 Breakout Board'u (standart başlıklara sahip olan) breadboard'umuzun ayırıcısına yerleştirebiliriz. Arduino'nun hem güç kaynağından hem de USB'den bağlantısı kesildiğinden, bağlantıları kablolamaya devam edeceğiz. WS2812 Breakout Board'un alt tarafında her bir pinin adını bulabiliriz: VCC, DI (DO), GND. bu bir rehber olarak Arduino'dan gelen 5V ve GND pinlerini sırasıyla WS2812 kartının VCC ve GND pinlerine bağlamaya devam ediyoruz. Ardino'nun Digital tarafındaki pin 8'i WS2812 board'un DI pinine bağlıyoruz., kondansatöre en yakın tarafın merkez pimi. Artık programımızı Arduino'ya yüklemeye ve WS2812'nin yanıp sönmesini sağlamaya hazırız!
Adım 4: Arduino IDE ile Yanıp Söndürme
Arduino IDE'yi bilgisayarınıza zaten kurduğunuzu varsayacağım --- web'deki birçok kılavuz süreci oldukça iyi açıklıyor. Arduino'muza yüklememiz gereken program buradan indirilebilir. Arduino IDE'ye yüklemek için firmware > örnekler > primer klasörü içindeki primer.ino dosyasına çift tıkladıktan sonra (versiyon 1.0.5 için wirtten). Paket, kodun derlenmesi için gerekli kütüphaneleri içerir, bu nedenle herhangi bir hata olmamalıdır, derlemede herhangi bir sorunla karşılaşırsanız lütfen bir yorum gönderin. Arduino kart tipini ve Araçlar menü seçeneğini kullanarak USB portunu seçtikten sonra, kodu yükleyin ve WS2812, Kırmızı, Yeşil ve Mavi arasında dönüşümlü olarak yanıp sönmeye başlamalıdır. Bu WS2812 RGB LED'lerin en güzel özelliği, bu LED'lerin çoğunu içeren uzun şeritler ve diziler oluşturmak için oldukça kolay bir şekilde "papatya dizimi" oluşturulabilmeleridir. Bir sonraki adımda hazırladığımız 3 pano ile tam olarak bunu yapıyoruz.
Adım 5: Bir RGB LED Şeridi Oluşturma
Gömülü LED sürücü devresi (WS2811), yalnızca 1 veri hattı(!) kullanarak bir LED'i diğerine 'zincirleme bağlamaya' izin verir. Bir WS2812'nin Veri Çıkışını diğerinin Veri Girişine bağlayarak, bir Arduino'da 500'e kadar tüm LED dizisinin parlaklığını ve rengini kontrol edebiliriz! Tabii ki, birçok LED'i sürmek için bazı hususlar gereklidir: - Her piksel 60mA'ya kadar çeker (tam parlaklıkta beyaz, her biri ~20mA olmak üzere tüm LED'lerin açık olmasını gerektirir). - Bir Arduino, 30 Hz yenileme hızında 500 LED kullanan RAM'ini maksimuma çıkaracaktır. - İki kartı birbirine bağlamak için, güç düşüşlerini ve veri bozulmasını önlemek için önerilen maksimum ayrım 6"'dir. Bu hususları göz önünde bulundurarak, tutarlı parlaklık seviyelerinde 24 bit renk çözünürlüğü kullanarak tüm LED'leri çalıştırabiliriz, ve (küçük) pil gücü değişikliklerindeki değişikliklere karşı oldukça dayanıklı. Bu Talimat için hazırladığımız panoları 'papatya zinciri' yapmak için, iki panonun birinden erkek ucuna dişi ucunu sağ tarafla bağlayarak başlıyoruz. Daha sonra Arduino kartımızın Power ve USB bağlantısı kesilerek iki board zincirin erkek ucunu lehimsiz breadboard üzerine yerleştiriyoruz. Pinlerin breadboard'a bağlı olan WS2812 Breakout Board üzerindeki pinler ile aynı hizada olmasını sağlıyoruz. Böyle bir hizalama, hem düz başlıklı panodan hem de devre tahtasının aynı satırındaki zincirden VCC ve GND pinlerine sahip olacaktır. İki panolu zinciri, kapasitörün karşısındaki üçüncü Breakout Board'un sonuna yakın bir yere yerleştiriyoruz.. A Her şey bağlandıktan sonra, Arduino IDE'yi çalıştırabilir ve "#define NUM_LEDS 1" tanımını "#define NUM_LEDS 3" olarak değiştirmek için Metin Düzenleyiciyi kullanabiliriz. Kartı tekrar Güç ve/veya USB'ye bağladıktan sonra yeni programı yükleyebiliriz… ve… BAM! Üç LED'in tümü de aynı şekilde yanıp sönmelidir!
Adım 6: Karanlığa, Işık Olsun
Bu Eğitilebilir Tablo, küçük ayırma panolarına önceden lehimlenmiş WS2812 RGB LED'in nasıl kullanılacağını hızlı bir şekilde gösterdi. LED'lerin parlaklığını ve rengini kontrol etmek için bir Arduino kullandık. Biraz hayal kırıklığı yaratan bir şey, kullandığımız kodun LED'lerin hepsinin aynı yoğunluk ve renkle aynı anda yanıp sönmesini sağlamasıydı. Bu çalışma modu, bu pakette bulunan 'akıllı' LED sürücüsünün (WS2811) tam potansiyelini sergilemez. Ve böylece, orijinal kodda aşağıdaki değişiklikleri deneyelim. Daha önce olduğu gibi, dosyayı indirip açacaksınız ve ardından Arduino'ya yüklenecek ürün yazılımını açacaksınız (ürün yazılımı > efektler > efekt.ino). Bu demo için gereken tüm dosyalar dahil edilmiştir, bu nedenle üçüncü taraf kütüphaneleri eklemenize gerek yoktur; kod herhangi bir değişiklik yapılmadan derlenmelidir --- 3 LED'i işlemek için zaten ayarlanmıştır. Artık bu çok kullanışlı, kompakt RGB LED'lerin ışıklarını parlatabileceği bir sonraki projeyi tasarlamak sizin hayal gücünüze kalmış. Yorumlar bölümünde WS2812'yi kullanarak kendi kreasyonlarınızdan bazılarını yayınlamaktan çekinmeyin!
Önerilen:
Çok Gençler İçin Bir Juke Box Diğer adıyla Raspi-Müzik Kutusu: 5 Adım
Çok Gençler İçin Bir Juke Kutusu… Aka Raspi-Müzik Kutusu: Eğitilebilir "Raspberry-Pi-based-RFID-Music-Robot"; ROALDH'nin 3 yaşındaki çocuğu için yaptığı bir müzik çaları tarif ederken, daha küçük çocuklarım için bir müzik kutusu yapmaya karar verdim. Temelde 16 düğmeli ve Raspi 2 i
USB Üzerinden Şarj Olan Herhangi Bir IPod veya Diğer Cihazlar için Kendi USB Araç Şarj Cihazınızı Nasıl Yapabilirsiniz: 10 Adım (Resimlerle)
USB Üzerinden Şarj Olan Herhangi Bir IPod veya Diğer Cihazlar için Kendi USB Araç Şarj Cihazınızı Nasıl Yapabilirsiniz: 5v ve USB Dişi fiş çıkışlı bir araç adaptörünü birleştirerek herhangi bir iPod veya USB ile Şarj Olan Diğer Cihazlar için bir USB araç şarj cihazı oluşturun. Bu projenin en önemli kısmı, seçtiğiniz araç adaptörünün çıktısının bahis olduğundan emin olmaktır
Bir Gerilla Arabası Başlatın (diğer adıyla MobMov): 6 Adım (Resimlerle)
Bir Gerilla Arabası Başlatın (diğer adıyla MobMov): Hiç MobMov.org adıyla bir açık hava tiyatrosu veya Santa Cruz Gerilla Arabası çalıştırmak istediniz mi? Bu talimat size hangi ekipmana ihtiyacınız olacağını ve nasıl kuracağınızı söyleyecektir. Cyberpunk şehir tiyatrosu, işte geliyoruz
Herhangi Bir Medya Dosyasını (Hemen Hemen) Herhangi Bir Diğer Medya Dosyasını Ücretsiz Olarak Dönüştürün!: 4 Adım
(Hemen) Herhangi Bir Medya Dosyasını Diğer Herhangi Bir Medya Dosyasına (Hemen Hemen) Ücretsiz Olarak Dönüştürün!: İlk talimatım, şerefe! Her neyse, Google'da Youtube.flv dosyalarımı bir biçime dönüştürecek ücretsiz bir program arıyordum. daha evrenseldir, örneğin.wmv veya.mov.Sayısız forum ve web sitesi aradım ve ardından … adlı bir program buldum
Bir Verizon Vx8500'e (diğer adıyla Çikolata) Ücretsiz Zil Sesleri ve Yedekleme Videoları Nasıl Eklenir: 8 Adım
Bir Verizon Vx8500'e (diğer adıyla Çikolata) Ücretsiz Zil Sesleri ve Yedekleme Videoları Nasıl Eklenir: Bu size vx8500 (aka çikolata) için bir şarj/veri kablosunun nasıl oluşturulacağını ve kablonun zil seslerini yüklemek ve satın alınan yedekleme için nasıl kullanılacağını gösterecektir. vcast videoları. Yasal Uyarı: Bu sayfayı okuyanların eylemlerinden sorumlu değilim.