Daftar Isi:

Jam, Layar LCD, Inframerah untuk Diatur: 6 Langkah
Jam, Layar LCD, Inframerah untuk Diatur: 6 Langkah

Video: Jam, Layar LCD, Inframerah untuk Diatur: 6 Langkah

Video: Jam, Layar LCD, Inframerah untuk Diatur: 6 Langkah
Video: Cara mengatur jam tangan LED layar sentuh || touchscreen 2024, November
Anonim
Jam, Layar LCD, Inframerah untuk Diatur
Jam, Layar LCD, Inframerah untuk Diatur
Jam, Layar LCD, Inframerah untuk Diatur
Jam, Layar LCD, Inframerah untuk Diatur

Bangun jam waktu nyata yang menjaga waktu aktif dalam beberapa menit dalam setahun. Kode dan komponen dapat dengan mudah digunakan kembali ke proyek lain.

Proyek ini membutuhkan jumlah kabel minimum dan tidak ada penyolderan. Pencatat waktu adalah jam waktu nyata DS3231. Waktu ditampilkan pada LCD 1602 yang murah. Kedua modul menggunakan komunikasi I2C. I2C hanya menggunakan 2 kabel per modul saat menghubungkan ke Arduino. Saya menggunakan Arduino Nano karena cocok dengan papan tempat memotong roti. Instruksi berikut akan bekerja dengan Arduino Uno karena memiliki nomor pin yang sama dengan Nano untuk proyek ini. Komponen lainnya adalah penerima inframerah. Hal ini memungkinkan Anda untuk menggunakan remote kontrol umum seperti remote TV untuk mengatur waktu seperti yang Anda lakukan pada smart TV kami. Penerima inframerah hanya membutuhkan satu kabel untuk menghubungkannya ke Arduino.

Langkah pertama adalah menguji Arduino dan menghubungkannya ke papan tempat memotong roti. Langkah-langkah berikut yang dirancang untuk bekerja secara mandiri. Setiap langkah memiliki instruksi pengkabelan dan instruksi pengujian. Ketika saya membangun proyek, saya mengirim dan menguji setiap komponen untuk memastikan mereka berfungsi. Ini membantu mengintegrasikan sejumlah komponen karena mengetahui bahwa setiap pekerjaan dan saya dapat fokus pada persyaratan integrasi.

Instruksi ini mengharuskan Anda menginstal Arduino IDE. Anda juga harus memiliki keterampilan dasar untuk mengunduh program sketsa Arduino dari tautan di proyek ini, membuat direktori untuk program (nama direktori sama dengan nama program). Langkah selanjutnya adalah memuat, melihat dan mengedit program di IDE. Kemudian, unggah program melalui kabel USB ke papan Arduino Anda.

Perlengkapan

  • Nano V3 ATmega328P CH340G Papan pengontrol mikro untuk Arduino. Sebagai alternatif, Anda dapat menggunakan Uno.
  • DS3231 jam waktu nyata dan baterai CR2032.
  • 1602 LCD dengan modul I2C
  • Penerima inframerah dan remote control. Saya menggunakan Kit Modul Remote Control Nirkabel IR yang disertakan dengan penerima Inframerah dan remote control inframerah.
  • Papan tempat memotong roti
  • Kabel kawat
  • Adaptor dinding 5 volt

Saya membeli suku cadang di eBay, kebanyakan dari distributor Hong Kong atau China. Distributor AS terkadang memiliki suku cadang yang sama atau serupa dengan harga yang wajar dan pengiriman yang lebih cepat. Suku cadang China membutuhkan waktu 3 hingga 6 minggu untuk dikirim. Distributor yang saya gunakan semuanya dapat diandalkan.

Perkiraan biaya: Nano $3, DS3231 $1, LCD $3, Inframerah kit $1, papan tempat memotong roti $2, paket 40 kabel kabel $1, $1 untuk adaptor dinding 5 volt. Totalnya, sekitar $11. Catatan, saya membeli Nano dan LCD dengan pin papan tempat memotong roti yang sudah disolder, karena keterampilan menyolder saya buruk. Untuk baterai jam, saya membeli baterai lithium CR2032 5 pak dengan harga sekitar $1,25. Saya juga membeli 5 pak DS3231 karena saya suka potongan waktu. Proyek ini menggunakan 1 papan tempat memotong roti. Saya membeli paket 3 papan tempat memotong roti dengan harga sekitar $7; kesepakatan yang lebih baik daripada membeli papan individu.

Langkah 1: Tambahkan Arduino Nano ke Breadboard

Tambahkan Arduino Nano ke Breadboard
Tambahkan Arduino Nano ke Breadboard

Colokkan Arduino Nano ke Breadboard. Atau, jika Anda mau, Anda dapat menggunakan Arduino Uno untuk proyek ini; mereka berdua menggunakan pin yang sama untuk proyek ini. Hubungkan Nano (atau Uno) ke komputer Anda melalui kabel USB.

