Isi kandungan:
- Langkah 1: Gambaran Keseluruhan Elemen Perkakasan
- Langkah 2: Gambaran Keseluruhan Perisian
- Langkah 3: Senarai Bahagian
- Langkah 9: Reka Bentuk dan Kod Penulisan
- Langkah 10: Pasang Program
- Langkah 11: Pasang Pemasa
- Langkah 12: Ujian Integrasi
- Langkah 13: Pemikiran Akhir
Video: Multi-Timer W / External Control: 13 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Instructable projek ini adalah binaan Timer pelbagai fungsi
Pemasa ini mampu berfungsi sebagai:
- 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.
- Pemasa tidur siang dengan 7 masa yang boleh dipilih, undur dan penggera setelah selesai.
- 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
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
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:
- OLED dan kabel
- Suis & pendawaian Mula / Hentikan
- Pengekod putar dan kabel
- Pembesar suara / Buzzer & pendawaian
- Jack dan pendawaian kawalan luaran
- 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 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:
PSU VOLTAGE MINI MULTI PORTABLE DENGAN USB, Lampu Kilat, UJIAN KOMPONEN DAN PENGISI BANGUNAN: 6 Langkah
PSU VOLTAGE MINI MULTI PORTABLE DENGAN USB, Lampu Kilat, UJIAN KOMPONEN DAN PENGGUNA BANGUNAN: Selamat datang ke arahan pertama saya! Dengan arahan ini, anda dapat mengubah powerbank suria yang murah / murah (dengan beberapa bahagian tambahan) menjadi sesuatu yang berguna. Sesuatu yang boleh anda gunakan setiap hari, seperti yang saya lakukan, kerana ia sangat bagus untuk digunakan! Sebilangan besar av
Pencetak Dot Multi Warna: 6 Langkah
Pencetak Dot Multi Warna: Hai semua. Instruksional ini dibuat pada reka bentuk dan fabrikasi Multi Color Dot Printer. Ini terutama berdasarkan karya serupa yang telah diterbitkan di sini dalam arahan. Karya yang saya maksudkan adalah "Dotter: Huge Arduino Based Dot Matrix Pr
Jam Berdiri Arduino 3.3V W / External 8 MHz Diprogramkan Dari Arduino Uno Melalui ICSP / ISP (dengan Pemantauan Bersiri!): 4 Langkah
Standalone Arduino 3.3V W / External 8 MHz Clock Diprogramkan Dari Arduino Uno Melalui ICSP / ISP (dengan Serial Monitoring!): Objektif: Untuk membina Arduino mandiri yang berjalan pada 3.3V dari jam luaran 8 MHz. Untuk memprogramkannya melalui ISP (juga dikenali sebagai ICSP, pengaturcaraan bersiri dalam litar) dari Arduino Uno (berjalan pada 5V) Untuk mengedit fail bootloader dan membakar
Brightness Control PWM Based LED Control Menggunakan Push Button, Raspberry Pi dan Scratch: 8 Langkah (dengan Gambar)
Brightness Control PWM Based LED Control Menggunakan Push Button, Raspberry Pi dan Scratch: Saya cuba mencari cara untuk menerangkan bagaimana PWM bekerja kepada pelajar saya, jadi saya menetapkan tugas untuk mengawal kecerahan LED menggunakan 2 butang tekan - satu butang meningkatkan kecerahan LED dan yang lain meredupkannya. Untuk progra
Pan-Tilt Multi Servo Control: 11 Langkah (dengan Gambar)
Pan-Tilt Multi Servo Control: Pada tutorial ini, kita akan meneroka cara mengendalikan pelbagai servo menggunakan Python pada Raspberry Pi. Matlamat kami adalah mekanisme PAN / TILT untuk meletakkan kamera (PiCam). Di sini anda dapat melihat bagaimana projek akhir kami akan berfungsi: Uji gelung kawalan Servo kawalan: