İçindekiler:

Arduino + DS1307 + Neopixel Kullanan Lineer Saat: Bazı Donanımların Yeniden Kullanılması: 5 Adım
Arduino + DS1307 + Neopixel Kullanan Lineer Saat: Bazı Donanımların Yeniden Kullanılması: 5 Adım

Video: Arduino + DS1307 + Neopixel Kullanan Lineer Saat: Bazı Donanımların Yeniden Kullanılması: 5 Adım

Video: Arduino + DS1307 + Neopixel Kullanan Lineer Saat: Bazı Donanımların Yeniden Kullanılması: 5 Adım
Video: Последовательная неисправность, преобразователь логического уровня, Arduino Nano и ESP-01 2024, Kasım
Anonim
Image
Image

Önceki projelerden bir Arduino UNO ve bir Neopixel LED şeridim kalmıştı ve farklı bir şey yapmak istedim. Neopixel şeritte 60 adet LED ışık olduğu için büyük bir saat olarak kullanılması düşünüldü.

Saatleri belirtmek için kırmızı bir 5-LED segmenti kullanılır (60 LED / 12 segment = 5 LED). Dakikalar tek bir yeşil LED ile ve saniyeler bir mavi LED ile gösterilir.

Arduino'ya güç verilmediğinde zamanı tutmak için bir DS1307 Gerçek Zamanlı Saat kartı ekledim.

Bu, kullanılan Neopixel 60 LED şerididir: https://www.adafruit.com/product/1138 ve bu DS1307 kartı:

Başlangıçta LED şeridin yemek odası duvarına asılması planlanmıştı, ancak kızlarım bunu bir paletten bir tahta parçasına yapıştırmamı söylediler, bu yüzden sayıları çizip ahşaba yapıştırdılar.

Adım 1: Prototip Kurulu

Prototip Kurulu
Prototip Kurulu
Prototip Kurulu
Prototip Kurulu

Burada uygulanacak devre ve malzeme listesi var.

DS1307 RTC kartını kullanmazsanız çalışmayacaktır. Bu kartın dahili bir RTC'si olmadığı için Arduino'ya güç verilmediğinde Saat ve Dakika sıfırlanacaktır.

Prototip kartı, birkaç direnç ve düğme olan RTC DS1307'nin yerinde kalmasına yardımcı olur.

Bazı lehimleme ve kablolama gereklidir.

"H" düğmesi, basıldığında saati artırır. "M" düğmesi dakikayı artırır. Herhangi bir tuşa basıldığında saniyeler sıfırlanır.

6 aylık kesintisiz çalışmanın ardından 2 dakikalık bir gecikme oldu (bence oldukça iyi).

Adım 2: Arduino UNO

Arduino UNO'su
Arduino UNO'su
Arduino UNO'su
Arduino UNO'su
Arduino UNO'su
Arduino UNO'su
Arduino UNO'su
Arduino UNO'su

Prototip kartını bağlamak için eski bir Arduino klonu ve bazı pimler kullandım.

Arduino kodunu şu adreste bulabilirsiniz:

github.com/Giroair/Linear-Clock-Arduino/bl…

Arduino'yu plastik bir bağ kullanarak tahtaya tutturun.

Neopiksel şeridine 3 kablo lehimleyin (dikkat: bir miktar izolasyon bandı veya konektör kullanın).

Bu projede Arduino, standart bir 5V 1A USB şarj cihazı ile desteklenmektedir.

Geliştiriciler için bilgi: Neopixel, Arduino UNO'nun 5V pininden güç alır çünkü aynı anda sadece 7 LED Açıktır. Daha fazla LED'i açmayı planlıyorsanız (ki bu daha çekici ekranlar için mükemmel olacaktır), Neopixel'e harici bir 5V kaynaktan güç vermeyi düşünün. Bu durumda, kaynak GND'yi Arduino kartının GND pinine bağlayın.

Harici ve güvenilir güç kaynağını 5V pinine bağlayan Arduino'ya güç vermek de bir seçenektir.

Adım 3: LED Strip'i Ahşaba Takma

LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma
LED Şeridi Ahşaba Takma

Şeridi yerinde tutmak için 3 plastik bağ kullanıldı. Herhangi bir LED'i kapatmamaya dikkat edin.

Bazı levhalar ahşaba yapıştırılmış ve sayıları boyamıştır.

Kırmızı sayılar Saati gösterir. Her 5 LED'de bir çizgiler çizilir.

Yeşil sayılar Dakikayı gösterir. İlk LED'in ilk dakikayı ve son LED'in 60. dakikayı gösterdiğine dikkat edin.

Adım 4: Gelecekteki Geliştirme

Gelecek Geliştirme
Gelecek Geliştirme

Bu projeden bazı fikirler:

1.- Bir keski kullanarak sayıları tahtaya oyup boyayın ve cilalayın.

2.- Saat rakamlarını bir tarafa, Dakika rakamlarını diğer tarafa çizin.

3.- Arka arkaya 2 LED şeridi kullanın: Biri Saatler için sola, diğeri dakikalar için sağa bakar.

4.- Farklı segmentler ve renklerle denemeler yapın: hayal gücü sınırdır (Neopiksel şeridine harici bir 5V güç kullanmanız önerilir).

5.- Alternatif olarak Saat ve Dakikayı Gösterin.

6.- LED şeridi segmentlere ayırın ve dijital sayıları ve karakterleri göstermek için 7x8 LED matrisi yapın.

7.- Işığı kısın: ışığı otomatik olarak kısmak için bir LDR veya fotodiyot kullanın.

8.- Bir sunucudan zamanı almak için buluta bağlanın.

9.- Bir Alarmı Etkinleştir: telefon aramaları veya tweet'ler alındığında veya bir zaman alarmı ayarlandığında şerit yanıp söner.

10.-…. sadece bana haber ver!

Adım 5: Komut Dosyası Sonrası: 2 Şerit

github.com/Giroair/Linear-Clock-Arduino'da "neopixel_invers_2_strips.ino" dosyasını bıraktım

Pin #6'ya bağlı saatleri belirtmek için bir şeridi ve pin #7'ye bağlı dakikaları/saniyeleri belirtmek için ikinci bir şeridi kontrol etmesi amaçlanmıştır.

Şeritlerin hem 5V DC hem de Topraklaması aynı kaynağa bağlanır.

YASAL UYARI: 2 şerit olmadığı sürece test edemedi. Test ederseniz, hataları bildirmek veya iyi çalıştığını onaylamak için nazik olun.

Teşekkürler.