Hubungkan daya dan arde dari Arduino ke bilah daya papan tempat memotong roti. Hubungkan pin Arduino 5+ ke bilah positif papan tempat memotong roti. Hubungkan pin Arduino GRN (ground) ke bar negatif (ground) breadboard. Ini akan digunakan oleh komponen lain.

Unduh dan jalankan program uji Arduino dasar: arduinoTest.ino. Saat menjalankan program, lampu LED onboard akan menyala selama 1 detik, lalu mati selama 1 detik. Juga, pesan diposting yang dapat dilihat di Arduino IDE Tools/Serial Monitor.

+++ Pengaturan.

+ Menginisialisasi pin digital LED on board untuk output. LED mati. ++ Pergi ke loop. + Penghitung putaran = 1 + Penghitung putaran = 2 + Penghitung putaran = 3 …

Sebagai latihan, ubah waktu tunda pada lampu yang berkedip, unggah program yang diubah, dan konfirmasikan perubahannya.

Pada foto di atas adalah kotak kit kawat jumper papan tempat memotong roti tanpa solder 140 potong yang bisa Anda dapatkan dengan harga 3 hingga 5 dolar. Mereka membuat papan lebih rapi yang menggunakan kabel panjang untuk koneksi pendek.

Langkah 2: Tambahkan Modul Jam DS3231 dan Hubungkan ke Arduino

Tambahkan Modul Jam DS3231 dan Hubungkan ke Arduino
Tambahkan Modul Jam DS3231 dan Hubungkan ke Arduino

Pasang modul jam ke papan tempat memotong roti. Hubungkan pin GND dari modul jam, ke strip batang arde papan tempat memotong roti. Hubungkan pin VCC dari modul jam, ke strip batang positif papan tempat memotong roti. Hubungkan pin SDA (data) modul jam ke pin A4 Arduino (pin data I2C). Hubungkan pin SCL (jam) modul jam ke pin A5 dari Arduino (pin jam I2C).

Di Arduino IDE, instal Perpustakaan Jam DS3231. Pilih Alat/Kelola Perpustakaan. Saring pencarian Anda dengan mengetikkan 'rtclib'. Pilih RTClib oleh Adafruit (untuk referensi, tautan perpustakaan).

Unduh dan jalankan program pengujian dasar: clockTest.ino. Saat menjalankan program, pesan waktu jam diposting yang dapat dilihat di Arduino IDE Tools/Serial Monitor.

+++ Pengaturan.

+ Jam diatur. ++ Pergi ke loop. ---------------------------------------- + Tanggal & Waktu Saat Ini: 2020/3/ 22 (Minggu) 11:42:3 + Tanggal & Waktu Saat Ini: 22/3/2020 (Minggu) 11:42:4 + Tanggal & Waktu Sekarang: 2020/3/22 (Minggu) 11:42:5 …

Sebagai latihan, gunakan rtc.adjust() untuk menyetel waktu dan tanggal jam, mengunggah program yang diubah, dan mengonfirmasi perubahan.

rtc.adjust(DateTime(2020, 3, 19, 10, 59, 50)); // Hari pertama musim semi, 2020.

Langkah 3: Tambahkan Modul Tampilan LCD 1602 dan Hubungkan ke Arduino

Tambahkan Modul Tampilan LCD 1602 dan Hubungkan ke Arduino
Tambahkan Modul Tampilan LCD 1602 dan Hubungkan ke Arduino

Pasang modul LCD ke papan tempat memotong roti. Hubungkan pin GND dari modul jam, ke strip batang arde papan tempat memotong roti. Hubungkan pin VCC dari modul jam, ke strip batang positif papan tempat memotong roti. Hubungkan pin SDA (data) modul jam ke pin A4 Arduino (pin data I2C). Hubungkan pin SCL (jam) modul jam ke pin A5 dari Arduino (pin jam I2C).

Di Arduino IDE, instal 1602 LCD Library. Pilih Alat/Kelola Perpustakaan. Saring pencarian Anda dengan mengetikkan 'LiquidCrystal'. Pilih LiquidCrystal I2C oleh Frank de Barbander (untuk referensi, tautan perpustakaan).

Unduh dan jalankan program pengujian dasar: lcd1602Test.ino. Saat menjalankan program, pesan waktu jam diposting yang dapat dilihat di Arduino IDE Tools/Serial Monitor.

+++ Pengaturan.

+ LCD siap pakai. +++ Pergi ke loop. + Penghitung = 1 + Penghitung = 2 + Penghitung = 3 …

Sebagai latihan, ubah pesan tampilan LCD, unggah program yang diubah, dan konfirmasikan perubahannya.

Langkah 4: Tambahkan Penerima Inframerah dan Hubungkan ke Arduino

Tambahkan Penerima Inframerah dan Hubungkan ke Arduino
Tambahkan Penerima Inframerah dan Hubungkan ke Arduino

Pasang kabel kabel betina ke jantan ke penerima inframerah (ujung betina). Hubungkan pin arde modul jam, ke strip batang arde papan tempat memotong roti. Hubungkan pin daya modul jam, ke strip batang positif papan tempat memotong roti. Hubungkan pin output penerima inframerah, ke pin Arduino A1.

Hubungkan penerima inframerah, pin dari kiri atas ke kanan:

Paling kiri (sebelah X) - Nano pin A1 Center - 5V Kanan - ground

A1 + - - Sambungan pin nano

| | | - Pin penerima inframerah --------- |S | | | | --- | | | | | | --- | | | ---------

Di Arduino IDE, instal perpustakaan inframerah. Pilih Alat/Kelola Perpustakaan. Saring pencarian Anda dengan mengetik 'IRremote'. Pilih IRremote by Shirriff (untuk referensi, tautan perpustakaan).

Unduh dan jalankan program pengujian dasar: infraredReceiverTest.ino. Saat menjalankan program, arahkan remote control Anda ke penerima dan tekan berbagai tombol seperti angka dari 0 hingga 9. Keluaran pesan serial (tercetak) yang dapat dilihat di Alat/Monitor Serial Arduino IDE.

+++ Pengaturan.

+ Menginisialisasi penerima inframerah. ++ Pergi ke loop. + Tombol OK - Toggle + Key > - next + Key < - sebelumnya + Key up + Key down + Key 1: + Key 2: + Key 3: + Key 4: + Key 6: + Key 7: + Key 8: + Kunci 9: + Kunci 0: + Kunci * (Kembali) + Kunci # (Keluar)

Sebagai latihan, gunakan remote TV untuk melihat nilai yang dicetak. Anda kemudian dapat memodifikasi program untuk menggunakan nilai-nilai dalam pernyataan sakelar fungsi infraredSwitch(). Misalnya, tekan tombol "0" dan dapatkan nilai untuk remote Anda, misalnya, "0xE0E08877". Kemudian, tambahkan case ke dalam pernyataan switch seperti pada cuplikan kode berikut.

kasus 0xFF9867:

kasus 0xE0E08877: Serial.print("+ Kunci 0:"); Serial.println(""); merusak;

Langkah 5: Muat Program Sketsa Arduino Proyek Jam dan Ujilah

Muat Program Sketsa Arduino Proyek Jam dan Ujilah
Muat Program Sketsa Arduino Proyek Jam dan Ujilah
Muat Program Sketsa Arduino Proyek Jam dan Ujilah
Muat Program Sketsa Arduino Proyek Jam dan Ujilah
Muat Program Sketsa Arduino Proyek Jam dan Ujilah
Muat Program Sketsa Arduino Proyek Jam dan Ujilah

Sekarang semua komponen ditambahkan ke papan tempat memotong roti, disambungkan, dan diuji; saatnya memuat program jam utama dan menjalankannya. Program jam mendapatkan waktu dari modul jam, menampilkan waktu pada LCD, dan memungkinkan Anda untuk mengatur waktu menggunakan remote control inframerah.

Unduh dan jalankan program jam proyek: clockLcdSet.ino.

Ketika program dimulai, ia akan menampilkan waktu DS3231 pada layar LCD 1602. Pesan dapat dilihat di Arduino IDE Tools/Serial Monitor.

+++ Pengaturan.

+ LCD-set. + syncCountWithClock, theCounterHours=13 theCounterMinutes=12 theCounterSeconds=13 + Jam disetel dan disinkronkan dengan variabel program. + Penerima inframerah diaktifkan. ++ Pergi ke loop. + clockPulseMinute(), theCounterMinutes= 15 + clockPulseMinute(), theCounterMinutes= 16 + clockPulseMinute(), theCounterMinutes= 17 …

Arahkan remote control Anda ke penerima dan tekan tombol panah kanan. Tahun akan ditampilkan untuk pengaturan. Tekan tombol panah kanan beberapa kali untuk melihat bahwa Anda dapat mengatur tahun, bulan, hari, jam, menit, dan detik. Untuk menetapkan nilai waktu, buka nilai. Gunakan panah atas dan bawah untuk mengatur nilai tampilan. Kemudian gunakan tombol "OK" untuk mengatur nilai jam. Satu nilai ditetapkan pada satu waktu.

Langkah 6: Catu Daya Eksternal

Catu Daya Eksternal
Catu Daya Eksternal

Sekarang setelah jam Anda diuji dan berfungsi, Anda dapat mencabutnya dari komputer dan menggunakan catu daya independen. Untuk kesederhanaan, saya menggunakan adaptor dinding 5 volt, yang dapat dibeli dengan harga sekitar satu dolar, dan kabel USB, satu dolar lagi. Kabel menghubungkan Arduino ke adaptor dinding +5V. Karena daya Arduino dan pin ground terhubung ke papan tempat memotong roti, itu akan memberi daya pada komponen lainnya.

Karena kesederhanaan dan biayanya yang rendah, saya menggunakan kombinasi yang sama ini untuk menggerakkan proyek lain.

Saya harap Anda berhasil dan menikmati pembuatan jam LCD yang dikendalikan inframerah.

Direkomendasikan: