Isi kandungan:

Jarum jam: 7 Langkah
Jarum jam: 7 Langkah

Video: Jarum jam: 7 Langkah

Video: Jarum jam: 7 Langkah
Video: Cara Menghitung Sudut Pada Jarum Jam 2024, Jun
Anonim
Jam kerja
Jam kerja

Instruksional ini dibuat untuk memenuhi keperluan projek Makecourse di University of South Florida (www.makecourse.com).

Langkah 1: Konsep

Semasa saya berusaha untuk memikirkan idea untuk projek ini, saya memutuskan untuk membuat sesuatu yang boleh digunakan dan berguna untuk kehidupan seharian saya. Tidak banyak perkara seperti itu yang boleh mempunyai syarat kebebasan dua darjah, jadi saya memutuskan untuk membuat jam sederhana untuk memenuhi syarat tersebut dan memaparkannya di meja saya untuk menunjukkan waktu. Pada mulanya idea adalah membuat jam tangan, tetapi bahagian cetak 3D terlalu kecil dan motor yang mendorong jam tangan masih terlalu besar untuk jam tangan.

Oleh itu projek ini, saya menemui alat ganti di sekitar apartmen saya dan memutuskan untuk mengusahakannya.

Langkah 2: Bahagian

- Bahagian bercetak 3D

- 2 Motor Stepper DC 28BYJ-48 5V

- 2 Papan Pemandu Motor Stepper ULN2003

- Arduino Uno

- Modul Bluetooth HC-05

Semua bahagian ini dibuat oleh saya kecuali tangan jam. Saya tidak begitu kreatif. Berikut adalah pautan ke penciptanya.

www.thingiverse.com/thing[441809

Langkah 3: Pemasangan Bahagian

Pemasangan Bahagian
Pemasangan Bahagian

(1) - Anda perlu meletakkan Gear_1 dan 2 ke motor stepper. Mereka akan sangat ketat sehingga diperlukan sedikit kekuatan agar mereka tetap berada di tempatnya.

(2) - Base_0 akan berada di bahagian bawah pemasangan.

(3) - Base_1 akan diletakkan di atas SpurGear_1, ini adalah komponen utama untuk tangan minit. Anda boleh melekatkan dua komponen ini bersama-sama, pastikan pangkalannya berada di atas gear.

(4) - Base_2 akan diletakkan di atas SpurGears_2, ini adalah komponen utama untuk jam tangan. Perkara yang sama berlaku untuk bahagian ini sebagai langkah (3)

(5) - Tangan jam boleh dilekatkan di atas Base_1 dan Base_2, atau anda boleh mengebor lubang kecil agar pas di tempatnya.

(6) - Agar gigi tangan sepadan dengan gear spur, anda memerlukan platform 1cm untuk meletakkan seluruh unit di atas dengan salah satu motor stepper.

Sebabnya adalah kerana asas utama tidak boleh tinggi kerana motor stepper yang lain tidak dapat mencapai gear tinggi. Walau bagaimanapun, platform diperlukan untuk salah satu motor stepper.

Langkah 4: Perpustakaan untuk Arduino IDE

Kod untuk projek ini didasarkan pada perpustakaan oleh tyhenry yang disebut CheapStepper.h

github.com/tyhenry/CheapStepper

Untuk memasang perpustakaan ini untuk arduino anda. Klik klon atau muat turun pada pautan di atas dan muat turun sebagai fail zip.

Di IDE Arduino. Sketsa -> Sertakan Perpustakaan -> Tambah Perpustakaan. ZIP

Dari semua perpustakaan yang berfungsi, yang satu ini menggunakan motor stepper yang terbaik dan sangat mudah digunakan.

Langkah 5: Persediaan Papan Roti

Penyediaan Papan Roti
Penyediaan Papan Roti
Penyediaan Papan Roti
Penyediaan Papan Roti

Saya menggunakan perisai Arduino untuk pergi bersama Arduino UNO saya. Ia kelihatan lebih bersih tetapi anda boleh mendapatkan papan roti kecil dan meletakkannya di atas Arduino UNO. Ikuti warna pada skema kerana beberapa wayar berada di atas satu sama lain. Pin 4-7 untuk satu stepper dan pin 8-11 adalah untuk stepper kedua.

Modul Bluetooth mestilah berwayar RX -> TX dan TX -> RX ke papan Arduino.

Wayar biru adalah sambungan dari Pemacu ke Arduino UNO

Wayar hijau adalah sambungan RX dan TX

Wayar hitam dibumikan.

Wayar merah berukuran 5V.

Langkah 6: Kod

Berikut adalah kod untuk projek ini.

Penjelasan mengenai kod akan ada di sini.

Stepper murah (8, 9, 10, 11); Stepper Murah_2 (4, 5, 6, 7);

boolean moveClockwise = benar;

//37.5 min = 4096;

// 1 min = 106.7;

// 5 min = 533.3;

// 15 min = 1603;

// 30 min = 3206;

// 60 min = 6412;

int penuh = 4096;

int separuh = penuh / 2; // 2048

terapung full_time = 6412; // 1 jam

terapung separuh_waktu = penuh_waktu / 2; // 30 min 3026

terapung fif_time = half_time / 2; // 15 min 1603

terapung satu kali = sepenuh masa / 60; // 1 min 106

terapung lima_kali = satu_kali * 5; // 5 min 534.3

terapung satu_sec = one_time / 60; // 1 saat 1.78

// kita dapat melakukan 30 min setiap satu dengan memutar motor 3206 dan menetapkan semula

Ini adalah pengiraan utama untuk projek ini. Stepper akan mengambil 4096 langkah untuk memutar 360 darjah penuh, tetapi kerana gear spur lebih besar daripada gear yang dipasang pada stepper sehingga memerlukan lebih banyak langkah untuk putaran penuh. Sebagai roda tunjang adalah komponen utama yang memusingkan tangan. Saya perlu melakukan pelbagai ujian untuk memastikan nilainya betul.

full_time adalah pemboleh ubah yang saya tetapkan untuk putaran tangan sepenuhnya. Ini agak konsisten tetapi apabila langkah-langkah dibahagi dengan 2 untuk mendapatkan pergerakan tertentu, nilai apungan menjadi lebih kecil, yang menyukarkan pemandu untuk melakukan tugasnya.

The moveClockwise = benar; adalah untuk membuat motor stepper bergerak searah jarum jam, tetapi kerana memutar gear spur berlawanan arah jarum jam, kita perlu membuat boolean salah dalam penyiapan. Anda juga boleh menyatakannya palsu pada awalnya tetapi ini untuk menjelaskan bagaimana ia berfungsi.

batal persediaan () {Serial.begin (9600);

Serial.println ("Siap mula bergerak!");

pos = satu_kali; del = 900; nisbah = 60;

moveClockwise = salah; }

Di sinilah saya menyatakan boolean moveClockwise salah. pos akan menjadi jumlah langkah, del akan menjadi kelewatan, dan nisbahnya adalah untuk minit / saat = 60 atau jam / minit = 12

Kami mengendalikan tangan dengan modul Bluetooth. Pertama, anda memerlukan terminal Bluetooth bersiri dari peranti Android anda. Sambungkan ke Hc-05 dengan PIN 0000 atau 1234. Anda boleh menggunakan beberapa contoh kod dari Arduino IDE untuk melihat apakah ia berfungsi dengan betul. Apabila disambungkan, ia mesti berkelip dengan perlahan dan bukannya cepat apabila tidak disambungkan.

gelung kekosongan () {state = 0;

jika (Bersiri. tersedia ()> 0) {

negeri = Serial.read (); }

untuk (float s = 0; s <(pos); s ++) {

stepper.step (bergerakClockwise); }

untuk (float s = 0; s <(pos / ratio); s ++) {

stepper_2.step (moveClockwise); }

kelewatan (del);

Serial.available ()> 0 penting kerana bagaimana modul Bluetooth anda berfungsi. Pernyataan sekiranya ini akan benar apabila terdapat komunikasi antara Arduino dan peranti anda. Pemboleh ubah keadaan akan menentukan 3 pemboleh ubah yang lain yang saya nyatakan di atas persediaan (), ia juga akan mencetak operasi apa yang dijalankan oleh kod tersebut. Two for loop adalah fungsi utama yang mendorong bagaimana motor langkah akan bergerak.

jika (nyatakan == '1') {

pos = satu_kali; del = 0; nisbah = 12;

Serial.println ("Operasi 1: Tiada Kelewatan"); }

Ini adalah salah satu contoh penggunaan input dari peranti Bluetooth anda untuk mengubah cara sistem berfungsi. Anda boleh mengedit pemboleh ubah ini namun anda mahu mengawal tangan.

Langkah 7: Demo dan Kesimpulan

Image
Image
Demo dan Kesimpulan
Demo dan Kesimpulan

Ini adalah demo sistem, yang menunjukkan bagaimana ia berfungsi. Untuk kandang anda boleh menggunakan apa sahaja yang sesuai dengan semua komponen di dalamnya. Projek ini mudah dan senang dibuat kerana ini pertama kalinya saya mencetak 3D. Modul Bluetooth sangat senang difahami dan digunakan. Terdapat beberapa kesilapan yang saya buat sehingga terlambat untuk berubah tetapi produk akhir baik-baik saja.

Disyorkan: