Daftar Isi:

Jam 7 Segmen: 4 Langkah (dengan Gambar)
Jam 7 Segmen: 4 Langkah (dengan Gambar)

Video: Jam 7 Segmen: 4 Langkah (dengan Gambar)

Video: Jam 7 Segmen: 4 Langkah (dengan Gambar)
Video: BELAJAR ARDUINO #107 - Buat Jam Digital Dengan TM1637 Seven Segment Display Dan Rtc DS3231 2024, November
Anonim
Image
Image
Jam 7 Segmen
Jam 7 Segmen
Jam 7 Segmen
Jam 7 Segmen

Setelah beberapa tahun menggunakan, jam analog saya benar-benar mati.

Sementara itu saya sedang mencari proyek jam 3d untuk dicetak dengan Prusa saya, jadi saya menemukan jam 7 segmen untuk digerakkan oleh led ws2812 dan Arduino.

Saya pikir kekuatan dari led itu adalah untuk menampilkan berbagai macam warna, lalu pertanyaannya adalah, bagaimana cara menggabungkan beberapa warna pada jam digital?

Kemudian muncul ide untuk mengkustomisasi jam dengan fitur berikut:

- 7 transisi perubahan menit yang berbeda

- 3 warna yang telah ditentukan sebelumnya untuk slot waktu

- redup otomatis intensitas cahaya sekitar

- matikan / mulai otomatis ketika tidak perlu menunjukkan waktu

- penyesuaian waktu musim panas otomatis

Perlengkapan

Proyek ini dapat dieksekusi menggunakan printer 3D atau googling untuk proyek jam 7 segmen. Seseorang membuatnya dengan karton juga.

Ada juga yang membutuhkan:

  • Arduino nano
  • sel foto
  • tombol tekan sesaat
  • sakelar hidup/mati
  • colokan DC
  • transformator 5V
  • n°30 WS2812 led (model 30 led/meter)
  • pcb
  • Modul DS3231
  • kabel tipis untuk koneksi led
  • resistor 10K, 550
  • pateri
  • lem
  • jumper
  • header pria/wanita

Langkah 1: Pencetakan dan Pengkabelan…

Pencetakan dan Pengkabelan…
Pencetakan dan Pengkabelan…
Pencetakan dan Pengkabelan…
Pencetakan dan Pengkabelan…
Pencetakan dan Pengkabelan…
Pencetakan dan Pengkabelan…

Proyek asli di Thingverse telah sedikit dimodifikasi. (Terima kasih kepada pengguna random1101)

Dua titik diperbesar agar sesuai dengan versi led yang digunakan untuk proyek ini. Salah satu dari tiga penutup belakang juga dimodifikasi agar sesuai dengan pcb. Berubah juga basis jam.

Pekerjaan utama adalah menyolder led. Untuk pertama saya sudah melanjutkan menyolder led di luar backcover angka cetak 3d, lalu dimasukkan ke dalamnya.

Led ke-7 dari digit pertama mulai dari kiri akan dihubungkan ke led pertama dari digit berikutnya. Pada akhir digit ke-4, hubungkan kedua led titik, mereka akan diberi nomor 28 dan 29 di dalam urutan.

Urutan led dapat dimodifikasi dengan mengubah beberapa parameter menjadi perpustakaan Arduino seperti yang dijelaskan berikut ini.

Setelah terhubung, sebagian besar pekerjaan telah selesai.

Langkah 2: Perakitan PCB

Perakitan PCB
Perakitan PCB
Perakitan PCB
Perakitan PCB
Perakitan PCB
Perakitan PCB
Perakitan PCB
Perakitan PCB

Sekarang saatnya merakit pcb tempat menyolder beberapa resistor, header, dll. Komponen untuk menghubungkan Arduino adalah:

Pushbutton terhubung antara Arduino pin 3 dan GND dengan resistor pull-up internal.

Sensor cahaya dihubungkan sebagai pembagi tegangan, antara pin Arduino A7 dan GND. Tambahkan juga resistor 10K antara A7 dan +5V ………KESALAHAN BESAR

sensor cahaya antara pin +5V dan A7 dan resistor 10K antara pin A/ dan GND

Modul DS3231 terhubung melalui pin i2c dan SQW ke pin interupsi Arduino 2

Led terhubung ke pin 5 melalui resistor 550Ohm.

Langkah 3: Sketsa

Ada banyak kustomisasi yang bisa dilakukan di dalam sketsa.

Menyimpan perpustakaan waktu siang hari ditangani oleh parameter TimeChangeRule, lihat perpustakaan JChristensen di Github untuk informasi lebih lanjut.

Shutdown otomatis di dalam loop ditangani oleh variabel int gotosleep. Dalam kasus saya pada 0:00 Arduino masuk dalam mode tidur, lalu jam mati.

Mengatur ALARM pada modul DS3231 melalui variabel int gotosleep, memungkinkan Arduino untuk bangun dari mode tidur. Dalam kasus saya pada pukul 07.00 pagi.

Fitur lain adalah untuk mengubah warna jam siang hari di dalam fungsi:

void printDateTime(time_t t, const char *tz)

Dalam pengaturan saya dari jam 0:00 hingga 12:00 waktu ditampilkan dalam warna merah, dari 12:00 hingga 17:00 hijau dan dari 17:00 hingga 0:00 sebagian besar berwarna biru. Ini adalah keseimbangan warna terbaik yang ditemukan sampai sekarang untuk kontras yang baik dengan dinding putih di belakang.

Fitur transisi memungkinkan transisi warna animasi saat perubahan menit. Ada 6 pilihan berbeda yang bisa dipilih dengan menekan tombol sesaat, opsi ke-7 adalah tanpa transisi. Yang saya suka bernama newrandom() yang merupakan preset (int mode = 1;).

Saya telah membuat beberapa perubahan pada perpustakaan untuk kompatibilitas dengan urutan yang dipimpin. Di dalam file segment_display.cpp, di akhir, alihkan (i) Anda dapat mengubah urutan led Anda. Setelah selesai ganti file di dalamnya

/Arduino/libraries/7segment_NeoPixel-master

Perpustakaan yang dibutuhkan:

  • avr.sleep
  • segmen_tampilan
  • DS3231
  • WaktuLib
  • Kabel
  • Adafruit NeoPixel
  • Zona waktu

Langkah 4: Saatnya Mengucapkan Selamat Tinggal

Saya suka jam ini, waktu saat ini terlihat jelas dari jauh dan mati ketika saya tidak membutuhkannya.

Bagaimana bisa meminta lebih dari sebuah jam?

Direkomendasikan: