Isi kandungan:

Multi-Timer W / External Control: 13 Langkah
Multi-Timer W / External Control: 13 Langkah

Video: Multi-Timer W / External Control: 13 Langkah

Video: Multi-Timer W / External Control: 13 Langkah
Video: How to connect and set analog timer relay 2024, Julai
Anonim
Multi-Timer W / External Control
Multi-Timer W / External Control

Instructable projek ini adalah binaan Timer pelbagai fungsi

Pemasa ini mampu berfungsi sebagai:

  1. Penggera tujuan umum dengan masa yang boleh dipilih antara 1 saat dan +90 jam. Mempunyai hitungan mundur dengan penggera yang dapat didengar dan / atau kawalan peranti luaran hingga selesai maka petunjuk waktu untuk mengira sejak penggera.
  2. Pemasa tidur siang dengan 7 masa yang boleh dipilih, undur dan penggera setelah selesai.
  3. Pemasa meditasi dengan 4 kali yang dapat dipilih, dengan hitungan mundur dan kicauan pendek setelah selesai, kira dengan kicauan lain pada 5 minit selepas itu.

Projek ini boleh dibina seperti yang dijelaskan di sini atau diubah suai agar sesuai. Saya sebelum ini membina pemasa dengan fungsi ini dan menggunakannya di Instructable pertama saya untuk mengawal kotak pendedahan UV.

Saya fikir saya hanya boleh menerbitkan rancangan dan papan kenyataan yang asal. Walau bagaimanapun, atas sebab tertentu saya tidak dapat menemui kodnya. Saya juga ingin membuat penambahbaikan pada perkakasan agar litar kawalan lebih fleksibel dan mengurangkan penggunaan bateri. Reka bentuk semula papan litar utama yang dihasilkan dan penulisan semula kod memberi peluang untuk membincangkan pendekatan pengaturcaraan dan reka bentuk perkakasan.

Setiap kali saya membuat papan litar, saya sering mendapati terdapat kekurangan dalam reka bentuk atau penempatan komponen, Papan yang saya bina juga merupakan salah satu daripada dua off. Tambahan lagi, saya hanya mahu terlibat dalam semua aspek projek dari awal hingga akhir. Ini adalah beberapa sebab saya membuat papan litar sendiri daripada menghantar fail Gerber ke luar negara untuk pembuatan. Mungkin saya baru tua dan tersekat dengan cara saya. Projek ini menggambarkan berat sebelah ini. Oleh kerana saya membuat papan litar saya sendiri, reka bentuk dan fail Gerber saya tidak memenuhi piawaian pembuatan, saya tidak memasukkan fail ini. Mereka yang tidak mahu mengukir dan menyelesaikan papan dialu-alukan untuk menyiapkan reka bentuk mereka sendiri dan menghantar fail Gerber di bahagian komen. Mohon papan anda dibuat dan diuji sebelum diposkan.

Langkah 1: Gambaran Keseluruhan Elemen Perkakasan

Peranti ini dikuasakan oleh 4 bateri AAA dan dikendalikan oleh Arduino Pro Mini 5V.

Pembesar suara / pembesar suara kecil memberikan penggera yang dapat didengar.

Relay 5v mini memberikan voltan kawalan ke peranti luaran. Fleksibiliti disediakan dalam sumber output voltan kawalan ini.

Pengekod berputar dengan butang tekan memberikan pilihan menu.

Paparan OLED dan suis permulaan / berhenti sesaat melengkapkan antara muka pengguna.

Perkakasan elektronik tambahan terdiri daripada suis kuasa SPDT dan bicu telefon mini untuk disambungkan ke peranti luaran.

Sebagai tambahan, fail untuk membantu anda dalam projek ini disediakan:

Fail STL untuk kes projek bercetak 3D.

Gambar topeng tembaga dan pateri untuk etsa dan penamat papan litar kawalan dan pengekod putar.

Skema dan gambar papan sebagai rujukan bagi mereka yang ingin mengubahsuai reka bentuk saya.

Anda mungkin ingin mengkaji Instruksiku mengenai pembuatan papan litar dua sisi sebagai contoh cara pengeluaran papan litar.

Langkah 2: Gambaran Keseluruhan Perisian

Bersama dengan fail sumber Arduino, beberapa maklumat tambahan yang mungkin bermanfaat..

Perpustakaan kawalan perkakasan digunakan apabila tersedia (butang henti-henti, kawalan OLED, bacaan pengekod putar).

Program ini mengimplementasikan mesin keadaan terhingga sederhana (FSM) untuk mengawal pelaksanaan kod sebagai pernyataan beralih dalam fungsi gelung..

Kelas Menu ditentukan untuk membolehkan pemilihan pilihan yang ditampilkan pada OLED dan pemilihan menggunakan pengekod putar.

Input dilaksanakan dengan pengundian langsung (tanpa gangguan) kerana tidak penting masa dan membuat kodnya lebih jelas.

Cetak pernyataan ke Serial digunakan untuk membantu menelusuri pelaksanaan kod dan penyahpepijatan

Pelbagai jenis elemen struktur program termasuk:

  • Pelbagai tab kod untuk mengasingkan beberapa fungsi dan pemboleh ubah kawalan perkakasan.
  • Tukar pernyataan untuk menetapkan nilai keadaan (FSM) dan pemboleh ubah kawalan.
  • Definisi struktur
  • Penghitungan untuk membolehkan penugasan nilai negeri sebagai teks.
  • #tentukan definisi pra-pemproses untuk pin perkakasan dan nilai standard.

Langkah 3: Senarai Bahagian

Buat Pagar
Buat Pagar

Saya tidak pasti di mana hendak meletakkan langkah ini kerana ia dapat dilakukan pada hampir semua tahap. Saya menggunakan kotak lampiran bercetak 3D. Anda mungkin tidak mempunyai akses ke pencetak 3D atau lebih suka jenis kandang lain seperti kotak Aluminium, plastik Potong Laser, Kayu Ukiran Tangan atau jenis lain yang anda gunakan untuk projek elektronik anda. Saya telah memasukkan fail STL untuk kenop pengekod putar atas, bawah, dan bezel OLED. Gunakan fail ini dan alat pemotong pilihan anda untuk membuat fail gcode untuk pencetak anda.

Saya mencetak semua bahagian menggunakan filamen PLA, satu warna untuk bahagian atas dan bawah kandang, satu warna yang lain untuk tombol dan bezel (yang terpaku pada bahagian atas.) Saya tidak akan menentukan semua tetapan pemotong saya tetapi, gunakan Tri -Heksagon mengisi sekurang-kurangnya 35% untuk membolehkan mengetuk skru sudut dan tetapan "tanpa sokongan" agar huruf sisipan dapat dibaca. Saya mencetak kotak menggunakan ketinggian lapisan "normal" pencetak saya.

Langkah 9: Reka Bentuk dan Kod Penulisan

Langkah ini adalah pilihan tetapi dicadangkan untuk pemahaman yang lebih baik.

Sebahagian besar usaha dari segi jam adalah penulisan kod. Anda boleh melangkau langkah ini jika anda menggunakan program yang dilampirkan sebagai -is. Namun, disarankan agar anda meluangkan masa untuk mengkaji kod tersebut untuk pemahaman atau pengubahsuaian yang lebih baik untuk memenuhi keperluan anda.

Komen berikut mungkin bermanfaat dalam memahami proses ini.

  • Komen- Komen secara meluas semasa anda pergi - Saya sering menulis komen sebelum saya menulis kodnya.
  • Membahagi & menaklukkan - gunakan fungsi, kelas, dan modul (tab.) Gunakan kompilasi yang kerap (Sahkan) untuk memeriksa sintaks. Debug - Gunakan pernyataan cetak untuk mengesahkan nilai aliran dan ujian dan antara muka perkakasan. Jangan takut untuk mengatasi masalah semasa anda pergi, tidak ada yang menulis kod yang bebas pepijat!
  • Pemalar - #menentukan arahan pra-penyusun memberikan nama untuk nombor pin. Definisi pemboleh ubah konstan dengan komen mengurangkan atau menghilangkan nombor "Sihir". Penggunaan pemalar yang terdapat pada permulaan program atau fungsi membolehkan mengubah parameter tanpa menulis semula kod
  • Perpustakaan yang Ditentukan - Menggunakan Perpustakaan yang telah ditetapkan mengurangkan beban pengaturcaraan dan masa debug.
  • Blok Reka Bentuk - Dicipta menggunakan fungsi, Mengasingkan kod dalam tab berasingan (program berkaitan &.hfiles), penghitungan, kelas dan struktur. Tumpukan perhatian anda kepada masing-masing untuk memahami cara kerjanya berkaitan dengan kod yang lain.
  • State Machine (s) - Ini adalah corak pengaturcaraan yang berfungsi dengan baik dengan Arduino atau program apa pun yang digunakan untuk mengawal output atau memberi reaksi input. Terdapat beberapa rasa mesin negara. Kod ini menggunakan mesin keadaan berdasarkan pernyataan beralih dalam fungsi gelung. Borang ini senang difahami dan disahpepijat.
  • Paparan & Menu - Output OLED ringkas tetapi memberikan maklum balas yang cukup untuk pengguna kasual dan menyokong pemilihan pilihan. Ia berintegrasi dengan mesin negara (hampir semua negeri mempunyai skrin OLED yang berkaitan). Kelas Menu sangat membantu dalam mengasingkan kod untuk memaparkan dan memilih pilihan menu

Sila baca program ini beberapa kali. Ia membantu mengambil satu fungsi atau bahagian pada satu masa. Saya sering tidak memahami kod yang saya tulis kecuali saya membacanya sekurang-kurangnya dua kali!

Langkah 10: Pasang Program

Salin fail yang dilampirkan ke komputer anda kemudian lepaskan zip ke direktori Sketches anda

Sambungkan Arduino ke komputer anda dan muat turun kod program dengan cara biasa. Buka monitor bersiri Arduino IDE untuk mengesahkan bahawa program ini berjalan dan membantu dalam proses penyahpepijatan.

Langkah 11: Pasang Pemasa

Pasang Pemasa
Pasang Pemasa
Pasang Pemasa
Pasang Pemasa
Pasang Pemasa
Pasang Pemasa
Pasang Pemasa
Pasang Pemasa

Setelah bahagian atas dan bawah casing dicetak dan dibersihkan, komponen boleh dilekatkan menggunakan skru plastik kecil yang mengetuk sendiri. Mula-mula pemegang bateri terpasang ke belakang. Bahagian selebihnya dilekatkan pada bahagian atas penutup dengan urutan berikut:

  1. OLED dan kabel
  2. Suis & pendawaian Mula / Hentikan
  3. Pengekod putar dan kabel
  4. Pembesar suara / Buzzer & pendawaian
  5. Jack dan pendawaian kawalan luaran
  6. Suis dan pendawaian slaid hidup / mati (periksa semula orientasi sehingga menyala mengikut arah yang anda mahukan

Sekiranya anda menyolder kabel terus ke papan litar anda, lakukan ini setelah semua bahagian dipasang pada penutup anda untuk mengurangkan kerosakan wayar. Anda perlu menunggu sehingga kabel disambungkan ke papan utama sebelum memasang skru ke belakang.

Sekiranya anda menggunakan header pin dan penyambung Dupont, pasangkan papan utama ke belakang menggunakan skru kemudian pasangkan komponennya. Berhati-hati semasa anda menyambungkan bateri ke papan utama dan perhatikan kekutuban yang betul. Anda juga harus memasang jumper atau pendawaian kawalan relay pada masa ini.

Bahagian bawah kandang menghubungkan ke bahagian atas dengan menggunakan skru mesin kepala bulat 4-40, satu di setiap sudut. Empat lubang di bahagian atas harus diketuk dengan paip 4/40 atau jika anda menggunakan sisipan berulir 4-40, anda perlu menggerudi lubang untuk menerimanya. 4 lubang untuk pemasangan papan litar utama di bahagian bawah juga perlu digerudi. Pasang papan ini ke pelekap bateri yang terpasang dan tandakan lokasi lubang. Bor sesuai dengan skru pemasangan anda.

Langkah 12: Ujian Integrasi

Ujian Integrasi
Ujian Integrasi
Ujian Integrasi
Ujian Integrasi
Ujian Integrasi
Ujian Integrasi

Ujian akhir (integrasi) dicapai dengan mencuba semua pilihan menu dan mengesahkan ia berfungsi dengan perkakasan seperti yang dirancang. Untuk kod yang saya berikan, itu sudah mencukupi. Sekiranya anda menulis kod anda sendiri atau mengubah suai saya, ujian anda perlu lebih luas. Saya tidak percaya semua pilihan masa perlu dilaksanakan tetapi anda perlu mencuba semua pilihan penggera standard dan mengesahkan penggera Tidur dan Meditasi berfungsi seperti yang dirancang.

Langkah 13: Pemikiran Akhir

Tahniah atas kejayaan anda, saya harap, projek. Saya pasti anda menghadapi masalah yang perlu anda selesaikan. Saya juga yakin bahawa beberapa arahan saya mungkin lebih lengkap atau lebih jelas. Tolong beritahu saya melalui bahagian komen apa hasil anda dan berikan cadangan bagaimana petunjuk ini dapat diperbaiki.

Terima kasih kerana sudi melihat dan / atau membina projek ini.

Disyorkan: