Isi kandungan:
- Langkah 1: Perpustakaan StepDriver
- Langkah 2: Pembolehubah Global
- Langkah 3: Fungsi - Menetapkan Pin Pemacu
- Langkah 4: Fungsi - Fungsi Asas Pemandu
- Langkah 5: Fungsi - Tetapan Langkah Motor
- Langkah 6: Fungsi - Menetapkan Mod Langkah Motor
- Langkah 7: Fungsi - Menetapkan Suis Had
- Langkah 8: Fungsi - Membaca Suis Had
- Langkah 9: Fungsi - Persediaan Gerakan
- Langkah 10: Fungsi - Fungsi Pergerakan
- Langkah 11: Fungsi - Fungsi Pergerakan - Pemboleh ubah
- Langkah 12: Fungsi - Fungsi Pergerakan - Pecutan
- Langkah 13: Fungsi - Fungsi Gerakan - Kelajuan Berterusan
- Langkah 14: Fungsi - Fungsi Pergerakan - Penurunan
- Langkah 15: Fungsi - Fungsi Gerakan - Kelajuan Berterusan
- Langkah 16: Fungsi - Fungsi Pindah - Pusing Giliran
- Langkah 17: Carta Gerak - Kelajuan Kedudukan
- Langkah 18: Carta Gerak - Kedudukan Vs. Kedudukan
- Langkah 19: Carta Gerak - Velocity Vs. Sebentar
Video: Arduino: Precision Lib untuk Stepper Motor: 19 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Hari ini, saya akan menunjukkan perpustakaan untuk pemandu motor langkah penuh dengan suis had, dan pergerakan enjin dengan pecutan dan langkah mikro. Lib ini, yang berfungsi pada Arduino Uno dan Arduino Mega, membolehkan anda menggerakkan enjin berdasarkan bukan hanya pada jumlah langkah, tetapi juga pada milimeter. Dan juga cukup tepat
Ciri penting perpustakaan ini ialah ia membolehkan anda membina mesin CNC anda sendiri, yang tidak semestinya hanya X, Y, tetapi juga pertukaran bahagian, misalnya, kerana ia bukan GRBL yang siap, melainkan pengaturcaraan yang membolehkan anda membuat mesin yang sesuai untuk anda.
Walau bagaimanapun, pernyataan berikut adalah perincian penting! Video ini hanya untuk mereka yang sudah terbiasa dengan pengaturcaraan. Sekiranya anda tidak biasa dengan pengaturcaraan Arduino, pertama anda harus menonton video pengenalan lain di saluran saya. Ini kerana saya membincangkan subjek lanjutan dalam video khusus ini, dan menjelaskan dengan lebih terperinci mengenai Lib yang digunakan dalam video: Step Motor with Acceleration and End of Stroke.
Langkah 1: Perpustakaan StepDriver
Perpustakaan ini merangkumi tiga jenis pemacu yang paling biasa di pasaran: A4988, DRV8825, dan TB6600. Ini mengkonfigurasi pin pemandu, memungkinkan mereka melakukan reset dan penempatan ke mod Tidur, serta mengaktifkan dan menonaktifkan output motor yang bertindak pada pin Aktifkan. Ia juga menetapkan input pin langkah mikro pemandu, dan had suis dan tahap pengaktifannya (tinggi atau rendah). Ia juga mempunyai kod pergerakan motor dengan percepatan berterusan dalam mm / s², kecepatan maksimum dalam mm / s, dan kecepatan minimum dalam mm / s.
Bagi mereka yang menonton bahagian 1 dan 2 video Step Motor with Acceleration and End of Stroke, muat turun perpustakaan baru ini yang tersedia hari ini, kerana saya membuat beberapa perubahan pada fail pertama itu untuk memudahkan penggunaannya.
Langkah 2: Pembolehubah Global
Saya menunjukkan dengan tepat setiap pemboleh ubah global.
Langkah 3: Fungsi - Menetapkan Pin Pemacu
Di sini, saya menerangkan beberapa kaedah.
Saya menetapkan tetapan Pinout dan pin Arduino sebagai output.
Langkah 4: Fungsi - Fungsi Asas Pemandu
Di bahagian ini, kami bekerja dengan konfigurasi pemacu dan fungsi asasnya.
Langkah 5: Fungsi - Tetapan Langkah Motor
Dalam langkah kod ini, kita mengkonfigurasi jumlah langkah per milimeter yang mesti dilaksanakan oleh motor.
Langkah 6: Fungsi - Menetapkan Mod Langkah Motor
Jadual ini menunjukkan tetapan untuk mod langkah motor. Berikut adalah beberapa contoh.
Langkah 7: Fungsi - Menetapkan Suis Had
Di sini, saya harus membaca keseluruhan dan nilai boolean. Anda perlu menetapkan sama ada kunci aktif naik atau turun, sambil menetapkan had maksimum dan minimum.
Langkah 8: Fungsi - Membaca Suis Had
Bahagian ini berbeza dengan bahagian Lib yang saya sediakan minggu lalu. Mengapa saya menukarnya? Baiklah, saya membuat eRead untuk menggantikan beberapa yang lain. Di sini, eRead akan membaca LVL, digitalRead (pin), dan akan mengembalikan BENAR. Semua ini perlu dilaksanakan dengan tinggi. Kerja berikut dengan kunci aktif akan berada pada tahap rendah. Saya akan menggunakannya di sini untuk menunjukkan jadual "Kebenaran".
Dalam gambar kod, saya meletakkan rajah yang akan membantu dalam pemahaman bahawa, di bahagian kod sumber ini, saya bergerak ke arah Ascending dan belum mencapai kunci akhir kursus.
Sekarang, dalam bool kod os gambar ini DRV8825, saya menunjukkan mesin masih bergerak ke arah yang semakin meningkat. Walau bagaimanapun, suis had maksimum diaktifkan. Mekanisme itu, mesti menghentikan pergerakan.
Untuk terakhir, saya menunjukkan pergerakan yang sama, tetapi berlawanan arah.
Di sini, anda sudah menghidupkan suis akhir.
Langkah 9: Fungsi - Persediaan Gerakan
Utiliti utama kaedah motionConfig adalah menukar milimeter sesaat (ukuran yang digunakan dalam mesin CNC) menjadi langkah, untuk memenuhi pengawal motor stepper. Oleh itu, di bahagian ini, saya menunjukkan pemboleh ubah untuk memahami langkah-langkahnya dan bukan milimeter.
Langkah 10: Fungsi - Fungsi Pergerakan
Dalam langkah ini, kita memperlakukan perintah yang bergerak selangkah ke arah yang diinginkan dalam jangka masa dalam mikrodetik. Kami juga menetapkan pin arah pemandu, masa tunda, dan arah suis had.
Langkah 11: Fungsi - Fungsi Pergerakan - Pemboleh ubah
Di bahagian ini, kami mengkonfigurasi semua pemboleh ubah yang melibatkan jangka masa kelajuan maksimum dan minimum, jarak lintasan, dan langkah-langkah yang diperlukan untuk mengganggu lintasan, antara lain.
Langkah 12: Fungsi - Fungsi Pergerakan - Pecutan
Di sini, saya mengemukakan beberapa perincian tentang bagaimana kami sampai pada data pecutan, yang dihitung melalui persamaan Torricelli, kerana ini mengambil kira ruang untuk melakukan pecutan dan bukan waktunya. Tetapi, penting di sini untuk memahami bahawa keseluruhan persamaan ini hanya mengenai satu baris kod.
Kami mengenal pasti trapeze pada gambar di atas, kerana RPM awal buruk bagi kebanyakan motor stepper. Perkara yang sama berlaku dengan perlambatan. Oleh kerana itu, kami memvisualisasikan trapezoid dalam jangka masa antara pecutan dan perlambatan.
Langkah 13: Fungsi - Fungsi Gerakan - Kelajuan Berterusan
Di sini kita menyimpan jumlah langkah yang digunakan dalam akselerasi, kita terus dalam kecepatan terus menerus, dan tetap dengan kecepatan maksimum, yang dapat dilihat pada gambar di bawah.
Langkah 14: Fungsi - Fungsi Pergerakan - Penurunan
Di sini kita mempunyai persamaan lain, kali ini dengan nilai pecutan negatif. Ini juga ditampilkan dalam garis kod, yang mewakili, dalam gambar di bawah, persegi panjang yang berlabel Deceleration.
Langkah 15: Fungsi - Fungsi Gerakan - Kelajuan Berterusan
Kami kembali ke kelajuan berterusan untuk mengerjakan separuh lintasan kedua, seperti yang dilihat di bawah.
Langkah 16: Fungsi - Fungsi Pindah - Pusing Giliran
Pada bahagian ini, kita menggerakkan mesin dalam sebilangan putaran ke arah yang diinginkan, mengubah jumlah putaran dalam milimeter. Akhirnya, kami menggerakkan motor ke arah yang diminta.
Langkah 17: Carta Gerak - Kelajuan Kedudukan
Dalam grafik ini, saya mempunyai data yang diekstrak dari persamaan yang kami gunakan dalam bahagian Pecutan. Saya mengambil nilai dan bermain di siri Arduino, dan saya pergi dari ini ke Excel, yang menghasilkan jadual ini. Jadual ini menunjukkan kemajuan langkah.
Langkah 18: Carta Gerak - Kedudukan Vs. Kedudukan
Di sini, kita mengambil kedudukan, dalam beberapa langkah, dan halaju dan mengubahnya menjadi titik, dalam mikrodetik. Kami perhatikan dalam langkah ini bahawa tempohnya berbanding terbalik dengan halaju.
Langkah 19: Carta Gerak - Velocity Vs. Sebentar
Akhirnya, kita mempunyai kelajuan sebagai fungsi sekejap, dan kerana ini, kita mempunyai garis lurus, kerana halaju sebagai fungsi waktu.
Disyorkan:
Stepper Motor terkawal Motor Stepper Tanpa Mikrokontroler !: 6 Langkah
Stepper Motor terkawal Motor Stepper Tanpa Mikrokontroler !: Dalam Instructable cepat ini, kami akan membuat pengawal motor stepper sederhana menggunakan motor stepper. Projek ini tidak memerlukan litar kompleks atau pengawal mikro. Oleh itu, tanpa basa-basi lagi, mari kita mulakan
Stepper Motor terkawal Motor Stepper Tanpa Mikrokontroler (V2): 9 Langkah (dengan Gambar)
Stepper Motor terkawal Motor Stepper Tanpa Mikrokontroler (V2): Dalam salah satu Instructables saya sebelumnya, saya menunjukkan kepada anda cara mengawal motor stepper menggunakan motor stepper tanpa mikrokontroler. Ini adalah projek yang cepat dan menyeronokkan tetapi ia datang dengan dua masalah yang akan diselesaikan dalam Instructable ini. Jadi, dengan
Lokomotif Model Dikendalikan Motor Stepper - Motor Stepper Sebagai Pengekod Rotary: 11 Langkah (dengan Gambar)
Lokomotif Model Dikendalikan Motor Stepper | Stepper Motor Sebagai Rotary Encoder: Dalam salah satu Instructables sebelumnya, kami belajar bagaimana menggunakan stepper motor sebagai rotary encoder. Dalam projek ini, kita sekarang akan menggunakan motor stepper yang dipusingkan rotary encoder untuk mengawal lokomotif model menggunakan mikrokontroler Arduino. Jadi, tanpa fu
Stepper Motor terkawal Motor Stepper - Motor Stepper Sebagai Pengekod Rotary: 11 Langkah (dengan Gambar)
Stepper Motor terkawal Motor Stepper | Stepper Motor Sebagai Rotary Encoder: Adakah beberapa motor stepper berbaring dan mahu melakukan sesuatu? Dalam Instructable ini, mari gunakan motor stepper sebagai rotary encoder untuk mengawal kedudukan motor stepper lain menggunakan mikrokontroler Arduino. Jadi tanpa basa-basi lagi, mari kita
Cara Menggunakan Stepper Motor Sebagai Rotary Encoder dan OLED Display untuk Langkah: 6 Langkah
Cara Menggunakan Motor Stepper Sebagai Rotary Encoder dan OLED Display untuk Langkah: Dalam tutorial ini kita akan belajar bagaimana untuk melacak langkah motor stepper pada Paparan OLED. Tonton video demonstrasi. Kredit untuk tutorial Asal diberikan kepada pengguna youtube " sky4fly "