Hareketli LED Matrix ile Noel Çelenkinizi Yükseltin

  • Edmund Richardson
  • 0
  • 5298
  • 454
reklâm

Noel yine burada, ve yılın en sevdiğiniz tatili olsun ya da sizi soğuk bir ter içinde ortaya çıkarsa, süslemeler yükselmeye başlıyor. Bu yıl, neden bazı DIY teknolojilerini öne çıkaran süslemelerinize dahil etmiyorsunuz??

Bu projede, 20 doların altındaki fiyatlara sıfırdan hareketle 8 x 8 LED matrisle harekete geçirilmiş, hava koşullarına dayanıklı, hareket eden bir bina yapacağız. Evin her yerinde kullanılabilmesine rağmen, standart bir Noel kapı çelengi merkezine uyacak şekilde tasarlanmıştır. Ve pille çalıştığı için, evden uzakta bir yerlere de!

Parça listesi

Bu proje için ihtiyacınız olacak:

  • Arduino.
    • Nano'yu küçük boyutu için kullandım, ancak neredeyse her Arduino uyumlu mikrodenetleyiciyi kullanabilirsiniz. Arduino Satın Alma Rehberi: Hangi Kartı Almalısınız? Arduino Satın Alma Rehberi: Hangi Kurulu Almalısınız? Dışarıda pek çok farklı Arduino tahtası var, kafanız karıştığı için affedilirsiniz. Projeniz için hangisini satın almalısınız? Bu Arduino satın alma rehberi ile yardım edelim! .
  • 64 x kırmızı LED.
  • 8 x 220 Ohm dirençleri.
  • Pir hareket sensörü.
    • Birçok Arduino başlangıç ​​kiti Bir Arduino Başlangıç ​​Kitine Neler Dahil? [MakeUseOf Açıklar] Bir Arduino Başlangıç ​​Kitine Neler Dahil? [MakeUseOf Açıklıyor] Arduino açık kaynaklı donanımını daha önce MakeUseOf'ta tanıtmıştım, ancak bir şey oluşturmak ve gerçekten başlamak için gerçek Arduino'dan daha fazlasına ihtiyacınız olacak. Arduino "başlangıç ​​kitleri"… bunlarla birlikte geliyor. Amazon'dan 10 dolarlık bir paket aldım.
  • 1 adet prototip kurulu.
    • Burada kullanılan, 9 x 7 cm idi, ancak istediğiniz boyutu kullanabilirsiniz.
  • 7-12V batarya.
    • Bütçe nedenleriyle basit bir pil takımı burada kullanılıyor, ancak mobil bir banka şarj cihazı En İyi Pokemon Go Güç Bankaları En İyi Pokemon Go Güç Bankaları Pokemon Go, bir telefonun pilini hallediyor. Telefonunuzdan biraz daha fazla Pokemon yakalama suyu sıkmak için bir güç bankası gerekir. Ama orada en iyi pil nedir? daha uzun sürebilir.
  • Çeşitli kısa tel parçaları.
  • Tupperware kutusu veya benzeri hava koşullarına dayanıklı muhafaza.
    • Tüm bileşenlerinizi içine sığacak kadar büyük olduğundan emin olun!
  • Yılbaşı çelengi.
    • Herhangi bir şey yapacak, sadece muhafaza kutusunun içine sığdığından emin olun.
  • Havya ve lehim.

Bileşenleri doğrudan Nano'ya lehimleyebildiğiniz için kesinlikle gerekli olmamakla birlikte, test ederken çok kullanışlı küçük bir breadboard buldum. Sıcak tutkal tabancası ayrıca tüm parçaları bir araya getirmede yardımcı olur.

Bu proje oldukça fazla lehim gerektiriyor ve yeni başlayanlar için göz korkutucu görünebilir. Ben şahsen hala çok fazla lehimlemeye başlıyorum ve göründüğü kadar zor veya zaman alıcı olmadığını buldum. Ayrıca burada lehimleme konusunda yeniyseniz bazı basit ipuçları ve projelerle lehimlemeyi öğrenin Bu basit ipuçları ve projelerle lehimlemeyi öğrenin Bu basit ipuçları ve projelerle biraz demirin mi? erimiş metal? Elektronikle çalışmaya başlamak istiyorsanız, lehim yapmayı öğrenmeniz gerekecektir. Bize yardım edelim. .

Eğer lehimleme fikrine gerçekten hevesli değilseniz, bu proje aynı zamanda LED şeritler ile de mümkündür. Hafta Sonu Projesi: Dev bir LED Piksel Ekran Oluşturun Hafta Sonu Projesi: Dev bir LED Piksel Ekran Oluşturun LED pikselleri seviyorum: parlak, kontrol etmesi kolay, ucuz ve çok yönlü. Bugün, onları duvara asılabilen büyük bir piksel ekrana dönüştürüyoruz. veya başlangıç ​​kitinizde bulabileceğiniz hazır bir LED matrisi. O rotaya gitmeye karar verirseniz, bazı kod ayarlamaları gerekecektir..

Arduino'yu Kurmak

Arduino devre şeması ile başlayacağız ve PIR sensörümüze ve LED matrisimize bağlayacağımız teller ile başlayacağız..

Matrisin İçinde

Şimdi 8 x 8 LED matrisimizi yapmak için. Prototip tahtasında tam olarak istediğiniz yerde olduğundan emin olmak için bir satır ve bir matris sütunu oluşturmakla başlamak iyi bir fikirdir..

Yukarıdaki fotoğrafta, tüm LED'ler anotların (uzun, pozitif ayak) protokolün üst kısmına bakacak şekilde yerleştirilmiştir. Bu, bir araya getirerek ortak anot sütunları ve ortak katot sıraları (daha kısa, negatif bacak) oluşturacağımız için önemlidir. Bunu şimdi almak, daha sonra baş ağrısından kurtulmanızı sağlar!

Ortak bir satır katot matrisi oluşturacağız, bu şema hepsinin nasıl bağlandığını gösteriyor.

İlk başta biraz göz korkutucu görünebilir, ancak oldukça basit bir yapılandırma. Her sırada, tüm katotlar sağdan sola birleştirilir ve Arduino pinlerimizden birine bağlanır. Bundan sonra, her anot sütunu için aynısını yaparız. Bu şekilde, hangi sütuna güç uyguladığımıza ve hangi sırayla toprağa katıldığımıza bağlı olarak, dizideki herhangi bir LED'i açabiliriz.

Lehimleme Başlasın

İlk LED sıranızı yerleştirerek başlayın. Tüm anotların üste baktığından emin olun ve ters çevirin. Her köşeye başka bir LED eklemenin ve elastik bir kordon kullanarak üstüne başka bir prototip takmanın her şeyin yerinde kalmasına yardımcı olduğunu buldum.

Şimdi, her biri LED'in katot (kısa) bacağını birer birer sola doğru bükün, böylece hepsi birbirleriyle örtüşürler. Sol taraftan başlamak ve sağdan çalışmak en kolay yoldur. Daha büyük bir panel parçası kullanıyorsanız, ilk önce onları tahtaya lehimleyebilir ve pedleri kullanarak birbirine bağlayabilirsiniz. Herhangi bir katottan herhangi birinin tahtadaki veya herhangi bir anottaki herhangi bir çizgiye katılmamasına dikkat edin.!

Sekiz satırın tamamı için bu işlemi tekrarlayın ve işiniz bittiğinde şuna benzeyen bir şeye sahip olmalısınız:

Atlama Anotları!

Anotların sütunları biraz daha düzensizdir. Yukarıdaki şemada, anotlar bir katod sırasını her geçtiklerinde eğridir. Bunun nedeni, satırlara hiç dokunamamasıdır. Anotları katot sıralarının üzerine büküp birbirimize takmalıyız. Bacakları bükmek için bir kalem kullanarak çok yardımcı olduğunu bulabilirsiniz.

Bunu her anot satırı için yapın ve her üst anoda bir direnç bağlayın. Direnci protokoldeki bir sonraki deliğe koymak ve lehim kullanarak pedleri birleştirmek daha kolay olacaktır. Şimdi böyle bir şeye sahip olmalısınız:

Tebrikler! LED matrisi tamamlandı. Herhangi bir kırılma olmadığından ve sütunların hiçbirinin satıra değmediğinden emin olmak için lehiminizi iyice kontrol edin. Endişeli görünmüyorsa endişelenme, sadece çalışması için ihtiyacımız var! Her LED'i şimdi sütun uçlarının herhangi birine 5v ekleyerek ve sıra uçlarından herhangi birine topraklayarak kontrol edebilirsiniz..

Her şey yolundaysa, her bir sütuna ve her satıra bağlantı kabloları takın ve yukarıdaki şemada gösterildiği gibi Arduino'nuza takın.

Kodlama Alalım

Arduino IDE'yi açın ve kartınızı ve portunuzu seçin. Arduino'da yeniyseniz bu başlangıç ​​kılavuzuna bakın. Arduino ile Başlarken: Başlangıç ​​Kılavuzu Arduino ile Başlarken: Başlangıç ​​Kılavuzu Arduino, esnek, kullanımı kolay donanım ve yazılımı temel alan açık kaynaklı bir elektronik prototip platformudur. Sanatçılar, tasarımcılar, hobiler ve etkileşimli nesneler veya ortamlar yaratmak isteyen herkes için hazırlanmıştır..

Editöre bu kodu girin. Eğer bilmediğiniz oldukça yoğun bir kod, ancak nasıl çalıştığını anlamaya yardımcı olmak için burada tam açıklamalıdır..

const int satır [8] = 2,3,4,5,6,7,8,9; const int col [8] = 10,11,12,14,15,16,17,18; int pirPin = 19; int pirState = DÜŞÜK; int val = 0; bool pirTrigger = yanlış; const int pirLockTime = 12000; int pirCountdown = pirLockTime; int pikseller [8] [8]; const int refreshSpeed ​​= 500; int countDown = refreshSpeed; int currentCharIndex = 0; typedef bool CHAR_MAP_NAME [8] [8]; const CHAR_MAP_NAME boş = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; const CHAR_MAP_NAME threedownthreein = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; const int noOfFrames = 5; const CHAR_MAP_NAME * charMap [noOfFrames] = & blank, & threedownthreein, & blank, & blank, & threedownthreein; void setup () için (int i = 0; i<8;i++) pinMode(row[i], OUTPUT); pinMode(col[i],OUTPUT); //motion sensor pinMode(pirPin, INPUT); digitalWrite(col[i], LOW);   void screenSetup() const CHAR_MAP_NAME *thisMap = charMap[currentCharIndex]; for (int x = 0; x < 8; x++)  for (int y = 0; y =noOfFrames) currentCharIndex = 0;   void refreshScreen() for (int currentRow = 0; currentRow < 8; currentRow++) digitalWrite(row[currentRow], LOW); for (int currentCol = 0; currentCol < 8; currentCol++) int thisPixel = pixels[currentRow][currentCol]; digitalWrite(col[currentCol], thisPixel); if (thisPixel == HIGH)  digitalWrite(col[currentCol], LOW);   digitalWrite(row[currentRow], HIGH);   void loop() val = digitalRead(pirPin); if (val == HIGH) pirTrigger = true;  else if (val == LOW && pirCountdown  0)  refreshScreen(); countDown--; pirCountdown--; if(countDown <= 0)  countDown = refreshSpeed; screenSetup();    

Anlamak için önemli parçalar şunlardır:

refreshSpeed değişken. Bu değişken, her ekran arasındaki sürenin nasıl yenileneceğini belirler. Daha büyük bir sayı daha uzun bekleme anlamına gelir.

Const CHAR_MAP_NAMEs. Bu, her karakter haritasını koyduğunuz yerdir (veya onları bu şekilde düşünmek daha kolaysa, çerçevelemek).

noOfFrames değişken. Bu, tam bir oyunda kaç kare görüntüleneceğini belirler. Karakter eşlemelerinin sayısından farklı olabileceğini unutmayın. Mesela görüntülemek istersen “BİR KEDİ” yalnızca dört ayrı çerçeve tanımlamanız gerekir: bir, bir C ve bir T.

Şimdi, hareket sensörü hareketi tespit ettiğinde, LED ekran LED'i aşağıya ve üçün sol üstünden üç kere yanıp sönmelidir. Düzgün görüntülenmezse, her şeyin doğru yerde olduğundan emin olmak için kablolarınızı tekrar kontrol edin! Kendi resminizi veya mesajınızı eklediğinizde, erken kesilebilir veya çok uzun süre oynayabilir. Değiştirmeyi deneyin pirLockTime İstediğiniz süre çalınana kadar değişken.

Her kareyi LED ekrana ekleme işlemi biraz sıkıcı olabilir, bu nedenle LED matrisiniz için metin ve resim oluşturmayı biraz daha kolay hale getirmek için bu elektronik tabloyu oluşturduk (düzenleyebilmeniz için Google Sheet’in bir kopyasını alın) ).

Elektronik tabloyu kullanarak yarattıklarınızı doğrudan koda kopyalayabilirsiniz..

Öğeleri Cesurlaştırın

Şimdi çalışan bir LED matrisine sahip olduğumuza göre, kış mevsiminde hayatta kalabilmek için bir yola ihtiyacımız var. Bu yöntem tropik bir fırtınaya dayanamayabilir veya havuza batırılmayabilir, ancak tüm elektronikleri elementlerden korumak için yeterli olmalıdır..

Bileşenlerime mükemmel bir şekilde uyması için 15 cm çapında ve 6 cm derinliğinde yuvarlak bir Tupperware kutusu kullandım. Kapaktaki LED matrisinizden biraz daha büyük bir pencere açın ve içine sıvı girmemesi için boşluk bırakmadığınızdan emin olarak şeffaf bir plastik film takın. Bazı ambalajların sağlam plastikleri en iyi şekilde çalışır, ancak elimdeki her şey buydu. Her iki iş de güçlü su geçirmez bantla kolayca yapılabilse de, protokol için bazı montaj parçaları da ekleyebilirsiniz..

Sonra, pencerenin altına küçük bir delik açın, sonra PIR sensörünüz tam olarak geçene kadar dikkatlice ve yavaşça genişletin. Mümkün olduğunca sıkı oturmasını istersiniz.

PIR sensörünüzü takın ve bant veya sıcak tutkal ile görebildiğiniz tüm boşlukları doldurun.

Kutunun gerektiği gibi kapanmasını durdurabilecek tüm bantları veya tutkalları temizleyin ve tüm bileşenlerinizi pilinizle birlikte kutuya ekleyin. Burada, doğrudan Nano'nun VCC pimine takılan basit bir AA pil takımı kullanılmıştır. Binanın ortasına yapının asılmasına yardımcı olmak için muhafazanın dışına birkaç küçük mantar parçası eklendi..

Ve Yaptık

Kutu kapatıldıktan sonra, Noel çelengi ile asın ve ziyaretçilerinizin yüksek teknolojili sub-20 $ kişisel karşılamalarına tepkilerini bekleyin! Hatta bir adım daha ileri gidebilir ve harika DIY süslemeleri yaratabilirsiniz Mükemmel Geeky Tatilleri için 3D Baskılı Noel Süslemeleri Mükemmel Geeky Tatilleri için 3D Baskılı Noel Süslemeleri Neden kendinize biraz para kazandırmıyorsunuz ve bu 3B eviniz için bazı festival süslemelerini yazdırmıyorsunuz? evin etrafında başka yerlere de!

Bu projede sıfırdan harekete geçirilmiş bağımsız bir LED matris sistemi kurduk, hareket harekete geçti ve en dış hava koşullarında dışardayken hayatta kalabilir. Bu inşaat tatil sezonu diğer projelerde sona erdikten kısa bir süre sonra faydalı olacaktır ve aynı teknik diğer projeler için ucuz hava koşullarına dayanıklı muhafazalar oluşturmak için kullanılabilir..

Noel'inize bir twist verecek bir şey inşa ettiniz mi? Bu yıl herhangi bir DIY temalı Noel hediyesi planlıyor musunuz? Aşağıdaki yorumlarda bize bildirin!




Henüz no comments

Modern teknoloji hakkında basit ve uygun fiyatlı.
Modern teknoloji dünyasında rehberiniz. Her gün bizi çevreleyen teknolojileri ve araçları nasıl kullanacağınızı ve Internet'te ilginç şeyleri nasıl keşfedeceğinizi öğrenin.