Disusun Oleh :
Ramadhan Prihantono
(I0718030)
Pada kali ini, Penulis akan memaparkan tentang Arduino Human Following Robot : Robot
Arduino Pengikut Manusia yang telah dibuat oleh DIY Builder, seperti terdapat pada video
berikut ini : https://www.youtube.com/watch?v=yAV5aZ0unag ,yaitu sebuat robot berbentuk
mobil dengan pemrograman arduino yang dapat bergerak mengikuti kemana arah manusia
pergi.
A. Sistem Mekatronik
o Sensor: Sensor IR yang digunakan untuk mengikuti manusia atau objek dan
sensor ultrasonik digunakan untuk memindahkan kembali robot.
o Prosesor : Bila Sensor IR mendeteksi objek manusia, maka servo dan motor
akan bergerak sesuai dengan kebutuhan yang diperintahkan melalui
mikrokontroler (Arduino). Bila Sensor Ultrasonik mendeteksi objek maka motor
akan bergerak sesuai jarak yang telah ditentukan melalui mikrokontroler.
B. Komponen
Sensor Infared
Sensor Ultrasonik
3
Hal kedua yang perlu dicermati adalah siklus pembacaan. Catatan dalam
datasheet, 60 ms. Jadi, perlu jeda 60 ms sebelum melakukan pengukuran
berikutnya. Ketika bekerja, HC-SR04 menarik arus ~ 15 mA dengan catu 5V.
Arduino Uno
Arduino Uno adalah sebuah board minimum system mikrokontroller yang mana
di dalamnya terdapat mikrokontroller AVR seri ATmega 328 yang merupakan produk
dari Atmel.
Oleh karena itu arduino uno mampu mensupport mikrokontroller secara mudah terhubung
dengan kabel power USB atau kabel power supply adaptor AC ke DC maupun dengan batteray.
Sehingga untuk mendukung mikrokontroller tersebut bekerja , cukup sambungkan ke powes
supply atau hubungkan melalui kabel USB ke PC, maka Arduino Uno telah siap bekerja.
Arduino Uno berbeda dengan semua jenis arduino sebelumnya, dimana dalam hal koneksi USB
to serial menggunakan fitur IC Atmega8U2, sementara pada board sebelumnya
menggunakan chip FDTI driver USB to serial. Arduino Uno R3 merupakan seri terakhir dan
terbaru dari seri arduino USB.
5
Spesifikasi lengkap :
Mikrokontroller ATmega328
Operating Voltage 5V
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Panjang 68.6 mm
Lebar 53.4 mm
Berat 25 g
Motor Driver
IC L293D adalah IC yang dirancang secara khusus sebagai driver motor DC dan dapat
dikendalikan dengan rangkaian TTL maupun microcontroller. Motor DC yang dikendalikan
dengan driver IC L293D dapat dihubungkan ke ground maupun ke sumber tegangan positif
karena di dalam driver L293D sistem driver yang digunakan adalah totem pool. Dalam satu buah
IC L293D terdiri dari 4 buah driver motor DC yang berdiri sendiri-sendiri. Sehingga dapat
digunakan untuk membuat driver H-bridge untuk 2 buah motor DC.
Modul Arduino Motor Driver Shield 2-L293D ini menggunakan dua buah IC L293D sehingga
terdapat empat buah H-bridge yang dapat digunakan mengendalikan empat buah motor DC
secara dua arah. Dengan arus untuk setiap H-bridge ialah 0,6 A. Secara default tegangan kerja
motor yang dapat dikendalikan ialah berkisar antara 4,5 volt hingga 16 volt.
Selain motor DC, modul driver motor ini juga dapat digunakan untuk mengendalikan hingga dua
buah motor stepper dan juga dua buah motor servo.
6
Berikut ini ialah spesifikasi dari modul driver Arduino Motor Driver Shield 2-L293D.
Servo
Motor servo dapat dimanfaatkan pada pembuatan robot, salah satunya sebagai
penggerak kaki robot. Motor servo dipilih sebagai penggerak pada kaki robot karena
motor servo memiliki tenaga atau torsi yang besar, sehingga dapat menggerakan kaki
robot dengan beban yang cukup berat. Pada umumnya motor servo yang digunakan
sebagai pengerak pada robot adalah motor servo 180 o.
Tiap komponen pada motor servo diatas masing-masing memiliki fungsi sebagai
controler, driver, sensor, girbox dan aktuator. Pada gambar diatas terlihat beberapa
bagian komponen motor servo. Motor pada sebuah motor servo adalah motor DC yang
dikendalikan oleh bagian controler, kemudian komponen yang berfungsi sebagai sensor
adalah potensiometer yang terhubung pada sistem girbox pada motor servo.
7
TT DC Motor
C. Proses Kerja
8
Secara keseluruhan sensor IR dan Ultrasonik akan mendeteksi objek manusia dan akan
mengirmkan sinyal elektrik ke prosesor sebagai input perintah untuk mengikuti objek
tersebut dalam jarak tertentu. Sebagai respon prosesor akan memproses sinyal tersebut dan
kemudian akan mengirimkan sinyal elektrik ke servo dan motor sebagai output sehingga
robot akan bergerak.
D. Flowchart
Mulai
Tidak
Tidak YA Bergerak
Bergerak YA
Prosesor
Prosesor
Servo
Bergerak
Motor sesuai arah
Bergerak objek
Selesai
9
E. Program
#include<Servo.h>
#include<AFMotor.h>
#define LEFT A0
#define echopin A1 // echo pin
#define trigpin A2 // Trigger pin
#define RIGHT A3
AF_DCMotor Motor1(1,MOTOR12_1KHZ);
AF_DCMotor Motor2(2,MOTOR12_1KHZ);
AF_DCMotor Motor3(3,MOTOR34_1KHZ);
AF_DCMotor Motor4(4,MOTOR34_1KHZ);
Servo myservo;
void setup(){
Serial.begin(9600);
myservo.attach(10);
pinMode(RIGHT, INPUT);
pinMode(LEFT, INPUT);
pinMode(trigpin, OUTPUT);
1
0
pinMode(echopin, INPUT);
void loop(){
unsigned int distance = read_cm();
Serial.print("R= ");
Serial.print(Right_Value);
Serial.print(" L= ");
Serial.print(Left_Value);
Serial.print(" D= ");
Serial.println(distance);
delay(50);
}
long read_cm(){
digitalWrite(trigpin, LOW);
delayMicroseconds(2);
digitalWrite(trigpin, HIGH);
delayMicroseconds(10);
time = pulseIn (echopin, HIGH);
return time / 29 / 2;
}
Motor1.setSpeed(120);
Motor1.run(BACKWARD);
Motor2.setSpeed(120);
Motor2.run(BACKWARD);
Motor3.setSpeed(120);
Motor3.run(BACKWARD);
Motor4.setSpeed(120);
Motor4.run(BACKWARD);
}
F. Instalasi
Skematik Rangkaian
PROGRESS PROJECT
Sampai saat ini progress masih dalam tahap pengumpulan alat dan bahan. Sementara
itu juga saya melakukan pengecekan pada program code dan kesesuaiannya pada alat. Dalam
pengerjaan terjadi kendala pada alat yang masih belum lengkap dan dana yang kurang.
1
3
LATIHAN SOAL
1
4
1
5
1
6
1
7
6.
1
8
8.
10.