Refisi Bis Pend Ada Ran

download Refisi Bis Pend Ada Ran

If you can't read please download the document

Transcript of Refisi Bis Pend Ada Ran

1

BAB I PENDAHULUAN

A. Latar Belakang Masalah Perkembangan dunia robot di Indonesia sudah sangat pesat. Terbukti banyaknya kontes-kontes robot yang diselenggarakan dan dari jumlah pesertanyapun senakin meningkat dari tahun ketahun. KRCI (kontes robot cerdas Indonesia) adalah kontes yang diadakan setiap satu tahun sekali dan berskala nasional yang diikuti oleh Perguruan Tinggi seluruh Indonesia. Kontes robot semacam inilah yang akan melahirkan teknologi baru dan juga memacu kreatifitas anak bangsa untuk mengembangkan dunia robotika. Robot berkaki adalah salah satu kategori yang dilombakan dalam KRCI. Robot ini kebanyakan menggunakan motor servo sebagai penggeraknya. Disetiap kaki robot ini minimal menggunakan 2 buah motor servo untuk gerakan mengangkat kaki dan gerakan maju-mundur kaki. Robot berkaki 6 akan menggunakan minimal 12 motor servo dan robot berkaki 8 akan menggunakan minimal 16 buah motor servo sebagai penggerak kakinya. Banyaknya pemakaian motor servo ini akan memper besar biaya pembuatan robot tersebut. Solusi yang tepat untuk permasalahan diatas adalah membuat robot berkaki dengan motor servo yang minimal tetapi dengan fungsi yang sama. Robot Insecticon Hexapod Explorer dibuat dengan 6 kaki tetapi hanya digerakkan dengan 2 motor servo. Kemampuan robot ini hampir sama dengan robot yang

2

menggunakan banyak motor servo dan juga robot ini bisa mendeteksi suatu objek yang telag ditentukan. Robot Insecticon Hexapod Explorer nantinya bisa dikembangkan untuk keperluan eksplorasi. Robot ini mempunyai 6 kaki sehingga dapat berjalan dengan stabil dalam melekukan fungsinya. Selain itu robot ini dilengkapi sensor-sensor jarak yang dapat mendeteksi halangan agar robot tidak menabrak ketika berjalan dan juga bisa berbelok kekanan-kekiri bahkan dalam kondisi tertentu bisa berjalan memutar. Untuk mendukung kerja robot yang komplek ini diperlukan juga mekanik-mekanik yang sesuai dan pemrograman yang berbasis mikrokontroler AVR ATMega 8535 dari Atmel.

B. Identifikasi Masalah. Robot Insecticon Hexapod Explorer ini diharapkan dapat bekerja sesuai dengan apa yang diharapkan. Untuk mewujudkan hal tersebut tentunya diperlukan sebuah otak pengendali. Otak pengendali tersebut dapat berupa mikrokontroler atau komputer (PC). Fungsi dari otak pengendali ini untuk menyimpan instruksiinstruksi, tentunya instruksi-instruksi tersebut akan aktif setelah mendapat inputan dari sensor-sensor yang terpasang pada badan robot. Untuk mengendalikan robot ini agar dapat bekerja sesuai rancangan, maka kendali apakah yang cocok dan tepat untuk perancangan dan pembuatan robot ini? Robot ini dalam melaksanakan fungsinya tentu akan ada halanganhalangan yang berada pada jalur menuju obyeknya. Seperti apakah cara kerja robot ini dalam melaksanakan fungsinya?

3

Robot ini terdiri dari berbagai macam komponen. Untuk mendapatkan hasil yang maximal dalam perancangan dan pembuatannya, diperlukan perangkat mekanik, elektrik dan perangkat lunak (software) yang tepat. Bagaimanakah membuat rancangan robot yang minimal dengan sistem kerja yang komplek dan dengan komponen-komponen diatas?

C. Batasan Masalah 1. Mikrokontroler yang dipakai adalah produk dari Atmel generasi Alf and Vegard's Risc processor (AVR) seri ATMega8535. 2. Lintasan yang akan dilalui robot datar dan berwarna hitam. 3. Robot belum dapat berjalan pada lintasan yang berbeda ketinggian permukaannya. 4. Robot berjalan secara acak dalam proses pencarian targetnya. 5. Target berupa lingkaran berwarna putih berdimensi 2.

D. Rumusan Masalah Perancangan robot Insecticon Hexapod Explorer ini diperlukan sebuah rumusan masalah yang tepat. Memperhatikan indentifikasi masalah dan

berdasarkan batasan masalah di atas, maka dapat dirumuskan: 1. Bagaimanakah algoritma program yang tepat agar robot dapat berjalan dan bekerja sesuai yang diharapkan? 2. Bagaimanakah membuat rancangan hardware robot agar dapat berjalan?

4

3. Parameter pengujian meliputi : jumlah obyek, jumlah halangan, dan waktu tempuh. 4. Parameter keberhasilan 80% dari hasil pengujian.

E. Tujuan Penelitian Penelitian dilakkukan bertujuan untuk membuat sebuah robot Insecticon Hexapod Explorer, yang meliputi kegiatan: 1. Merancang dan membuat robot Insecticon Hexapod Explorer

menggunakan mikrokontroler ATMega8535. 2. Membuat listing program dengan software Bascom AVR untuk

memprogram mikrokontroler ATMega8535. 3. Merancang dan membuat desain minimal untuk robot berjalan.

F. Kegunaan Hasil Penelitian Robot Insecticon Hexapod Explorer ini dibuat untuk mengeksplorasi suatu tempat agar dapat menemukan suatu objek yang sudah ditentukan berupa lingkaran berwarna putih berdiameter 20 cm. Hasil dari penelitian ini diharapkan dapat menjadi sumber inspirasi para peserta kontes robot yang menginginkan membuat robot dengan desain komponen yang minimal tetapi dengan fungsi yang tak kalah hebatnya dengan robot yang desain dan komponennya sangat lengkap.

5

BAB II KAJIAN PUSTAKA

A. Kajian Hasil Penelitian Terdahulu Kontes Robot Cerdas Indonesia (KRCI) telah banyak menghasilkan karyakarya baru dalam perkembangan dunia robot di Indonesia. Karya yang sering muncul adalah tentang robot yang bisa berjalan (mobil robot, robot hexapod) dan mempunyai kecerdasan tertentu. Widodo Budiharto[6] telah banyak menghasilkan penelitian tentang robot. Salah satu penelitiannya adalah tentang robot Boe Bot. Robot Boe Bot ini

menggunakan roda sebagai alat geraknya. Kit robot ini menggunakan mikrokontroler PIC 16C57 yang terpaket dengan komponen pendukung menjadi sebuah system minimum mikrokontroler yang disebut Basic Stamp 2 dengan bahasa PBASIC. Robot ini dirancang untuk menghindari halangan yang ada ketika berjalan. Penelitian tentang Boe Bot itulah yang menjadi sumber inspirasi dari penelitian yang akan membuat robot Insecticon Hexapod Explorer. Insecticon Hexapod Explorer akan dibangun dengan mikrokontroler AVR ATMega8535 dari Atmel. Alat geraknya menggunakan 6 kaki agar stabil saat berjalan. Komponen penggerak kaki-kakinya menggunakan 2 buah motor servo dan memakai sensor inframerah dan ultrasonik.

6

B. Kerangka Teori 1. Pengertian Robot Robot adalah peralatan elektro-mekanik atau bio-mekanik, atau gabungan peralatan yang menghasilkan gerakan otonomi maupun berdasarkan gerakan yang diperintahkan. Robot yang menggunakan peralatan komunikasi dimungkinkan untuk dikendalikan oleh manusia, seperti lengan robot yang pengendalinya dilakukan melalui computer. Area yang berbahaya bagi keselamatan jiwa manusia, seperti daerah yang mengandung unsur radioaktif, sulit dijangkau, kemudian kegiatan atau aktivitas manusia yang sifatnya berulang serta membutuhkan kepresisian, dapat digantikan robot. Seorang penulis bernama Karel Capek pada tahun 1921 menggunakan istilah robot yang berasal dari Cezh yang berarti tenaga pekerja. Konsep robot industri dipatenkan tahun 1954 oleh G.W.Deval. Deval menjelaskan tentang bagaimana konstruksi pengendalian lengan mekanik yang dapat mengerjakan tugas industri. Websters Dictionary mendefinisikan robot sebagai perangkat otomatis yang membantu fungsi-fungsi menyerupai manusia. Sistem kelas dalam robot mengelompokkan Autonomous Mobile Robot (AMR) sebagai salah satu tahapan paling penting dalam tahap evolusi intelegensi dan struktur robot. Robot diberi kemampuan khusus untuk berpindah tempat atau bergerak dengan alat gerak konvensional seperti kaki atau roda. Kata autonomi dapat diartikan sebagai kemampuan diri untuk mengambil tindakan pada perubahan situasi atau kemampuan untuk mengambil

7

keputusan tanpa campur tangan manusia. Kemampuan Autonomy robot pada dasarnya dikendalikan oleh operator, meskipun pada beberapa operasi lain dapat direncanakan, dikontrol dan dikerjakan tanpa campur tangan manusia itu sendiri. Menurut kegunaannya robot dibagi menjadi dua, yaitu: 1). Robot Industri, yaitu robot yang digunakan untuk melaksanakan kegiatan produksi seperti memegang bahan, mengelas, mengecat dan perakitan. 2). Robot non Industri, yaitu robot yang digunakan diluar kegiatan produksi industri seperti robot penjinak bom, robot pembersih lantai, dan lain sebagainya. Karakteristik yang mempengaruhi kemampuan gerak AMR antara lain adalah: 1). Kata dan gambar yang diberikan (dari operator) yang diperlukan harus dengan rumusan yang jelas dan lengkap. Sistem kemampuan yang diberikan harus spesifik dan lengkap sehingga tidak menyulitkan operator yang mengendalikannya dikemudian hari. Operator selanjutnya dapat menyelesaikan setiap masalah yang mungkin terjadi. 2). Komunikasi antara operator dan AMR berakhir diawal sistem operasi. 3). Perintah pengendalian harus memperhitungkan situasi yang akan dihadapi. 4). Sistem kepandaian yang diberikan adalah metode perkiraan, belajar dari pengalaman tentang identifikasi, pengenalan dan pemilihan.

8

Contohnya:

Operator

berkomunikasi

dengan

AMR

setelah

menyelesaikan tugas untuk memperkiraan adanya peningkatan atau penurunan kepandaian yang diberikan. Bukan hanya AMR dalam mengenali lingkungan dan tugas yang diberikan tetapi layaknya manusia untuk mengetahui kemampuan apalagi yang diinginkan selanjutnya. 5). Gerakan yang efektif adalah dasar untuk mengerjakan kegiatan produksi, ketepatan, kehandalan dan kemampuan berjalan sendiri atau mengerjakan tugas khusus. 6). Daerah operasional dapat dikelompokkan menjadi beberapa tingkat kemampuan yang berbeda. Halangan atau tingkat kesulitan dapat dipindah atau ditingkatkan, dengan demikian masalah menghindari tumbukan memungkinkan untuk dihindari dengan peringatan sebelumnya. Halangan atau kesulitan yang dihadapi dapat diatasi dengan metode menghindar, melakukan langkah secara berurutan ataupun dengan metode lainnya.

9

Penelitian dibidang robotik oleh Endra Pitowarno tahun 2002.

Gambar 1. Diagram Penelitian Robotik

10

Gambar 1 diatas menjelaskan hasil penelitian Endra Pitowarno di bidang robotic yang membagi robot dalam 4 jenis.

a). Gambar Mobil robot bergerigi

b). Gambar mobil robot rata

c). Gambar mobil robot menggunakan belt Gambar 2. Mobil Robot

11

Gambar 3. Robot Hexapod

Gambar 4. Robot Bipedal Gambar 2 adalah mobil robot dalam berbagai jenis, Gambar 3 adalah robot berkaki 6 atau disebut juga robot hexapod. Gambar 4 adalah robot bipedal atau robot berkaki 2 yang bisa berjalan seperti manusia.

2. Robot Hexapod a. Pengertian Robot Hexapod Robot Hexapod adalah robot yang bisa berjalan dengan menggunakan 6 kaki. Keenam kaki yang dipakai akan membuat robot berjalan dengan stabil dan

12

bisa menopang bodi robot yang agak besar. Robot ini menggunakan servo motor untuk menggerakkan kaki-kakinya sehingga robot akan berjalan pelan. b. Mekanik Robot Hexapod Robot Insecticon Hexapod ini dibuat dengan menggunakkan bahan akrilik karena bahan akrilik merupakan bahan plastik yang kuat). Seluruh rangka menggunakan bahan akrilik termasuk kaki-kakinya yang didesain sedemikian rupa sehingga membentuk rangka yang dapat mendukung sistem kerja dari robot yang akan dibuat. c. Sistem Gerak Robot Insecticon Hexapod Explorer Sensor ultrasonik digunakan untuk mengetahui jarak depan robot, apakah ada penghalang atau tidak, yang mampu mendeteksi jarak dari 2 cm hingga 3 meter. Sensor ini bekerja berdasarkan prinsip gelombang ultrasonic. Pencari jarak ini bekerja dengan cara memancarkan pulsa suara dengan kecepatan suara (0,9 ft/milidetik) berfrekwensi 40 KHz. Keluaran sensor ini dihubungkan ke Port C.0 dan Port C.1, dan dengan nilai trigger input sebesar 10 us pada pulsa TTL. Sensor inframerah di bagian bawah bodi robot digunakan merespon warna putih yang digunakan sebagai warna obyek. Saat sensor inframerah merespon target maka gerakan robot akan berjalan lurus ke depan. Hasil pembacaan sensor-sensor jarak ini diolah oleh mikrokontroler, untuk memutuskan gerakan yang akan dilakukan apakah maju, mundur atau belok. Dengan memutarnya servo, menyebabkan bagian kaki yang terhubung ke servo bergerak bergantian sehingga robot dapat berjalan. Berikut adalah gambar system gerak pada kaki hexapod.

13

Gambar 5. Kaki Robot Hexapod

3. Mikrokontroler AVR ATMega8535 Mikrokontroler ATMega8535 memiliki kapabilitas sebagai berikut: a. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz. b. Kapabilitas memori Flash 8 KB, SRAM sebesar 512 byte, dan EEPROM (electrically Erasable Programmable Read Only Memory) sebesar 512 byte. c. ADC internal dengan fidelitas 10 bit sebanyak 8 channel. d. Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps. e. Enam pilihan mode sleep menghemat penggunaan daya listrik.

14

Gambar 6. Blok Diagram Fungsional ATMega8535 Gambar 6 menunjukkan bahwa ATMega8535 memiliki bagian sebagai berikut: a. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D. b. ADC 10 bit sebanyak 8 saluran. c. Tiga buah Timer/Counter dengan kemampuan pembanding.

15

d. CPU yang terdiri atas 32 buah register. e. Watchdog Timer dengan osilator internal. f. SRAM sebesar 512 byte. g. Memori Flash sebesar 8 kb dengan kemampuan Read While Write. h. Unit interupsi internal dan eksternal. i. Port antarmuka SPI. j. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. k. Antarmuka komparator analog. l. Port USART untuk komunikasi serial.

a) Konfigurasi Pin

Gambar 7. Pin ATMega8535 Konfigurasi pin dapat dilihat pada Gambar 7, dari gambar tersebut dapat dijelaskan secara fungsional konfigurasi pin ATMega 8535 sebagai berikut:

16

Tabel 1. Konfigurasi Pin ATMega 8535 Nama Pin VCC GND Port A (PA0...PA7) Port B (PB0...PB7) Fungsi Catu daya Ground Port I/O 8-bit dua arah dengan resistor pull-up internal. Juga berfungsi sebagai masukan analog ke ADC (ADC0 s.d. ADC7) Port I/O 8-bit dua arah dengan resistor pull-up internal. Fungsi khusus masing-masing pin: Port pin PB0 PB1 PB2 PB3 PB4 PB5 PB6 Port C (PC0...PC7) Port D (PD0...PD7) Fungsi lain T0 (Timer/counter0 External Counter Input) T1(Timer/counter1External Counter Input) AIN0 (Analog Comparator Positive Input) AIN1(Analog Comparator Negative input) SS (SPI Slave Select Input) MOSI (SPI Bus Master Output/Slave Input) MISO (SPI Bus Master Input/Slave Output)

PB7 SCK (SPI Bus Serial Clock) Port I/O 8-bit dua arah dengan resistor pull-up internal. Dua pin yaitu PC6 dan PC7 berfungsi sebagai oscillator luar untuk timer/counter2. Port I/O 8-bit dua arah dengan resistor pull-up internal. Fungsi khusus masing-masing pin: Port pin PD0 PD1 PD2 PD3 PD4 Fungsi lain RXD (UART Input Line) TXD (UART Output Line) INT0 (External Interrupt 0 Input) INT1 (External Interrupt 1 Input) OC1B (Timer/Counter1 Output CompareB Match Output) Fungsi OC1A (Timer/Counter1 Output ComparatorA Match Output)

Nama Pin PD5

17

PD6 PD7 RESET XTAL1 XTAL2 AVCC AREF AGND

ICP (timer/Counter1 Input Capture Pin) OC2 (Timer/Counter2 Output Compare Match

Output) Masukan reset. Sebuah reset terjadi bila sebuah pin ini diberi logika rendah melebihi periode minimum yang diperlukan. Masukan ke inverting oscillator amplifier. Keluaran dari inverting oscillator amplifier. Catu daya untuk port A dan ADC. Referensi masukan analog untuk ADC. Ground Analog. Tabel 1. diatas menjelaskan fungsi-fungsi yang terdapat dalam

mikrokontroler ATMega 8535 yang sering digunakan.

b) Peta Memori Arsitektur AVR terdiri atas dua memori utama, yaitu Data Memori dan Program Memori. Sebagai tambahan dari fitur ATMega8535, terdapat EEPROM 512 byte sebagai memori data dan dapat diprogram saat operasi. ATMega8535 terdiri atas 8 kbyte On-Chip In-Sytem Reprogramable Flash Memory untuk menyimpan program. Karena seluruh instruksi AVR dalam bentuk 16 bit atau 32 bit, maka flash dirancang dengan komposisi 4k x 16. Untuk mendukung keamanan software atau program, flash program memoru dibagi menjadi dua bagian yaitu bagian Boot Program dan bagian applikasi program.

c) Analog To Digital Converter (ADC) ADC pada ATMega 8535 merupakan ADC 10-bit tipe successive Approximation, yang terhubung dengan sebuah multiplekser analog yang akan memilih satu dari delapan kanal.

18

Bit ADEN (ADC Enable) harus berlogika 1 untuk mengaktifkan ADC,. Dan untuk memulai ADC, logika 1 harus diberikan pada bit ADSC (ADC start conversion). Kedua bit ini terletak pada register ADCSRA. Waktu yang diperlukan untuk satu konversi adalah 25 siklus clock ADC pada konversi pertama, dan 13 siklus clock ADC untuk konversi berikutnya.

d) Pulse Width Modulation (PWM) Mikrokontroler ATMega 8535 menyediakan fitur Timer/Counter1 yang dapat diatur sebagai timer, pencacah (counter), perekam waktu kejadian, pembangkit isyarat PWM, serta auto reload timer (Clear Timer on Compare/CTC). Dengan lebar 16 bit, Timer/Counter1 dapat digunakan secara fleksibel untuk berbgai tujuan yang berkaitan dengan waktu dan pembangkit gelombang. Isyrat PWM merupakan hasil modulasi isyarat segitiga oleh isyarat konstan. Pengubahan amplitudo isyarat segitiga (dengan bentuk segitiga sebangun dengan segitiga awal) akan mengubah frekuensi PWM.

4. Bahasa Basic a. Tipe Data Tipe data merupakan bagian dari program yang paling penting karena tipe data mempengaruhi setiap instruksi yang akan dilaksanakan oleh computer.

19

Pemilihan tipe data yang tepat (Tabel 2.) akan membuat operasi data menjadi lebih efisien dan efektif. Tabel 2. Memori Data NO 1 2 3 4 5 6 7 8 Tipe Bit Byte Integer Word Long Single Double String b. Konstanta Konstanta merupakan suatu nilai yang tidak dapat diubah selama proses berlangsung. Konstanta nilainya selalu tetap. Konstanta harus didefinisikan terlebih dahulu di awal program. Konstanta dapat bernilai integer, pecahan, karakter dan string. Contoh: A = 5 C = 1.1 Jangkauan 0 atau 1 0 255 -32,768 32,767 0 65535 -2147483648 2147483647 1.5 x 10^-45 3.4 x 10^38 5 x 10^324 1.7 x 10^308 >254 byte

c. Variable Variable adalah suatu pengenal yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap, nilai dari suatu variable dapat diubah-ubah sesuai kebutuhan. Nama dari suatu variable dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut:

20

1) Terdiri dari gabungan huruf dan angka dengan kerakter pertama harus berupa huruf., 2) Tidak boleh mengandung spasi. 3) Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah (underscore). Yang termasuk symbol khusus yang tidak diperbolehkan antara lain: $, ?, %, #, !, &, *, (, ), -, +, = dan sebagainya. 4) Panjangnya hanya 32 karakter.

d. Deklarasi Deklrasi diperlukan apabila kita kita akan menggunakan pengenal (identifier) dalam program. Identifier dapat berupa variable, konstanta dan fungsi. 1) Deklarasi Varible Bentuk umum pendeklarasian suatu variable adalah: Dim Nama_variable AS Nama_tipe; Contoh: Dim x As Integer Dim a AS Long 2) Deklarasi Konstanta Dalam bahasa basic konstanta dideklarasikan langsung. Contoh: L = 12345678 S = Hallow 3) Deklarasi Fungsi Asign long Asign string Deklarasi x bertipe integer Deklarasi a bertipe long

21

Fungsi merupakan bagian terpisah dari program dan dapat diaktifkan atau dipanggil di manapun di dalam program. Fungsi dalam bahasa basic ada yang sudah disediakan sebagai fungsi pustaka seperti Print, input, data dan untuk menggunakannya tidak perlu dideklarasikan. Fungsi yang perlu dideklarasikan terlehih dahulu adalah fungsi yang dibuat oleh programmer. Bentuk umum deklarasi sebuah fungsi adalah: TEST[([BYREF/BYVAL] var as type)] As type Contoh: Declare Function Myfunction (byval I As Integer, S As String) As Integer e. Operator 1) Operator Penugasan Operator penugasan (Assignment operator) dalam bahasa basic berupa tanda (=). 2) Operator Aritmatika Bahasa basic menyediakan 5 operator aritmatika, yaitu: a). .* : untuk perkalian b). / : untuk pembagian c). % : untuk sisa pembagian d). + : untuk pertambahan e). - : untuk pengurangan Catatan : operator % untuk mencari sisa pembagian antara dua bilangan. 3) Operator Hubungan (Perbandingan)

22

Operator perbandingan digunakan untuk membandingkan hubungan antara dua buah operand/sebuah nilai atau variable. Operator hubungan dalam bahasa basic : = Equality Inequality < Less Than > Greater Than = Y

Contoh : A = 63 And 19 5) Operator Bitwise Operator bitwise digunakan untuk memanipulasi bit dari data di memori. Operator bitwise dalam bahasa basic : Shift A, left, 2 : Pergeseran bit ke kiri Shift A, RIGHT, 2 : Pergeseran bit ke kanan

23

Rotate A, left, 2 : Putar bit ke kiri Rotate A, RIGHT, 2 : Putar bit ke kanan f. Komentar Program Komentar program hanya diperlukan untuk memudahkan pembacaan dan pemahaman suatu program (untuk keperluan dokumentasi program). Dengan kata lain, komentar program hanya merupakan keterangan atau penjelasan program. Komentar program tidak akan ikut diproses dalam program (diabaikan). Contoh : Program ini dibuat oleh Oki... g. Penyeleksian Kondisi Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses. Penyeleksian kondisi bisa diibaratkan sebagai katup atau kran yang mengatur jalannya air. Bila katup terbuka maka air akan mengalir dan sebaliknya bila katup tertutup maka air tidak akan mengalir atau akan mengalir melalui tempat lain. Fungsi penyeleksian kondisi penting artinya dalam penyusunan Bahasa Basic, terutama untuk program yang kompleks. Struktur IF.. dibentuk dari pernyataan IF dan sering digunakan untuk menyeleksi suatu kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada di dalam blok IF akan diproses dan dikerjakan. Struktur kondisi IF...ELSE minimal terdapat dua pernyataan. Jika kondisi yang diperiksa bernilai benar atau terpenuhi maka pernyataan pertama yang

24

dilaksanakan dan jika kondisi yang diperiksa bernilai salah maka pernyataan kedua yang dilaksanakan. Struktur kondisi SWITCH.....CASE....DEFAULT digunakan untuk penyeleksian kondisi dengan kemungkinan yang terjadi cukup banyak. Struktur ini akan melaksanakan salah satu dari beberapa pernyataan CASE tergantung nilai kondisi yang ada di dalam SWITCH. Selanjutnya proses diteruskan hingga ditemukan pernyataan break. Jika tidak ada nilai pada case yang sesuai dengan nilai kondisi, maka proses akan diteruskan kepada pernyataan yang ada di bawah default. h. Perulangan Bahasa Basic tersedia suatu fasilitas yang digunakan untuk melakukan proses yang berulang-ulang sesuai keinginan kita. Misalnya saja, bila ingin menginput dan mencetak bilangan dari 1 sampai 100 bahkan 1000, tentunya merasa kesulitan. Namun dengan struktur perulangan proses, tidak perlu menuliskan perintah sampai 100 atau 1000 kali, cukup dengan beberapa perintah saja.

5. Sensor a. Sensor Ultrasonic Sensor ultrasonik bekerja dengan cara memancarkan sinyal ultrasonik sesaat dan menghasilkan pulsa output yang sesuai dengan waktu pantul sinyal ultrasonik saat kembali menuju sensor. Dengan mengukur lebar pulsa pantulan

25

tersebut jarak target didepan sensor dapat diketahui. Sensor ini dapat melakukan pengukuran jarak 2 cm sampai 3 meter.

Gambar 8. Sistem Kerja Sensor Ultrasonik

Gambar 9. Sensor Ultrasonik Sensor ultrasonic terdiri dari dari dua unit, yaitu unit pemancar dan unit penerima terlihat pada Gambar 8. Gelombang ultrasonic akan dipancarkan ke udara (tempat sekitarnya) oleh unit pemancar, dan pantulan gelombang ultrasonic akan diterima kembali oleh unit sensor penerima. Dalam sensor penerima akan dihasilkan sebuah tegangan bolak-balik dengan frekuensi yang sama. Besar amplitudo sinyal elektrik yang dihasilkan unit sensor penerima tergantung dari kerapatan penyusun jenis objek yang dideteksi serta kualitas dari sensor pemancar dan sensor penerima. Proses sensing yang dilakukan pada sensor ini menggunakan metode pantulan ke arah obyek (sasaran). Kerapatan penyusun tiap-tiap jenis benda berbeda-beda, yang menyebabkan hasil dari pantulan akan mempunyai amplitudo

26

yang berbeda-beda pula. Jarak antara sensor tersebut dihitung dengan cara mengalikan dengan waktu yang digunakan oleh sinyal ultrasonic dalam perjalanannya dari rangkaian Tx sampai diterima oleh rangkaian Rx, dengan kecepatan rambat dari sinyal ultrasonic tersebut pada media rambat yang digunakannya, yaitu udara. Jarak antara sensor dengan objek yang direfleksikan dapat dihitung dengan menggunakan rumus/persamaan 1 berikut : L = Tof x C .(1) dimana: L = jarak ke objek Tof = waktu pengukuran yang diperoleh C = cepat rambat bunyi di udara (340 m/s)

b. Sensor Inframerah Inframerah merupakan spektrum elektromagnetik dengan panjang gelombang diatas gelombang cahaya tampak. Meskipun tidak dapat dilihat keberadaannya radiasi inframerah dapat dideteksi. Cahaya inframerah merupakan suatu gelombang yang termasuk kedalam gelombang elektromagnetik. Gelombang elektromagnetik adalah gelombang yang dapat merambat tanpa zat perantara (dalam vakum), dan gelombang ini selalu bersifat transfersal jika arah getarnya selalu tegak lurus arah perambatannya. Gelombang elektromagnetik ini mempunyai daerah frekuensi yang sangat besar yaitu dari

27

10Hz sampai dengan 10^22 Hz. Dalam vakum gelombang elektromagnetik mampu merambat sama dengan kecepatan cahaya yaitu 3 x 10^8 m/s. Gelombang elektromagnetik memiliki panjang gelombang 10^-3m sampai dengan 7,8 x 10^7m dengan jangkauan frekuensi dari 3 x 10^11 Hz hingga 4 x 10^14 Hz dan energi foton dari 10^-3 ev hingga 1,6 ev. Daerah spektrum inframerah dibagi menjadi 3: 1. Inframerah jauh, dengan 3 x 10^-3 sampai dengan 3 x 10^-5m 2. Inframerah menengah, dengan 3 x 10^-5 sampai dengan 3 x 10^-6m 3. Inframerah dekat, dengan 7,8 x 10^-7m Sensor inframerah sering dipakai pada sistem robotika. Sistem sensor ini menggunakan LED inframerah (FS048W) untuk menghasilkan sinar inframerah, dan sebuah penerima sinar inframerah seperti pada Gambar 10. Untuk mengaktifkan LED inframerah biasanya diperlukan rangkaian multivibrator monostabil agar LED dapat bekerja pada frekuensi tertentu.

Gambar 10. Rangkaian Inframerah sebagai Sensor Pendeteksi Target 6. Motor Servo Motor servo adalah motor mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan hanya dengan memberikan pengaturan duty cycle sinyal PWM pada bagian pin kontrolnya.

28

Motor servo merupakan sebuah motor DC yang memiliki rangkaian control elektronik dan integral gear untuk mengendalikan pergerakan dan sudut angularnya. Gambar 11 menunjukkan salah satu jenis motor servo yang tentunya masih banyak jenis motor servo yang lainnya.

Gambar 11. Motor Servo.

BAB III METODOLOGI PENELITIAN

A. Subjek Penelitian

29

Subjek penelitian ini adalah merancang dan membuat robot Insecticon Hexapod Explorer yang berkemampuan mengeksplorasi suatu tempat. Robot ini memiliki 6 kaki(3 kanan-3 kiri) yang digerakkan 2 motor servo. Sistem kerja dalam usaha menemukan targetnya, robot ini bisa menghindari halangan dengan berbelok kekanan, berbelok kekiri dan juga bisa berputar. Sistem kerja robot ini akan diprogram dengan mikrokontroler ATMega8535. Robot hexapod menggunakan beberapa komponen yang harus dirangkai agar dapat melakukan fungsinya dengan baik. Komponen-komponen itu adalah mikrokontroler ATMega8535 sebagai tempat menyimpan program, motor servo sebagai penggerak kaki-kaki robot, sensor ultrasonik sebagai sensor jarak yang dipasang didepan, samping kanan dan kiri dan mekanik-mekanik yang sesuai dengan jenis robot.

B. Alat Penelitian Alat-alat yang digunakan dalam perancangan robot Insecticon Hexapod Explorer berbasis mikrokontroler ATMega8535 adalah: 1) Sebuah Komputer (PC) sebagai media pemrograman dan mengirimkannya ke mikrokontroler ATMega8535. 2) Mikrokontroler ATMega8535 sebagai tempat programan. 3) Alat perkakas elektronik digunakan untuk memasang komponen elektronik pada rangkaian robot, seperti: solder, timah patri (timah solder) dan solder atraktor (solder pompa), dll.

30

4) Multimeter yang digunakan untuk mengukur arus dan mengechek keadaan komponen elektronik robot. 5) Alat perkakas mekanik yang dibutuhkan untuk memasang bagian mekanik robot, seperti: obeng, tang, bor, dll. C. Perancangan Sistem 1. Diagram Blok Sistem Robot Secara umum rancangan perangkat keras (Hardware) robot dan system kerja dapat dilihat pada Gambar 12 dibawah ini: Alarm/ Bazer Sensor Ultrasonik Sensor Ultrasonik Sensor Ultrasonik Sensor Inframerah/ LED Gambar 12. Diagram Blok Rancangan dan Sistem Kerja Robot Mikrokontroler ATMEGA8535 Motor Servo

Menurut gambar 12 blok diagram diatas terdiri dari: a. Mikrokontroler

31

Mikrokontroler ATMega8535 berfungsi sebagai pengendali robot yang akan dikendalikan secara otomatis. Mikrokontroler merupakan piranti utama pada sistem aplikasi ini. Keseluruhan sistem dikendalikan oleh mikrokontroler. Mulai dari pembacaan sensor, pengolahan data masukan, sampai dengan eksekusi perintah, kesemuanya dikendalikan oleh satu chip mikrokontroler ATMega8535. Mikrokontroler supaya dapat bekerja dibutuhkan persyaratan minimal. Syarat tersebut meliputi sistem riset, dan sistem clock. Rangkaian minimal untuk bekerja dengan mikrokontroler biasanya disebut sistem minimal. Sistem yang akan dibangun membutuhkan beberapa komponen berikut: 1) Single chip ATMega 8535 2) Sistem Clock, berupa X-tal 4 MHz dan Kapasitor 20pF 3) Sistem Reset b. Sensor Ultrasonik Sensor ultrasonik dipasang dibagian depan robot yang digunakan sebagai pendeteksi jarak, agar robot tidak menabrak dan dapat memberikan sinyal inputan agar robot berbelok menjauhi penghalang yang ada didepannya. c. Sensor inframerah Sensor Inframerah adalah komponen untuk memberikan informasi keadaan diluar kepada robot. Sensor inframerah ini digunakan sebagai sensor warna untuk mendeteksi target. Sensor ini diletakkan di bagian bawah rangka robot. d. Motor Servo

32

Motor servo adalah penggerak utama pada robot. Motor servo merupakan alat yang merubah arus listrik menjadi gerakan mekanik berupa putaran. Motor servo yang digunakan adalah tipe continuous rotation produksi parralax. 2. Disain Robot Yang Akan Dibuat

Gambar 13. Disain Rangka Robot dari Samping Kiri Keterangan Gambar 13 diatas adalah: Panjang Lebar Tinggi Bahan : 20 cm : 14 cm : 14 cm : akrilik

3. Lintasan Yang Akan Dilewati Robot 2

33

Start & Finish 3

1 Gambar 14. Lintasan Keterangan Gambar 14 diatas adalah : - Start dan finish satu tempat. - Lingkaran 1 adalah target pertama. - Lingkaran 2 adalah target kedua. - Lingkaran 3 adalah target ketiga. - Panjang lintasan adalah 680 cm.

D. Perancangan Perangkat Lunak Sebelum kita mulai membuat suatu program yang nyata, langkah awal yang dilakukan adalah membuat alur program (flowchart) terlebih dahulu. Flowchart ini nantinya akan membantu peneliti dalam pembuatan program robot hexapod yang sebenarnya. Flowchart-flowchart yang dibutuhkan dalam pembuatan robot Insecticon berbasis mikrokontroler ATMega8535 adalah sebagai berikut:

34

Mulai

Tombol mulai ditekan

Baca sensor

Jalankan robot sesuai dengan kondisi sensor

Selesai

Gambar 15. Flowchart Program Utama Robot Insecticon Hexapod Explorer

Gambar 15 diatas adalah program utama yang akan dilakukan robot dalam bekerja. Program utama tersebut nantinya akan di perjelas dengan sub program yang lebih detail.

35

Mulai

Tekan Tombol

Baca sensor

36

Mulai

Tekan Tombol

Baca sensor

Tidak Halangan

Jalan Maju

PB.2 = 1

Belok Kiri

PB.0 = 1

Belok Kanan

PB.1 = 1

Belok Ke sensor yang jarak pantulnya terjauh

PC.0 = 1

Alarm/Bazer

Selesai

Gambar 16 menerangkan kondisi robot sebagai berikut :

37

1. Robot berjalan maju jika tidak ada halangan. 2. Sensor ultrasonic kanan mendapat halangan maka PB.2 = 1 maka robot berbelok kekiri 3. Sensor ultrasonic kiri mendapat halangan maka PB.0 = 1 maka robot berbelok kekanan. 4. Sensor ultrasonic depan mendapat halangan maka PB.1 = 1 dan robot belok kearah sensor ultrasonic yang tidak aktif, atau kearah sensor ultrasonic yang jarak pantulnya paling jauh. 5. Sensor inframerah merespon warna putih sebagai target maka PC.0 = 1 dan alarm/buzer akan aktif. Keterangan Pin yang dipakai untuk sensor: 1. PORTB.0 = Sensor ultrasonic kiri. 2. PORTB.1 = Sensor ultrasonic depan. 3. PORTB.2 = Sensor ultrasonic kanan. 4. PORTC.0 = Sensor inframerah.

E. Pengujian

38

Pengujian yang dilakukan adalah pengujian pada bagian-bagian rancangan tertentu, seperti berikut : 1. Sensor Ultrasonic Pengujian sensor dilakukan dengan membandingkan jarak yang terukur dengan jarak yang sebenarnya. Pengujian ini bertujuan untuk mengetahui seberapa besar kesalahan (error) dari alat yang dibuat. 2. Sensor pendeteksi warna putih. Sensor ini akan aktif jika mendeteksi adanya target berupa lingkaran berwarna putih. Aktifnya sensor ini akan mengakibatkan bazer aktif dan akan berbunyi sebagai tanda bahwa robot telah menemukan target. 3. Motor Servo Pengujian motor servo dilakukan dengan memberikan sinyal masukan yang berasal dari sensor ultrasonik yang ada di depan, samping kanan dan kiri. Masukan tersebut akan memberikan respon kepada kedua motor servo yang ada di samping kanan dan samping kiri sehingga dapat menghasilkan kombinasi gerakan cepat, lambat dan berhenti. 4. Sistem Mekanik Pengujian mekanik dilakukan untuk memastikan mekanik tersebut dapat menopang seluruh sistem yang ada dan dapat bekerja dengan semestinya sesuai fungsinya.

5. Sistem Keseluruhan

39

Pengujian sistem secara keseluruhan dilakukan setelah pengujian berbagian sistem dapat berjalan dengan baik. Pengujian sistem keseluruhan dilakukan dengan melihat hasil penelitian dan pengamatan ketika sistem telah dirangkai menjadi satu kesatuan. Dikatakan berhasil jika robot ini dapat berjalan menghindari halangan, dan dapat menemukan target yang telah ditentukan dalam waktu yang telah ditentukan pula.

BAB IV

40

HASIL PENELITIAN DAN PEMBAHASAN

Setelah semua tahapan perancangan dan penyusunan robot Hexapod Explorer selesai, maka dilakukan pengujian per bagian sistem untuk mengetahui apakah semua bagian sistem telah bekerja dengan baik, dan dilanjutkan dengan pengujian sistem keseluruhan untuk mengetahui kinerja keseluruhan. Tahap-tahap pengujiannya sebagai berikut: A. Sensor Ultrasonic Sensor ultrasonic pada penelitian ini adalah sebagai pengukur jarak untuk memberikan masukan kapan robot harus maju terus atau herus belok. Sistem kerja sensor ultrasonic yaitu dengan memancarkan gelombang suara dan sistem secara

memantulkannya jika mengenai objek yang ada didepannya seperti pada Gambar 17 dibawah ini.

Gambar 17.Cara Kerja Ultrasonic Pengaturan jarak pantul gelombang suara diatur didalam program. Jarak yang dipakai untuk robot ini ialah &H0200 atau sekitar 7.5 cm. Kinerja sensor ultrasonic juga dipengaruhi oleh media pantul yang dipakai. Media pantul yang baik haruslah padat, keras dan sulit ditembus suara

41

diantaranya adalah besi, kaca, tembok dan kayu yang keras. Sedangkan media yang sulit memantulkan gelombang suara ialah gabus, stereofom, kain, karton dan kertas. Tabel 3. Pengujian Media Pantul No. 1 2 3 4 Media Tembok Kayu Kertas Gabus Jarak Pantul (cm) 7,5 7,4 7,2