Membuat Robot Penghindar Rintangan Raspberry Pi – Panduan Pemula
Jika Anda baru dengan Raspberry Pi dan ingin proyek praktik yang menggabungkan perangkat lunak dan hardware, panduan ini memandu Anda melalui pembuatan robot yang dikontrol Python yang mendeteksi dan menghindari rintangan menggunakan sensor inframerah.
Robot penghindar rintangan populer untuk belajar robotika dan cukup sederhana untuk dirangkaikan. Dengan mengikuti tutorial ini, Anda akan menambahkan pengecualian objek yang andal ke robot Anda atau sekadar menjelajahi Python dan ekosistem GPIO Raspberry Pi.
Yang Anda butuhkan
- Raspberry Pi B, B+, 2, 3 atau 4 plus periferal dasar (kartu SD, keyboard, mouse, sumber daya).
- Modul sensor jarak inframerah (misalnya, sensor IR 4‑saluran populer).
- Motor DC bergigi dengan torsi yang sesuai untuk chassis Anda.
- Papan driver motor L293D.
- Chassis dan roda robot.
- Roda pendukung untuk stabilitas.
- Papan rotasi dan lem double‑sided.
- Kawat jumper male‑to‑male / female‑to‑male.
- Baterai 9 V dan konektor yang sesuai.
- Tombol tekan dan resistor 220 Ω (untuk kontrol nyala‑mati).
Cara Kerja
Fungsi inti robot bergantung pada dua sensor inframerah yang mendeteksi objek dalam rentang 5–6 cm. Ketika objek ada, output pin sensor berubah menjadi LOW (0 V). Saat tidak ada objek terdeteksi, tetap HIGH (5 V). Raspberry Pi membaca sinyal digital ini melalui pin GPIO, dan skrip Python yang terlampir mengarahkan motor sesuai kebutuhan.
Modul inframerah terdiri dari transmiter LED inframerah dan penerima photodioda. Objek memantulkan sebagian cahaya inframerah yang dipancarkan kembali ke penerima, menyebabkan sinyal LOW yang menandakan kedekatan. Sinyal ini dirute ke input GPIO pada Pi.
Saat robot dimulai—didesakkan dengan menekan tombol tekan—Pi mengemudi motor DC maju melalui driver L293D. Jika sensor inframerah mendeteksi rintangan, skrip pertama kali memutar mundur motor sejenak, lalu melakukan belokan untuk menghindari rintangan.
Langkah 1: Rangkaikan Sensor Inframerah
Sediakan daya sensor dengan 5 V dan GND dari Raspberry Pi, dan sambungkan pin output ke pin GPIO 3 dan 16 (menggunakan diagram penomoran pin GPIO resmi). Papan menggunakan mode GPIO.BOARD yang menomori pin seperti yang muncul pada header.
Simpan skrip berikut sebagai irtest.py:
import RPi.GPIO as GPIO import time GPIO.setwarnings(False) GPIO.setmode(GPIO.BOARD) # Sensor kanan (GPIO 3) GPIO.setup(3, GPIO.IN) # Sensor kiri (GPIO 16) dengan pull‑up GPIO.setup(16, GPIO.IN, pull_up_down=GPIO.PUD_UP) while True: right = GPIO.input(3) left = GPIO.input(16) if right == 0: print "Obstacle detected on Right", right time.sleep(0.1) elif left == 0: print "Obstacle detected on Left", left time.sleep(0.1)
Jalankan dengan sudo python irtest.py. Ketika Anda menutup sensor dengan tangan, konsol akan mencetak pesan yang menunjukkan sisi mana yang mendeteksi rintangan.
Langkah 2: Sambungkan Motor melalui Driver L293D
Sediakan daya L293D dengan baterai 9 V (positif ke pin +, negatif ke pin –). Sambungkan ground papan ke GND Raspberry Pi. Rangkaikan output motor ke pin output driver dan pin kontrol ke GPIO tambahan (konsultasikan datasheet L293D untuk definisi pin). Dengan motor yang sudah dirangkaikan, skrip dapat memerintahkan gerakan maju, mundur, dan belokan.
Setelah hardware dirakit, nyalakan Raspberry Pi, tekan tombol tekan, dan lihat robot menavigasi sambil menghindari rintangan.
Untuk sumber belajar tambahan, unduh eBook gratis kami tentang Raspberry Pi dan Arduino untuk memperdalam keterampilan Anda.