[Tutorial] Membuat Remote Control (RC) dengan Kendali Smartphone Android
Pada tutor ini kita akan membuat sebuah software dan hardware dengan memanfaatkan mikrokontroler. Alat yang akan dibuat yaitu sebuah mobil robot yang dapat dikontrol dengan antarmuka joystick melalui smartphone android. Langsung saja mulai pembuatannya, dimulai dari perancangan hardware kemudian softwarenya....
Untuk Hardware, Bahan yang diperlukan seperti :
- Mikrokontroler (Arduino Uno R3)
- Bluetooth (HC-05)
- Motor DC 12Volt (2 buah)
- Roda freewell (1 Buah)
- Driver Motor DC (L298N)
- Kabel Jumper (sesuai kebutuhan)
- Casing badan mobil
- Power Supplay 12 Volt
Pastikan bahan - bahan diatas sudah lengkap, kemudian rakit bodinya seperti pemasangan roda - roda dan perangkat elekroniknya agar terlihat rapi serta tidak terlihat ribet dengan kabel2. Nah, disini...akan diperlihatkan skematik pemasangan jalur wire antara perangkat elekroniknya seperti gambar 1 berikut :
Gambar 1 : Rangkaian Skematik Mobile Remote dengan Smartphone Android
Oke, perangkat keras sudah dirakit berikutnya pembuatan coding untuk bagian mikrokontroler dan antarmuka kendalinya. Dimulai dari pembuatan coding mikrokontroler dengan bantuan editor Arduino Ide menggunakan library meetAndroid. Untuk penggunaan library-nya sudah dijelaskan pada postingan sebelumnya jadi tidak akan dijelaskan kembali. Kita langsung saja ketik coding untuk mikrokontrolernya seperti ini :
//masukan library MeetAndroid #include <MeetAndroid.h> //deklarasikan nama librarynya MeetAndroid meetAndroid; //pin untuk motor A int dir1PinA=4; int dir2PinA=5; int speedPinA=9; //pin untuk motor B int dir1PinB=6; int dir2PinB=7; int speedPinB=10; int data; //berikan nilai awal kecepatan untuk motor int dataPWMKanan = 50; int dataPWMKiri = 50; void setup(){ //inisialiasai pin sebagai OUTPUT pinMode(dir1PinA, OUTPUT); pinMode(dir2PinA, OUTPUT); pinMode(dir1PinB, OUTPUT); pinMode(dir2PinB, OUTPUT); pinMode(speedPinA, OUTPUT); pinMode(speedPinB, OUTPUT); Serial.begin(9600); meetAndroid.registerFunction(inComing,'A'); } void loop() { meetAndroid.receive(); if(data > 6) { dataPWMKanan = data; dataPWMKiri = data + 10; if(dataPWMKiri >= 250) { dataPWMKiri = 250; } } analogWrite(speedPinA, dataPWMKiri); analogWrite(speedPinB, dataPWMKanan); switch(data) { //maju case 1: //kiri digitalWrite(dir1PinA, HIGH); digitalWrite(dir2PinA, LOW); //kanan digitalWrite(dir1PinB, LOW); digitalWrite(dir2PinB, HIGH); break; //mundur case 2: //kiri digitalWrite(dir1PinA, LOW); digitalWrite(dir2PinA, HIGH); //kanan digitalWrite(dir1PinB, HIGH); digitalWrite(dir2PinB, LOW); break; //kiri case 3: //kiri digitalWrite(dir1PinA, LOW); digitalWrite(dir2PinA, HIGH); //kanan digitalWrite(dir1PinB, LOW); digitalWrite(dir2PinB, HIGH); break; //kanan case 4: //kiri digitalWrite(dir1PinA, HIGH); digitalWrite(dir2PinA, LOW); //kanan digitalWrite(dir1PinB, HIGH); digitalWrite(dir2PinB, LOW); break; //stop case 5: //kiri digitalWrite(dir1PinA, LOW); digitalWrite(dir2PinA, LOW); //kanan digitalWrite(dir1PinB, LOW); digitalWrite(dir2PinB, LOW); break; } } //fungsi untuk menerima inputan dari interface kendali void inComing(byte flag, byte numOfValues) { data=meetAndroid.getInt(); }
Berikutnya desain antarmuka kendali dengan smartphone android seperti yang diperlihatkan pada gambar 2 berikut ini :
Untuk coding antarmuka yang lengkap silahkan di download. Ingat!!! Disini masih menggunakan editor Ecplise untuk membuat aplikasi antarmuka melalui smartphone berbasis Android. Sekian tutor kali ini semoga bermanfaat dan Terima kasih.. bye..
[UPDATE] Versi Terbaru Robot Remote Kontrol Android WiFi Check Disini
# | Download File |
---|---|
1 | ![]() |
Mari Gabung
Halo
, Ada yang ingin disampaikan? Jangan sungkan untuk gabung diskusi ini. Silahkan Login dulu atau Daftar baru.