Robot RC Bluetooth 4 Roda
Robot RC Bluetooth 4 Roda
Robot RC Bluetooth 4 Roda
1. Alat
a) Solder
b) Tang Potong
c) Gunting
d) Cutter
e) Obeng +/-
2. Bahan
a) Timah Solder
b) Pasta Solder
c) 3M Doubletape
d) Sekrup
e) Papan Rangka Robot Beroda
f) Arduino Uno
g) Motor Driver L293D
h) Bluetooth Modul (HC-05)
i) Kabel Engkel
j) Motor Penggerak
k) Roda
l) Box Baterai
m) Saklar
n) Baterai Li-Ion 18650 3,7 V-2500 mAh (minimal mAh yang bisa)
3. Prosedur Merangkai
1) Gabungkan Arduino Uno dengan modul L293D seperti gambar berikut:
2) Pasang Roda pada masing-masing posisi di rangka robot
3) Hubungkan motor dan bluetooth pada terminal L293 D seperti pada rangkaian
berikut:
4) Disconnect terlebih dahulu Bluetooth HC-05 dengan melepas kabel yang
terhubung
5) Pasang USB Module pemrograman Arduino Uno pada Komputer dan
sambungkan ke Arduino Uno
6) Masuk Aplikasi Arduino IDE 2.0.3 atau versi lebih barunya
7) Ikuti petunjuk dalam pengoperasian aplikasi ini dari modul-modul yang
disediakan aplikasi ataupun bahan referensi lain dari internet
8) Masukkan Program di bawah ini:
/*
Code Name: Arduino Bluetooth Car with Front and Back Light Control
Code URI: https://circuitbest.com/category/arduino-projects/
Before uploading the code you have to install the "Adafruit Motor Shield"
library
Open Arduino IDE >> Go to sketch >> Include Libray >> Manage Librays... >>
Search "Adafruit Motor Shield" >> Install the Library
AFMotor Library: https://learn.adafruit.com/adafruit-motor-shield/library-
install
Author: Make DIY
Author URI: https://circuitbest.com/author/admin/
Description: This program is used to control a robot using an app that
communicates with Arduino through an HC-05 Bluetooth Module.
App URI: https://bit.ly/3mn6LuZ
Version: 1.0
License: Remixing or Changing this Thing is allowed. Commercial use is not
allowed.
*/
#include <AFMotor.h>
int val;
int Speeed = 255;
void setup()
{
Serial.begin(9600); //Set the baud rate to your Bluetooth module.
}
void loop(){
if(Serial.available() > 0){
val = Serial.read();
if (val == 'F'){
forward();
}
if (val == 'B'){
back();
}
if (val == 'L'){
left();
}
if (val == 'R'){
right();
}
if (val == 'I'){
topright();
}
if (val == 'J'){
topleft();
}
if (val == 'K'){
bottomright();
}
if (val == 'M'){
bottomleft();
}
if (val == 'T'){
Stop();
}
}
}
void forward()
{
motor1.setSpeed(Speeed); //Define maximum velocity
motor1.run(FORWARD); //rotate the motor clockwise
motor2.setSpeed(Speeed); //Define maximum velocity
motor2.run(FORWARD); //rotate the motor clockwise
motor3.setSpeed(Speeed);//Define maximum velocity
motor3.run(FORWARD); //rotate the motor clockwise
motor4.setSpeed(Speeed);//Define maximum velocity
motor4.run(FORWARD); //rotate the motor clockwise
}
void back()
{
motor1.setSpeed(Speeed); //Define maximum velocity
motor1.run(BACKWARD); //rotate the motor anti-clockwise
motor2.setSpeed(Speeed); //Define maximum velocity
motor2.run(BACKWARD); //rotate the motor anti-clockwise
motor3.setSpeed(Speeed); //Define maximum velocity
motor3.run(BACKWARD); //rotate the motor anti-clockwise
motor4.setSpeed(Speeed); //Define maximum velocity
motor4.run(BACKWARD); //rotate the motor anti-clockwise
}
void left()
{
motor1.setSpeed(Speeed); //Define maximum velocity
motor1.run(BACKWARD); //rotate the motor anti-clockwise
motor2.setSpeed(Speeed); //Define maximum velocity
motor2.run(BACKWARD); //rotate the motor anti-clockwise
motor3.setSpeed(Speeed); //Define maximum velocity
motor3.run(FORWARD); //rotate the motor clockwise
motor4.setSpeed(Speeed); //Define maximum velocity
motor4.run(FORWARD); //rotate the motor clockwise
}
void right()
{
motor1.setSpeed(Speeed); //Define maximum velocity
motor1.run(FORWARD); //rotate the motor clockwise
motor2.setSpeed(Speeed); //Define maximum velocity
motor2.run(FORWARD); //rotate the motor clockwise
motor3.setSpeed(Speeed); //Define maximum velocity
motor3.run(BACKWARD); //rotate the motor anti-clockwise
motor4.setSpeed(Speeed); //Define maximum velocity
motor4.run(BACKWARD); //rotate the motor anti-clockwise
}
void topleft(){
motor1.setSpeed(Speeed); //Define maximum velocity
motor1.run(FORWARD); //rotate the motor clockwise
motor2.setSpeed(Speeed); //Define maximum velocity
motor2.run(FORWARD); //rotate the motor clockwise
motor3.setSpeed(Speeed/3.1);//Define maximum velocity
motor3.run(FORWARD); //rotate the motor clockwise
motor4.setSpeed(Speeed/3.1);//Define maximum velocity
motor4.run(FORWARD); //rotate the motor clockwise
}
void topright()
{
motor1.setSpeed(Speeed/3.1); //Define maximum velocity
motor1.run(FORWARD); //rotate the motor clockwise
motor2.setSpeed(Speeed/3.1); //Define maximum velocity
motor2.run(FORWARD); //rotate the motor clockwise
motor3.setSpeed(Speeed);//Define maximum velocity
motor3.run(FORWARD); //rotate the motor clockwise
motor4.setSpeed(Speeed);//Define maximum velocity
motor4.run(FORWARD); //rotate the motor clockwise
}
void bottomleft()
{
motor1.setSpeed(Speeed); //Define maximum velocity
motor1.run(BACKWARD); //rotate the motor anti-clockwise
motor2.setSpeed(Speeed); //Define maximum velocity
motor2.run(BACKWARD); //rotate the motor anti-clockwise
motor3.setSpeed(Speeed/3.1); //Define maximum velocity
motor3.run(BACKWARD); //rotate the motor anti-clockwise
motor4.setSpeed(Speeed/3.1); //Define maximum velocity
motor4.run(BACKWARD); //rotate the motor anti-clockwise
}
void bottomright()
{
motor1.setSpeed(Speeed/3.1); //Define maximum velocity
motor1.run(BACKWARD); //rotate the motor anti-clockwise
motor2.setSpeed(Speeed/3.1); //Define maximum velocity
motor2.run(BACKWARD); //rotate the motor anti-clockwise
motor3.setSpeed(Speeed); //Define maximum velocity
motor3.run(BACKWARD); //rotate the motor anti-clockwise
motor4.setSpeed(Speeed); //Define maximum velocity
motor4.run(BACKWARD); //rotate the motor anti-clockwise
}
void Stop()
{
motor1.setSpeed(0); //Define minimum velocity
motor1.run(RELEASE); //stop the motor when release the button
motor2.setSpeed(0); //Define minimum velocity
motor2.run(RELEASE); //rotate the motor clockwise
motor3.setSpeed(0); //Define minimum velocity
motor3.run(RELEASE); //stop the motor when release the button
motor4.setSpeed(0); //Define minimum velocity
motor4.run(RELEASE); //stop the motor when release the button
}
9) Copy kalimat Adafruit Motor Shield yang tertera pada paragraf pertama
isian program tadi.
10) Klik menu Sketch, pilih Include Librabry lalu pilih Manage Library,
Kemudian Paste Kalimat Adafruit Motor Shield pada kotak dialog sisi
pojok kanan atas.
11) Kemudian pilih dan instal versi pertama (Adafruit Motor Shield Library)
Version 1.0.1, lalu klik instal
12) Setelah selesai instal program, pilih menu Tools – Board “Arduino Uno” –
Arduino AVR Board – Pilih Arduino Uno
13) Pilih pilihan Port “COM3” (Arduino Uno) pada menu Tools tadi, kemudian
pilih COM3 (Arduino Uno)
14) Lalu klik tanda √ Centang pada pojok Kiri Atas (melakukan klik tanda
centang artinya kita memverifikasi program kita pada arduino uno kita),
tunggu sampai verifikasi complete 100%
15) Klik tanda panah → yang ada di sebelah tanda centang (Melakukan klik tanda
panah ini artinya kita mengupload program yang telah kita ketik tadi pada
hardware Arduino Uno)
16) Program telah selesai kita inputkan, lakukan uji coba pergerakan motor
terlebih dahulu
17) Install terlebih dahulu aplikasi Remote RC Robot, Bluetooth RC Car atau
sejenisnya pada HP Androind kita
18) Pasang Baterai tipe 18650 kita pada box baterai sebanyak maksimal 3 buah
19) Nyalakan Saklar (Mode On)
20) Masuk aplikasi Bluetooth RC Car di HP Android kita
21) Klik simbol roda gigi (gear) lalu pilih Connect to Car, kemudian pilih modul
“HC-05”
22) Jika aplikasi meminta password, masukkan angka 0000 atau 1234
23) Jika Aplikasi dan robot sudah terhubung maka kedipan lingkaran merah pada
aplikasi android bluetooth rc car kita akan berubah menjadi warna hijau
24) Setelah hijau maka kita bisa mengontrol penuh pergerakan RC Robot kita.
25) Jika terjadi kesalahan putaran roda maka lakukan pengecekan dan pemasangan
kabel motor penggerak yang terpasang pada driver (L293D)
26) Selesai.