Neopixel Gece Işığı: 14 Adım (Resimlerle)
Neopixel Gece Işığı: 14 Adım (Resimlerle)
Anonim
Neopiksel Gece Lambası
Neopiksel Gece Lambası

Yazan joshua.brooksYazarın daha fazlasını izleyin:

Pogo pin programlama konektörü
Pogo pin programlama konektörü
Pogo pin programlama konektörü
Pogo pin programlama konektörü
El Tipi Zoetrop Heykeli
El Tipi Zoetrop Heykeli
El Tipi Zoetrop Heykeli
El Tipi Zoetrop Heykeli
Masaüstü NeoPixel Saat
Masaüstü NeoPixel Saat
Masaüstü NeoPixel Saat
Masaüstü NeoPixel Saat

Birkaç hafta içinde, ucuz ama kullanışlı bir gerçek dünya projesine odaklanan bazı elektronik atölyeleri vereceğim. Yapacak bir şey bulmaya çalışırken, bir mikro denetleyici, NeoPixel LED'ler (çünkü harikalar) içermesini, uzaktan kontrol edilebilir olmasını ve farklı yapı seçeneklerine izin vermesini istedim. Ayrıca Tinkercad'de tamamen simüle edilebilir olması gerekiyordu. Gelişen proje bu.

Gerçekten harika bazı özellikleri küçük bir cihazda toplar, özelleştirilebilir ve oluşturması oldukça basittir.

Parça listesi:

  • Baskılı devre kartı (OSHPARK)
  • NeoPixel halka 12 (Adafruit)
  • ATtiny85 mikrodenetleyici (DigiKey)
  • 22 gauge tek damarlı tel (DigiKey, Amazon, Radio Shack, vb.)
  • (isteğe bağlı) Kızılötesi alıcı (DigiKey)
  • (isteğe bağlı, ancak şiddetle tavsiye edilir) 1μF elektrolitik kapasitör (DigiKey)
  • (isteğe bağlı) Buton (Jameco)
  • (opsiyonel) 2 x Erkek 3-pin başlık (DigiKey)
  • (opsiyonel) 2 x Şönt jumper (DigiKey)
  • (opsiyonel) 8 pinli DIP soketi (DigiKey)
  • (isteğe bağlı) 4 pimli dik açılı başlık (DigiKey)
  • (isteğe bağlı) IR uzaktan kumanda (Amazon)
  • Goril Bant (Amazon)
  • USB duvar güç kaynağı (Amazon)

Araçlar listesi:

  • Havya ve lehim
  • Tel makası
  • tel striptizci
  • pense
  • Makas

Adım 1: Tasarım ve Simülasyon

Daha önce de belirttiğim gibi bu proje için ücretsiz Tinkercad'i kullanmak istedim. Herhangi bir gerçek elektroniğe dokunmadan önce tamamen tasarlamaya ve orada test etmeye karar verdim. Bu, her şeyin (ATtiny85 bellenimi dahil) çalışacağından emin olmamı sağladı. İşte o sanal devre. Denemek için aşağıdaki "Simülasyonu Başlat"a basabilirsiniz.

Adım 2: Gerekli Parçalar

Gerekli Parçalar
Gerekli Parçalar

Bu proje, nasıl inşa edildiği konusunda esnekliğe izin verecek şekilde tasarlanmıştır. Bu nedenle, onunla ne yapmak istediğinize bağlı olarak, tüm parçalara ihtiyacınız olmayabilir. Kesinlikle gerekli olan üç parça (ve tel) vardır. Sadece bunlarla işlevsel bir şeyler inşa etmek mümkündür.

Neopixel Ring 12 - halkada, hemen hemen her renk olacak şekilde ayrı ayrı kontrol edilebilen on iki NeoPiksel bulunur.

ATtiny85 - bu, NeoPixels'i dans ettiren ve isteğe bağlı bileşenlerin birkaçıyla (kızılötesi alıcı, basma düğmesi, vb.) arabirimler oluşturan mikro denetleyicidir (küçük bilgisayar).

