Daftar Isi:

Jam Dinding Magnetik yang Memukau: 24 Langkah (dengan Gambar)
Jam Dinding Magnetik yang Memukau: 24 Langkah (dengan Gambar)

Video: Jam Dinding Magnetik yang Memukau: 24 Langkah (dengan Gambar)

Video: Jam Dinding Magnetik yang Memukau: 24 Langkah (dengan Gambar)
Video: Cara Perbaiki Jam Dinding yang Rusak || detikannya nggak mau muter 2024, November
Anonim
Jam Dinding Magnetik yang Memukau
Jam Dinding Magnetik yang Memukau
Jam Dinding Magnetik yang Memukau
Jam Dinding Magnetik yang Memukau

Jam mekanis selalu membuat saya terpesona. Cara semua roda gigi internal, pegas, dan pelepasan bekerja bersama untuk menghasilkan penunjuk waktu yang andal secara konstan selalu tampak di luar jangkauan keahlian saya yang terbatas. Untungnya elektronik modern dan komponen cetak 3D dapat menjembatani kesenjangan untuk menciptakan sesuatu yang sederhana yang tidak bergantung pada komponen logam kecil yang presisi.

Jam dinding minimalis ini menyembunyikan sepasang ring gear cetak 3D yang digerakkan oleh motor stepper murah yang memutar magnet di belakang veneer walnut klasik.

Awalnya terinspirasi oleh STORY Clock, saya menginginkan penunjuk waktu yang menunjukkan waktu hanya menggunakan bantalan bola vs pembacaan digital dan bantalan bola yang bergerak lambat yang digunakan produk mereka.

Gambar
Gambar

Langkah 1: Alat dan Bahan

Alat dan bahan
Alat dan bahan
Alat dan bahan
Alat dan bahan
Alat dan bahan
Alat dan bahan
Alat dan bahan
Alat dan bahan

Bahan:

  • 13 x 13 x 2 in. Kayu Lapis/Papan Partikel (Saya merekatkan 3 lembar kayu bekas)
  • 13 x 13 inci. Hardboard
  • Arduino Nano
  • Jam Waktu Nyata
  • Motor dan Pengemudi Stepper
  • Sensor Efek Hall
  • magnet
  • Kabel listrik
  • Adaptor AC
  • Steker
  • Aneka Sekrup Mesin
  • Aneka Sekrup Kayu
  • Bagian Cetakan 3D (Langkah Terakhir)
  • Veneer (12 x 12 inci - muka, strip panjang 40 inci)
  • Semprot Lacquer
  • Cat Semprot Hitam

Peralatan:

  • Pencetak 3D
  • Kompas
  • Pisau X-acto
  • Lem
  • klem
  • Jig Pemotong Lingkaran
  • Hack Saw
  • Pengamplas Cakram
  • Penjepit Ratchet
  • Pahat
  • Penggaris
  • Sander
  • Latihan
  • Obeng
  • Solder Besi
  • Pistol lem panas

Langkah 2: Rekatkan Bingkai Kayu Bersama

Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama
Rekatkan Bingkai Kayu Bersama

Rekatkan tiga potong kayu yang akan membentuk bingkai jam. Saya menggunakan papan partikel reklamasi dari bingkai tempat tidur tua.

Langkah 3: Potong Bingkai Menggunakan Jig Pemotongan Lingkaran

Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran
Potong Bingkai Menggunakan Jig Pemotongan Lingkaran

Tandai bagian tengah papan dan pasang ke jig pemotong lingkaran. Potong lima lingkaran dengan diameter sebagai berikut:

  • 12 inci
  • 11 1/4 inci
  • 9 1/4 inci
  • 7 1/4 inci
  • 5 3/8 inci

Langkah 4: Mencetak dan Merakit Gears

Mencetak dan Merakit Gears
Mencetak dan Merakit Gears
Mencetak dan Merakit Gears
Mencetak dan Merakit Gears

Roda gigi cincin dipecah menjadi beberapa bagian sehingga dapat dicetak pada printer kecil dan disatukan. Semua bagian dicetak dalam ABS untuk membantu proses sekering yang ditunjukkan pada langkah berikutnya. Pasir semua tepi dan permukaan bagian.

Cetak jumlah suku cadang berikut yang ditemukan di langkah 22:

  • Magnet Segmen Cincin Gear 1 Jam
  • Segmen Ring Gear 6 Jam Dasar
  • 1 - Jam Penahan Ring Segmen Stepper Mount
  • Segmen Cincin Penahan 6 - Jam Dasar
  • 1 - Pemegang Sensor Efek Hall Jam
  • 1 - Magnet Segmen Ring Gear Menit
  • 7 - Segmen Ring Gear Menit Dasar
  • 1 - Menit Segmen Cincin Penahan Stepper Mount
  • 6 - Segmen Cincin Penahan Menit Dasar
  • 1 - Pemegang Sensor Efek Hall Menit
  • 2 - Gigi Pacu
  • 1 - Dudukan Elektronik

Langkah 5: Bagian "Lem" Bersama

Gambar
Gambar
Gambar
Gambar
Gambar
Gambar

Dalam botol kaca dengan beberapa aseton, larutkan cetakan yang gagal bahan pendukung lama, dll. Cat campuran aseton pada setiap jahitan untuk menyatukan potongan. Setelah sembuh, amplas setiap jahitan hingga rata.

Langkah 6: Potong Relief dalam Bingkai

Memotong Relief dalam Bingkai
Memotong Relief dalam Bingkai
Memotong Relief dalam Bingkai
Memotong Relief dalam Bingkai
Memotong Relief dalam Bingkai
Memotong Relief dalam Bingkai

Tempatkan roda gigi ring dan cincin penahan di dalam rangka dan potong relief untuk motor stepper. Saya mengukur dan memotong cincin bagian dalam terlalu besar sehingga saya menggesernya ke ukuran menggunakan beberapa pita tepi maple yang saya miliki di sekitar toko.

Langkah 7: Potong Izin untuk Sensor Efek Hall

Cut Clearance untuk Sensor Efek Hall
Cut Clearance untuk Sensor Efek Hall
Cut Clearance untuk Sensor Efek Hall
Cut Clearance untuk Sensor Efek Hall
Cut Clearance untuk Sensor Efek Hall
Cut Clearance untuk Sensor Efek Hall

Potong lubang jarak melalui cincin bagian dalam untuk sensor efek hall menit dan slot untuk sensor efek hall jam. Saya menggunakan pahat, kikir, dan gergaji tangan kecil untuk memotong jarak ini.

Langkah 8: Lem Cincin Luar

Lem Cincin Luar
Lem Cincin Luar

Rekatkan dan rekatkan cincin luar seukuran cincin penahan menit.

Langkah 9: Potong Sekrup Penyesuaian Sensor Efek Hall

Sekrup Penyesuaian Sensor Efek Hall Potong
Sekrup Penyesuaian Sensor Efek Hall Potong

Potong sekrup mesin dengan gergaji besi sehingga lebih panjang dari ketebalan cincin penahan dan pemegang sensor efek hall. Potong slot di ulir sehingga dapat disesuaikan dari ujung berulir dengan obeng pipih.

Langkah 10: Rekatkan Cincin ke Hardboard

Lem Cincin ke Hardboard
Lem Cincin ke Hardboard
Lem Cincin ke Hardboard
Lem Cincin ke Hardboard
Lem Cincin ke Hardboard
Lem Cincin ke Hardboard

Potong lingkaran hardboard hanya lebih besar dari cincin luar. Rekatkan cincin luar dan dalam ke permukaan hardboard. Gunakan cincin penahan menit dan ring gear untuk menempatkan cincin bagian dalam. Perhatikan lebih baik daripada yang saya lakukan untuk tidak merekatkan cincin bagian dalam ke belakang. Gambar dua menunjukkan potongan slot baru untuk sensor efek hall menit.

Gunakan disc sander untuk memangkas hardboard hingga seukuran cincin luar.

Langkah 11: Lem Cakram Dalam

Lem Cakram Dalam
Lem Cakram Dalam
Lem Cakram Dalam
Lem Cakram Dalam

Rekatkan cakram bagian dalam pada tempatnya menggunakan cincin penahan jam dan roda gigi ring untuk menempatkan cakram bagian dalam.

Langkah 12: Pasang Veneer

Pasang Veneer
Pasang Veneer
Pasang Veneer
Pasang Veneer
Pasang Veneer
Pasang Veneer
Pasang Veneer
Pasang Veneer

Potong secarik veneer lebih lebar dari pada jam dalam dan cukup panjang untuk membungkus jam (3,14 * diameter jam, akan mengembalikan panjang yang dibutuhkan. Tambahkan satu inci untuk memastikan bahwa Anda memiliki cukup.) Keringkan veneer ke dipotong memanjang. Oleskan lem yang cukup ke veneer dan klem di tempatnya dengan klem tali. Biarkan kering beberapa jam untuk memastikan adhesi.

Langkah 13: Potong Veneer

Potong Veneer
Potong Veneer

Dengan menggunakan pahat tajam, potong lapisan berlebih dari bagian depan dan belakang jam.

Langkah 14: Potong Veneer

Potong Veneer
Potong Veneer
Potong Veneer
Potong Veneer

Veneer saya memiliki beberapa retakan di dalamnya. Untuk membuatnya lebih mudah untuk dikerjakan, saya menerapkan selotip pelukis untuk menyatukannya. Dengan menggunakan pisau x-acto di kompas, potong lapisan lebih besar dari bagian depan jam.

Langkah 15: Lem Veneer

Lem Veneer
Lem Veneer
Lem Veneer
Lem Veneer

Gunakan cincin yang dipotong untuk menyebarkan tekanan di muka jam. Oleskan lem secukupnya ke sisi non-rekaman veneer. Arahkan butiran secara vertikal pada permukaan jam dan terapkan banyak klem yang mengencangkan masing-masing sedikit demi sedikit. Ini akan memastikan veneer tidak bergeser dan memiliki tekanan yang merata di seluruh wajah.

Saya menggunakan beberapa papan datar di sisi muka jam dan beberapa kancing di bagian belakang.

Langkah 16: Pasir dan Selesai

Pasir dan Selesai
Pasir dan Selesai
Pasir dan Selesai
Pasir dan Selesai

Dengan menggunakan amplas, dengan hati-hati lepaskan lapisan berlebih dari permukaan jam dan pasir mulai dari 220 grit hingga 600 grit.

Oleskan antara 10 dan 20 lapis pernis. Ini akan membangun permukaan yang akan dilalui bantalan bola. Tak pelak karena debu dan partikel lain di udara, saya pikir garis akan muncul di sepanjang jalur setiap bantalan bola. Menerapkan lebih banyak lapisan akhir harus menunda ini selama mungkin. Ini juga akan membuat pelapisan ulang di masa mendatang lebih mudah. Saya akan memperbarui langkah ini jika garis pernah muncul di jam saya.

Langkah 17: Instal Daya

Instal Daya
Instal Daya
Instal Daya
Instal Daya

Menggunakan mata bor 27/64 inci, bor lubang di bagian bawah jam dan kencangkan steker listrik di tempatnya.

Langkah 18: Merakit Elektronik

Merakit Elektronik
Merakit Elektronik
Merakit Elektronik
Merakit Elektronik
Merakit Elektronik
Merakit Elektronik
Merakit Elektronik
Merakit Elektronik

Pasang driver stepper dan jam waktu nyata ke papan elektronik. Saya perlu menemukan cara untuk mengamankan Arduino sehingga lubang dibor dan slot dipotong untuk dasi zip. Fitur-fitur ini telah ditambahkan ke file yang ditemukan di langkah 22.

Langkah 19: Solder dan Hubungkan Elektronik

Solder dan Hubungkan Elektronik
Solder dan Hubungkan Elektronik
Solder dan Hubungkan Elektronik
Solder dan Hubungkan Elektronik
Solder dan Hubungkan Elektronik
Solder dan Hubungkan Elektronik

Mengikuti diagram blok, solder semua komponen bersama-sama. Lem panas cincin di tempatnya dan kencangkan kabel yang tersesat dengan lem panas juga.

Gambar
Gambar

Langkah 20: Pelat Belakang

Pelat Belakang
Pelat Belakang
Pelat Belakang
Pelat Belakang
Pelat Belakang
Pelat Belakang

Buat pelat belakang dengan memotong lingkaran lain 1/2 inci lebih besar dari muka jam dan sebuah cincin dengan diameter dalam sama dengan bagian belakang jam. Rekatkan cincin dan lingkaran dengan beberapa klem pegas.

Setelah kering, buat garis 1/8 inci lebih besar dari cincin bagian dalam dan potong sesuai ukuran menggunakan gergaji pita atau pengamplas cakram.

Potong slot 1 inci panjang 1/4 inci lebar di bagian atas belakang menggunakan router atau mata bor. Countersink empat lubang untuk mengamankan bagian belakang ke dalam bingkai jam.

Oleskan cat semprot hitam dan tempelkan pada jam setelah kering.

Langkah 21: Kode Arduino

Kode arduino dikomentari dengan sebaik-baiknya. Perlu diingat bahwa saya bukan seorang programmer, saya memiliki pengalaman arduino minimal (bersikap baik). Kode berjalan terus-menerus memeriksa untuk melihat apakah waktu saat ini cocok dengan "Reset Time". Karena saya tidak dapat memikirkan cara untuk menerjemahkan waktu saat ini menjadi langkah-langkah, itu hanya mengoreksi dirinya sendiri sekali sehari (secara default tengah malam). Pada tengah malam persneling berputar ke posisi tengah malam kemudian menunggu hingga 00:01 bergerak ke waktu itu kemudian dilanjutkan dari sana. Saat ini duduk, jam hanya kehilangan sekitar 5 detik selama periode 24 jam.

Anda perlu menginstal pustaka Stepper dan RTClib.

Saya tahu kode tersebut dapat dioptimalkan oleh seseorang yang lebih berpengalaman daripada saya sendiri. Jika Anda siap menghadapi tantangan, silakan buat ulang proyek ini untuk diri Anda sendiri dan bagikan pengetahuan Anda.

#termasuk

#sertakan "RTClib.h" RTC_DS1307 rtc; #define oneRotation 2038 // jumlah langkah dalam satu putaran motor stepper 28BYJ-48 Stepper hourHand(oneRotation, 3, 5, 4, 6); Stepper minuteHand(satuRotasi, 7, 9, 8, 10); #define hourStopSensor 12 #define minuteStopSensor 11 int endStep = 0; // Kesepakatan waktu untuk kecepatan jam. int setDelay1 = 168; int setDelay2 = 166; int setDelay3 = 5; // Waktu saat ini untuk mengerjakan matematika. mengambang jam = 0; mengapung mn = 0; mengambang sc = 0; // Atur waktu hari untuk mengatur ulang jam (format 24 jam). int resetJam = 0; int resetMenit = 0; // Variabel untuk mengatur waktu yang tepat saat startup dan reset. float setTimeStepHour = 0; float setTimeStepMinute = 0; float handDelay = 0; float hourTest = 0; float menitTes = 0; void setup() { Serial.begin(115200); // Atur jam waktu nyata dan setel ulang sensor efek hall. pinMode(jamStopSensor, INPUT_PULLUP); pinMode(minuteStopSensor, INPUT_PULLUP); rtc.mulai(); // Batalkan komentar di bawah untuk mengatur waktu. // rtc.adjust(DateTime(2020, 2, 19, 23, 40, 30)); // rtc.adjust(DateTime(F(_DATE_), F(_TIME_))); // Mengatur kecepatan tertinggi motor stepper. jamHand.setSpeed(15); menitHand.setSpeed(15); // Ulangi hingga jarum menit dan jam berada di tengah hari sementara (digitalRead(hourStopSensor) == LOW || digitalRead(minuteStopSensor) == LOW) { if (digitalRead(hourStopSensor) == LOW) { hourHand.step(2); } else { tunda(3); } if (digitalRead(minuteStopSensor) == RENDAH) { minuteHand.step(3); } else { tunda(4); } } while (digitalRead(hourStopSensor) != RENDAH || digitalRead(minuteStopSensor) != RENDAH) { if (digitalRead(hourStopSensor) != RENDAH) { hourHand.step(2); } else { tunda(3); } if (digitalRead(minuteStopSensor) != RENDAH) { minuteHand.step(3); } else { tunda(4); } } // Dapatkan waktu saat ini DateTime now = rtc.now(); jam = sekarang.jam(); mn = sekarang.menit(); sc = sekarang.detik(); // Ubah ke format 12 jam if (jam >= 12) { jam = jam - 12; } // Lihat tangan mana yang harus bergerak melintasi wajah lebih jauh dan gunakan jarak itu // untuk menyesuaikan waktu yang ditentukan. jamTes = jam / 12; menitTes = mn / 60; if (hourTest > minuteTest) { handDelay = hourTest; } else { handDelay = minuteTest; } // Setel jam saat ini setTimeStepHour = (jam * 498) + (mn * 8.3) + ((sc + (handDelay * 36)) *.1383); // Setel menit saat ini setTimeStepMinute = (mn * 114) + ((sc + (handDelay * 45)) * 1.9); // Uji tangan mana yang membutuhkan lebih banyak langkah dan atur itu ke hitungan langkah terpanjang untuk loop for. if (setTimeStepHour > setTimeStepMinute) { endStep = setTimeStepHour; } else { endStep = setTimeStepMinute; } for (int i = 0; i <= endStep; i++) { if (i < setTimeStepHour) { hourHand.step(2); } else { tunda(3); } if (i < setTimeStepMinute) { minuteHand.step(3); } else { tunda(4); } } // Atur jam untuk menjalankan RPM hourHand.setSpeed(1); menitHand.setSpeed(1); } void loop() { // Mulai jam menjalankan loop. for (int i = 0; i < 22; i++) { minuteHand.step(1); penundaan(setDelay1); // Uji waktu reset, jika siap untuk reset, istirahat. if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { break; } } penundaan(setDelay3); for (int i = 0; i < 38; i++) { hourHand.langkah(1); penundaan(setDelay1); // Uji waktu reset, jika siap untuk reset, istirahat. if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { break; } for (int i = 0; i <20; i++) { minuteHand.step(1); penundaan(setDelay2); // Uji waktu reset, jika siap untuk reset, istirahat. if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { break; } } } // Reset jam pada waktu reset if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { // Ubah kecepatan jam hourHand.setSpeed(10); menitHand.setSpeed(10); // Ulangi hingga jarum menit dan jarum jam mencapai tengah hari. while (digitalRead(hourStopSensor) == RENDAH || digitalRead(minuteStopSensor) == RENDAH) { if (digitalRead(hourStopSensor) == RENDAH) { hourHand.step(2); } else { tunda(3); } if (digitalRead(minuteStopSensor) == RENDAH) { minuteHand.step(3); } else { tunda(4); } } while (digitalRead(hourStopSensor) != RENDAH || digitalRead(minuteStopSensor) != RENDAH) { if (digitalRead(hourStopSensor) != RENDAH) { hourHand.step(2); } else { tunda(3); } if (digitalRead(minuteStopSensor) != RENDAH) { minuteHand.step(3); } else { tunda(4); } } // Tunggu di sini sampai waktu reset telah berlalu. while (rtc.now().minute() == resetMinute) { delay(1000); } // Dapatkan waktu saat ini DateTime now = rtc.now(); jam = sekarang.jam(); mn = sekarang.menit(); sc = sekarang.detik(); // Ubah ke format 12 jam if (jam>= 12) { jam = jam - 12; } // Lihat tangan mana yang harus bergerak melintasi wajah lebih jauh dan gunakan jarak itu // untuk menyesuaikan waktu yang ditentukan. jamTes = jam / 12; menitTes = mn / 60; if (hourTest > minuteTest) { handDelay = hourTest; } else { handDelay = minuteTest; } // Setel jam saat ini setTimeStepHour = (jam * 498) + (mn * 8.3) + ((sc + (handDelay * 36)) *.1383); // Setel menit saat ini setTimeStepMinute = (mn * 114) + ((sc + (handDelay * 45)) * 1.9); // Uji tangan mana yang membutuhkan lebih banyak langkah dan atur itu ke hitungan langkah terpanjang untuk loop for. if (setTimeStepHour > setTimeStepMinute) { endStep = setTimeStepHour; } else { endStep = setTimeStepMinute; } for (int i = 0; i <= endStep; i++) { if (i < setTimeStepHour) { hourHand.step(2); } else { tunda(3); } if (i < setTimeStepMinute) { minuteHand.step(3); } else { tunda(4); } } jamHand.setSpeed(1); menitHand.setSpeed(1); } }

