BAB II.rtf - Digital Library UNS

advertisement
BAB II
TINJAUAN PUSTAKA
2.1. Deskripsi Robot
Robot merupakan suatu hasil dari kemajuan teknologi yang dapat
berbentuk macam-macam, misalnya robot serangga, robot helikopter,
robot berbentuk anjing, robot berbentuk mirip manusia dan masih banyak
bentuk-bentuk lainnya. Robot ini pada umumnya diciptakan untuk dapat
mempermudah pekerjaan manusia. Saat ini robot telah mengalami
perkembangan yang sangat pesat, yaitu dapat di-reprogramming atau
dapat diprogram ulang. Jadi dengan bentuk mekanik yang sama, robot
dapat diprogram ulang untuk melakukan gerakan-gerakan yang lain.
Robot mempunyai dasar operasional. Dasar operasional robot
tersusun dari 5 elemen yaitu :
a) Mekanik robot merupakan anggota badan robot, yang dapat terbuat
dari bermacam-macam bahan baik dari logam, maupun dari bahan
non-logam, misalkan kayu, acrylic, dan lain-lain.
b) Sumber energi atau baterai. Sumber energi dapat berupa listrik,
hidrolik, dan lain-lain.
c) Peralatan transmisi. Alat-alat transmisi dapat berupa kabel, gear I
gerigi. Alat-alat ini merupakan penghubung antara mekanik robot
dengan sumber energi.
d) Sensor, merupakan indera dari robot. Alat ini berfungsi untuk
mengolah data-data yang diterimanya, dapat berupa switch, kamera,
dan lain-lain.
e) Otak dari robot merupakan suatu alat yang berfungsi untuk
menerima data-data melalui sensor dan mengolahnya untuk
melakukannya suatu pekerjaan sesuai dengan program yang telah
ditentukan, dapat berupa suatu chip mikrokontroler.
(Widodo Budiharto. 2006 )
5
6
2.2. Pengenalan Hardware
Adapun hardware yang digunakan dalam perancangan robot ini
adalah Mikrokontroler ATMEGA8535, Sensor Navigasi atau Pengindera
(Infra Merah dan Ultrasonik ), Penggerak Kaki (Motor Servo), dan Sumber
Daya (Batere).
2.2.1. Mikrokontroler
Mikrokontroler adalah sebuah chip yang berfungsi sebagai
pengontrol atau pengendali rangkaian elektronika dan pada umumnya
dapat menyimpan program didalamnya. Mikrokontroler jika diartikan
secara harafiah, berarti pengendali yang berukuran kecil atau mikro.
Sekilas mikrokontroler hampir sama dengan mikroprosessor. Namun
mikrokontroler memiliki banyak komponen yang
terintegrasi di
dalamnya misalnya Timer atau counter, sedangkan pada mikroprosessor
komponen tersebut tidak terintegrasi. Mikrokontroler sesuai untuk tugastugas yang lebih spesifik, karena mikrokontroler mempunyai kapasitas
memori total sebesar 64 Kbyte dimana jumlah memori tersebut sudah
termasuk memori internal. Pada mikrokontroler memori yang digunakan
biasanya adalah EPROM (Erasable Programabel Read Only Memory),
karena dapat diprogram ulang dan dapat juga dihapus dengan sinar
ultraviolet. Selain itu ada juga beberapa tipe memori lain yang
digunakan misalnya EEPROM (Electric by Erasable Programabel Read
Only Memory).
Mikrokontroler merupakan sebuah sistem komputer yang seluruh
atau sebagian di dalam satu chip IC, sehingga sering disebut sebagai
single chip mikrokomputer. Mikrokontroler merupakan sebuah sistem
komputer yang mempunyai satu atau beberapa tugas yang sangat
spesifik, berbeda dengan PC(Personal Computer) yang mempunyai
beberapa fungsi.
7
Gambar 2.1. Diagram Blok Sistem Mikrokontroler
( www.innovativeelectronics.com, 2009)
2.2.1.1. Central Processing Unit (CPU)
CPU terdiri atas dua bagian, yaitu unit pengendali (control
unit) serta unit aritmatika dan logika (ALU). Fungsi utama unit
pengendali adalah mengambil, mengkodekan, dan melaksanakan
urutan sebuah program yang tersimpan dalam memori.
Unit
pengendali
menghasilkan
dan
mengatur
sinyal
pengendali yang diperlukan untuk menyerempakkan operasi, aliran,
dan instruksi program. Unit aritmatika dan logika berfungsi untuk
menghasilkan proses perhitungan yang diperlukan dalam selama
program dijalankan serta mempertimbangkan suatu kondisi dan
mengambil suatu keputusan yang diperlukan untuk instruksi –
intruksi berikutnya.
2.2.1.2. Bus Alamat
Bus alamat berfungsi sebagai sejumlah lintasan saluran
pengelamatan antara alat dengan sebuah computer. Pengelamatan ini
harus ditentukan terlebih dahulu untuk menghindari terjadinya
kesalahan sebuah instruksi dan terjadinya benturan antara dua buah
8
alat yang bekerja secara bersamaan.
2.2.1.3. Bus Data
Bus data merupakan sejumlah lintasan saluran keluar
masuknya data dalam suatu mikrokontroler. Pada umumnya
saluran data yang masuk sama dengan saluran data yang keluar.
2.2.1.4. Bus Control
Bus control atau bus pengendali ini berfungsi untuk
menyerempakkan operasi mikrokontroler dengan rangkaian luar.
2.2.1.5. Memori
Didalam sebuah mikrokontroler terdapat suatu memori
yang berfungsi untuk menyimpan data atau program. Ada beberapa
jenis memori, diantaranya RAM merupakan memori yang dapat
dibaca dan ditulis, dan ROM yaitu memori yang hanya dapat
dibaca. Ada beberapa tingkatan memori, diantaranya adalah
register internal, memori utama, dan memori massal. Register
internal adalah memori di dalam ALU. Waktu akses register
sangat cepat, umumnya kurang dari 100ns. Memori utama adalah
memori yang ada pada suatu system. Waktu aksesnya lebih lambat
dibandingkan dengan register internal, yaitu 200 – 100ns. Memori
massal dipakai untuk penyimpanan berkapasitas tinggi, biasanya
berbentuk disket, pita magnetik, atau kaset.
( Agfianto Eko Putra. 2004 )
2.2.2. Mikrokontroler ATmega8535
Mikrokontroler AVR (Alf and Vegard’s Risc processor) standart
memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode
16-bit dan sebagian besar instruksi dieksekusi dalam 1(satu) siklus clock.
AVR berteknologi RISC (Reduced Instruction Set Computing).
9
Di dalam Mikrokontroler Atmega8535, sudah berisi:
a. Saluran I/O sebanyak 32 buah, yaitu Port A sampai Port D
b. ADC (Analog to Digital Converter) 10 bit sebanyak 8 chanel.
c. Tiga buah Timer/Counter
d. CPU yang memiliki 32 buah register
e. 131 Instruksi yang hanya membutuhkan 1 siklus clock
f. Watchdog Timer dengan osilator internal
g. 2 buah timer/counter 8 bit
h. 1 buah timer/counter 16 bit
i. Tegangan operasi 2,7 V – 5,5 V
j. Internal SRAM sebesar 1KB
k. Memori Flash sebesar 16KB dengan kemampuan Read While Write.
l. Unit interupsi internal dan eksternal
m. Port antarmuka SPI (Serial Pheripheral Interface)
n. Kecepatan hampir mencapai 16 MPIS pada Kristal 16 Mhz
o. Internal downloader USB AVR (In-system Programming dilengkapi
LED programming indicatior)
p. Tidak membutuhkan power tambahan saat melakukan download
program
q. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
Beberapa
karakteristik ADC
mikrokontroler ATMega8535 adalah
a. Mudah dalam pengoperasian
b. Resolusi 10 bit
c. Memiliki 8 masukan analog
d. Konversi pada saat CPU sleep
e. Interrupt waktu konversi selesai.
Internal
yang
terdapat pada
10
Gambar 2.2. Blok diagram ATmega8535
( www.innovativeelectronics.com, 2009)
11
Berikut sekema minimum system ATmega 8535 seperti ditunjukkan pada
Gambar 2.3.
Gambar 2.3. Skema ATmega 8535
( www.innovativeelectronics.com, 2009)
Konfigurasi pin ATmega8535, pada Gambar2.4 berikut ini merupakan
susunan kaki standar 40 pin Mikrokontroler AVR ATmega 8535.
Gambar 2.4. Konfigurasi pin ATmega8535
( www.innovativeelectronics.com, 2009)
12
Gambar IC ATMEGA8535 dapat dilihat pada gambar 2.4. Berdasar
gambar tersebut, dapat dijelaskan secara fungsional konfigurasi pin dari
ATmega8535 sebagai berikut :
1. VCC merupakan pin masukan positif catu daya. Setiap piranti
elektronika digital membutuhkan sumber daya yang umumnya sebesar
5V. Oleh karena itu, biasanya di PCB kit mikrokontroler selalu ada IC
regulator 7805
2. GND sebagai pin ground
3. Port A (PA0..PA7) merupakan pin I/O dua arah dan dapat diprogram
sebagai pin masukan ADC
4. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu Tmer/Counter, komparator analog, dan SPI
5. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu TWI, komparator analog dan Timer Osilator
6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu komparator analog, interupsi eksternal, dan komunikasi serial
7. Reset merupakan pin yang digunakan untuk me-reset mikrokontroler
8. XTAL1 dan XTAL2 sebagai pin masukan clock eksternal. Suatu
mikrokontroler membutuhkan sumber detak (clock) agar dapat
mengeksekusi instruksi yang ada di memeori. Semakin tinggi nilai
kristalnya, semakin cepat mikrokontroler tersebut
9. AVCC sebagai pin masukan tegangan untuk ADC
10. AREF sebagai pin masukan tegangan referensi
(Ary Heryanto dan Api Wisnu.2008)
2.2.3. Sensor
Sensor yaitu alat yang berfungsi mengukur besaran tertentu
(quantity) seperti objek, suhu, kelembaban, panas, jarak, dan sebagainya.
Sensor umumnya tidak dapat langsung masuk ke mikrokontroler karena
perlu penyesuaian besaran tegangan dan lain-lainnya. Oleh karena itu
dikondisikan dulu sinyalnya di bagian pengkondisi sinyal (signal
13
conditioner ), sehingga levelnya sesuai atau dapat dimengerti oleh
bagian input mikrokontroler atau prosesor lainnya.
2.2.3.1. Modul Sensor Infra Merah
Salah satu jenis sensor yang digunakan adalah sensor Sharp
GP2D12, merupakan sensor pendeteksi jarak yang memuaskan pada
apliksi robot, selain itu juga ukurannya yang kecil menghemat
tempat dan daya. Sensor Sharp GP2D12 ini dilengkapi kabel 3 pin
JST. Sensor infrared ranger terdiri dari sebuah LED infrared dan
sebuah Position Sensing Device (PSD). Sensor mengukur jarak
obyek yang memantulkan cahaya infra merah melalui proses
triangulasi. Keluaran analog dari sensor Infrared Ranger diubah oleh
modul DT-SENSE ULTRASONIC AND INFRARED RANGER
menjadi berbentuk pulsa atau data keluaran yang menyatakan jarak
obyek yang memantulkan cahaya infra merah tersebut.
( Budiharto, Widodo. 2006 )
Gambar 2.5. Sharp GP2D12 dan Kabel JST 3 Pin
( www.innovativeelectronics.com, 2009 )
Blok diagram dari sharp GP2D12 berisi led pemancar dan
penerima yang memiliki rangkaian pemroses, pengemudi dan
rangkaian osilasi, serta rangkaian output analog seperti gambar
berikut.
14
Gambar 2.6. Blok Diagram GP2D12
(www.innovativeelectronics.com, 2009)
Sensor ini mempunyai output 3 kabel, yang terdiri dari :
Pin kabel kuning sebagai tegangan output (Vo),
Pin kabel hitam sebagai GND
Pin kabel merah sebagai Vcc.
Gambar 2.7. Susunan Pin Sharp GP2D12
(www.innovativeelectronics.com, 2009)
GP2D12 mendeteksi bacaan terus menerus ketika diberi
daya. Out-put-nya berupa tegangan analog yang sesuai dengan jarak
yang diukur. Nilai tersebut diperbaharui setiap 32 ms. Umumnya
output dihubungkan ke converter A/ D yang mengubah hasil
pengukuran jarak ke bilangan biner sebagai input mikrokontroler.
15
Output-nya juga keluarannya adalah serial, jadi dapat langsung
dihubungkan ke system mikrokontroler dalam format serial.
Berdasarkan pengukuran, tegangan yang dihasilkan pada
jarak 10 cm ialah 2.6, dan menurun tidak secara linear pada jarak 80
cm berkisar pada tegangan 0.5 V.
Karakteristik optis dari GP2D12 pada (Ta=25 derajat celcius,
dan Vcc=5 V ), sensor tersebut dapat mengukur jarak dari 10 hingga
80 cm dengan arus maksimum 50 mA dan tipikal 22 mA.
Infrared memiliki sifat yang sama dengan transistor yaitu
menghasilkan kondisi cut off dan saturasi. Perbedaannya ialah,
bilamana pada transistor kondisi cut off terjadi saat tidak ada arus
yang mengalir melalui basis ke emitor dan kondisi saturasi terjadi
saat ada arus mengalir melalui basis ke emitor maka ada
phototransistor kondisi cut off terjadi saat tidak ada cahaya infrared
yang diterima dan kondisi saturasi terjadi saat ada cahaya infrared
yang diterima.
2.2.3.2. Sensor UltraSonic and Infrared Ranger (USIRR)
DT-SENSE Ultrasonic and InfraRed Ranger merupakan
modul sensor pengukur jarak dengan media gelombang ultrasonic
dan dapat dihubungkan dengan maksimum 2 buah infrared ranger
(Sharp GP2D12). Modul ini dapat dengan mudah dihubungkan ke
berbagai sistem berbasis mikrokontroler dan hanya membutuhkan 1
pin I/O saja. Modul ini dapat digunakan dalam aplikasi pengukur
jarak, pintu otomatis, sekuriti, robot cerdas, dan lain-lain.
16
Gambar 2.8. Modul Sensor UltraSonic and InfraRed Ranger
(www.innovativeelectronics.com, 2009)
Sensor ultrasonic adalah sensor yang bekerja berdasarkan
prinsip pantulan gelombang suara, dimana sensor menghasilkan
gelombang suara yang kemudian menangkapnya kembali dengan
perbedaan waktu sebagai dasar penginderaannya. Perbedaan waktu
antara gelombang suara yang dipancarkan dan yang diterima kembali
adalah berbanding lurus dengan jarak atau tinggi objek yang
memantulkannya. Jenis objek yang dapat diinderanya adalah padat,
cair dan butiran. Tanpa kontak jarak 2 cm sampai 3 meter dan dapat
dengan mudah dihubungkan dengan mikrokontroler malalui satu pin
I/O saja
Ultrasonic Ranger ini berkerja dengan cara memancarkan
sinyal ultrasonic (yang memiliki frekuensi jauh di atas jangkauan
pendengaran manusia) dan menghasilkan pulsa atau data keluaran
yang menyatakan jarak yang ditempuh oleh sinyal tersebut sebelum
menyentuh sebuah obyek dan memantul kembali.
2.2.4. Motor Servo
Servo motor dilengkapi dengan motor DC untuk mengendalikan
posisi sebuah robot. Rotor motor dapat diputar/ diposisikan hingga 180
derajat.untuk servo motor biasa digunakan untuk mengendalikan gerak
dari toys (mainan) seperti model mobil, pesawat, perahu, dan helicopter.
Karena motor servo secara luas digunakan untuk hobi-hobi
17
seperti yang telah disebutkan di atas, tentunya variasinya pun sangat
banyak dijual. Dan alat penggerak ini banyak tersedia dan murah.
Servo motor ialah DC motor berkualitas tinggi yang memenuhi
syarat untuk digunakan pada aplikasi servo seperti closed control loop.
Motor tersebut harus dapat menangani perubahan yang cepat pada posisi,
kecepatan dan perpecepatan, serta harus mempu menangani intermittent
torque.
Servo mempunyai 3 kabel, yaitu Vcc, ground dan PW input.
Tidak seperti PMW pada DC motor, input sinyal untuk servo tidak
digunakan untuk mengatur kecepatan tetapi digunakan untuk mengatur
posisi dari putaran servo.
Gambar 2.9 Pin Pada Motor Servo
(www.innovativeelectronics.com, 2009)
Sinyal PW digunakan untuk servo mempunyai frekwensi 50 Hz,
sehingga pulsa dbuat setiap 20 ms. Sebagai contoh, sebuah pulsa 0.7 ms
akan memutarkan disk servo ke posisi kiri (-120 derajat), dan pulsa 1.7
ms akan memutarkan disk ke posisi kanan (+120 derajat). Kekurangan
servo ialah tidak menyediakan feedback. Umumnya kita membeli servo
continous karena dapat berputar 360 derajat. Berikut contoh dari servo
motor dan beberapa alat penggerak lainnya yang biasa digunakan untuk
menggerakkan robot.
( Widodo Budiharto, 2006 )
18
Gambar 2.10. Motor Servo Continous Parallax
( www.innovativeelectronics.com, 2009 )
2.2.5. Sumber Daya
Dalam fungsinya, robot membutuhkan tenaga, dan hampir semua
robot menggunakan tenaga listrik dalam penerapannya. Ada dua sumber
dari tenaga listrik pada robot bergerak (mobile robotic), yaitu baterai dan
tenaga surya(matahari).
2.2.5.1. Baterai
Baterai adalah tenaga penggerak robot yang paling banyak
digunakan karena penggunaannya sangat mudah. Ada banyak sekali
jenis baterai yang ada untuk menggerakkan sebuah robot, tetapi
beberapa jenis baterai yang sangat umum digunakan adalah carbonzinc,
alkalin,
nickel-cadmium,
lead-acid,
dan
lithium.
Jika
menggunakan IC TTL atau komponen lainnya yang menggunakan
tegangan 5 Volt, dapat digunakan dengan sumber dari baterai 9 Volt
atau gabungan baterai dengan total tegangan yang memadai sebagai
sumber regulator 7805 yang dapat mensuplai arus hingga 90 mA.
2.2.5.2. Catu Daya
Saat ini sebagai regulator tegangan, telah digunakan IC yang
khusus seperti 7812 untuk regulator tegangan positif 12 Volt dan
19
7912 untuk regulator tegangan negatif -12 Volt. Rangkaian catu daya
yang mampu mengeluarkan tegangan sangat stabil. CT adalah
singkatan dari Center Tap yang berfungsi sebagai ground / 0 Volt.
2.3. Pengenalan Software
Dalam melakukan pemrograman banyak software yang dapat
digunakan seperti Pinneacle, CodeVisionAVR, BASCOM-8051, AVR
Studio-4 dan BASCOM-AVR.
Dalam
perancangan
robot
penghindar
halangan
penulis
menggunakan bahasa pemrograman bahasa C dengan menggunakan
software CodeVisionAVR.
2.3.1. CodeVisionAVR
Software ini digunakan untuk menuliskan program ke dalam
mikrokontroler ATmega8535. Software pemrograman adalah suatu
program yang digunakan untuk menulis program. Salah satu softwarenya yaitu CodeVisionAVR program ini mendukung berbagai macam
jenis mikrokontroler diantaranya mikrokontroler ATmega8535. Program
ini juga mendukung berbagai macam bahasa pemrograman diantaranya
adalah bahasa assembler, C, C++ dan bahasa basic.
.
2.3.2. OSPAVR II
Software Downloader adalah software yang digunakan untuk
mendownload program yang berekstensi “.hex” ke mikrokontroler salah
satunya jenis mikrokontroler ATmega8535. Software yang dipakai
dalam men-download program adalah OspAVR II
Download