Baskılı devre kartı - baskılı devre kartı (PCB), kullanılan parçalar arasındaki tüm elektrik bağlantılarını sağlar ve cihazın sert omurgasıdır. Bir PCB üreticisine gönderilen sıkıştırılmış gerber dosyası bu sayfadadır. Orada birçok tahta üreticisi var. İşte anakartı OSHPARK'tan sipariş etmek için bağlantı.

22 gauge tek damarlı tel - tel, NeoPixel halkasını PCB'ye bağlamak için kullanılır.

3. Adım: İsteğe Bağlı Parçalar

Opsiyonel Parçalar
Opsiyonel Parçalar

Dahil etmeyi düşünmek isteyebileceğiniz bir dizi isteğe bağlı parça vardır. İşte bu yüzden onları isteyebilirsiniz.

Kızılötesi alıcı - kızılötesi alıcı, cihazın standart bir el tipi IR uzaktan kumanda (TV uzaktan kumandasını düşünün) tarafından kontrol edilmesini sağlayacak tek bir bileşendir. Farklı üreticilerin uzaktan kumandaları farklı sinyaller yayar, bu nedenle, benim kullandıklarımdan biri değilse, uzaktan kumandanızı tanımak için donanım yazılımının değiştirilmesi gerekebilir.

1μF elektrolitik kapasitör - kapasitör, cihazdaki gerekli elektrik akımı aniden değiştiğinde ek güç sağlayabilen bir tür geçici pil görevi görür (örneğin, NeoPixels kapalıdan tam açılır). Ayrıca ucuz bir USB güç kaynağı kullanırken cihaza giden voltajı bile çıkarabilir. İyi bir USB güç kaynağı kullanıyorsanız, bu dışarıda bırakılabilir.

Basma düğmesi - basma düğmesi, düğmeye basarak (tahmin edin ne?) cihazı kontrol etmenizi sağlar.

Erkek 3 pimli başlık(lar) ve şönt köprü(ler) - bunlar, şönt köprülerin nasıl konumlandırıldığına bağlı olarak cihazın yapılandırılmasına izin vermek için basma düğmesi yerine yerleştirilebilir. Erkek 3 pimli başlık, karta kalıcı olarak bağlanır (lehimlenir) ve şönt köprü, başlık üzerine bastırılarak takılır ve kolayca çıkarılabilir ve yeniden konumlandırılabilir. Bir başlık kullanılıyorsa, atlama teli iki farklı mod arasında seçim yapabilir. Her iki başlık da kullanılıyorsa, dört mod mümkündür.

8 pinli DIP soketi - soket, cihazın çalışma şeklini değiştirmek isterseniz daha sonra yeniden programlanabilmesi için mikro denetleyicinin (ATtiny85) çıkarılmasını ve değiştirilmesini sağlar. Mikrodenetleyiciyi asla yeniden programlamanız gerekmeyeceğini biliyorsanız, buna gerek yoktur.

4 pimli dik açılı başlık - USB konektörünün yan yerine doğrudan cihazın arkasından çıkmasını istiyorsanız, dik açılı başlık kullanılır.

Adım 4: Mikrodenetleyiciyi Programlayın

Mikrodenetleyiciyi programlama hakkında çok fazla ayrıntıya girmeyeceğim, çünkü talimatlar başka bir yerde kolayca bulunabilir (aşağıya bir bağlantı ekliyorum). Bu Eğitilebilir Tabloda açıklanan yöntemi kullanarak kontrolör için bir programlama cihazı olarak hareket etmek üzere bir Arduino UNO kartı kullandım. İçinde, programlama için Arduino pinlerinden ATtiny pinlerine aşağıdaki eşlemeyi gösterir:

  • Arduino +5V → ATtiny Pin 8
  • Arduino Ground → ATtiny Pin 4
  • Arduino Pin 10 → ATtiny Pin 1
  • Arduino Pin 11 → ATtiny Pin 5
  • Arduino Pin 12 → ATtiny Pin 6
  • Arduino Pimi 13 → ATtiny Pimi 7

Gece lambasının kaynak kodu burada bulunabilir (https://github.com/cacklestein/led-night-light).

Adım 5: Kartı Birleştirin (isteğe bağlı İlk Adım)

Panoyu Birleştirin (isteğe bağlı İlk Adım)
Panoyu Birleştirin (isteğe bağlı İlk Adım)
Panoyu Birleştirin (isteğe bağlı İlk Adım)
Panoyu Birleştirin (isteğe bağlı İlk Adım)
Panoyu Birleştirin (isteğe bağlı İlk Adım)
Panoyu Birleştirin (isteğe bağlı İlk Adım)

İşleri kolaylaştırmak için parçalar belirli bir sırayla tahtaya eklenmelidir. Kart üzerindeki USB konektörünün konumundan memnunsanız, bu adımın geri kalanını atlayabilir ve montajın bir sonraki bölümüne geçebilirsiniz. Ancak, konektörün kartın arkasından dışarı çıkmasını istiyorsanız, şimdi dik açılı başlığı eklemenin zamanı geldi.

USB konektörünü baskılı devre kartının geri kalanından dikkatlice ayırarak başlayın. Tahtanın büyük kısmını bir elinizle tutun ve tırnağı dikkatlice çıkarmak için küçük deliklerin delik çizgisinin hemen yanında bir kenarı olan pense kullanın. Sekmeyi bir kenara koyun. buna daha sonraki bir adımda ihtiyacınız olacak.

Sağ açılı başlığı, resimde gösterildiği gibi panonun arka tarafına yerleştirin. Tahtanın arkası, üzerinde "123D CIRCUITS" serigrafisi bulunan taraftır (ya da belki de "123D CIRC" demeliyim, çünkü "UITS" yi kırdınız).

Tahtanın üst tarafına lehim uygulayarak başlığı yerinde lehimleyin.

İyi tel kesiciler kullanarak, tahtanın üst tarafından çıkıntı yapan başlığın uçlarını tahtaya mümkün olduğunca yakın kesin. Bu önemlidir, çünkü bu ipuçları ATtiny85'in sonunda gideceği yerin merkezinde bir yerlerde hastalanıyor.

Adım 6: Mikrodenetleyici Soketini Ekleyin

Mikrodenetleyici Soketini Ekleyin
Mikrodenetleyici Soketini Ekleyin
Mikrodenetleyici Soketini Ekleyin
Mikrodenetleyici Soketini Ekleyin
Mikrodenetleyici Soketini Ekleyin
Mikrodenetleyici Soketini Ekleyin

Şimdi ya 8-pin DIP soketini -VEYA- ATtiny85'i yerinde lehimleme zamanı. Soketi kullanmanızı şiddetle tavsiye ederim, çünkü daha sonra programda değişiklik yapmak istemeniz durumunda ATtiny85'in kolayca çıkarılmasını ve yeniden takılmasını sağlar. Soketi (veya kart kenarına en yakın pim 1'li ATtiny85'i) eşleşen 8 delikten geçirin. tahtanın üst tarafında. Üst taraf, üzerinde "123D Devreleri" yazan taraftır. Kartı ters çevirin ve soketi yerinde tutmak için masaya veya başka bir çalışma alanına düz bir şekilde yerleştirin. Pimleri tahtaya lehimleyin. 4 pimli dik açılı başlığı önceki adımda eklediyseniz, bu pimler bir şekilde yolunda olacaktır. Ütüyü altlarında lehimlemek için açı yapın.

7. Adım: Daha Fazla Malzeme Ekleyin

Daha Fazla Şey Ekle!
Daha Fazla Şey Ekle!
Daha Fazla Şey Ekle!
Daha Fazla Şey Ekle!
Daha Fazla Şey Ekle!
Daha Fazla Şey Ekle!

Şimdi düğme veya jumper başlık(lar)ını, IR alıcısını ve kondansatörü eklemenin zamanı geldi.

Düğmeye sahip olmak istiyorsanız, kartın üst tarafındaki mikrodenetleyici yuvasının altındaki deliklerden 4 pimi takın. 6 delik olduğunu fark edeceksiniz. Bu konuda endişelenme. Ortadaki iki delik kullanılmayacaktır. Kartı ters çevirin ve düğmeyi yerine lehimleyin.

Bunun yerine şönt köprüleri kullanmak isterseniz, iki adet 3 pimli başlığı (pimlerin kısa tarafı aşağıda) üst taraftaki bu deliklere takın. Yine tahtayı ters çevirin ve pimleri yerine lehimleyin.

Ardından kızılötesi alıcıyı kartın üst tarafındaki 3 delikten geçirin. Yönünü serigrafi üzerindeki anahatla eşleştirin. gidebildiği kadar sokun ve küçük kabarcık tarafı tahtadan uzağa bakacak şekilde geriye doğru bükün. Tahtayı ters çevirin ve bunu yerine lehimleyin. Lehimlemeden sonra pimlerin fazla uzunluğunu alt taraftan çıkarmak için tel kesiciler kullanın.

Son olarak kondansatörü ekleyin. Pimleri, kızılötesi alıcının üzerindeki kalan iki delikten geçer. Kondansatörün yanındaki beyaz şerit ('-' negatif taraf) ATtiny85 soketinden uzağa bakar. Yine tahtayı ters çevirin, uçları yerinde lehimleyin ve fazlalığı tel kesicilerle kesin.

8. Adım: NeoPixel Ring'i ekleyin

NeoPixel Halkasını ekleyin
NeoPixel Halkasını ekleyin
NeoPixel Halkasını ekleyin
NeoPixel Halkasını ekleyin
NeoPixel Halkasını ekleyin
NeoPixel Halkasını ekleyin

NeoPixel halkası, yalıtımı kaldırılmış olarak 4 adet 22 gauge tek damarlı tel kullanılarak takılır. En az 4 inç uzunluğunda bir tel parçası keserek başlayın. Yalıtımın TÜMÜNÜ çıkarmak için tel sıyırıcılar kullanın.

Bu teli 4 eşit uzunlukta kesin. Her bir kabloyu bir uçtan yaklaşık 1/4 inç "L" şeklinde bükün.

Kartın alt tarafı yukarı bakacak şekilde bu kabloları kartın 4 köşesindeki deliklere yerleştirin. Bükülmüş kısım, tüm yol boyunca kaymalarını önleyecektir. Bunları yerinde lehimleyin ve bükülmüş fazlalığı alt taraftan tel kesicilerle klipsleyin.

Kartı ters çevirin ve NeoPixel halkası devre kartından uzağa bakacak şekilde telleri NeoPixel halkasının 4 deliğinden dikkatlice besleyin. NeoPixel halkasının deliklerini devre kartındaki deliklerle eşleştirmeye dikkat edin. Deliklerin adları her birinin üzerine basılmıştır. PWR, GND, IN ve OUT'u eşleştirin.

Halkayı devre kartına mümkün olduğunca yakın bir yere itin. Özellikle kondansatör ve IR sensörü çevresinde işler biraz sıkı olabilir. Yüzük sonuna kadar inmiyorsa, ter dökmeyin.

Halkayı devre kartına gidebileceği kadar yakın tutarak, şeyleri yerinde tutmak için kabloları bükün.

Halkayı tellere lehimleyin ve fazla teli tel kesicilerle klipsleyin.

9. Adım: USB Konektör Sekmesini ekleyin (isteğe bağlı Adım)

USB Konektör Sekmesini ekleyin (isteğe bağlı Adım)
USB Konektör Sekmesini ekleyin (isteğe bağlı Adım)
USB Konektör Sekmesini ekleyin (isteğe bağlı Adım)
USB Konektör Sekmesini ekleyin (isteğe bağlı Adım)

USB konektörünün doğrudan arkadan çıkmasını seçtiyseniz, şimdi onu daha önce eklediğiniz 4 pimli dik açılı başlığa takmanın zamanı geldi.

4 bakır USB kontağı kartın "CIRC" tarafına bakacak ve sekmenin "UITS" tarafı "123D" tarafına bakacak şekilde daha önce çıkardığınız sekmenin deliklerini dik açılı başlığa takın..

Bunu yerine lehimleyin.

Adım 10: ATtiny85'i ekleyin

ATtiny85'i ekleyin
ATtiny85'i ekleyin

8-pin DIP soketini lehimlediyseniz, şimdi ATtiny85'i takmanın zamanı geldi.

ATtiny85'i noktalı köşe devre kartındaki beyaz noktaya en yakın olacak şekilde hizalayın. ATtiny85'i yerine dikkatlice bastırın ve tüm pimlerin olması gereken yere gittiğinden emin olun.

Adım 11: USB Konektörünü Kalınlaştırın

USB Konektörünü Kalınlaştırın
USB Konektörünü Kalınlaştırın

Tipik olarak, aldığınız baskılı devre kartları, bir USB konektöründen beklenenden biraz daha ince olacaktır. Bunun basit bir çözümü, küçük bir kare Gorilla Tape kesmek ve bunu USB konektörünün arkasına eklemektir (USB bakır temas noktalarının olmadığı taraf!). Gorilla Tape, normal koli bandından yaklaşık iki kat daha kalın ve benim için mükemmel çalıştı.

Adım 12: Deneyin

Denemek
Denemek
Denemek
Denemek
Denemek
Denemek
Denemek
Denemek

Yeni gece ışığınızı elektrikli bir USB duvar adaptörüne veya başka bir USB prizine (bilgisayarınızda vb.) takın. Her şey yolunda giderse, yanması gerekir! İsteğe bağlı IR alıcıyı eklediyseniz ve ürün yazılımıyla çalışan bir uzaktan kumandanız varsa (resimlerdeki Apple TV uzaktan kumandası gibi), görüntüleme modunu değiştirebilirsiniz.

Alternatif olarak, düğmeyi kurduysanız, modları değiştirmek için ona basabilirsiniz.

Bunun yerine, şönt atlama teli başlıklarını taktıysanız, şönt atlama telleri, başlangıç görüntüleme modunu değiştirmek için konumlandırılabilir.

Adım 13: Şönt Jumper Ayarları

Şönt Jumper Ayarları
Şönt Jumper Ayarları

Şönt atlama teli başlıklarını kurmayı seçtiyseniz, başlatma modunu şönt atlama tellerinin konumlandığı yere göre ayarlayabilirsiniz:

Sol konum A + Sağ konum A: Dönen gökkuşağı modu

Sol konum B + Sağ konum A: Renk değiştirme modu

Sol konum A + Sağ konum B: Rastgele ışıltı modu

Sol konum B + Sağ konum B Değişmeyen düz renk modu

Adım 14: Uzaktan Kumanda Kullanma

Uzaktan Kumanda Kullanma
Uzaktan Kumanda Kullanma
Uzaktan Kumanda Kullanma
Uzaktan Kumanda Kullanma

EBay'de renkli LED aydınlatma ile çalışmak üzere tasarlanmış ucuz bir uzaktan kumanda buldum. Doğal bir uyum gibi görünüyordu. Her düğme tarafından oluşturulan kodları kaydettim ve donanım yazılımını buna göre hareket edecek şekilde ayarladım. Yukarıdaki resim, farklı düğmelerin ne yaptığını gösterir.

Bu uzaktan kumandaya sahip değilseniz, aynı Arduino kaynak kodunu kullanarak, ancak ATtiny85 yerine gerçek bir Arduino'da diğer uzaktan kumandaların çoğuyla ilişkili kodları bulabilirsiniz. Program, seri konsoldaki çoğu uzaktan kumandanın herhangi bir düğmeye basılmasıyla ilişkili bir kod verir. Bunu yapmak için, IR alıcı modülünü, 2, 3 ve 4 numaralı dijital pin başlık yuvalarına, lens kartın geri kalanına bakacak şekilde bağlayın.

Yukarıdaki resimde, 0xFD00FF kodu, DFRobot IR uzaktan kumanda güç düğmesine karşılık gelir. İşte Tinkercad'de çalışan kod. Denemek için "Kod"a, ardından "Seri Monitör"e ve ardından "Simülasyonu Başlat"a tıklayın. Bu noktada, seri konsol metin çıktısını görmek için sanal uzaktan kumandadaki düğmelere basmaya başlayabilirsiniz:

Bunları uzaktan kumandanızın her düğmesi için kaydedin. Ardından, uzaktan kumandanız için düğme kodlarını eklemek için kaynak kodunu değiştirebilirsiniz.