Langkah 22: File STL

Anda perlu mencetak jumlah file berikut:

  • Magnet Segmen Cincin Gear 1 Jam
  • Segmen Ring Gear 6 Jam Dasar
  • 1 - Jam Penahan Ring Segmen Stepper Mount
  • Segmen Cincin Penahan 6 - Jam Dasar
  • 1 - Pemegang Sensor Efek Hall Jam
  • 1 - Magnet Segmen Ring Gear Menit
  • 7 - Segmen Ring Gear Menit Dasar
  • 1 - Menit Segmen Cincin Penahan Stepper Mount
  • 6 - Segmen Cincin Penahan Menit Dasar
  • 1 - Pemegang Sensor Efek Hall Menit
  • 2 - Gigi Pacu
  • 1 - Dudukan Elektronik

Langkah 23: File Solidworks

Ini adalah file Solidworks asli yang digunakan untuk membuat STL yang ditemukan pada langkah sebelumnya. Jangan ragu untuk mengedit dan mengubah file saya sesuai keinginan Anda.

Langkah 24: Kesimpulan

Jam ini ternyata lebih baik dari yang saya perkirakan. Memiliki pengalaman Arduino yang minimal, saya senang dengan hasilnya dan seberapa akuratnya. Terlihat bagus dan berfungsi seperti yang saya harapkan.

Direkomendasikan: