Anda di halaman 1dari 32

• LATAR BELAKANG

Dengan kemajuan teknologi yang sangat


pesat umumnya di dunia elektronika, khususnya
dunia mikroelektonika. Penulis ingin
mengaplikasikan mikrokontroler AVR ATMEGA8
sebagai pengendali sebuah robot yang dapat
bergerak sesuai dengan program. Sehingga
robot dapat bergerak melewati rintangan dan
halangan yang dilewati. Sesuai dengan
kebutuhan dan kegunaanya robot tidak akan
bergerak tanpa alat pendukung lainya seperti
motor dan sensor sebagai indera pengihatanya.
Adapun motor sebagai penggerak maju
dan mundurnya roda yang berfungsi untuk
melewati dan mengatasi rintangan. Sensor
dipasang disetiap sudut robot yang gunanya
untuk mendeteksi halangan dan rintangan
yang berada disamping kiri dan kanan /
muka dan belakang sehingga robot dapat
bergerak tanpa menabrak. Tanpa itu semua
mustahil robot akan melihat dan bergerak
sesuai dengan yang diinginkan oleh
pembuat robot tersebut.
Robot secara garis besar terdiri dari
mikrokontroler, sensor, motor. Sensor
yang yang berfungsi sebagai penglihatan
pada setiap bagian dari pada robot.
Mikrokontroler sendiri adalah sebagai
piranti atau inti dari pengatur dan
pengolah sinyal input/output yang
diterima dari sensor. Penggunaan sensor
adalah penerima masukan yang berupa
sinyal-sinyal analog dan akan dikirim ke
Mikrokontroler untuk diolah.
Melihat dari pentingnya sensor pada robot
tersebut penulis berkeinginan untuk
membahas sensor lebih detail. Fokus dari
pembahasan meliputi jumlah dan posisi
sensor yang dipakai pada robot juga
pemrograman yang paling optimal dari
pengolahan data hasil pembacaan sensor.
Dari hasil pengolahan data tersebut nantinya
akan menjadi acuan guna menentukan arah
navigasi robot. Sehingga robot dapat berjalan
sesuai dengan yang dinginkan.
BATASAN MASALAH
Dalam penyusunan laporan Skripsi ini maka
perlu adanya pembatasan permasalahan agar
permasalahan yang dibahas dapat lebih spesifik.
Batasan masalah ini dilakukan agar masalah
yang dibahas tepat sasaran, sehingga di dapat
suatu manfaat terutama bagi penyusun dan untuk
pengetahuan yang lainnya.
Untuk membatasi permasalahan Penyusun
membahas permasalahan – permasalahan yang
terjadi dalam perancangan dan tata letak sensor
pada pembuatan robot, masalahan yang dihadapi
penulis antara lain :
1. Bagaimana cara pemrograman
Mikrokontroler ATMega8.
2. Bagaimana cara penempatan
posisi sensor yang baik dan
benar.
3. Bagaimana cara pengolahan
data Mikrokontroler pada input
output sensor.
4. Mencari bahasa pemrograman
yang mudah dimengerti.
• RUANG LINGKUP MASALAH
Dari beberapa pokok masalah yang sebelunya telah
disebutkan dalam perumusan masalah yang akan penulis
bahas, penulis sesuaikan dengan pokok masalah yang ada.
1. Fokus terhadap pemrograman Mikrokontroler
ATMega8 yang mempunyai kecepatan tinggi.
2. Analisis permasalahan yang terdapat pada
pemrograman Mikrokontroler ATMega8.
3. Menggunakan bahasa Asembler untuk memprogram
Mikrokontroler ke dalam ATMega8.
4. Menggunakan AVR Studio 4 untum memprogram
dan Baskom AVR untuk mendonwload program ke
dalam Mikrokontroler.
5. Menggunakan SRF04 yang menyesuaikan dengan
kebutuhan.
• TUJUAN PENULISAN
Pada metode penulisan Skripsi ini penulis
telah melakukan experimen mengenai robot
AT89C2051. Robot dibuat selama ± 3bulan
yang dilakukan oleh mahasiswa Sekolah Tinggi
Teknik Wiworotomo Purwokerto jurusan Teknik
Elektronika Tetapi penulis tidak akan
membahas robot ini secara keseluruan, penulis
hanya membahas tentang cara pemrograman
SRF04 pada robot. Sehingga akan didapatkan
contoh program navigasi yang baik dan benar
pada robot.
• METODE PENULISAN
1. Objek Penulisan
Objek penulisan Skripsi yang akan dibahas
oleh Penulis adalah pemrograman sensor
yang baik dan benar agar dapat mendeteksi
suatu halangan dan dapat bernavigasi
dengan baik. Pemrograman sensor ini untuk
mengaplikasikan ilmu yang telah penulis
pelajari selama di bangku kuliah juga sebagai
penambah perbendaharaan ilmu kita
tentang pembacaan sensor pada robot.
Robot beroda adalah robot buatan
mahasiswa Sekolah Tinggi Teknik
Wiworotomo Purwokerto yang pertama,
yang diberi nama robot AT89C2051. Robot
ini memiliki kelebihan yaitu, dapat
memadamkan api dari lilin yang menyala
menggunakan kipas angin bertenaga besar.
Robot ini memiliki dimensi 20cm (L), 20cm
(P), dan 25cm (T) berat bobot robot ± 3kg
yang terbuat dari ackrilik dan alluminium.
Robot ini memiliki lima buah sensor yang
berada pada bagian depan, kanan, kiri, serong
kanan dan serong kiri,dan memiliki dua buah
motor servo sebagai penggerak roda. Robot
ini berbentuk hexagonal yang terdiri dari
empat buah penyangga. Penyangga pertama
terdapat motor servo, tempat catu daya atau
battery 12v dan sensor line detector.
Penyangga ke-dua terdapat lima buah sensor
SRF04 yang terpasang sesuai dengan posisi.
Penyangga ke-tiga terdapat Mikrokontroler
dan Driver lainya, dan penyangga ke-empat
terdapat sensor api dan kipas.
•Teknik Pengumpulan Data
Dalam proses pengumpulan data skripsi ini penulis
melakukan beberapa metode diantaranya :
a.Metode Observasi (pengamatan)
Dengan teknik metode observasi ini, penulis
mengadakan suatu pengamatan secara langsung
dari semua kegiatan yang dikerjakan. dengan
metode ini penyusun dapat mengetahui secara
pasti tentang pengerjaan dan pemrograman.
b.Metode Literatur (kepustakaan)
Metode ini dilakukan dengan cara membaca buku-buku
literatur yang dijadikan referensi untuk memperoleh data.
Dengan demikian penulis menjadi lebih tahu dengan jelas
tentang pemrograman dan tata letak sensor yang baik
dan benar.

c.Metode Interview (wawancara)


Perolehan data dengan cara metode interview atau
wawancara secara langsung dilakukan dengan cara
mengajukan pertanyaan kepada orang yang menguasai
tentang pemrograman. Dengan metode ini penulis
memperoleh informasi yang cukup jelas dan terperinci
tentang cara pemrograman.
• SISTEMATIKA PENULISAN
Penyusunan laporan Tugas Akhir atau Skripsi ini
penulis menggunakan sistematika secara umum. Untuk
mempermudah penulis dalam penyusunan laporan dan
mempermudah pembaca dalam pembacaan
pemrograman Mikrokontler ATMega8, maka penulis
menyajikan suatu garis besar tentang isi laporan yang
dimulai dari :
PENDAHULUAN
TINJAUAN PUSTAKA
OBJEK PENELITIAN
PENUTUP
• MIKROKONTROLER AVR ATMega8

Mikrokontroler ATMega8 merupakan mikrokontroler


keluaran dari Atmel Corporation. Mikrokontrol tipe ini termasuk
dalam jenis AVR (Alf and Vegard’s Risc processor).
Mikrokontroler AVR memiliki arsitektur RISC 8 bit, dimana
semua instruksi dikemas dalam kode 16-bit dan sebagian besar
instruksi dieksekusi dalam satu siklus clock berbeda dengan
instruksi MCS51 yang membutuhkan 12 siklus clock untuk
mengeksekusi satu perintah. Perbedaan ini terjadi karena kedua
jenis mikrokontroler tersebut memiliki arsitektur yang berbeda,
AVR sudah menggunakan teknologi RISC (Reduced Instruction
Set Computing) sedangkan MCS51 menggunakan tipe CISC
(Complex Instruction Set Computing).
• ULTRASONIC DEVANTECH SRF04

Sensor Ultrsonic Devantech SRF04


merupakan sensor jarak yang mempunyai
kemampuan mendeteksi jarak antara 3cm
sampai 3m dengan fekuensi kerja 40Khz dan
mengkonsumsi arus sebesar 30mA dengan
tegangan kerja +5volt. Ultrasonic dapat
mendeteksi suatu jarak obyek dengan tanpa
menyentuh, yaitu dengan memancarkan
gelombang sonar yang kemudian memantul
pada obyek dan diterima oleh Receiver.
Hasil keluaran dari Ultrasonik ini adalah
analog linear, maka diperlukan sebuah
penguat dan komparator agar dapat
langsung tersambung dengan
Mikrokontroler ATMega8. Karena
keluaran Ultrasonic anolok linear, maka
diperlukan sebuah penguat, filter dan
komparator sehingga output sensor
beroperasi secara biner yaitu logika high (1)
dan low (0).
• PRINSIP DASAR ROBOT
Pada dasarnya sebuah robot tersusun
dari berbagai komponen yang saling
berkaitan satu sama lain. Adapun
komponen dasar robot yang menjadi
komponen utama dalam sistem minimal
yaitu mekanik, kontroler, sensor,
aktuator dan catu daya.
Secara prinsip robot ialah merupakan suatu
piranti yang dibuat untuk melakukan fungsi
khusus. Untuk saat ini telah banyak robot yang
tercipta buah karya manusia yang kreatif. Fungsi
dasar robot adalah untuk membantu pekerjaan
manusia, namun dalam kenyataannya robot juga
dapat dibuat untuk tujuan hiburan atau juga
permainan. Seperti telah dijelaskan sebelumnya
robot memiliki bagian kompleks yang tak dapat
dipisahkan. Bagian-bagian tersebut memiliki
fungsi dasar yang tiap-tiap komponen berbeda
fungsinya.
• PRINSIP KERJA ROBOT

Prinsip kerja Robot AT89C2051 memakai


pola algoritma FUZZY Kontroler. Dimana
pada saat robot mulai bekerja diposisi home
(awal) maka robot akan menelusuri ruangan-
ruangan, dimana sensor SRF04 sebagai alat
indera-nya, kemudian robot akan mencari
ruangan yang ada apinya dengan sensor
UVtron sebagai alat pendeteksi-nya.
Apabila sensor UVtron merasakan ada
api maka robot akan diperintahkan untuk
mendekati api hingga jarak beberapa cm
sesuai dengan setting program kemudian
robot akan berhenti dan menyalakan kipas
untuk mematikan api hidup sampai api
mati. setelah api mati maka robot akan
kembali ke posisi Home (awal) .
• PEMROGRAMAN MIKROKONTROLER

Sebelum membuat program tentukan dulu


bahasa pemrograman yang akan digunakan.
Pada Tugas Akhir ini penulis menggunakan
bahasa asembler untuk membuat program
mikrokontroler dengan menggunakan AVR
Studo4 sebagai pemrogramnya dan Bascom
sebagai donwlodernya.
• PERANCANGAN

Untuk membahas objek dari sebuah penelitian perlu di


ketahui dahulu proses perancangan dari objek tersebut,
dalam hal ini adalah robot AT89C2051. Dalam proses
pembuatan robot tersebut sudah pasti akan melalui suatu
proses perancangan. Tahap awal dari sebuah perancangan
pada hardware akan ditentukan sebuah diagram blok dari
robot yang akan di bangun, juga pada software pastinya
akan diperlukan semacam diagram blok hanya pada
perancangan software lebih lazim disebut dengan
algoritma. Dua hal tersebut (harware dan software) akan
melalui proses sendiri-sendiri, barulah setelah selesai akan
diintegrasikan menjadi sebuah sistem yang utuh.
• ANALISIS dan PENGUJIAN
Focus analisis pada skripsi ini akan menitik beratkan
pada permasalahan navigasi robot. Navigasi robot
merupakan penentuan arah gerakan dari robot
berdasarkan kondisi pembacaan sensor ultrasonic.
Pada proses pembuatannya robot A89C2051 tidaklah
langsung sempurna namun memiliki beberapa
kesalahan dalam navigasi yang dialami pada proses
pembuatan awalnya. Proses pengerjaan robot ini
mengalami bebarapa perubahan rancangan terutama
pada software. Perubahan yang banyak terjadi yaitu
pada proses penentuan algoritma untuk navigasi robot
berdasarkan pada hasil pembacaan sensor ultrasonic.
Dalam pembahasan ini diambil beberapa kasus yang
dialami selama proses pembuatan robot.
A.Kasus I

Pada kasus pertama robot di desain menggunakan 3


buah sensor ultrasonic yang terpasang di depan,
kanan dan kiri dari robot. Dengan menggunakan
logika, untuk menentukan arah tujuan dari robot
menggunakan pemilihan jarak yang terjauh. Dengan
metode ini diharapkan robot akan berjalan memilih
arah dimana robot akan menuju pada arah yang
kosong (tanpa halangan di depan). Dengan
menambahkan prioritas pembacaan sensor yaitu pada
arah kanan diharapkan robot akan berjalan menyusuri
setiap ruangan yang ada.
No Posisi robot Kesalahan Keterangan
1 S - Pada saat start arahnya menuju ke kiri.

2 1 Robot berputar Pada saat melewai sudut seharusnya


robot belok ke kanan
3 2 Robot berputar Pada saat masuk sudut robot kembali
berputar
4 3 Robot berjalan lurus Robot tidak memasuki ruangan 1

5 4 Robot menabrak Robot nambrak sudut dinding ruangan


4 kemudian menuju arah 5

6 5 Robot nabrak Setelah nabrak robot lolos ke ruangan


2 dan keluar lagi sampai ke posisi 4

7 4 Robot menabrak Setelah nabrak robot tidak menuju


sudut ruangan 1 arah 6 tapi justru robot kembali ke
arah2
8 6 Belum tercapai Robot tidak bernavigasi sampai ke
ruangan 3 dan 4
B.Kasus II
Pada kasus kedua ini adalah perbaikan dari kasus
pertama yaitu perbaikan pada navigasi robot, jika
pada kasus pertama hasil pembacaan sensor diperbaiki
antara kanan, kiri, dan depan maka pada kasus ke-
dua ini akan menentukan navigasi robot dari hasil
pembacaan sensor ini akan dibandingkan dengan
konstanta jarak terjauh dari pembacaan sensor.
Pada pembacaan sensor jika ada di jalur lintasan
dengan lebar lintasan 46cm dan lebar robot 20cm
maka jarak kanan dan kiri totalnya adalah 46cm –
20cm = 26cm. jika robot berada ditengah lintasan jarak
kanan dan kiri masing – masing adalah 13cm.
namun robot tidak selalu di tengah -tengah
lintasan jadi untuk memastikan robot tersebut
berada di tengah lintasan adalah dengan
menjumlahkan hasil pembacaan sensor kanan
dan kiri dan dibandingkan dengan 26cm. ini
dijadikan acuan untuk navigasi robot jika total
lebih besar dari 26cm, maka robot akan mencari
jarak yang lebih panjang antara kanan dan kiri,
misalkan jarak kanan 91cm dan kiri 13cm maka
diambilah keputusan robot akan berbelok kearah
kanan. Untuk menanggulangi robot berputar
disudut maka diambil keputusan robot akan
berbelok menuju arah dimana pada pembacaan
sensor di arah lebih besar dari 30cm.
No Posisi robot Kesalahan Keterangan

1 S - Pada saat start arahnya menuju ke kiri.

2 1 Robot nabrak Pada saat belok kekanan robot menabrak sudut


bagian sudut kanan
3 2 Robot nabrak Pada saat masuk jalur 2 robot kembali
menabrak pada bagian sudut kanan
4 3 Robot nabrak Robot memasuki ruangan 1 tetapi berputar –
putar dan keluar ke jalur 4 setelah menabrak
dinding
5 4 Robot lurus Robot nambrak sudut dinding ruangan 2 di
jalur 5 dan terhenti sampai sensor kanan dapat
membaca
6 5 Robot nabrak Setelah menabrak sudut ruang 2 robot lolos
dan masuk ke ruangan 2 dan keluar lagi
sampai ke jalur 4
7 4 Robot nabrak Setelah keluar ruang dua dan masuk jalur 5
dan 4 robot kembali menabrak sudut ruang 4
dan masuk jalur 6
8 6 Berputar - putar Robot memasuki ruang 3 dan berputar – putar

9 Ruang 3 Belum berhasil Setelah berputar – putar robot tidak berhasil


keluar ruangan
C.Final
Setelah meneliti dari kasus – kasus yang terjadi
pada kasus satu dan dua disimpulkan bahwa robot
memiliki kekurangan pada sensor, sehingga navigasi
robot kurang begitu baik, kesalahan – kesalahan
yang terjadi terdapat pada saat robot berbelok arah
sehingga menabrak sudut –sudut dinding ruang.
Untuk memperbaiki kesalahan ini maka ditambahlah
dua buah sensor pada posisi serong kiri dan serong
kanan. Setelah menambahkan sensor pada robot
maka bertambah pula parameter untuk arahan
navigasi robot.
Dari beberapa kasus yang di alami dan setelah
penambahan sensor pada robot didapatlah hasil yang
sangat memuaskan. Sehingga robot dapat bernavigasi
dengan baik tanpa menabrak atau menyenggol dinding
pada track.
Dari banyaknya kasus yang terjadi penulis hanya
mengambil beberapa kasus yang sangat mendasar guna
acuan sehingga pada akhir penulisan ini robot dapat
bernavigasi dengan sempurna. Dan penulis
berkesimpulan bahwa robot tidak akan sempurna tampa
adanya sensor yang memadai, karena semakin banyak
sensor yang terpasang maka semakin baik pula
navigasi robot tersebut.
Dari hasil pemrograman algoritma diatas,
robot sudah mengalami kemajuan yang
sangat bagus, Robot sudah tidak lagi
menabrak sudut atau dinding ruangan dan
berhasil memasuki ruang satu. Setelah
robot dapat memasuki ruang yang ada
lilinya robot dapat memadamkan api sampai
lilin benar – benar padam, setelah robot
memadamkan api di ruangan empat robot
kembali keluar di jalur 6, 4. Dan kembali
keposisi start tampa melewati jalur 3, 2, dan
1. Setelah robot berada persis di posisi start
“s” maka robot akan berhenti secara
otomatis.