Daftar Isi:

Arduino - Keseimbangan - Robot Penyeimbang - Cara Membuat?: 6 Langkah (dengan Gambar)
Arduino - Keseimbangan - Robot Penyeimbang - Cara Membuat?: 6 Langkah (dengan Gambar)

Video: Arduino - Keseimbangan - Robot Penyeimbang - Cara Membuat?: 6 Langkah (dengan Gambar)

Video: Arduino - Keseimbangan - Robot Penyeimbang - Cara Membuat?: 6 Langkah (dengan Gambar)
Video: Cara Membuat Balancing Robot Dengan Esp12 Arduino Pro Micro SANGAT STABIL 2024, November
Anonim
Image
Image

Dalam tutorial ini kita akan belajar bagaimana membuat robot penyeimbang (balance) Arduino yang menyeimbangkan dirinya sendiri. Pertama anda bisa melihat video tutorial diatas.

Langkah 1: Perangkat Keras yang Diperlukan

Perakitan Robot
Perakitan Robot

Arduino Board (Uno) --

MPU-6050 GY521 Acc+Gyro --

Set Motor Encoder DC 6V 210RPM --

Driver Motor L298N --

Tombol Beralih --

Set Mur Sekrup Spacer Berulir Hex M3 --

Lembar Perspex Akrilik --

3.7v 18650 Li-ion+Charger Isi Ulang --

Baterai 9V --

Kabel Jumper --

Pistol Lem Panas --

Kit dan Perlengkapan Starter Arduino (Opsional): Papan Arduino & Perlengkapan SCM #01 --

Arduino Board & SCM Supplies #02 --

Kit Pemula Pembelajaran Dasar Arduino #01 --

Kit Pemula Pembelajaran Dasar Arduino #02 --

Kit Pemula Pembelajaran Dasar Arduino #03 --

Mega 2560 Starter Kit dengan Tutorial --

Kit Modul Sensor Untuk Arduino #01 --

Kit Modul Sensor Untuk Arduino #02 --

Langkah 2: Perakitan Robot

Perakitan Robot
Perakitan Robot
Perakitan Robot
Perakitan Robot
Perakitan Robot
Perakitan Robot
  • Bor empat sudut dari 3 Lembar Akrilik. (Gambar 1 dan 2)
  • Di antara setiap lembaran akrilik akan ada sekitar 8 cantimeter / 3,15 inci. (Gambar 3)
  • Dimensi Robot (perkiraan) 15cm x 10 cm x 20cm. (Gambar 4)
  • Motor DC dan roda akan ditempatkan di tengah (garis tengah) robot. (Gambar 5)
  • Pengemudi Motor L298N akan ditempatkan di lantai pertama tengah (garis tengah) robot. (Gambar 6)
  • Papan Arduino akan ditempatkan di lantai dua robot.
  • Modul MPU6050 akan ditempatkan di lantai atas robot. (Gambar 7)

Langkah 3: Koneksi

Koneksi
Koneksi
Koneksi
Koneksi

Uji MPU6050 dan pastikan berfungsi! Hubungkan MPU6050 ke Arduino terlebih dahulu dan uji koneksi menggunakan kode dalam tutorial di bawah ini. Daha harus ditampilkan di monitor serial

Tutorial yang Dapat Diinstruksikan - MPU6050 GY521 6 Axis Accelerometer+Gyro

Tutorial YouTube - MPU6050 GY521 6 Axis Accelerometer + Gyro

Modul L298N dapat memberikan +5V yang dibutuhkan oleh Arduino selama tegangan inputnya +7 V atau lebih besar. Namun, saya memilih untuk memiliki sumber daya terpisah untuk motor

Langkah 4: Bagaimana Cara Menyeimbangkan Bekerja?

Bagaimana Keseimbangan Bekerja?
Bagaimana Keseimbangan Bekerja?
Bagaimana Keseimbangan Bekerja?
Bagaimana Keseimbangan Bekerja?
Bagaimana Keseimbangan Bekerja?
Bagaimana Keseimbangan Bekerja?
  • Untuk menjaga keseimbangan robot, motor harus melawan jatuhnya robot.
  • Tindakan ini membutuhkan umpan balik dan elemen koreksi.
  • Elemen umpan balik adalah MPU6050, yang memberikan akselerasi dan rotasi di ketiga sumbu yang digunakan oleh Arduino untuk mengetahui orientasi robot saat ini.
  • Elemen koreksi adalah kombinasi motor dan roda.
  • Robot self-balancing pada dasarnya adalah pendulum terbalik.
  • Itu dapat diseimbangkan dengan lebih baik jika pusat massa lebih tinggi relatif terhadap as roda.
  • Inilah mengapa saya menempatkan baterai di atas.
  • Ketinggian robot, bagaimanapun, dipilih berdasarkan ketersediaan bahan.

Langkah 5: Kode Sumber dan Perpustakaan

Kode Sumber dan Perpustakaan
Kode Sumber dan Perpustakaan
Kode Sumber dan Perpustakaan
Kode Sumber dan Perpustakaan

Kode yang dikembangkan untuk robot keseimbangan terlalu rumit. Tapi tidak perlu khawatir. Kami hanya akan mengubah beberapa data.

Kami membutuhkan empat library eksternal untuk membuat robot self-balancing bekerja

  • Pustaka PID memudahkan untuk menghitung nilai P, I, dan D.
  • Pustaka LMotorController digunakan untuk menggerakkan dua motor dengan modul L298N.
  • Pustaka I2Cdev dan pustaka MPU6050_6_Axis_MotionApps20 adalah untuk membaca data dari MPU6050.

Unduh Perpustakaan

PID --

LMotorController --

I2Cdev --

MPU6050 --

Dapatkan Kode Sumber -

Apa itu PID?

  • Dalam teori kontrol, menjaga beberapa variabel (dalam hal ini, posisi robot) stabil membutuhkan pengontrol khusus yang disebut PID.
  • P untuk proporsional, I untuk integral, dan D untuk turunan. Masing-masing parameter ini memiliki “gain” yang biasa disebut Kp, Ki, dan Kd.
  • PID memberikan koreksi antara nilai yang diinginkan (atau input) dan nilai aktual (atau output). Perbedaan antara input dan output disebut "kesalahan".
  • Kontroler PID mengurangi kesalahan ke nilai sekecil mungkin dengan terus menyesuaikan output.
  • Dalam robot self-balancing Arduino kami, input (yang merupakan kemiringan yang diinginkan, dalam derajat) diatur oleh perangkat lunak.
  • MPU6050 membaca kemiringan robot saat ini dan memasukkannya ke algoritma PID yang melakukan perhitungan untuk mengontrol motor dan menjaga robot dalam posisi tegak.

PID mengharuskan perolehan nilai Kp, Ki, dan Kd "disetel" ke nilai optimal

Kami akan menyesuaikan nilai PID secara manual

  1. Jadikan Kp, Ki, dan Kd sama dengan nol.
  2. Sesuaikan Kp. Kp yang terlalu kecil akan membuat robot terjatuh (koreksi tidak cukup). Terlalu banyak Kp akan membuat robot maju mundur dengan liar. Kp yang cukup baik akan membuat robot sedikit maju mundur (atau sedikit terombang-ambing).
  3. Setelah Kp diatur, sesuaikan Kd. Nilai Kd yang baik akan mengurangi osilasi sampai robot hampir stabil. Juga, jumlah Kd yang tepat akan membuat robot tetap berdiri meskipun didorong.
  4. Terakhir, atur Ki. Robot akan berosilasi ketika dihidupkan meskipun Kp dan Kd diatur tetapi akan stabil dalam waktu. Nilai Ki yang benar akan mempersingkat waktu yang dibutuhkan robot untuk stabil.

Saran untuk hasil yang lebih baik

Saya menyarankan Anda membuat kerangka robot serupa menggunakan bahan yang digunakan dalam proyek ini untuk membuat kode sumber Robot Keseimbangan bekerja secara stabil dan efisien.

Langkah 6: Untuk Dukungan

Untuk dukungan
Untuk dukungan
  • Anda dapat berlangganan saluran YouTube saya untuk lebih banyak tutorial dan proyek.
  • Anda juga dapat berlangganan untuk dukungan. Terima kasih.

Kunjungi Saluran YouTube saya -

Direkomendasikan: