BAB II

advertisement
BAB II
LANDASAN TEORI
2.1
Umum
Robot adalah sebuah alat mekanik yang dapat melakukan tugas fisik, baik
menggunakan pengawasan dan kontrol manusia, ataupun menggunakan program
yang telah didefinisikan terlebih dulu (kecerdasan buatan). Robot biasanya
digunakan untuk tugas yang berat, berbahaya, atau pekerjaan yang berulang-ulang
dan kotor. Pada umumnya robot industri digunakan dalam bidang produksi.
Penggunaan robot lainnya termasuk untuk pembersihan limbah beracun,
penjelajahan bawah air dan luar angkasa, pertambangan, pekerjaan "cari dan
tolong" (search and rescue), dan untuk pencarian tambang. Pada abad 20, robot
mulai memasuki pasaran konsumen di bidang hiburan dan alat pembantu rumah
tangga, seperti penyedot debu dan pemotong rumput.
Ketika para pencipta robot pertama kali mencoba meniru manusia dan
hewan, mereka menemukan bahwa hal tersebut sangatlah sulit dan membutuhkan
tenaga perhitungan yang jauh lebih banyak dari yang tersedia pada masa itu. Jadi,
penekanan perkembangan diubah ke bidang riset lainnya. Robot sederhana beroda
digunakan untuk melakukan eksperimen dalam tingkah laku, navigasi, dan
perencanaan jalur. Teknik navigasi tersebut telah berkembang menjadi sistem
kontrol robot otonom yang tersedia secara komersial. Contoh paling mutakhir dari
sistem kontrol navigasi otonom yang tersedia adalah sistem navigasi berdasarkan
laser dan VSLAM (Visual Simultaneous Localization and Mapping) dari
ActivMedia Robotics dan Evolution Robotics.
6
Ketika para teknisi siap untuk mencoba robot berjalan kembali, mereka
mulai dengan heksapoda dan platform berkaki banyak lainnya. Robot-robot
tersebut meniru serangga dan arthropoda dalam bentuk dan fungsi. Jenis badan
tersebut menawarkan fleksibilitas yang besar dan terbukti dapat beradaptasi
dengan berbagai macam lingkungan, tetapi biaya dari penambahan kerumitan
mekanikal telah mencegah pengadopsian oleh para konsumer. Dengan lebih dari
empat kaki, robot-robot ini stabil secara statis yang membuat mereka bekerja lebih
mudah. Tujuan dari riset robot berkaki dua adalah mencapai gerakan berjalan
menggunakan gerakan pasif-dinamik yang meniru gerakan manusia.
Masalah teknis lain yang menghalangi penerapan robot secara meluas
adalah kompleksitas penanganan objek fisik dalam lingkungan alam yang tetap
kacau. Sensor taktil dan algoritma penglihatan yang lebih baik mungkin dapat
menyelesaikan masalah ini.
Pada bidang kedokteran telah dibuat robot medis, dengan dua perusahaan
khusus, Computer Motion dan Intuitive Surgical, yang menerima pengesahan
pengaturan di Amerika Utara, Eropa, dan Asia atas robot-robotnya untuk
digunakan dalam prosedur pembedahan minimal. Otomasi laboratorium juga
merupakan area yang berkembang. Di otomasi laboratorium, robot benchtop
digunakan untuk memindahkan sampel biologis atau kimiawi antar perangkat
seperti inkubator, berupa pemegang dan pembaca cairan. Dimana robot disukai
untuk menggantikan pekerjaan manusia adalah dalam eksplorasi laut dalam dan
eksplorasi antariksa. Untuk tugas-tugas tersebut, bentuk tubuh arthropoda
umumnya disukai. Mark W. Tilden dahulunya spesialis Laboratorium Nasional
Los Alamos membuat robot murah dengan kaki bengkok tetapi tidak
7
menyambung, sementara orang lain mencoba membuat kaki kepiting yang dapat
bergerak dan tersambung penuh.
Robot bersayap eksperimental dan contoh lain mengeksploitasi biomimikri
juga dalam tahap pengembangan dini. Yang disebut "nanomotor" dan "kawat
cerdas" diperkirakan dapat menyederhanakan daya gerak secara drastis, sementara
stabilisasi dalam penerbangan nampaknya cenderung diperbaiki melalui giroskop
yang sangat kecil.
Robot memiliki berbagai macam konstruksi, diantaranya adalah :
1. Robot Mobil
2. Robot Tangan
3. Robot Humanoid
4. Flying Robot
5. Robot Berkaki
 Robot Mobil
Kata mobile mempunyai arti bergerak, yang dimaksud dengan robot
mobile adalah robot tersebut dapat bergerak secara otonomi, memiliki navigasi,
dan pergerakannya yang tidak tetap tergantung dari medan jelajahnya.
Robot mobil sangat disukai bagi orang yang mulai mempelajari robot,
karena membuat robot mobil tidak memerlukan kerja fisik yang berat. Untuk
dapat membuat sebuah robot mobil minimal diperlukan pengetahuan tentang
mikrokontroler dan sensor-sensor elektronik.
Base robot mobil dapat dengan mudah dibuat dengan menggunakan
triplek, acrylic sampai menggunakan logam (aluminium). Robot mobil dapat
8
dibuat sebagai pengikut garis (Line Follower) atau pengikut dinding (Wall
Follower) ataupun pengikut cahaya (Light Follower).
 Robot Tangan
Robot tangan adalah robot yang memiliki bentuk dan fungsi menyerupai
tangan. Pada umumnya, robot Tangan banyak digunakan di dunia industri. Pada
bagian industri otomotif biasanya robot ini digunakan untuk memasang ataupun
membuat komponen-komponen mesin.
 Robot Humanoid
Robot Humanoid adalah robot yang dibuat menyerupai manusia baik
bentuk dan fungsi bagian-bagian tubuhnya. Robot humanoid biasanya digunakan
pada bidang hiburan. Selain itu, ada pula yang membuat robot humanoid untuk
keperluan rumah tangga dan dapat pula berkomunikasi dengan manusia1. Robot
humanoid di tunjukan pada Gambar 2-1
Gambar 2-1 Robot Humanoid
1
Sandy Halim, ST. Merancang Mobile Robot Pembawa Objek Menggunakan OOPic-R. Jakarta:
Elexmedia Komputindo, 2007 , hal 1.
9
 Flying Robot
Flying Robot umumnya berbentuk kecil menyerupai serangga dan
bersayap. Robot ini pun dalam pergerakannya masih dikendalikan oleh operator.
Biasanya dipasang pula sebuah kamera kecil pada bagian tubuh flying robot. Pada
bidang militer robot, sangat dibutuhkan dalam hal memata-matai dan terus
dikembangkan sampai sekarang.
 Robot Berkaki
Robot yang menggunakan aktuator berupa kaki-kaki yang menyerupai
serangga atau arthropoda. Fungsi kerja pada umumnya hampir sama dengan robot
mobil, hanya saja memiliki kelebihan pada permukaan-permukaan jalan yang
tidak rata dan tangga.
2.2
Rangkaian Sensor
Sensor yang digunakan adalah photo dioda sebagai penerimanya dan LED
super-bright untuk pemancarnya.
2.2.1
LED Super-Bright
Pada dioda penyearah, energi yang timbul akibat elektron jatuh dari pita
konduksi ke pita valensi dikeluarkan sebagai panas. Tetapi, pada LED SuperBright, energi dipancarkan sebagai cahaya2. Proses dasar dari cara kerja LED
ditunjukan pada Gambar 2-2 dan pada Gambar 2-3 LED yang sedang
memancarkan cahaya.
2
Malvino Hanapi Gunawan, Prinsip-prinsip Elektronika, Jakarta : Erlangga, 1981, hlm.47.
10
Gambar 2-2 Proses dasar dari cara kerja sebuah LED
Gambar 2-3 Tampak LED yang memancarkan cahaya
Dengan menggunakan unsur-unsur seperti Galium, Arsen, dan Phosfor,
pabrik dapat membuat LED yang memancarkan warna merah, kuning, dan infra
merah (tak terlihat)3. LED yang menghasilkan pancaran yang terlihat dapat
berguna pada display peralatan, mesin hitung, jam digital, dan lain-lain. Selain
warna LED yang telah disebutkan, adapun warna lain seperti hijau, hijau superbright, putih super-bright, biru super-bright, merah super-bright. Bentuk fisik
LED ditunjukan pada Gambar 2-3. LED membutuhkan tegangan rendah (1V
sampai 3V).
3
Malvino Hanapi Gunawan, Prinsip-prinsip Elektronika, Jakarta : Erlangga, 1981, hlm.47.
11
2.2.2
Photo Dioda
Photo dioda adalah sejenis dengan dioda pada umumnya. Energi thermal
menghasilkan pembawa minoritas dalam dioda. Makin tinggi suhu, makin besar
arus dioda yang terbias reverse. Energi cahaya juga menghasilkan pembawa
minoritas. Perbedaan pokok pada photo dioda adalah dipasangnya sebuah lensa
pemfokus sinar. Lensa tersebut berfungsi untuk memfokuskan sinar jatuh. Prinsip
kerja dari photodioda adalah sebuah dioda diberi reverse bias. Makin kuat cahaya,
makin banyak jumlah pembawa yang dihasilkan pembawa dan makin besar arus
reverse, besarnya arus reverse ini tergantung suhu dan intensitas cahaya yang
jatuh pada deplection layernya. Karenanya photo dioda merupakan detektor
cahaya yang baik.4 Pada rangkaian ini konduktivitas dioda ditentukan langsung
oleh cahaya yang jatuh padanya yang dikirim oleh led super-bright.
Nilai resistansi photo dioda akan naik bila cahaya tidak mengenai
permukaannya dan nilai resistansi akan turun apabila permukaannya dikenai
cahaya.
2.2.3
LDR
LDR adalah suatu bentuk komponen yang mempunyai perubahan
resistansi yang besarnya tergantung pada cahaya. Karakteristik LDR terdiri dari
dua macam yaitu Laju Recovery dan Respon Spektral :
4
Malvino Hanapi Gunawan, Prinsip-prinsip Elektronika, Jakarta : Erlangga, 1981, hlm.48.
12
Gambar 2-4 LDR
2.2.3.1 Laju Recovery
Bila sebuah LDR dibawa dari suatu ruangan dengan level kekuatan cahaya
tertentu kedalam suatu ruangan yang gelap, maka bisa kita amati bahwa nilai
resistansi dari LDR tidak akan segera berubah resistansinya pada keadaan ruangan
gelap tersebut. Namun LDR tersebut hanya akan bisa mencapai harga di
kegelapan setelah mengalami selang waktu tertentu. Laju recovery merupakan
suatu ukuaran praktis dan suatu kenaikan nilai resistansi dalam waktu tertentu.
Harga ini ditulis dalam K /detik, untuk LDR type arus harganya lebih besar dari
200 K /detik (selama 20 menit pertama mulai dari level cahaya 100 lux),
kecepatan tersebut akan lebih tinggi pada arah sebaliknya, yaitu pindah dari
tempat gelap ke tempat terang yang memerlukan waktu kurang dari 10 ms untuk
mencapai resistansi yang sesuai dengan level cahaya 400 lux.
2.2.3.2 Respon Spektral
LDR tidak mempunyai sensitivitas yang sama untuk setiap panjang
gelombang cahaya yang jatuh padanya (yaitu warna). Bahan yang biasa digunakan
sebagai penghantar arus listrik yaitu tembaga, alumunium, baja, emas, dan perak.
Dari kelima bahan tersebut tembaga merupakan penghantar yang paling banyak
digunakan karena mempunyai daya hantar yang baik (TEDC, 1998).
13
2.3
IC LM324
Opperational Amplifier merupakan sebuah komponen yang banyak
digunakan sebagai pengkondisi sinyal. Biasanya Op-Amp digunakan untuk
memperkuat tegangan karena tegangan yang diinginkan terlalu kecil. Dalam
penelitian ini, Op-Amp difungsikan sebagai voltage comparator (pembanding
tegangan). Lambang Op-Amp ditunjukan pada Gambar 2-5.
Op-Amp mempunyai masukan diferensial dengan dua terminal, yaitu :
1) Terminal masukan yang bertanda positif (+) yang disebut noninverting.
2) Terminal masukan yang bertanda negatif (-) yang disebut inverting.
Gambar 2-5 Op - Amp
LM324 suatu IC Opperational Amplifier, dengan delapan input (empat
inverting dan empat non-inverting) dan empat output. IC LM324 berfungsi
sebagai comparator atau pembanding. Jadi, tegangan antara photodioda dan
tegangan referensi (dalam hal ini menggunakan potensiometer) dibandingkan.
Jika tegangan referensi dihubungkan ke non-inverting dan lebih besar nilai
tegangannya, maka hasil outputnya mendekati VCC, begitu pula sebaliknya. Jika
14
dihubungkan ke inverting dan lebih besar tegangannya, maka outputnya akan
mendekati nol. Pin-pin IC LM324 ditunjukan pada Gambar 2-6.
Gambar 2-6 Pin IC LM3245
2.4
Penggerak Motor dengan IC L293D
IC L293D khusus untuk digunakan pada motor sebagai pengganti relay,
namun dengan syarat pin enable 1 dan 2 harus dalam kondisi 1 (high). Dapat
digunakan pada arah bidirectional, sanggup pada arus maksimum 1200 mA.
Terdiri dari 16 pin dan hadir dalam 2 versi tanpa D (L293) dan dengan D
(L293D). Huruf D menunjukan adanya dioda yang berfungsi mengurangi efek
induksi tegangan.
Setiap sinyal sensor yang masuk akan diterjemahkan oleh mikrokontroler
ke dalam bentuk nyala output dan gerakan-gerakan motor. Gerakan-gerakan
motor yang dapat bergerak maju dan mundur dikendalikan melalui motor DC
driver. Rangkaian penggerak motor disusun dari driver IC L293D yang disusun
5
Datasheet IC LM324, Low Power Quad Operational Amplifier, hlm. 1.
15
sedemikian rupa dan dihubungkan ke motor dc. Untuk mengaktifkan rangkaian
penggerak motor adalah dengan memberikan input high pada jalur masukan
secara bergantian. Jika input 1 diberikan kondisi high maka motor akan bergerak
maju, sedangkan apabila input 2 diberikan kondisi high, maka sebaliknya motor
akan bergerak mundur. Input high pada kedua jalur masukan tidak diperkenankan.
Pin-pin IC L293D ditunjukan pada Gambar 2-7.
Gambar 2-7 Pin IC L293D6
2.5
Motor Arus Searah
Motor arus searah adalah suatu mesin listrik yang mengubah energi listrik
menjadi energi mekanik, yaitu dalam suatu bentuk tenaga gerak putar atau rotasi.
Kontruksi motor arus searah sama dengan generator arus searah. Motor arus
searah dapat pula berfungsi sebagai generator arus searah atau sebaliknya. Bentuk
fisik motor dc ditunjukan pada Gambar 2-8.
Mesin arus serah bila dialiri arus listrik pada kumparan medan terjadi
penguatan, maka timbul gaya Lorentz pada tiap-tiap sisi kumparan jangkar
tersebut. Arah gaya Lorentz ditentukan dengan kaidah tangan kiri:
a.
6
Ibu jari menunjukkan arah gaya.
Datasheet IC L293D, quadruple half-h drivers, hlm. 1.
16
b.
Jari telunjuk menunjukkan arah medan (dari kutub utara ke kutub
selatan).
c.
Jari tengah menunjukkan arah tegangan atau arus.
Gambar 2-8 Motor DC
Prinsip dasar dari motor arus searah (motor DC) adalah jika sebuah kawat
berarus diletakkan antara kutub magnet utara dan selatan, maka pada kawat
tersebut akan bekerja suatu gaya yang akan menggerakan kawat itu.
Gerak kawat tersebut dapat ditentukan dengan “kaidah tangan kiri” yang
berbunyi sebagai berikut: “apabila tangan kiri terbuka dan diletakkan di antara
kutub utara dan kutub selatan sehingga garis-garis gaya yang keluar dari kutub
magnet menembus telapak tangan kiri dan arus di dalam kawat mengalir searah
dengan keempat jari, maka kawat itu akan mendapat gaya yang arahnya sesuai
dengan arah ibu jari”.
Untuk membalik arah putaran DC dapat dilakukan dengan membalik arah
arus, dengan sisi-sisi kumparannya serta membalik polaritas motor pada klemnya.
17
2.6
Serial LCD (Liquid Crystal Display)
LCD (Liquid Crystal Display) adalah suatu jenis media tampilan yang
menggunakan kristal cair sebagai penampil utama. LCD bisa memunculkan
gambar atau tulisan dikarenakan terdapat banyak sekali titik cahaya (piksel) yang
terdiri dari satu buah kristal cair sebagai sebuah titik cahaya. Walau disebut
sebagai titik cahaya, namun kristal cair ini tidak memancarkan cahaya sendiri.
Sumber cahaya di dalam sebuah perangkat LCD adalah lampu neon berwarna
putih di bagian belakang susunan kristal cair tadi.
Titik cahaya yang jumlahnya puluhan ribu bahkan jutaan inilah yang
membentuk tampilan citra. Kutub kristal cair yang dilewati arus listrik akan
berubah karena pengaruh polarisasi medan magnetik yang timbul dan oleh
karenanya akan hanya membiarkan beberapa warna diteruskan sedangkan warna
lainnya
tersaring.
Dalam
menampilkan
karakter
untuk
membantu
menginformasikan proses dan control yang terjadi dalam suatu program robot kita
sering menggunakan LCD juga. LCD yang sering digunakan dan paling murah
adalah LCD dengan banyak karakter 16x2. Maksudnya semacam fungsi tabel di
ms office. 16 menyatakan kolom dan 2 menyatakan baris.
Gambar 2-9 Tampilan sebuah LCD
18
Konfigurasi pin dari LCD ditunjukkan pada Gambar 2-10
Gambar 2-10 Konfigurasi pin LCD
Modul LCD memiliki karakteristik sebagai berikut:
• Terdapat 16 x 2 karakter huruf yang bisa ditampilkan.
• Setiap huruf terdiri dari 5x7 dot-matrix cursor.
• Terdapat 192 macam karakter.
• Terdapat 80 x 8 bit display RAM (maksimal 80 karakter).
• Memiliki kemampuan penulisan dengan 8 bit maupun dengan 4 bit.
• Dibangun dengan osilator lokal.
• Satu sumber tegangan 5 volt.
• Otomatis reset saat tegangan dihidupkan.
• Bekerja pada suhu 0oC sampai 55oC.
Berikut pin connection pada LCD :

PIN 1: Vss - GND

PIN 2: VDD - +5V VCC

PIN 3: Vo - Contrast Adjustment

PIN 4: RS - Reset
19

PIN 5: R/W - Read/Write ("0" = Write to LCD module "1" = Read from
LCD module)
2.7

PIN 6: E - Enable Signal

PIN 7: DB0 Data 0

PIN 8: DB1 Data 1

PIN 9: DB2 Data 2

PIN 10: DB3 Data 3

PIN 11: DB4 Data 4

PIN 12: DB5 Data 5

PIN 13: DB6 Data 6

PIN 14: DB7 Data 7

PIN 15: Backlight +5V VCC

PIN 16: Backlight GND
AVR ATMega8535
Mikrokontroler adalah suatu keping IC dimana terdapat mikroprosesor dan
memori program (ROM) serta memori serbaguna (RAM), bahkan ada beberapa
jenis mikrokontroler yang memiliki fasilitas ADC, PLL, EEPROM dalam satu
kemasan. Penggunaan mikrokontroler dalam bidang control sangat luas dan
popular7.
Ada beberapa vendor yang membuat mikrokontroler diantaranya Intel,
Microchip, Winbond, Atmel, Philips dan Xeremics.
Mikrokontroler AVR (Alf and Vegard’s Risc prosesor) memiliki arsitektur
RISC 8 bit, dimana semua instruksi dikemas dalam kode 16-bit (16-bits word) dan
7
Lukman Rosyidi, Modul Training Mikrokontroller AVR Level Basic, Jakarta : Prasimax, 2003,
hlm. 4.
20
sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock, berbeda dengan
instruksi MCS 51 yang membutuhkan 12 siklus clock. Karena kedua jenis
mikrokontroler tersebut memiliki arsitektur yang berbeda. AVR berteknologi
RISC (Reduce Instruction Set Computing), sedangkan seri MCS 51 berteknologi
CISC (Complex Instruction Set Computing)8. Secara umum, AVR dapat
dikelompokkan menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx,
keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan masingmasing kelas adalah memori, peripheral dan fungsinya. Dari segi arsitektur dan
instruksi yang digunakan, mereka bisa dikatakan hampir sama. Oleh karena itu,
dipergunakan salah satu AVR produk Atmel, yaitu ATMega 8535. Selain mudah
didapatkan dan lebih murah, ATMega 8535 juga memiliki fasilitas yang lengkap.
Untuk tipe AVR ada 3 jenis yaitu AT Tiny, AVR klasik, AT Mega.
Perbedaannya hanya pada fasilitas dan I/O yang tersedia serta fasilitas lain seperti
ADC, EEPROM dan lain sebagainya. Salah satu contohnya adalah AT Mega
8535. Memiliki teknologi RISC dengan kecepatan maksimal 16 MHz membuat
ATMega 8535 lebih cepat bila dibandingkan dengan varian MCS 51. Dengan
fasilitas yang lengkap tersebut menjadikan ATMega 8535 sebagai mikrokontroler
yang powerfull. Blok digram ATMega8535 ditunjukan pada Gambar 2-11.
ATMega8535 memiliki bagian sebagai berikut9:
1.
Saluran I/O sebanyak 32 buah, yaitu PortA, PortB, PortC dan
PortD.
2.
ADC 10 bit sebanyak 8 saluran.
8
Lingga Wardhana, Mikrokontroller AVR Seri ATmega8535 Simulasi, Hardware, dan Aplikasi,
Yogyakarta : ANDI, 2006, hlm. 1.
9
Lingga Wardhana, Mikrokontroller AVR Seri ATmega8535 Simulasi, Hardware, dan Aplikasi,
Yogyakarta : ANDI, 2006, hlm. 3.
21
3.
Tiga buah Timer/Counter dengan kemampuan pembandingan.
4.
CPU yang terdiri atas 32 buah register.
5.
Watchdog Timer dengan osilator internal.
6.
SRAM sebesar 512 byte.
7.
Memori flash sebesar 8 kb dengan kemampuan Real While Write.
8.
Unit interupsi internal dan eksternal.
9.
Port antarmuka SPI.
10.
EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
11.
Antarmuka komparator analog.
12.
Port USART untuk komunikasi serial.
Gambar 2-11 Blok Diagram ATMega 8535
22
Gambar 2-12 Konfigurasi pin ATMega 8535
Konfigurasi Pin ATMega 853510
Konfigurasi pin ATMega 8535 bisa dilihat pada Gambar 9. Dari gambar tersebut
dapat dijelaskan secara fungsional konfigurasi pin ATMega 8535 sebagai berikut:
1.
VCC merupakan pin yang berfungsi sebagai pin masukkan catu
daya.
2.
GND merupakan pin ground.
3.
Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukkan
ADC.
4.
Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi
khusus, yaitu Timer/Counter, komparator analog dan SPI.
10
Lukman Rosyidi, Modul Training Mikrokontroller AVR Level Basic, Jakarta : Prasimax, 2003,
hlm. 7-10.
23
5.
Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi
khusus, yaitu komparator analog dan Timer Oscillator.
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 merupakan pin masukkan clock eksternal.
9.
AVCC merupakan pin masukkan tegangan untuk ADC.
10.
AREF merupakan pin masukkan tegangan referensi ADC.
Untuk memprogram mikrokontroler dapat menggunakan bahasa assembler
atau bahasa tingkat tinggi yaitu bahasa C. Bahasa yang digunakan memiliki
keunggulan tersendiri, untuk bahasa assembler dapat diminimalisasi penggunaan
memori program sedangkan dengan bahasa C menawarkan kecepatan dalam
pembuatan program. Untuk bahasa assembler dapat ditulis dengan menggunakan
text editor setelah itu dapat dikompilasi dengan tool tertentu misalnya asm51
untuk MCS51 dan AVR Studio untuk AVR.
2.8
CodeVision AVR C Compiler
CodeVision AVR C Compiler merupakan software yang mendukung
pemrograman chip keluaran atmel dalam bahasa C. Jenis-jenis mikrokontroler
yang dapat diprogram di CodeVision antara lain AVR ATMega dan ATTiny.
Pada umumnya program yang dieksekusi adalah logika dan aritmatika.
24
Beberapa contoh dari penulisan program:
1. if
(kondisi)
{pernyataan1}
else
{pernyataan2};
(menyatakan
persyaratan bahwa jika kondisi terpenuhi, maka pernyataan1 akan
dieksekusi. Sedangkan jika kondisi tidak terpenuhi, maka pernyataan2
akan dieksekusi).
2. if (kondisi) {pernyataan}; (menyatakan persyaratan bahwa jika kondisi
terpenuhi, maka pernyataan akan dieksekusi).
3. while (kondisi) {pernyataan}; (menyatakan persyaratan bahwa
pernyataan akan dieksekusi jika dan hanya jika kondisi terpenuhi. Jika
tidak, maka tidak mengeksekusi apapun).
Dalam penulisan program ada hal-hal yang perlu diperhatikan, antara lain;
penulisan huruf kapital dan huruf kecil karena sangat berpengaruh dalam
eksekusi, serta penggunaan “;” setelah program yang ingin dijalankan. Setelah
selesai menuliskan program software CodeVision tersebut menyediakan compiler
yang dapat membantu programmer apakah program yang dibuat sudah benar atau
belum. Jika masih terdapat hal yang salah, pada kolom “error” terdapat baris yang
masih salah.
Untuk inisialisasi port menggunakan DDRx untuk input/output dan
PORTx untuk input/output dengan nilai 0 atau 1. DDRC=0xFF; PORTC=0xFF;
(portC sebagai output dengan nilai 1 pada keseluruhan pinnya). Tampilan
workspace Code Vision AVR C Compiler ditunjukan pada Gambar 2-13.
25
Gambar 2-13 Workspace CodeVisionAVR C Compiler
2.9
Port usb
Pada pembuatan robot dibutuhkan kabel ISP (In System Programming)
adalah kemampuan khusus mikrokontroler untuk dapat diprogram langsung dalam
sistem rangkaiannya dengan membutuhkan jumlah pin yang minimal. kabel ISP
digunakan sebagai downloader yang menggunakan Port usb yang terdapat pada
PC. Dengan menghubungkan port usb dengan downloader ke AVR, maka
program
yang
dituliskan
pada
software
ditransfer/didownload ke mikrokontroler tersebut.
26
CodeVision
AVR
dapat
Gambar 2-14 Downloader USB
27
Download