Daftar Isi:

Mengemudi Motor Kecil Dengan TB6612FNG: 8 Langkah
Mengemudi Motor Kecil Dengan TB6612FNG: 8 Langkah

Video: Mengemudi Motor Kecil Dengan TB6612FNG: 8 Langkah

Video: Mengemudi Motor Kecil Dengan TB6612FNG: 8 Langkah
Video: RC Robot Car - RC Controls and Arduino 2024, November
Anonim
Mengemudi Motor Kecil Dengan TB6612FNG
Mengemudi Motor Kecil Dengan TB6612FNG

TB6612FNG adalah IC driver motor ganda dari Toshiba. Ada banyak papan breakout di luar sana untuk itu dan ini adalah salah satu pilihan paling populer untuk menggerakkan motor kecil.

Ada banyak sumber online untuk memulai dengan TB6612FNG tetapi saya memutuskan untuk tetap menulis ini untuk mengkompilasi lebih baik apa yang saya temukan.

Saya akan fokus pada logika kontrol dan juga menjelaskan perpustakaan driver motor Sparkfun TB6612FNG secara rinci dalam instruksi ini.

Langkah 1: Bagian yang Diperlukan

Inilah yang akan kita gunakan hari ini:

1) Motor Logam Mikro

2) driver motor TB6612FNG

3) Kabel Arduino dan USB

4) Sumber daya untuk motor

5) Papan tempat memotong roti

6) Kabel jumper

Langkah 2: Papan Breakout TB6612FNG

Papan Breakout TB6612FNG
Papan Breakout TB6612FNG

Seperti yang saya sebutkan sebelumnya, ada banyak papan breakout dari berbagai produsen untuk TB6612FNG. Semuanya memiliki komponen yang kurang lebih sama dan juga pinout yang serupa.

Kapasitor disolder ke papan untuk perlindungan terhadap kebisingan dari motor, jadi Anda tidak perlu menyolder kapasitor keramik tersebut ke motor.

IC juga dilengkapi dengan dioda internal untuk melindungi dari EMF belakang dari motor. Tetapi memiliki langkah-langkah keamanan ekstra tidak merugikan siapa pun. Saya tidak menambahkannya karena motor saya tidak terlalu besar dan saya kekurangan dioda:|

Langkah 3: Pin Out

Pin Out
Pin Out

Papan breakout TB6612FNG memiliki pinout yang sangat nyaman. Semua output motor, input dan koneksi daya dikelompokkan dengan baik untuk kemudahan penggunaan yang maksimal.

Saya membuat ilustrasi pinout dan cara menghubungkannya, semoga berguna saat menghubungkan semua kabel itu:)

Langkah 4: Skema

skema
skema
skema
skema

Saya cukup baru menggunakan Fritzing. Saya menemukan skema sirkuit dari Fritzing cukup sulit untuk dipahami, tetapi tampilan papan tempat memotong roti nyaman untuk Instructables. Jangan ragu untuk mengajukan pertanyaan jika ada sambungan kabel yang terlihat membingungkan.

Langkah 5: Menghubungkannya

Menghubungkannya
Menghubungkannya

Hubungkan semuanya sesuai dengan skema. Ada banyak kabel, pastikan untuk memeriksa ulang setelah setiap koneksi.

Saya menggunakan Pin Arduino berikut untuk input driver motor:

Pengemudi Motor -> Nomor Pin Arduino

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Hal-hal yang bisa salah dalam langkah ini:1) Jangan membalikkan polaritas saat menghubungkan Vm dan GND dari sumber listrik. Anda mungkin menggoreng pengemudi motor Anda.

2) Pastikan untuk menghubungkan pin PWMA dan PWMB ke PWM pada arduino.

3) Ingatlah untuk menghubungkan GND Arduino dan GND dari driver motor jika Anda menggunakan sumber daya yang berbeda untuk masing-masing.

Langkah 6: Mengunduh dan Menginstal Perpustakaan

Unduh perpustakaan dari halaman GitHub Sparkfun.

Setelah Anda mengunduh file zip, buka Arduino IDE Anda.

Dari Sketch > Include Library > Add. Zip Library, tambahkan library yang Anda unduh.

Setelah berhasil diinstal, itu akan muncul di File > Contoh, sebagai 'SparkFun TB6612FNG Motor Library'

Jika Anda mengalami kesulitan mengunduh dan menginstal Perpustakaan Arduino, lihat langkah 5 dari instruksi ini.

Langkah 7: Menjalankan Kode Contoh

Sekarang setelah perpustakaan kami siap, kami dapat mengunggah kode contoh untuk mengujinya.

1) Buka contoh 'MotorTestRun' dari 'Sparkfun TB6612FNG Motor Driver Library' yang terdaftar di perpustakaan Anda.

Catatan: Jika Anda tidak menggunakan nomor pin yang sama seperti yang disebutkan pada langkah 5, pastikan untuk mengubah definisi pin sesuai dengan pengaturan Anda.

2) Pilih papan Anda dari manajer papan

3) Unggah kode Anda dan motor akan mulai bergerak

Setelah Anda mengunggah motor harus mulai bergerak. Jika tidak, periksa kembali kabel Anda.

Langkah 8: Perpustakaan Dijelaskan

Sekarang untuk menjelaskan bagaimana menggunakan perpustakaan untuk potongan kode Anda sendiri.

Pertama mulai dengan mengimpor perpustakaan dan menginisialisasi pin pada arduino

#termasuk

#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6 #define STBY 9

Untuk menginisialisasi objek motor Anda, Anda perlu mengatur offset untuk setiap motor. Bayangkan jika Anda melakukan perintah maju pada motor Anda, dan itu berputar secara terbalik. Anda bisa memasang ulang secara manual, atau Anda bisa mengubah offset dari sini. Peretasan QoL kecil yang bagus ditambahkan oleh SparkFun. Nilai offset ini adalah 1 atau -1.

Anda kemudian harus menginisialisasi masing-masing Motor dengan parameter berikut;

Motor = Motor (Pin 1, Pin 2, pin PWM, offset, Pin siaga)

const int offsetA = 1;

const int offsetB = 1; Motor motor1 = Motor(AIN1, AIN2, PWMA, offsetA, STBY);

Dan dengan ini, Anda selesai menginisialisasi perpustakaan. Tidak ada lagi langkah dalam fungsi setup(), kita cukup menjalankan kode di fungsi loop().

Metode motorik memiliki fungsi sebagai berikut. Tinker sekitar untuk memeriksa mereka semua.

1).drive(nilai, waktu)

Motor_name = nama motor anda objectvalue= 255 sampai -255; nilai negatif akan membuat motor bergerak dalam waktu mundur = waktu dalam milidetik

2).rem()

Fungsi rem tidak mengambil argumen apa pun, mengerem motor.

3) rem(, <motor_name2)

Fungsi rem mengambil nama objek motor sebagai argumen. Rem motor dilewatkan ke fungsi.

4) maju (,, waktu) maju (,, kecepatan, waktu)

Fungsi menerima dua nama objek motor, secara opsional kecepatan dan waktu PWM dalam milidetik dan menjalankan motor dalam arah maju untuk jumlah waktu yang berlalu. Jika nilai kecepatan negatif, motor akan mundur. Kecepatan default diatur ke 255.

5) kembali (,, waktu) kembali (,, kecepatan, waktu)

Fungsi menerima dua nama objek motor, secara opsional kecepatan dan waktu PWM dalam milidetik dan menjalankan motor dalam arah maju untuk jumlah waktu yang berlalu. Jika nilai kecepatan negatif, motor akan maju. Kecepatan default diatur ke 255.

6) kiri (,, kecepatan) kanan (,, kecepatan)

Fungsi menerima dua nama objek motor dan kecepatan. Urutan objek motor yang dilewatkan sebagai parameter adalah penting. Untuk menggerakkan motor tunggal, gunakan.drive() sebagai gantinya.

Direkomendasikan: