RANCANG BANGUN ROBOT MOBIL PENJEJAK BENDA BERGERAK BERBASIS
PENGENDALI PD (Proposional-Derivative) MENGGUNAKAN MIKROKONTROLLER AVR
ATmega8535
Proposal Tugas Akhir
oleh
Endang Dwi Hartanti
L2F 003 496
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS DIPONEGORO
Semarang, Maret 2007
Proposal Tugas Akhir
RANCANG BANGUN ROBOT MOBIL PENJEJAK BENDA
BERGERAK BERBASIS PENGENDALI PD (Proposional-Derivative)
MENGGUNAKAN MIKROKONTROLLER AVR ATmega8535
Yang diajukan oleh
Endang Dwi Hartanti
L2F 003 496
Kepada
Jurusan Teknik Elektro
Fakultas Teknik
Universitas Diponegoro
Telah disetujui oleh:
Pembimbing I,
Iwan Setiawan, ST, MT NIP. 132 283 183
Tanggal:_______________
Pembimbing II,
Sumardi, ST. MT. NIP. 132 125 670
Tanggal: ______________
Mengetahui,
Koordinator Tugas Akhir
R. Rizal Isnanto, ST , MM, MT NIP. 132 288 515
Tanggal:__________________
ABSTRAK
Robot mobil merupakan salah satu bentuk robot yang dapat digunakan untuk berbagai
macam keperluan. Robot mobil dapat dimanfaatkan untuk memindahkan barang dalam suatu pabrik atau rumah sakit, melakukan pemetaan atau observasi pada suatu daerah asing yang belum terjamah, melakukan pengukuran jarak jauh (telemetri) pada suatu kondisi yang membahayakan manusia, menjinakkan bom, kendaraan yang mampu berjalan secara otomatis dan mampu menghindari halangan di depannya, serta masih banyak manfaat yang lainnya.
Untuk melakukan semua itu robot mobil memerlukan sebuah “kecerdasan”. Kecerdasan ini meliputi kemampuan robot untuk menghasilkan lintasan sendiri yang efisien (generator trayektori) dan sistem control agar robot mobil selalu berada pada lintasan trayektori yang dihasilkannya tadi.
Pada tugas akhir ini trayektori robot mobil adalah sebuah benda bergerak. Sedangkan sistem control yang digunakan adalah pengendali Proporsional plus Derivative (PD) yang ditanamkan pada sebuah mikrokontroler. Pengendali PD ini dimaksudkan agar robot mampu mempertahankan jarak relatifnya terhadap benda bergerak sewaktu berjalan. Sehingga robot mobil tidak akan membentur benda bergerak acuannya.
Robot mobil dilengkapi dengan sensor jarak pada sisinya sehingga robot akan dapat mengetahui posisinya terhadap benda bergerak. Sensor jarak yang digunakan adalah sensor infra merah yang menerapkan prinsip triangulation (segitiga).
Pengendali PD dipilih karena pengendali ini umum digunakan untuk mengendalikan kecepatan putaran motor listrik. Meskipun secara umum yang dikendalikan adalah posisi robot mobil terhadap benda bergerak tetapi pengendalian ini dilakukan melalui pengendalian kecepatan putaran roda-roda robot yang tidak lain adalah kecepatan putaran motor listrik (motor DC).
Pengendalian kecepatan putar motor DC dilakukan dengan memanfaatkan prinsip PWM (Pulse Width Modulation), yaitu pengaturan lebar pulsa pada supply motor DC. Makin lebar waktu aktifnya maka putaran motor DC akan semakin cepat, begitu pula sebaliknya. Dengan demikian maka kecepatan putar motor DC dapat dikendalikan.
Robot mobil dalam mekanisme geraknya dibagi menjadi 2 yaitu steering atau ackerman drive dan differensial drive. Pada tugas akhir ini robot yang akan dibuat adalah robot mobile dengan penggerak diferensial dengan pertimbangan bahwa robot dengan konstruksi semacam ini akan lebih mudah melakukan manuever serta tidak terlalu rumit pengendaliannya. Kata kunci: Pengendali PD, mikrokontroler, sensor jarak, triangulation, PWM, Motor DC.
PROPOSAL TUGAS AKHIR
I. Judul
RANCANG BANGUN ROBOT MOBIL PENJEJAK BENDA BERGERAK BERBASIS PENGENDALI PD (Proposional-Derivative) MENGGUNAKAN MIKROKONTROLLER AVR ATmega8535
II. Bidang Ilmu
Teknik Kontrol
III. Latar Belakang
Robot mobil merupakan salah satu bentuk robot yang dapat digunakan
untuk berbagai macam keperluan. Robot mobil dapat dimanfaatkan untuk
memindahkan barang dalam suatu pabrik atau rumah sakit, melakukan pemetaan
atau observasi pada suatu daerah asing yang belum terjamah, melakukan
pengukuran jarak jauh (telemetri) pada suatu kondisi yang membahayakan
manusia, menjinakkan bom, kendaraan yang mampu berjalan secara otomatis dan
mampu menghindari halangan di depannya, serta masih banyak manfaat yang
lainnya. Karena manfaatnya yang besar ini sehingga banyak negara-negara maju
telah melakukan penelitian dan pengembangan di bidang robotika terutama robot
mobil.
Robot mobil memiliki 3 hal penting yang harus diperhatikan, yaitu desain
penggerak robot mobil, pembangkitan trayektori (navigasi robot), dan
pengendalian pada robot mobil. Pengemudian robot mobil terbagi menjadi 2 yaitu
tipe ackerman (car steering) dan tipe penggerak diferensial (differensial steering).
Terdapat 2 kendala utama dalam membangun sebuah system “robot
cerdas”. Dua masalah tersebut yaitu pembangkitan trayektori dan pengendalian
robot. Pembangkitan trayektori dimaksudkan bahwa robot mobil mampu
menentukan lintasan yang akan dilaluinya sendiri dengan mempertimbangkan
jarak terdekat, kecepatan, rintangan, waktu dan lain-lain. Sedangkan pengendalian
robot adalah sebuah algoritma yang akan membuat robot untuk selalu berada pada
lintasannya tadi.
Pada tugas akhir ini trayektori robot adalah sebuah benda bergerak dengan
berbagai macam bentuk sehingga robot mobil tidak perlu membangkitkan
trayektorinya sendiri. Dengan demikian robot yang akan dibuat pada tugas akhir
ini hanya akan menjejak benda bergerak tersebut sebagai trayektorinya atau
lintasannya.
IV. Tujuan
Tujuan yang hendak dicapai dalam tugas akhir ini adalah membangun
suatu sistem robot mobil yang mampu menjejak atau mengikuti benda bergerak
sebagai lintasannya.
V. Pembatasan Masalah
Pembatasan masalah pada Tugas Akhir ini adalah:
Robot mobil yang dibuat menggunakan penggerak diferensial.
Pergerakan robot mengabaikan massa, percepatan, gaya, gesekan karena
robot mobil yang dibuat berukuran kecil.
Mikrokontroler yang digunakan adalah mikrokontroler AVR Atmega8535.
Sensor jarak yang digunakan adalah sensor infra merah dengan prinsip
triangulation.
Robot mobil dibuat hanya untuk menjejak atau mengikuti benda bergerak
yang sudah disediakan.
Pengendali yang digunakan adalah pengendali proposional plus derivative
(PD) dengan tuning parameter dilakukan secara empiris.
Robot mobil yang dirancang hanya dapat melakukan gerakan maju dan
tidak didesain untuk manuever bergerak mundur.
Pengendalian kecepatan motor DC dilakukan melalui PWM.
Bahasa pemrograman yang digunakan adalah dengan menggunakan
bahasa C yang diadaptasikan pada software Code Vision AVR.
VI. Tinjauan Pustaka
6.1 Hasil Penelitian Terdahulu
1. Rancang Bangun Robot Mobil Penjejak Dinding Berbasis Pengendali
PD Menggunakan Mikrokontroler AVR ATmega8535
Oleh : Accep Handyarso (Teknik Elektro UNDIP, Semarang) 1
Dalam makalah Tugas Akhir ini yang digunakan sebagai
pengendali robot mobil adalah pengendali PD (Proposional-Derivative)
dan trayektori yang digunakan adalah dinding. Mekanisme penggerak
yang digunakan adalah pergerakan diferensial. Robot mobil tipe
penggerak diferensial memiliki 2 buah roda penggerak yang terpisah
(kanan dan kiri). Kedua roda ini digerakkan oleh motor DC yang
ditempatkan pada satu sumbu secara terpisah. Sehingga kedua roda ini
berfungsi sebagai penggerak sekaligus sebagai kemudi robot mobil.
Sehingga tingkat keluwesan robot dan kemampuan maneuver robot mobil
tipe penggerak diferensial jauh lebih baik
Pengendali proposional-derivative tertanam dalam suatu
mikrokontroller. Mikrokontroller yang digunakan adalah mikrokontroller
Atmega 8535. Sensor yang digunakan adalah sensor ultrasonik buatan
Parallax (Sensor PING Ultrasonik Range Finder) yang mempunyai prinsip
kerja mendeteksi jarak objek dengan cara memancarkan gelombang
ultrasonok (40KHz) selama waktu pemancaran kemudian mendeteksi
pantulannya.
Prinsip kerja robot ini adalah masukan pengendali berupa error
jarak terhadap dinding yang diperoleh melalui sensor jarak ultrasonik
(PING™). Kemudian sinyal Kendali berupa sinyal kontrol yang digunakan
untuk mengendalikan kecepatan angular robot. Dengan menggunakan
kinematika balik maka kecepatan angular robot diubah menjadi kecepatan
putaran roda kanan dan roda kiri robot. Sehingga robot akan dapat berjalan
menelusuri dinding sebelah kiri.
Pengujian yang dilakukan pada robot ini ada dua yaitu pengujian
perangkat keras dan penmgujian perangkat lunak. Pengujian perangkat
keras meliputi pengujian sensor jarak, dan pengujian driver motor DC
sedangkan pengujian perangkat lunak meliputi pengujian algoritma PD
dan pengujian nilai Kp dan Kd. Hasil pengujian sensor jarak adalah
pembacaan sensor dibatasi antara range 10 cm – 150 cm, hal ini
disebabkan karena untuk dapat mengukur jarak yang lebih jauh (lebih dari
setengah meter), maka sensor PING™ harus diletakkan minimal pada
ketinggian setengah meter dari lantai. Untuk hasil pengujian driver motor
DC adalah menggunakan baterai dengan tegangan nominal 9 V (namun
terukur 9.6 V). Untuk pengujian algoritma PD robot ditempatkan pada 3
macam posisi, yaitu [1] Robot berada pada posisi jauh dari jarak referensi,
[2] Robot berada pada posisi dekat dengan dinding, [3] Robot berada pada
jarak referensi. Pengujian untuk ketiga posisi tersebut dilakukan dengan
mengambil data yang ditampilkan dan membandingkannya dengan hasil
perhitungan manual. Dan hasil yang diperoleh untuk pengujian nilai Kp
dan Kd adalah semakin besar nilai Kp maka robot mobil akan dapat
melakukan gerakan memutar (berbelok) yang lebih tajam dan cepat dan
semakin besar nilai Kd akan membuat robot mobil memiliki sensitivitas
yang semakin tinggi terhadap perubahan jarak.
2. Embedded C pada Mikrokontroller AVR AT90S8515
Oleh : Fajar Mahadmadi (Teknik Elektro UNDIP, Semarang) 3
Dalam tugas akhir ini membahas pengkodean C pada
mikrokontroller AVR AT90S8515 sehingga program yang dihasilkan
kompiler bisa sekecil mungkin dan secepat mungkin. AT90S8515 adalah
salah satu jenis AVR tipe klasik yang mempunyai unjuk kerja hampir
sama dengan AT89C52, yaitu memiliki kapasitas memori program
sebesasr 8Kbytes, kemasan 40 pin, 4 port paralel, serta port serial.
Keunggulan dari AT90S8515 ini adalah kemampuan ISP (In System
Programming) mempunyai internal EEPROM sebesar 512 bytes, 512
RAM, PWM, kecepatan clock sampai dengan 8 MHZ dengan frekuensi
kerja sama dengan frekuensi kristal osilator, interupsi 11 jalan, analog
komparator, serta 32 register serbaguna yang langsung terhubung dengan
ALU sehingga menyerupai akumulator.
Berdasarkan tugas akhir ini dapat disimpulkan bahwa Embedded C
atau program bahasa C untuk mikrontroler AVR 90S8515 mempunyai
kemampuan yang handal karena prinsip logikanya menggunakan bahasa
tinggat tinggi sehingga mendekati ke logika manusia. Selain itu bahasa C
mampu mengakses suatu memori atau register dalam level bit. File-file
fungsi yang terdapat pada file library sangat membantu dalam
perancangan program.
6.2 Landasan Teori
6.2.1 Kinematika Robot Mobil Penggerak Diferensial
Robot mobil berdasarkan sistem penggeraknya terbagi menjadi 2 macam
yaitu robot mobil tipe penggerak diferensial dan tipe penggerak ackerman. Tipe
penggerak ackerman dapat kita jumpai secara umum pada kendaraan-kendaraan
mobil sedangkan tipe penggerak diferensial dapat kita lihat pada kendaraan
tempur (tank), kursi roda cerdas (smart wheel chair).
Berdasarkan arsitekturnya robot mobil tipe penggerak diferensial memiliki
tingkat keluwesan dalam melakukan maneuver seperti berputar atau berotasi di
tempat, berputar 90° dan sebagainya serta relative lebih mudah dalam
pengendaliannya.
Robot mobil tipe penggerak diferensial memiliki 2 buah roda penggerak
yang terpisah (kanan dan kiri). Kedua roda ini digerakkan oleh motor DC yang
ditempatkan pada satu sumbu secara terpisah.
Gambar 1 Lintasan roda terhadap suatu titik di luar system.
Robot mobil tipe diferensial bergerak berdasarkan kecepatan putaran roda
kanan dan kiri robot. Apabila kedua roda robot berputar dengan kecepatan yang
sama maka robot mobil akan bergerak lurus, namun bila salah satu roda bergerak
lebih lambat maka robot mobil akan bergerak dengan lintasan berbentuk kurva
dengan kelengkungan menuju ke arah roda yang berputar lebih pelan.
Pada Gambar diatas SL adalah panjang lintasan yang ditempuh roda kiri,
SR adalah panjang lintasan yang ditempuh roda kanan, SM adalah panjang lintasan
yang ditempuh titik tengah robot, b adalah jarak antara roda kanan dan roda kiri, θ
adalah sudut perputaran robot, r adalah jari-jari lintasan dalam robot. Secara
matematis dapat dituliskan sbb:
SL = .r [1]
SR = ).( br [2]
SM = ).2
( br [3]
Dengan menganggap bahwa orientasi robot adalah θ, diukur berlawanan
arah jarum jam dari sumbu x pada koordinat kartesian (x-y). Sehingga dapat
diambil persamaan m(t) dan θ(t) sebagai persamaan fungsi t untuk kecepatan dan
orientasi robot.
))(sin()(
))(cos().(
ttmdtdy
ttmdtdx
[4]
Gambar 2 Roda dengan kecepatan yang berbeda
Apabila robot sedang bergerak maka setiap bagian dari robot juga ikut
bergerak, oleh karena itu kita memerlukan suatu titik acuan pada robot itu sendiri.
Asumsikan roda kiri robot sebagai titik referensi atau acuan, seperti Gambar 2.
Roda kanan dan roda kiri robot berputar dengan kecepatan yang berbeda,
roda kanan berputar lebih cepat dari pada roda kiri, maka kecepatan relative roda
kanan terhadap roda kiri adalah VR – VL. sehingga kecepatan rotasi robot dapat
dirumuskan:
bVVt LR )()(
[5]
bVV
dtd LR )(
[6]
Dengan mengintegralkan persamaan [6] diatas akan diperoleh :
0
)()(
b
tVVt LR [7]
Kecepatan robot adalah rata-rata dari kecepatan roda kanan dan roda kiri
atau 2
)( LR VV . Kemudian nilai rata-rata kecepatan ini disubstitusikan ke
persamaan [4 ] menjadi:
))(sin(.2
)(
))(cos(.2
)(
tVVdtdy
tVVdtdx
LR
LR
[8]
Dengan mengintegralkan persamaan diatas maka akan diperoleh:
000 sin)(sin)(2)()(
btVV
VVVVbxtx LR
LR
LR [9]
000 cos)(cos)(2)()(
btVV
VVVVbyty LR
LR
LR [10]
6.2.2 Pengendali Proposional plus Derivative (PD)
Suatu sistem dengan pengendali PD diperlihatkan pada Gambar 3. Input
suatu pengendali PD adalah kesalahan (error) yaitu perbedaan antara variabel
output dengan nilai variabel yang inginkan (set point). Sinyal kontrol dari
pengendali ini merupakan hasil kali suatu penguatan terhadap error, perubahan
error, dan hasil penjumlahan error dari proses.
Gambar 3 Diagram Blok Pengendali PD
Suatu pengendali PD dapat dituliskan sebagai persamaan berikut,
dttdeTteKtu dp)(
[11]
dengan u adalah sinyal kontrol, e adalah kesalahan (error), de/dt adalah perubahan
kesalahan dan Kp dan Td berturut-turut adalah penguatan proporsional, konstanta
waktu derivative.
Pengendali PD merupakan gabungan dari 2 jenis pengendali yaitu
pengendali proporsional dan derivative. Penggabungan ini didasarkan atas
perbedaan karakteristik dari tiap-tiap pengendali sehingga diperoleh performansi
pengendali yang lebih baik.
Suatu pengendali proporsional yang memberikan aksi kontrol proporsional
dengan error akan mengakibatkan efek pada pengurangan rise time dan
pengurangan pada kesalahan keadaan tunak (steady state error).
Pengendali derivatif yang memberikan aksi kontrol sebanding dengan
perubahan kesalahan akan mengakibatkan efek peningkatan pada stabilitas sistem,
pengurangan overshoot, dan memperbaiki respon transien.
Pengetahuan tentang efek yang diakibatkan oleh masing-masing
pengendali tersebut yang nantinya akan digunakan dalam penentuan nilai-nilai
penguatan proporsional (Kp) dan derivative (Kd). Tabel basis pengetahuan
hubungan antara penguatan dan efeknya pada pengendali PID diperlihatkan pada
Tabel 1.
Tabel 1. Efek dari pengendali P, I, dan D
Penguatan Rise time Overshoot Setling time Steady State
error
Kp menurun meningkat perubahan kecil menurun
Ki menurun meningkat meningkat menghilangkan
Kd perubahan kecil menurun menurun perubahan kecil
Penalaan pada pengendali PD adalah penentuan besaran penguatan-
penguatan parameter P dan parameter D sehingga diperoleh karakteristik sistem
yang baik. Ada beberapa cara penalaan kontroler PD diatantaranya yaitu metode
respon frekuensi Ziegler-Nichols, manual (hand-tuning/trial-error), metode
analitik dengan optimasi, penempatan pole (pole placement), atau swatala
(autotuning).
6.2.3 Mikrokontroler ATMEGA8535
Mikrokontroler AVR ATMEGA8535 merupakan mikrokontroler 8 bit
dengan konsumsi daya rendah produksi ATMEL, yang memiliki beberapa fitur
istimewa antara lain:
a. Arsitektur RISC (Reduced Instruction Set Computer).
b. 118 instruksi sebagian besar satu siklus instruksi.
c. 32x8 register kerja serbaguna.
d. ADC internal 8 channel 10 bit.
e. 8 Kbytes In-Sistem Programmable Flash (1000 siklus hapus/tulis).
f. 512 bytes SRAM.
g. 512 bytes In-Sistem Programmable EEPROM (100.000 siklus hapus/tulis).
h. Satu 8 bit timer/counter dengan Prescaler terpisah.
i. Satu 16 bit timer/counter dengan Prescaler terpisah yang dapat digunakan
untuk. mode Compare, Mode Capture dan dual 8, 9, atau 10 bit PWM.
j. Analog comparator dalam chip.
k. Serial UART terprogram.
l. Antarmuka serial SPI master/slave.
m. 32 jalur I/O terprogram.
Mikrokontroler AVR ATMEGA8535 telah didukung penuh dengan
program dan sarana pengembangan seperti: kompiler-kompiler C, simulator
program, emulator dalam rangkaian, dan kit evaluasi. ATMEGA8535 adalah
mikrokontroler handal yang dapat memberikan solusi biaya rendah dan
fleksibilitas tinggi pada banyak aplikasi kontrol.
Konfigurasi Mikrokontroler ATMEGA8535
Gambar 4 Konfigurasi pin-pin ATMEGA8535.
Penjelasan dari masing-masing pin adalah sebagai berikut:
a. VCC (kaki 40) dihubungkan ke Vcc.
b. GND (kaki 20) dihubungkan ke ground.
c. PortA (PA7..PA0) (kaki 32-39) merupakan port 8 bit dua arah
(bidirectional) I/O. Port ini berfungsi sebagai port data/alamat I/O ketika
menggunakan SRAM eksternal.
d. Port B (PB7-PB0) (kaki 1-8) merupakan port 8 bit dua arah (bidirectional)
I/O,untuk berbagai keperluan (multipurpose).
e. Port C (PC7..PC0) (kaki 21-28) adalah port 8 bit dua arah I/O, dengan
internal pull-up resistor. Port C ini juga berfungsi sebagai port alamat ketika
menggunakan SRAM eksternal.
f. Port D (PD7..P0) (kaki 10-17) adalah port 8 bit dua arah I/O dengan resistor
pull-up internal. Port D juga dapat berfungsi sebagai terminal khusus.
g. Reset (kaki 9) Kondisi rendah yang lebih lama dari 50 nS akan mereset
mikrokontroler.
h. XTAL1 (kaki 19) masukan dari osilator eksternal dan masukan bagi rangkaian
osilator internal.
i. XTAL2 (kaki 18) keluaran dari rangkaian osilator internal. Kaki ini digunakan
apabila dipakai osilator kristal.
j. ICP (kaki 31) adalah kaki masukan untuk fungsi Timer/Counter1 Input
Capture.
k. OC1B (kaki 29) adalah kaki keluaran bagi fungsi Output CompareB keluaran
Timer/Counter1.
l. ALE (Address Latch Enable) (kaki 30) digunakan ketika menggunakan
SRAM eksternal. Kaki ini digunakan untuk mengunci 8 bit alamat bawah
pada saat siklus akses pertama, dan berfungsi sebagai port data pada siklus
akses kedua.
Memori Program
Memori program pada ATMEGA8535 diperlihatkan pada Gambar 6.
Gambar 5 Memori program.
ATMEGA8535 mempunyai kapasitas memori program sebesar 8 Kbytes.
Karena semua format instruksi berupa kata (word) 16-32 bit maka format memori
program ini adalah 4Kx16 bit. Memori Flash ini dirancang untuk dapat di hapus
dan tulis sebanyak seribu kali. Program Counter (PC)-nya sepanjang 12 bit
sehingga mampu mengakses hingga 4096 lokasi memori.
MemoriProgram
ProgramFLASH(4Kx16)
$000
$FFF
Gambar 7 memperlihatkan bagian bawah dari memori program. Setelah
reset, CPU memulai eksekusi dari lokasi 0000h. Setiap interupsi mempunyai
lokasi tetap dalam memori program. Interupsi menyebabkan CPU melompat ke
lokasi tersebut dimana pada lokasi tersebut terdapat subrutin yang harus
dilaksanakan.
Gambar 6 Vektor Interupt ATMEGA8535
6.2.4 Sensor PING Ultrasonik Range Finder
Sensor yang digunakan pada tugas akhir ini merupakan sebuah sensor
ultrasonik buatan Parallax (Sensor PING Ultrasonik Range Finder). Bentuk visual
sensor yang digunakan dalam tugas akhir ini ditunjukkan pada Gambar 7. Sensor
PING ini secara khusus didesain untuk dapat mengukur jarak sebuah benda padat.
Gambar 7 Sensor PING Ultrasonik Range Finder.
Sensor PING mendeteksi jarak objek dengan cara memancarkan gelombang
ultrasonik (40kHz) selama waktu pemancaran kemudian mendeteksi pantulannya.
Sensor PING memancarkan gelombang ultrasonik sesuai dengan pulsa trigger
000H001H002H003H004H005H006H007H008H009H
00AH00BH00CH
RESETINT0INT1TIMER1 CAPTTIMER1 COMPATIMER1 COMPBTIMER1 OVFTIMER0 OVFSPI, STCUART,RXUART,UDREUART,TXANA_COMP
dari mikrokontroler sebagai pengendali. Gambar 8 menunjukkan timing diagram
dari sensor PING.
Gambar 8 Timing Diagram Sensor PING Ultrasonik Range Finder.
Waktu tempuh gelombang ultrasonik untuk ditunjukkan pada Gambar 9.
Maka jarak yang diukur dapat dirumuskan sebagai berikut :
Jarak = metersmsxt IN
2
/344
Gambar 9 Ilustrasi cara kerja sensor PING.
Untuk menempuh jarak sepanjang 1 cm maka gelombang ultrasonik
memerlukan waktu:
cmscmxtcm in
2/34400
1
scm
cmxtin 3440012
ustin 14.58
Dengan demikian maka untuk mengukur jarak tempuh gelombang ultrasonik
diperlukan timer dengan waktu overflow sebesar 58.0 us (0x17 heksadesimal pada
register TCNT0 dengan prescaler 1). Setiap terjadi overflow pada timer tersebut
maka telah terjadi jarak tempuh sebesar 1 cm. Perhitungan jarak akan dihentikan
pada saat terjadi perubahan logika low pada PINB.2 dari sensor PING™ sebagai
isyarat bahwa sinyal ultrasonik telah kembali.
6.2.5 Lintasan Robot Mobil yang akan digunakan
Kemampuan robot agar dapat bergerak secara otomatis meliputi 3 hal
yaitu desain rancangan penggerak robot, pembangkitan trayektori untuk keperluan
navigasi, dan sistem kontrol yang digunakan.
Pada tugas akhir ini robot yang dirancang tidak dilengkapi dengan
kemampuan untuk menghasilkan trayektori sendiri, melainkan robot hanya akan
mengikuti trayektori yang telah disediakan yaitu sebuah benda bergerak (misalkan
manusia berjalan).
Gambar 10 lintasan robot mengikuti manusia berjalan
6.2.6 Desain Mekanik Robot Mobil
Robot mobil yang akan dibuat ini menggunakan penggerak tipe
diferensial, yaitu robot mobil yang memiliki dua buah roda penggerak yang saling
bebas dan dipasang pada satu sumbu. Pergerakan robot memanfaatkan pengaturan
kecepatan putar roda kanan dan kiri yang berbeda sehingga melalui pengaturan ini
maka posisi dan orientasi robot mobil dapat diatur dengan mudah.
Gambar 11 Desain Mekanik Robot Mobil.
Desain robot yang demikian dinilai akan lebih handal dalam melakukan
manuever-manuever serta akan lebih mudah pengendaliannya bila dibandingkan
dengan tipe ackerman (car steering).
6.2.7 Peletakan Posisi Sensor Pada Robot Mobil
Sensor merupakan indera bagi robot, sehingga peletakan sensor juga akan
sangat berpengaruh terhadap performa robot. Robot mobil dibuat agar dapat
menjejak benda bergerak. Agar dapat menjejak benda bergerak seperti pada
gambar 10 maka robot memerlukan sensor jarak pada 1 posisi yaitu sensor jarak
depan. Sensor jarak depan berfungsi untuk mengetahui jarak robot terhadap benda
bergerak (manusia) yang berada di depannya.Adapun penempatan sensor dapat
digambarkan sebagai berikut:
sensor PING
Gambar 12 Peletakan Sensor Pada Robot Mobil.
6.2.8 Sensor Kecepatan Motor DC
Penentuan posisi dan orientasi robot dilakukan melalui pengaturan
kecepatan putaran roda kanan dan kiri robot. Umpan balik kecepatan diperoleh
dari sensor kecepatan yang berupa optokopler yang kemudian dihubungkan
dengan f to V konverter sehingga akan dihasilkan keluaran berupa tegangan
analog. Dengan demikian kecepatan putar roda kanan dan kiri robot dapat
dikendalikan.
Gambar 13 Rangkaian f to V.
6.2.9 Driver Motor DC
Motor DC merupakan sebuah komponen yang memerlukan arus yang
cukup besar untuk menggerakannya. Oleh karena itu motor DC biasanya memiliki
penggerak tersendiri. Pada tugas akhir ini motor DC akan digerakkan dengan
menggunakan PWM yang telah terintegrasi dengan rangkaian H-Bridge.
Dengan rangkaian H-Bridge yang memiliki input PWM ini, maka selain
arah kita juga bisa mengendalikan kecepatan putar motor DC tersebut. Hal ini
tentunya akan sangat memudahkan kita dalam perancangan robot mobil.
Gambar 14 Blok Diagram dan Wiring Rangkaian Driver Motor DC.
VII. Metode Penelitian
Metode Penelitian yang digunakan dalam penyusunan Tugas Akhir ini
dibagi dalam tahapan-tahapan sebagai berikut :
7.1 Studi Literatur
Dengan mempelajari literatur yang berhubungan dengan pembuatan Tugas
Akhir. Studi literatur dimaksudkan untuk penyusunan dasar teori mengenai
pengendali proposional Derivative (PD), Mikrokontroler AVR Atmega8535, buku
panduan Software CodeVision AVR, AVRISP, Sensor jarak, Robot mobil tipe
penggerak diferensial.
7.2 Perancangan Perangkat Keras (Hardware)
Secara umum perancangan sistem robot mobil yang akan dibuat dapat
dilihat pada Gambar 15.
Gambar 15 Blok Diagram Sistem
Robot mobil penjejak benda bergerak ini dirancang untuk dapat bergerak
mengikuti benda bergerak. Mekanik robot mobil penjejak dinding ini dibuat
berdasarkan tipe penggerak differensial. Yaitu robot mobil memiliki 2 buah roda
yang berfungsi sebagai penggerak sekaligus kemudi robot.
Robot mobil ini dikendalikan dengan menggunakan mikrokontroler AVR
ATmega 8535. Mikrokontroler men-trigger sensor ultrasonik (PING™) dan
kemudian menunggu sinyal ultrasonik kembali, yaitu sampai terjadi perubahan
logika tinggi ke logika rendah pada PINB.2. Selama menunggu terjadinya
perubahan ini mikrokontroler menghitung selang waktu yang terjadi. Setelah
terdeteksi PINB.2 low maka penghitungan jarak dihentikan dan kemudian akan
diperoleh data jarak robot mobil terhadap dinding. Jarak terdeteksi ini kemudian
dibandingkan dengan jarak referensi sehingga diperoleh error jarak. Dengan
adanya error jarak ini maka akan diperoleh besarnya sinyal kontrol untuk robot
mobil (sinyal kontrol berupa kecepatan angular robot). Sinyal kontrol ini
kemudian dikonversi menjadi sinyal kontrol untuk motor kanan dan motor kiri
menggunakan kinematika balik.
Selain mikrokontroler terdapat pula komponen-komponen lain seperti
keypad, LCD, sensor jarak (ultrasonik), driver motor, catu daya, saklar / bumper
switch. LCD berfungsi untuk menampilkan menu input dan menu monitoring
pada robot mobil. Sehingga pada saat robot mobil run, user dapat mengetahui
kecepatan angular robot, error jarak, sinyal kendali untuk roda kanan dan roda
kiri. Keypad digunakan untuk memasukkan data-data seperti nilai set point dan
nilai parameter-parameter kendali. Saklar / bumper switch berfungsi sebagai
proteksi apabila robot mobil menabrak dinding. Pada saat robot menabrak objek
maka secara otomatis putaran roda kanan dan roda kiri dihentikan.
7.3 Perancangan Perangkat Lunak (Software)
Robot yang dibuat pada tugas akhir ini adalah robot penjejak benda
bergerak yang berada didepannya. Robot ini dikendalikan dengan menggunakan
pengendali Proposional – Derivative (PD). Masukan pengendali berupa error
jarak terhadap dinding yang diperoleh melalui sensor jarak ultrasonik (PING™).
Kemudian sinyal Kendali berupa sinyal kontrol yang digunakan untuk
mengendalikan kecepatan angular robot. Dengan menggunakan kinematika balik
maka kecepatan angular robot diubah menjadi kecepatan putaran roda kanan dan
roda kiri robot. Sehingga robot akan dapat berjalan menelusuri dinding sebelah
kiri. Blok diagram pengendalian secara umum dapat dilihat pada Gambar 3.16
berikut.
Gambar 3.16 Blok Diagram Pengendalian
VIII Pengujian Alat
Pada tahap ini dilakukan pengujian terhadap robot mobil, bagaimana
respon robot mobil terhadap berbagai macam jarak referensi robot mobil terhadap
benda bergerak.
IX Pembuatan Laporan
Membuat laporan dan analisa dari seluruh rancangan yang dibuat.
X Jadwal Pelaksanaan Penelitian Tabel 2 Waktu pelaksanaan tugas akhir
Bulan April
2007
Mei
2007
Juni
2007
Juli
2007
Agustus
2007
Minggu ke- 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Studi Pustaka
dan observasi
Perancangan
perangkat
lunak
Pengujian dan
Validasi
Penyusunan
Laporan
XI. Penutup
Proposal Tugas Akhir ini di buat belum dalam format yang sebenarnya,
sehingga masih sangat memungkinkan adanya perubahan yang disesuaikan
dengan kondisi yang ada. Atas perhatiannya, penulis ucapkan terima kasih.
DAFTAR PUSTAKA
[1]. Handyarso, Acep. “Rancang Bangun Robot Mobil Penjejak Dinding
Berbasis Pengendali PD Menggunakan Mikrokontroller AVR
ATmega8535” Universitas Diponegoro. 2007
[2]. Lucas, GW. “A Tutorial and Elementary Trajectory Model for the
Differential Steering System of Robot Wheel Actuators”. Internet. 2006.
[3]. Mahadmadi, Fajar. “Embedded C pada Mikrokontroller AVR
AT90S8515” Universitas Diponegoro. 2003
[4]. Setiawan, Iwan. Trias A. Darjat. “Rancang Bangun Sistem Kontrol
Robot Mobil untuk Keperluan Navigasi Darat Berbasis Trayektori
Bezier”. Universitas Diponegoro. 2006
[5]. Ogata, Katsuhiko. “Teknik Kontrol Otomatik jilid 1”. 1994. Erlangga:
Jakarta.
[6]. Silveira, PE. “Speed Control of an Autonomous Mobile Robot -
Comparison between a PID Control and a Control Using Fuzzy Logic”.
Internet. 2006.
[7]. Wiharto, Sumarno, Supriyanto. “Fisika SMA Kelas X”. 2004. Pemerintah
Kota Semarang: Semarang.
[8]. Julio E. Normey-Rico dkk. “Mobile Robot Path Tracking Using a
Robust PID Controller”. 2001. University of Santa Catarina—Brazil.