
Peter Holmes
0
2809
891
Yeni başlayan bazı Arduino projeleriyle uğraşıyorsanız, ancak biraz kalıcı ve başka bir harika seviyede bir şey arıyorsanız, mütevazı 4 x 4 x 4 LED küp doğal bir seçimdir. İnşaat düşündüğünüzden çok daha kolaydır ve bir çoğullama kullanarak tüm LED'leri doğrudan tek bir Arduino Uno panosundan kontrol edebiliriz. Mükemmel lehimleme uygulamasıdır ve bileşenlerin toplam maliyeti yaklaşık 40 $ 'dan fazla olmamalıdır.
Bugün herşeyin yapımını ayrıntılı olarak anlatacağım ve üzerinde etkileyici görünen ve size temelleri öğreten bazı yazılımlar sunacağım..
İhtiyacın olacak
- Bir Arduino. Sağlanan kod bir Arduino Uno varsayar, ancak daha büyük bir modele de uyarlanabilir.
- 64 LED - doğru seçim size kalmış, ama ben bu süper 3mm Mavi LED'leri kullandım (3.2v 30ma) 50 için 2.64 £.
- 16 Dirençler LED'leriniz için uygun değer. Yukarıdaki LED'ler için 99 peni bunlardan 100'ünü aldı. Ledcalc.com kullanın - besleme gerilimi, LED'lerin gerilimi (benim durumum 3.2'de) ve miliamperdeki akımı (3.2) için 5v girin. İstediğiniz direnç etiketli kutuda gösterilecektir “En yakın en yüksek direnç”, o zaman eBay'de bu değeri arayın..
- Bazı zanaat teli Temel yapıyı güçlendirmek ve dekorasyon için - Ben kullandım 0.8mm kalınlık.
- bir prototip kurulu Tüm bitlerinizi lehimleyebileceğiniz bir tür. Bir iz kesicim olmadığı için üzerinde tam izleri olmayan bir tane kullandım, ancak size uygun olanı kullanın. Bir Arduino prototipleme kalkanı, LED'lerinizi gerçekten sıkmadıkça, biraz fazla küçük.
- Rastgele bileşen teli - bazı ağ kablo telleri ve bir kitin prototipleme tellerinin bazıları düzgün çalışacaktır.
- Timsah klipleri veya “yardımcı Eller” bitleri yerinde tutmak için kullanışlıdır.
- Havya ve lehim.
- Bazı hurda odun.
- LED'lerinizle aynı boyutta bir matkap.
Not: Bu eğitimdeki 3D çizimler TinkerCAD kullanılarak dakikalar içinde yapıldı. Bunu denemeden önce okumak isteyebileceğiniz forte1994 kullanıcısı tarafından Çalıştırılabilir Öğeler bölümünde ayrıntılı olarak açıklanan mevcut bir yapı takip ettim..
Tüm bu talimatları okuduğunuzdan emin olun. ilk bunu kendiniz denemeden önce.
Bu Tasarımın Prensibi
İnşaata başlamadan önce, bu şeyin nasıl işe yarayacağına dair tam bir genel bakış olması önemlidir; böylece ilerlerken hataları doğaçlama ve tanımlayabilirsiniz. Bazı LED küpleri her LED için tek bir çıkış pimi kullanır - ancak 4x4x4'lük bir küpte gerekebilir 64 iğneler - Arduino Uno'da kesinlikle sahip değiliz. Bir çözüm vardiya kayıtlarını kullanmak olacaktır. Arduino Programlama - Vardiya Kayıtlarıyla Çalma (a.k.a Daha Fazla LED) Arduino Programlama - Vardiya Kayıtlarıyla Çalma (a.k.a Daha Fazla LED) Bugün size Vardiya Kayıtları hakkında biraz öğretmeye çalışacağım. Bunlar Arduino programcılığının oldukça önemli bir parçasıdır, çünkü temel olarak, kullanabileceğiniz çıktı sayısını arttırırlar… karşılığında, ancak bu gereksiz yere karmaşıktır..
Tüm bu LED'leri sadece 20 pinte kontrol etmek için, multiplexing adı verilen bir teknik kullanacağız. Küpü 4 ayrı katmana ayırarak, yalnızca 16 LED için kontrol pinlerine ihtiyacımız var - bu nedenle belirli bir LED'i yakmak için, bize toplam 16 + 4 pin gereksinimi veren hem katmanı hem de kontrol pinini etkinleştirmeliyiz. Her katmanın ortak bir katodu vardır - devrenin negatif kısmı - böylece tüm negatif ayaklar bir araya getirilir ve bu katman için tek bir pime bağlanır.
Anot üzerinde (pozitif) tarafında, her LED üstündeki ve altındaki katmandaki ilgili LED'e bağlanacaktır. Temel olarak, 16 pozitif bacak sütunumuz ve 4 negatif katmanımız var. İşte size anlamanıza yardımcı olacak bağlantıların bazı 3B görünümleri:
İnşaat
Lehimlemek için tam bir metal yapı kullanmayacağımızdan, LED'lerin tüm bacaklarının yaklaşık dörtte bir üst üste gelmesini ve yapıya sağlamlık vermesini istiyoruz. Şemada gösterildiği gibi, LED'lerin katodunu (kafasında yassı çentik bulunan taraf ve kısa bacak) katlayın. (Tutarlı bir şekilde sola veya sağa bükmeniz gerçekten önemli değil, tutarlı olduğunuz ve anotla hiç temas etmediği sürece)
Bu projenin ilk kritik kısmı ahşap bir aparat yapmaktır. Bacakları birlikte lehimlendiriyorsanız bu bir LED katmanı tutacaktır, bu yüzden doğru olması ve fazla gevşek olmaması gerekir. LED'lerinizle aynı boyuttaki matkap ucunu kullanarak, 4 × 4'lük bir matris ölçün ve ardından delin eşit uzaklıkta delikleri. Bacağının yaklaşık dörtte birinin komşusuyla üst üste gelmesini istediğinizi unutmayın ve gerçek bir cetvel kullanın. Bir LED'in rahatça sığabildiğinden emin olmak için her deliği kontrol edin, ancak tekrar elde edemeyeceğiniz kadar sıkı olmadığından veya tamamen lehimli bir katmanı çıkarmaya çalışırken sorun yaşamayacağınızdan emin olun.
4 sıra LED katotunu lehimleyin. LED'leri yakmamaya dikkat edin - iyi bir sıcak ütü ve içeride ve dışarıda olmak istersiniz. İşte ilk dört satırım tamamlandı.
Şimdi, katmanın sertliğini güçlendirmek için, iki düz uç tel telini her iki ucuna da kesip lehimleyin, her bir sıraya bağlandıklarından emin olun. Bu sizin ilk katmanınız tamamlandı. Şimdilik fazla bacakların yan tarafa yapışmasını sağlayın.
Şimdi test etmek için harika bir zaman olurdu - yalnızca varsayılan Arduino yanıp sönme uygulamasını yükleyin ve bir direnç bağlıyken, zemini katman çerçevesine yerleştirin ve sırayla her bir LED'e pozitif kurşun basın.
Umarım, hepsi aydınlanır. Değilse, bir yerde bir lehim ek yerini kaçırmadığınızdan emin olun ve gerekirse LED'i değiştirin.
Bu katmanı kalıptan çıkarın ve işlemi tekrarlayın 3 kez daha.
Lehimlemeniz mükemmel değilse endişelenmeyin - kırılmayacağı ve bağlantı sağlam olduğu sürece nihai ürünü etkilemeyecektir. Kabul ediyorum, lehim oldukça umutsuzdu, jigim kapalıydı ve hepsi Pisa kulesine benziyordu. Yine de, bitmiş küple gurur duyuyorum ve LED'ler yandığında, lehim bağlantılarına bakmayacaksınız.!
Katmanları Birleştirme
4 katmanı tamamladıktan sonra, tüm dikey bacakları bir araya getirmek isteyeceksiniz. Bunu yapının en zor kısmı olarak buldum ve bu sürece yardımcı olmak için karttan bir yükselticiyi kestim.
Bu, katmanları uygun yükseklikte tutuyordu, ancak çoğu bacak hala mükemmel şekilde hizalanmıyordu - bunun için onları yerinde tutmak için bazı timsah klipsleri kullandım.
Önlemek için 1. Aptal Hata
Sadece tam bir katmanı tamamladıktan sonra kart yükselticimin yerine oturduğunu fark ettim, bu yüzden kesmek zorunda kaldım! Yaptığım aynı hatayı yapmayın - yükselticiyi daha uzun kenara koyun ve kart parçalarını küpün dışında birleştirin, böylece katmanı tamamladığınızda yükselticiyi yapıştırabilir ve kartı çıkarabilirsiniz..
Kaçınmak için 2. aptal hata
Belli ki dikey bacağını katot çerçevesine lehimlemeyin. Dikey bacaklar sadece diğer dikey bacaklara bağlanmalıdır, başka hiçbir şey yapmamalıdır..
Yine, her katman eklendikten sonra test edin. Tüm katmanları test edin, aslında sadece pozitif kurşunu en üst katın ucuna değdirerek tüm katmanlardan geçerek iyi bir temasta olmanızı sağlar.
4 katın hepsi de lehimlendiğinde biraz temizlemeye karar verdim - bir tek bacağını bir tür basamaklı taş şeklinde uzattı - bu daha sonra tahtaya bırakılacaktı. Diğer metal çerçeve parçaları ve ayaklar kesildi. Açıkçası, dikey bacaklardan hiçbirini kesmeyin - bunları prototip tahtamıza koymamız gerekir.
Tahtaya sabitleme
Her katmanı kendisine sabitlemenin en zor kısım olduğunu söylediğimi hatırlıyor musun? Yalan söyledim. Bir prototip tahtasında 16 LED bacağı minik deliklere takmaya çalışmak aslında daha zordur. Bulduğum en kolay yol, bir seferde 4'e kadar dürtmek, onları timsah klipsleriyle altına sabitlemekten sonra 4 sıradaki sıraya geçmek oldu..
Geçmişe bakıldığında, aslında dirençleri ilk önce protokole yerleştirirdim. Olduğu gibi, önce küpün tüm bacaklarını tahtaya lehimledim, sonra her biri arasındaki dirençleri dikkatlice sıkıştırmaya çalıştım. Benim hatamdan öğren ve önce dirençlerini yerleştir.
Onları adım adım eşit şekilde yerleştirmeye çalıştım, böylece küpün bir tarafını Arduino ile tüm son bağlantılar için kullanabilirdim. İşte birlikte çalıştığım devre şeması:
Dört negatif katman için, her katmandan tek bir teli düşürdüm, sonra bunları yana doğru çektim, şöyle:
Sonunda ilgili Arduino pinlerine yerleştirebileceğim bazı fiş telleri ekledim. Sahip olduğunuz en uzun çeşidi kullanın. Not Kötü planlama nedeniyle siparişleri berbat ettim. Her LED sırası olsa renk kodluydu.
Bu kadar. bitirdi!
Küpünü Programlama
Bunun tetiklenmesini bekleyemeyeceğinizi biliyorum, bu yüzden 4 negatif katmanı takın. Analog I / O bağlantı noktaları A2 (alt katman) vasitasiyla A5 (üst katman) (bunlar dijital G / Ç olarak da işlev görebilir). Ardından, 16 LED kontrol pimini prize takın. +1 en sağda için dijital I / O port 0, ile +15 ve +16 analoga gidiyor A0 ve A1. (AREF ve GND kullanmayın)
Tanıtım kalıplarını ve kodunu eğitilebilir kullanıcıdan indirin forte1994. Ayrıca, kendi dizinizi kişiselleştirmek için bayt desenlerini tasarlamak için yararlı bir çevrimiçi araç sağladı. İşte bu kodun küpümdeki bir videosu (Hızı varsayılan 20 yerine 5'e ayarlarım).
Tabii ki küpünüzü programlamanın tek yolu bu değil, o yüzden birkaç dakikanızı ayırarak kendi kalıplarınızı oluşturmanın temellerini öğretmeme izin verin programlı, Yukarıdaki demonun yaptığı gibi önceden ayarlanmış kalıpları oynatmak yerine.
Küpünüzü programlamaya çalışırken bilmeniz gereken birkaç şey var:
- Tek bir LED'i adreslemek için uçak (katman) 0-3 numara ve bir LED pim numarası 0-15. LED'i etkinleştirmek için düzlemi DÜŞÜK çıkışa (çünkü bu negatif bacak) ve LED pim numarası YÜKSEK (pozitif bacak) olacak şekilde çevirin.
- Tek bir LED'i etkinleştirmeden önce, diğer tüm uçakların kapalı olduğundan emin olun - bu, onları YÜKSEK çıkışa ayarlayın. Bunun yapılmaması, tek bir LED yerine bir LED kolonunun yanmasına neden olacaktır..
Bunu göz önünde bulundurarak, incelemeniz için çok basit iki programlı dizi yaptım - kodu buradan indirin. Birincisi, sırayla her LED'i birer birer yakar. Bunun için iki döngü kullanıyoruz, bunun için her katmanı ve her kontrol pimini yineliyoruz.
İkincisi rastgele bir döngüdür (ilkini yorumlamanız ve bunu test etmek için ana döngüde etkinleştirmeniz gerekir). Sadece rasgele bir katman ve rasgele kontrol pimi seçerek onları açar ve kapatır..
özet
Bu oluşumdan korkma - Cidden lehimleme becerilerinden yoksunum ve bunu iyi idare ettim (Bence?). Toplam inşa süresi bir hafta kadar bir saat kadar bir gündü. Bir dahaki sefere size küp için daha iddialı bir programlama öğretmeye çalışacağım, umarım bu hafta kendi küpünüzü oluşturmak ve gelecek hafta yeni bir kod yüklemek için bana katılırsınız. harika uygulamalar veya diziler, lütfen onları Pastebin'e yükleyin ve yorumlarda bize bildirin.!