Daftar Isi:
- Langkah 1: Daftar Bahan
- Langkah 2: Ukiran dan Ukiran
- Langkah 3: Pengamplasan dan Aplikasi Pernis
- Langkah 4: Membuat Sirkuit
- Langkah 5: Mengunggah Program
- Langkah 6: Menempatkan LED
- Langkah 7: Menghubungkan LED
- Langkah 8: Menghubungkan Papan Sirkuit Dengan LED
- Langkah 9: Menempatkan Kelereng
Video: Jam Meja Biner: 9 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Jam Biner luar biasa dan eksklusif untuk orang yang mengetahui biner (bahasa perangkat digital). Jika Anda seorang teknisi, jam aneh ini cocok untuk Anda. Jadi, buat sendiri dan rahasiakan waktu Anda!
Anda akan menemukan banyak jam biner dari berbagai jenis di Internet. Bahkan Anda dapat membeli jam biner dari toko online seperti amazon.com. Tapi jam ini berbeda dari semuanya dan disini saya menggunakan bermain marmer untuk memberikan tampilan yang elegan.
Sebelum turun silahkan tonton video demonya.
Langkah 1: Daftar Bahan
Komponen Perangkat Keras
1. Arduino Pro Micro (beli dari aliexpress.com): Ini adalah jantung utama jam dan membaca waktu dari RTC dan memberikan instruksi untuk menggerakkan LED yang sesuai. Anda dapat menggunakan Arduino Nano bahkan Arduino Uno alih-alih Pro Micro jika ukurannya tidak masalah bagi Anda.
2. Modul RTC DS3231 (beli dari aliexpress.com): DS3231 RTC melacak waktu bahkan ketika listrik padam. Meskipun RTC lain seperti DS1307 dapat digunakan, DS3231 lebih akurat.
3. IC Driver LED MAX7219CNG (beli dari aliexpress.com): Arduino memiliki jumlah pin yang terbatas. Jadi, jika Anda ingin menggerakkan banyak LED tanpa membuang pin Arduino, MAX7219 adalah penyelamatnya. Dibutuhkan data serial dan dapat menggerakkan 64 LED secara mandiri.
4. 20 PCS LED Biru, 5mm (beli dari aliexpress.com): Biru memberikan hasil terbaik untuk saya. Anda bisa mencoba dengan warna lain.
5. 20 PCS Playing Marble (beli dari aliexpress.com): Marmer bermain ukuran standar digunakan. Kelereng harus transparan untuk melewatkan cahaya.
6. Resistor 10K: Digunakan untuk mengontrol arus segmen IC MAX7219. Lihat lembar data untuk mengetahui nilai pasti untuk arus segmen yang berbeda.
7. Kabel
8. Prototipe Papan PCB (beli dari aliexpress.com): Saya menggunakan papan PCB prototipe untuk IC MAX7219 dengan basis IC. Anda juga dapat mendesain papan PCB kustom Anda.
Alat Perangkat Keras
1. Mesin CNC Router Kayu CNC 3018 PRO Laser Engraver (beli dari aliexpress.com): Mesin CNG DIY ini digunakan untuk mengukir pada kayu untuk marmer dan LED. Ini adalah mesin yang sangat baik dengan harga murah untuk setiap pembuat dan penghobi.
2. Stasiun Solder (beli satu dari aliexpress.com): Beberapa solder diperlukan untuk proyek dan besi solder yang baik adalah alat yang harus dimiliki untuk pembuat. 60W adalah pilihan yang baik untuk penyolderan DIY.
3. Pemotong Kawat (beli dari aliexpress.com)
4. Titanium Coated Carbide End Milling Cutter untuk CNC (beli dari aliexpress.com): Anda juga dapat mencoba dengan mata bor yang disediakan bersama mesin. Dalam hal ini, Anda harus membuat beberapa perubahan pada desain.
Langkah 2: Ukiran dan Ukiran
Saya mengambil sepotong kayu Soft Maple 165X145X18.8 mm untuk menempatkan LED jam. Di bagian atas setiap led, saya akan menempatkan marmer dan ukuran marmer bermain standar berdiameter 15,5mm. Jadi, saya membuat lubang 15,7 mm dengan kedalaman 7 mm. Di tengah lubang, saya membuat bor 5mm untuk menempatkan LED. Semua teks dibuat dengan kedalaman 2mm. Anda dapat menambah atau mengurangi kedalaman pilihan Anda. Anda juga dapat mencoba pengukiran laser untuk teks.
Desain lengkap dibuat oleh Easel dari Inventables. Easel adalah platform perangkat lunak berbasis web yang memungkinkan Anda mendesain dan mengukir dari satu program sederhana dan sebagian besar fiturnya bebas digunakan. Anda hanya perlu login ke sistem dengan membuat akun atau menggunakan Gmail.
Easel Pro adalah perangkat lunak cloud berbasis keanggotaan yang dibangun di atas perangkat lunak Easel gratis dari Inventables. Easel dan Easel Pro meminimalkan hambatan yang terkait dengan perangkat lunak pembuatan produk CAD dan CAM yang rumit, sehingga memudahkan pengguna untuk menghasilkan produk fisik.
Menggunakan Easel Anda dapat mengekspor file desain dalam format G-code atau langsung mengatur CNC Anda dari lingkungan Easel dan mengirim perintah ke CNC. Dalam hal ini, Anda perlu menginstal driver untuk Kuda-kuda. Anda juga dapat mengimpor G-code yang dibuat sebelumnya ke dalam Easel IDE dan memodifikasinya. Saya menyertakan file desain dengan ini. Anda dapat dengan mudah memodifikasi desain sesuai pilihan Anda menggunakan Easel.
Langkah 3: Pengamplasan dan Aplikasi Pernis
Pernis dapat memberikan hasil akhir yang indah untuk proyek kayu dan lukisan. Sebelum menerapkan pernis ke kayu, ampelas bagian Anda dan bersihkan ruang kerja Anda. Pengamplasan memberikan tampilan yang halus dan mempersiapkan kayu untuk pernis. Oleskan pernis dalam beberapa lapisan tipis, biarkan masing-masing benar-benar kering sebelum melanjutkan ke lapisan berikutnya. Untuk mengecat lukisan, biarkan hingga benar-benar kering, lalu sapukan pernis dengan hati-hati. Satu lapisan sudah cukup untuk banyak lukisan, tetapi Anda bisa menambahkan lapisan tambahan asalkan lapisan sebelumnya benar-benar kering.
Sebelum menerapkan pernis, Anda harus menghilangkan ketidaksempurnaan dan noda sebelum menerapkan pernis. Untuk melakukannya Gunakan amplas 100 grit untuk bagian yang belum selesai, dan kerjakan dengan serat kayu. Amplas perlahan sampai potongannya halus. Setelah membersihkan potongan kayu, aplikasikan pernis di area yang berventilasi baik.
Varnish menyelamatkan kayu dari debu dan kelembaban lingkungan tetapi dapat mempengaruhi warna kayu.
Langkah 4: Membuat Sirkuit
Komponen utama jam adalah board mikrokontroler Arduino Pro Mini dan modul DS3231 RTC. Koneksi Arduino Pro Mini dan modul RTC sangat sederhana. Anda perlu menghubungkan pin SDA modul RTC ke pin SDA Arduino dan pin SCL modul RTC ke pin SCL Arduino. Pin SDA dan SCL sebenarnya adalah pin A4, dan A5 dari Arduino masing-masing. Anda juga perlu membuat koneksi ground yang sama antara modul Arduino dan RTC. Saya menggunakan kabel jumper untuk membuat koneksi.
Koneksi antara Arduino dan DS3231 RTC:
Arduino | DS3231 |
---|---|
SCL (A5) | SCL |
SDA (A4) | SDA |
5V | VCC |
GND | GND |
Untuk menunjukkan jam, menit dan detik jam biner diperlukan 20 LED. Jika Anda ingin menunjukkan tanggal, itu membutuhkan lebih banyak. Papan Arduino memiliki keterbatasan pin GPIO. Jadi, saya menggunakan IC driver LED MAX7219CNG untuk menggerakkan banyak LED hanya menggunakan tiga pin papan Arduino.
IC driver MAX7219 mampu menggerakkan 64 LED individu saat hanya menggunakan 3 kabel untuk komunikasi dengan Arduino, dan terlebih lagi, kita dapat melakukan daisy chain beberapa driver dan matriks dan masih menggunakan 3 kabel yang sama.
64 LED digerakkan oleh 16 pin keluaran IC. Pertanyaannya sekarang adalah bagaimana mungkin. Nah, jumlah maksimum LED yang menyala pada saat yang sama sebenarnya adalah delapan. LED diatur sebagai 8x8 set baris dan kolom. Jadi MAX7219 mengaktifkan setiap kolom untuk waktu yang sangat singkat dan pada saat yang sama juga menggerakkan setiap baris. Jadi dengan cepat beralih melalui kolom dan baris mata manusia hanya akan melihat cahaya terus menerus.
VCC dan GND dari MAX7219 masuk ke pin 5V dan GND Arduino dan tiga pin lainnya, DIN, CLK, dan CS masuk ke pin digital papan Arduino. Jika kita ingin menghubungkan lebih dari satu modul kita tinggal menghubungkan pin output dari breakout board sebelumnya ke pin input modul baru. Sebenarnya semua pin ini sama kecuali pin DOUT dari board sebelumnya masuk ke pin DIN board yang baru.
Koneksi antara Arduino dan MAX7219CNG:
Arduino | MAX7219 |
---|---|
D12 | KERIUHAN |
D11 | CLK |
H10 | MEMUAT |
GND | GND |
Langkah 5: Mengunggah Program
Seluruh program ditulis dalam lingkungan Arduino. Dua perpustakaan eksternal digunakan untuk sketsa. Satu untuk modul RTC dan satu lagi untuk IC MAX7219. Unduh perpustakaan dari tautan dan tambahkan ke Arduino IED sebelum mengkompilasi program.
Mengunggah program di Arduino Pro Mini agak rumit. Simak tutorialnya jika belum pernah menggunakan Arduino Pro Mini:
/*
GIT: https://github.com/jarzebski/Arduino-DS3231 > GIT: https://github.com/jarzebski/Arduino-DS3231 > */ #include "Wire.h" #include "DS3231.h" #include "LedControl.h" /* Sekarang kita membutuhkan LedControl untuk bekerja. ***** Nomor pin ini mungkin tidak akan berfungsi dengan perangkat keras Anda ***** pin 12 terhubung ke DataIn pin 11 terhubung ke CLK pin 10 terhubung ke LOAD Kami hanya memiliki satu MAX72XX. */ DS3231 jam; RTCDateTime dt; LedControl lc=LedControl(12, 11, 10, 1); int detik, menit, jam; nomor byte[10]={B00000000, B01000000, B00100000, B01100000, B00010000, B01010000, B00110000, B01110000, B00001000, B01001000}; void setup() { //Serial.begin(9600); /* MAX72XX dalam mode hemat daya saat startup, kita harus melakukan wakeup call */ lc.shutdown(0, false); /* Atur kecerahan ke nilai sedang */ lc.setIntensity(0, 15); /* dan hapus tampilan */ lc.clearDisplay(0); //lc.setLed(0, baris, kolom, benar); // lc.setRow(0, 0, B111111111); // lc.setRow(0, 1, B11111111); // lc.setRow(0, 2, B11111111); // lc.setRow(0, 3, B11111111); // lc.setRow(0, 4, B111111111); // lc.setRow(0, 5, B11111111); // lc.setColumn(0, 2, B11111111); // lc.setColumn(0, 3, B11111111); // lc.setColumn(0, 4, B11111111); // lc.setColumn(0, 5, B11111111); // Inisialisasi DS3231 clock.begin(); // Setel waktu kompilasi sketsa //clock.setDateTime(_DATE_, _TIME_); pinMode(5, INPUT_PULLUP); pinMode(6, INPUT_PULLUP); pinMode(7, INPUT_PULLUP); } int menu = 0, atas, bawah; int jam_satu; int jam_ten; int menit_satu; int menit_ten; int detik_satu; int detik_ten; void loop() { if(digitalRead(5)==0){ delay(300); menu++; jika(menu>3) menu = 0; } if(menu==0){ dt = clock.getDateTime(); jam = dt.jam; menit = dt.menit; detik = dt.detik; if(jam>12) jam = jam - 12; if(jam==0) jam = 1; jam_satu = jam%10; jam_ten = jam/10; menit_satu = menit%10; menit_ten = menit/10; detik_satu = detik%10; detik_ten = detik/10; lc.setRow(0, 0, angka[seconds_one]); lc.setRow(0, 1, angka[seconds_ten]); lc.setRow(0, 2, angka[minutes_one]); lc.setRow(0, 3, angka[minutes_ten]); lc.setRow(0, 4, angka[jam_satu]); lc.setRow(0, 5, angka[jam_ten]); } if(menu==1){ if(digitalRead(6)==0){ delay(300); jam++; if(jam>=24)jam = 0; } if(digitalRead(7)==0){ delay(300); jam--; if(jam=60) menit = 0; } if(digitalRead(7)==0){ delay(300); menit--; if(menit<0) menit = 0; } menit_satu = menit%10; menit_ten = menit/10; lc.setRow(0, 4, B00000000); lc.setRow(0, 5, B00000000); lc.setRow(0, 1, B00000000); lc.setRow(0, 0, B00000000); lc.setRow(0, 2, angka[minutes_one]); lc.setRow(0, 3, angka[minutes_ten]); } if(menu==3){ clock.setDateTime(2020, 4, 13, jam, menit, 01); menu = 0; } //lc.setLed(0, baris, col, false); //lc.setLed(0, baris, kolom, benar); //lc.setColumn(0, col, B10100000); //lc.setRow(0, 4, B11111111); //lc.setRow(0, baris, (byte)0); //lc.setColumn(0, col, (byte)0); // Untuk awalan nol lihat contoh DS3231_dateformat // Serial.print("Data mentah: "); // Serial.print(dt.tahun); Serial.print("-"); // Serial.print(dt.bulan); Serial.print("-"); // Serial.print(dt.hari); Serial.print(""); // Serial.print(dt.jam); Serial.print(":"); // Serial.print(dt.menit); Serial.print(":"); // Serial.print(dt.detik); Serial.println(""); // // penundaan(1000); }
Langkah 6: Menempatkan LED
Pada tahap ini, saya akan meletakkan semua LED ke lubang papan kayu. Koneksi LED ditunjukkan dalam skema. Karena kita akan menggunakan driver LED MAX7219 untuk menggerakkan LED, semua LED harus terhubung dalam bentuk matriks. Jadi, saya menghubungkan pin anoda dari semua LED di setiap kolom bersama-sama dan semua pin katoda dari setiap baris bersama-sama sesuai dengan skema. Sekarang, pin kolom kami sebenarnya adalah pin anoda LED dan pin baris sebenarnya adalah pin katoda LED.
Untuk menggerakkan LED menggunakan MAX7219 Anda harus menghubungkan pin katoda led ke pin digit IC dan pin anoda led ke pin segmen IC. Jadi, pin kolom kami harus terhubung ke pin segmen dan pin baris harus terhubung ke pin digit MAX7219.
Anda perlu menghubungkan resistor antara pin ISET dan VCC dari IC MAX7219 dan resistor ini mengontrol arus pin segmen. Saya menggunakan resistor 10K untuk mempertahankan 20mA di setiap pin segmen.
Langkah 7: Menghubungkan LED
Pada tahap ini, saya menghubungkan semua LED dalam format matriks baris-kolom. Saya perlu menggunakan beberapa kabel jumper tambahan untuk menghubungkan LED tetapi Anda dapat membuat koneksi tanpa bantuan kabel tambahan jika kabel LED cukup panjang untuk saling bersentuhan.
Dalam konfigurasi ini, tidak diperlukan resistor karena MAX7219 akan menangani arus. Tugas Anda adalah memilih nilai yang tepat untuk resistor ISET dan menarik pin ISET dengan resistor ini. Sebelum menempatkan dan menghubungkan LED, saya sarankan Anda memeriksa setiap LED. Karena menempatkan LED yang buruk akan menghabiskan banyak waktu. Pada langkah selanjutnya, kita akan menghubungkan kabel baris dan kolom ke ic MAX.
Langkah 8: Menghubungkan Papan Sirkuit Dengan LED
Papan sirkuit kami termasuk RTC, Arduino, dan MAX7219 sudah siap untuk waktu yang lama dan kami juga menyiapkan matriks LED pada tahap sebelumnya. Sekarang kita perlu menghubungkan semua hal bersama-sama sesuai dengan skema. Pertama, kita perlu menghubungkan kabel baris dan kolom ke MAX7219IC. Koneksi disebutkan dalam skema. Untuk membuatnya lebih jelas ikuti tabel yang diberikan di bawah ini.
Matriks LED | MAX7219CNG |
---|---|
ROW0 | DIGIT0 |
ROW1 | DIGIT1 |
ROW2 | DIGIT2 |
ROW3 | DIGIT3 |
KOLOM0 | SEGA |
KOLOM1 | SEGB |
KOLOM2 | SEGC |
KOLOM3 | SEGD |
KOLOM4 | SEGE |
KOLOM5 | SEGF |
ROW0-> Baris paling atas
COLUMN0 -> Kolom paling kanan (SS COLUMN)
Setelah membuat sambungan, Anda perlu memperbaiki papan PCB dan Arduino dengan potongan kayu untuk menghindari putusnya sambungan. Saya menggunakan lem panas untuk memperbaiki semua sirkuit di tempatnya. Untuk menghindari korsleting, gunakan lem dalam jumlah besar untuk menyembunyikan sambungan solder di sisi bawah PCB.
Untuk membuat jam dapat digunakan, Anda perlu menyimpan opsi untuk menyesuaikan waktu saat diperlukan. Saya menambahkan tiga sakelar tombol untuk menyesuaikan waktu. Satu untuk mengubah opsi dan dua untuk menambah dan mengurangi jam dan menit. Tombol ditempatkan di sudut kanan atas sehingga dapat dengan mudah diakses.
Langkah 9: Menempatkan Kelereng
Ini adalah tahap akhir dari proyek kami. Semua koneksi sirkuit selesai. Sekarang Anda perlu menempatkan marmer di sisi atas jam kayu. Untuk menempatkan kelereng saya menggunakan lem panas. Gunakan lem warna putih transparan untuk tujuan tersebut. Saya mengoleskan lem panas di setiap lubang dari sisi atas dan di atas LED saya dengan lembut meletakkan marmer di setiap lubang. Menambahkan lem secara merata akan meningkatkan cahaya led. Saya menggunakan LED BIRU untuk jam saya. Itu memberi saya hasil terbaik.
Berikan kekuatan pada jam. Jika itu menunjukkan waktu maka Selamat!!!
Kau berhasil!
Menikmati!
Runner Up dalam Kontes Make it Glow
Direkomendasikan:
Jam Biner Mikro: 10 Langkah (dengan Gambar)
Micro Binary Clock: Setelah sebelumnya membuat Instructable (Binary DVM), yang memanfaatkan area tampilan terbatas menggunakan biner. Itu hanya langkah kecil setelah sebelumnya membuat modul kode utama untuk konversi Desimal ke Biner untuk membuat Jam Biner tetapi t
Tampilan Jam Biner BigBit: 9 Langkah (dengan Gambar)
Tampilan Jam Biner BigBit: Dalam Instructable (Microbit Binary Clock) sebelumnya, proyek ini ideal sebagai alat desktop portabel karena tampilannya cukup kecil. Oleh karena itu, tampaknya tepat bahwa versi berikutnya adalah versi rak atau dinding tetapi jauh lebih besar
Jam Alarm Biner Arduino DIY: 14 Langkah (dengan Gambar)
Jam Alarm Biner Arduino DIY: Ini adalah jam biner klasik lagi! Tapi kali ini dengan lebih banyak fungsi tambahan! Dalam instruksi ini, saya akan menunjukkan kepada Anda cara membuat jam alarm biner dengan Arduino yang dapat menunjukkan tidak hanya waktu, tetapi tanggal, bulan, bahkan dengan timer dan alarm yang menyenangkan
Jam Marmer LED Biner: 6 Langkah (dengan Gambar)
Jam Marmer LED Biner: Sekarang saya pikir hampir semua orang memiliki jam biner dan inilah versi saya. Apa yang saya nikmati adalah bahwa proyek ini menggabungkan beberapa pekerjaan kayu, pemrograman, pembelajaran, elektronik, dan mungkin hanya sedikit kreativitas artistik. Ini menunjukkan waktu, bulan, tanggal, hari
Penguat Meja Dengan Visualisasi Audio, Jam Biner & Penerima FM: 8 Langkah (dengan Gambar)
Amplifier Meja Dengan Visualisasi Audio, Jam Biner & Penerima FM: Saya suka amplifier dan hari ini, saya akan membagikan amplifier meja berdaya rendah yang saya buat baru-baru ini. Amplifier yang saya rancang memiliki beberapa fitur menarik. Ini memiliki jam biner terintegrasi dan dapat memberikan waktu dan tanggal dan dapat memvisualisasikan audio yang sering disebut audio