İçindekiler:

(POV) Vision Globe'un Kalıcılığı: 8 Adım (Resimlerle)
(POV) Vision Globe'un Kalıcılığı: 8 Adım (Resimlerle)

Video: (POV) Vision Globe'un Kalıcılığı: 8 Adım (Resimlerle)

Video: (POV) Vision Globe'un Kalıcılığı: 8 Adım (Resimlerle)
Video: Persistance Of Vision - POV GLOBE PART 1 2024, Temmuz
Anonim
Image
Image
(POV) Vision Globe'un Kalıcılığı
(POV) Vision Globe'un Kalıcılığı
(POV) Vision Globe'un Kalıcılığı
(POV) Vision Globe'un Kalıcılığı

!Güncelleme! Yeni resimler çizmeyi ve kodlamayı çok daha kolay hale getiren bir excel programı ekledim

Basit bir vizyon küresi kalıcılığı. VİDEO OYNATMAK

Bu, epeydir aklımda olan bir projeydi ve "Make It Glow" yarışması, eski bir 5 LED POV ekranını çıkarmam ve vardiya kullanarak onu bir sonraki seviyeye taşımam için bana ilham vermem için ihtiyaç duyduğum motivasyondu. kayıtlar. Bu talimattan hoşlanıyorsanız, lütfen buna oy vermeyi düşünün.

POV'a hızlı bir giriş veya görme kalıcılığı: Herhangi bir AC voltaj ışığı aslında 60hz veya saniyede 60 kez bir frekansta yanıp sönüyor. Beynimiz bunu sürekli ışık olarak algılar. Tek sıra LED kullanarak küresel bir görüntü oluşturmak için yararlanacağımız bu konsepttir. Bu proje için, üç adet 8 bitlik kaydırma yazmacı kullanılarak sıralanan 24 LED'in dünya için gereken minimum çözünürlüğü sağlayacağına karar verdim.

Adım 1: Malzemeler

İşte kullandığım şey.

  • (1) Arduino Uno (prototipleme için)
  • (1) Bareduino (isteğe bağlı kalıcı kart için) VIRTUABOTIX LINK
  • (3) HC595N Kaydırma Kayıtları
  • (24) Mavi LED'ler
  • (24) 220 ohm dirençler
  • (1) devre tahtası
  • (1) pil tutucu ve pil
  • (1) 10" çapında halka (LED'leri tutacak kadar geniş ve ne kadar hafif olursa o kadar iyi)
  • (1) dişli çubuktan parçalanmış (5/16" kullandım)
  • (1) Motor (Eski bir Dirt Devil'dan bir tane kullandım)
  • (1) Motor Bağlayıcı
  • (1) 120V Bağlantı Kesme (Işık Anahtarı)
  • (1) Fan Hızı Kontrol Cihazı

2. Adım: Yüzüğü İnşa Etmek

Yüzüğü İnşa Etmek
Yüzüğü İnşa Etmek
Yüzüğü İnşa Etmek
Yüzüğü İnşa Etmek

Yüzüğüm için 1/8" kalınlığında x 1/2" genişliğinde bir alüminyum düz çubuk parçası ve orta direk için 5/16" tamamı dişli bir parça kullandım, çünkü onları etrafta yatırdım, ama bence bu bir 3D yazıcı, PCB montajları ile tamamlandı ve çok daha hafif olacak. Bu halkayı, her biri ayrı bir Arduino DO'sunu kapatan 5 LED kullanarak önceki bir yapı için yaptım.

Yüzüğün çapıyla ilgili özel bir şey yok. Benimki yaklaşık. 10 yuvarlak, çünkü sahip olduğum düz çubuk başlangıçta 3' uzunluğundaydı. Harbour Freight'tan 3'ü 1 arada kesme/fren/rulo ile yuvarladım, ancak kontrplaktan kesilmiş bir diskin etrafındaki halkayı da oluşturabilirsiniz ve güzel sonuçlar var. O halde yüzüğün tahtadan yapılmaması için bir neden göremiyorum. Ben sadece metal işlemeyi tercih ediyorum.

LED'ler için merkezde yaklaşık 5/16" delikler açtım. Bu boşluk, halkanın bir tarafında üstte ve altta 1" hariç tümü dolduruldu. Breadboard'lar için bir montaj yüzeyi sağlamak için halkanın ortasına bir braket vidalamanız gerekecektir.

Adım 3: Devreyi Yapmak

Devreyi Yapmak
Devreyi Yapmak
Devreyi Yapmak
Devreyi Yapmak
Devreyi Yapmak
Devreyi Yapmak

Bu benim vardiya yazmaçlarını kullanma konusundaki ilk denememdi, bu yüzden Arduino'nun sitesinde araştırmaya başladım ve ihtiyaçlarıma uyacak şekilde değiştirdiğim son derece faydalı bir örnek buldum. Öğreticiyi Arduino ShiftOut'ta bulabilirsiniz, temel kodum olarak "Kod Örneği 2.3 - Çift Tanımlı Diziler" üzerine karar verdim, daha sonra daha fazlası.

Öğreticiyi takip ederseniz, Arduino'nuzdan vardiya kayıtlarına seri olarak bilgi bitlerini tek tek nasıl göndereceğinizi öğreneceksiniz. Bu düzenleme, Arduino üzerinde sadece 3 pin ile bu projedeki 24 LED'in tamamını kontrol etmenizi sağlar. 74HC595'in seri giriş, paralel çıkış kabiliyetini 24 bit bilgi veya 3 Bayt'ı kaydırma yazmaçlarına yüklemek ve ardından verileri LED'lere paralel olarak kaydırmak için kullanacağız.

Yüklediğimiz verinin ilk biti son kayıt noktasında toplanacağından, LED1'i veya en güneydeki LED'i ilk Shift Register'ın QO'suna ekleyeceğiz. ShiftOut örneğindeki şemayı takip edin ve ikincinin birinciye eklendiği şekilde, üçüncü vardiya kaydını ikinciye ekleyin.

Örnek kodu yol boyunca çalıştırmanızı tavsiye ederim, önce sadece bir kayıtla, sonra iki kayıtla. Örnek kod, ışıkları herhangi bir şeyin eksik olup olmadığını kolayca görebilecek şekilde sıralar. "Kod Örneği 2.3 - Çift Tanımlı Diziler"e bir Byte3 ve Mavi adını verdiğim üçüncü bir dizi ekleyebildim. Bunu, bu adıma yüklenen ShiftOutArrayByte3R1 kodunda görebilirsiniz.

Adım 4: Hepsini Bir Araya Getirmek

Hepsini bir araya koy
Hepsini bir araya koy
Hepsini bir araya koy
Hepsini bir araya koy

Artık devrenin çalıştığından emindik, her şeyi halkaya monte etmemiz gerekiyor. Arduino/Bareduino'nuzu bir tarafa ve Shift Register Board'unuzu Arduino'nun karşısına monte etmenizi öneririm. Bu, ağırlığın giderilmesine yardımcı olacaktır, ancak büyük olasılıkla sabit bir dönüş elde edene kadar bir şeyleri hareket ettirmeniz gerekecektir. Ağırlık eklemem gereken tarafta 9 Volt Pil kullandım. Panoları ve Pili merkez direğe bağlamak için fermuarlar kullandım. Bu şekilde yüzüğü dengelemek için ayarlamalar yapabildim.

Şimdi tüm LED'leri lehimlemek için. LED'lerin pozitif voltajını kontrol ettiğimiz için, tüm katot uçlarını yalıtılmamış tek bir kabloyla birbirine bağlayabilir ve onu topraklarımıza takabiliriz. Ardından, her LED'in Anot ucuna bir direnç lehimlememiz ve ardından dirençten ilgili kaydırma yazmacı çıkış pinine bir kablo bağlamamız gerekir. Bir LED'iniz olup olmadığını anlamanın kolay bir yolu olarak kurulum döngüsündeki Tümünü Yanıp Söndür işlevini bıraktım.

Adım 5: Küreyi Çizmek

Dünyayı Çizmek
Dünyayı Çizmek
Dünyayı Çizmek
Dünyayı Çizmek
Dünyayı Çizmek
Dünyayı Çizmek

!!Güncelleme!! Artık görüntüyü sizin için onaltılıya çeviren excel programını kullanarak çizebilirsiniz. Kırmızı, Mavi ve Yeşil dizilerinizin kodu kopyalanıp Arduino taslağına yapıştırılabilir. LED'in AÇIK olmasını istediğiniz yerde 1'i doldurmanız yeterlidir; hücre otomatik olarak maviye dönecektir! Excel programı bu adıma yüklenir. Bu proje için değiştirilen Rave Shades Animator'ı yayınlamak için Rave Shades talimatı sayesinde

Peki. Şimdi sanatsal olmak için. POV kullanarak 360 derecelik küresel bir görüntü oluşturmanın harika bir yolu olacağını düşündüğüm için bir küre seçtim, ancak bu ve sonraki adımda, 24x70 nokta çözünürlükte çizebileceğiniz herhangi bir görüntüyü nasıl oluşturabileceğinizi göstermeye çalışacağım..

İlk önce rehber olarak kullanmak için uygun bir dünya haritası resmi buldum. Sonra Google Play'de ihtiyaçlarımı mükemmel şekilde karşılayan "Mozaik Oluşturucu" adlı bir uygulama buldum. Bu adımda son resimde görebileceğiniz gibi, 24x70 şablonumda dünya haritası resminin düşük çözünürlüklü bir versiyonunu oluşturabildim. Bilginize 24, 3 Baytlık veriden gelir ve bu nedenle 24 LED uzunluğunda ve 70, yatay aralığın LED'lerin dikey aralığına yakın olmasını sağlamak için halkamın çevresini 5/16" ile bölmekten gelir. 70 nokta genişliğinde yüzüğünüzün boyutuna göre değişecektir, ancak kritik değildir. Tam bir dönüşü algılamak ve döngüyü sıfırlamak için kızılötesi LED gibi herhangi bir sensör kullanmadığımız için özellikle kritik değildir. Bu, yapabileceğim bir şey gelecekte düşünün, ancak şimdilik motorda hız kontrolüne sahip olduğumuz sürece sensör gereksizdir.

Bir çiziminiz olduğunda, bir sonraki adımda görüntüyü Byte ile onaltılık koda dönüştürebilirsiniz.

Adım 6: Kod

kod
kod
kod
kod
kod
kod

!Güncelleme! Sadece pikseli otomatik olarak mavi renklendirecek olan AÇIK'ı temsil etmek için 1'leri kullanarak resminizi çizin. Resminiz hazır olduğunda "Tüm Dizileri Kopyala" düğmesine basın ve Arduino çizimindeki mevcut dizilerin üzerine yapıştırın! Bu adıma yeni bir eskiz yükledim

Daha önce bahsedildiği gibi, Arduino ShiftOut örneğinden "Kod Örneği 2.3 - Çift Tanımlı Diziler" i üssüm olarak kullandım. Bu kodda fark edeceğiniz gibi yazar, Arduino'nun doğrudan ikili değerleri işleyip işleyemeyeceğinden emin olmadığını, bu yüzden bunun yerine Onaltılık değerler kullanıldığını yorumladı. Not: Hex değerlerinin yanındaki ikili yorumları hiç değiştirmedim, sadece Hex değerlerini dünya haritası resmime uyacak şekilde değiştirdim.

Şimdi bu, Hex'i yalnızca ikinci görüşümdü ve oldukça habersizdim. Ekli Onaltılık-İkili dönüşüm tablosunu buldum, bu çok yardımcı oldu. Bu grafik, her bir sütunun veya (Byte) ikili değerini bir onaltılık değere dönüştürmek için kullanılabilir. Örneğin, bu adımdaki son resme bakarsanız, dünya haritası görüntüsünün yukarıdan aşağıya nasıl üçe bölündüğünü ve her sütunun 3 Bayttan oluştuğunu görebilirsiniz; burada beyaz veya kapalı = 0 ve Mavi veya Açık = 1. Her sütunun alt kısmında Bayt, 00 ve FF arasında değişen, 0-255 arasında bir ondalık değer aralığına veya 00000000 ila 11111111 arasında bir ikili aralığa eşdeğer olan bir Onaltılık değere dönüştürülmüştür.

Ekli kodda Küre resmi yüklenmiştir, ancak kendi resminiz için değiştirilebilir.

7. Adım: Test Etme

Image
Image
Test yapmak
Test yapmak

Bir taban ve motor montajı yapmaya geçmeden önce devreyi test edip ince ayar yapacağımı düşündüm. Ben sadece teçhizatı akülü bir matkaba soktum, her şeyi açtım ve tetiği çektim. Gecikmeyi 1 ms'ye ayarlamak zorunda kaldım ve ilk denemem Rusya'yı Avustralya'nın güneyine yerleştirdi. Ayrıca, tüm yüzüğü çevirmek için kolay bir düzeltme olan, beklediğimden görüntünün baş aşağı göründüğünü de öğrendim. Ekli video, son başarılı testimin videosudur. Şimdi kalıcı bir motora ve hız kontrol cihazına sahip bir taban zamanı.

KURŞUN KÜRESEL TESTİNİ OYNA

Adım 8: Bitirme

Bitirmek!
Bitirmek!
Bitirmek!
Bitirmek!
Bitirmek!
Bitirmek!

Motorumun bağlantısını kesmek için ışık anahtarını bağladım ve ardından fan hızı kontrol cihazını bağlantı kesme ile motor arasına bağladım. Bu bana gücü hızlı bir şekilde kapatmanın ve motor hızını oldukça iyi bir şekilde kontrol etmenin bir yolunu veriyor. Şimdi motoru dünyaya bağlamanın bir yoluna ihtiyacım vardı. Motordaki mil 17/64" ve küre için kullandığım tüm dişler 5/16" idi. 5/16" bir kuplör sadece hile olabilirdi, ama ne yazık ki sadece 3/8" kuplör işe yaramazdı. Bunun yerine, bir parça 1/2" alüminyum yuvarlak stok buldum ve 2" uzunluğunda bir parça kestim ve merkezden 17/64" bir delik açtım. Ayrıca motor şaftı için bir ayar vidası takmak için yandan küçük bir delik açtım ve vidaladım, ardından küreyi vidaladım ve sabitlemek için bir kontra somun kullandım Dirt Devil motoru deliği patlatacak kadar hızlı dönüyor montaj, bu yüzden hızı mümkün olduğunca aşağı ayarlamam gerekiyordu. Bu hızda motor aslında dönmeye başlamaz, bu da teçhizatı çalıştırmayı biraz zorlaştırır. Yapmam gereken, kürenin dönmesini engellemek ve yavaşça yükseltmektir. motor çalışana kadar hız, sonra hızı azaltıp küreyi serbest bırakabilirim. Son olarak, bazı hassas ince ayar ile harika bir yavaş döndürme efekti elde edebilirim.

VİDEO OYNATMAK

Önerilen: