Mündəricat:

7 Segment Saatı: 4 Adım (Şəkillərlə birlikdə)
7 Segment Saatı: 4 Adım (Şəkillərlə birlikdə)

Video: 7 Segment Saatı: 4 Adım (Şəkillərlə birlikdə)

Video: 7 Segment Saatı: 4 Adım (Şəkillərlə birlikdə)
Video: Crypto Pirates Daily News - February 7th, 2022 - Latest Cryptocurrency News Update 2024, Noyabr
Anonim
Image
Image
7 Segment Saatı
7 Segment Saatı
7 Segment Saatı
7 Segment Saatı

Bir neçə il istifadə etdikdən sonra, qəti şəkildə ölsə, analog saatım.

Bu arada Prusa ilə çap etmək üçün 3d saat layihəsi axtarırdım, buna görə də ws2812 led və Arduino ilə idarə olunacaq 7 seqmentli bir saat tapdım.

Düşünürdüm ki, bu LED -lərin gücü çoxlu rənglər göstərməkdir, onda sual yaranırdı ki, rəqəmsal saatda birdən çox rəngi necə birləşdirmək olar?

Sonra saatı aşağıdakı xüsusiyyətlərlə fərdiləşdirmək fikri:

- 7 fərqli dəqiqə dəyişikliyi keçidi

- Zaman aralığı üçün əvvəlcədən təyin edilmiş 3 rəng

- ətraf işığının intensivliyi avtomatik azalır

- Vaxt göstərməyə ehtiyac olmadıqda avtomatik bağlanma/başlama

- avtomatik yaz işığı vaxtının tənzimlənməsi

Təchizat

Layihə 3 ölçülü printerdən istifadə etməklə və ya 7 seqmentli saat layihələri üçün googling ilə icra oluna bilər. Kimsə onları kartondan da düzəltdi.

Həmçinin ehtiyac var:

  • Arduino nano
  • foto chell
  • ani düymə
  • açma/söndürmə açarı
  • DC fişi
  • 5V transformator
  • n ° 30 WS2812 led (model 30 led/metr)
  • pcb
  • DS3231 modulu
  • LED bağlantısı üçün nazik kabellər
  • rezistorlar 10K, 550
  • lehim
  • yapışqan
  • tullananlar
  • başlıqlar kişi/qadın

Addım 1: Çap və Kablolama …

Çap və Kablolama …
Çap və Kablolama …
Çap və Kablolama …
Çap və Kablolama …
Çap və Kablolama …
Çap və Kablolama …

Thingverse -dəki orijinal layihə bir az dəyişdirildi. (Random1101 istifadəçisi sayəsində)

İki nöqtə bu layihə üçün istifadə olunan led versiyaya uyğun olaraq böyüdülmüşdür. Üç arxa qapaqdan biri də pcb uyğun olaraq dəyişdirildi. Saat bazası da dəyişdirildi.

Əsas iş ledləri lehimləməkdir. Əvvəlcə LEDləri 3d çap rəqəmi arxa örtükdən kənarda lehimləməyə davam etdim, sonra daxil etdim.

Soldan başlayaraq birinci rəqəmin 7 -ci ledisi növbəti rəqəmin birinci ledinə bağlanacaq. 4 -cü rəqəmin sonunda iki nöqtəni birləşdirin, ledləri ardıcıllıqla 28 və 29 nömrələndirin.

Led ardıcıllığı aşağıdakı kimi izah edildiyi kimi Arduino kitabxanasına dəyişdirilərək dəyişdirilə bilər.

Bağlandıqdan sonra işlərin çoxu yerinə yetirildi.

Addım 2: PCB montajı

PCB montajı
PCB montajı
PCB montajı
PCB montajı
PCB montajı
PCB montajı
PCB montajı
PCB montajı

İndi bəzi rezistorları, başlıqları və s. Lehimlədiyi bir pcb yığmağın vaxtı gəldi. Arduino -ya qoşulmaq üçün komponentlər bunlardır:

Daxili çəkmə müqaviməti ilə Arduino pin 3 və GND arasında bağlanan düymə.

İşıq sensoru, Arduino pin A7 və GND arasında bir gərginlik bölücü olaraq bağlanır. A7 ilə +5V arasında 10K rezistor da əlavə edin ……… BÜYÜK HATA

+5V ilə A7 pin arasındakı işıq sensoru və A/ pin və GND arasında 10K müqavimət

DS3231 modulu i2c və SQW pin vasitəsilə Arduino kəsmə pin 2 -yə qoşulur

Ledlər 5 -dən 550 Ohm -ə qədər olan rezistora bağlanır.

Addım 3: Eskiz

Eskizin içərisində edilə biləcək bir çox özelleştirme var.

Gün işığına qənaət edən kitabxana TimeChangeRule parametrləri ilə idarə olunur, daha çox məlumat üçün Githubdakı JChristensen kitabxanasına baxın.

Döngü içərisində avtomatik bağlanma, dəyişən int gotosleep tərəfindən idarə olunur. Mənim vəziyyətim 0: 00 -da Arduino yuxu rejiminə keçir, sonra saat sönür.

Dəyişən int gotosleep vasitəsi ilə DS3231 modulunda ALARM qurmaq, Arduinonun yuxu rejimindən oyanmasına imkan verir. Mənim vəziyyətimdə səhər saat 7: 00 -da.

Başqa bir xüsusiyyət, gündüz saatlarında rəng dəyişdirməkdir:

boş printDateTime (time_t t, const char *tz)

Ayarlarımda saat 0: 00 -dan 12: 00 -a qədər vaxt qırmızı ilə göstərilir, 12: 00 -dan 17: 00 -a qədər yaşıl və 17: 00 -dan 0: 00 -dək əsasən mavi olur. Bu, arxadakı ağ divarla yaxşı bir kontrast üçün indiyə qədər tapılan ən yaxşı rəng balanslaşdırmasıdır.

Keçidlər xüsusiyyəti, dəqiqə dəyişdikdə cizgi rəngli keçid imkanı verir. Anlıq düyməni basmaqla seçilə biləcək 6 fərqli seçim var, 7 -ci seçim keçidsizdir. Sevdiyim ad əvvəlcədən təyin edilmiş newrandom () adlanır (int mode = 1;).

Led ardıcıllığı ilə uyğunluq üçün kitabxanada bəzi dəyişikliklər etdim. Faylın içərisində segment_display.cpp, sonunda, (i) keçidinə əsasən led ardıcıllığınızı dəyişə bilərsiniz. Tamamlandıqdan sonra faylı içərisinə qoyun

/Arduino/kitabxanalar/7segment_NeoPixel-master

Tələb olunan kitabxanalar:

  • avr. yuxu
  • segment_görüntüsü
  • DS3231
  • TimeLib
  • Tel
  • Adafruit NeoPixel
  • Saat qurşağı

Addım 4: Əlvida deməyin vaxtı gəldi

Bu saatı bəyənirəm, indiki vaxt uzaqdan aydın görünür və ehtiyacım olmadığı zaman sönür.

Bir saatdan daha çoxunu necə istəmək olar?

Tövsiyə: