Mengendalikan Robot Mobil Menggunakan Perintah Suara dengan Arduino dan Aplikasi Android
Ringkasan Proyek
Proyek ini mengembangkan robot mobil yang dapat dikendalikan menggunakan lima perintah suara melalui aplikasi Android, yaitu Forward, Backward, Left, Right, dan Stop. Aplikasi mengenali ucapan pengguna kemudian mengirimkan perintah secara nirkabel kepada Arduino UNO melalui sistem komunikasi yang dijelaskan menggunakan Bluetooth dan modul XBee. Arduino memproses perintah tersebut dan mengendalikan motor DC melalui driver motor L298.
Bahan & Komponen
Daftar perangkat keras, modul, dan tools yang dibutuhkan untuk merakit proyek ini.
Daftar Komponen & Perangkat Keras
- 1x Arduino UNO (Mikrokontroler utama untuk menerima perintah suara yang telah dikonversi menjadi data dan mengendalikan pergerakan robot)
- 1x SparkFun XBee Explorer Regulated (Board pendukung untuk menghubungkan modul radio XBee dengan rangkaian elektronik dan menyediakan regulasi tegangan)
- 1x SparkFun XBee Shield (Shield untuk mengintegrasikan komunikasi XBee dengan Arduino UNO)
- 1x DC Motor (Generic) (Motor listrik DC sebagai penggerak robot; jumlah pada daftar komponen asli adalah satu unit)
- 1x Dual H-Bridge Motor Driver L298 (Driver motor untuk mengatur arah dan pengendalian motor DC)
- 1x Android Device (Smartphone Android untuk menjalankan aplikasi pengenalan suara dan mengirimkan perintah kepada robot)
- Modul radio XBee (Diperlukan sesuai narasi komunikasi proyek; modul radio tidak dicantumkan sebagai item terpisah dalam daftar Things Used)
- Jumper wires (Kabel penghubung antarmodul elektronik, Arduino, dan driver motor)
- Sumber daya DC (Catu daya untuk Arduino, modul komunikasi, driver motor, dan motor DC sesuai spesifikasi masing-masing perangkat)
- Chassis robot mobil (Kerangka mekanis untuk memasang Arduino, motor driver, motor, dan perangkat komunikasi; tidak dirinci dalam daftar komponen asli)
Software dan Aplikasi
- Arduino IDE (Software untuk menulis, mengompilasi, dan mengunggah program ke Arduino UNO)
- MIT App Inventor (Platform visual programming untuk membuat aplikasi Android dengan kemampuan pengenalan suara dan pengiriman perintah)
- Aplikasi Android pengendali suara (Antarmuka untuk mengenali ucapan pengguna dan menghasilkan lima perintah gerakan robot)
- Library komunikasi XBee yang sesuai (Pendukung komunikasi data antara Arduino dan modul radio XBee, sesuai konfigurasi modul yang digunakan)
Catatan kelengkapan komponen: Daftar asli Hackster secara eksplisit mencantumkan enam item perangkat keras dan dua software. Narasi menyebut komunikasi Bluetooth dan XBee, tetapi tidak menjelaskan nomor model modul radio XBee maupun jenis modul Bluetooth secara terpisah. Chassis, kabel, dan catu daya merupakan kebutuhan pendukung perakitan, bukan item yang dapat dipastikan jumlahnya dari daftar asli.
Langkah Pembuatan
Khusus MemberPanduan perakitan tahap demi tahap dan catatan proses pengerjaan.
Control your Robot with Voice Commands merupakan proyek Human-Computer Interface (HCI) yang dibuat oleh Mohamad Alhaddad dan dipublikasikan pada 24 Juni 2016. Tujuan proyek ini adalah memungkinkan pengguna mengendalikan robot mobil menggunakan perintah suara dari aplikasi Android. Sistem menggunakan Arduino UNO sebagai pengendali utama dan motor driver L298 untuk mengatur pergerakan motor.
Pembuat proyek mendefinisikan lima perintah dasar, yaitu Forward, Backward, Left, Right, dan Stop. Aplikasi Android mengenali ucapan pengguna dan mengirimkan perintah kepada robot melalui komunikasi nirkabel.

Langkah 1: Memahami Konsep Robot Kendali Suara
Robot ini menggunakan konsep voice control, yaitu sistem kendali yang memanfaatkan suara manusia sebagai masukan. Pengguna tidak perlu menekan tombol arah secara manual. Cukup mengucapkan perintah gerakan melalui aplikasi Android, lalu aplikasi mengenali ucapan tersebut dan menerjemahkannya menjadi perintah digital.
Arduino UNO menerima perintah yang dikirimkan oleh sistem komunikasi nirkabel. Selanjutnya, Arduino memproses perintah tersebut dan menentukan arah putaran motor melalui driver motor L298.
Lima perintah utama yang digunakan adalah:
- Forward: Menggerakkan robot ke depan.
- Backward: Menggerakkan robot ke belakang.
- Left: Mengarahkan robot ke kiri.
- Right: Mengarahkan robot ke kanan.
- Stop: Menghentikan pergerakan robot.
Langkah 2: Menyiapkan Perangkat Keras
Siapkan Arduino UNO, SparkFun XBee Shield, SparkFun XBee Explorer Regulated, motor driver L298, motor DC, dan smartphone Android. Siapkan juga kerangka robot, kabel penghubung, serta sumber daya yang sesuai dengan spesifikasi perangkat.
Arduino UNO akan menjadi pusat kendali. Motor driver L298 berfungsi sebagai penghubung antara sinyal kendali Arduino dan motor DC. Perangkat XBee digunakan sebagai bagian dari sistem komunikasi nirkabel yang dijelaskan dalam dokumentasi proyek.
Pastikan tegangan motor tidak diambil langsung dari pin digital Arduino. Motor DC membutuhkan sumber daya dan kemampuan arus yang sesuai dengan karakteristik motor serta driver.
Langkah 3: Menyiapkan Arduino UNO dan XBee Shield
Pasang XBee Shield pada Arduino UNO sesuai posisi header shield. Shield ini digunakan untuk mempermudah integrasi komunikasi radio XBee dengan mikrokontroler.
Pasang modul XBee yang kompatibel pada konektor XBee Shield. Periksa posisi modul, kesesuaian tegangan, dan konfigurasi komunikasi serial sebelum mengaktifkan rangkaian.
SparkFun XBee Explorer Regulated merupakan perangkat pendukung untuk koneksi dan pengujian modul XBee. Pastikan modul radio yang digunakan sesuai dengan karakteristik board dan konfigurasi proyek.
Langkah 4: Merakit Sistem Penggerak Robot
Pasang motor DC dan driver motor L298 pada rangkaian robot. L298 merupakan Dual H-Bridge Motor Driver yang memungkinkan Arduino mengendalikan arah putaran motor.
Arduino mengirimkan sinyal logika ke input driver motor. Driver kemudian mengatur arah dan kondisi kerja motor berdasarkan sinyal tersebut. Untuk menggerakkan robot maju atau mundur, arah putaran motor harus dikendalikan sesuai konfigurasi mekanis roda.
Pada robot dengan dua motor penggerak, arah gerakan kiri dan kanan dapat dihasilkan melalui kombinasi arah putaran kedua motor. Namun, jumlah motor dan pemetaan koneksi masing-masing motor tidak dirinci secara lengkap pada halaman proyek asli.
Langkah 5: Membuat Antarmuka Aplikasi Android
Gunakan MIT App Inventor untuk membangun aplikasi Android. Platform ini memungkinkan pengembangan antarmuka dan logika aplikasi menggunakan blok pemrograman visual.
Aplikasi bertugas menerima ucapan pengguna melalui fasilitas pengenalan suara Android. Setelah ucapan dikenali, aplikasi mengubah hasilnya menjadi perintah yang dapat diproses Arduino.
Rancang antarmuka dengan lima fungsi pergerakan utama. Setiap fungsi harus memiliki hubungan yang jelas dengan perintah Forward, Backward, Left, Right, dan Stop.
Dokumentasi asli menyebut bahwa aplikasi Android mengirimkan hasil pengenalan suara melalui Bluetooth. Namun, halaman proyek tidak memberikan tangkapan layar antarmuka, detail komponen MIT App Inventor, maupun format pesan yang dikirimkan secara lengkap.
Langkah 6: Mengintegrasikan Sistem Komunikasi Nirkabel
Hubungkan sistem komunikasi nirkabel dengan Arduino UNO menggunakan perangkat XBee yang sesuai. Berdasarkan narasi pembuat proyek, Arduino menerima perintah melalui modul XBee dan menggunakan perintah tersebut untuk menentukan tindakan robot.
Proses komunikasi secara konseptual berlangsung sebagai berikut: pengguna berbicara melalui smartphone, aplikasi mengenali ucapan, aplikasi mengirimkan data perintah, perangkat penerima meneruskan data ke Arduino, kemudian Arduino mengendalikan motor.
Catatan penting: Dokumentasi asli menyebut Bluetooth untuk pengiriman perintah dari aplikasi dan XBee untuk komunikasi menuju Arduino. Namun, tidak dijelaskan bagaimana kedua teknologi tersebut dihubungkan, apakah terdapat bridge tambahan, ataupun jenis modul radio yang digunakan. Karena itu, konfigurasi komunikasi final perlu diverifikasi sebelum perakitan.
Langkah 7: Memprogram Arduino untuk Menerima Perintah
Program Arduino perlu membaca data yang diterima dari perangkat komunikasi, mengidentifikasi jenis perintah, kemudian memanggil fungsi pengendalian motor yang sesuai.
Logika program harus membedakan lima kondisi. Forward mengatur motor agar robot bergerak maju. Backward membalik arah putaran motor. Left dan Right mengatur kombinasi arah putaran motor agar robot berbelok. Stop menghentikan motor dengan menonaktifkan sinyal penggerak atau menggunakan mekanisme penghentian yang sesuai dengan driver.
Dokumentasi Hackster hanya menampilkan judul bagian Code berupa Codes tanpa isi program Arduino yang dapat diakses. Dengan demikian, implementasi fungsi dan format data secara spesifik tidak dapat dipastikan dari artikel asli.
Langkah 8: Menghubungkan Aplikasi dengan Robot
Aktifkan sistem komunikasi nirkabel dan jalankan aplikasi Android. Hubungkan smartphone dengan sistem komunikasi robot menggunakan konfigurasi yang didukung perangkat yang digunakan.
Setelah komunikasi berhasil, pengguna dapat mencoba mengucapkan perintah gerakan. Aplikasi akan mengenali ucapan dan meneruskannya ke sistem kendali robot.
Pastikan setiap perintah memiliki respons yang sesuai. Misalnya, perintah Forward harus menggerakkan robot ke depan, sedangkan Stop harus menghentikan gerakan robot.
Langkah 9: Menguji Lima Perintah Gerakan
Lakukan pengujian di permukaan datar dan area terbuka. Uji setiap perintah secara terpisah untuk mempermudah proses evaluasi.
- Pengujian Forward: Periksa apakah robot bergerak maju.
- Pengujian Backward: Periksa apakah arah gerakan robot berbalik.
- Pengujian Left: Periksa apakah robot berbelok ke kiri.
- Pengujian Right: Periksa apakah robot berbelok ke kanan.
- Pengujian Stop: Pastikan motor berhenti saat menerima perintah berhenti.
Jika robot bergerak ke arah yang salah, periksa konfigurasi motor, hubungan input driver, dan logika pengendalian arah putaran. Jika perintah tidak diterima, periksa koneksi komunikasi dan kesesuaian protokol data.
Langkah 10: Evaluasi dan Pengembangan
Proyek ini memperlihatkan bagaimana teknologi pengenalan suara dapat digunakan sebagai antarmuka kendali robot. Smartphone berfungsi sebagai pengenal perintah, komunikasi nirkabel mengirimkan data, Arduino UNO memproses perintah, dan L298 menggerakkan motor.
Pengembangan selanjutnya dapat mencakup penambahan sensor ultrasonik untuk menghindari rintangan, pengembangan antarmuka visual, penambahan perintah suara dalam Bahasa Indonesia, serta pengembangan sistem komunikasi nirkabel yang lebih sederhana dan terintegrasi.
Catatan dokumentasi: Artikel Hackster ini dikategorikan sebagai Beginner Showcase (no instructions). Oleh karena itu, langkah di atas merupakan uraian edukatif berdasarkan konsep dan komponen yang benar-benar disebutkan pembuat, bukan rekonstruksi urutan perakitan atau prosedur pemrograman lengkap yang tidak tersedia pada sumber aslinya.
Buka Seluruh Panduan, Skema & Source Code
Dapatkan akses penuh ke langkah perakitan detail, diagram sirkuit lengkap, dan source code siap pakai. Gratis selamanya!
