Realisasi Robot Beroda Pemadam Api Untuk KRCI 2011 Divisi Beroda.
i
Universitas Kristen Maranatha
REALISASI ROBOT BERODA PEMADAM API UNTUK KRCI
2011 DIVISI BERODA
Disusun oleh :
Nama :
Erwin Limawan
NRP
:
0722042
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha,
Jl.Prof.Drg.Suria Sumantri, MPH No. 65, Bandung, Indonesia.
Email : erwin_limawan@yahoo.com
ABSTRAK
Akhir-akhir ini banyak diselenggarakan kompetisi
robotic
yang bertujuan
untuk menumbuh kembangkan ilmu pengetahuan dan teknologi. Kontes Robot
Cerdas Indonesia (KRCI) merupakan sebuah kompetisi robot yang diadakan
setiap tahun. Dari tahun ke tahun, KRCI mengalami perubahan dalam hal tingkat
kesulitan yang harus diatasi oleh robot. Robot harus dapat bergerak dengan cepat
dan lincah, kembali ke posisi
HOME
, dan memasuki seluruh ruang yang ada.
Pada Tugas Akhir ini, robot beroda pemadam api dibuat dengan ukuran
yang cukup kecil, yaitu 25cm x 17.5cm x 22cm. Robot didesain menyerupai
sebuah mobil. Sistem gerak robot menggunakan
differensial drive
dengan aktuator
4 buah motor DC 12 Volt yang dipasang satu buah pada setiap rodanya. Jika salah
satu roda mengalami selip, maka tiga roda lainnya dapat membantu agar robot
bisa tetap bergerak. Robot dapat bergerak dengan kecepatan 70cm/s. Robot
dilengkapi dengan sensor jarak ultrasonik untuk mengukur jarak robot dengan
lingkungan di sekitarnya, sensor UVTron untuk mendeteksi api lilin, dan sensor
warna untuk mendeteksi warna lantai yang dilalui robot sehingga robot dapat
mengetahui jumlah ruang yang telah dimasuki dan dapat masuk ke dalam ruang 4.
Robot dikontrol dengan menggunakan pengontrol mikro ATmega 128.
Berdasarkan percobaan yang dilakukan dapat dikatakan bahwa robot beroda
dapat bermanuver dan menghindari halangan-halangan yang ada di dalam setiap
ruang dengan tingkat keberhasilan 96%, mendeteksi warna lantai yang dilalui
robot dengan menggunakan sensor warna ZX-03, mencari serta memasuki ruang
(2)
ii
Universitas Kristen Maranatha
4, dan mendeteksi serta memadamkan api dengan menggunakan tiupan angin dari
kipas dengan tingkat keberhasilan 74.16% pada kondisi ruang yang berubah-ubah.
Robot juga berhasil mendapatkan penghargaan sebagai juara 3 regional 2 di
KRCI.
Kata Kunci : Robot Beroda, KRCI, Sensor UVTron, Sensor Jarak Ultrasonik,
Pengontrol Mikro Atmega 128.
(3)
iii
Universitas Kristen Maranatha
REALIZATION OF FIRE FIGHTING WHEELED ROBOT
FOR KRCI 2011 WHEELED DIVISION
Composed by :
Name :
Erwin Limawan
NRP
:
0722042
Electrical Engineering, Maranatha Christian University,
Jl.Prof.Drg.Suria Sumantri, MPH No. 65, Bandung, Indonesia.
Email : erwin_limawan@yahoo.com
ABSTRACT
Lately many robotic competitions held which aims to cultivate science and
technology. Indonesia Smart Robot Contest (KRCI) is a robot competition held
every year. From year to year, KRCI experience changes in the level of difficulty
to be overcome by the robot. A robot must be able to move quickly and swiftly,
back to the HOME position, and enter the whole room.
In this Final Project, fire fighting wheeled robot made with a size small
enough, which is 25cm x 17.5cm x 22cm. The robot is designed like a car. Robot
motion system using a differential drive with actuator 4 pieces 12 Volt DC motor
mounted 1 piece on each wheel. If one of the wheels skid, then the other three
wheels can help to keep the robot can still moving. The robot can move with the
speed of 70cm/s. The robot is equipped with an ultrasonic distance sensor to
measure the distance a robot with the environment, UVTron sensor to detect a
candle flame, and a color sensor for detecting the color of the floor through which
the robot so the robot can know the amount of room that has been entered and can
get into the room 4. The robot is controlled by using a micro controller ATmega
128.
Based on experiments that can be said that the wheeled robot can maneuver
and avoid the obstacles that exist in every room with a success rate of 96%,
detecting the color of the floor through which the robot by using a color sensor
ZX-03, search for and enter the room 4, and detect and extinguish the fire by
(4)
iv
Universitas Kristen Maranatha
using a wind from the fan with a 74.16% success rate on the conditions of the
changing room. The robot also successfully get award as a third winner regional 2
in KRCI.
Keywords: Wheeled Robot, KRCI, UVTron Sensor, Ultrasonic Sensor, Micro
Controller Atmega 128.
(5)
v
Universitas Kristen Maranatha
DAFTAR ISI
Halaman
ABSTRAK………..
i
A
BSCTRACT………
iii
DAFTAR ISI………
...
v
DAFTAR TABEL………
..
ix
DAF
TAR GAMBAR……….
xi
BAB 1 PENDAHULUAN
1.1
Latar
Belakang………
1
1.2
Identifik
asi Masalah………
2
1.3
Perumus
an Masalah………
2
1.4
Tujuan………..
2
1.5
Pembatasan
Masalah………...
2
1.6
Sistemat
ika Penulisan……….
3
BAB 2 TEORI DASAR
2.1
KRCI 2011……… 5
2.1.1
Panduan Peraturan KRCI 2011 Divisi Beroda………...
5
2.1.1.1
Lapangan (arena)………
6
2.1.1.2
Lantai……….
7
2.1.1.3
Pintu………...
7
2.1.1.4
Karpet………
8
2.1.1.5
Home
……….
9
2.1.1.6
Lilin………
...
10
2.1.1.7
Alas Lilin………
...
11
2.1.1.8
Furniture
………
12
2.1.1.9
Sound Damper
………
...
12
2.1.1.10
Cermin………
...
13
2.1.1.11
Uneven Floor
………
.
14
(6)
vi
Universitas Kristen Maranatha
2.3
P
engantar Robotika………
. 15
2.3.1
Robot Beroda
……….
15
2.3.1.1
Differential Drive
………..
15
2.3.1.2
Tricycle Drive
………
16
2.3.1.3
Synchronous Drive
……….
16
2.3.1.4
Holomonic Drive
………...
17
2.4
Sensor………
18
2.4.1
Sensor Jarak Ultrasonik (SRF05)………...
18
2.4.2
Sensor Api UVTron………...
20
2.4.3
Sensor Warna……….
22
2.5
Pengontrol Mikro………
23
2.5.1
Pengenalan ATMEL AVR RISC………...
23
2.5.2
Pengontro
l Mikro ATmega128……….
.. 24
2.5.2.1
Fitur ATmega128………...
24
2.5.2.2
Konfigurasi Pin ATmega128……….
25
2.5.2.3
Diagram Blok ATmega128………
28
BAB 3 PERANCANGAN DAN REALISASI
3.1
Perancangan Sistem Robot Beroda Pemadam Api………..
30
3.1.1
Diagram Blok Sistem Nav
igasi dan Manuver Robot……….
30
3.1.2
Diagram Blok Sistem Pem
adaman Api Robot Beroda…………..
31
3.2
Perancangan dan Realisasi Robot Beroda Pemadam Api………...
32
3.2.1
Bentuk Robot……….
34
3.2.2
Siste
m Gerak………..
34
3.3
Pemutar
Kipas………
34
3.4
Sensor………...
35
3.4.1
Sensor Jarak Ultrasonik SRF05……….
35
3.4.2
Sensor Api
UVTron………...
36
3.4.3
Sens
or Warna……….
37
3.5
Rangkaian Penggerak Motor DC………..
37
3.6
Skematik Pengontr
ol Mikro ATmega128……….
39
(7)
vii
Universitas Kristen Maranatha
BAB 4 DATA PENGAMATAN DAN ANALISIS
4.1
Pengujian
Sensor Warna………
51
4.2
Pengujian Robot Beroda dalam Mengelilingi Ruang………..
52
4.2.1
Robot Mengelilingi Ruang
1………...
52
4.2.1.1
Algoritma ke-
1……….………..
53
4.2.1.2
Algoritma ke-2
……….………..
55
4.2.2
Robot Mengelilingi Ruang 2………..
56
4.2.2.1
Algoritma ke-1
……….………..
57
4.2.2.2
Algoritma ke-
3……….………..
59
4.2.3
Robot Mengelilingi Ruang
3………..
60
4.2.3.1
Algoritma ke-1
……….………..
61
4.2.3.2
Algoritma ke-
4……….………..
62
4.2.4
Robot Mengelilingi Ruang 4
………..
64
4.2.4.1
Algoritma ke-1
……….………..
64
4.2.4.2
Algoritma ke-
5……….………..
66
4.3
Pengujian Robot Beroda dari Posisi Start
di Dalam Ruang……...
67
4.3.1
Robot
Start
dari Ruang 1
………...
67
4.3.1.1
Algoritma ke-1
………..
68
4.3.1.2
Algoritma ke-2
………..
69
4.3.2
Robot
Start
dari Ruang
2………
69
4.3.2.1
Algoritma ke-1
………..
70
4.3.2.2
Algoritma ke-
3………..
71
4.3.3
Robot
Start
dari Ruang
3………
71
4.3.3.1
Algoritma ke-1
……….………..
72
4.3.3.2
Algoritma ke-
4……….………..
73
4.3.4
Robot
Start
dari Ruang
4………
73
4.3.4.1
Algoritma ke-1
………..
. 74
4.3.4.2
Algoritma ke-
5………...
75
4.4
Pengujian Robot Beroda dalam Memadamkan Api………. 75
4.4.1
Robot Memadamkan Api di Ruang 1………
76
(8)
viii
Universitas Kristen Maranatha
4.4.3
Robot Memadamkan Api di Ruang 3
………
78
4.4.4
Robot Memadamkan Api di Ruang 4
………
80
4.5
Pengujian Robot Beroda dalam Me
ngelilingi Seluruh Ruang…....
82
4.6
Pengujian Masing-masing Algoritma pada Setiap Ruang
………..
83
4.6.1
Hasil Pengujian Algoritma ke-
2……….
83
4.6.2
Hasil Pengujian Algoritma ke-
3……….
86
4.6.3
Hasil Pengujian Algoritma ke-
4……….
89
4.6.4
Hasil Pengujian Algoritma ke-
5……….
92
BAB 5 KESIMPULAN DAN SARAN
5.1
Kesimpulan………... 96
5.2
Sa
ran……….
96
DAFTA
R PUSTAKA………
98
LAMPIRAN
–
A Foto Robot Beroda
LAMPIRAN
–
B Program pada Pengontrol Mikro ATmega128
LAMPIRAN
–
C Datasheet
(9)
ix
Universitas Kristen Maranatha
DAFTAR TABEL
Halaman
Tabel 2.1
Fungsi Khusus Port B………...
26
Tabel 2.2
Fungsi Khusus Port C………...
26
Tabel 2.3
Fungsi Khusus Port D………...
27
Tabel 2.4
Fungsi Khusus Port E………...
27
Tabel 2.5
Fungsi Khusus Port G………...
28
Tabel 3.1
Tabel Kebenaran
Driver Motor LMD 18200………
38
Tabel 4.1
Tabel Penguk
uran Sensor Warna………..
51
Tabel 4.2
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-1 untuk
Ruang 1……….
53
Tabel 4.3
Hasil Percobaan ke-1 R
obot Mengelilingi Ruang 1……….
54
Tabel 4.4
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-2 untuk
Ruang 1
……….
55
Tabel 4.5
Hasil Percobaan ke-2 Robot
Mengelilingi Ruang 1……….
56
Tabel 4.6
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-1 untuk
Ruang 2
……….
57
Tabel 4.7
Hasil Percobaan ke-1 R
obot Mengelilingi Ruang 2……….
58
Tabel 4.8
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-2 untuk
Ruang 2
……….
59
Tabel 4.9
Hasil Percobaan ke-2 R
obot Mengelilingi Ruang 2……….
60
Tabel 4.10
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-1 untuk
Ruang 3……….
61
Tabel 4.11
Hasil Percobaan ke-1 Robot Mengelili
ngi Ruang 3……….
62
Tabel 4.12
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-2 untuk
Ruang 3……….
63
Tabel 4.13
Hasil Percobaan ke-2 R
obot Mengelilingi Ruang 3……….
63
Tabel 4.14
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-1 untuk
Ruang 4……….
65
(10)
x
Universitas Kristen Maranatha
Tabel 4.16
Tabel Nilai Sensor dan Kecepatan Motor Percobaan ke-2 untuk
Ruang 4……….
66
Tabel 4.17
Hasil Percobaan ke-2 Robot Mengelilingi R
uang 4……….
67
Tabel 4.18
Hasil Percobaan ke-1 Robot
Start
di Ruang 1………..
68
Tabel 4.19
Hasil Percobaan ke-2 Robot
Start
di Ruang 1………..
69
Tabel 4.20
Hasil Percobaan ke-1 Robot
Start
di Ruang 2………..
70
Tabel 4.21
Hasil Percobaan ke-2 Robot
Start
di
Ruang 2………..
71
Tabel 4.22
Hasil Percobaan ke-1 Robot
Start
di Ruang 3………..
72
Tabel 4.23
Hasil Percobaan ke-2 Robot
Start
di Ruang 3………..
73
Tabel 4.24
Hasil Percobaan ke-1 Robot
Start
di Ruang 4………..
74
Tabel 4.25
Hasil Percobaan ke-2 Robot
Start
di Ruang 4………..
75
Tabel 4.26
Hasil Percobaan Robo
t Memadamkan Api di Ruang 1……
76
Tabel 4.27
Hasil Percobaan Robo
t Memadamkan Api di Ruang 2……
77
Tabel 4.28
Hasil Percobaan Robot Memadamkan Api
di Ruang 3……
80
Tabel 4.29
Hasil Percobaan Robot
Memadamkan Api di Ruang 4……
81
Tabel 4.30
Hasil Percobaan Robot Mengelilingi Seluruh Ruang……..
.
83
Tabel 4.31
Hasil Pengujian Algoritma ke-2 untuk Setiap Ruang...
84
Tabel 4.32
Hasil Pengujian Algoritma ke-3 untuk Setiap Ruang...
87
Tabel 4.33
Hasil Pengujian Algoritma ke-4 untuk Setiap Ruang...
90
(11)
xi
Universitas Kristen Maranatha
DAFTAR GAMBAR
Halaman
Gambar 1.1
Arena
Lapangan………
3
Gambar 2.1
Bentuk dan Ukuran Lapangan/Arena Divisi Beroda dan Berkaki (a.
tampak atas dan b. tampak samping, lapangan disanggah oleh
empat buah roda)………..
7
Gambar 2.2
Bentuk dan Ukuran Garis Putih Pintu………..
7
Gambar 2.3
Empat kemungkinan model konfigurasi pintu pada
mode Variable
Door Location
………...
8
Gambar 2.4
Bentuk dan Posisi Karpet……….
9
Gambar 2.5
Bentuk dan Ukuran
Home
………
9
Gambar 2.6
Mode Non-Arbitary Start
(gambar kiri).
Mode Arbitary Start
(gambar kanan)………..
10
Gambar 2.7
Bentuk dan Ukuran Lilin………..
10
Gambar 2.8
Bentuk dan Ukuran Alas Lilin………..
11
Gambar 2.9
Tiga Bentuk Alas Lilin………..
11
Gambar 2.10 Bentuk dan Ukuran
Furniture
………..
12
Gambar 2.11 Bentuk dan Ukuran
Sound Damper
……….
13
Gambar 2.12
Bentuk dan Ukuran Cermin………..
13
Gambar 2.13 Bentuk dan Ukuran
Uneven Floor
………...
14
Gambar 2.14
Right-Hand Rule
………...
15
Gambar 2.15 Sistem Gerak
Differential Drive
………...
15
Gambar 2.16 a.Sistem Gerak
Tricycle Drive
dan b. Kendaraan dengan Sistem
Gerak
Tricycle Drive
...
16
Gambar 2.17 Sistem Gerak
Synchronous Drive
……….
17
Gambar 2.18 Robot dengan 3 roda
omni-directional
……….
17
Gambar 2.19 Sistem Gerak
Holomonic Drive
………
17
Gambar 2.20 Koneksi Pin SRF05 (a.
Mode
1 dan b.
Mode
2)
…………...
19
Gambar 2.21 Diagram Waktu Sensor SRF05 (a.
Mode
1 dan b.
Mode
2).
20
Gambar 2.22 Sensor
Api
(a.
UVTron
R2868
dan
b.
Rangkaian
Pengaktif)
……….
20
(12)
xii
Universitas Kristen Maranatha
Gambar 2.23
Spektrum
Respon UVTron………...
21
Gambar 2.24
Derajat Sensitivitas Hamamtasu R2868………
21
Gambar 2.25 Sensor Warna (a. Bentuk Sensor TCRT5000 dan b. Koneksi Pin
ZX-03)... 23
Gambar 2.26 Konfigurasi Pin ATmega
128………...
25
Gambar 2.27 Diagram Blok ATmega
128………..
29
Gambar 3.1
Diagram Blok Sistem Robot Beroda
………..………..
31
Gambar 3.2
Dimensi Robot Beroda Pemadam Api
………..
32
Gambar 3.3
Posisi Penempatan Sensor-sensor pada Robot Beroda Pemadam
Api
………
33
Gambar 3.4
Rangkaian Pemutar Kipas………
34
Gamabr 3.5
Alokasi Pin Sensor SRF05………...
35
Gambar 3.6
Diagram Alir P
enggunaan Sensor SRF05………
36
Gambar 3.7
Alokasi Pin UVTron Hamamatsu……….
37
Gambar 3.8
Alokasi
Pin Sensor Warna………
37
Gambar 3.9
Rangkaian Motor
Driver
………...
38
Gambar 3.10
Board
Soket ATmega
128………
39
Gambar 3.11 Skematik
Pengontrol Mikro……….
40
Gambar 3.12 Keseluruhan
Diagram Alir Algoritma Pemrograman pada ATmega
128...
42
Gamabr 3.13 Diagram Alir Algoritma Pemrograman untuk Navigasi Utama
Kiri………....
45
Gambar 3.14 Diagram Alir Algoritma Pemrograman untuk Mencari Posisi
Ruang 4
……….
46
Gambar 3.15 Diagram Alir Algoritma Pemrograman untuk Navigasi Utama
Kanan………
47
Gambar 3.16 Diagram Alir Algoritma Pemprograman untuk Kembali ke Posisi
Home
……….
48
Gambar 3.17 Diagram Alir Algoritma Pemrograman untuk Pemadaman
Ap
i……….
50
Gambar 4.1
Ruang 1 dengan Tiga Macam Konfigurasi
Furniture
(a.
Konfigurasi 1, b. Konfigura
si 2, dan c. Konfigurasi 3)……
53
(13)
xiii
Universitas Kristen Maranatha
Gambar 4.2
Ruang 2 dengan Tiga Macam Konfigurasi
Furniture
(a.
Konfigurasi 1, b. Konfigurasi 2, dan c.
Konfigurasi 3)……
57
Gambar 4.3
Ruang 3 dengan Dua Macam Konfigurasi
Furniture
(a. Konfigurasi
1 dan b.
Konfigurasi 2)……….
61
Gambar 4.4
Ruang 4 dengan Dua Macam Konfigurasi
Furniture
(a. Konfigurasi
1 dan b.
Konfigurasi 2)……….
64
Gamabr 4.5
Ruang 1 dengan Dua Macam Konfigurasi Posisi
Start
(a.
Konfigurasi 1 da
n b. Konfigurasi 2)……….
68
Gambar 4.6
Ruang 2 dengan Dua Macam Konfigurasi Posisi
Start
(a.
Konfigurasi 1 da
n b. Konfigurasi 2)……….
70
Gambar 4.7
Ruang 3 dengan Dua Macam Konfigurasi Posisi
Start
(a.
Konfigurasi 1 da
n b. Konfigurasi 2)……….
72
Gambar 4.8
Ruang 4 dengan Dua Macam Konfigurasi Posisi
Start
(a.
Konfigurasi 1 da
n b. Konfigurasi 2)……….
74
Gambar 4.9
Ruang 1 dengan Dua Macam Konfigurasi Api Lilin (a. Konfigurasi
1 dan b. Konfigurasi 2)……….
76
Gambar 4.10 Ruang 2 dengan Tiga Macam Konfigurasi Api Lilin (a. Konfigurasi
1, b. Konfigurasi 2,
dan c. Konfigurasi 3)………
77
Gambar 4.11 Ruang 3 dengan Tiga Macam Konfigurasi Api Lilin (a. Konfigurasi
1, b. Konfigurasi 2, dan c. Konfigurasi 3)
………
79
Gambar 4.12 Ruang 4 dengan Tiga Macam Konfigurasi Api Lilin (a. Konfigurasi
1, b. Konfigurasi 2,
dan c. Konfigurasi 3)………
81
Gambar 4.13 Konfigurasi Lapangan untuk Pengujian Robot Mengelilingi
Seluruh Ruang...
82
(14)
LAMPIRAN A
(15)
A-1
TAMPAK DEPAN
(16)
A-2
TAMPAK SAMPING KIRI
(17)
A-3
(18)
LAMPIRAN B
PROGRAM PADA PENGONTROL MIKRO
ATMEGA 128
(19)
B-1
PROGRAM UTAMA/***************************************************** This program was produced by the
CodeWizardAVR V1.25.3 Standard Automatic Program Generator
© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com
Project : Version :
Date : 03/05/2011
Author : F4CG Company : F4CG Comments:
Chip type : ATmega128 Program type : Application Clock frequency : 11,059200 MHz Memory model : Small
External SRAM size : 0 Data Stack size : 1024
*****************************************************/
#include <mega128.h> #include <delay.h> #include <stdio.h>
// Alphanumeric LCD Module functions #asm
.equ __lcd_port=0x15 ;PORTC #endasm
#include <lcd.h>
#define ADC_VREF_TYPE 0x00
// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input) {
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10; return ADCW; }
// Declare your global variables here
unsigned int
R4,R4_2,a,b,c,d,e,f,g,i,j,k,l,o,z,x,xa,xb,xc,xd,xe,xf,xg,q,r,h,counter,adc,adc_1,s1,sensor_7,c1,bm,GakBisaKel uar,counter_GakBisaKeluar,GakBisaKeluarDeui;
unsigned char text[32];
void aktif() { ulang: if(PINE.0==0){ goto lanjut; }
(20)
B-2
if(PINA.0==1 & PINA.1==0 & PINA.2==0) {
while(PINA.0==1 & PINA.1==0 & PINA.2==0){delay_us(2);} }
else {
goto ulang; }
if(PINA.0==0 & PINA.1==1 & PINA.2==0) {
while(PINA.0==0 & PINA.1==1 & PINA.2==0) {delay_us(2);} if(PINA.0==1 & PINA.1==1 & PINA.2==0)
{ { goto lanjut; } } else { goto ulang; } } else { goto ulang; } lanjut: } void set_servo() { PORTE.4=1; delay_us(1780); PORTE.4=0; delay_us(18020); } void ikut_kanan() { while (1) { start_2:
sensor0(); // x sensor1(); // xa sensor2(); // xb sensor3(); // xc sensor5(); // xe
if(xb==10){o=210;} else if(xb==9){o=200;} else if(xb>=10){o=180;} else if(xc==7){o=210;} else if(xc==8){o=200;} else if(xc>=9){o=180;}
if(PINE.3==1) //Uv tron off {
GakBisaKeluar=0; bm=0;
(21)
B-3
if(x>10) //wall kanan {
if(xe>10 && xc>18) { kanan(); OCR1A=255; OCR1B=40; delay_ms(100); } else if(xb<10) { kanan_doank(); OCR1A=o; OCR1B=o; } else if(xc<8) { kiri_doank(); OCR1A=o; OCR1B=o; } else if(xa<=4){ kiri(); OCR1A=100; OCR1B=100; } else { maju(); OCR1A=165; OCR1B=165; } } else { kiri(); OCR1A=210; OCR1B=210; }
if(k==2 && xc>25 && xe>25) {
h=1; }
if(read_adc(1)<150 && read_adc(0)<70 && k==2) //balik home ITEM {
r=1; }
if(h==1 && r==1 && read_adc(1)>=500 && read_adc(0)>=350 && k==2) //home??? { brenti(); OCR1A=255; OCR1B=255; lcd_clear(); lcd_gotoxy(0,0);
lcd_putsf(" AKU WIS TEKAN"); lcd_gotoxy(0,1);
lcd_putsf(" OMAH NDES..!"); PORTB.7=1;
servo_on(); delay_ms(3000);
(22)
B-4
brenti(); OCR1A=255; OCR1B=255; lcd_clear(); lcd_gotoxy(0,0);lcd_putsf(" AKU WIS TEKAN"); lcd_gotoxy(0,1);
lcd_putsf(" OMAH NDES..!"); servo_on();
delay_ms(7000); }
if(read_adc(0)<=200 && read_adc(0)>=100 && read_adc(1)<=270 && read_adc(1)>=180 && h==1){ // ABU
break; }
if(read_adc(1)>=500) // PUTIH {
s1=1; }
if(s1==1 && read_adc(1)<150 && k!=2){ // ITEM counter_GakBisaKeluar = counter_GakBisaKeluar+1;
s1 = 0; } if(k==2){
counter_GakBisaKeluar=0; }
if(counter_GakBisaKeluar>=1) //lorong {
adc=read_adc(0); adc_1=read_adc(1); sensor7();
sensor6();
if((adc<=200 && adc>=100) && (adc_1<=270 && adc_1>=180) //blkg && dpn abu {
if(xg<=10 && xg>=5){
if(xf<=10 && xf>=5){ c1=1;
delay_ms(5); }
else goto start_2; }
else goto start_2; }
else goto start_2; }
if(counter_GakBisaKeluar>=1 && c1==1 && GakBisaKeluar>=3) {
adc=read_adc(0); adc_1=read_adc(1); sensor7();
sensor6();
if((adc<=200 && adc>=100) && (adc_1<=270 && adc_1>=180)) {
if(xg<=10 && xg>=5){
if(xf<=10 && xf>=5){
GakBisaKeluar=0; break;
(23)
B-5
}
else goto start_2; }
else goto start_2; }
else goto start_2; } GakBisaKeluarDeui=0; while(PINE.6==0){ GakBisaKeluar=0; GakBisaKeluarDeui=GakBisaKeluarDeui+1; lcd_gotoxy(0,0); lcd_clear(); sprintf(text,"%d",GakBisaKeluarDeui); lcd_puts(text); delay_ms(500); while(GakBisaKeluarDeui>=3){ mundur(); OCR1A=255; OCR1B=255; delay_ms(1000); break; GakBisaKeluarDeui=0; } } }
else //ada api {
if(read_adc(1)<500) // ABU PALING BESAR, putih paling kcl {
if(x>10) //wall kanan {
if(xe>10 && xc>18) { kanan(); OCR1A=255; OCR1B=40; delay_ms(100); } else if(xb<10) { kanan_doank(); OCR1A=o; OCR1B=o; } else if(xc<8) { kiri_doank(); OCR1A=o; OCR1B=o; } else if(xa<=4){ kiri(); OCR1A=100; OCR1B=100; } else { maju(); OCR1A=150; OCR1B=150; }
(24)
B-6
} else { kiri(); OCR1A=210; OCR1B=210; } } else { maju(); OCR1A=255; OCR1B=255; k=1; delay_ms(100); }if(read_adc(1)>500 && k==1) //msh putih { brenti(); OCR1A=255; OCR1B=255; PORTB.7=1; servo_on(); k=2; bm=1; }
if(read_adc(1)>500 && k==1 && bm==2) // { brenti(); OCR1A=255; OCR1B=255; PORTB.7=1; servo_on(); k=2; bm=1; } if(bm==1){ kiri_mundur(); OCR1A=130; OCR1B=130; delay_ms(250); bm=2; } } }; } void main(void) {
// Declare your local variables here
// Input/Output Ports initialization // Port A initialization
// Func7=In Func6=Out Func5=Out Func4=Out Func3=Out Func2=In Func1=In Func0=In // State7=T State6=0 State5=0 State4=0 State3=0 State2=T State1=T State0=T
PORTA=0x00; DDRA=0x78;
// Port B initialization
// Func7=Out Func6=Out Func5=Out Func4=In Func3=In Func2=In Func1=In Func0=In // State7=0 State6=0 State5=0 State4=T State3=T State2=T State1=T State0=T
(25)
B-7
DDRB=0xE0;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;
DDRD=0x00;
// Port E initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=P State5=T State4=T State3=T State2=T State1=T State0=P PORTE=0x41;
DDRE=0x00;
// Port F initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTF=0x00;
DDRF=0x00;
// Port G initialization
// Func4=In Func3=In Func2=In Func1=In Func0=In // State4=T State3=T State2=T State1=T State0=T PORTG=0x00;
DDRG=0x00;
// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected ASSR=0x00;
TCCR0=0x00; TCNT0=0x00; OCR0=0x00;
// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 10.800 kHz
// Mode: Ph. correct PWM top=00FFh // OC1A output: Non-Inv.
// OC1B output: Non-Inv. // OC1C output: Discon. // Noise Canceler: Off
// Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR1A=0xA1; TCCR1B=0x05; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00;
(26)
B-8
OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; OCR1CH=0x00; OCR1CL=0x00;// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected TCCR2=0x00;
TCNT2=0x00; OCR2=0x00;
// Timer/Counter 3 initialization // Clock source: System Clock // Clock value: Timer3 Stopped // Mode: Normal top=FFFFh // OC3A output: Discon. // OC3B output: Discon. // OC3C output: Discon. // Noise Canceler: Off
// Input Capture on Falling Edge // Timer3 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR3A=0x00; TCCR3B=0x00; TCNT3H=0x00; TCNT3L=0x00; ICR3H=0x00; ICR3L=0x00; OCR3AH=0x00; OCR3AL=0x00; OCR3BH=0x00; OCR3BL=0x00; OCR3CH=0x00; OCR3CL=0x00;
// External Interrupt(s) initialization // INT0: Off
// INT1: Off // INT2: Off // INT3: Off // INT4: Off // INT5: Off // INT6: Off // INT7: Off EICRA=0x00; EICRB=0x00; EIMSK=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;
ETIMSK=0x00;
// Analog Comparator initialization // Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;
(27)
B-9
// ADC initialization
// ADC Clock frequency: 691,200 kHz // ADC Voltage Reference: AREF pin ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x84;
// LCD module initialization lcd_init(16); aktif(); k=0; GakBisaKeluar=0; GakBisaKeluarDeui=0; while (1) { start:
//================================= RUNING =============================== //*
sensor0(); // x sensor2(); // xb sensor3(); // xc sensor4(); // xd
if(xb==11){o=200;} else if(xb==12){o=190;} else if(xb>=13){o=170;} else if(xc==11){o=220;} else if(xc==12){o=220;} else if(xc>=13){o=190;}
if(PINE.3==1) //uv'tron off {
bm=0; PORTB.7=0; if(x>20) {
if(xd>15 && xb>17) { kiri(); OCR1A=35; OCR1B=250; delay_ms(100); } else if(xc<13) { kiri_doank(); OCR1A=o; OCR1B=o; } else if(xb<6) { kanan_doank();
(28)
B-10
OCR1A=o; OCR1B=o; } else { maju(); OCR1A=140; OCR1B=140; } } else if(20>x>14) {if(xd>15 && xb>17) { kiri(); OCR1A=35; OCR1B=250; delay_ms(100); } else if(xc<13) { kiri_doank(); OCR1A=o; OCR1B=o; } else if(xb<6) { kanan_doank(); OCR1A=o; OCR1B=o; } else { maju(); OCR1A=50; OCR1B=50; } } else if(14>x>2) {
if(xd>15 && xb>17) { kiri(); OCR1A=35; OCR1B=250; delay_ms(100); } else if(xc<13) { kiri_doank(); OCR1A=o; OCR1B=o; } else if(xb<6) { kanan_doank(); OCR1A=100; OCR1B=100; } else { maju(); OCR1A=30; OCR1B=30;
(29)
B-11
} } else { kanan(); OCR1A=250; OCR1B=250; }if(read_adc(1)>=500) // baca garis putih {
s1=1; }
if(s1==1 && read_adc(1)<150 && k!=2){ // item gra2 abis kena garis counter = counter+1;
lcd_clear();
sprintf(text,"%d",counter); lcd_puts(text);
s1 = 0; } if(k==2) { counter=0; }
if(counter>=3) //lorong {
adc=read_adc(0); adc_1=read_adc(1); sensor7();
sensor6();
if((adc<=200 && adc>=100) && (adc_1<=270 && adc_1>=180)) //blkg && dpn ( abu-abu)
{ if(xg<=10 && xg>=2)
{ if(xf<=10 && xf>=2)
{
c1=1; delay_ms(5); }
else goto start;
} else goto start;
}
else goto start; }
if((counter>=3 && c1==1)) {
adc=read_adc(0); adc_1=read_adc(1); sensor7();
sensor6();
if((adc<=200 && adc>=100) && (adc_1<=270 && adc_1>=180)) //ABU {
if(xg<=10 && xg>=2)
{ if(xf<=10 && xf>=2)
{ ikut_kanan();
(30)
B-12
OCR1A=255; OCR1B=255; c1=0;
}
else goto start; }
else goto start; }
else goto start; }
if(k==2 && xb>25 && xd>25) {
h=1; }
if(read_adc(1)<150 && read_adc(0)<70 && k==2) // Item boy {
r=1; }
if(h==1 && r==1 && read_adc(1)>=500 && read_adc(0)>=350) // balik home PUTIH { brenti(); OCR1A=255; OCR1B=255; lcd_clear(); lcd_gotoxy(0,0);
lcd_putsf(" AKU WIS TEKAN"); lcd_gotoxy(0,1);
lcd_putsf(" OMAH NDES..!"); PORTB.7=1; servo_on(); delay_ms(3000); brenti(); OCR1A=255; OCR1B=255; lcd_clear(); lcd_gotoxy(0,0);
lcd_putsf(" AKU WIS TEKAN"); lcd_gotoxy(0,1);
lcd_putsf(" OMAH NDES..!"); servo_on(); delay_ms(7000); } GakBisaKeluar=0; while(PINE.6==0){ GakBisaKeluarDeui=0; GakBisaKeluar=GakBisaKeluar+1; delay_ms(500); lcd_gotoxy(0,0); lcd_clear(); sprintf(text,"%d",GakBisaKeluar); lcd_puts(text);
while(GakBisaKeluar >= 3){ mundur(); OCR1A=255; OCR1B=255; delay_ms(1000); ikut_kanan(); GakBisaKeluar=0; }
(31)
B-13
} }
else //ada api {
if(read_adc(1)<500)// || PINE.2==0) //infra red off putih paling kcl, abu paling besar {
if(x>20) {
if(xd>25 && xb>25) { kiri(); OCR1A=40; OCR1B=255; delay_ms(100); } else if(xc<15) { kiri_doank(); OCR1A=230; OCR1B=230; } else if(xb<5) { kanan_doank(); OCR1A=230; OCR1B=230; } else { maju(); OCR1A=50; OCR1B=50; } } else if(20>x>14)
{if(xd>25 && xb>25) { kiri(); OCR1A=40; OCR1B=255; delay_ms(100); } else if(xc<15) { kiri_doank(); OCR1A=230; OCR1B=230; } else if(xb<5) { kanan_doank(); OCR1A=230; OCR1B=230; } else { maju(); OCR1A=30; OCR1B=30; }
(32)
B-14
}
else if(14>x>4) {
if(xd>25 && xb>25) { kiri(); OCR1A=40; OCR1B=255; delay_ms(100); } else if(xc<15) { kiri_doank(); OCR1A=100; OCR1B=100; } else if(xb<5) { kanan_doank(); OCR1A=100; OCR1B=100; } else { maju(); OCR1A=30; OCR1B=30; } } else { kanan(); OCR1A=170; OCR1B=170; } }
else //infrared on warna putih { maju(); OCR1A=255; OCR1B=255; k=1; delay_ms(100); }
if(read_adc(1)>500 && k==1) // Baca GAris putih, NEMU API { brenti(); OCR1A=255; OCR1B=255; PORTB.7=1; servo_on(); k=2; bm=1; }
if(read_adc(1)>500 && k==1 && bm==2) // Detect API, baca PUTIH { brenti(); OCR1A=255; OCR1B=255; PORTB.7=1; servo_on(); k=2;
(33)
B-15
bm=1; }
if(bm==1) //muter kiri {
kiri_mundur(); OCR1A=130; OCR1B=130; delay_ms(250); bm=2; } } }; }
(34)
B-16
SUBPROGRAM PENGGUNAAN SENSOR SRF05void sensor0() { a=0; DDRD.0=1; PORTD.0=1; delay_us(15); DDRD.0=0; PORTD.0=0; delay_us(750); while(PIND.0==0) { delay_us(1); } while(PIND.0==1) { a++; delay_us(1); } x=(a/29.034); } void sensor1() { b=0; DDRD.1=1; PORTD.1=1; delay_us(15); DDRD.1=0; PORTD.1=0; delay_us(750); while(PIND.1==0) { delay_us(1); } while(PIND.1==1) { b++; delay_us(1); } xa=(b/29.034); } void sensor2() { c=0; DDRD.2=1; PORTD.2=1; delay_us(15); DDRD.2=0; PORTD.2=0; delay_us(750); while(PIND.2==0) { delay_us(1); } while(PIND.2==1) { c++; delay_us(1); } xb=(c/29.034); }
(35)
B-17
void sensor3() { d=0; DDRD.3=1; PORTD.3=1; delay_us(15); DDRD.3=0; PORTD.3=0; delay_us(750); while(PIND.3==0) { delay_us(1); } while(PIND.3==1) { d++; delay_us(1); } xc=(d/29.034); } void sensor4() { e=0; DDRD.4=1; PORTD.4=1; delay_us(15); DDRD.4=0; PORTD.4=0; delay_us(750); while(PIND.4==0) { delay_us(1); } while(PIND.4==1) { e++; delay_us(1); } xd=(e/29.034); } void sensor5() { f=0; DDRD.5=1; PORTD.5=1; delay_us(15); DDRD.5=0; PORTD.5=0; delay_us(750); while(PIND.5==0) { delay_us(1); } while(PIND.5==1) { f++; delay_us(1); } xe=(f/29.034); }(36)
B-18
void sensor6() { g=0; DDRD.6=1; PORTD.6=1; delay_us(15); DDRD.6=0; PORTD.6=0; delay_us(750); while(PIND.6==0) { delay_us(1); } while(PIND.6==1) { g++; delay_us(1); } xf=(g/29.034); } void sensor7() { sensor_7=0; DDRD.7=1; PORTD.7=1; delay_us(15); DDRD.7=0; PORTD.7=0; delay_us(750); while(PIND.7==0) { delay_us(1); } while(PIND.7==1) { sensor_7++; delay_us(1); } xg=(sensor_7/29.034); }(37)
B-19
SUBPROGRAM MENJALANKAN SERVOvoid servo_on() {
for(k=60;k>0;k--) {
for(j=0;j<3;j++) //lama pengulangan silkus on yg sama { PORTE.4=1; delay_us(1400); for(i=0;i<k;i++){delay_us(10);}; PORTE.4=0; delay_us(18300); } } for(k=0;k<60;k++) {
for(j=0;j<3;j++) //lama pengulangan silkus on yg sama { PORTE.4=1; delay_us(1400); for(i=0;i<k;i++){delay_us(10);}; PORTE.4=0; delay_us(18300); } } }
SUBPROGRAM MENJALANKAN RODA ROBOT
void maju() {
PORTA.3=0; //motor kiri PORTA.4=0;
PORTA.5=1; //motor kanan PORTA.6=0; } void kanan() { PORTA.3=0; PORTA.4=0; PORTA.5=0; PORTA.6=0; } void kiri() { PORTA.3=1; PORTA.4=0; PORTA.5=1; PORTA.6=0; } void kanan_doank() { PORTA.3=0; PORTA.4=0; PORTA.5=1; PORTA.6=1; }
(38)
B-20
void kiri_doank() {
PORTA.3=1; PORTA.4=1; PORTA.5=1; PORTA.6=0; }
void mundur() {
PORTA.3=1; PORTA.4=0; PORTA.5=0; PORTA.6=0; }
void brenti() {
PORTA.3=1; PORTA.4=1; PORTA.5=1; PORTA.6=1; }
void kiri_mundur() {
PORTA.3=1; PORTA.4=0; PORTA.5=1; PORTA.6=1; }
void kanan_mundur() {
PORTA.3=1; PORTA.4=1; PORTA.5=0; PORTA.6=0; }
(39)
LAMPIRAN C
DATASHEET
Sensor Ultrasoni
k (SRF05)………...
C-1
Sensor Api (UVTron)……… C-4
Modul
C3704………..
C-6
(40)
(41)
(42)
(43)
(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
(52)
(53)
(54)
1
Universitas Kristen Maranatha
BAB 1
PENDAHULUAN
Pada bab ini berisi tentang latar belakang, identifikasi masalah, perumusan
masalah, tujuan, pembatasan masalah, dan sistematika penulisan laporan tugas
akhir.
1.1
Latar Belakang
Akhir-akhir ini banyak diselenggarakan kompetisi
robotic
yang bertujuan
untuk menumbuh kembangkan ilmu pengetahuan dan teknologi. Kontes Robot
Cerdas Indonesia (KRCI) merupakan sebuah kompetisi robot yang diadakan
setiap tahun oleh Direktorat Jenderal Pendidikan Tinggi (dikti). Dari tahun ke
tahun, KRCI mengalami perubahan dalam hal tingkat kesulitan yang harus diatasi
oleh robot.
Dengan makin sulitnya serta ketatnya persaingan dalam KRCI khususnya
pada kategori divisi beroda, maka diperlukan adanya perubahan pada desain serta
sistem elektronik robot agar meningkatkan daya saing robot. Untuk itu dibuatlah
sebuah robot beroda dengan dimensi yang lebih kecil dari sebelumnya. Desain
robot yang kecil ini didukung oleh penggunaan ATmega 128 yang berukuran kecil
tetapi mempunyai kemampuan yang lebih jika dibandingkan dengan ATmega 16
atau 32. ATmega 128 menyediakan pin input dan output yang lebih banyak
dibandingkan dengan ATmega 16 dan 32. Dengan menggunakan ATmega 128 ini,
pengontrol mikro bisa dibuat dalam ukuran yang lebih kecil. Sensor PING yang
hanya mampu membaca jarak hingga 3m diganti dengan sensor SFR05 yang
mampu membaca hingga 4m.
Perancanganan robot beroda pada kompetisi KRCI divisi beroda tahun ini
bertujuan agar robot yang dirancang dapat bergerak lebih cepat dan dapat
menghindari halangan yang ada dengan lebih mudah. Untuk itu, ukuran robot
dibuat lebih kecil dari robot KRCI beroda tahun lalu. Motor servo diubah menjadi
motor DC sehingga robot dapat bergerak lebih cepat. Diharapkan robot dapat
menyelesaikan lomba dengan mengitari
maze
, mencari api, memadamkan api, dan
(55)
2
Universitas Kristen Maranatha
yang diperoleh pun akan semakin baik, dan memperbesar peluang memenangkan
kompetisi tersebut.
1.2
Identifikasi Masalah
Robot melalui medan yang berubah-ubah pada saat melakukan tugasnya,
sehingga diperlukan robot beroda yang berukuran kecil, juga dapat bergerak
lincah, dan cepat dalam mencari dan memadamkan api lilin.
1.3
Perumusan Masalah
Masalah dalam Tugas Akhir ini adalah :
1.
Bagaimana menghasilkan gerakan dasar robot beroda yang dapat bermanuver
dalam
maze
dengan kecepatan maksimum 70cm/s, tidak menabrak dinding,
menghindari rintangan (
furniture
), tidak terganggu oleh
sound damper
, dan
cermin?
2.
Bagaimana robot beroda dapat mencari keberadaan api menggunakan sensor
UVTron dan memadamkannya dalam KRCI 2011?
1.4
Tujuan
Tugas Akhir ini bertujuan untuk :
Merealisasikan sebuah robot beroda untuk KRCI 2011 bagian struktur, cara
bergerak, mencari dan memadamkan api.
1.5
Pembatasan Masalah
Pada penelitian ini, masalah yang akan diteliti dibatasi pada:
1.
Aturan dan kelengkapan
maze
yang digunakan mengacu pada ketentuan lomba
KRCI 2011 divisi beroda yang meliputi:
a.
Robot bernavigasi dalam sebuah
maze
yang terdiri dari 4 buah ruang dan
koridor antar ruang dengan dimensi maksimum
maze
248 cm x 248 cm x
(56)
3
Universitas Kristen Maranatha
Gambar 1.1
Arena Lapangan
b.
Lantai
maze
adalah datar bila di atasnya tidak terdapat
uneven floor
dan
karpet. Lantai berwana hitam dop (R:0, G:0, B:0), kecuali yang tertutup
karpet, dan terdapat beberapa
uneven floor
berupa limas segitiga tidak
beraturan dengan ketinggian maksimal 5 cm dari lantai pada beberapa
bagian koridor
maze
.
c.
Ketinggian lilin berkisar antara 15
–
20 cm dari lantai
maze
dan pada
radius 30 cm di sekitar lilin terdapat alas berwarna putih.
d.
Di setiap ruangan dalam
maze
terdapat rintangan berupa silinder berbahan
pipa paralon PVC yang diisi dengan semen dengan diameter 11 cm dan
ketinggian 30 cm.
e.
Posisi pintu yang dapat berubah-ubah.
f.
Sound damper
dan cermin masing-masing berjumlah 4 buah dan
diletakkan secara acak pada tempat-tempat tertentu di dinding.
2.
Algoritma pemrograman robot hanya dapat digunakan untuk robot beroda saja.
1.6
Sistematika Penulisan
Laporan Tugas Akhir ini disusun menjadi lima bab, berikut adalah
sistematika penulisan pada laporan ini.
(57)
4
Universitas Kristen Maranatha
BAB I PENDAHULUAN
Pada bab ini berisi tentang latar belakang, identifikasi masalah, perumusan
masalah, tujuan, pembatasan masalah, dan sistematika penulisan laporan tugas
akhir.
BAB II LANDASAN TEORI
Bab ini menjelaskan mengenai teori-teori penunjang yang diperlukan dalam
penyusunan laporan Tugas Akhir, yaitu berupa teori tentang robotika, pengontrol
mikro ATmega 128, sensor-sensor, dan motor DC.
BAB III PERANCANGAN DAN REALISASI
Bab ini menjelaskan tentang perancangan dan realisasi sistem robot beroda
pemadam api, rangkaian sensor dan pengontrol mikro, diagram blok sistem, serta
algoritma pemrograman robot beroda pemadam api.
BAB IV ANALISA DAN DATA PENGAMATAN
Bab ini menjelaskan tentang proses pengambilan data pengamatan, pengujian
kemampuan robot beroda pemadam api dalam menjalankan tugasnya, dan
analisisnya.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang perlu dilakukan
untuk perbaikan di masa mendatang.
(58)
96
Universitas Kristen Maranatha
BAB 5
KESIMPULAN DAN SARAN
Pada bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang perlu
dilakukan untuk perbaikan di masa mendatang.
5.1
Kesimpulan
Dengan memperhatikan data pengamatan dan analisis pada bab sebelumnya,
dapat disimpulkan bahwa:
1.
Robot yang dibuat menyerupai sebuah mobil dengan menggunakan 1 buah
motor DC pada setiap roda dapat bernavigasi dan bermanuver dengan
menggunakan pengontrol mikro ATmega 128. Robot dapat bernavigasi
mengelilingi ruang 1, 2, 3, dan 4 dengan algoritma yang telah dibuat.
Penggunaan 1 buah motor DC pada setiap roda sangat membantu robot dalam
bernavigasi dan bermanuver untuk mengatasi gangguan-gangguan seperti
uneven floor
dan permukaan
maze
yang tidak rata.
2.
Secara keseluruhan pengujian robot mengelilingi ruang dengan menggunakan
algoritma ke-1 mempunyai tingkat keberhasilan 75.83%, algoritma ke-2
mempunyai tingkat keberhasilan 84%, algoritma ke-3 mempunyai tingkat
keberhasilan 92%, algoritma ke-4 mempunyai tingkat keberhasilan 96%, dan
algoritma ke-5 mempunyai tingkat keberhasilan 94%. Kegagalan dalam
bernavigasi disebabkan karena kesalahan sensor SRF05 dalam membaca
jarak sehingga robot tertahan oleh dinding dan
furniture
yang ada di dalam
ruang.
3.
Secara keseluruhan tingkat keberhasilan robot dalam memadamkan api
adalah 74,16%. Kegagalan dalam memadamkan api disebabkan karena posisi
robot yang berada dekat dengan dinding dan tidak tepat di depan api lilin.
5.2
Saran
Saran-saran yang dapat diberikan untuk perbaikan dan pengembangan dari
Tugas Akhir ini adalah sebagai berikut:
(59)
97
Universitas Kristen Maranatha
1.
Badan robot dibuat dalam bentuk bulat pada bagian depan dan belakangnya
(menyerupai bentuk
elips
) agar robot mudah meloloskan diri saat tersangkut.
2.
Mekanika robot terutama pada pemasangan sensor jarak ultrasonik, perlu
pengaturan jarak antar sensor sehingga robot dapat mengetahui seluruh
kondisi di depannya.
3.
Ban robot diganti dengan ban yang mempunyai lebar sekitar 1cm sehingga
robot dapat bermanuver dengan lebih baik dan bodi robot dibuat sedikit lebar
untuk emnjaga keseimbangan robot.
(60)
98
Universitas Kristen Maranatha
DAFTAR PUSTAKA
1.
Andrianto, H.,
Buku Panduan : Pelatihan Mikrokontroler AVR ATmega16
,
2008.
2.
Budiharto, W.,
Membuat Robot Cerdas
, Jakarta : Gramedia, 2006.
3.
Goris, Kristof. 2004. Autonomous Mobile Robot Mechanical Design.
Thesis
.
Vrije Universiteit Brussel.
4.
Pitowarno, E.,
Robotika Disain, Kontrol, Dan Kecerdasan Buatan
, Edisi
ke-1, Yogyakarta:Andi, 2006.
5.
Sigit,
Riyanto.
Robotika,
Sensor,
Dan
Aktuator
,
Edisi
ke-1,
Yogyakarta:Graha Ilmu, 2007.
6.
http://dikti.go.id/files/dp2m/Panduan%20KRCI%202011%20Beroda-Berkaki-Battle%20_Final.pdf
(12 Desember 2010)
7.
http://ocw.gunadarma.ac.id/course/computer-science-and-information/computer-system-s1/pengantar-robotika
(28 Januari 2010)
8.
http://www.astrolog.org/labyrnth/algritgm.htm
(19 Maret 2011)
9.
http://www.atmel.com/dyn/resources/prod_documents/doc2467.pdf
(4
Februari 2010)
10.
http://www.robokits.co.nz/ZX-03_IR_Sensor_Resource_Page
(12 Mei 2011)
11.
http://www.robot-electronics.co.uk/htm/srf05tech.html
(22 Februari 2010)
12.
http://www.robotstorehk.com/R2868.pdf
(25 Februari 2010)
(1)
2
yang diperoleh pun akan semakin baik, dan memperbesar peluang memenangkan kompetisi tersebut.
1.2 Identifikasi Masalah
Robot melalui medan yang berubah-ubah pada saat melakukan tugasnya, sehingga diperlukan robot beroda yang berukuran kecil, juga dapat bergerak lincah, dan cepat dalam mencari dan memadamkan api lilin.
1.3 Perumusan Masalah
Masalah dalam Tugas Akhir ini adalah :
1. Bagaimana menghasilkan gerakan dasar robot beroda yang dapat bermanuver dalam maze dengan kecepatan maksimum 70cm/s, tidak menabrak dinding, menghindari rintangan (furniture), tidak terganggu oleh sound damper, dan cermin?
2. Bagaimana robot beroda dapat mencari keberadaan api menggunakan sensor UVTron dan memadamkannya dalam KRCI 2011?
1.4 Tujuan
Tugas Akhir ini bertujuan untuk :
Merealisasikan sebuah robot beroda untuk KRCI 2011 bagian struktur, cara bergerak, mencari dan memadamkan api.
1.5 Pembatasan Masalah
Pada penelitian ini, masalah yang akan diteliti dibatasi pada:
1. Aturan dan kelengkapan maze yang digunakan mengacu pada ketentuan lomba KRCI 2011 divisi beroda yang meliputi:
a. Robot bernavigasi dalam sebuah maze yang terdiri dari 4 buah ruang dan koridor antar ruang dengan dimensi maksimum maze 248 cm x 248 cm x 30 cm seperti pada Gambar 1.1.
(2)
Universitas Kristen Maranatha Gambar 1.1 Arena Lapangan
b. Lantai maze adalah datar bila di atasnya tidak terdapat uneven floor dan karpet. Lantai berwana hitam dop (R:0, G:0, B:0), kecuali yang tertutup karpet, dan terdapat beberapa uneven floor berupa limas segitiga tidak beraturan dengan ketinggian maksimal 5 cm dari lantai pada beberapa bagian koridor maze.
c. Ketinggian lilin berkisar antara 15 – 20 cm dari lantai maze dan pada radius 30 cm di sekitar lilin terdapat alas berwarna putih.
d. Di setiap ruangan dalam maze terdapat rintangan berupa silinder berbahan pipa paralon PVC yang diisi dengan semen dengan diameter 11 cm dan ketinggian 30 cm.
e. Posisi pintu yang dapat berubah-ubah.
f. Sound damper dan cermin masing-masing berjumlah 4 buah dan diletakkan secara acak pada tempat-tempat tertentu di dinding.
2. Algoritma pemrograman robot hanya dapat digunakan untuk robot beroda saja.
1.6 Sistematika Penulisan
Laporan Tugas Akhir ini disusun menjadi lima bab, berikut adalah sistematika penulisan pada laporan ini.
(3)
4
BAB I PENDAHULUAN
Pada bab ini berisi tentang latar belakang, identifikasi masalah, perumusan masalah, tujuan, pembatasan masalah, dan sistematika penulisan laporan tugas akhir.
BAB II LANDASAN TEORI
Bab ini menjelaskan mengenai teori-teori penunjang yang diperlukan dalam penyusunan laporan Tugas Akhir, yaitu berupa teori tentang robotika, pengontrol mikro ATmega 128, sensor-sensor, dan motor DC.
BAB III PERANCANGAN DAN REALISASI
Bab ini menjelaskan tentang perancangan dan realisasi sistem robot beroda pemadam api, rangkaian sensor dan pengontrol mikro, diagram blok sistem, serta algoritma pemrograman robot beroda pemadam api.
BAB IV ANALISA DAN DATA PENGAMATAN
Bab ini menjelaskan tentang proses pengambilan data pengamatan, pengujian kemampuan robot beroda pemadam api dalam menjalankan tugasnya, dan analisisnya.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang perlu dilakukan untuk perbaikan di masa mendatang.
(4)
96
Universitas Kristen Maranatha
BAB 5
KESIMPULAN DAN SARAN
Pada bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang perlu dilakukan untuk perbaikan di masa mendatang.
5.1 Kesimpulan
Dengan memperhatikan data pengamatan dan analisis pada bab sebelumnya, dapat disimpulkan bahwa:
1. Robot yang dibuat menyerupai sebuah mobil dengan menggunakan 1 buah motor DC pada setiap roda dapat bernavigasi dan bermanuver dengan menggunakan pengontrol mikro ATmega 128. Robot dapat bernavigasi mengelilingi ruang 1, 2, 3, dan 4 dengan algoritma yang telah dibuat. Penggunaan 1 buah motor DC pada setiap roda sangat membantu robot dalam bernavigasi dan bermanuver untuk mengatasi gangguan-gangguan seperti
uneven floor dan permukaan maze yang tidak rata.
2. Secara keseluruhan pengujian robot mengelilingi ruang dengan menggunakan algoritma ke-1 mempunyai tingkat keberhasilan 75.83%, algoritma ke-2 mempunyai tingkat keberhasilan 84%, algoritma ke-3 mempunyai tingkat keberhasilan 92%, algoritma ke-4 mempunyai tingkat keberhasilan 96%, dan algoritma ke-5 mempunyai tingkat keberhasilan 94%. Kegagalan dalam bernavigasi disebabkan karena kesalahan sensor SRF05 dalam membaca jarak sehingga robot tertahan oleh dinding dan furniture yang ada di dalam ruang.
3. Secara keseluruhan tingkat keberhasilan robot dalam memadamkan api adalah 74,16%. Kegagalan dalam memadamkan api disebabkan karena posisi robot yang berada dekat dengan dinding dan tidak tepat di depan api lilin.
5.2 Saran
Saran-saran yang dapat diberikan untuk perbaikan dan pengembangan dari Tugas Akhir ini adalah sebagai berikut:
(5)
97
1. Badan robot dibuat dalam bentuk bulat pada bagian depan dan belakangnya (menyerupai bentuk elips) agar robot mudah meloloskan diri saat tersangkut. 2. Mekanika robot terutama pada pemasangan sensor jarak ultrasonik, perlu
pengaturan jarak antar sensor sehingga robot dapat mengetahui seluruh kondisi di depannya.
3. Ban robot diganti dengan ban yang mempunyai lebar sekitar 1cm sehingga robot dapat bermanuver dengan lebih baik dan bodi robot dibuat sedikit lebar untuk emnjaga keseimbangan robot.
(6)
98
Universitas Kristen Maranatha 1. Andrianto, H., Buku Panduan : Pelatihan Mikrokontroler AVR ATmega16,
2008.
2. Budiharto, W., Membuat Robot Cerdas, Jakarta : Gramedia, 2006.
3. Goris, Kristof. 2004. Autonomous Mobile Robot Mechanical Design. Thesis. Vrije Universiteit Brussel.
4. Pitowarno, E., Robotika Disain, Kontrol, Dan Kecerdasan Buatan, Edisi ke-1, Yogyakarta:Andi, 2006.
5. Sigit, Riyanto. Robotika, Sensor, Dan Aktuator, Edisi ke-1, Yogyakarta:Graha Ilmu, 2007.
6. http://dikti.go.id/files/dp2m/Panduan%20KRCI%202011%20Beroda-Berkaki-Battle%20_Final.pdf (12 Desember 2010)
7.
http://ocw.gunadarma.ac.id/course/computer-science-and-information/computer-system-s1/pengantar-robotika (28 Januari 2010) 8. http://www.astrolog.org/labyrnth/algritgm.htm (19 Maret 2011) 9. http://www.atmel.com/dyn/resources/prod_documents/doc2467.pdf (4
Februari 2010)
10. http://www.robokits.co.nz/ZX-03_IR_Sensor_Resource_Page (12 Mei 2011) 11. http://www.robot-electronics.co.uk/htm/srf05tech.html (22 Februari 2010) 12. http://www.robotstorehk.com/R2868.pdf (25 Februari 2010)