Robot Penjelajah Daratan.

(1)

i Universitas Kristen Maranatha

ABSTRAK

Jaman sekarang ini teknologi semakin berkembang, salah satu teknologi yang paling berkembang sangat pesat adalah robot. Hal ini dikarenakan robot sangat membantu kehidupan manusia baik dalam bidang pendidikan, industri, kesehatan, penelitian, pencarian, dan sebagainya. Pada tugas akhir ini dirancang robot dengan jenis penjelajah. Robot penjelajah (explorer) merupakan salah satu bentuk robot yang bergerak otomatis yang dirancang baik untuk penelitian, industri maupun kompetisi robot. Pada tugas akhir ini akan dijelaskan bagaimana perancangan, pembuatan dan hasil dari pembuatan robot ini.


(2)

ii Universitas Kristen Maranatha

ABSTRACT

Nowadays technology is growing very fast, one with the fastest growth is robot. This because the robot is very helpful for people in education, industry, health, research, and others. In this project, the robot is designed to explore land area with many hurdle. This robot is a type of robot that can move automatically to avoid many hurdle. This book elaborates the design, the making, and the result of this robot.


(3)

v Universitas Kristen Maranatha

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... ix

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Identifikasi Masalah ... 2

1.3 Tujuan Masalah ... 2

1.4 Pembatasan Masalah ... 2

1.5 Sistematika Penelitian ... 2

BAB II LANDASAN TEORI ... 4

2.1 Motor ... 4

2.1.1 Motor Driver DC menggunakan IC L293D ... 4

2.2 Sensor ... 6

2.2.1 Sensor PING ... 6

2.3 Arduino ... 9

2.4 Mikrokontroler ... 13

2.4.1 ATMega328 ... 15

2.4.2 Konfigurasi Pin ATMega328 ... 17

BAB III PENELITIAN ... 19


(4)

vi Universitas Kristen Maranatha

3.2 Flowchart ... 20

3.3 Perancangan Perangkat Keras ... 22

3.3.1. Modul Arduino ... 22

3.3.2. Sensor PING ... 26

3.3.3. Rangkaian Motor Driver IC L293D ... 28

3.3.4. Supplai Baterai ... 30

3.4 Struktur Robot ... 30

3.5 Perangkat Lunak (Software) ... 31

3.5.1. Arduino ... 31

BAB IV IMPLEMENTASI ... 37

4.1 Spesifikasi Umum Robot ... 37

4.1.1 Tampilan Robot dan Track ... 37

4.2 Hasil Pengamatan... 39

4.2.1 Pengujian Sensor ... 39

4.2.2 Pengujian Robot Keseluruhan ... 41

BAB V KESIMPULAN DAN SARAN ... 46

5.1 Kesimpulan ... 46

5.2 Saran ... 46

DAFTAR PUSTAKA ... 48 LAMPIRAN A ... A-1 LAMPIRAN B ... B-1


(5)

vii Universitas Kristen Maranatha

DAFTAR GAMBAR

Gambar 2.1 Motor DC ... 4

Gambar 2.2 Pin IC L293D ... 5

Gambar 2.3 Sensor PING ... 7

Gambar 2.4 Konfigurasi Sensor PING... 8

Gambar 2.5 Dimensi Sensor PING ... 8

Gambar 2.6 Arduino Board ... 9

Gambar 2.7 Pin-pin ATMega328 ... 17

Gambar 3.1 Blok Diagram ... 19

Gambar 3.2 Flowchart (1)... 20

Gambar 3.3 Flowchart (2)... 21

Gambar 3.4 Arduino Board ... 22

Gambar 3.5 Skematik Arduino ... 23

Gambar 3.6 Konfigurasi Arduino ... 23

Gambar 3.7 Skematik Sensor PING ... 26

Gambar 3.8 Rangkaian Sensor PING... 28

Gambar 3.9 Rangkaian Motor Driver IC L293D ... 28

Gambar 3.10 Skematik Motor Driver ... 29

Gambar 3.11 Struktur Robot ... 30


(6)

viii Universitas Kristen Maranatha

Gambar 3.13 Program Inisialisasi Sensor dan Motor ... 32

Gambar 3.14 Program Setting Sensor dan Motor ... 33

Gambar 3.15 Program Inti/Utama ... 34

Gambar 3.16 Robot Bergerak Maju ... 35

Gambar 3.17 Robot Belok Kiri ... 35

Gambar 3.18 Robot Belok Kanan ... 36

Gambar 3.19 Robot Bergerak Mundur... 36

Gambar 4.1 Robot Tampak Samping ... 37

Gambar 4.2 Robot Tampak Atas ... 38

Gambar 4.3 Robot Tampak Depan... 38

Gambar 4.4 Track Robot ... 38

Gambar 4.5 Robot Bergerak Maju ... 41

Gambar 4.6 Robot Belok Kiri ... 42

Gambar 4.7 Robot Belok Kanan ... 42

Gambar 4.8 Robot Bergerak Mundur... 43


(7)

ix Universitas Kristen Maranatha

DAFTAR TABEL

Tabel 2.1 Konfigurasi Pin IC L293D ... 5 Tabel 2.2 Spesifikasi Arduino ... 10 Tabel 3.1 Besaran Hasil dari Pengukuran Jarak ... 27 Tabel 4.1 Data Hasil Pengujian Sensor PING Teerhadap Benda atau Objek di

Depan (Objek Berbidang Rata) ... 39 Tabel 4.2 Logika Kebenaran Robot ... 44


(8)

A-1

LAMPIRAN A

Program

//initialisasi int EN1 = 9; int EN2 = 11;

int MNe1 = 12; //motor kanan int MPo1 = 4;

int MPo2 = 13; //motor kiri int MNe2 = 3;

int pingPin = 7; // sensor kiri int pingPin1 = 2; // sensor kanan long duration, cm;

void setup(){

pinMode (EN1, OUTPUT); pinMode (EN2, OUTPUT); pinMode (pingPin, OUTPUT); pinMode (pingPin1, OUTPUT); pinMode (MNe1, OUTPUT); pinMode (MPo1, OUTPUT); pinMode (MNe2, OUTPUT); pinMode (MPo2, OUTPUT); Serial.begin(9600);

}

void loop () {

long duration, cm, cm1; pinMode(pingPin, OUTPUT); digitalWrite(pingPin, LOW); delayMicroseconds(2); digitalWrite(pingPin, HIGH); delayMicroseconds(5); digitalWrite(pingPin, LOW); pinMode(pingPin, INPUT);

duration = pulseIn(pingPin, HIGH);

cm = microsecondsToCentimeters(duration); Serial.println(cm);


(9)

A-2 pinMode(pingPin1, OUTPUT); digitalWrite(pingPin1, LOW); delayMicroseconds(2); digitalWrite(pingPin1, HIGH); delayMicroseconds(5); digitalWrite(pingPin1, LOW); pinMode(pingPin1, INPUT);

duration = pulseIn(pingPin1, HIGH);

cm1 = microsecondsToCentimeters(duration); Serial.println(cm1);

robotMaju();

if ((cm > 7) && (cm1 < 7)){ putarKiri();

}

else if ((cm < 7 ) && (cm1 > 7)){ putarKanan();

}

else if ((cm <= 4 ) && (cm1 <= 4)){ mundur(); delay(2000); putarKiri(); delay(3000); } delay(100); } void robotMaju(){ digitalWrite(EN1,LOW); digitalWrite(EN2,LOW); delayMicroseconds(100); digitalWrite(4,LOW); digitalWrite(12,HIGH); delayMicroseconds(100); digitalWrite(13,LOW); digitalWrite(3,HIGH); delayMicroseconds(100); digitalWrite(EN1,HIGH); digitalWrite(EN2,HIGH); delay(25); }


(10)

A-3

void putarKanan(){ //belok kanan digitalWrite(4,LOW); digitalWrite(12,LOW); delayMicroseconds(100); digitalWrite(13,LOW); digitalWrite(3,HIGH); delayMicroseconds(100); digitalWrite(EN1,HIGH); digitalWrite(EN2,HIGH); delayMicroseconds(200); delay(900); }

void putarKiri(){ // belok kiri digitalWrite(4,LOW); digitalWrite(12,HIGH); delayMicroseconds(100); digitalWrite(13,LOW); digitalWrite(3,LOW); delayMicroseconds(100); digitalWrite(EN1,HIGH); digitalWrite(EN2,HIGH); delayMicroseconds(200); delay(900); } void mundur(){ digitalWrite(4,HIGH); digitalWrite(12,LOW); delayMicroseconds(100); digitalWrite(13,HIGH); digitalWrite(3,LOW); delayMicroseconds(100); digitalWrite(EN1,HIGH); digitalWrite(EN2,HIGH); delayMicroseconds(200); delay(1000); }

long microsecondsToCentimeters (long microseconds) {

return microseconds / 29 / 2; }


(11)

B-1

LAMPIRAN B


(12)

1 Universitas Kristen Maranatha

BAB I

PENDAHULUAN

1.1 Latar Belakang

Robot dapat diartikan sebagai sebuah mesin yang dapat bekerja secara terus menerus baik secara otomatis maupun terkendali. Robot digunakan untuk membantu tugas-tugas manusia mengerjakan hal yang kadang sulit atau tidak bisa dilakukan manusia secara langsung. Misalnya untuk menangani material radio aktif, merakit mobil dalam industri perakitan mobil, menjelajah planet mars, sebagai media pertahanan atau perang, dan sebagainya. Selain itu dengan berkembangnya pengetahuan dan teknologi

kini orang berlomba-lomba untuk menciptakan sebuah robot.

Salah satu robot yang menjadi trend saat ini dikalangan pelajar dan mahasiswa adalah robot penjelajah. Robot penjelajah (explorer) merupakan salah satu bentuk robot yang bergerak otomatis yang dirancang baik untuk penelitian, industri maupun kompetisi robot. Sesuai dengan namanya, tugas yang harus dilakukan oleh suatu robot penjelajah adalah mampu mendeteksi setiap halangan yang ada di depan secara otomatis.

Prinsip dasarnya, sama seperti manusia, mata digunakan untuk melihat, kaki atau roda digunakan untuk berjalan, dan otak digunakan untuk berpikir. 3 komponen utama pada setiap robot penjelajah adalah : mata, kaki, dan otak. Mata pada robot ini yang dimaksud adalah sensor. Sensor digunakan untuk membaca objek didepan, adalah sensor PING (Ultrasonic). Ini dapat mendeteksi objek sesuai dengan jarak sensor yang telah ditentukan. Kaki yang dimaksud pada robot penjelajah ini menggunakan roda. Sementara sebagai otak dari robot ini berada pada mikrokontroler (Arduino). Semua aktivitas dari robot ini bergantung pada


(13)

2 Universitas Kristen Maranatha mikrokontroler yang akan diprogramkan secara terkendali.

1.2 Identifikasi Masalah

1. Bagaimana perancangan dan perakitan sebuah robot yang mampu mejelajah sesuai dengan jalur yang sudah ditentukan?

2. Hal-hal apa saja yang perlu diperhatikan dalam perancangan dan pembuatan program untuk robot penjelajah daratan?

1.3 Tujuan Masalah

1. Sebagai pembelajaran untuk merancang dan merakit sebuah robot yang mampu melalui jalur sesuai dengan yang telah ditentukan.

1.4 Pembatasan Masalah

Berikut adalah hal-hal yang menjadi batasan masalah pembuatan Tugas Akhir ini:

1. Penggunaan motor DC 2 buah sebagai penggerak.

2. Mikrokontroler yang digunakan adalah Arduino ATMega328 sebagai sistem kontrol robot.

3. Penggunaan sensor PING sebagai sensor jarak yang dapat mendeteksi objek yang berada di depan.

4. Pembuatan program dalam bahasa C++. 5. IC L293D sebagai motor driver.

1.5 Sistematika Penelitian

Bab 1 : Pendahuluan

Bab ini membahas tentang latar belakang, identifikasi masalah, tujuan masalah, pembatasan masalah, dan sistematika penelitian.


(14)

3 Universitas Kristen Maranatha Bab 2 : Landasan Teori

Bab ini membahas tentang teori-teori dasar dari komponen-komponen yang digunakan pada robot penjelajah daratan. Bab 3 : Perancangan

Bab ini berisi perancangan perangkat keras dan perangkat lunak.

Bab 4 : Implementasi

Bab ini membahas tentang pengamatan dan pengujian dari robot penjelajah daratan.

Bab 5 : Kesimpulan dan saran

Bab ini merupakan bab penutup yang memuat tentang kesimpulan dan saran.


(15)

46 Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil perancangan dan pembuatan robot penjelajah daratan ini, dapat disimpulkan bahwa :

1. Robot penjelajah daratan telah berhasil dibuat dengan menggunakan sensor PING sebagai sensor jarak (ultrasonic), Arduino Elmarino ATMega328 sebagai kontroler dan motor DC sebagai penggerak. Pergerakan robot sangat dipengaruhi dari nilai yang dihasilkan oleh sensor PING, kondisi baterai, dan jalur atau track yang ada. Sensor PING dapat mendeteksi objek pada jarak minimal 3 cm dan maksimal 320 cm pada objek berbidang datar.

5.2 Saran

Setelah merancang, membuat, dan mengevaluasikan robot penjelajah daratan maka saran yang perlu dikembangkan pada robot penjelajah daratan ini:

1. Penambahan sensor PING disetiap sudut robot agar setiap sudut dapat mendeteksi objek dengan akurat.

2. Menambahkan sensor baru seperti sensor UVTron (pendeteksi api).

3. Dibutuhkan algoritma untuk mengetahui perkiraan kesalahan sensor.


(16)

47 Universitas Kristen Maranatha 4. Penambahan sensor push button pada bagian belakang robot,

apabila robot bergerak mundur dan menabrak sebuah benda atau halangan dibelakang, sensor bisa mendeteksi adanya halangan dan robot berhenti.


(17)

48 Universitas Kristen Maranatha

DAFTAR PUSTAKA

Darmawan, Aan, Modul Pelatihan Arduino Teknik Elektro Universitas Kristen Maranatha, Teknik Elektro UKM, 2011

Tim Pustena ITB, Jurus Kilat Jago membuat Robot, Penerbit Dunia Komputer, Bekasi, 2011

http://arduino.cc/en/Main/arduinoBoardDuemilanove http://blog.indorobotika.com/arduino/apa-itu-arduino.html http://elektronika-dasar.com/komponen/driver-motor-dc-l293d/ http://telinks.wordpress.com/tag/atmega328/

http://www.elektronikamania.com/2011/10/ping-ultrasonic-distance-sensor.html http://www.arduino.or.id/hardware/detail_hardware/8


(1)

1 Universitas Kristen Maranatha

BAB I

PENDAHULUAN

1.1 Latar Belakang

Robot dapat diartikan sebagai sebuah mesin yang dapat bekerja secara terus menerus baik secara otomatis maupun terkendali. Robot digunakan untuk membantu tugas-tugas manusia mengerjakan hal yang kadang sulit atau tidak bisa dilakukan manusia secara langsung. Misalnya untuk menangani material radio aktif, merakit mobil dalam industri perakitan mobil, menjelajah planet mars, sebagai media pertahanan atau perang, dan sebagainya. Selain itu dengan berkembangnya pengetahuan dan teknologi

kini orang berlomba-lomba untuk menciptakan sebuah robot.

Salah satu robot yang menjadi trend saat ini dikalangan pelajar dan mahasiswa adalah robot penjelajah. Robot penjelajah (explorer) merupakan salah satu bentuk robot yang bergerak otomatis yang dirancang baik untuk penelitian, industri maupun kompetisi robot. Sesuai dengan namanya, tugas yang harus dilakukan oleh suatu robot penjelajah adalah mampu mendeteksi setiap halangan yang ada di depan secara otomatis.

Prinsip dasarnya, sama seperti manusia, mata digunakan untuk melihat, kaki atau roda digunakan untuk berjalan, dan otak digunakan untuk berpikir. 3 komponen utama pada setiap robot penjelajah adalah : mata, kaki, dan otak. Mata pada robot ini yang dimaksud adalah sensor. Sensor digunakan untuk membaca objek didepan, adalah sensor PING (Ultrasonic). Ini dapat mendeteksi objek sesuai dengan jarak sensor yang telah ditentukan. Kaki yang dimaksud pada robot penjelajah ini menggunakan roda. Sementara sebagai otak dari robot ini berada pada mikrokontroler (Arduino). Semua aktivitas dari robot ini bergantung pada


(2)

2 Universitas Kristen Maranatha

mikrokontroler yang akan diprogramkan secara terkendali.

1.2 Identifikasi Masalah

1. Bagaimana perancangan dan perakitan sebuah robot yang mampu mejelajah sesuai dengan jalur yang sudah ditentukan?

2. Hal-hal apa saja yang perlu diperhatikan dalam perancangan dan pembuatan program untuk robot penjelajah daratan?

1.3 Tujuan Masalah

1. Sebagai pembelajaran untuk merancang dan merakit sebuah robot yang mampu melalui jalur sesuai dengan yang telah ditentukan.

1.4 Pembatasan Masalah

Berikut adalah hal-hal yang menjadi batasan masalah pembuatan Tugas Akhir ini:

1. Penggunaan motor DC 2 buah sebagai penggerak.

2. Mikrokontroler yang digunakan adalah Arduino ATMega328 sebagai sistem kontrol robot.

3. Penggunaan sensor PING sebagai sensor jarak yang dapat mendeteksi objek yang berada di depan.

4. Pembuatan program dalam bahasa C++. 5. IC L293D sebagai motor driver.

1.5 Sistematika Penelitian

Bab 1 : Pendahuluan

Bab ini membahas tentang latar belakang, identifikasi masalah, tujuan masalah, pembatasan masalah, dan sistematika penelitian.


(3)

3 Universitas Kristen Maranatha

Bab 2 : Landasan Teori

Bab ini membahas tentang teori-teori dasar dari komponen-komponen yang digunakan pada robot penjelajah daratan. Bab 3 : Perancangan

Bab ini berisi perancangan perangkat keras dan perangkat lunak.

Bab 4 : Implementasi

Bab ini membahas tentang pengamatan dan pengujian dari robot penjelajah daratan.

Bab 5 : Kesimpulan dan saran

Bab ini merupakan bab penutup yang memuat tentang kesimpulan dan saran.


(4)

46 Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil perancangan dan pembuatan robot penjelajah daratan ini, dapat disimpulkan bahwa :

1. Robot penjelajah daratan telah berhasil dibuat dengan menggunakan sensor PING sebagai sensor jarak (ultrasonic), Arduino Elmarino ATMega328 sebagai kontroler dan motor DC sebagai penggerak. Pergerakan robot sangat dipengaruhi dari nilai yang dihasilkan oleh sensor PING, kondisi baterai, dan jalur atau track yang ada. Sensor PING dapat mendeteksi objek pada jarak minimal 3 cm dan maksimal 320 cm pada objek berbidang datar.

5.2 Saran

Setelah merancang, membuat, dan mengevaluasikan robot penjelajah daratan maka saran yang perlu dikembangkan pada robot penjelajah daratan ini:

1. Penambahan sensor PING disetiap sudut robot agar setiap sudut dapat mendeteksi objek dengan akurat.

2. Menambahkan sensor baru seperti sensor UVTron (pendeteksi api).

3. Dibutuhkan algoritma untuk mengetahui perkiraan kesalahan sensor.


(5)

47 Universitas Kristen Maranatha

4. Penambahan sensor push button pada bagian belakang robot, apabila robot bergerak mundur dan menabrak sebuah benda atau halangan dibelakang, sensor bisa mendeteksi adanya halangan dan robot berhenti.


(6)

48 Universitas Kristen Maranatha

DAFTAR PUSTAKA

Darmawan, Aan, Modul Pelatihan Arduino Teknik Elektro Universitas Kristen Maranatha, Teknik Elektro UKM, 2011

Tim Pustena ITB, Jurus Kilat Jago membuat Robot, Penerbit Dunia Komputer, Bekasi, 2011

http://arduino.cc/en/Main/arduinoBoardDuemilanove http://blog.indorobotika.com/arduino/apa-itu-arduino.html http://elektronika-dasar.com/komponen/driver-motor-dc-l293d/ http://telinks.wordpress.com/tag/atmega328/

http://www.elektronikamania.com/2011/10/ping-ultrasonic-distance-sensor.html http://www.arduino.or.id/hardware/detail_hardware/8