Kamis, 10 Desember 2015

Membuat Line Follower Robot Dengan Arduino

Kali ini kita akan belajar membuat robot yang sangat sederhana - kita menyebutnya Robot Pengikut Garis. Robot ini menggunakan mikrokontroler untuk mengontrol algoritmanya. Proyek Robot Sederhana ini dapat menjadi proyek akhir pekan yang mengasyikkan. Yuk kita pelajari bagaimana cara membuatnya.

Hardware yang dibutuhkan..

Pabrikan

Alternatif

Pada pembahasan pembuatan Robot Line Follower ini, Cara penggunaan yang Pabrikan sama dengan yang Alternatif..Cuma bentuknya aja yang keliatan beda. Yang jelas aturan penghubungan pin-pin nya sama saja..

Blok Diagram

Blok diagram robot ini memberikan kita gambaran secara garis besar hubungan-hubungan antar pin yang kita gunakan.

Langkah Perakitan Hardwarenya..

Langkah Pertama

Siapkan badan robot kemudian pasangkan baterai 9 volt pada badan robot. Lalu, Lemkan ke badan robot.
note : Badan robotnya saya buat dari papan kayu dan pcb bolong untuk pasang sensor dan sudah saya pasangkan Motor DC 4 buah..

Langkah kedua

Langkah selanjutnya, pasangkan Arduino Uno di atas baterai..boleh di lem atau pakai spacer. Usahakan agar bagian bawah dari Arduino Uno tidak bersinggungan langsung dengan badan baterai agar tidak terjadi konsleting.

Langkah Ketiga

Kemudian, letakkan Driver DC Motor di atas arduino Uno.
note : Saya buat plastik alas untuk Driver DC Motor seperti shield Arduino

Langkah Keempat

 


Selanjutnya, kita pasangkan sensor di bagian depan robot. Sensor inilah yang nantinya membaca adanya garis hitam sehingga, robot dapat mengikuti alur garis yang ada.

Langkah Kelima

Langkah perakitan yang terakhir yaitu, menghubungkan pin-pin yang ada sesuai dengan Blok Diagram - Coba lihat dan perhatikan kembali hubungan pin-pin pada Blok Diagram Berikut..
1. Hubungkan kedua Pin VCC Sensor dengan Pin 5V Arduino.
2. Hubungkan kedua Pin Gnd Sensor dengan Pin Gnd Arduino.
3. Hubungkan Pin Data Sensor Kanan dengan Pin A3 Arduino.
4. Hubungkan Pin Data Sensor Kiri dengan Pin A2 Arduino.

5. Hubungkan Pin En1 Driver DC Motor dengan Pin 5 Arduino.
6. Hubungkan Pin En2 Driver DC Motor dengan Pin 6 Arduino.
7. Hubungkan Pin En3 Driver DC Motor dengan Pin 10 Arduino.
8. Hubungkan Pin En4 Driver DC Motor dengan Pin 11 Arduino.

9. Hubungkan Out Kanan Driver DC Motor dengan DC Motor Kanan.
10. Hubungkan Out Kiri Driver DC Motor dengan DC Motor Kiri.

11. Hubungkan Pin 5v Arduino dengan Kutub Positif (+) Baterai 9volt (yang pertama).
12. Hubungkan Pin Gnd Arduino dengan Kutub Negatif (-) Baterai 9volt (yang pertama).

13. Hubungkan  Pin 12 Volt Driver DC Motor dengan Kutub Positif Baterai 9volt (yang kedua).
14. Hubungkan pin Gnd Driver DC Motor dengan Kutub Negatif Baterai 9volt (yang kedua).
15. Hubungkan Pin 5volt Driver DC Motor dengan Pin 5v Arduino.

Logaritma Robotnya..

Pemrograman Robotnya...

  • Sebelum mengisi program ada baiknya lepas hubungan baterai 9 volt yang ke Arduino, kemudian Hubungkan Arduino dengan Komputer atau Laptop menggunakan kabel USB.
  • Bukalah IDE Arduino. Kemudian ketikkan Sketch atau Program berikut: 



di COPAS
 juga boleh.Tapi, saya sarankan diketik ulang aja supaya lebih memahami alur programnya. Namanya juga belajar.. :) 
//===================Blok Pertama Deklarasi dan Inisialisasi Variable=======================
int sensorKanan = 3;
int sensorKiri = 2;
int adaGaris = ... isi dengan angka dari hasil percobaan sensor

int motorKananA = 5;
int motorKananB = 6;
int motorKiriA = 10;
int motorKiriB = 11;

//=================Blok Kedua Seting Input dan Output=====================================
void setup()
{
pinMode (sensorKanan,INPUT);
pinMode (sensorKiri,INPUT);


pinMode (motorKananA,OUTPUT);
pinMode (motorKananB,OUTPUT);
pinMode (motorKiriA,OUTPUT);
pinMode (motorKiriB,OUTPUT);
}

//=======================================Blok Ketiga Program Utama=============================
void loop()
{
int sensorKanan = analogRead (sensorKanan);
delay (5);
int sensorKiri = analogRead (sensorKiri);
delay (5);
//-----------------------------------------------------------------------------------
if ( (sensorKanan >= adaGaris) && (sensorKiri >= adaGaris) ) 
{
mundur ();
}
//-----------------------------------------------------------------------------------
else if ( (sensorKanan >=adaGaris) && (sensorKiri < adaGaris) )
{
belokkiri ();
}
//-----------------------------------------------------------------------------------
else if ( (sensorKanan < adaGaris) && (sensorKiri >= adaGaris) )
{
belokkanan ();
}
//-----------------------------------------------------------------------------------
else
{
maju ();
}
//-----------------------------------------------------------------------------------
}

//===========================Blok Keempat Arah Gerakan Robot==================================
void mundur (void)
{
analogWrite (motorKananA,0);
analogWrite (motorKananB,255);
analogWrite (motorKiriA,0);
analogWrite (motorKiriB,255);
}
//------------------------------------------------------------------------------------------
void belokkiri (void)
{
analogWrite (motorKananA,255);
analogWrite (motorKananB,0);
analogWrite (motorKiriA,0);
analogWrite (motorKiriB,255);
}
//------------------------------------------------------------------------------------------

void belokkanan (void)
{
analogWrite (motorKananA,0);
analogWrite (motorKananB,255);
analogWrite (motorKiriA,255);
analogWrite (motorKiriB,0);
}

//------------------------------------------------------------------------------------------
void maju (void)
{
analogWrite (motorKananA,255);
analogWrite (motorKananB,0);
analogWrite (motorKiriA,255);
analogWrite (motorKiriB,0);
}
  • Upload Program ke Arduino menggunakan tombol Upload pada IDE Arduino.
  • Jika program berjalan sebagaimana mestinya, barulah lepas kabel usb ke komputer, kemudian sambungkan lagi Arduino kita dengan baterai 9volt.

Unknown

Author & Editor

Has laoreet percipitur ad. Vide interesset in mei, no his legimus verterem. Et nostrum imperdiet appellantur usu, mnesarchum referrentur id vim.

2 komentar:

  1. Terima kasih atas ilmunya.. ana newbie gan di codingnya ada adagaris = isi dengan percobaan sensor... itu nguji gmananya ya mksdnya terima ksh

    BalasHapus
  2. Terima kasih atas ilmunya.. ana newbie gan di codingnya ada adagaris = isi dengan percobaan sensor... itu nguji gmananya ya mksdnya terima ksh

    BalasHapus

 
biz.