Isi kandungan:
- Bekalan
- Langkah 1: Merancang dan Membuat Gear
- Langkah 2: Pemasangan Sistem Gear
- Langkah 3: Menyambungkan Stepper dan Sensor
- Langkah 4: Elektronik Yang Membuat Jam Berdetik
- Langkah 5: Memprogram Arduino
- Langkah 6: Nikmati Suara Berdetik Jam Anda untuk Pertama Kali
Video: Jam Gear Planet: 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
Jam kerja mekanikal (lama) sangat menarik dan menyenangkan untuk ditonton, tetapi malangnya hampir mustahil untuk membina sendiri. Jam mekanikal juga kekurangan kecerobohan teknologi digital tepat yang ada sekarang. Instructable ini menunjukkan cara untuk menggabungkan yang terbaik dari kedua-dua dunia; dengan memandu tangan jam mekanikal melalui kotak gear planet dengan motor stepper dan Arduino!
Bekalan
Komponen am:
- Kepingan kayu dan akrilik 5mm
- Selak M5 (counterersunk), mesin basuh dan mur
- Kekalahan PCB
- Skru M3 untuk motor stepper
Komponen elektrik:
- Pemandu Stepper (saya menggunakan L293d)
- Apa-apa jenis Arduino
- Jam Masa Nyata (saya menggunakan DS3231)
- Sensor kesan Hall (saya menggunakan A3144)
- Magnet Neodium 5mm
- Butang untuk input pengguna
- Perintang 10K
- Kapasitor 100uf 25V
- Jack DC
- Bekalan kuasa 5V 2A DC
- Bateri untuk RTC (cr2032 dalam kes saya)
Komponen mekanikal:
- Mana-mana jenis motor stepper 1.8 darjah / step dengan gandar 5mm
- Timing belt 400mm GT2
- GT2 60 gigi takal gandar 5mm
- GT2 20 gigi takal 5mm gandar
- Galas 5x16x5 mm (3x)
- Galas bebibir 5x16x5 mm (2x)
- Batang berulir M5x50
Langkah 1: Merancang dan Membuat Gear
Salah satu tujuan projek ini adalah untuk mempunyai satu motor yang menggerakkan jam lengkap, mirip dengan jam mekanikal sebenar di mana satu mekanisme pelarian menggerakkan jam lengkap. Walau bagaimanapun, minit tangan perlu membuat 12 putaran pada waktu tangan jam membuat 1 putaran. Ini bermaksud kotak gear pengurangan 1:12 diperlukan untuk menggerakkan kedua tangan dengan satu motor. Saya memutuskan untuk melakukan ini dengan kotak gear planet, video yang disertakan dengan indah menerangkan bagaimana kotak gear jenis ini berfungsi.
Langkah seterusnya bagi saya adalah untuk menentukan jumlah gigi untuk gear yang berbeza untuk membuat nisbah 1:12. Laman web ini sangat berguna dan mengandungi semua formula yang diperlukan. Saya melekatkan gear matahari ke tangan menit dan pembawa planet ke tangan jam, meninggalkan gear cincin tidak bergerak. Mari buat sedikit matematik!
- S = bilangan gigi pada gear matahari
- R = bilangan gigi pada gear cincin
- P = bilangan gigi pada gear planet
Nisbah gear (i) ditentukan oleh:
i = S / R + S
Perhatikan bahawa bilangan gigi pada roda gigi planet tidak penting untuk nisbah gear dalam kes ini, namun kita perlu mematuhi kekangan umum:
P = (R - S) / 2
Setelah berteka-teki saya akhirnya menggunakan nombor berikut: S = 10; R = 110; P = 50; Mereka sepertinya berada di ujung apa yang mungkin kerana terdapat sedikit jarak antara roda gigi planet, tetapi ia berfungsi!
Anda boleh menarik gear dalam program CAD kegemaran anda, kebanyakannya mempunyai plugin gear khas. Anda juga boleh menggunakan fail yang dilampirkan di Instructable ini. sudah tentu. Perhatikan bahawa semua roda gigi, walaupun berbeza dalam ukuran, mempunyai nada gigi yang sama.
Saya fikir sangat baik membuat gear ini dari aluminium 5mm dan menghubungi kedai tempatan dengan waterjet sekiranya mereka dapat memotong gear ini untuk saya. Biasanya anda tidak akan pernah membuat gear dengan pemotong air, tetapi ini adalah gear berprestasi rendah. Anehnya mereka setuju untuk mencuba, tetapi rancangan ini gagal dengan teruk. Bahagian-bahagiannya hanya kecil untuk waterjet dan mula bergerak ketika sedang memotong.
Kemunduran ini bermaksud sudah tiba masanya untuk rancangan B, jadi saya membeli beberapa akrilik hitam asap 5mm dan menemui tempat dengan pemotong laser, yang tidak mempunyai masalah memotong gear saya. Sekiranya anda tidak mempunyai pemotong laser, anda mungkin juga boleh menggunakan pencetak 3D untuk gear ini, saya memasukkan fail STL (gear cincin mungkin perlu dibahagikan kepada 3 bahagian).
Selepas memotong saya tekan galas yang dipasang ke roda gigi planet. Untuk mendapatkan kesesuaian, saya membuat sekeping ujian dari akrilik dengan beberapa lubang yang masing-masing mempunyai diameter yang sedikit lebih besar (0,05 mm langkah). Setelah menemui tetapan dengan pas yang betul, saya menukar ukuran lubang di planet ini ke tetapan ini. Ini adalah sesuatu yang berbeza dengan bahan dan jenis mesin jadi anda harus selalu melakukan ini sendiri.
Langkah 2: Pemasangan Sistem Gear
Untuk memasang roda gigi, bingkai jam diperlukan. Sekarang ini adalah bahagian di mana anda boleh membiarkan kreativiti anda menjadi liar kerana bentuk bingkai relatif tidak penting selagi semua lubang baut berada di tempat yang tepat. Saya Memilih untuk membuat banyak lubang di plat dail dan plat belakang untuk menekankan mekanisme gear. Ini juga menjadi alasan mengapa pengangkut planet dan tangan kecil kelihatan tembus pandang, tetapi juga kelihatan keren!
Saya sekali lagi menggunakan pemotong laser untuk membuat bahagian-bahagian ini, dan kerana bahagian akrilik setebal 5mm, saya juga membuat bahagian kayu setebal 5mm. Semua lubang di pelat dail dan pembawa planet berada di bawah meja untuk menampung baut yang sepadan.
Gandar pusat jam bergerak dalam dua galas di dalam pembawa planet. Oleh kerana saya membuat gandar ini dari stok bar 5mm, ia sangat sesuai di dalam galas dan saya tidak dapat melepaskan komponen ini lagi. Akan lebih mudah hanya menggunakan sehelai benang M5 kerana anda juga tidak perlu lagi memotong benang anda sendiri (seandainya saya sedar terlebih dahulu…..). Untuk menghentikan roda sinar matahari berputar di sekitar gandar, ia memiliki lubang berbentuk D, jadi gandar juga perlu dimasukkan ke dalam bentuk-D ini. Apabila gear matahari dipasang di sekitar gandar, anda boleh memasang gandar, jangan lupa pembawa planet jika anda menggunakan bantalan bebibir! Lihat paparan yang meletup untuk arahan pemasangan.
Apabila paksi pusat dipasang, waktunya planet bergerak. Ini juga memerlukan mesin basuh kecil, seperti gandar pusat, untuk memastikan gear berjalan dengan lancar. Setelah semuanya dipasang ke kapal induk planet, periksa sama ada gear planet dan gear matahari berjalan dengan lancar.
Bahagian tengahnya kini dapat dipasang ke bingkai jam. Ini adalah pekerjaan yang membosankan, tetapi melekatkan selak di piring depan dan mengetuknya di tempat sangat membantu. Ia juga berguna untuk menaikkan piring depan untuk memberi ruang untuk tangan. Foto menunjukkan bahawa saya meletakkan enam keping kertas kecil di antara cincin gear dan plat belakang untuk memberi sedikit kelonggaran untuk gear. Semasa memasukkan pembawa planet, pastikan dail menunjuk ke lokasi yang masuk akal (jika tangan minit minit menunjukkan 12, tangan jam tidak boleh berada di antara dua jam contoh)
Langkah 3: Menyambungkan Stepper dan Sensor
Sekarang kita mempunyai mekanisme gear yang menggerakkan tangan dengan betul, kita masih perlu menggerakkan mekanisme gear dengan betul. Pelbagai jenis motor elektrik dapat digunakan, saya memilih motor stepper kerana dapat melakukan pergerakan tepat tanpa sensor maklum balas sudut tetap. Motor stepper juga dapat menghasilkan bunyi "Klik" yang nyata, yang bagus untuk jam separa mekanikal!
Motor stepper biasa dapat membuat 200 langkah per revolusi, yang diterjemahkan menjadi 200 langkah per jam jika kita menghubungkannya ke tangan cepat. Ini bermaksud selang 18 saat setiap langkah, yang belum terdengar seperti jam berdetik. Oleh itu, saya menggunakan transmisi 1: 3 antara motor stepper dan tangan minit jadi motor stepper perlu membuat 600 langkah per jam. Menggunakan mod setengah langkah ini dapat ditingkatkan menjadi 1200 langkah per jam, yang sama dengan satu langkah per 3 saat. Bunyinya lebih baik!
Satu masalah dengan motor stepper adalah bahawa anda tidak pernah tahu di mana mereka berada semasa anda menghidupkan Arduino anda. Inilah sebabnya mengapa semua pencetak 3D mempunyai penghentian akhir, jadi anda boleh memindahkan pencetak anda ke kedudukan yang diketahui dan kemudian teruskan dari situ. Ini juga diperlukan untuk jam, hanya berhenti akhir yang tidak akan berfungsi kerana jam harus membuat putaran berterusan. Untuk menyedari kedudukan ini, saya menggunakan sensor kesan Hall A3144 yang merasakan magnet (periksa kekutuban!….) Yang dipasang pada pembawa planet. Ini digunakan untuk menggerakkan tangan ke posisi tertentu pada saat start-up, setelah itu mereka dapat bergerak ke waktu yang diperlukan.
Perhimpunan sangat sederhana; Pasang motor stepper ke plat belakang, biarkan skru sedikit longgar. Kemudian anda boleh memasang takal kecil pada gandar motor stepper dan periksa sama ada timing belt berjalan lurus. Kini anda boleh meluncurkan motor stepper untuk menyesuaikan tegangan pada timing belt. Tali pinggang masa memerlukan sedikit permainan untuk memastikan anda tidak memberi tekanan pada gear. Main dengan pengaturan ini sehingga anda berpuas hati, kemudian ketatkan skru motor stepper sepenuhnya.
Sensor kesan ruang terpaku di tempatnya. Yang terbaik adalah menyatukan tiga wayar ke sensor terlebih dahulu, memastikan haba menyusut di sekitar setiap kaki sensor sehingga mereka tidak dapat memendekkan satu sama lain. Setelah menyolder sensor boleh terpaku pada tempatnya. Tidak kira bahagian mana yang naik, selagi anda belum memasang magnet. Setelah terpasang sensor di tempatnya, sambungkan ke Arduino atau litar LED kecil untuk menguji apakah berfungsi. (CATATAN: sensor kesan ruang hanya berfungsi jika garis medan magnet menuju ke arah yang betul). Dengan menggunakan litar ujian ini, sahkan bagaimana magnet harus dilekatkan. Setelah anda benar-benar yakin di mana sisi magnet anda harus menghadap ke sensor, pasangkan magnet di tempatnya.
Langkah 4: Elektronik Yang Membuat Jam Berdetik
Anda boleh menggunakan kod Arduino yang sangat sederhana yang membuat setengah langkah dengan motor dan kemudian memerlukan kelewatan 3000 milisaat hingga langkah seterusnya. Ini akan berjaya tetapi tidak begitu tepat kerana jam Arduino dalaman tidak terlalu tepat. Kedua, Arduino akan melupakan masa setiap kali kehilangan kuasa.
Oleh itu, untuk mengesan masa, sebaiknya gunakan jam masa nyata. Perkara-perkara ini adalah cip yang direka khas dengan bateri sandaran yang tepat mengikut masa. Untuk projek ini saya memilih DS3231 RTC yang dapat berkomunikasi dengan Arduino melalui i2c, menjadikan pendawaian menjadi mudah. Sebaik sahaja anda menetapkan masa dengan betul pada cipnya, ia tidak akan pernah lupa pukul berapa (selagi bateri cr2032 masih ada baki jus). Lihat laman web ini untuk mengetahui semua butiran mengenai modul ini.
Memandu motor stepper dilakukan dengan pemandu motor L293d. Beberapa pemacu motor stepper yang lebih maju menggunakan isyarat PWM untuk batasan langkah mikro dan arus. Isyarat PWM ini dapat membuat bunyi pengintip yang menjengkelkan dapat diketahui oleh setiap pembuatnya (terutamanya jika anda memiliki pencetak 3D). Oleh kerana jam ini semestinya menjadi bahagian dalaman anda, suara tidak menyenangkan tidak diingini. Oleh itu, saya memutuskan untuk menggunakan pemacu motor l293d berteknologi rendah untuk memastikan jam saya senyap (selain melangkah setiap 3 saat, tetapi itu sebenarnya menyeronokkan!). Lihat laman web ini untuk penerangan terperinci mengenai cip l293d. Perhatikan bahawa saya menjalankan motor stepper saya pada 5V yang menurunkan penggunaan kuasa dan suhu motor stepper.
Seperti disebutkan sebelumnya, saya menggunakan sensor kesan Hall untuk mengesan magnet yang terpaku pada pembawa planet. Prinsip operasi sensor sangat mudah, ia berubah keadaan apabila magnet cukup dekat. Dengan cara ini Arduino anda dapat mengesan digital tinggi atau rendah dan oleh itu mengesan jika magnet dekat. Lihat laman web ini yang menunjukkan cara menyambungkan sensor dan menunjukkan kod ringkas yang digunakan untuk mengesan magnet.
Akhir sekali, saya menambah 4 butang untuk input pengguna ke PCB. Mereka menggunakan perintang penarik dalaman Arduino untuk mempermudah pendawaian. PCB saya juga mempunyai header dalam konfigurasi Uno sehingga saya dapat menambahkan perisai Arduino untuk kemungkinan pengembangan (saya belum melakukannya sejauh ini).
Saya mula-mula menguji semuanya di papan roti saya dan kemudian saya merancang dan memesan PCB khusus untuk projek ini, kerana ia kelihatan hebat! Anda juga boleh memasang PCB di bahagian belakang jam anda jika anda tidak mahu melihatnya.
Fail Gerber untuk PCB boleh dimuat turun dari pemacu saya, Instructables tidak membenarkan saya memuat naiknya untuk beberapa sebab. Gunakan pautan ini ke pemacu google saya.
Langkah 5: Memprogram Arduino
Kod asas untuk Arduino sebenarnya sangat mudah. Saya melampirkan skema yang menggambarkan apa yang berlaku di dalam Arduino dan bagaimana Arduino berinteraksi dengan peranti lain. Saya menggunakan beberapa perpustakaan untuk memudahkan pengekodan.
- Accelstepper -> menangani urutan langkah motor stepper, membolehkan anda memberikan perintah intuitif seperti: Stepper.runSpeed (), atau Stepper.move () yang membolehkan anda bergerak pada kelajuan tertentu atau ke posisi tertentu masing-masing.
- Wire -> ini diperlukan untuk komunikasi i2c, walaupun menggunakan RTClib
- RTClib -> menangani komunikasi antara Arduino dan RTC, membolehkan anda memberikan perintah intuitif seperti rtc.now () yang mengembalikan waktu semasa.
- OneButton -> Mengendalikan input butang, mengesan penekanan dan kemudian menjalankan kekosongan yang telah ditentukan untuk melakukan sesuatu. Boleh mengesan tekan tunggal, dua atau panjang.
Semasa menulis kod untuk jam adalah sangat penting untuk mengelakkan pemboleh ubah yang terus meningkat. Oleh kerana kod Arduino akan berjalan 24/7 pemboleh ubah ini akan bertambah cepat dan besar dan akhirnya akan menyebabkan limpahan. Motor stepper misalnya tidak pernah diperintahkan untuk pergi ke posisi tertentu, kerana kedudukan ini hanya akan meningkat dari masa ke masa. Sebaliknya motor stepper diperintahkan untuk menggerakkan sejumlah langkah ke arah tertentu. Dengan cara ini tidak ada pemboleh ubah kedudukan yang meningkat dari masa ke masa.
Kali pertama anda menyambungkan RTC, anda perlu menetapkan masa cip, ada sekeping kod yang anda boleh melepaskan yang menetapkan masa RTC sama dengan masa komputer anda (waktu ketika anda menyusun kod). Perhatikan bahawa apabila anda meninggalkan ini tanpa koma, waktu RTC akan diset semula ke masa di mana anda menyusun kod anda setiap masa. Oleh itu, jalankan sekali, kemudian komen sekali lagi.
Saya melampirkan kod saya pada Instructable ini, saya mengulasnya dengan teliti. Anda boleh memuat naiknya tanpa perubahan atau melihatnya dan melihat apa yang anda fikirkan!
Langkah 6: Nikmati Suara Berdetik Jam Anda untuk Pertama Kali
Setelah menyambungkan semua elektronik dan memuat naik kod, inilah hasilnya!
Reka bentuk asas jam ini sangat sederhana dan boleh dibuat dalam pelbagai bentuk dan ukuran. Oleh kerana terdapat Arduino di atas kapal, anda juga boleh menambahkan ciri tambahan dengan mudah. Menetapkan penggera, menghidupkan mesin kopi pada jam pada waktu yang ditentukan, sambungan internet, mod demo yang menyerlahkan pergerakan mekanikal untuk menunjukkan reka bentuk anda kepada orang lain dan banyak lagi!
Seperti yang anda perhatikan di sepanjang Instructable ini, saya terpaksa membuang jam untuk menulis Instructable ini. Walaupun malang untuk Instructable ini, saya sekurang-kurangnya dapat menjamin reka bentuknya berjalan dengan baik dalam jangka masa panjang, kerana jam ini telah berdetak lebih dari 3 tahun di ruang tamu saya tanpa masalah!
Tolong beritahu saya dalam komen jika anda menyukai Instructable ini, ini pertama kali saya menulisnya. Sekiranya anda mempunyai petua atau pertanyaan, hantarkan sahaja mesej kepada saya. Dan harap saya memberi inspirasi kepada seseorang untuk juga membina jam separa mekanikal suatu hari nanti!
Hadiah Pertama dalam Peraduan Jam
Disyorkan:
Jam Persaraan / Jam Naik / Jam Dn: 4 Langkah (dengan Gambar)
Jam Persaraan / Jam Naik / Jam Dn: Saya mempunyai beberapa paparan dot-matriks 8x8 LED di dalam laci dan memikirkan apa yang harus dilakukan dengan mereka. Diilhamkan oleh instruksional lain, saya mendapat idea untuk membuat paparan hitung mundur / naik untuk dikira ke tarikh / masa yang akan datang dan jika waktu sasaran
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: 10 Langkah (dengan Gambar)
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: Adakah anda pernah mahukan jam pintar? Jika ya, ini adalah penyelesaian untuk anda! Saya membuat Jam Penggera Pintar, ini adalah jam yang boleh anda ubah waktu penggera mengikut laman web. Apabila penggera berbunyi, akan ada bunyi (bel) dan 2 lampu akan
Jam Rangkaian ESP8266 Tanpa RTC - Jam NTP Nodemcu Tiada RTC - PROJEK JAM INTERNET: 4 Langkah
Jam Rangkaian ESP8266 Tanpa RTC | Jam NTP Nodemcu Tiada RTC | PROJEK JAM INTERNET: Dalam projek ini akan membuat projek jam tanpa RTC, akan memakan masa dari internet menggunakan wifi dan akan memaparkannya pada paparan st7735
Jam Gear Bike: 5 Langkah (dengan Gambar)
Bike Gear Clock: Cara membuat jam gear basikal. Mudah dan pantas, saya menggunakan kit jam ReadyMade Magazine dan gear basikal lama dan rantai
Jam Gear: 3 Langkah (dengan Gambar)
Jam Gear: Inti jam adalah mikrokontroler PIC 16f628A (PDF). Mikrokontroler ini mempunyai pengayun dalaman namun pengayun kristal 20MHz luaran sedang digunakan kerana perlu mengesan masa selama beberapa minggu dan bulan dengan tepat. Mereka