- Komponen Diperlukan
- Huraian Pin Motor Stepper
- Litar Diagram untuk Stepper Motor Control menggunakan Modul ULN2003
- Diagram Litar untuk kawalan Motor Stepper menggunakan Modul L293D:
- Mengendalikan Motor Stepper dengan AVR ATmega16
Stepper Motors adalah motor tanpa berus DC yang boleh berputar dari 0 0 hingga 360 0 dalam beberapa langkah. Motor stepper menggunakan isyarat elektronik untuk memutar motor secara berperingkat dan setiap isyarat memutarkan poros dalam kenaikan tetap (satu langkah). Malaikat putaran dikawal dengan menerapkan urutan isyarat tertentu. Tidak seperti Servo Motor, motor stepper dapat digerakkan dengan menggunakan pin GPIO mikrokontroler dan bukan pin PWM dan dapat berputar ke dalam (+360 0) dan (-360 0). Urutan isyarat menentukan arah arah jam dan lawan arah motor stepper. Untuk mengawal kelajuan motor, kita hanya perlu mengubah kadar isyarat kawalan yang diterapkan. Motor stepper berpusing dalam beberapa langkah. Terdapat beberapa kaedah langkah untuk mengoperasikan Stepper Motor seperti langkah penuh, setengah langkah dan langkah mikro. Untuk mengetahui lebih lanjut mengenai asas, teori dan prinsip kerja motor stepper, ikuti pautan.
Kami sebelum ini menghubungkan Motor Stepper dengan banyak Pengawal Mikro:
- Interfacing Stepper Motor dengan ARM7-LPC2148
- Interfacing Stepper Motor dengan Arduino Uno
- Interfacing Stepper Motor dengan MSP430G2
- Interfacing Stepper Motor dengan STM32F103C8
- Interfacing Stepper Motor dengan PIC Microcontroller
- Interfacing Stepper Motor dengan 8051 Microcontroller
- Interfacing Stepper Motor dengan Raspberry Pi
Dalam tutorial ini kita akan menghubungkan 28BYJ-48 Stepper Motor dengan Atmega16 AVR Microcontroller menggunakan Atmel Studio 7.0. Motor stepper dinilai berfungsi dalam 5V. Kami akan menghubungkan motor stepper dengan kedua-dua pemandu motor iaitu ULN2003 dan L293. Kedua-duanya akan didorong oleh bekalan 5V. Untuk mempermudah antaramuka, kami menggunakan modul prebuild kedua-dua pemandu motor. Anda juga boleh menggunakan IC mandiri ULN2003 dan L293D. Jumlah wayar dan jumper boleh menjadi lebih banyak, jadi berhati-hatilah semasa menyambungkan semua sambungan.
Komponen Diperlukan
- Motor Stepper (28BYJ-48)
- Pemacu Motor Modul ULN2003 / L293D
- IC Mikrokontroler Atmega16
- Pengayun Kristal 16Mhz
- Dua Kapasitor 100nF
- Dua Kapasitor 22pF
- Tekan butang
- Wayar Pelompat
- Papan roti
- USBASP v2.0
- Led (Sebarang Warna)
Huraian Pin Motor Stepper
Litar Diagram untuk Stepper Motor Control menggunakan Modul ULN2003
Sambungkan semua komponen seperti yang ditunjukkan dalam rajah di bawah semasa menggunakan ULN2003. Begitu juga kita akan menggunakan antaranya menggunakan L293D pada langkah seterusnya. Kami menggunakan PORTA Atmega16 untuk menghubungkan motor stepper untuk kedua-dua pemandu motor. Tidak perlu menyambungkan pin motor stepper 5V. Hanya pin gegelung yang diperlukan untuk menggerakkan motor stepper. Susunan pin sangat penting untuk menggerakkan motor stepper kerana tenaga gegelung harus dilakukan untuk mencapai langkah. Empat input ULN2003 dan empat output ULN2003 digunakan dalam projek ini. Input akan disambungkan ke pin PORTA dan output akan disambungkan ke pin Isyarat Motor Stepper. Juga, sambungkan satu butang tekan di Reset pin untuk menetapkan semula Atmega16 bila diperlukan. Sambungkan Atmega16 dengan litar pengayun kristal yang betul. Semua sistem akan dikuasakan oleh bekalan 5V.
Berikut adalah Gambar Modul Pemandu Motor ULN2003 yang sebenarnya:
Di bawah ini kami telah memberikan sambungan pin Atmega16 dengan ULN2003 dan L293D untuk memutar motor stepper. Interfacing motor stepper dengan modul L293D dijelaskan di bahagian kemudian, ingat bahawa hanya satu modul sama ada ULN2003 atau L293D diperlukan untuk kawalan motor stepper.
Sambungan pin untuk INPUT adalah seperti berikut:
Atmega16 |
ULN2003 |
L293D |
A0 |
IN1 (PIN1) |
IN1 (PIN2) |
A1 |
IN2 (PIN2) |
IN2 (PIN7) |
A2 |
IN3 (PIN3) |
IN3 (PIN10) |
A3 |
IN4 (PIN4) |
IN4 (PIN15) |
Sambungan pin untuk OUTPUT adalah seperti berikut:
Motor Stepper |
ULN2003 |
L293D |
Jingga |
OUT1 (PIN16) |
KELUAR1 (PIN3) |
Kuning |
OUT2 (PIN15) |
OUT2 (PIN6) |
Merah jambu |
OUT3 (PIN14) |
OUT3 (PIN11) |
Biru |
OUT4 (PIN13) |
OUT4 (PIN14) |
Diagram Litar untuk kawalan Motor Stepper menggunakan Modul L293D:
Mengendalikan Motor Stepper dengan AVR ATmega16
Seperti yang telah diberitahu tidak seperti Servo Motor, motor Stepper memerlukan pemandu luaran seperti pemandu motor ULN2003 atau L293D. Oleh itu, sambungkan Circuit seperti di atas dan muat naik program main.c yang diberikan pada akhir.
Lakaran menunjukkan motor stepper berputar di kedua sisi iaitu mengikut arah jam dan lawan arah jam. Sekiranya anda ingin memutar stepper ke satu arah, cukup komen garis kod arah lain dalam lakaran.
Kod AVR yang lengkap untuk mengawal Stepper Motor diberikan di bawah. Kodnya ringkas dan dapat difahami dengan mudah. Dua kod diberikan di bawah, satu untuk motor stepper berputar dengan ULN2003 dan yang kedua dengan modul L293D.
Sambungkan USBASP v2.0 anda dan ikuti petunjuk dalam pautan ini untuk memprogram Atmega16 AVR Microcontroller menggunakan USBASP dan Atmel Studio 7.0. Cukup buat lakaran dan muat naik menggunakan rantai alat luaran.
Kod lengkap dengan Video Demonstrasi diberikan di bawah.