İçindekiler:

Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası: 4 Adım
Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası: 4 Adım

Video: Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası: 4 Adım

Video: Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası: 4 Adım
Video: AUDI TARZI KAYAR LED SİNYAL NASIL YAPILIR w/ Arduino 2024, Kasım
Anonim
Image
Image
Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası
Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası
Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası
Programlanabilir LED'leri Kullanan Entegre Flaşörlü Motosiklet Kuyruk Lambası

Merhaba!

Bu, motosikletiniz veya muhtemelen WS2812B (bireysel olarak adreslenebilir led'ler) ve Arduinos kullanan herhangi bir şey için özel bir Programlanabilir RGB Kuyruk Lambasının (entegre flaşörler/göstergelerle) nasıl yapılacağına dair biraz kolay bir DIY'dir. Bir basma düğmesi kullanılarak değiştirilebilen 4 aydınlatma modeli modu vardır.

Böyle bir arka lamba yapma fikri, motosikletimi aldığım ilk günden beri vardı ama o zaman, bir tane yapmak için izlenecek yöntemden emin değildim ve meşgul olduğum için gerçekten zamanım yoktu. benim kolejim. İlk planlarım, RGB ledleri satın almak ve bunları motosikletimin arka lambasındaki stok ledlerle değiştirmek ve entegre flaşör işlevselliğini eklemek için bazı yeniden kablolama yapmaktı. Böyle bir uygulama, RGB ledler üzerindeki KIRMIZI-YEŞİL-MAVİ kontrol tellerinin her biri için çok karmaşık bir devre ile biten birkaç transistör ve voltaj regülatörü gerektirecektir.

Ancak bu fikre çok kafayı takmıştım, bu yüzden RGB ledleri ve gerekli diğer bileşenleri almaya karar verdim, ancak bir elektronik mağazasındaki bir adam beni bireysel olarak adreslenebilir veya programlanabilir ledler olarak bilinen bir tür ledle tanıştırdığında tüm planlarım değişti. O zamanlar benim için yeni bir şeydi) RGB ledlere benziyordu, ancak her led, Arduino kontrolörleri ve tüm şerit için yalnızca tek bir kontrol kablosu kullanılarak herhangi bir sırayla veya renkte yanacak şekilde ayrı ayrı kontrol edilebilir. O andan itibaren, bu ledlerin nasıl çalıştığını öğrenmekle…onları nasıl programlayacağımı…devrenin farklı tasarımlarından ve prototiplerinden geçerek…çok ve çok sayıda sorun gidermeden başlayarak bu projeyi tamamlamam neredeyse bir yılımı aldı. Projemin son iki ayında, boktan tasarımımın bir parçası olarak her gün meydana gelen bir dizi hata ve bileşen arızası olduğu için oluyor. Devremdeki bazı kusurları düzeltme sürecinde, yeni sorunlar çıkıyor ve bu sık sık olmaya devam etti. ve başka herhangi bir şeye konsantre olmamı neredeyse imkansız hale getirdiği benim için tam bir stresti). Bu projenin sonunda bir hasarlı Arduino, birkaç yanmış LM7805 IC ve direnç, çok ve çok sayıda şerit pano ve ledden geçtim. bunların hepsi, bu projeye harcadığım paranın neredeyse yarısına tekabül ederdi.

Bu proje benim yapabileceğim bir şeydi ya da gerekli tüm parçalara sahip olmanız şartıyla muhtemelen 20 gün içinde bitirebilirsiniz. Bu kadar uzun sürmemin nedeni üniversitem yüzünden haftalarca, aylarca para olarak sipariş edilen ürünlerin bekleme süresinin benim için bir sorun olması ve sonunda tüm bunların gerçekten aptalca bir fikir olup olmadığını ve bunun ne anlamı olduğunu kendi kendime düşünmemdi. Aslında bunu yapmak için zamanımı ve paramı boşa harcıyorum. Her neyse, bu projeyi yapmaktan tamamen zevk aldım ve neredeyse bir yıl boyunca beni meşgul etti ve eminim siz de yapacaksınız. Bu yüzden sizi DIY'e davet ediyorum!

Adım 1: Gerekli Bileşenler

Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler

Gerekli bileşenler, bu projeyi nasıl uygulamayı planladığınıza bağlı olarak değişebilir. Örneğin, birden fazla örüntüye sahip olabilmek ve bu örüntüler arasında geçiş yapabilmek için iki Arduino kullanmıştım. Ancak, yalnızca entegre flaşör/göstergeyi fren lambası işlevine sahip istiyorsanız, bunu yalnızca bir Arduino ile yapabilirsiniz. Aynı şekilde tasarımımda kullanılan ısı alıcılar da aşırıya kaçmıştı ve amacım için hiç gerekli değildi. Bu yüzden gereksiz olduğunu düşündüğünüz, sadece aptal, deneyimsiz ve aşırı endişeli olduğum için kullandığım bu tür bileşenleri ortadan kaldırabilirsiniz (yine de devremi birkaç kez bozmayı başardım). Bu projeyi oluşturmak için kullandığım bileşenlerin listesi aşağıdadır:

  • WS2812B LED'leri (amacınıza ne kadar ihtiyacınız olduğuna bağlı olarak)
  • ARDUINO NANO x2
  • LM7805 x5 (12v'yi aküden 5v'ye dönüştürmek için voltaj regülatörü)
  • 10kΩ direnç x5
  • teller
  • Konektörler (MALE(x2) & FEMALE(x2) anakart-smps konektörlerini kullandım)
  • Basma düğmesi (modlar arasında geçiş yapmak için) x1
  • Şerit Kurulu x2
  • Isı Emici x5
  • Plastik Konteyner x1

Dediğim gibi, gerekli parçalar gerçekten bu projeyi nasıl uygulamayı planladığınıza bağlı.

Adım 2: Arduino, WS2812B Ledleri ve FastLED Kütüphanesi (Programlama ve Test Etme)

Arduino, WS2812B Ledler ve FastLED Kütüphanesi(Programlama ve Test)
Arduino, WS2812B Ledler ve FastLED Kütüphanesi(Programlama ve Test)
Arduino, WS2812B Ledler ve FastLED Kütüphanesi(Programlama ve Test)
Arduino, WS2812B Ledler ve FastLED Kütüphanesi(Programlama ve Test)
Arduino, WS2812B Ledler ve FastLED Kütüphanesi(Programlama ve Test)
Arduino, WS2812B Ledler ve FastLED Kütüphanesi(Programlama ve Test)

Bu nedenle, gerçek devreyi yapmadan önce yapmanız gereken ilk şey, devre tasarımınızın gerçekten çalışıp çalışmadığını ve programınızın olması gerektiği gibi çalışıp çalışmadığını kontrol etmektir. Tüm bunlar, bileşenleri bir devre tahtası üzerinde test ederek ve bileşenlerden herhangi birinde veya devrede herhangi bir sorun varsa yapılabilir. Mükemmel çalışma devresini elde edene kadar her zaman farklı seçeneklerle yeniden deneyebiliriz. Bu projeyi tamamlamamın bu kadar uzun sürmesinin nedenlerinden biri, bu proje için acele etmem ve farklı giriş sinyali kombinasyonları için ilk devre tasarımını test etmememdi. Bu, devrenin yeniden kablolanmasının yanı sıra birçok bileşen değişikliğinden geçmek zorunda kaldı.

Tartışılması gereken ilk şey, bu projede kullanılan LED'in türü ve bunları istediğimiz gibi çalışacak şekilde nasıl programlayabileceğimizdir. Kullandığım ledin modeli WS2812B idi ve genelde tek tek adreslenebilir ledler olarak bilinirdi. Bu LED'lerin farklı isimlere sahip çeşitli modelleri var ve bunların arasındaki farkın ne olduğu hakkında hiçbir fikrim yok, tek bildiğim farklı modellerin renk sıcaklıklarında farklılık gösterdiği ve bazılarında veri pinine ek olarak bir saat pininin olduğu.

Bu LED'leri kontrol etmek için, bu projede kullanılan LED türlerini kontrol etmek için kullanılan bir arduino kütüphanesi olan FastLED kütüphanesi ile birlikte Arduino denetleyicisini (test için UNO ve MEGA'yı ve son devrem için NANO'ları kullandım) kullanıyoruz. Bu kütüphane GITHUB REPO'dan temin edilebilir.

Bu yüzden programları Arduino'ya yüklemeden önce dikkat etmemiz gereken ilk şey, FastLED kütüphanesini Arduino IDE'ye eklemektir. Bunun nasıl yapılacağına ilişkin adımlar burada bulunabilir.

Bu proje için, biri LED'e sinyal göndermek ve diğeri farklı aydınlatma modları veya desenleri arasında geçiş yapmak için iki Arduino kullandım. Yalnızca tek bir mod/varsayılan model istiyorsanız, tek ihtiyacınız olan bir arduino.

Programları aşağıdaki linkten indirebilirsiniz.

Şimdi size programlar arasında yol göstereceğim ve kurulumunuza göre nelerin değiştirilmesi gerektiğini anlatacağım. Ledact ve ledpatt2 adında iki program olduğunu görebilirsiniz. Program ledact, modlar/kalıplar arasında geçiş yapmak için kullanılan arduino içindir ve ledpatt2 programı ledleri kontrol eden programdır. Aynı iki programı nano adlı farklı bir klasörde de görebilirsiniz. UNO veya MEGA'dan daha az belleğe sahip ARDUINO NANO ile kullanabilmeniz için boyut olarak daha küçüktür.

Öncelikle ledpatt2'de devrenize göre nelerin değişmesi gerektiğini görelim. Öncelikle 3-4. satırlardaki NUM_LEDS ve DATA_PIN'i kullandığınız led sayısı ve ledinizin data sinyalinin bağlı olduğu arduino üzerindeki pin numarası ile değiştirmeniz gerekiyor. Daha sonra kullandığınız ledlerin cinsine göre 18 deki kodu değiştirmeniz gerekmektedir. Örneğin, BRG(MAVİ-KIRMIZI-YEŞİL) kalibrasyonlu WS2812B ledleri kullandığım için kodum thta gibidir. Farklı bir led kullanıyorsanız, koddaki WS2812B'yi ledinizin adıyla değiştirin ve BRG'yi renk kalibrasyonuyla değiştirin. Ledinizin renk kalibrasyonunu öğrenmek için buradaki makaleyi takip edebilirsiniz.

Yalnızca tek bir desene ihtiyacınız varsa, 15-25 satırlarından 15-21'den kaçınılabilecek birkaç başlatma görebilirsiniz. 15-21 satırlarında bahsedilen bu pinler farklı modları tetiklemek için kullanılır ve bu diğer Arduino kullanılarak yapılır. 22-25 numaralı hatlar kodda belirtildiği gibi fren, park ve flaşör/gösterge lambaları için giriş sinyallerini almak için kullanılır.

Ledact'te, sadece bu proje için olduğu gibi çalışmasını istiyorsanız, 4-8 satırları hakkında endişelenmeniz gerekir. 4-7 arasındaki satırlar, modların her birini tetikleyen pinlerdir. Sadece 4 mod istediğim için 4 pin kullanıldı. Hat 8, basma düğmesinin bağlı olduğu pin olan modePin'i başlatmak için kullanılır. Kodda, 4 mod için arduino pinleri 3, 4, 5, 6'nın kullanıldığını görebilirsiniz. Bu pinler ledpatt2 programı ile yüklenen arduino üzerindeki 3-4-5-6 pinlerine direkt olarak bağlanır.

Bu, farklı desenlere sahip led ışıkları uygulama yöntemimdi ve bence oldukça tutarsız. Tüm bunları sadece bir Arduino kullanarak yapmanın mümkün olup olmadığını internette çok aradım ama bana yardımcı olan hiçbirini bulamadım. Bunu nasıl yapacağınızı biliyorsanız veya programlama konusunda çok iyiyseniz, zayıf kodlama becerilerimden dolayı programım çok kötü niyetli ve hantal olduğu için onunla devam etmenizi öneririm. Ve lütfen sonuçlarınızı bizimle paylaşın.

Adım 3: Devre Kurulumu

Devre Kurulumu
Devre Kurulumu
Devre Kurulumu
Devre Kurulumu
Devre Kurulumu
Devre Kurulumu

Devreyi tam olarak anlıyorsanız veya devre uygulaması için iyi düşünülmüş bir planınız varsa, bu oldukça kolay bir adımdır. Devredeki bileşenler size kafa karıştırıcı geliyorsa, bu çok basit bir devre olduğu için sizin için çözeceğim. İlk olarak, 12v'yi 5v'ye dönüştürmek için kullanılan beş LM7805 IC'ye sahibiz (bu voltaj arduino giriş pinleri için güvenlidir), dördü fren, park ve L-R flaşör sinyallerini almak için kullanılır, diğeri iki arduinoya güç sağlamak için kullanılır. Ardından, giriş terminallerinin her birine paralel bağlanmış birkaç 10k ohm direncimiz ve son olarak iki arduinomuz var.

Devreyi Fritzing kullanmadan önce yapılan devre tasarımına atıfta bulunarak yaptım. Konnektörler için SMPS-MOTHERBOARD MALE/FEMALE konnektörler kullanılmıştır. Resimleri inceleyip takip edebilirsiniz.

Bu devre, herhangi bir koruma veya filtre devresi olmadığı için en iyisi değil ve bunlardan hiçbirini dahil etmememin nedeni tam bir acemi olmam. Ayrıca IC'lerle birlikte kullanılan soğutucular eski bir SMPS'den çıkarılıp onlarla birlikte termal macun kullanıldı. Ancak bazı elektronik meraklıları, bu uygulama için ısı alıcı kullanımının aşırıya kaçtığını ve IC'lerin bu devrede herhangi bir ısı alıcıya ihtiyaç duymadan çalışacağını söyledi. İşte bu kadar.

Adım 4: Son Adım: Boks ve Motosiklette Kurulum

Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık
Son Adım: Boks ve Motosiklette Hazırlık

Devre için kasa olarak plastik kap kullanılmış ve devremizde su istemediğimiz için etrafına izolasyon bandı sarılmıştır. Sıradaki iş, her şeyi bağlamak ve motosikletin kablolarını yapmaktır. Motosikletin elektriği üzerinde çalışırken çok dikkatli olmalısınız, çünkü herhangi bir kısa devre motosikletin elektroniğine tamamen zarar verebilir. Motosikletinizin kablo tesisatına aşina değilseniz, servis kılavuzlarına bakabilir veya internette arama yapabilirsiniz. Kalan görev, stok arka lambanızı çıkarmak ve içindeki LED'leri WS2812B olanlarla değiştirmek. Bundan sonra, nemin girmesi için delikler veya boşluklar bırakmadan lambayı yeniden paketleyin ve yeniden kapatın. Devre kutusunu motosikletin arka selesinin altındaki saklama bölmesinin içinde tutabilirsiniz. Sonunda her şeyi bağlayın, gücü açın ve motosikletinizi gezintiye çıkarın. Proje çok fazla iş gibi görünse de, nihai sonucun sizi deli bir delikanlı gibi sevindireceğinden emin olabilirsiniz. OKUDUĞUNUZ VE KEYFİNİZ İÇİN TEŞEKKÜRLER!

Önerilen: