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