Robot itu keren. Memiliki robot yang dapat bergerak sambil mendengarkan perintah suara Anda lebih keren lagi. Membuat robot kendali suara atau ucapan dengan Arduino semakin keren. Karena Arduino murah dan mudah diubah.
Mari kita mulai membuatnya, Anda juga dapat menonton tutorial video.
Langkah 1: Komponen yang Diperlukan
Robot ini didasarkan pada PCB. Saya merancang PCB ini untuk digunakan dalam berbagai robot. Berikut komponen lainnya yang saya gunakan:
Elektronik:
Arduino Nano - 1x
L298n Motor Driver module - 1x
HC-05 Bluetooth module - 1x
Motor DC dan roda yang kompatibel - 2x
PCB Robot Multifungsi - 1x (link)
Beberapa header pin jantan dan betina
Untuk Membuat Badan:
Lemaran PVC
Pistol litur panas
Perangkat Lunak:
Arduino IDE
Aplikasi yang saya buat
Cukup segitu, sekarang kita siap melanjutkan.
Langkah 2: Prinsip: Bagaimana Cara Kerjanya?
Selalu baik untuk memiliki pemahaman yang jelas sebelum mulai mengubah sesuatu. Jadi, Arduino adalah komputer mini atau mikrokontroler. Ini tidak memiliki daya cukup untuk pengenalan ucapan (saat ini). Namun, untungnya papan PCB saya memiliki port untuk modul Bluetooth. Artinya, saya dapat menghubungkan Arduino secara nirkabel ke perangkat lain. Saya akan membuat aplikasi Android yang melakukan operasi "Speech to Text" menggunakan Google API (memerlukan internet) dan setelah menerima teks, akan memerintahkan Arduino melalui Bluetooth.
Jadi, jika saya katakan 'Forward' robot akan menerima 'F' dan bergerak ke depan. Itu konsepnya. Sekarang mari kita buat.
Langkah 3: Buat Badan
Saya membuat chassis robot ini dari lemaran PVC 13cm/13.5cm. Mudah dipotong dengan blad/pisau dan bekerja bagus dengan lem. Seperti yang terlihat dalam video, saya memotong bagian untuk memasang dua motor dan roda di dalam area papan, lalu melekatkannya dengan lem. Saat Anda membuatnya sendiri, Anda tidak perlu membuatnya persis seperti ini. Bot Anda, pilihan Anda.
Langkah 4: Rangkai Sirkuit atau Gunakan PCB?
Di sini sepenuhnya pilihan Anda. Namun, membuat sirkuit seperti ini membutuhkan banyak kabel, dan jika menggunakan breadboard, satu penyaluran kabel yang salah dapat mengganggu seluruh proyek. Itulah mengapa saya suka menggunakan PCB.
Saya merancang PCB ini menggunakan EasyEDA dan memesan dari PCBWay.com. PCBWay memberikan kualitas dengan harga yang lebih murah. Anda dapat mendapatkan 10 PCB berlapis dengan hanya 5$. Mereka juga mendanai proyek mahasiswa. Saya pergi ke bagian Quick Order, mengunggah PCB, sistem secara otomatis mendeteksi parameter papan, dan saya hanya memilih warna. Hitam adalah warna favorit saya dan hasilnya megah serta keren. Ini lebih baik karena mereka tidak mengambil uang hingga tim insinyur memeriksa PCB Anda.
Dapatkan papan PCB di sini.
Namun, jika Anda tidak dapat memesan atau menggunakan PCB ini, Anda dapat melakukannya pada breadboard atau vero board. Saya telah mengunggah rangkaian Fritzing untuk Anda. Unduh dari bawah atau dapatkan dari sini.
speech-controlled-robot-schematic.fzz
Langkah 5: Hubungkan Elektronik
Koneksinya sederhana. Hubungkan semua hal seperti yang ditunjukkan dalam diagram rangkaian. Saya akan mulai dari menghubungkan motor ke motor driver:
Motor ke motor driver:
Kabel Motor1 ke satu ujung driver,
Motor2 ke ujung lainnya.
Untuk mengontrol motor:
Pin Motor1 pada L298n motor driver terhubung ke pin Arduino 2 dan 3 (digital).
Motor2 terhubung pada 4 dan 5
Modul Bluetooth:
Tx ke Arduino Rx
Rx ke TX
VCC ke 5V/VCC
Gnd ke GND (Ground)
Baterai:
Saya menggunakan baterai 7.4V untuk motor, yang terhubung ke input motor driver dan Arduino VIN serta Pin Ground. Koneksi ground bersama diperlukan. Kemudian saya menghubungkan baterai ke semua hal yang menyala. Artinya, saya tidak melakukan kesalahan.
Langkah 6: Memprogram Arduino
Ini adalah program sederhana. Program memeriksa karakter dan jika diterima, ia akan pergi ke kiri, kanan, dll. Daftarnya adalah:
'F' - Maju
'B' - Mundur
'L' - Kiri
'R' - Kanan
Modul Bluetooth terhubung pada port serial, jadi Arduino berkomunikasi melalui serial pada 9600 bps.
Dalam bagian setup saya mendefinisikan pin dan baud rate:
void setup() { //initlize the mode of the pins pinMode(lm1,OUTPUT); pinMode(lm2,OUTPUT); pinMode(rm1,OUTPUT); pinMode(rm2,OUTPUT); //set the serial communication rate Serial.begin(9600); }
Dalam mainloop itu memeriksa data yang diterima melalui serial:
//check whether arduino is reciving signal or not while(Serial.available() == 0); val = Serial.read() ; //reads the signal Serial.print(val);
Dan kemudian kode utama, unduh dari sini. Saya menempelkan seluruh kode di bawah:
/**** Arduino Speech/voice Controlled robot *** * by Ashraf Minhaj * mail me at ashraf_minhaj@yahoo.com * tutorial- ashrafminhajfb.blogspot.com */ //Declare the arduino pins int lm1 = 4; //declare 1st motor pins int lm2 = 5; int rm1 = 2; //right motor pins int rm2 = 3; char val; void setup() { //initlize the mode of the pins pinMode(lm1,OUTPUT); pinMode(lm2,OUTPUT); pinMode(rm1,OUTPUT); pinMode(rm2,OUTPUT); //set the serial communication rate Serial.begin(9600); } void loop() { //check whether arduino is reciving signal or not while(Serial.available() == 0); val = Serial.read() ; //reads the signal //Serial.print(val); /*********For Forward motion*********/ if (val == 'F') { //Serial.println("FORWARD"); digitalWrite(lm1,HIGH); digitalWrite(rm1,HIGH); digitalWrite(lm2,LOW); digitalWrite(rm2,LOW); } /*********For Backward Motion*********/ else if(val == 'B') { digitalWrite(lm2,HIGH); digitalWrite(rm2,HIGH); digitalWrite(lm1,LOW); digitalWrite(rm1,LOW); } /*********Right*********/ else if(val == 'R') { digitalWrite(lm1,HIGH); digitalWrite(rm2,HIGH); digitalWrite(lm2,LOW); digitalWrite(rm1,LOW); } /*********Left*********/ else if(val == 'L') { digitalWrite(lm2,HIGH); digitalWrite(rm1,HIGH); digitalWrite(lm1,LOW); digitalWrite(rm2,LOW); } /*********STOP*********/ else { digitalWrite(lm1,LOW); digitalWrite(rm1,LOW); digitalWrite(lm2,LOW); digitalWrite(rm2,LOW); } delay(10); }
Unggah kode dan kemudian buat aplikasi.
Langkah 7: Aplikasi untuk SPEECH to TEXT
Saya membuat aplikasi menggunakan MIT App Inventor. Anda dapat mengedit dan menyesuaikan aplikasi ini sesuai kebutuhan Anda. Dapatkan berkas aia dari sini.
Aplikasi ini menggunakan konektivitas Bluetooth untuk mengontrol robot. Untuk itu saya perlu memasangkan modul Bluetooth HC05 dengan ponsel saya. Sandi default adalah 1234 atau 0000.
Aplikasi ini menggunakan Google Speech to Text API untuk mengubah apa yang saya katakan menjadi bentuk teks. Kemudian itu mengubah kalimat menjadi huruf kecil, lebih mudah untuk diproses dengan cara itu. Dan mencocokkan menggunakan pernyataan if else. Jika pengguna mengatakan 'forward' kirim Arduono huruf 'F' dan itu akan bergerak ke depan. Cukup segitu.
Bangun dan simpan sebagai berkas APK, atau gunakan milik saya instal di ponsel Anda.
speech-controlled-robot-schematic.fzz
Langkah 8: Nyalakan Bot, Jalankan Aplikasi dan Pergi!
Sekarang cukup colokkan baterai, dan gunakan aplikasi Android untuk bermain-main dengan robot brand new Anda!
Terima kasih telah membaca. Lihat proyek terbaru saya -