- Bahan yang Diperlukan:
- Konsep Pengikut Talian
- Rajah dan Penjelasan Litar:
- Pengaturcaraan MIC Microcontroller:
- Pengikut Talian PIC Beraksi:
A Line Follower Robot adalah robot yang ringkas namun menarik untuk dibina oleh kebanyakan pelajar / peminat. Dalam tutorial ini kita akan belajar Bagaimana Robot Pengikut Line Berfungsi dan bagaimana kita dapat membuatnya menggunakan PIC Microcontroller PIC16F877A. PIC16F877A adalah MCU Serbaguna 40-pin dari Microchip, kami telah menggunakan IC ini dalam siri tutorial PIC kami yang lengkap. Sekiranya anda baru, di sini anda mungkin ingin melihat tutorial PIC ini untuk mengetahui asas IC ini dan cara memuat naik program ke mikrokontroler. Oleh kerana kami telah merangkumi maklumat ini dalam tutorial kami, kami akan melewatkannya dalam penjelasan di bawah.
Sekiranya anda berminat dengan robotik maka anda semestinya sangat akrab dengan nama " Line Follower Robot ". Robot ini mampu mengikuti garis, hanya dengan menggunakan sepasang sensor dan motor. Robot ini memberi anda ruang untuk pengembangan yang tidak terbatas dan robot seperti Kiva (robot gudang Amazon) adalah contoh untuk ini. Anda juga boleh memeriksa Robot Pengikut Line kami yang lain:
- Line Follower Robot menggunakan 8051 Microcontroller
- Line Follower Robot menggunakan Arduino
- Line Follower Robot menggunakan Raspberry Pi
Bahan yang Diperlukan:
- PIC16F877A
- Sensor IR (2Nos)
- Motor Gear DC (2Nos)
- Pemandu Motor L293D
- Chaises (Anda juga boleh membina kadbod anda sendiri)
- Power bank (Mana-mana sumber kuasa yang ada)
Konsep Pengikut Talian
Line Follower Robot dapat mengesan garis dengan bantuan sensor IR. Sensor ini mempunyai pemancar IR dan penerima IR. Pemancar IR (LED LED) menghantar cahaya dan Penerima (Photodiode) menunggu cahaya yang dipancarkan kembali. Lampu IR akan kembali hanya jika dipantulkan oleh permukaan. Manakala, semua permukaan tidak memantulkan cahaya IR, hanya permukaan warna putih yang dapat memantulkannya sepenuhnya dan permukaan warna hitam akan sepenuhnya memerhatikannya seperti yang ditunjukkan pada gambar di bawah. Ketahui lebih lanjut mengenai modul sensor IR di sini.
Sekarang kita akan menggunakan dua sensor IR untuk memeriksa apakah robot berada di landasan dengan garisan dan dua motor untuk membetulkan robot jika bergerak keluar dari landasan. Motor ini memerlukan arus yang tinggi dan harus dua arah; oleh itu kami menggunakan modul pemandu motor seperti L293D. Kami juga memerlukan Pengawal Mikro seperti PIC untuk mengarahkan motor berdasarkan nilai dari sensor IR. Gambarajah blok ringkas yang sama ditunjukkan di bawah.
Kedua-dua sensor IR ini akan diletakkan satu di kedua-dua sisi talian. Sekiranya tidak ada sensor yang mengesan garis hitam, mereka mikrokontroler PIC mengarahkan motor bergerak ke hadapan seperti yang ditunjukkan di bawah
Sekiranya sensor kiri datang pada garis hitam maka pengawal mikro mengarahkan robot untuk membelok ke kiri dengan memutar roda kanan sahaja.
Sekiranya sensor kanan datang pada garis hitam maka pengawal mikro mengarahkan robot untuk membelok ke kanan dengan memutar roda kiri sahaja.
Sekiranya kedua-dua sensor berada pada garis hitam, robot akan berhenti.
Dengan cara ini Robot akan dapat mengikuti garis tanpa keluar dari trek. Sekarang mari kita lihat bagaimana bentuk litar dan Kod.
Rajah dan Penjelasan Litar:
Gambarajah litar lengkap untuk Robot Pengikut Garis berasaskan PIC ini ditunjukkan di bawah
Litar ini menggunakan dua sensor IR dan sepasang motor gear DC bersama dengan modul pemandu motor seperti yang ditunjukkan di atas. Modul Pemacu Motor yang digunakan dalam projek ini adalah L293D, kami memerlukan pemandu motor kerana pin output Mikrokontroler PIC tidak dapat menghasilkan arus yang cukup untuk motor memandu. Modul ini akan digerakkan secara langsung dari sumber kuasa (5V) seperti yang ditunjukkan dalam litar. Modul ini mempunyai empat pin (dua untuk setiap motor) yang disambungkan ke PIC untuk mengawal arah motor. Kami juga mempunyai dua sensor IR yang bertindak sebagai input ke mikrokontroler PIC. Sensor ini akan naik tinggi (1) jika berada di atas permukaan putih dan akan turun rendah (0) ketika berada di atas permukaan hitam. Sambungan pin lengkap digambarkan dalam jadual di bawah.
S.No |
Bersambung dari |
Berhubung dengan |
1 |
Sensor IR Pin keluar |
RD2 (pin 21) |
2 |
Sensor IR Pin keluar keluar |
RD3 (pin 22) |
4 |
Motor 1 Saluran A pin |
RC4 (pin 23) |
5 |
Pin Motor 1 Saluran B |
RC5 (pin 25) |
6 |
Motor 2 Saluran A pin |
RC6 (pin 26) |
7 |
Pin Motor 2 Saluran B |
RC7 (pin 27) |
Dalam perkakasan sebenar saya telah menggunakan power bank yang akan memberikan output + 5V secara langsung melalui port USB-nya; oleh itu saya telah melewati pengatur voltan 7805 dan menghidupkan PIC, sensor dan Motor menggunakan yang sama. Anda boleh menggunakan bateri 12V yang sama dengan pengatur seperti yang ditunjukkan dalam litar.
Pengaturcaraan MIC Microcontroller:
Setelah anda siap dengan Perkakasan anda, inilah masanya untuk memulakan pengaturcaraan. Program lengkap dari Projek Robot Pengikut Line PIC ini diberikan di akhir halaman ini. Bagaimanapun potongan penting dijelaskan di bawah.
Permulaan pin I / O dengan baris berikut. 2 pin sensor IR bertindak sebagai input dan empat pin motor berfungsi sebagai pin output.
TRISD2 = 1; TRISD3 = 1; // Mandi pin sensor IR dinyatakan sebagai input TRISC4 = 0; TRISC5 = 0; // Motor 1 pin dinyatakan sebagai output TRISC6 = 0; TRISC7 = 0; // Motor 2 pin dinyatakan sebagai output
Sekarang, kita harus membaca status kedua-dua sensor IR dan mengawal motor dengan sewajarnya. Contohnya jika kedua-dua sensor itu tinggi (tidak berada di bawah garis hitam) maka kita menggerakkan kedua motor ke hadapan seperti yang ditunjukkan dalam program di bawah.
if (RD2 == 1 && RD3 == 1) // Kedua-dua sensor tidak melebihi garisan balck {RC4 = 0; RC5 = 1; // Motor 1 maju RC6 = 1; RC7 = 0; // Motor 2 ke hadapan}
Sekiranya sensor kiri melintasi garis hitam maka kita membuat putaran kanan dengan menahan Motor 1 pegun dan memutar Motor 2 ke arah hadapan. Jenis putaran ini disebut sebagai pembalikan pembalikan.
lain jika (RD2 == 0 && RD3 == 1) // Sensor kiri melebihi garis hitam {RC4 = 1; RC5 = 1; // Motor 1 hentian RC6 = 1; RC7 = 0; // Motor 2 ke hadapan}
Begitu juga, jika sensor kanan melintasi garis hitam maka bot dibuat untuk membelok ke kiri dengan menahan motor kedua pegun dan memutar motor pertama sahaja ke arah hadapan seperti yang ditunjukkan di bawah.
lain jika (RD2 == 1 && RD3 == 0) // Sensor kanan melebihi garis hitam {RC4 = 0; RC5 = 1; // Motor 1 maju RC6 = 1; RC7 = 1; // Perhentian motor 2}
Akhirnya jika kedua-dua sensor berada di bawah garis hitam maka sudah tiba masanya untuk menghentikan bot. Ini dapat dilakukan dengan membuat semua pin kedua-dua motor menjadi tinggi. Kod untuk melakukan perkara yang sama ditunjukkan di bawah
lain // Kedua-dua Sensor di atas garis hitam {RC4 = 1; RC5 = 1; // Motor 1 hentian RC6 = 1; RC7 = 1; // Perhentian motor 2}
Iaitu program itu sudah siap dan boleh dimuat naik ke PIC menggunakan programmer seperti PicKit.
Pengikut Talian PIC Beraksi:
Setelah perkakasan dan kod siap, inilah masanya untuk beberapa tindakan. Seperti yang dinyatakan sebelumnya, saya telah menggunakan Power bank untuk memberi kuasa kepada bot, jadi yang perlu saya lakukan hanyalah menyambungkan power bank ke bot yang mempunyai perkakasan dan kod yang telah dimuat naik.
PIC Perf board dibuat untuk siri tutorial PIC kami, di mana kami belajar bagaimana menggunakan mikrokontroler PIC. Anda mungkin ingin kembali ke tutorial PIC Microcontroller menggunakan MPLABX dan XC8 jika anda tidak tahu cara membakar program menggunakan Pickit 3, kerana saya akan melangkau semua maklumat asas tersebut.
Sekarang, lancarkan bot di atas garis hitam dan anda harus menontonnya mengikut garis.
Anda mungkin menghadapi beberapa kesukaran pada awalnya sekiranya membaca lebih lanjut. Sekiranya roda berpusing berlawanan, ganti polaritas motor yang roda berpusing ke arah yang berlawanan Sekiranya bot menyimpang dari garis, tukar sensor IR dan semuanya mesti baik.
Kerja bot yang lengkap boleh didapati di video yang diberikan di bawah. Harap anda menyukai projek ini dan menikmati pembinaan yang serupa. Sekiranya anda menghadapi masalah untuk mendapatkannya, anda boleh menghantarnya di bahagian komen di bawah untuk menyelesaikannya atau menggunakan forum forum kami untuk membincangkan kandungan teknikal.