Arduino Avoidance Robot
Arduino Avoidance Robot
Pendahuluan
Arduino Avoidance Robot adalah robot cerdas dimana robot tersebut dapat
mengetahui objek disekitar sehingga robot tidak akan menabraknya. Robot akan
membandingkan sisi kiri dan kanannya dan akan memilih berbelok kearah yang memiliki
jarak terjauh.
Perakitan
Pasang Driver Motor, Arduino dsb kemudian pasang kabel-kabel sesuai dengan gambar
dibawah.
Pengkabelan
Arduino L298N
PIN 7 IN1
PIN 5 IN2
PIN 8 IN3
PIN 6 IN4
5V +5V
GND GND
Arduino Servo
PIN 9 Kabel Orange
5V Kabel Merah
GND Kabel Coklat
Arduino Servo
PIN 2 Trigger
PIN 4 Echo
5V VCC
GND GND
Setelah program terupload cobalah pasang dudukan ultrasonic dan lihat apakah posisi sudah
benar lurus ke depan. JIka belum maka sesuaikan kembali program pada arduino.
Saat posisi sudah benar langkah selanjutnya adalah pasang ultrasonic pada dudukan dan
lakukan pengkabelan.
Penjelasan Singkat
1. Ultrasonic HC-SR04
Sensor ultrasonik HC-SR04 adalah komponen yg kerjanya didasarkan prinsip dari
pantulan suatu gelombang suara sehingga dapat dipakai untuk menafsirkan
eksistensi sebuah benda spesifik yang ada dalam frekuensinya. Frekuensi sensor
ultrasonic yaitu sekitar 40 KHz sampai 400 KHz.
Motor servo adalah sebuah motor dengan sistem umpan balik tertutup di mana
posisi dari motor akan diinformasikan kembali ke rangkaian kontrol yang ada di
dalam motor servo. Motor ini terdiri dari sebuah motor DC, serangkaian gear,
potensiometer dan rangkaian kontrol. Potensiometer berfungsi untuk menentukan
batas sudut dari putaran servo. Sedangkan sudut dari sumbu motor servo diatur
berdasarkan lebar pulsa yang dikirim melalui kaki sinyal dari kabel motor.
Servo Sg 90 merupakan servo standar yang mampu berputar sejauh 180 derajat,.
Terdapat tiga buah kabel pada servo, yaitu kabel coklat adalah GND, Merah adalah
VCC dan Orange adalah Data/Sinyal. Untuk menggunakan servo pada Arduino maka
diperlukan library Servo.h, library tersebut telah tersedia pada arduino IDE.
3. L298N
L298N merupakan driver motor H-bridge yang berfungsi sebagai penguat arus dan
tegangan, sehingga motor mendapatkan supplay arus yang sesuai. Hubungkan
output motor A (out1 dan out 2) ke motor kiri dan output motor B ke motor kanan.
Logika motor :
PIN Kondisi Putaran Motor
PIN 7 Low Maju
PIN 8 High Maju
PIN 7 High Mundur
PIN 8 Low Mundur
PIN 5 0-255 Semakin besar semakin kencang
PIN 6 0-255
4. Arduino Uno
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di
dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis
AVR dari perusahaan Atmel.
Mikrokontroler itu sendiri adalah chip atau IC (integrated circuit) yang bisa diprogram
menggunakan komputer. Tujuan menanamkan program pada mikrokontroler adalah
agar rangkaian elektronik dapat membaca input, memproses input tersebut dan
kemudian menghasilkan output sesuai yang diinginkan. Jadi mikrokontroler bertugas
sebagai ”otak” yang mengendalikan input, proses dan output sebuah rangkaian
elektronik. Kegunaan Arduino tergantung kepada kita yang membuat program
Untuk membuat suatu program dengan menggunakan arduino maka diperlukan
Arduino IDE yang bisa diunduh secara gratis melalui
http://arduino.cc/en/main/software. Setelah terinstal maka dapat terlihat tampilan
seperti sebagai berikut.
Plug-in kabel USB pada Arduino dan pada komputer dan setting Serial Port pada
Arduino IDE sesuai dengan Port pada arduino.
Setelah itu setting Board dan pastikan bahwa Board yang terpilih adalah Arduino
Uno.
Untuk menambahkan library maka klik SketchImport Library…Add Library, pilih
library yang ingin dimasukkan dan klik open.
Pemrograman
Buka Arduino IDE seperti yang sudah dijelaskan, jangan lupa untuk menambahkan library
NewPing dan ketik program pada seperti dibawah ini.
Basic program ultrasonic yang dipakai dalam robot ini adalah example event timer dari
library NewPing. Pada saat robot maju maka servo akan bergerak kecil ke kiri dan kekanan,
hal ini bertujuan agar range dari ultrasonic menjadi lebih besar pada sisi kiri dan kanan
robot. Jika servo tidak digerakkan kemungkinan robot akan menabrak akan semakin tinggi.
Fungsi untuk menggerakkan servo saat robot melaju adalah fungsi scan_depan(); ,untuk itu
jika mengiginkan servo diam dan menghadap ke depan pada saat melaju cukup ganti isi
scan_depan() dengan beberapa baris berikut :