A. Definisi
Robot Line Follower merupakan robot yang bergerak membaca garis secara
otomatis dengan memanfaatkan sensor infrared. Biasanya garis yang dibaca oleh Robot
Line Follower adalah garis berwarna hitam dengan latar berwarna putih infrared
berfungsi untuk membaca jalur/garis putih sehingga robot dapat bergerak mengikuti
garis yang sesuai. Penambahan perangkat yang ada di Robot Line Follower adalah
Arduino Uno sehingga robot bisa disisipkan sebuah program agar dapat lebih optimal.
Pada pertemuan UKM Robohokic MPK 1 ini akan dirancang sebuah Robot Line
Follower menggunakan Arduino Uno dengan perangkat yang menyesuaikan pada Robot
Line Follower menggunakan Motor Driver kemudian bentuk sensor bagian depan untuk
memaksimalkan pembaca garis.
B. Tujuan
1. Mahasiswa dapat mengetahui cara membuat rangkaian robot line follower ini.
2. Mengetahui komponen-komponen elektonika yang menjadi fungsi-fungsinya
sehingga dapat mengaplikasikannya dalam bentuk sebuah rangkaian.
3. Mengetahui dan memahami sistem dan cara kerja Line Follower.
4. Mahasiswa dapat memahami prinsip kerja robot pengikut garis berbasis Arduino
Uno.
5. Mahasiswa mampu merancang dan mengimplementasikan suatu robot pengikut
garis sengan menggunakan Arduino Uno dan Sensor Infrared.
1. Sensor Garis
2. Driver Motor
3. Kit Chasis dan DC Motor
4. Arduino
5. Baterai/Power Bank
D. Wiring Diagram
int pin_sensor[]={8,9,10,11,12};
int baca_sensor;
int inp;
int hasil_baca[]={1,1,1,1,1};
int a;
int s0,s1,s2,s3,s4;
void setup(){
Serial.begin(9600);
pinMode(enA, OUTPUT); pinMode(enB, OUTPUT);
pinMode(in1, OUTPUT); pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT); pinMode(in4, OUTPUT);
//setting pin sensor sebagai INPUT
while(a<5){
pinMode(pin_sensor[a],INPUT);
a=a+1;
}
}
void loop() {
readOut(pin_sensor);
/* delay(100);*/
if((s0 && s1 && s2 && s3 && s4)) {
gerak_maju(); Serial.println("stop");
}
else if((s0 && s1) || (s0)||(s0 && s1 && s2)){
belok_kiri(); Serial.println("kiri");
}
else if((s3 && s4) || (s4)||(s2 && s3 && s4)){
belok_kanan(); Serial.println("kanan");
}
else if((s2) || (s1 && s2) || (s2 && s3)||(s1 && s2 && s3)){
gerak_maju(); Serial.println("maju");
}
//kendali motor
void gerak_maju(){
analogWrite (enA, 200);
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite (enB, 150);
}
void belok_kanan(){
analogWrite (enA, 0);
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite (enB, 150);
}
void belok_kiri(){
analogWrite (enA, 150);
digitalWrite(in1,
HIGH);
digitalWrite(in2,
LOW);
digitalWrite(in3,
HIGH);
digitalWrite(in4,
LOW); analogWrite
(enB, 0);
}
void motor_stop(){
analogWrite (enA, 0);
analogWrite (enB, 0);
}
F. Hasil Pembuatan
G. Manfaat
H. Sumber
https://www.scribd.com/document/518203948/LAPORAN-PRAKTIKUM-
ROBOTIKA diakses pada tanggal 15 Mei 2023