Daftar Isi:
- Langkah 1: Prinsip Kerja
- Langkah 2: Membangun
- Langkah 3: Perakitan
- Langkah 4: Rancang Jalur Jalur Anda
- Langkah 5: Program Kode Anda
- Langkah 6: SELESAI
Video: Robot Mengikuti Garis Berbasis PID Dengan POLOLU QTR 8RC-sensor Array: 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:58
Halo!
ini adalah tulisan pertama saya tentang instruksi, dan hari ini saya akan membawa Anda ke jalan, dan menjelaskan tentang cara membangun robot mengikuti garis berbasis PID menggunakan array sensor QTR-8RC.
Sebelum masuk ke pembuatan robot, kita perlu memahami apa yang disebut sebagai PID,
Langkah 1: Prinsip Kerja
Apa itu PID??
Istilah PID adalah singkatan dari Proporsional, Integral, Derivatif. Jadi sederhananya, apa yang kita lakukan dengan melibatkan PID dengan mengikuti garis adalah, kita memberikan perintah kepada robot untuk mengikuti garis dan untuk mendeteksi belokan dengan menghitung kesalahan dengan mempertimbangkan bagaimana jauh sudah keluar jalur.
istilah kunci seperti yang disebutkan dalam dokumen polalu
Nilai proporsional kira-kira sebanding dengan posisi robot Anda sehubungan dengan garis. Artinya, jika robot Anda tepat di tengah garis, kami mengharapkan nilai proporsional tepat 0
Nilai integral mencatat riwayat gerakan robot Anda: ini adalah jumlah dari semua nilai suku proporsional yang dicatat sejak robot mulai berjalan
Turunan adalah laju perubahan nilai proporsional
Dalam tutorial ini, kita hanya akan membahas tentang Kp dan suku Kd, namun hasil dapat dicapai dengan menggunakan suku Ki juga. Pembacaan yang kita peroleh dari sensor tidak hanya pembacaan analog tetapi juga pembacaan posisi robot.jadi pada dasarnya Sensor memberikan nilai dari 0 hingga 2500 mulai dari reflektansi maksimum hingga reflektansi minimum, tetapi, pada saat yang sama, juga memberikan informasi tentang seberapa jauh robot telah terdampar dari garis.)
Sekarang kita perlu mempertimbangkan istilah kesalahan, Ini adalah perbedaan dari dua nilai nilai setpoint dan nilai saat ini. (Nilai setpoint adalah pembacaan yang sesuai dengan penempatan sensor yang "sempurna" di atas garis. dan Arus nilai adalah pembacaan seketika dari sensor Misalnya: Jika Anda menggunakan sensor array ini dan menggunakan 8 sensor, Anda akan menerima pembacaan posisi 3500 jika Anda tepat, sekitar 0 jika Anda terlalu tertinggal dari garis dan sekitar 7000 jika Anda terlalu benar.). Tujuan kami adalah membuat kesalahan nol. Maka hanya robot yang bisa mengikuti garis dengan lancar.
Kemudian datang bagian perhitungan,.
1) menghitung kesalahan.
Kesalahan = Nilai Setpoint - Nilai Saat Ini = 3500 - posisi
Karena saya menggunakan 8 sensor. sensor memberikan pembacaan posisi 3500 ketika robot ditempatkan dengan sempurna. Sekarang kami telah menghitung kesalahan kami, margin di mana robot kami melayang melintasi trek, sekarang saatnya bagi kami untuk meneliti kesalahan dan menyesuaikan kecepatan motor sesuai dengan itu.
2) menentukan kecepatan motor yang disesuaikan.
Kecepatan Motor = Kp * Error + Kd * (Error - LastError);
Kesalahan Terakhir = Kesalahan;
RightMotorSpeed = RightBaseSpeed + MotorSpeed;
LeftMotorSpeed = LeftBaseSpeed - Kecepatan Motor;
Logikanya, kesalahan 0 berarti robot kita keluar ke kiri, yang berarti robot kita perlu sedikit ke kanan, yang pada gilirannya berarti, motor kanan perlu melambat dan motor kiri perlu dipercepat. INI PID!
Nilai Kecepatan Motor ditentukan dari persamaan itu sendiri. RightBaseSpeed dan LeftBaseSpeed adalah kecepatan (setiap nilai PWM 0-255) di mana robot berjalan saat kesalahannya nol.
Kode yang saya lampirkan juga mencakup cara memeriksa nilai posisi sensor, sehingga Anda dapat membuka monitor serial dan mengunggah kode dan melihat sendiri dengan garis bagaimana motor berputar ketika posisi bervariasi.
Jika Anda mengalami masalah saat mengimplementasikan robot Anda, cukup periksa apakah dan lihat dengan mengubah tanda-tanda persamaan !!!
Dan sekarang bagian tersulit MENEMUKAN Kp DAN Kd, saya harus menghabiskan lebih dari 1 jam untuk menyetel robot saya dengan sempurna. daripada meletakkan nilai acak saya menemukan metode yang lebih mudah untuk menentukan ini.
- Mulailah dengan kp dan Kd sama dengan 0, dan mulai dengan Kp, pertama coba setel Kp ke 1 dan amati robot, tujuan kami adalah mengikuti garis meskipun goyah, jika robot melampaui batas dan kehilangan garis mengurangi nilai kp.jika robot tidak dapat menavigasi belokan dan menjadi lamban meningkatkan nilai Kp.
- Setelah robot tampaknya agak mengikuti garis, sesuaikan nilai Kd (nilai Kd > Nilai Kp) mulai dari 1 dan tingkatkan nilainya sampai Anda melihat drive yang mulus dengan goyangan yang lebih rendah.
- Setelah robot mulai mengikuti garis, tingkatkan kecepatan dan lihat apakah robot mampu mempertahankan dan mengikuti garis.
Ingatlah bahwa kecepatan memiliki dampak langsung pada penyetelan PID dan terkadang Anda mungkin perlu menyetel ulang agar sesuai dengan kecepatan robot Anda.
Sekarang kita bisa mulai membangun robot kita.
Langkah 2: Membangun
Arduino atmega 2560 dengan kabel USB – ini adalah mikrokontroler utama yang digunakan.
Sasis- untuk sasis robot Saya telah menggunakan 2 pelat akrilik melingkar yang digunakan untuk proyek lain yang sempurna untuk ini.menggunakan mur dan sekrup Saya telah membangun sasis bertingkat 2, sehingga saya dapat memasang modul lain ke pelat atas.atau Anda dapat menggunakan sasis siap pakai yang tersedia.
www.ebay.com/itm/2WD-DIY-2-Wheel-Drive-Rou…
Motor roda gigi mikro- robot membutuhkan motor yang berputar cepat untuk mengatasi rutinitas PID, untuk itu saya telah menggunakan motor dengan nilai 6V 400rpm dan roda grippy yang sesuai.
www.ebay.com/itm/12mm-6V-400RPM-Torque-Gea…
www.ebay.com/itm/HOT-N20-Micro-Gear-Motor-…
Array sensor QTR 8Rc – ini dapat digunakan untuk pelacakan garis, seperti yang disebutkan sebelumnya, saya pikir Anda sekarang telah memiliki pemahaman yang jelas tentang cara mengoperasikan array sensor dengan PID. Kodenya sangat sederhana dan menggunakan pustaka arduino yang ada Anda akan dapat untuk membangun pengikut garis cepat.
www.ebay.com/itm/Pololu-QTR-8RC-Reflectanc…
Driver motor TB6612FNG-Saya ingin menggunakan driver motor yang dapat menangani belokan dan mengubah arah dalam sekejap, yang mampu mengerem motor secara efektif saat sinyal PWM melemah.
www.ebay.com/itm/Pololu-Dual-DC-Motor-Driv…
Baterai lipo- baterai lipo 11.1V digunakan untuk memberikan daya ke robot. Meskipun saya telah menggunakan baterai lipo 11.1 V, kapasitas ini lebih dari yang dibutuhkan untuk arduino dan motor. jika Anda dapat menemukan 7.4V berbobot ringan baterai lipo atau baterai 6V Ni-MH akan menjadi sempurna. Karena alasan ini saya harus menggunakan konverter buck untuk mengubah tegangan menjadi 6V.
11.1V-
7.4 V-
Modul konverter buck-
Selain itu Anda memerlukan kabel jumper, mur dan baut, obeng dan pita listrik dan juga ikatan zip untuk memastikan semuanya terpasang dengan baik.
Langkah 3: Perakitan
pasang motor dan roda kastor kecil ke dalam piring menggunakan mur dan sekrup dan kemudian pasang sensor QTR, driver motor, papan arduino dan akhirnya baterai ke sasis.
Berikut adalah diagram sempurna yang saya temukan di internet, yang memberi tahu Anda bagaimana koneksi harus dibuat.
Langkah 4: Rancang Jalur Jalur Anda
Sekarang proyek Anda tampaknya hampir selesai. Untuk tahap terakhir Anda perlu memiliki arena kecil untuk menguji robot Anda. Saya telah menggunakan garis acak dengan lebar 3cm garis putih pada latar belakang hitam. Pastikan Anda menempelkan semuanya dengan baik. Dan untuk saat ini hindari persilangan sudut 90 derajat, karena ini adalah kasus yang rumit dalam hal pengkodean.
Langkah 5: Program Kode Anda
1. Unduh dan Instal Arduino
IDE Desktop
· windows -
· Mac OS X -
· Linux -
2. Download dan paste file array sensor QTR 8 RC ke folder library Arduino.
·
· Tempel file ke jalur - C:\Arduino\libraries
3. Unduh dan bukaLINEFOLLOWING.ino
4. Unggah kode ke papan arduino melalui kabel USB
Langkah 6: SELESAI
sekarang Anda memiliki robot line following yang dibuat sendiri.
Semoga tutorial ini bermanfaat. Jangan ragu untuk menghubungi saya melalui [email protected] jika Anda memiliki masalah.
sampai jumpa lagi dengan proyek baru lainnya.
Nikmati membangun!!
Direkomendasikan:
Quad Hacking Anak Menjadi Kendaraan yang Mengemudi Sendiri, Mengikuti Garis, dan Mendeteksi Rintangan.: 4 Langkah
Quad Hacking Anak Menjadi Kendaraan yang Mengemudi Sendiri, Mengikuti Garis, dan Mendeteksi Rintangan.: Dalam Instruksi hari ini, kita akan mengubah kendaraan 1000Watt (Ya, saya tahu banyak!) Anak Listrik menjadi Kendaraan Mengemudi Sendiri, Mengikuti Garis, dan Menghindari Rintangan! Video demo:https://youtu.be/bVIsolkEP1kUntuk proyek ini kita membutuhkan bahan-bahan berikut
Robot Mengikuti Garis: 5 Langkah
Robot Line Mengikuti: Hai Semua,Dalam instruksi ini, saya akan membagikan cara membuat Robot Mengikuti Garis menggunakan kit dari Amazon. Saya menggunakan kit ini untuk mengajari anak saya cara menyolder. Biasanya kit ini lurus ke depan, Anda mendapatkan semua bahan, komponen, dll dengan kit
Generator Musik Berbasis Cuaca (Generator Midi Berbasis ESP8266): 4 Langkah (dengan Gambar)
Weather Based Music Generator (ESP8266 Based Midi Generator): Hai, hari ini saya akan menjelaskan cara membuat generator Musik berbasis Cuaca kecil Anda sendiri. Ini didasarkan pada ESP8266, yang mirip dengan Arduino, dan merespons suhu, hujan dan intensitas ringan. Jangan berharap untuk membuat seluruh lagu atau program akord
Robot Mengikuti Garis: 3 Langkah
Robot Pengikut Garis: Robot pengikut garis adalah mesin serbaguna yang digunakan untuk mendeteksi dan melacak garis-garis gelap yang digambar pada permukaan putih. Karena robot ini diproduksi menggunakan papan tempat memotong roti, maka akan sangat mudah untuk dibuat. Sistem ini dapat menyatu
Mengikuti Cahaya dan Menghindari Robot Berbasis Arduino: 5 Langkah
Cahaya Mengikuti dan Menghindari Robot Berbasis Arduino: Ini adalah proyek sederhana yang mengikuti atau Menghindari Cahaya.Saya Membuat Simulasi ini di Proteus 8.6 pro.Komponen yang Dibutuhkan:-1) Arduino uno.2) 3 LDR.3) 2 Motor Gear Dc. 4) Satu Servo.5) Tiga Resistor 1k.6) satu H-Bridge l290D7) Satu on & Matikan Sakelar [f