DCS systems

Document Sample
DCS systems Powered By Docstoc
					                                                                            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 instruksi-

instruksi, 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 halangan-

halangan 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 karya-

karya 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.

         Webster’s 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                               Fungsi
VCC            Catu daya
GND            Ground
Port A         Port I/O 8-bit dua arah dengan resistor pull-up internal.
(PA0...PA7)    Juga berfungsi sebagai masukan analog ke ADC (ADC0 s.d.
               ADC7)
Port B         Port I/O 8-bit dua arah dengan resistor pull-up internal.
(PB0...PB7)    Fungsi khusus masing-masing pin:
               Port pin     Fungsi lain
               PB0           T0 (Timer/counter0 External Counter Input)
               PB1           T1(Timer/counter1External Counter Input)
               PB2           AIN0 (Analog Comparator Positive Input)
               PB3           AIN1(Analog Comparator Negative input)
               PB4           SS (SPI Slave Select Input)
               PB5           MOSI (SPI Bus Master Output/Slave Input)
               PB6           MISO (SPI Bus Master Input/Slave Output)
               PB7            SCK (SPI Bus Serial Clock)
Port C         Port I/O 8-bit dua arah dengan resistor pull-up internal.
(PC0...PC7)    Dua pin yaitu PC6 dan PC7 berfungsi sebagai oscillator luar
               untuk timer/counter2.
Port D         Port I/O 8-bit dua arah dengan resistor pull-up internal.
(PD0...PD7)    Fungsi khusus masing-masing pin:
               Port pin     Fungsi lain
               PD0           RXD (UART Input Line)
               PD1           TXD (UART Output Line)
               PD2           INT0 (External Interrupt 0 Input)
               PD3           INT1 (External Interrupt 1 Input)
               PD4           OC1B (Timer/Counter1 Output CompareB
                             Match Output)
   Nama Pin                             Fungsi
               PD5          OC1A (Timer/Counter1 Output ComparatorA
                             Match Output)
                                                                                17




                   PD6             ICP (timer/Counter1 Input Capture Pin)
                   PD7             OC2 (Timer/Counter2 Output Compare Match
                   Output)
RESET              Masukan reset. Sebuah reset terjadi bila sebuah pin ini diberi
                 logika rendah melebihi periode minimum yang diperlukan.
XTAL1            Masukan ke inverting oscillator amplifier.
XTAL2            Keluaran dari inverting oscillator amplifier.
AVCC             Catu daya untuk port A dan ADC.
AREF             Referensi masukan analog untuk ADC.
AGND             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                     Tipe                           Jangkauan
   1                      Bit                             0 atau 1
   2                     Byte                             0 – 255
   3                   Integer                       -32,768 – 32,767
   4                    Word                            0 – 65535
   5                    Long                   -2147483648 – 2147483647
   6                   Single                   1.5 x 10^-45 – 3.4 x 10^38
   7                   Double                   5 x 10^324 – 1.7 x 10^308
   8                    String                           >254 byte


        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



        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                ‘Deklarasi x bertipe integer

       Dim a AS Long                   ‘Deklarasi a bertipe long

       2) Deklarasi Konstanta

Dalam bahasa basic konstanta dideklarasikan langsung.

Contoh:

       L = 12345678                    ‘Asign long

       S = “Hallow”                    ‘Asign string

       3) Deklarasi Fungsi
                                                                                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                      X=Y

       <> Inequality                   X <> Y

       < Less Than                     X<Y

       > Greater Than                  X>Y

       <= Less Than or equal to        X >= Y

         4) Operator Logika

Jika operator hubungan membandingkan hubungan antara dua buah operand,

maka operator logika digunakan untuk membandingkan logika hasil dari operator-

operator hubungan.

Operator logika ada 4 macam, yaitu :

       NOT             Logical complement

       AND             Conjunction

       OR              Disjunction

       XOR             Exclusive or

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                         Mikrokontroler       Motor
   Ultrasonik                     ATMEGA8535           Servo

   Sensor
   Ultrasonik

                                  Sensor
                                  Inframerah/
                                  LED

         Gambar 12. Diagram Blok Rancangan dan Sistem Kerja Robot




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      : 20 cm

  Lebar        : 14 cm

  Tinggi       : 14 cm

  Bahan        : 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
                                      Jalan Maju
                    Halangan




                     PB.2 =           Belok Kiri
                       1




                     PB.0 =         Belok Kanan
                       1



                                    Belok Ke sensor
                     PB.1 =           yang jarak
                       1               pantulnya
                                        terjauh



                     PC.0 =          Alarm/Bazer
                       1




                    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              sistem secara

 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

 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.        Media           Jarak Pantul (cm)            Keterangan
   1        Tembok                  7,5                       Baik
   2         Kayu                   7,4                       Baik
   3         Kertas                 7,2                       Baik
                                                   Tidak baik karena menyerap
   4         Gabus                     <5
                                                                suara

Catatan : jarak yang diset dalam program &H0200 atau sekitar 7,5 cm.


Dari Tabel 3 diatas maka dapat di cari nilai errornya dengan :
Media yang dipakai dalam lintasan adalah kertas, jadi untuk menghitung errornya:


Prosentase ketepatan = (jarak terukur : jarak sebenarnya) x 100%
                         = (7,2 : 7,5) x 100%
                         = 0,96 x 100%
                         = 96 %


Error = 100% - Prosentase ketepatan
          = 100% - 96%
          =4%




   Pengaturan jarak pantul ultrasonic dalam program :
            Listing 1. Program ultrasonic
                 …..

                  Config Portb.0 = Output
                  Timer1 = 0
                  Set Ping_kiri
                                                          42




NOP                       'Delay 3 us
NOP
NOP
Reset Ping_kiri
Delay                      'Tunda 700us
Delay
Delay
Delay
Delay
Delay
Delay
Set Ping_kiri                'P3.2 Siap sebagai input
Config Portb.0 = Input           'Delay 3 us
NOP
NOP
Bitwait Pinb.0 , Set           'Hitung lebar pulsa Hi
Start Timer1
Bitwait Pinb.0 , Reset
Stop Timer1
Reset Ping_kiri
Jarak_kiri = Timer1

Config Portb.1 = Output
Timer1 = 0
Set Ping_depan
NOP                       'Delay 3 us
NOP
NOP
Reset Ping_depan
Delay                      'Tunda 700us
Delay
Delay
Delay
Delay
Delay
Delay
Set Ping_depan                 'P3.2 Siap sebagai input
Config Portb.1 = Input           'Delay 3 us
NOP
NOP
Bitwait Pinb.1 , Set           'Hitung lebar pulsa Hi
Start Timer1
Bitwait Pinb.1 , Reset
Stop Timer1
Reset Ping_depan
Jarak_depan = Timer1

Config Portb.2 = Output
Timer1 = 0
Set Ping_kanan
NOP                       'Delay 3 us
NOP
NOP
Reset Ping_kanan
Delay                      'Tunda 700us
Delay
Delay
Delay
Delay
Delay
Delay
Set Ping_kanan                 'P3.2 Siap sebagai input
Config Portb.2 = Input           'Delay 3 us
NOP
NOP
Bitwait Pinb.2 , Set           'Hitung lebar pulsa Hi
Start Timer1
Bitwait Pinb.2 , Reset
Stop Timer1
                                                                                     43




                  Reset Ping_kanan
                  Jarak_kanan = Timer1

                  Select Case Prox

                   Case Is = 0:

                     Select Case Jarak_depan

                     Case Is >= &H0200 :

                     If Jarak_kiri > &H0200 And Jarak_kanan > &H0200 Then
                     Gosub Jalan_lurus
                     Elseif Jarak_kanan < &H0200 Then
                     Gosub Belok_kiri
                     Elseif Jarak_kiri < &H0200 Then
                     Gosub Belok_kanan
                     End If

                     Case Is <= &H0200 :
                     If Jarak_kiri < &H0200 And Jarak_kanan > Jarak_kiri Then
                     Gosub Belok_kanan
                     Elseif Jarak_kanan < &H0200 And Jarak_kiri > Jarak_kanan Then
                     Gosub Belok_kiri
                     Elseif Jarak_kanan > Jarak_kiri Then
                     Gosub Belok_kanan
                     Elseif Jarak_kiri > Jarak_kanan Then
                     Gosub Belok_kiri
                     End If
                     End Select




B. Sensor Pendeteksi Target

       Target yang akan dicari berupa lingkaran berwarna putih, maka harus

memakai sensor yang dapat merespon objek putih. Sonsor yang dipakai yaitu

sensor inframerah dengan line coupel. Sensor ini akan aktif jika menemukan

objek putih dan akan memberikan input ke pin mikrokontroler untuk

mengaktifkan bazer.

Alasan digunakan sensor infra merah, dengan terminal line-coupel:

              -    Dapat merespon objek putih pada jarak 1 cm

              -    Dirancang dengan biaya yang efisien

              -    Output berupa TTL
                                                                               44




               a. Gb. Dari arah belekang         b. Gb. Dari arah depan

                             Gambar 18. Sensor Inframerah



Skematik sensor warna putih:




                  Gambar 19. Skematik Sensor Pendeteksi Warna Putih


Input sensor                                                              Output
TTL
                         Sensor infra               Pengkondisi
                         merah                      isyarat



                Gambar 20. Diagram Blok Cara Kerja Sensor Inframerah


C. Motor Servo
                                                                             45




       Motor servo yang dipakai yaitu motor servo continuous rotation. Servo ini

dipilih karena robot ini hanya memakai 2 buah servo untuk memutar terus sistem

engkol yang diterapkan pada system mekanik kaki robot ini.

Berikut ini adalah pengujian motor servo dengan program:

               Listing 2. program servo


       Jalan_lurus:
       For A = 0 To 20
       Pulseout Portd , 6 , 500
       Pulseout Portd , 7 , 200
       Waitms 5
       Next
       Return

       Belok_kanan:
       For A = 0 To 20
       Pulseout Portd , 6 , 500
       Pulseout Portd , 7 , 500
       Waitms 5
       Next
       Return

       Belok_kiri:
       For A = 0 To 20
       Pulseout Portd , 6 , 200
       Pulseout Portd , 7 , 200
       Waitms 5
       Next
       Return




   Perintah pulseout pada listing 2 untuk memberiken pulsa ke port yang dipakai

untuk motor servo. Nilai pulse 500 digunakan untuk memutar motor servo searah

jarum jam, sedangkan nilai 200 digunakan untuk memutar motor servo

berlawanan arah jarum jam.




D. Alarm dan LED
                                                                            46




       Alarm dan LED pada penelitian ini digunakan sebagai indikator. Alarm

digunakan sebagai indikator bahwa robot telah menemukan target berupa

lingkaran warna putih. Hasil pengujian alarm dan LED ditunjukkan pada Tabel 4.

                    Tabel 4. Hasil Pengujian Alarm dan LED

                    Target-
          No.                      Alarm/bazer            LED
                    Putaran
            1    1 putaran ke-1        On                    Off
            2    2 putaran ke-1        On                    Off
            3    3 putaran ke-1        On                    Off
            4    1 putaran ke-2        On                    Off
            5    2 putaran ke-2        On                    Off
            6    3 putaran ke-2        On                    Off
            7    1 putaran ke-3        On                    Off
            8    2 putaran ke-3        On                    Off
            9    3 putaran ke-3        On                    Off
           10    1 putaran ke-4        On                    Off
           11    2 putaran ke-4        On                    Off
           12    3 putaran ke-4        On                    Off
           13    1 putaran ke-5        On                    Off
           14    2 putaran ke-5        On                    Off
           15    3 putaran ke-5        On                    Off

       Hasil pada Tabel 4 menunjukan bahwa alarm akan berbunyi dan LED

akan mati ketika sensor inframerah telah mendeteksi adanya target berupa

lingkaran berwarna putih.

Prosentase keberhasilan = (Jumlah Penemuan Target : Jumlah Target) x 100%

Target Pertama = (5 : 5) x 100%

                = 100%

Target Kedua = (5 : 5) x 100%

                = 100%

Target Ketiga = (5 : 5) x 100%

Error = 0 %

E. Mekanik
                                                                               47




       Mekanik kaki-kaki robot menggunakan sistem engkol yang digerakkan

oleh sebuah motor servo yang terdapat pada tengah bodi samping sebelah kanan

dan kiri. Motor servo akan menarik kaki-kaki yang saling berkaitan sehingga akan

menimbulkan gerakan yang teratur untuk menggerakkan robot kedepan, belok dan

juga berputar seperti pada Gambar 21.




                      Gambar 21. Mekanik Kaki-kaki Robot

       Baterai 12 volt dengan 1200 mAh dipakai untuk menggerakkan 2 buah

motor servo dan juga untuk menghidupkan mikrokontroler serta 4 buah sensor.

Baterai ini bisa tahan hingga 10 kali putaran dalam lintasan yang dibuat.

F. Lintasan

       Lintasan robot terbuat dari gabus yang dilapisi dengan kertas berwarna

hitam agar dinding dapat memantulkan gelombang suara dari sensor ultrasonic.

Spesifikasi Lintasan yang ditunjukkan pada Gambar 22 adalah :

       -   Panjang papan lintasan 150 cm.

       -   Lebar lintasan 100 cm.

       -   Tinggi lintasan 15.5 cm.

       -   Jarak tempuh jalur lintasan 680 cm.

       -   Bahan dari gabus.

       -   Dinding dan lantai dilapisi kertas berwarna hitam.
                                                                                48




         -   Target berupa lingkaran yang terbuat dari kertas berwarna putih.

      Start &
           Finish

                                                    2



                                                                         3



                      1
                                 Gambar 22. Lintasan

G. Halangan dan Belokan

                    Tabel 5. Pengujian Robot Dalam Melewati Tikungan.

No.    Tikungan         Belok             Keterangan              % Keberhasilan
 1         1            Kiri                  Sukses                   100%
                                       8 Kali Sukses, 2 Kali           80%
 2           2            Kiri
                                           Menyenggol
 3           3          Kanan                 Sukses                   100%
 4           4          Kanan                 Sukses                   100%
 5           5          Kanan                 Sukses                   100%
                                       9 Kali Sukses, 1 Kali           90%
 6           6          Kanan
                                           Menyenggol
                                       7 Kali Sukses, 8 Kali            70%
 7           7            Kiri
                                           Menyenggol
 8           8          Kanan                Sukses                    100%
         Pengujian Tabel 5 dilakukan sebanyak 10 kali putaran. Ada beberapa

tikungan yang terlalu sempit sedangkan robot hanya menggunakan 3 sensor saja,

sehingga robot sesekali masih menyenggol dinding pembatas. Pengujian ini bisa
                                                                               49




dikatakan berhasil walaupun kaki robot kadang masih menyenggol dinding

pembatas tetapi hal tersebut tidak sampai menabrak dinding pembatas.

Permasalahan tersebut terjadi karena jumlah sensor yang minim sehingga tingkat

akurasi dalam menghindari halangan menjadi kurang akurat.

Perhitungan rata-rata prosentase keberhasilan :

Keberhasilan = (Jumlah % keberhasilan : Banyak Percobaan Seluruh Tikungan) x 100%

             = (740 : 800) x 100%

             = 0,925 x 100%

             = 92,5 %

Error = 100% - Rata-rata % keberhasilan

       = 100% - 92,5%

       = 7,5%



H. Sistem Gerak Robot

       Algoritma gerakan robot ini ditentukan oleh program. Setingan awal

ketika robot akan dijalankan adalah kaki kanan kedepan sedangkan kaki kiri

kebelakang. Gerakan lurus maju kedepan, kaki kanan dan kiri kedepan secara

bergantian. Gerakan belok kanan, kaki kiri maju dan kaki kanan mundur. Gerakan

belok kiri, kaki kanan maju dan kaki kiri mundur. Robot akan memutar jika

mendapatkan lorong buntu, arah putaran akan menuju kebidang yang lebih luas.

I. Sistem Keseluruhan

       Pengujian terakhir adalah tentang system keseluruhan bagai mana robot ini

dapat menemukan targetnya yang terdapat dalam lintasan. Pengujian kali ini akan
                                                                                   50




dilakukan sebanyak 10 kali untuk mendapatkan rata-rata waktu robot dalam

menemukan targetnya.

Persamaan untuk menghitung nilai rata-rata waktu adalah sebagai berikut:
       n

     ∑x        i
                       x1 + x 2 + x3 + ... + x n ………………………………………..(2)
x=    i =1
                   =
           n                      n

Dimana:

               x = rata-rata waktu tempuh robot

               x = waktu tempuh robot perputaran

               n = banyaknya pengukuran

               xi = jumlah hasil waktu tempuh robot

     Tabel 6. Waktu Tempuh Robot Dalam Lintasan Tanpa Mendeteksi Target.

                                        No.     Putaran             Waktu Tempuh
                                         1          1                 02:07:91
                                         2          2                 02:10:59
                                         3          3                 02:17:55
                                         4          4                 02:15:62
                                         5          5                 02:09:03
                                         6          6                 02:21:09
                                         7          7                 02:10:24
                                         8          8                 02:12:12
                                         9          9                 02:21:24
                                        10         10                 02:28:09


             Target waktu tempuh adalah 02 : 14 : 00 ( 8040 perdetik)
             Dari Tabel 6 dapat dicari :
             Waktu rata-rata robot dalam lintasan tanpa target:
                        n

                       ∑x       i
                                        x1 + x 2 + x3 + ... + x n
               x=      i =1
                                    =
                            n                      n
                                                                               51




                   20                  150                     348
  x=                           :                       :
                   10                    10
                                                               10

       = 02 : 15 : 34.8


  Dibulatkan menjadi = 02 :15 : 35 (2 menit : 15 detik : 35 perdetik) atau
  menjadi 8135 perdetik.


                       8135 - 8040
Error =                                            x   100%
                           8040
       = 0,012 x 100%
       = 1,2 %


           Tabel 7. Waktu Tempuh Robot Dalam Lintasan Dengan Target.

                            No.        Putaran                  Waktu Tempuh
                             1             1                      02:24:39
                             2             2                      02:22:96
                             3             3                      02:25:29
                             4             4                      02:17:22
                             5             5                      02:19:03
                             6             6                      02:21:09
                             7             7                      02:20:24
                             8             8                      02:22:12
                             9             9                      02:21:24
                            10            10                      02:23:09
  Target waktu tempuh adalah 02 : 20 : 00 (8400 perdetik)
  Dari Tabel 7 diatas maka dapat dicari :
  Waktu rata-rata robot dalam lintasan dengan target:
           n

       ∑x          i
                            x1 + x 2 + x3 + ... + x n
  x=    i =1
                       =
               n                       n


                        20              214                     267
    x=                             :                       :
                       10                     10
                                                                10

       =
                                                                         52




          02 : 21.4 : 26.7
   Dibulatkan menjadi = 02 : 21 : 27 (2 menit : 21 detik : 27 perdetik) atau
   menjadi 8487 perdetik.


            8487 - 8400
Error =                      x    100%
               8400
      = 0,0104 x 100%
      = 1,04 %
                    Tabel 8. Hasil Pengujian Seluruh Sistem

   a. Tabel Pengujian Pertama
                                                  Waktu
     No       Target             Status   Alarm
                                                  Tempuh
     1        Pertama        Ditemukan     On     00:20:39
     2         Kedua         Ditemukan     On     00:54:12
     3         Ketiga        Ditemukan     On     01:10:32


   b. Tabel Pengujian Kedua
                                                  Waktu
     No       Target             Status   Alarm
                                                  Tempuh
     1        Pertama        Ditemukan     On     00:19:38
     2         Kedua         Ditemukan     On     00:55:34
     3         Ketiga        Ditemukan     On     01:05:66


   c. Tabel Pengujian Ketiga
                                                  Waktu
     No       Target             Status   Alarm
                                                  Tempuh
     1        Pertama        Ditemukan     On     00:26:83
     2         Kedua         Ditemukan     On     00:57:70
     3         Ketiga        Ditemukan     On     01:17:37


   d. Tabel Pengujian Keempat
                                                  Waktu
     No       Target             Status   Alarm
                                                  Tempuh
     1        Pertama        Ditemukan     On     00:23:18
     2         Kedua         Ditemukan     On     00:51:14
     3         Ketiga        Ditemukan     On     01:11:13
                                                         53




e. Tabel Pengujian Kelima
                                              Waktu
 No        Target            Status   Alarm
                                              Tempuh
  1        Pertama      Ditemukan      On     00:22:50
  2         Kedua       Ditemukan      On     00:55:26
  3         Ketiga      Ditemukan      On     01:17:57


f. Tabel Pengujian Keenam
                                              Waktu
 No        Target            Status   Alarm
                                              Tempuh
  1        Pertama      Ditemukan      On     00:23:40
  2         Kedua       Ditemukan      On     00:56:01
  3         Ketiga      Ditemukan      On     01:15:78




g. Tabel Pengujian Ketujuh
                                              Waktu
 No        Target            Status   Alarm
                                              Tempuh
  1        Pertama      Ditemukan      On     00:20:21
  2         Kedua       Ditemukan      On     00:53:52
  3         Ketiga      Ditemukan      On     01:13:94


h. Tabel Pengujian Kedelapan
                                              Waktu
 No        Target            Status   Alarm
                                              Tempuh
  1        Pertama      Ditemukan      On     00:23:83
  2         Kedua       Ditemukan      On     00:56:02
  3         Ketiga      Ditemukan      On     01:16:44


i. Tabel Pengujian Kesembilan
                                              Waktu
 No        Target            Status   Alarm
                                              Tempuh
  1        Pertama      Ditemukan      On     00:25:33
  2         Kedua       Ditemukan      On     00:54:39
  3         Ketiga      Ditemukan      On     01:20:31
                                                                                  54




            j. Tabel Pengujian Kesepuluh
                                                                       Waktu
                  No           Target               Status     Alarm
                                                                       Tempuh
                  1            Pertama             Ditemukan    On     00:21:65
                  2             Kedua              Ditemukan    On     00:55:22
                  3             Ketiga             Ditemukan    On     01:18:65




Dari Tabel 8 diatas maka dapat dicari :

Waktu rata-rata menemukan target pertama :

      n

     ∑x       i
                       x1 + x 2 + x3 + ... + x n
x=   i =1
                  =
          n                       n


            00                  222                470
x=                       :                :
            10                    10
                                                   10

      00 : 22.2 : 47
 =
Dibulatkan menjadi = 00 : 22 : 47 (0 menit : 22 detik : 47 perdetik)



Waktu rata-rata menemukan target kedua :

      n

     ∑x       i
                       x1 + x 2 + x3 + ... + x n
x=   i =1
                  =
          n                       n


            00                  546                272
x=                       :                :
            10                    10
                                                   10

 = 00 : 54.6 : 27.2
                                                                                    55




Dibulatkan menjadi = 00 : 55 : 27 (0 menit : 55 detik : 27 perdetik)




Waktu rata-rata menemukan target ketiga :

       n

     ∑x        i
                       x1 + x 2 + x3 + ... + x n
x=    i =1
                   =
           n                      n


             01                 142                518
x=                       :                :
             10                   10
                                                   10


  = 01 : 14.2 : 51.8

Dibulatkan menjadi = 01 : 14 : 52 (0 menit : 55 detik : 27 perdetik)



Hasil percobaan pada Tabel 8. a sampai Tabel 8. i di atas menunjukan bahwa :

     1. Robot berjalan di lintasan yang terdapat halangan dan target yang harus

             ditemukan. Dilakukan pengujian 10 kali dan hasilnya robot dengan baik

             dapat melewati belokan dan dapat menemukan targetnya dengan baik.

     2. Alarm hanya akan menyala/aktif jika target telah ditemukan.

     3.        LED akan mati jika Alarm aktif.

     4. Rata-rata waktu menemukan target, yaitu:

             a. Target pertama = 00 : 22 : 47 (0 menit : 22 detik : 47 perdetik).
                                                                                            56




                    b. Target kedua    = 00 : 55 : 27 (0 menit : 55 detik : 27 perdetik).
                    c. Target ketiga   = 01 : 14 : 52 (0 menit : 55 detik : 27 perdetik).




J. Parameter Keberhasilan

                               Grafik Parameter Keberhasilan Sistem Robot


                    100

                    95

                    90
   Persentase (%)




                    85

                    80

                    75
                                                                                      Persentase
                    70                                                                Keberhasilan
                    65

                    60
                              A         B          C          D          E
                                            Jenis Pengujian



                          Gambar 23. Grafik Persentase Keberhasilan Sistem Robot

Keterangan jenis pengujian sistem robot pada Gambar 23 diatas :

                    A. Pengujian media pantul.

                    B. Pengujian alarm dan LED.
                                                                                57




       C. Pengujian melewati tikungan.

       D. Waktu tempuh tanpa mendeteksi target.

       E. Waktu tempuh dalam mendeteksi target.

       Batas minimun keberhasilan sistem robot yang tentukan adalah 90%. Dari

5 jenis pengujian yang dilakukan, semuanya diatas batas minimum. Dari Gambar

23 diatas dapat disimpulkan bahwa robot Insecticon Hexapod Explorer telah

barhasil dalam melakukan fungsi-fungsinya.

                                      BAB V

                                   PENUTUP


A. Kesimpulan

       Berdasarkan hasil penelitian dan pembahasan yang telah dilakukan, dan

berdasarkan tujuan dari penelitian ini, maka dapat disimpulkan :

   1. Telah berhasil dirancang robot insecticon hexapod explorer minimalis

       menggunakan mikrokontroler ATMega 8535.

   2. Robot dapat melewati lintasan dengan baik tanpa menabrak halangan

       dengan sensor ping ultrasonic.

   3. Target direspon oleh sensor inframerah dengan terminal line-coupel dan

       akan mengaktifkan alarm/bazer ketika menemukan target lingkaran putih.

   4. Rata-rata satu kali putaran untuk mendeteksi target adalah 02 : 21 : 27

       (2 menit : 21 detik : 27 perdetik).
                                                                          58




   5. Tingkat keberhasilan sistem robot adalah 97,3 % sedangkan batas

       minimum keberhasilan sistem robot adalah 90 %, sehingga robot sudah

       berhasil mendekati fungsi robot yang sering dilombakan diKRCI.




B. Saran

       Penelitian yang dilakukan dapat dikembangkan untuk aplikasi yang lebih

luas dan dalam sistem yang terintegrasi. Saran yang dapat disampaikan untuk

pengembangan lebih lanjut, yaitu:

   1. Kurangnya jumlah sensor ultrasonic yang dipakai menyebabkan robot

       kurang akurat dalam menghindari halangan, untuk itu perlu diperbanyak

       jumlah sensornya.

   2. Robot hexapod bisa dikembangkan dengan sensor logam untuk keperluan

       eksplorasi bahan tambang dan juga dibidang militer untuk mendeteksi

       ranjau darat.
                                                                              59




                            DAFTAR PUSTAKA



[1] Endra, P, 2006, Robotika: Desain Kontrol dan kecerdasan buatan, Andi
   Offset, Yogyakarta.
[2] Ibnu, M, 2006, Pengantar Membuat Robot, Gava Media, Yogyakarta.

[3] Lingga, W, 2006, Belajar Sendiri Mikrokontroler AVR seri ATMega8535:

   Simulasi, Hardware dan Aplikasi, Andi Offset, Yogyakarta.

[4] Riyanto, S, 2007, Robotika,Sensor dan Aktuator, Graha Ilmu, Yogyakarta.

[5] Sandi, H, 2007, Merancang Mobile Robot Pembawa Objek menggunakan

   Oopic-R, PT Elex Media Komputindo, Jakarta.

[6] Widodo Budiharto, 2006, Membuat Robot Cerdas, PT Elex Media
   Komputindo, Jakarta.
[7] Yoram Koren,”Robotics for Engineers”, McGrawHill International.