Mündəricat:

Arduino + DS1307 + Neopixel istifadə edərək Xətti Saat: Bəzi Avadanlıqların Yenidən İstifadəsi .: 5 Addım
Arduino + DS1307 + Neopixel istifadə edərək Xətti Saat: Bəzi Avadanlıqların Yenidən İstifadəsi .: 5 Addım

Video: Arduino + DS1307 + Neopixel istifadə edərək Xətti Saat: Bəzi Avadanlıqların Yenidən İstifadəsi .: 5 Addım

Video: Arduino + DS1307 + Neopixel istifadə edərək Xətti Saat: Bəzi Avadanlıqların Yenidən İstifadəsi .: 5 Addım
Video: Ардуино и часы реального времени (RTC) DS1307 2024, Iyul
Anonim
Image
Image

Əvvəlki layihələrdən Arduino UNO və Neopixel LED şeridi qaldı və fərqli bir şey etmək istədim. Neopixel zolağında böyük bir saat kimi istifadə ediləcəyi düşünülən 60 LED işığı olduğu üçün.

Saatı göstərmək üçün qırmızı 5 LED seqmentindən istifadə olunur (60 LED / 12 seqment = 5 LED). Dəqiqələr tək bir yaşıl LED və saniyələr bir mavi LED ilə göstərilir.

Arduinonun işləmədiyi vaxtı saxlamaq üçün DS1307 Real Time Clock lövhəsi əlavə etdim.

Bu istifadə olunan Neopixel 60 LED şeridi: https://www.adafruit.com/product/1138 və bu DS1307 lövhəsi:

Əvvəlcə LED şeridin yemək otağının divarına asılması planlaşdırılırdı, amma qızlarım mənə paletdən bir taxta parçasına yapışdırmağımı söylədi, buna görə də nömrələri çəkib taxta yapışdırdılar.

Addım 1: Prototip lövhəsi

Prototip lövhəsi
Prototip lövhəsi
Prototip lövhəsi
Prototip lövhəsi

Burada tətbiq olunmalı dövrə və BOM var.

DS1307 RTC lövhəsini istifadə etməsəniz, işləməyəcək. Saat və Dəqiqə Arduino -ya enerji verilmədikdə sıfırlanacaq, çünki bu lövhədə daxili RTC yoxdur.

Prototip lövhəsi, bir neçə rezistor və düymələri yerində saxlamağa kömək edir RTC DS1307.

Bir az lehimləmə və kabel çəkmə lazımdır.

"H" düyməsinə basıldığında saatı artırır. "M" düyməsi dəqiqəni artırır. Hər hansı bir düyməyə basıldıqda saniyələr sıfırlanır.

6 aylıq fasiləsiz işdən sonra 2 dəqiqə gecikmə oldu (fikrimcə, olduqca yaxşı).

Addım 2: Arduino UNO

Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO

Prototip lövhəsini bağlamaq üçün köhnə bir Arduino klonundan və bəzi pinlərdən istifadə etdim.

Arduino kodunu burada tapa bilərsiniz:

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

Arduinonu plastik bir qalstuk istifadə edərək taxta parçasına bağladı.

Neopixel şeridinə 3 kabel lehimləyin (ehtiyatlı olun: bəzi izolyasiya lenti və ya bağlayıcı istifadə edin).

Bu layihədə Arduino standart 5V 1A USB şarj cihazı ilə təchiz edilmişdir.

İnkişaf etdiricilər üçün məlumat: Neopixel Arduino UNO -nun 5V pinindən işləyir, çünki eyni anda yalnız 7 LED yanır. Daha çox LED yandırmağı planlaşdırırsınızsa (daha cazibədar ekranlar üçün mükəmməl olacaq) Neopixel'i xarici 5V mənbəyindən gücləndirməyi düşünün. Bu halda, GND mənbəyini Arduino lövhəsinin GND pininə bağlayın.

Xarici və etibarlı enerji mənbəyini 5V pinlə birləşdirən Arduino -ya güc vermək də bir seçimdir.

Addım 3: LED şeridini taxtaya bağlamaq

LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması
LED şeridin taxtaya yapışdırılması

Şeridi yerində saxlamaq üçün 3 plastik bağ istifadə olunur. Heç bir LED -i örtməmək üçün diqqətli olun.

Bəzi təbəqələr taxtaya yapışdırılmış və nömrələri boyanmışdır.

Qırmızı nömrələr Saatı göstərir. Hər 5 LED -də xətlər çəkilir.

Yaşıl rəqəmlər Dəqiqəni göstərir. Qeyd edək ki, ilk LED ilk dəqiqəni, sonuncu isə 60 -cı dəqiqəni göstərir.

Addım 4: Gələcək İnkişaf

Gələcək İnkişaf
Gələcək İnkişaf

Bu layihədən bəzi fikirlər:

1.- Bir kəsik istifadə edərək ağacdakı rəqəmləri kəsin və boyayın və laklayın.

2.- Bir tərəfdən Saat nömrələrini, digər tərəfdən Dəqiqə nömrələrini çəkin.

3.- Arxa arxaya 2 LED şeridi istifadə edin: biri Saatlar üçün sola, digəri isə dəqiqə üçün sağa baxır.

4.- Fərqli seqmentlər və rənglərlə təcrübə aparın: təxəyyül məhdudiyyətdir (Neopixel zolağına xarici 5V güc istifadə etməyiniz tövsiyə olunur).

5.- Alternativ olaraq Saat və Dəqiqələri göstərin.

6.- LED şeridini seqmentlərə bölün və rəqəmsal rəqəmləri və simvolları göstərmək üçün 7x8 LED matrisi düzəldin.

7.- İşığı söndürün: işığı avtomatik söndürmək üçün LDR və ya fotodiod istifadə edin.

8.- Bir serverdən vaxt əldə etmək üçün buluda qoşulun.

9.- Alarmı aktiv edin: telefon zəngləri və ya tvitlər alındıqda və ya vaxt siqnalı qurulduqda zolaq yanıb sönür.

10.-…. sadəcə mənə bildir!

Addım 5: Post Script: 2 Zolaq

Https://github.com/Giroair/Linear-Clock-Arduino "neopixel_invers_2_strips.ino" faylını tərk etdim

6 nömrəli pinlə bağlı olan saatları göstərmək üçün bir şeridi və 7 nömrəli pinlə bağlı dəqiqə/saniyəni göstərmək üçün ikinci bir şeridi idarə etmək nəzərdə tutulur.

Həm 5V DC, həm də Zolaqların Toprağı eyni mənbəyə bağlıdır.

DISCLAIMER: 2 zolaq olmadığı müddətcə test edə bilmədim. Test etsəniz, səhvləri bildirin və ya yaxşı işlədiyini təsdiqləyin.

Çox sağ ol.