Teleoperated robot

Document Sample
Teleoperated robot Powered By Docstoc
					                PROYEK AKHIR




      STRATEGI PENGENALAN POSISI START
PADA ROBOT MASTER ROBOT PEMADAM API KRCI 2007




               EKA PRASETYONO
                  7303.040.012




                Dosen Pembimbing

            Ir. ANANG TJAHJONO, MT
                  NIP. 131 793 746




      JURUSAN TEKNIK ELEKTRO INDUSTRI
  POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
               SURABAYA 2007
                               PROYEK AKHIR




      STRATEGI PENGENALAN POSISI START
PADA ROBOT MASTER ROBOT PEMADAM API KRCI 2007




               EKA PRASETYONO
                 7303.040.012




                Dosen Pembimbing

            Ir. ANANG TJAHJONO, MT
                  NIP. 131 793 746




      JURUSAN TEKNIK ELEKTRO INDUSTRI
  POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
               SURABAYA 2007



                                              i
       STRATEGI PENGENALAN POSISI START
 PADA ROBOT MASTER ROBOT PEMADAM API KRCI 2007

                                 Oleh:



                        EKA PRASETYONO
                           7303.040.012

Proyek akhir diajukan sebagai salah satu syarat untuk memperoleh gelar
                    Sarjana Sains Terapan (S.ST.)
                                  di
              Politeknik Elektronika Negeri Surabaya
         Institut Teknologi Sepuluh Nopember Surabaya

                             Disetujui oleh
Tim Penguji Proyek Akhir :         Dosen Pembimbing :


1. Ainur Rofiq N, ST.MT            1. Ir. Anang Tjahjono,MT
   NIP. 131 859 915                   NIP. 131 793 746


2. Ir. Gigih Prabowo
   NIP. 131 694 539


3. Ir. Sutedjo,MT
   NIP. 131 918 367

                             Mengetahui,
                 Ketua Jurusan Teknik Elektro Industri


                       Ainur Rofiq N, ST. M.T.
                          NIP. 131 859 915




                                                                   ii
ABSTRAK
                              ABSTRAK

     Robot pemadam api sawrm pada Kontes Robot Cerdas Indonesia
(KRCI) adalah dua buah robot atau lebih yang saling bekerja sama,
memiliki kemampuan menjelajahi arena pertandingan dan mampu
melaksanakan beberapa tugas yang ada. Untuk mengikuti kontest ini
dibuatlah dua robot, satu robot sebagai master dan satu robot sebagai
slave. Sebagai robot master agar dapat bergerak dengan benar dalam
menyelesaikan tugas harus mampu mengenali secara otomastis dimana
posisi startnya berada pada bentuk arena pertandingan yang berubah
ubah semi random. Agar robot dapat menyelesaikan tugas maka
dibutuhkan beberapa buah sensor yang diolah dalam suatu kontroler
sebagai pemandu navigasi robot selama menjelajahi lapangan dan
mendeteksi obyek-obyek yang ada seperti lilin dan boneka. Sensor yang
digunakan antara lain sensor ultrasonik, kompas elektrik, sensor thermal
array, radio frekwensi, rotary enkoder, flame detector, dan sensor sound
aktivasi. Kontroler yang digunakan adalah mikrokontroler jenis AVR,
yaiu ATmega162 dan Atmega8. Metode penjelajahan lapangan yang
digunakan pada robot dalam bentuk mapping area untuk memudahkan
pemrograman.

Kata kunci : sensor, lilin, boneka, mikrokontroler, posisi start, mapping




                                                                      iii
                              ABSTRACT
           Swarm fire fighting robot in Indonesian Intelligent Robot
Contest is two robots or more that has cooperation each other, has an
ability to explore an arena and complete the given tasks. For participate
in this contest therefore two robot is made, one robot as master and the
other as slave. In order to master robot move and do given tasks truly,
the robot has to be able automatically in identifying where is start
placements in semi random arena. For complete the given tasks, the
robot needs few sensors to be processed on a controller as a guide for
robot navigation during arena exploration and to detect objects that
exist, like candle and baby. Those sensors are ultrasonic sensor, electric
compass, thermal array sensor, radio frequency, rotary encoder, flame
detector, and sound activation. Controllers that are used are from AVR
family microcontroller, ATmega162 and ATmega8. . Arena exploration
method that is used at this robot is area mapping for easy programming.

Keyword :    sensor, candle, baby, microcontroller, start position,
             mapping




                                                                      iv
KATA PENGANTAR
                       KATA PENGANTAR

                        ó Î0   !$# Ç⎯≈uΗ÷q§9$# ÉΟŠÏm§9$# ∩⊇∪


      Puji dan syukur senantiasa kita panjatkan ke hadirat Alloh SWT
atas segala nikmat, kekuatan, taufik serta hidayah-Nya. Shalawat dan
salam semoga tercurah kepada Rasulullah SAW, keluarga, sahabat, dan
para pengikut setianya. Amin. Atas kehendak Alloh sajalah, penulis
dapat menyelesaikan proyek akhir yang berjudul :

       STRATEGI PENGENALAN POSISI START
 PADA ROBOT MASTER ROBOT PEMADAM API KRCI 2007

      Pembuatan Proyek Akhir ini merupakan salah satu syarat untuk
memperoleh gelar Sarjana Sains Terapan (S.ST) di Politeknik
Elektronika Negeri Surabaya – Institut Teknologi Sepuluh Nopember.
Selain itu penulis berharap agar proyek akhir dapat menambah literature
dan dapat memberikan manfaat bagi semuanya.

     Akhir kata semoga buku ini dapat bermanfaat di masa sekarang
dan masa mendatang. Sebagai manusia yang tidak luput dari kesalahan,
maka penulis mohon maaf apabila ada kekeliruan biak yang sengaja
maupun yang tidak sengaja.




                                                    Surabaya, Agustus 2007




                                                                 Penulis




                                                                           v
     UCAPAN
TERIMA KASIH
                    UCAPAN TERIMA KASIH
       Bahwa terselesaikannya Proyek Akhir ini bukanlah semata-
mata karena usaha dan kerja individu penulis sendiri, tetapi
mendapatkan banyak bantuan dari berbagai pihak, untuk itu penulis
menyampaikan terima kasih kepada:
1.   Allah SWT yang masih memperkenankan kepada penulis terlebih
     lagi atas kesempatan untuk menyelesaikan tugas akhir ini.
2.   Kedua Orang Tua dan saudara-saudaraku yang telah banyak
     memberikan doa dan dukungan.
3.   DR. Ir. Titon Dutono, M.Eng selaku direktur Politeknik
     Elektronika Negeri Surabaya-ITS.
4.   Ainur Rofiq Nansur, MT selaku Ketua Jurusan Teknik Elektro
     Industri PENS-ITS.
5.   Ir. Anang Tjahjono, MT selaku dosen pembimbing TA yang
     mengantarkan penulis melakukan penelitian.
6.   Akhmad Hendriawan, ST selaku dosen pembimbing KRCI yang
     mengantarkan penulis melakukan penelitian.
7.   Seluruh civitas akademika (dosen, asisten, teknisi dan karyawan)
     Politeknik Elektronika Negeri Surabaya yang telah membekali
     ilmu dan membantu kepada penulis.
8.   Seluruh EEPIS Roboholic Crew yang tanpa kenal lelah berjuang
     mencari ilmu robotika di PENS-ITS.
9.   Rekan-rekan Tim Mech Robo (Kristian ari, Nur Cholis dan Nur
     Fatkan Yuanto) dan KRI-KRCI 2007 yang dengan senang hati
     memberikan ide, strategi dan semangat.
10. Rekan-rekan D4 ELIN Angkatan 2003 yang dengan senang hati
    membantu penulis selama masa perkuliahan.
11. Dan yang terakhir, semuanya yang telah membantu penulis yang
    tidak bisa sebutkan satu persatu.
Semoga Allah SWT. memberikan limpahan rahmat dan hidayahnya atas
segala kebaikan dan semoga kita semua selalu dalam lindungan serta
tuntunan-Nya.
DAFTAR ISI
                                           DAFTAR ISI

                                                                                                     Hal

HALAMAN JUDUL .......................................................................             i
HALAMAN PENGESAHAN......................................................... ii
ABSTRAK ....................................................................................... iii
ABSTRACT..................................................................................... iv
KATA PENGANTAR..................................................................... vi           v
UCAPAN TERIMA KASIH........................................................... vi
DAFTAR ISI.................................................................................... vii
DAFTAR GAMBAR....................................................................... x
DAFTAR TABEL ........................................................................... xiii

BAB I PENDAHULUAN
1.1 Latar belakang .……….................................................................. ..1
1.2 Tujuan .............................................................................................. 2
1.3 Perumusan Masalah ......................................................................... 2
1.4 Batasan masalah.............................................................................. 2
1.5 Sisitimatika pembahasan.................................................................. 3

BAB II TEORI PENUNJANG
2.1 Teknik Desain Robot Berorientasi Fungsi ....................................... 5
    2.2.1 Rangakaian kontroler berbasis Prosesor -Mikrokontroller..... 6
2.2 Pengertian Robot Swarm ................................................................. 7
2.3 Piranti masukan................................................................................ 7
    2.3.1 Sensor ultrasonik.................................................................... 7
    2.3.2 Rotari enkoder........................................................................ 9
    2.3.3 Kompas elektronik ................................................................. 9
    2.3.4 UV Tron............................................................................... 10
    2.3.5 Radio Freqwency tranciever ................................................ 11
    2.3.5 Thermal Array Sensor.......................................................... 13
2.4 Piranti keluaran .............................................................................. 14
    2.4.1 Driver motor ........................................................................ 14
    2.4.2 Brushles driver motor .......................................................... 15
2.5 AVR Mikrokontroller ................................................................... 17
    2.5.1 AVR ATMega 162............................................................... 17
    2.5.2 Serial ATMega 162.............................................................. 19
    2.5.3 AVR ATMega 8................................................................... 19
    2.5.4 Serial ATMega 8.................................................................. 21

                                                                                                      vii
2.6 CodevisionAVR C Compiler ....................................................... 21
    2.6.1 Pemilihan Chip dan Frekwensi Xtall ................................... 21
    2.6.2 Inisialisasi Port sebagai I/O ................................................ 22
    2.6.3 Inisialisasi Serial untuk mode RX interupt .......................... 23
    2.6.4 Penggunaan Kompas............................................................ 24

BAB III PERENCANAAN DAN PEMBUATAN ALAT
3.1 Kofigurasi sitem............................................................................. 27
3.2 Perencanaan dan pembuatan perangkat masukan .......................... 28
    3.2.1 Sensor ultrasonik.................................................................. 28
    3.2.2 Kompas elektronik ............................................................... 32
    3.2.3 Sensor Thermal Array.......................................................... 34
    3.2.4 Modul RF Tranciever .......................................................... 36
    3.2.5 Flame detektor ..................................................................... 37
    3.2.6 Sound aktifation ................................................................... 38
    3.2.6 Rangkaian Power Supply ..................................................... 42
3.3 Perancangan dan pembuatan perangkat keluaran........................... 42
    3.3.1 Driver motor DC Brussless ................................................. 42
    3.3.2 Driver motor DC ................................................................. 44
    3.3.3 Rangkaian buzzer ................................................................ 44
3.4 Perencanaan dan Pembuatan mekanik ........................................... 45
3.5 Perancangan dan pembuatan Algoritma......................................... 49
    3.5.1 Rule Maju ............................................................................ 53
    3.5.2 Pengenalan Posisi Start Robot master ................................. 53
    3.5.3 Pencarian Ruangan............................................................... 57
    3.5.4 Scanning Lilin...................................................................... 59
    3.5.5 Pendeteksian Boneka ........................................................... 61
3.6 Perancangan dan Pembuatan software ........................................... 63

BAB IV PENGUJIAN DAN ANALISA
4.1 Perangkat masukan ......................................................................... 69
    4.1.1 Sensor ultrasonik................................................................... 69
    4.1.2 Kompas elektronik ................................................................ 72
    4.1.3 Flame detektor....................................................................... 73
    4.1.4 Sensor Thermal Array ........................................................... 74
    4.1.5 Serial RF .............................................................................. 81
    4.1.6 Sound aktifation .................................................................... 83
4.2 Perangkat keluaran.......................................................................... 84
    4.2.1 Driver motor DC Brussless ................................................... 84


                                                                                                viii
    4.2.2 Motor DC Pompa Air............................................................ 86
    4.2.3 Motor servo standat .............................................................. 87
4.3 Pengujian Software ......................................................................... 87
    4.3.1 Mengikuti dinding kiri atau kanan ........................................ 87
    4.3.2 Pengenalan posisi start .......................................................... 90
    4.3.3 Scaning Lilin ......................................................................... 92
    4.3.4 Pencarian Boneka.................................................................. 93
4.4 Pengujian sistem ............................................................................. 94

BAB V PENUTUP ............................................................................. 97
5.1 Kesimpulan ..................................................................................... 97
5.2 Pengujian sistem ............................................................................. 98

DAFTAR PUSTAKA.......................................................................... 99
LAMPIRAN ............................................................................................
DAFTAR RIWAYAT HIDUP ...............................................................




                                                                                                   ix
DAFTAR GAMBAR
                                       DAFTAR GAMBAR

                                                                                        Hal
Gambar 2.1 Sistem Robot dan Orientasi fungsi .................................... 5
Gambar 2.2 Sistem Robot dengan controller berbasis prosesor............ 6
Gambar 2.3 Sistem Robot berbasis prosesor dengan user interface...... 6
Gambar 2.4 Prinsip kerja sensor ultrasonik........................................... 8
Gambar 2.5 Prinsip pemantulan gelombang ultrasoik .......................... 9
Gambar 2.6 Rangkaian rotary encoder.................................................. 9
Gambar 2.7 Daerah jangkauan dari falme detektor posisi tidur ......... 11
Gambar 2.8 Daerah jangkauan dari falme detektor posisi berdiri........ 11
Gambar 2.9 Sistem aliran data serial secara wireless........................... 12
Gambar 2.10 Rangkaian driver motor.................................................. 15
Gambar 2.11 Pin driver motor ............................................................. 15
Gambar 2.12 Timing diagram kontrol motor ....................................... 16
Gambar 2.13 Timing diagram kontrol motor dengan VR ext .............. 16
Gambar 2.14 Pin-pin Atmega 162 kemasan 40pin............................... 18
Gambar 2.15 Pin-pin Atmega 8 kemasan 28pin.................................. 21
Gambar 2.16 Pemilihan chip dan xtall yang digunakan....................... 22
Gambar 2.17 Pemilihan configurasi I/O .............................................. 23
Gambar 2.18 Pemilihan konfigurasi serial........................................... 23
Gambar 2.19 Pembentukan framing data dengan header atau tail ....... 24

Gambar 3.1 Blok Diagram Sistem Kontrol Robot master (Mech robo)
.............................................................................................................. 27
Gambar 3.2 Sensor Ultrasonik ............................................................ 28
Gambar 3.3 Blok diagram rangkaian sensor ultrasonic....................... 29
Gambar 3.4 Koneksi modul sensor ultrasonic..................................... 29
Gambar 3.5 Flowchart kontrol sensor ultrasonic ................................ 30
Gambar 3.6 Urutan scanning sensor ultrasonik................................... 30
Gambar 3.7 Program scanning sebuah sensor ultrasonik..................... 31
Gambar 3.8 Modul kompas elektronik................................................ 32
Gambar 3.9 Koneksi modul kompas elektronik.................................. 33
Gambar 3.10 Blok diagram rangkaian interfacing kompas................. 33
Gambar 3.11 Program I2C pembacaan data kompas .......................... 34
Gambar 3.12 Modul sensor thermall arry ........................................... 34
Gambar 3.13 Koneksi modul sensor thermal array............................. 35
Gambar 3.14 Program I2C pembacaan data thermal array ................. 35
Gambar 3.15 Modul Radio Frekwnsi Tranciever................................ 36
Gambar 3.16 Sistem Aliran data serial secara wireless ...................... 36



                                                                                                            x
Gambar 3.17 Setting Address Melalui Hiperteminal .......................... 37
Gambar 3.18 Flame detector .............................................................. 38
Gambar 3.19 Pemasangan jumper dan kcapasitor............................... 38
Gambar 3.20 Blok diagram pemencar sound aktifation...................... 39
Gambar 3.21 IC LM555 sebagai pulse generator................................ 39
Gambar 3.22 Pemancar sound aktifation ............................................ 40
Gambar 3.23 Blok diagram penerima sound actifation...................... 40
Gambar 3.24 Rangkaian Tone decoder LM567 .................................. 40
Gambar 3.25 Rangkaian Amplifier ..................................................... 41
Gambar 3.26 Penerima sound actifation ............................................. 41
Gambar 3.27 Rangkaian power suplpy ............................................... 42
Gambar 3.28 Koneksi ipnut driver dengan uC.................................... 43
Gambar 3.29 Koneksi output driver dengan uC.................................. 43
Gambar 3.30 PWM to analog.............................................................. 43
Gambar 3.31 Rangkaian driver motor................................................. 44
Gambar 3.32 Rangkaian beeper .......................................................... 44
Gambar 3.33 Rangkaian driver beeper................................................ 45
Gambar 3.34 Mekanik robot ............................................................... 46
Gambar 3.35 Posisi sensor ultrasonik ................................................. 46
Gambar 3.36 Pelontar beeper.............................................................. 47
Gambar 3.37 Tabung dan pompa air .................................................. 47
Gambar 3.38 Spray nozle.................................................................... 48
Gambar 3.39 Bentuk roda dengan belt................................................ 48
Gambar 3.40 Home dan posisi start robot pada trial 1 ........................ 49
Gambar 3.41 Home dan posisi start robot pada trial 2 ........................ 50
Gambar 3.42 Home dan posisi start robot pada trial 3 ........................ 50
Gambar 3.43 Denah lapangan pertandingan lantai 2........................... 50
Gambar 3.44 Flowchat robot master ................................................... 51
Gambar 3.45 Flowchat robot master lanjutan ..................................... 52
Gambar 3.46 Posisi start robot master bagian dalam .......................... 54
Gambar 3.47 Posisi start robot master bagian luar.............................. 55
Gambar 3.48 Flowchat pengenalan posis start robot master ............... 56
Gambar 3.49 Rute pada lantai 2 untuk undian 1 ................................. 57
Gambar 3.50 Rute pada lantai 2 untuk undian 2 ................................. 57
Gambar 3.51 Rute pada lantai 2 untuk undian 3 ................................. 58
Gambar 3.52 Rute pada lantai 1 untuk trial 1...................................... 58
Gambar 3.53 Rute pada lantai 1 untuk trial 2...................................... 58
Gambar 3.54 Rute pada lantai 1 untuk trial 3...................................... 59
Gambar 3.55 Block diagram penggabungan sensor untuk
            pemadaman api ................................................................ 59



                                                                                          xi
Gambar 3.56 Flochart pemadaman lilin................................................ 60
Gambar 3.57 Block diagram penggabungan sensor untuk
            pencarian boneka ............................................................. 61
Gambar 3.58 Flochart pendeteksian boneka ......................................... 62
Gambar 3.59 Inisialisasi chip dan clock................................................ 63
Gambar 3.60 Inisialisasi dan vektor interut serial................................. 64
Gambar 3.61 Inisialisasi port I/O .......................................................... 64
Gambar 3.62 Tampilan program inisialisasi port I/O............................ 65
Gambar 3.63 Inisialisasi timer 0 ........................................................... 65
Gambar 3.64 Inisialisasi timer 1 ........................................................... 66
Gambar 3.65 Vektor interupt timer 1 .................................................... 66
Gambar 3.66 Inisialisasi dan vektor interut serial................................. 67
Gambar 3.67 Inisialisasi timer 1 ........................................................... 68
Gambar 3.68 Inisialisasi enable interupt timer...................................... 68

Gambar      4.1 Diagram blok dari rangkaian sensor ultrasonic ............... 70
Gambar      4.2 Grafik data ultrasonik terhadap jarak dengan benda ....... 72
Gambar      4.3 Diagram blok dari rangkaian kompas.............................. 72
Gambar      4.4 Rangkaian modul flme detektor ...................................... 74
Gambar      4.5 Pengujian posisi lilin terhadap flame detektor ................ 75
Gambar      4.6 Diagram blok dari rangkaian thermal array..................... 76
Gambar      4.7 Pengujian sudut vertikal sensor thermal.......................... 78
Gambar      4.8 Sudut area vertical sensor thermal................................... 79
Gambar      4.9 Pengujian sudut vertikal sensor thermal.......................... 80
Gambar      4.10 Pengujian sudut vertikal untuk membedakan lilin dengan
                  boneka.......................................................................... 81
Gambar      4.11 Diagram blok dari rangkaian serial RF.......................... 81
Gambar      4.12 Rangkaian penerima sound aktifation ........................... 83
Gambar      4.13 Rangkaian penguji kecepatan motor ............................. 84
Gambar      4.14 Grafik dutycycle terhadap kec. motor ........................... 85
Gambar      4.15 Prinsip pengaturan kec. Motor berdasrkan data jarak ... 86
Gambar      4.16 Blok rangkaian penguji motor pompa air ..................... 86
Gambar      4.17 Blok rangkaian penguji motor servo ............................ 87
Gambar      4.18 Pergerakan robot pada belokan 90º ............................... 89
Gambar      4.19 Posisi Start Robot Master Pada Trial 1.......................... 90
Gambar      4.20 Posisi Start Robot Master Pada Trial 2.......................... 91
Gambar      4.21 Posisi Start Robot Master Pada Trial 3.......................... 91




                                                                                                 xii
DAFTAR TABEL
                                  DAFTAR TABEL

                                                                                          Hal

Tabel 2.1 Contoh Konfigurasi XbeePro............................................ 13
Tabel 2.2 Daftar register sensor thermal arry.................................... 14

Tabel   4.1    Data jarak sensor ultrasonik .............................................. 71
Tabel   4.2    Data posisi kompas ........................................................... 73
Tabel   4.3    Data posisi kompas setelah kalibrasi................................. 74
Tabel   4.4    Data sensor Thermal Array per pixel ................................ 77
Tabel   4.5    Data sensor Thermal Array pengujian sudut horisontal .... 78
Tabel   4.6    Data sensor Thermal Array pengujian sudut vertikal........ 80
Tabel   4.7    Kemampuan RF mengirim dan menerima data................. 83
Tabel   4.8    Hubungan PWM terhadap Kec.Motor .............................. 85
Tabel   4.9    Hasil percobaan pada lintasan lurus .................................. 88
Tabel   4.10   Hasil percobaan belokan 900 ............................................. 88
Tabel   4.11   Hasil percobaan sudut datang............................................ 89
Tabel   4.12   Hasil pengujian Pengenalan posisi start pada trial 1 ........ 90
Tabel   4.13   Hasil pengujian Pengenalan posisi start pada trial 2 ........ 90
Tabel   4.14   Hasil pengujian Pengenalan posisi start pada trial 3 ........ 91
Tabel   4.15   Hasil percobaan sacning lilin ............................................ 92
Tabel   4.16   Hasil percobaan pencarian boneka.................................... 93
Tabel   4.17   Pengujian sistem di lapangan ............................................ 94
                            BAB I
                        PENDAHULUAN

1.1 LATAR BELAKANG
         Kemajuan Ilmu Pengetahuan dan Teknologi yang terjadi dengan
cepat akhir-akhir ini menyebabkan banyak produk-produk industri yang
canggih tersebar secara luas dimasyarakat dunia. Kemajaun iptek ini
haruslah dikuti, maka sudah selayaknya salah satu tujuan dari pendidikan
tinggi adalah untuk menumbuhkan, mengembangkan dan menguasai iptek
melalui mahasiswa dalam rangka meningkatkan kemampuan, harga diri
bangsa serta taraf hidup masyarakat secara luas. Sehubungan dengan itu,
maka diselenggarakanlah Kontes Robot Cerdas Indonesia Tahun 2007
(KRCI-2007) dengan harapan KRCI-2007 mampu menjadi wahana untuk
mendorong kemampuan kreativitas mahasiswa menggunakan ilmu
pengetahuan yang dipelajari untuk membuat suatu sistem dalam bentuk
desain robot cerdas yang harus menemukan dan memadamkan api lilin
yang diletakkan dalam suatu bentuk lapangan menyerupai bangunan
rumah tinggal [rule KRCI 2007].
         Pada Kontes Robot Cerdas Indonesia Tahun 2007 (KRCI-2007)
terdapat sebuah divisi baru yang belum pernah ada pada tahun
sebelumnya yaitu divisi expert swarm. Pada divisi expert swarm ini
mahasiswa diwajibkan membuat dua buah robot atau lebih yang mampu
saling berkomunikasi,      bekerjasama dan berbagi tugas dalam
menyelesaiakan permaslahan sesuai aturan pertandingan. Sebagi
partisipasi PENS-ITS dalam Kontes Robot Cerdas Indonesia maka
dibentuklah beberapa tim salah satunya adalah tim KRCI expert swarm
yang bertugas membuat dua buah robot, robot pertama bertindak sebagai
master dan robot kedua bertindak segai slave. Kedua robot ini di beri
nama mech robo.
          Idealnya sebuah robot dapat melakukan navigasi pada kondisi
yang sebenarnya, dimana kondisi lingkungan selalu berubah dan belum
dipetakan sebelumnya. Namun demikian untuk membuat robot cerdas
seperti itu sangat sulit dan perlu waktu yang panjang, sehingga kedua
robot tersebut hanya dapat bekerja dengan baik apabila daerah kerja sesuai
dengan aturan KRCI 2007. Sedangka metode yang diusulkan pada proyek
akhir akan memberi sumbangan pada sistem pengenalan posisi start
swarm robot, strategi pengenalan posisi stari ini telah diaplikasikan pada
swarm robot (dua buah robot) yang diberi nama Mech Robo.
1.2 TUJUAN
    Tujuan dari proyek akhir ini adalah merencanakan, merancang dan
membuat sebuah algoritma pada robot master untuk mengenali posisi
posisi start robot pada lapangan pertandingan yang berbeda beda. Setelah
mampu mengenali posisi start, robot ini bergerak ke arah tertentu sesuai
dengan pemetaan (maping) untuk melakukan beberapa tugas sesuai
dengan aturan pertandingan Kontes Robot Cerdas Indonesia (KRCI) 2007
Divisi Expert Swarm.

1.3 PERUMUSAN MASALAH
    Permasalahan yang dihadapi sesuai atuaran pertandingan Kontes
Robot Cerdas Indonesia (KRCI) 2007 Divisi Expert Swarm adalah :
    1. Lapangan pertandingan yang merupakan simulasi dari gedung
        dengan ruangan dan koridor, bentuk rungan ini dapat berubah-
        ubah (semi random) berdasrakan urutan trial dan undian.
    2. Sebagi simulasi sumber titik api berupa lilin yang ditempatkan
        pada ruangan, sebuah lilin di lantai satu dan sebuah lilin di lantai
        dua.
    3. Boneka yang dilengkapi dengan bola lampu 15 watt yang dicat
        hitam yang merupakan simulasi panas tubuh manusia
    4. Home atau posisi start berubah ubah sesuai uruatan trial dan
        penempatan robot acak.

1.4 BATASAN MASALAH
    Pengerjaan proyek akhir ini selalu disesuaikan dengan peraturan
Kontes Robot Cerdas Indonesia 2007, sehingga ada beberapa hal yang
menjadi batasan masalah dalam proyek akhir ini, antara lain :
  • Robot swarm yang dibuat terdiri dari dua buah robot, satu robot
      bertindak sebagi master dan satu robot bertindak sebagi slave.
  • Robot master secara default bekerja hanya pada lantai dua, namun
      jika robot salve tidak mampu menyelesaikan tuagasnya maka robot
      master akan mengambil alih tugas dari robot salve.
  • Robot slave hanya bertugas pada lantai satu.
  • Daearah kerja robot harus sesuai dengan aturan Kontes Robot
      Cerdas Indonesia 2007.
  • Software pemrograman menggukan bahasa C yang dijalankan pada
      Codevision AVR C Compiler 1.235.
  • Mengguanakan Mikrokontroller jenis AVR 8 bit, yaitu ATMega8
      dan ATMega162.
1.5 SISTEMATIKA PEMBAHASAN
    Sistematika pembahasan dalam penyusunan laporan Proyek Akhir ini
adalah sebagai berikut :
BAB I : PENDAHULUAN.
           Berisi latar belakang pembuatan, tujuan, batasan masalah yang
           dikerjakan dan sistematika pembahasan.
BAB II : TEORI PENUNJANG
           Menjelaskan mengenai teori-teori penunjang yang dijadikan
           landasan dan rujukan perhitungan dalam mengerjakan Proyek
           Akhir ini.
BAB III : PERANCANGAN DAN PEMBUATAN ALAT
           Menjelaskan dan membahas tentang perencanaan dan
           pembuatan sistem dari robot.
BAB IV : PENGUJIAN DAN ANALISA
           Membahas pengujian mekanik, sistem perangkat keras
           (hardware), perangkat lunak(software) maupun pengujian
           sistem secara keseluruhan.
BAB V : PENUTUP
           Berisi kesimpulan dari keseluruhan pengerjaan Proyek Akhir
           dan saran-saran untuk memperbaiki kelemahan sistem dari
           robot yang telah dibuat demi pengembangan dan
           penyempurnaan di waktu mendatang.
                            BAB II
                       TEORI PENUNJANG

2.1 Teknik Desain Robot Berorientasi Fungsi
    Teknik disain robot dengan pendekatan praktis cenderung akan
menambah semangat mahasiswa karena dalam benak mereka yang ingin
menerjuni dunia robotic pertama kali adalah segera bereksperiment
dengan bentuk fisik robot, segera menciptakan perangkat keras dan
segera memfungsikan robot dengan program-program aplikasi sesuai
dengan tujuanakan bukan mempelajari teori yang terlalu besifat
matematis [1]. Pada gambar 2.1 adalah ilustrasi tentang diagram sistem
robotik yang berhubungan dengan dunia nyata.




            Gambar 2.1 Sistem Robot dan Orientasi fungsi.

2.1.1 Rangakaian kontroler berbasis Prosesor atau Mikrokontroller
        Sistem robot[1] yang mengguanakan kontroler berbasis
prosesor atau sistem mikrokontroller dapat digambarkan seperti pada
gambar 2.2.




    Gambar 2.2 Sistem Robot dengan controller berbasis prosesor.

Secara umum deskripsi controller berbasis prosesor lengkap dengan user
interface dapat digambarkan seperti pada gambar 2.3.




   Gambar 2.3 Sistem Robot berbasis prosesor dengan user inteface
2.2 Pengertian Robot Swarm
     Robot Swarm adalah kumpulan robot (minimal dua buah robot)
yang saling bekerja sama dalam menyelesikan suatu tugas[2]. Robot
swarm yang diberi nama mech robo pada KRCI 2007 adalah dua buah
robot yang bertindak sebagai master-slave, kedua robot saling bekerja
sama dalam menyelseaikan tugas-tugas yang diberikan, robot master
bertugas pada lantai dua dan robot slave pada lantai satu. Agar masing-
masing robot mampu menyelesaikan tugas, maka               setiap robot
dilengkapi dengan beberapa jenis sensor, rangakaian mikrokontroller
dan beberapa jenis aktuator. Sensor yang digunakan sebagi data
masukan pada robot antara lain:
    -   Sensor Ultrasonik (SRF 04).
    -   Rotari encoder (Buil in Motor Vexta).
    -   Sensor Thermal Array (TPA 81).
    -   Kompas elektrik (CMPS 03).
    -   Flame detector (Hamamatsu UV tron).
    -   Radio Freqwency transceiver (Xbeepro 2.4GHz).

     Untuk mendukung pergerakan robot tersebut maka dibutuhkan
sistem hardware dan mekanik. Sistem hardware yang mendukung adalah
mikrokontroller, driver motor. Sedangkan aktuator yang digunakan pada
robot antara lain:
    - Motor DC Brushless (GFH230K/AXH10/24V Orintal Motor)
    - Motor servo standart (Paralax)
    - Motor DC pompa air (washer pump 12V)

2.3 Piranti Masukan (input)
2.3.1 Sensor Ultrasonik
     Sensor ultrasonik adalah sensor yang bekerja berdasarkan prinsip
pantulan gelombang suara dan digunakan untuk mendeteksi keberadaan
suatu objek tertentu di depannya, frekuensi kerjanya pada daerah diatas
gelombang suara dari 40 KHz hingga 400 KHz.

     Prinsip kerja Sensor Ultrasonik
    Sensor ultrasonik terdiri dari dari dua unit, yaitu unit pemancar dan
unit penerima. Struktur unit pemancar dan penerima sangatlah
sederhana, sebuah kristal piezoelectric dihubungkan dengan mekanik
jangkar dan hanya dihubungkan dengan diafragma penggetar. Tegangan
bolak-balik yang memiliki frekuensi kerja 40 KHz – 400 KHz diberikan
pada plat logam. Struktur atom dari kristal piezoelectric akan
berkontraksi (mengikat), mengembang atau menyusut terhadap polaritas
tegangan yang diberikan, dan ini disebut dengan efek piezoelectric.
     Kontraksi yang terjadi diteruskan ke diafragma penggetar sehingga
terjadi gelombang ultrasonik yang dipancarkan ke udara (tempat
sekitarnya), dan pantulan gelombang ultrasonik akan terjadi bila ada
objek tertentu, dan pantulan gelombang ultrasonik akan diterima
kembali oleh oleh unit sensor penerima. Selanjutnya unit sensor
penerima akan menyebabkan diafragma penggetar akan bergetar dan
efek piezoelectric menghasilkan sebuah tegangan bolak-balik dengan
frekuensi yang sama. Untuk lebih jelas tentang prinsip kerja dari sensor
ultrasonik dapat dilihat prinsip dari sensor ultrasonic pada gambar 2.4
berikut:




              Gambar 2.4 Prinsip kerja sensor ultrasonik

     Besar amplitudo sinyal elekrik yang dihasilkan unit sensor penerima
tergantung dari jauh dekatnya objek yang dideteksi serta kualitas dari
sensor pemancar dan sensor penerima. Proses sensing yuang dilakukan
pada sensor ini menggunakan metode pantulan untuk menghitung jarak
antara sensor dengan obyek sasaran. Jarak antara sensor tersebut
dihitung dengan cara mengalikan setengah waktu yang digunakan oleh
sinyal ultrasonik dalam perjalanannya dari rangkaian Tx sampai
diterima oleh rangkaian Rx, dengan kecepatan rambat dari sinyal
ultrasonik tersebut pada media rambat yang digunakannya, yaitu udara.
Prinsip pantulan dari sensor ulrasonik ini dapat dilihat pada gambar 2.5
        Gambar 2.5 Prinsip pemantulan gelombang Ultrasonik

    Waktu di hitung ketika pemencar aktif dan sampai ada input dari
rangkaian penerima dan bila pada melebihi batas waktu tertentu
rangkaian penerima tidak ada sinyal input maka dianggap tidak ada
halangan didepannya.

2.3.2 Rotari enkoder
     Rotari enkoder di sini digunakan untuk mendeteksi perpindahan/
pergerakan putaran roda robot. Setiap pulsa yang dihasilkan oleh rotari
enkoder dimasukkan ke pin counter dari mikrokontroler yang berfungsi
mencacah tiap pulsa tersebut menjadi data hexadesimal, yang
selanjutnya data tersebut dapat diolah oleh mikrokontroler dalam proses
kontrol robot.
     Rotari enkoder prinsipnya menggunakan photo transistor dan LED
infra merah. Berikut ini gambar dari rangkaian sensor dari rotari enkoder
yang sederhana, yaitu:
                                                     +5

                         R1               R2



                                                     output

                        LED Infra Merah



                                          PHOTO TRANSISTOR NPN




          Gambar 2.6 Rangkaian sensor untuk rotari enkoder

2.3.3 Kompas Elektronik
     Kompas elektronik digunakan untuk mengetahui posisi robot
menghadap dan untuk mengatur robot agar ketika belok posisi robot
tepat sejajar dengan dinding atau tepat 900 terhadap dinding. Kompas
elektronik didesain untuk navigasi robot. Modul ini cukup untuk
mendeteksi magnetik bumi. Data yang dihasilkan dari kompas berupa
data biner yang hasil dikonversi dari sudut magnetik bumi ke data
digital contohnya utara dihasilkan sama dengan data 0 dan selatan sama
dengan 7F dan data derajat yang lainnya secara linier. Koneksi dari
modul ke mikrokontroller dapat dilakukan dengan 2 cara. Satu
mengunakan data PWM (Pulse Width Modulation), 1 mS ( 00) sampai
36.99 mS (359.90) untuk sinyal tinggi (High) dengan kata lain 100μS/0
dengan + 1mS offset. Dan sinyal rendah (low) sekitar 65mS diantara
pulsa. Cara yang kedua mengunakan I2C, metode ini dapat digunakan
langsung sehingga data yang dibaca tepat 00 - 3600 sama dengan 0-255.

2.3.4 UV Tron
     UVTron Flame Detector digunakan untuk menemukan sumber api
dalam hal ini adalah api lilin. UV Tron dapat menemukan nyala api
dalam jarak 5 meter dari sumber dan alat ini beroprasi dalam range
spektral 185 sampai dengan 160 nm. Alat ini terdiri dari 2 paket yaitu:

        Hamamatsu R2868 Flame (UV) Sensor
        UVTron C3704 Rangkaian driver

     UVTron adalah suatu device yang sangat sederhana. Ketika katoda
diarahkan pada sinar ultraviolet (dari lilin), photoelektron dipancarkan
dari katode secara efek photoelectric dan kemudian dipercepat ke arah
anoda dengan medan elektrik. Ketika tegangan yang diterapkan menjadi
lebih tinggi dan medan elektrik bertambah kuat, energi kinetic dari
electron menjadi cukup besar untuk mengionisasikan molekul-molekul
gas yang terdapat pada tabung dengan cara dibenturkan. Elektron-
elektron yang dihasilkan dari ionisasi dipercepat, sehingga
memungkinkannya untuk mengionisasi molekul-molekul lain sebelum
mencapai anoda. Pada sisi lain, ion positive dipercepat ke arah katode
dan menabrak sehingga membangkitkan elektron-elektron kedua. Proses
ini menyebabkan arus yang besar antara elektroda-elektroda dan saat
proses pelepasan berlangsung. Pelepasan yang pertama terjadi, tabung
terisi dengan electron-elektron dan ion-ion. Tegangan turun atau jatuh
antara katoda dan anoda dengan cepat. Status ini akan terjadi tanpa
menurunkan tegangan anode sampai di bawah titik jenuh.
     Rangkaian pengarah menciptakan perbedaan tegangan yang
diperlukan pada tabung untuk mengijinkan proses peluruhan ketika
terkena sinar ultraviolet. Kemudian rangkaian mengamati arus keluaran
dari tabung dan ketika proses peluruhan terjadi, tegangan pada anode
dikurangi oleh rangkaian untuk mengijinkan bola lampu mengulang lagi
atau mereset. Tiap waktu proses peluruhan dan pelepasan terjadi, sinyal
dibangkitkan dengan cirkut atau rangkaian dengan beberapa pengaruh
untuk latar belakang.




Gambar 2.7 Daerah jangkauan dari sensor falme detektor posisi tidur
     Posisi dari tabung Uvtron mempengaruhi jarak dari jangkauan
pendeteksian sinar. Dengan posisi berdiri jangkauan lebih jauh tetapi
jangkauan luasan daerah lebih sempit hal ini berkebalikan dengan posisi
tidur sehingga posisi dari tabung harus disesuaikan dengan kebutuhan.




Gambar 2.8 Daerah jangkauan dari sensor falme detektor posisi berdiri

2.3.5 Radio Freqwency tranciever
     Radio freqwency tranciever yang digunakan adalah Xbee-PRO
OEM ZigBee/IEEE 802.15.4 2.4GHz. Radio freqwency tranciever ini
merupakan sebuah modul yang terdiri dari RF receiver dan RF
trnasmiter dengan system interface serial UART asynchronous.
         Gambar 2.9 Sistem Aliran data serial secara wireless
     Langkah pertama yang harus dilakukan dalam menggunakan Xbee-
PRO agar dapat melakukan komunikasi point to point adalah melakukan
seting konfigurasi alamat (address). Proser konfigurasi ini dapat
dilakukan melaui software X-CTU yang merupakan software aplikasi
khusus untuk Xbee-PRO. Cara lain untuk melakukan setting dapat
dilakukan melaui hiperterminal. Untuk melakuakan seting konfigurasi
address melalui hiperterminal hiperterminal ada dua metode. Metode
pertama disebut one line per command dan metode kedua disebut
multiple command on one line.

Metode 1 (One line per command)
Send AT Command          System Response
+++                      OK <CR> (Enter into Command Mode)
ATDL <Enter>             {current value} <CR> (Read Destination
                         Address Low)
ATDL1A0D <Enter>         OK <CR> (Modify Destination Address Low)
ATWR <Enter>             OK <CR> (Write to non-volatile memory)
ATCN
<Enter>                  OK <CR> (Exit Command Mode)

Metode 2 (Multiple commands on one line)
Send AT                  Command System Response
+++                      OK <CR> (Enter into Command Mode)
ATDL <Enter>              {current value} <CR> (Read Destination
                          Address Low)
ATDL1A0D,WR,CN<Cr> OK, OK, OK <CR> (Command execution is
                          triggered upon each instance of the
                          comma).
        Setelah melakukan seting konfigurasi ini maka modul Xbee-
PRO siap digunakan untuk mekakukan komunikasi point to poin,
dengan baud rate 9600 bps. Contoh seting konfigurasi anatara dua
modul adalah seperti pada table 2.1 berikut ini.
         Tabel 2.1 Contoh konfigurasi Xbee-PRO
   No.    Modul RF 1                  Modul RF 2
   1.     +++ <Enter>                 +++ <Enter>
   2.     ATDL <Enter>                ATDL <Enter>
   3.     ATDL100 <Enter>             ATDL101 <Enter>
   4.     ATWR <Enter>                ATWR <Enter>
   5.     ATMY101 <Enter>             ATMY100 <Enter>
   6.     ATWR <Enter>                ATWR <Enter>
   7.     ATCN <Enter>                ATCN <Enter>

Instruksi dengan karakter +++ <Enter> adalah tanda atau protocol untuk
masuk ke ATCommand mode. Dari ATCommand mode inilah setting
konfigurasi dilakukan. ATDL <Enter> untuk melihat alamat tujuan
(destination address), selanjutnya seting pertama adalah mengubah
alamat tujuan yaitu dengan perintah ATDL diikuti dengan alamat 16bit.
Setelah mengganti alamat tujuan maka seting harus disimpam kedalam
memori dengan perintah ATWR<Enter>. Langkah selanjutnya adalah
mengubah alamat modul itu sendiri (current address) dengan perintah
ATMY diikuti oleh alamat 16bit kemudian enter, kemudian ditulis
kedalam memori dan diakhiri dengan ATCN <Enter> sebagi tanda
keluar dari ATCommand mode. Setelah melakukan konfigurasi ini maka
masing-masing modul siap digunakan untuk mengirim dan menerima
data sesui dengan keperluan.

2.3.6 Thermal Array Sensor
     Sensor Thermal Array sensor yang digunakan adalah tipe TPA-81.
Sensor ini digunakan untuk mendeteksi infra merah pada range panjang
gelombang 2 um - 22 um, yang merupakan panjang gelombang dari
radiasi panas. Sensor ini memiliki 8 buah sensor panas yang tersusun
dalam satu baris. TPA-81 dapat mengukur suhu pada 8 titik yang
berdekatan secara bersamaan dan dapat mendeteksi api lilin pada jarak 2
meter dengan tidak terpengaruh oleh cahaya luar. Secara keseluruhan,
TPA-81 memiliki range horizontal sebesar 41° dan range vertikal
sebesar 6°. Sensor ini dapat mendeteksi api lilin dari jarak sekitar 2 m.
     Data yang dihasilkan dari sensor thermal array berupa data biner 8
bit dari masing-masing pixel sensor yang merupakan data suhu yang
terukur. Misalkan pada salah satu sensor mendeteksi suhu sebesar 48ºC,
maka data yang dihasilkan pada sensor tersebut adalah 48 (30H).
     Sensor thermal array memiliki 10 register yang dapat diakses
dengan menggunakan protokol I2C. Data suhu dari tiap-tiap pixel sensor
terdapat pada register-register ini. Data Register-register tersebut antara
lain seperti tampak pada tabel 2.1.

             Tabel 2.2 Daftar register sensor Thermal array
   Registe
                       Read                          Write
     r
     0         Software Revision             Command Register
              Ambient temperature         ServoRange (V6 or higher
      1
                       °C                          only)
              Pixel 1 Temperature
      2                                               N/A
                       °C
      3              Pixel 2                          N/A
      4              Pixel 3                          N/A
      5              Pixel 4                          N/A
      6              Pixel 5                          N/A
      7              Pixel 6                          N/A
      8              Pixel 7                          N/A
      9              Pixel 8                          N/A

    Data register-register tersebut diakses dengan menggunakan
protokol I2C, dengan alamat 0xD0. Alamat ini dapat diubah dengan
langkah-langkah sesuai prosedur yang telah ditentukan.

2.4 Piranti keluaran (output)
2.4.1 Driver motor
         Driver motor digunakan sebagai penghubung antara
    mikrokontroller ke motor DC. Digunakan driver motor karena arus
    yang keluar dari mirokontroller tidak mampu mencukupi kebutuhan
    dari motor DC. Rangkaian driver motor berupa rangkaian transistor
    seperti pada gambar 2.6. Ketika pin μC benilai 5 volt maka akan ada
    arus yang melewat basis dan ketika terdapat arus basis maka
    transisitor aktif sehingga akan ada arus yang mengalir dari colektor
    ke emitor dan motor akan berputar.
                   Gambar 2.10 Rangkaian driver motor


2.4.2   Brushless driver motor (AXH)
        Seri driver AHX230K adalah motor DC brushless
  • Start/stop input
  Start dipilih ketika input on (L level),dan motor berkerja, Stop dipilih
  ketika input off (H level) dan motor stop.




                      Gambar 2.11 Pin driver motor


  • Run/Break input
  Run dipilih ketika input on (L level) dan motor bekerja. Break dipilih
  ketika input off (H level),dan motor akan berhenti seketika (rem).
             Gambar 2.12 Timing diagram kontrol motor


• CW/CCW input
Putaran motor CW ketika input on (L level), putaran motor CCW
dipilih ketika input off (H level). Perpindahan CW ke CCW sebaiknya
ada waktu jeda untuk motor berhenti sejenak hal ini untuk mengurangi
kerusakan pada gearbox-nya.
• INT.VR/EXT input




    Gambar 2.13 Timing diagtam kontrol motor dengan VR ext
INT.VR terpilih ketika input on ( L level), dan pengaturan kecepatan
dari internal potensiometer. EXT terpilih ketika input off (H level),
dan pengaturan kecepatan dari eksternal potensiometer atau eksternal
tegangan DC digunakan. Ketika internal potensiometer tidak
digunakan, maka internal potensiometer tidak berpengaruh.
  • SPEED OUT output
  Simyal pulsa (lebar pulsa: 0.3 ms) dari 30 pulsa tiap putaran dari shaft
  motor.Kecepatan motor dapat dihitung dengan mengukur keceptan
  frekuensi keluaran.
                                  Speed output frekuensi ( Hz )
         Motor speed ( r / min) =                               × 60 ...…(2.1)
                                               30
                                                      1 ........................(2.2)
                   Speed output frekuensi ( Hz ) =
                                                      T
2.5 AVR Mikrokontroller
2.5.1 AVR ATmega162
     AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel,
berbasis arsitektur RISC (Reduced Instruction Set Computer). Hampir
semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 32
register general-purpose, timer/counter fleksibel dengan mode compare,
interrupt internal dan eksternal, serial UART, programmable Watchdog
Timer, dan mode power saving. Mempunyai PWM internal. AVR juga
mempunyai In-System Programmable Flash on-chip yang mengijinkan
memori program untuk diprogram ulang dalam sistem menggunakan
hubungan serial SPI. Atmega162 adalah mikrokontroler CMOS 8-bit
daya-rendah berbasis arsitektur RISC yang ditingkatkan.
     Kebanyakan instruksi dikerjakan pada satu siklus clock, Atmega162
mempunyai throughput mendekati 1 MIPS per MHz membuat disainer
sistem untuk mengoptimasi komsumsi daya versus kecepatan proses.
Beberapa keistimewaan dari AVR ATmega162 antara lain:
     1. Advanced RISC Architecture
          131 Powerful Instructions, Most Single Clock CycleExecution
          32 x 8 General Purpose Fully Static Operation
          Up to 16 MIPS Throughput at 16 MHz
          On-chip 2-cycle Multiplier
     2. Nonvolatile Program and Data Memories
          16K Bytes of In-System Self-Programmable Flash
          Optional Boot Code Section with Independent Lock Bits
          512 Bytes EEPROM
          1KBytes Internal SRAM
          Up to 64K Bytes Optional External Memory Space
          Programming Lock for Software Security
     3. Peripheral Features
          Two 8-bit Timer/Counters with Separate Prescalers and
          Compare Modes
            Two 16-bit Timer/Counters with Separate Prescalers, Compare
            Modes, and Capture Modes
            Real Time Counter with Separate Oscillator
             Six PWM Channels
             Dual Programmable Serial USARTs
            Master/Slave SPI Serial Interface
            Programmable Watchdog Timer with Separate On-chip
            Oscillator
            On-chip Analog Comparator
       4. Special Microcontroller Features
            Power-on Reset and Programmable Brown-out Detection
            Internal Calibrated RC Oscillator
            External and Internal Interrupt Sources
            Six Sleep Modes: Idle, ADC Noise Reduction, Power-save,
            Power-down, Standby and Extended Standby
       5. I/O and Package
            32 Programmable I/O Lines
            40-pin PDIP, 44-lead TQFP, 44-lead PLCC, and 44-pad MLF
       6. Operating Voltages
            2.7 - 5.5V for Atmega162L
            4.5 - 5.5V for Atmega162




             Gambar 2.14 Pin-pin ATmega162 kemasan 40-pin 1


1
    www.atmel.com / AT mega 16 hal 2
    Pin-pin pada ATmega162 dengan kemasan 40-pin DIP (dual in-line
package) ditunjukkan oleh gambar 2.25. Guna memaksimalkan
performa dan paralelisme, AVR menggunakan arsitektur Harvard
(dengan memori dan bus terpisah untuk program dan data).

2.5.2 Serial pada ATmega162
     Universal synchronous dan asynchronous pemancar dan penerima
serial adalah suatu alat komunikasi serial sangat fleksibel. Jenis yang
utama adalah :
     • Operasi full duplex ( register penerima dan pengirim serial
         dapat berdiri sendiri )
     • Operasi Asychronous atau synchronous
     • Master atau slave mendapat clock dengan operasi synchronous
     • Pembangkit baud rate dengan resolusi tinggi
     • Dukung frames serial dengan 5, 6, 7, 8 atau 9 Data bit dan 1
         atau 2 Stop bit
     • Tahap odd atau even parity dan parity check didukung oleh
         hardware
     • Pendeteksian data overrun
     • Pendeteksi framing error
     • Pemfilteran gangguan ( noise ) meliputi pendeteksian bit false
         start dan pendeteksian low pass filter digital
     • Tiga interrupt terdiri dari TX complete, TX data register empty
         dan RX complete.
     • Mode komunikasi multi-processor
     • Mode komunikasi double speed asynchronous


2.5.3 AVR ATmega 8
     ATmega 8 merupakan satu jenis mikrokontroler AVR dengan 18
jalur input/output yang dapat diprogram dalam kemasan 20 pin. Seperti
halnya ATmega162, mikrokontroler ATmega 8 memiliki keistimewaan
mikrokontroler jenis AVR, kecuali bahwa tidak memiliki internal ADC.
     Beberapa keistimewaan dan fitur-fitur dari mikrokontroler AVR
ATmega 8 antara lain :
     1. AVR – High-performance and Low-power RISC Architecture
              120 Powerful Instructions – Most Single Clock Cycle
              32 x 8 General Purpose Working Registers
              Fully Static Operation
         Up to 20 MIPS Throughput at 20 MHz
2.   Data and Non-volatile Program and Data Memories
         2K Bytes of In-System Self Programmable Flash
         Endurance 10,000 Write/Erase Cycles
         128 Bytes In-System Programmable EEPROM
         Endurance: 100,000 Write/Erase Cycles
         128 Bytes Internal SRAM
         Programming Lock for Flash Program and EEPROM Data
         Security
3.   Peripheral Features
         One 8-bit Timer/Counter with Separate Prescaler and
         Compare Mode
         One 16-bit Timer/Counter with Separate Prescaler,
         Compare and Capture Modes
         Four PWM Channels
         On-chip Analog Comparator
         Programmable Watchdog Timer with On-chip Oscillator
         USI – Universal Serial Interface
         Full Duplex USART
4.   Special Microcontroller Features
         debugWIRE On-chip Debugging
         In-System Programmable via SPI Port
         External and Internal Interrupt Sources
         Low-power Idle, Power-down, and Standby Modes
         Enhanced Power-on Reset Circuit
         Programmable Brown-out Detection Circuit
         Internal Calibrated Oscillator
5.   I/O and Packages
         18 Programmable I/O Lines
         20-pin PDIP, 20-pin SOIC, 20-pad QFN/MLF
6.   Operating Voltages
         1.8 - 5.5V (ATMega 8V)
         2.7 - 5.5V (ATMega 8)
7.   Speed Grades
         ATMega 8V: 0 - 4 MHz @ 1.8 - 5.5V, 0 - 10 MHz @ 2.7 -
         5.5V
         ATMega 8: 0 - 10 MHz @ 2.7 - 5.5V, 0 - 20 MHz @ 4.5 -
         5.5V
8.   Typical Power Consumption
         Active Mode 1 MHz, 1.8V: 230 μA
                 32 kHz, 1.8V: 20 μA (including oscillator)
                 Power-down Mode
                     < 0.1 μA at 1.8V




            Gambar 2.15 Pin-pin ATMega 8 kemasan 20-pin DIP 2

2.5.4 Serial pada ATMega 8
     Komunikasi serial pada ATMega 8 sama persis dengan komunikasi
serial pada ATMega16 sebagai standar komunikasi serial dengan
mikrokontroler jenis AVR.

2.6 CodevisionAVR C Compiler
         Pemrograman mikrokontroler AVR lebih mudah dilakukan
dengan bahasa pemrograman C, salah satu sofware pemrograman AVR
mikrokontroler adalah CodevisionAVR C Compiler versi 1. 253 yang
selanjutnya dalam pembahasan disebut cvAVR. Pada cvAVR terdapar
code wizard yang sangat membantu dalam proses inisaialisasi register
dalam mikrokontroler dan untuk membentuk fungsi-fungsi interupt.
Pada code wizard uintuk membuat inisialisasi cukup dengan meng click
atau memberi tanda check sesuai property dari desaik yang dikehendaki
setelah itu register yang ter inisislisasi dapat dilihat melalui program
preview atau melalui generate and save.


2
    www.atmel.com / ATmega 8 hal 2
2.6.1 Pemilihan Chip dan Frekwensi Xtall
         Langkah pertama dalam menggunakan cvAVR adalah
membentuk sebuah project baru, dengan click create new project maka
akan muncul pertanyaan apakah anda ingin memanfaatkan bantuan code
wizard, pilih saja ok maka anada akan masuk pada code wizard.
Langkah pertama yang harus dilakukan pada code wizard adalah
memilih jenis chip mikrokontroler yang digunakan dalam project dan
frekwensi xtall yang digunakan. Pemilihan chip dan frekwensi xtall
dapat dilihat seperti pada gambar 2.16




   Gambar 2.16 Pemilihan Chip danfrekwensi Xtall yang digiunakan


2.6.2 Inisialisasi Port I/O
         Inisialisasi Port berfungsi untuk memilih fungsi port sebagai
input atau sebagai output. Pada konfigurasi port sebagai output dapat
dipiloh pada saat awal setelah reset kondisi port berlogika 1 atau 0,
sedangaka pada konfigurasi port sebagi input terdapat dua pilihan yaitu
kondisi pin input toggle state atau pull-up, maka sebaiknya dipilih pull-
up untuk memberi default pada input selalu berlogika 1. setiap port
berjumlah 8 bit, konfigurasi dari port dapat diatur sesuai dengan
kebutuhan. Pengaturan konfigurasi dapat dilakukan perbit, jadi dalam
satu port dapat difungsikan sebagi input dan output dengan nilai default
any berbeda-beda. Gambar 2.24 menunjukkan seting konfigurasi pada
port a dengan kombinasi input dan output yang berbeda-beda defaulnya.




               Gambar 2.17 Pemilihan Konfigurasi I/O


2.6.3 Inisialisasi Serial untuk mode RX interupt




              Gambar 2.18 Pemilihan Konfigurasi Serial
Setelah melakukan inisialisasi serial seperti pada gambar 2.18 maka
untuk membuat farming data dengan header atau tail untuk start data
atau akhir data, maka pada source code USART0 Receiver interrupt
service routine perlu ditambahkan sedikit perintah untuk mengatur
rx_wr_index0. Sebagai contoh sebagai header data adalah 0, maka pada
source code ditambahkan jika data sama dengan nol maka rx_wr_index
sama dengan nol, letak penulisanya seperti pada gambar 2.19 yang
dicetak hitam italic.




   Gambar 2.19 Pembentukan Framing data dengan header atau tail

2.6.4 Penggunaan Kompas
         Pengguanaan sensor kompas pada robot umumnya digunakan
untuk memutar arah hadap robot ke arah tertentu, cara penggunaan
kompas seperti ini akan berhasil dengan baik jika titik-titik tempat rotasi
berputar robot telah dicoba sebelumnya, karena pembacaan sensor
kompas dari titik satu ke titik lain tidak sama. Metode yang lain dalam
mengguakan sensor kompas adalah dengan membaca posisi arah hadap
robot. Jadi robot akan bergerak terus mengikuti dinding sampai arah
hadap robot menghadap ke arah tertentu. Representasi arah mata angin
dalam sensor kompas dinyataka dalam 8 bit data antara 0-255. Letak 0
pada data kompas dapat berubah-ubah sesuai dengan posisi peletakan
sensor kompas sehingga akan terjadi kesuliatan dalam pemrograman.
Untuk membantu memudahkan pemrograman sensor kompas harus
dikalibrasi untuk setiap arah hadap lapangan yang berbeda. Tujuan dari
kali brasi ini untuk meletakkan angka 0 pada salah satu arah mata angin
yang tepat, sehingga dapat di tulis dengan atauran seperti pada source
code berikut ini.

if(selatan==0)
{ while(cmps<(int)timur+30 && cmps>(int)selatan+30)
  { //insert your code here
  };}
else
{ while(cmps<(int)timur+30 || cmps>(int)selatan+30)
  { //insert your code here
  };};

if(barat==0)
{ while(cmps<(int)selatan+30 && cmps>(int)barat+30)
  { //insert your code here
  };}
else
{ while(cmps<(int)selatan+30 || cmps>(int)barat+30)
  { //insert your code here
  };};

if(utara==0)
{ while(cmps<(int)barat+30 && cmps>(int)utara+30)
  { //insert your code here
  };}
else
{ while(cmps<(int)barat+30 || cmps>(int)utara+30)
  { //insert your code here
  };};

if(timur==0)
{ while(cmps<(int)utara+30 && cmps>(int)timur+30)
  { //insert your code here
  };}
else
{ while(cmps<(int)utara+30 || cmps>(int)timur+30)
  { //insert your code here
  };};
(Halaman ini sengaja dikosongkan)
                         BAB III
             PERANCANGAN DAN PEMBUATAN ALAT

3.1 Konfigurasi Sistem
     Secara umum konfigurasi sistem dari robot Mech Robo agar
mampu menyelesaikan tugas pada kontes robot cerdas Indonesia 2007
terdiri dari input, mikontroller dan output. Dari bagian besar tersebut
didalamnya terdapat perangkat keras (hardware) dan lunak (software).
Sisi masukan (input) terdiri beberapa sensor antara lain sensor
ultrasonik, Rotari enkoder, Kompas elektronik, Uvtron, Thermal Array
Sensor dan Radio frekwensi. Untuk kontroller menggunakan
mikrikontroller jenis AVR yaitu ATMega 8 dan ATMega162. Pada sisi
keluaran (output) terdapat driver motor, pada driver motor dibagi
menjadi 2, pertama driver motor utama menggunakan modul dari
VEXTA motor DC Brushless Driver, kedua driver motor pompa air
mgnggunakan sebuah transistor. Software pemrograman yang digunakan
untuk memprogram mikrokontroller mengunakan bahasa C.




Gambar 3.1 Blok Diagram Sistem Kontrol Robot master (Mech robo)
    Pada gambar 3.1 menunjukkan blok diagram sisem kontrol mech
robo baik pada robot master maupun robot slave, dimana terdapat 4
sensor yang harus dikendalikan dengan mikrokontroller tersendiri
karena untuk mengurangi kerja dari mikrokontroller utama dan
mempermudah dalam pembagian kerja. Sensor ultra sonik dan kompas
elektronik dikontrol oleh mikrokontroler ATMega8. Radio fregwensi
dan sensor thermal array dikontrol oleh mikrokontroller ATMega 162.
Untuk koneksi mikontroller utama ke mikontroller sensor ultrasonik dan
sensor thermal array menggunkan komunikasi data serial, sedangkan
mikrokontroller kompas elektronik menggunakan komunikasi data
paralel.

3.2 Perancangan dan Pembuatan Perangkat Masukan (input)
         Sistem perangkat masukan yang digunakan di sini antara lain
    sensor dan mikontroller yang berfungsi menghasilkan data sensor
    tersebut. Sehingga data tersebut adalah data jadi 8 bit yang bisa
    langsung diakses oleh mikrokontroler utama.

3.2.1 Perancangan dan Pembuatan Sensor Ultrasonik
     Sistem sensor untrasonik digunakan sebagai masukan dari proses
pengontrolan robot terbagi atas dua bagian, yaitu untuk perangkat keras
dan lunak (kontroller).
     Sensor ultrasonik (hardware)
     Sensor ultrasonik menggunakan modul jadi dari PARALLAX
seperti pada gambar 3.2. Dengan 2 buah pin kontrol, antara lain sebuah
pin input triger dan sebuah pin output data.




                    Gambar 3.2 Sensor ultrasonik

   Terdapat 5 sensor pada badan robot. Scanning sensor dilakukan
   secara bergantian agar data yang didapat valid. Output dari modul
   ini berupa data pwm sehingga data jarak sama dengan duty cycle
   dari sinyal output. Semakin jauh objek maka semakin besar duty
   cycle.
        Gambar 3.3 Blok diagram rangkaian sensor ultrasonik
        Untuk mengaktifkan sensor maka modul diberi triger pulsa
   maka sensor akan mengeluarkan sinyal pwm dan duty cycle tersebut
   sebagai jarak objek dengan sensor. Keenam sensor ditriger secara
   bergantian, kemudian dihitung lebar duty cyclenya. Selanjutnya data
   ultrasonik dikirim secara berurutan sesuai urutan scanning dengan
   komunikasi serial. Data yang dikirim adalah data 8-bit dengan nilai
   5-255, dimana nilai 0 digunakan sebagai tanda akhir data.




            Gambar 3.4 Koneksi modul sensor ultrasonik

     Sensor ultrasonik (software)
     Mikrokontroller memberikan sinyal pulsa high pada pin triger pulse
input dari sensor untuk mengaktifkan sensor ultrasonik. Untuk
menghitung lebar PWM mengunakan timer0. Timer0 aktif ketika
register TCCR0B diisi dengan nilai 4H yang berarti bahwa timer
berjalan dengan frekuensi 43,2 KHz. Pin echo pulse output terhubung
dengan pin-pin pada mikrokontroler. Ketika pin echo pulse output high
maka timer0 aktif dan ketika pin echo kembali bernilai low maka timer0
dimatikan dan data TCNT0 diambil sebagai data jarak. Sementara jika
timer menghitung sampai terjadi overflow dan masuk ke dalam interrupt
overflow, maka jarak dianggap maksimal, yaitu 255.
            Gambar 3.5 Flowchart kontrol sensor ultrasonik
     Proses scanning dilakukan tidak secara urut dari sensor US0-US5,
tetapi secara melompat-lompat. Hal ini dilakukan karena sensor yang
berdekatan akan saling interferensi satu sama lain. Urutan scanning
sensor ultrasonik adalah US2, US0, US4, US1, US5.




            Gambar 3.6 Urutan scanning sensor ultrasonik
     Ketika scanning sensor dilakukan secara berurutan, yaitu dari US0,
US1, sampai dengan US5, sensor yang salling bersebelahan akan saling
mengganggu. Hal ini dikarenakan sisa-sisa dari pantulan gelombang
ultrasonik yang dipancarkan akan masuk ke sensor yang ada di
sebelahnya, sehingga akan mengganggu validitas data. Hal ini dapat
diatasi dengan beberapa cara. Yang pertama adalah dengan memberikan
waktu jeda ketika dilakukan scanning antara ultrasonik satudengan
ultrasonik berikutnya. Ini dimaksudkan supaya sisa-sisa gelombang
ultrasonik yang dipancarkan telah hilang sehingga tidak mengganggu
validitas data. Cara seperti ini dapat bekerja dengan baik dengan
memberikan waktu jeda yang tepat. Akan tetapi cara in berakibat pada
lambatnya scanning sensor ultrasonik secara keseluruhan, karena selalu
ada jeda antara scanning sensor satu dengan scanning sensor berikutnya.
Dengan demikian data yang diperoleh kurang real time. Cara yang
kedua adalah dengan melakukan scanning secara tidak urut, melompat-
lompat dari satu sisi ke sisi yang lain, dari sensor yang ada di sisi kiri
berpindah ke sensor sisi kanan, kemudian kembali lagi ke sensor sebelah
kiri dan seterusnya. Dengan cara seperti ini, scanning dapat dilakukan
secara lebih cepat dibandingkan dengan cara yang pertama. Cara ini
dapat dilakukan karena sisa-sisa gelombang ultrasonik yang dipancarkan
pada suatu sisi tidak akan mempengaruhi sensor yang berada di sisi yang
lain. Setelah sebuah sensor selesai melakukan scanning, data yang
dihasilkan akan langsung dikirimkan ke kontroler utama melalui
komunikasi serial dengan baudrate 9600 bps. Data yang dikirim adalah
data dalam bentuk byte secara langsung, tanpa dikonversi ke dalam kode
ASCII. Sebagai penutup proses pengiriman data dikirimkan data 0, yang
digunakan kontroler utama untuk mereset index buffer penerima.
     Gambar 3.7 adalah potongan program dari proses scanning sebuah
sensor ultrasonik.




        Gambar 3.7 Program scanning sebuah sensor ultrasonik
     Pin trigger dari modul ultrasonik dihubungkan dengan PORTB.6,
sedangkan pin echo dihubungkan dengan PORTB.7 sebagai input pada
mikrokontroler ATMega 8. Pin trigger diberi sinyal ”high” minimal
selama 10us. Selanjutnya ditunggu sampai pin echo menjadi ”high”,
yang menunjukkan bahwa modul sensor telah memancarkan gelombang
ultrasonik. Saat pin echo berubah menjadi ”high”, timer0 yang
digunakan untuk menghitung lebar pulsa dijalankan. Selanjutnya
ditunggu sampai pin echo kembali menjadi ”low” atau timer0 overflow.
Data jarak dapat diambil pada register TCNT0 yang merupakan register
counter untuk timer0. Bila timer0 menghitung sampai terjadi overflow
tetapi pin echo tetap high, maka akan dianggap sebagai jarak maksimal,
dan program akan masuk ke dalam subrutin interrupt timer0 overflow.
Di dalam subrutin tersebut, timer akan dihentikan dan data dianggap
maksimal, yaitu 255. Selanjutnya data sensor dikirimkan melalui
komunikasi serial.
     Jarak maksimal yang dapat terdeteksi oleh sensor ultrasonik dapat
diatur dari frekuensi clock yang digunakan sebagai clock timer
penghitung lebar pulsa. Dari potongan program pada gambar 3.7, timer0
yang digunakan diatur pada frekuensi 43,2 kHz yang diperoleh dari
frekuensi clock dibagi 256. Frekuensi ini diatur dari nilai register
TCCR0B yang diisi nilai 0x04. Dengan menggunakan frekuensi sebesar
ini, jarak maksimal yang dapat dideteksi sensor sampai timer overflow
adalah ±50 cm. Jarak ini dapat diperbesar dengan cara memperkecil
frekuensi timer atau menggunakan timer lain yang memiliki resolusi
sebesar 16 bit.
     Lima sensor ultrasonik yang dikontrol oleh mikrokontroller
ATMega8 ini proses pengambilan datanya (scining) dapat diatur
berdasarkan permintaan dari mikrokontroller utama. Tujuan dari
pengaturan scaning berdasrakan permintaan mikrokontroller master
adalah untuk menghindari interfrensi antara robot master dengan robot
slave.

3.2.2 Perancangan dan Pembuatan Kompas Elektronik
     Kompas elektronik (hardware)
     Kompas elektronik yang digunakan adalah modul cmps03 produksi
Devantech. Kompas elektronik digunakan untuk mengetahui arah hadap
robot ketika bergerak dan menghasilkan gerakan yang baik ketika
berputar 180º.




                Gambar 3.8 Modul kompas elektronik
            Gambar 3.9 Koneksi modul kompas elektronik

     Koneksi kompas elektronik menggunakan I2C pin SCL (serial
clock) terhubung dengan pin mikrokontroller yang berfungsi sebagai
serial clock dan pin SDA (serial data) terhubung dengan mikrokontroller
yang berfungsi sebagai serial data. Untuk meringankan kerja
mikontroler utama, maka dibuat suatu modul rangkaian tersendiri untuk
mendapatkan data dari sensor kompas elektronik, dimana hubungan
dengan kontroler utama dalam bentuk parallel seprti pada gambar3.13.




           Gambar 3.10 Blok diagram rangkaian interfacing
                          kompas elektronik
     Masing-masing pin SDA dari kompas dan thermal array
dihubungkan dengan pin dari mikrokontroler yang berfungsi sebagai
serial data. Demikian juga dengan pin SCL, dihubungkan dengan pin
mikrokontroler yang berfungsi sebagai serial clock. Pada jalur SDA dan
SCL dipasang sebuah resistor pull-up sebesar 4k7 ohm.

    Kompas elektronik (software)
    Modul kompas dengan komunikasi protokol I2C sama dengan
eeprom's 24C04. Pertama mengirimkan suatu start bit. Kondisi start bit
adalah ketika SCL high dan SDA transisi dari high ke low. Start bit
berfungsi untuk menentukan awal data. Selanjutnya mikrokontroller
mengirimkan data 0xC0, data 0xC0 adalah alamat fix dari kompas.
Salanjutnya mengirimkan data 0x01 untuk membaca isi register 1 dari
modul kompas. Isi dari register 1 dalah data sudut kompas yang telah
dikonversi 0-255. Berikut ini adalah potongan program pembacaan
kompas elektronik dengan menggunakan protokol I2C, dimana pada
CodeVisionAVR telah ada fungsi-fungsi yang dapat digunakan untuk
membangkitkan sinyal-sinyal yang diperlukan dalam komunikasi
dengan I2C.




         Gambar 3.11 Program I2C pembacaan data kompas

3.2.3 Perancangan dan Pembuatan Sensor Thermal Array
     Sensor Thermal Array (hardware)
     Sensor Thermal Array yang digunakan adalah Thermal Array
Sensor TPA-81 produksi Devantech. Sensor ini dapat digunakan untuk
mengukur nilai suhu yang ada di daerah kerja sensor. Pada robot Genier,
sensor ini digunakan untuk mendeteksi boneka yang memancarkan
panas.




             Gambar 3.12 Modul Sensor Thermal Array
    Koneksi sensor Thermal Array ini melalui protokol I2C seperti
halnya kompas elektronik. Pin SDA dihubungkan dengan pin
mikrokontroler yang berfungsi sebagai serial data, dan pin SCL
dihubungkan dengan pin mikrokontroler yang berfungsi sebagai serial
clock.
         Gambar 3.13 Koneksi modul sensor Thermal Array

    Sensor Thermal Array (software)
    Modul sensor Thermal Array dengan komunikasi protokol I2C ini
sama dengan modul kompas elektronik seperti yang telah dijelaskan
sebelumnya. Alamat fix dari sensor ini adalah 0xD0. Selanjutnya
membaca data register dengan mengirimkan nilai alamat register yang
diinginkan. Data sensor ada pada alamat register 0x02-0x09 untuk data
sensor pixel 1-pixel 8. Untuk sistem komunikasi I2C secara keseluruhan
sama dengan modul kompas elektronik, yang berbeda hanyalah alamat
dari modul dan register-register yang dibaca. Sedangkan cara-cara
komunikasinya sama, yaitu dengan menggunakan sistem komunikasi
standard I2C. Data yang terbaca pada register-register yang menyimpan
data sensor tiap pixel adalah data 8 bit yang mempresentasikan nilai
suhu yang terukur.
    Secara umum, cara untuk mendapatkan nilai-nilai suhu dari sensor
thermal array sama seperti pada kompas elektronik, yang berbeda
hanyalah pada alamat register yang akan dibaca dan alamat device-nya.
Berikut ini adalah potongan program subrutin pembacaan data sensor
thermal array pada register dengan alamat sesuai input variabel addr.




    Gambar 3.14 Program pembacaan data sensor thermal array
3.2.4 Perancangan dan Pembuatan Modul RF Tranciever.
     Hardware
     Radio freqwency tranciever yang digunakan adalah Xbee-PRO
OEM ZigBee/IEEE 802.15.4 2.4GHz. Radio freqwency tranciever ini
merupakan sebuah modul yang terdiri dari RF receiver dan RF
trnasmiter dengan system interface serial UART asynchronous. Bentuk
fisik dari modul RF Xbee-PRO seperti pada gambar 3.18.




             Gambar 3.15 Modul Radio Frekwnsi Tranciever
     Pada robot mech robo RF ini berfungsi untuk melakukan
komunikasi antar robot. Komunikasi yang dilakukan bertujuan agar
dapat berkerjasama dalam menyelesaikan tugas. Data-data yang
diperlukan agar robot dapat bekerja sama antara lain adalah informasi
start, informasi trial, informasi berhasil tidaknya melakssanakan tugas
dan informasi putus tidaknya komunikasi dua robot.




        Gambar 3.16 Sistem Aliran data serial secara wireless

    Modul Xbee-PRO memiliki tegangan catu daya rendah yaitu antar
2.8 Volt sampai 3.4 Volt, sehingga diperlukan regulator tegangan
sebesar 3.3 volt, namun untuk data interface dapat dihubungkan secara
langsung ke mikrikontroller.
     Software
     Langkah pertama yang harus dilakukan dalam menggunakan Xbee-
PRO agar dapat melakukan komunikasi point to point adalah melakukan
seting konfigurasi alamat (address). Proser konfigurasi ini dapat
dilakukan melaui software X-CTU yang merupakan software aplikasi
khusus untuk Xbee-PRO. Cara lain untuk melakukan setting dapat
dilakukan melaui hiperterminal. Untuk melakuakan seting konfigurasi
address melalui hiperterminal hiperterminal ada dua metode. Metode
pertama disebut one line per command dan metode kedua disebut
multiple command on one line.




          Gambar 3.17 Setting Address Melalui Hiperteminal
Seting konfigurasi ini cukup dilakukan sekali saja atau ketika
menghendaki perubahan alamat tujuan ataupun current address.
Sedangkan program pada mikrokontroller hanya berupa program serial
dengan fasilitas receive interupt sehingga semua data yang diterima oleh
mikrokontroller baik data yang berasal dari master maupun data dari
RF, sedangkan pengiriman data dilakukan secara polling atau berurutan.
Data-data yang dikirim melalui RF meliputi data home, trial, status
tugas dan koneksi.

3.2.5 Perancangan dan Pembuatan Uvtron
     Sensor UVTron flame detector ini digunakan untuk mendeteksi
adanya api lilin. Digunakan 2 buah sensor UVTron untuk mendeteksi
ada tidaknya api dan posisi api. Salah satu sensor diberi penutup
sedemikian sehingga jangakauan sensor menjadi lebih sempit.
                     Gambar 3.18 Flame detector
     Dalam pembuatan dan perancangan pendeteksi lilin menggunakan
sensor Uvtron disini kami hanya perlu menambahkan jumper pada pin
jumper dan kapasitor 1μF. Penambahan jumper seperti gambar 3.19. Hal
ini berfungsi untuk mengatur sensitifitas dari sensor. Dan penambahan
kapasitor berfungsi untuk memperlebar sinyal output bila sensor dapat
mendeteksi adanya lilin, seperti tampak pada gambar 3.19. Peletakan
posisi dari tabung UV tron yaitu berdiri hal ini dikarenakan jarak
jangkauan dari sensor lebih jauh dibandingkan dengan posisi tidur dan
posisi anoda dari tabung berada didepan hal ini karena ketika kutub
anoda menerima cahaya maka kutub anoda akan mengeksitasi kutub
katoda sehingga sensor aktif.




          Gambar 3.19 Pemasangan jumper dan kcapasitor


3.2.6 Perancangan dan Pembuatan Sound Aktifasi
     Untuk rangakain sound aktifasi terdiri dari 2 bagian yaitu pemancar
dan penerima. Rangkaian pemancar berfungsi membangkitkan sinyal
suara dengan frekuensi tertentu. Rangkaian pemancar terdiri atas
rangkaian pembangkit gelombang dengan frekuansi tertentu dan
rangkaian penguat agar suara yang dihasilkan mempunyai daya yang
tinggi selanjutnya adalah speaker sebagai output yang berfungsi untuk
mengeluarkan suara.




         Gambar 3.20 Blok diagram pemencar sound aktifation
     Pembangkit gelombang yang digunakan adalah IC LM555 yang
diatur sebagai pembangkit gelombang kotak. Frekuensi yang diinginkan
adalah sebesar 3 – 4 Khz sesuai dengan aturan pada pertandingan.




           Gambar 3.21 IC LM555 sebagai pulse generator
    Frekuensi yang dihasilkan dapat diatur dari kombinasi nilai resistor
dan kapasitor RA, RB, dan C yang dapat dihitung dengan menggunakan
rumus sebagai berikut.
                                    1.44      .......................................(3.1)
                          f =
                              ( R A + 2 RB )C
                                           RB       .................................(3.2)
                       Duty Cycle =
                                       R A + 2 RB
    Supaya lebih memudahkan pengaturan, resistor RB menggunakan
sebuah variabel resistor supaya dapat diubah-ubah frekuensinya sesuai
kebutuhan. Nilai-nilai RA, RB, dan C yang diperoleh dari perhitungan
dengan rumus di atas adalah sebagai berikut :
                               RA = 1 kΩ
                              RB = 3.9 kΩ
                             C = 0.047 uF
              Gambar 3.22 Pemancar sound aktifation

    Pada rangkaian penerima terdiri atas mic sebagai input dan juga
menerima gelombang suara dari pemancar. Selanjutnya rangakain pre
amplifire untuk menguatkan input dari mic. Dari rangkaian amplifire
masuk ke rangkaian bandpass filter. Rangkaian band pass filter
berfungsi untuk memfilter suara yang masuk agar benar-benar suara dari
pemancar saja yang dapat diterima.



         Gambar 3.23 Blok diagram penerima sound actifation
     Sebagai band pass filter digunakan IC LM567. Dengan mengatur
nilai resisitor dan kapasitor, dapat diatur range frekuensi yang dapat
dideteksi oleh IC ini. Pada aturan KRCI, ditentukan bahwa nilai
frekuensi suara untuk sound aktifasi adalah berada diantar 3 - 4 KHz.
Jadi nilai resistor dan kapasitor yang dihubungkan pada IC tersebut
diatur sehingga dapat mendeteksi suara pada range frekuensi tersebut.




           Gambar 3.24 Rangkaian Tone decoder LM567
    Besarnya frekuensi tengah dari tone dekoder ini dapat dihitung
dengan menggunakan rumus :
                                             1    ………………………….(3.3)
                                   fo ≅
                                          1.1R1C1
Untuk selanjutnya, nilai kapasitor C1 dibuat tetap sedangkan nilai R1
dibuat variabel untuk memudahkan dalam melakukan setting dalam
rangka mendapatkan nilai frekuensi yang diinginkan. Output dari IC ini
adalah berupa open colector yang dapat disambung dengan sebuah LED
sebagai indikator. Output dapat langsung dihubungkan dengan pin
mikrokontroler dengan terlebih dahulu diberi resistor pullup.
                                          VCC



                      10 K                 10 K
                                  100 K


                                                    4.7 uF
                                                                    Output
                         100 nF                 C 828        50 K


            MICROPHONE


                  Gambar 3.25 Rangkaian Amplifier
    Sedangkan untuk rangkaian amplifiernya menggunakan penguat
sebuah transistor biasa untuk memperbesar sinyal yang ditangkap oleh
microphone, seperti pada gambar 3.25.




               Gambar 3.26 Penerima sound actifation
3.2.7 Perancangan dan Pembuatan Rangkaian Power Supply
     Sebagai sumber tenaga untuk robot ini, digunakan dua buah baterai
(aki kering) 12 V 1,2 Ah yang dihubungkan secara seri sehingga
menghasilkan tegangan sebesar 24 V.
     Diperlukan sebuah rangkaian penyearah antara driver motor dengan
rangkaian kontroler. Hal ini dimaksudkan supaya arus balik dari motor
tidak mempengaruhi rangkaian kontroler. Rangkaian penyearah ini
dapat beruapa penyearah jembatan wheatstone, seperti pada gambar
3.27.
         1                                                    +24 to Motor
         2
                                                              Ground to Motor
     Baterai 1

                          BRIDGE
         1
                                       7805                   VCC
         2
                                   1                      3
                                        Vin         +5V             to Control ler
     Baterai 2

                                              GND
                                              2



                                                                    to Control ler


                Gambar 3.27 Rangkaian power supply
     Untuk kipas, ditambahkan sumber tenaga tersendiri yang terpisah
dari sumber tenaga utama, yaitu menggunakan sebuah baterai 6 V 1,2
Ah. Hal ini dilakukan karena motor kipas mengkonsumsi arus yang
sangat besar pada saat dinyalakan. Oleh sebab itu diperlukan sumber
tegangan tersendiri yang terpisah dari sumber tegangan utama supaya
pada saat tegangan baterai drop karena arus yang tersedot oleh motor
kipas sangat besar tidak mempengaruhi rangkaian kontrol.

3.3 Perancangan dan Pembuatan Perangkat Keluaran (output)
3.3.1 Driver motor DC Brushless
    Driver motor DC Brushless merupakan modul jadi sehingga tinggal
    mengaktifkan saja. Dimana menghubungkan rangkaian driver motor
    dengan rangkaian mikrokontroller mengunakan optocoupler agar
    ground dari rangkaian driver motor dan mikrokontroller terpisah hal
    ini untuk mencegah adanya arus balik dari motor yang dapat
    mengakibatkan mikrokontroller dapat ter-reset dan menghilangkan
    program yang tersimpan dalam mikrokontroller. Pada gambar 3.31
    terlihat hubungan antara pin mikrokontroller dengan input ke driver
    motor.
            Gambar 3.28 Koneksi input driver dengan μC
     Sementara untuk koneksi output driver, yaitu rotari enkoder,
dengan mikrokontroler juga menggunakan optocoupler. Pada output
dari driver berupa led yang ketika output aktif maka led akan
menyala dan untuk menghubungkan ke dunia luar maka perlu
ditambah resistor pull-up seperti pada gambar 3.29




          Gambar 3.29 Koneksi output driver dengan μC
     Untuk input driver menggunakan aktif low sehingga rangkaian
pin output agar aktif maka pin tersebut harus terhubung dengan
ground. Untuk output driver akan aktif maka akan bernilai 0 jadi jika
output aktif maka di pin μC juga akan bernilai 0 (low). Untuk
pengaturan kecepatan menggunkan rangkaian low pass filter untuk
mengubah PWM ke tegangan analag (0-5 volt).

                  PWM 1kHZ                  Teg analog
                                10k


                                        100nF

                                      GND
                   Gambar 3.30 PWM to analog
3.3.2 Driver motor DC
         Driver motor digunakan sebagai penghubung antara
    mikrokontroller ke motor DC. Digunakan driver motor karena arus
    yang keluar dari mirokontroller tidak mampu mencukupi kebutuhan
    dari motor DC. Rangkaian driver motor berupa rangkaian transistor
    seperti pada gambar 3.34.




                  Gambar 3.31 Rangkaian driver motor
       Jenis transistor yang digunakan menyesuaikan dengan arus dari
   motor supaya transistor tidak kelebihan beban dan dapat bekerja
   dengan baik.

    3.3.3 Rangkain Beeper
     Rangkaian beeper berfungsi sebagai tanda bila robot telah
menemukan boneka ketika robot menemukan boneka maka rangkaian
beeper ini dilemparkan. Dalam rangkaian tersebut digunakan limit
switch ketika didalam robot limit swich kondisi tertutup sehingga
rangakain beeper tidak aktif. Dan ketika beeper terlempar dan terlepas
dari badan robot maka limit swicth tersebut terbuka sehingga swicth
terhubung dan beeper aktif.




                  Gambar 3.32 Rangkain beeper
    Rangkaian ini menggunakan sebuah mikrokontroler ATTiny2113
yang berfungsi menghasilkan sinyal yang diumpankan ke dalam beeper.
Sinyal yang diumpankan adalah sinyal dengan frekuensi 1 kHz yang
dimodulasi dengan frekuensi 2 Hz. Hal ini dilakukan supaya beeper
menghasilkan suara dengan frekuensi 1 kHz yang berbunyi 2 kali
perdetik. Limit switch yang digunakan untuk memutuskan atau
menyambungkan power supply pada rangkaian. Digunakan pin NC
(Normally Close), sehingga saat limit switch terbuka, power supply akan
masuk ke dalam rangkaian dan beeper akan menyala.
                                         VCC


                                               9012
                                               PNP

                                9012
                                PNP

                       Pin uC




                                           BUZZER



                Gambar 3.33 Rangkaian driver beeper


3.4 Perancangan dan pembuatan mekanik
     Kerangka utama robot
     Kerangka robot berbentuk menyerupai tabung dengan diameter 30
cm dan tinggi 28 cm. Bentuk menyerupai tabung berfungsi untuk
memudahkan dalam pergerakan robot jika terjadi tabrak dengan dinding
maka robot dapat memudahkan untuk bergerak dan keluar dari tabrakan.
Menggunakan 2 roda dikanan dan kiri berbentuk tank berfungsi agar
ketika robot berputar maka robot berputar pada titik tengah dari robot.
Peletakan baterai terdapat di bagian bawah hal ini berfungsi agar titik
berat robot terdapat pada bagian bawah sehingga robot tidak mudah
terguling.
                   Gambar 3.34 Mekanik Robot

    Posisi sensor ultra sonik
    Terdapat 5 pasang sensor ultrasonik dan semuanya terdapat pada
bagian depan. Dengan jarak antar sensor sama. Hal ini untuk
menjangkau semua halangan yang ada disekitar robot.




               Gambar 3.35 Posisi sensor ultrasonik

    Pelontar Beeper
    Mekanik pelontar beeper berfungsi untuk melontarkan beeper atau
beeper ketika robot menemukan boneka. Mekanikanisme pelontar
beeper adalah sebuah kotak dengan sebuah plat alumunium sebagai
penutup, plat penutup ini akan digerakkan oleh sebuah motor servo.
Ketika motor servo berputar maka plat akan bergerak keatas sehingga
kotak beeper membuka. Ketika beeper keluar dari kotak maka limit
swicth akan terbuka dan akan mengaktifkan beeper sehingga
mengeluarkan bunyi sebagai tanda bahwa bayi telah ditemukan.
                    Gambar 3.36 Pelontar beeper

   Tabung dan Pompa air
   Pompa air yang digunakan merupakan pompa air wiper mobil,
pompa air ini memiliki ukuran fisik kecil dengan diameter dua inchi dan
mempunyai tekan yang cukup tingggi sehingga cocok digunakan untuk
memompa air pada robot. Pompa air ini terdiri dari sebuah motor DC
12Volt dengan arus satu ampere.




                Gambar 3.37 Tabung dan Pompa Air


    Spray Nozle
    Spray Nozle adalah bagian dari sistem pemadam api yang
digunakan untuk mengatur bentuk pancaran air mualai dari bentuk
memancar sampi berbentuk kabut. Pengatuaran bentuk panacaran air
sangatlah mudah cukup dengan memutar ujung nozle serah jarum jam
untuk mendapatkan bentuk berkabut dan karah sebaliknya untuk
mentapatkan bentuk memancar.




                    Gambar 3.38 Spray Nozle

   Roda
  Roda dirancang dengan menggunakan belt seperti pada tank, seperti
  tampak pada gambar 3.39. Desain seperti ini dimaksudkan supaya
  memudahkan robot untuk bergerak naik dan turun tangga dan saat
  melalui rintangan seperti uneven floor yang berupa gundukan di
  jalan.




                Gambar 3.39 Bentuk roda dengan belt
  Bentuk roda seperti ini tidak memerlukan roda bebas, akan tetapi
  gesekan antara roda dengan lantai lebih besar sehingga akan
  mengganggu saat melakukan manuver belokan. Roda tersebut dibuat
  dengan menggunakan 4 buah gir yang dihubungkan dengan sebuah
  timing belt yang dilapisi dengan karet sebagai ban. Lebar dari belt
   adalah ±2.8 cm. Lebar dari belt akan mempengaruhi pergerakan dari
   robot. Semakin lebar belt, maka manuver atau pergerakan akan
   semakin sulit karena luas bidang yang bergesekan dengan lantai akan
   semakin besar.

3.5 Perancangan dan pembuatan Algoritma
           Algoritma yang diterapkan pada robot mech robo
   mengunakan metode maping, dimana semua gerak robot telah
   ditentukan berdasarkan mapping tersebut. Program maping tersebut
   dibuat berdasarkan benrtuk arena pertandingan KRCI 2007, dimana
   pada peraturan pertandingan KRCI 2007 untuk lantai satu terdapat
   tiga trial sehingga terdapat tiga maping yaitu maping trial satu,
   maping trial dua dan maping trial tiga. Sedangkan pada lantai dua
   terdapat tiga undian, namun bentuk ruangan pada undian dua dan
   undian tiga hampir sama maka pada lantai dua hanya dibuat dua
   maping yaitu maping undian satu dan maping undian dua-tiga. Untuk
   lebih jelasnya gambar 3.40 sampai 3.43, menunjukkan benttuk
   lapangan pertandingan disetai pisisi lilin dan boneka serta lingkaran
   warna biru dengan huruf M menyatakan posisi robot master
   sedangkan lingkaran orange dengan huruf S menyatakan posisi robot
   slave.
          Sesuai peraturan KRCI bahwa kedua robot harus distart scara
   bersamaan, maka sebagai strategi dipilih robot master berkerja
   terleibih dahulu sedangkan robot slave akan diaktifkan oleh robot
   master. Agar robot master dapat mengetahui secara otomatis saat
   start berada pada trial berapa, maka pada robot master terdapat
   sebuah algoritma khusus untuk mengenali posisi start. Algoritma
   pengenalan posisi start inilah yang akan menghubungkan ke maping
   trial satu, trial dua atau trial tiga. Kesalahan dalam mengenali posisi
   start dapat berakibat fatal pada gerak robot, diantaranya dapat
   menyebabkan salah bergerak dan terjadi tabrakan antara robot master
   dengan robot slave.
Gambar 3.40 Home dan Posisi Star Robot Pada Trial 1




Gambar 3.41 Home dan Posisi Star Robot Pada Trial 2




Gambar 3.42 Home dan Posisi Star Robot Pada Trial
      Gambar 3.43 Denah Lapangan Pertandingan Lantai 2

      Algoritma kerja robot master dapat diterangkan seperti pada
flow chart gambar 3.44 dan 3.45. Stelah power supply on maka maka
robot akan mengaktifkan RF, dengan aktifnya RF ini dapat
digunakan untuk mengecek hubungan atau komunikasi atara robot
master dengan robot slave. Jika komunikasi tidak error maka robot
sudah siap untuk distart.
      Jika komunikasi error maka power suply harus dimatikan dan
dinyalakan kembai sapai tidak error. Setalah RF aktif maka robot
menunggu samapai ada sound aktifasi sebagai tanda start. Proses
selanjutnya adalah mengenali posisi start, pada proses ini merupakan
proses paling penting, jika terjadi keslahan dalam mengenali posis
start maka gerak robot akan salah seterusnya. Pada proses mengenali
posisi start ini akan menghasilkan tiga kemungkinan yaitu trial 1,
trial dua dan trial tiga. Jika pada pengenalan poisis start
menghasilakan trial 1 maka robot menuju tangga berdasarkan
maping trial 1. Jika robot mengnali sebagai trial 2 maka robot akan
bergerak menuju tangga dengan maping trial 2, begitu pula pada trial
3. Kemudian robot akan bergerak naik tangga samapi keluar dari
tangga pada lantai 2.
Gambar 3.44 Flowchart Robot Master
         Gambar 3.45 Flowchart Robot Master (Lanjutan)
 Setelah robot keluar dari tangga pada lantai 2, maka robot akan
mengecek apakah bentuk lapangan lantai dua merupakan undian 1,
jika ya maka robot akan bergerak mencari dan memadamkan api lilin
dan mencari dan menandai adanya boneka berdasrkan maping
undian 1. Jika bukan undian 1 maka robot menyelesaikan tugasnya
berdasarkan maping undian 2-3. Pada undian 2-3 memiliki
kemiripan bentuk ruangan sehingga dapat digabungkan dengan
mudah antara maping undian 2 dan undian 3. Selanjutnya apabila
   robot telah melaksanakan tugas pada lantai dua, maka robot akan
   kembali turun tangga menuju lantai 1. Setelah robot berada pada
   lantai 1, robot akan berhenti untuk mengecek apakah robot slave
   telah berhasil mematikan lilin, jika telah berhsil mematikan lilin
   maka robot master akan bergerak kembali menuju home. Jika robot
   slave gagal dalam mematikan lilin maka robot master akan bergerak
   untuk mematikan lilin pada lantai 1 sesuai dengan maping trial yang
   dikenanli pada saat pengenalan posisi home. Setelah robot berhasil
   mematikan lilin maka robot akan kembali menuju home.

3.5.1 Rule maju
     Rule maju mengikuti dinding kanan ( right following )
    Rule maju mengikuti dinding kanan digunakan ketika robot
    bergerak maju dengan mengikuti diding kanan. Robot akan berusaha
    menjaga jarak dengan dinding kanan. Ketika jauh dari dinding kanan
    maka robot akan mendekat dan sebaliknya ketika jarak terlalu dekat
    maka robot akan menjauh sampai jarak yang dikehendaki maka
    robot bergerak maju. Karena hanya bagian kanan saja maka sensor
    yang digunakan hanya sensor yang berada pada bagian kanan yaitu
    US4 dan US5 serta US2 digunakan untuk mengetahui jarak robot
    dengan halangan yang berada didepan.

    Rule maju mengikuti dinding kiri ( left following )
   Rule maju mengikuti dinding kiri digunakan ketika robot bergerak
   maju dengan mengikuti diding kiri. Robot akan berusaha menjaga
   jarak dengan didinding kiri. Ketika jauh dari dinding kiri maka robot
   akan mendekat dan sebaliknya ketika jarak terlalu dekat maka robot
   akan menjauh sampai jarak yang dikehendaki maka robot bergerak
   maju. Karena hanya bagian kiri saja maka sensor yang digunakan
   hanya sensor yang berada pada bagian kiri yaitu US0 dan US1, serta
   sensor US2 digunakan untuk mengetahui jarak robot dengan
   halangan yang berada didepan.

3.5.2 Pengenalan Posisi Start Robot Master
           Posisi start yang berubah harus dapat diketahui oleh robot
    supaya dapat bergerak menuju ruangan-ruangan yang ada dengan
    benar. Pada aturan KRCI 2007 home atau posisi start berpindah-
    pindah sesuai uruatan trial dan penempatan robot acak, untuk lebih
    jelasnya gambar 3.40 sampai 3.42, lingkaran warna biru dengan
    huruf M menyatakan posisi robot master sedangkan lingkaran
    orange dengan huruf S menyatakan posisi robot slave.
     Sensor-sensor yang digunakan untuk mengenali home atau posisi
start ini adalah sensor kompas dan sensor ultrasonik. Sensor kompas
berfungsi untuk mengatur arah hadap robot, sedangkan sensor ultrasonic
digunakan untuk mengetahui jarak robot terhadap dinding sekitar.
Sesuai dengan gambar posisi home, maka pada tiap-tiap trial terdapat
dua kemungkinan posisi, jadi jumlah total kemungkinan posisi start
robot adalah 6 poisi. Langkah pertama untuk mengenali posis start
adalah menentukan arah atau titik referensi lapangan yang dianggap
sebagai arah tertentu, maisalnya disepakati bahwa arah utara berada
pada tangga. Arah utara pada tangga ini sifatnya fiktif bukan arah mata
angin sebernarnya, sehingga apabila posisi lapangan di putar atau
dipindah arah utara lapangan tetap berada pada tangga walaupun posis
rah mata angin yang sebenarnya telah berubah.
      Pada 6 posisi start robot terdapat tiga posis yang hampir sama yaitu
pada saat robot master berada padsa posisi bagian dalam seperti ada
gambar 3.42, pada posisi ini jarak sensor kanan, kiri dan depan sama
dekat. Jika robot master berada pada posisi ini maka robot master akan
mengirimkan informasi ke robot slave untuk bergerak terlebih dulu dan
mendetektsi sendiri posisinya pada trial. Sensor ultarasonik pada robot
master harus dimatikan terlehih agar tiadk terjadi intefrensi antara sensor
pada robot master dengan robot slave, jika terjadi interfrensi pada sensor
ultrasonik maka data jarak terukur dengan benar sehingga robot akan
salah dalam mengenali kondisi lingkungan sehingga terjadi keslahan
pada pendeteksian posisi start, selanjutnya robot master akan berhenti
pada home mengunggu samapai robot slave masuk ruangan atau waktu
tunggu habis, setelah itu robot akan bergerak sebagi mana mestinya.




            (a)                     (b)                        (c)
     Gambar 3.46 Posisi Star Robot Master Berada pada Bagian Dalam
                        (a) Trial 1. (b)Trial 2. (c)Trial 3
     Pada saat posisi robot robot master berada pada posisi luar atau
depan seperti pada gambar 3.47, maka robot master akan bergerak maju
selama jarak robot terhadap dinding depan jauh dan jarak dinding kiri
dekat. Setelah jarak ini terpenuhi maka robot akan berhenti sejenak
untuk melakukan pembacaan sensor ultrasonik. Apabila jarak robot
terhadap dinding kanan jauh dan terhadap depan dekat maka robot akan
mengartikan bah posis start berada pada trial 1. Apadbila jarak robot
terhadap dinding kiri jauh dan depan jauh maka robot akan mengartikan
bahwa ia berada pada trial 2. Apabila jarak robot terhadap dinding kiri
jauh, terhadap dinding depan dekat dan terhadap dinding kanan jauh
maka robot akan mengartikan bahwa posisi start berada pada trial 3.
Setelah robot mengenali posisi start robot akan langsung mengirimkan
informasi posisi trial ini ke robot slave. Setelah robot slave menerima
informasi posisi trial maka robot slave akan segera merespon informasi
tuk segera melakukan tugas berdasarkan maping sesuai trial yang di
terima.




              (a)               (b)                     (c)
     Gambar 3.47 Posisi Star Robot Master Berada pada Bagian Luar
                   (a) Trial 1. (b)Trial 2. (c)Trial 3

     Flowcahrt dari pengenalan posisi start pada robot master seperti
pada gambar 3.48. Algoritma pengenalan posisi start pada robot master
ini juga dapat bekerja untuk single robot, pada saat terjadi error pada
robot master maka haruslah melakukan retray, retray boleh dilakukan
untuk satu robot atau dua robot. Pada saat retary satu robot, maka posisi
robot master haruslah pada posisi home utama dan harus dapat distart
sendirian tanpa robot slave maka algoritma ini juga harus bisa bekerja
untuk mengenali posisi start tanpa ada robot slave.
      Gambar 3.48 Flowcahrt Pengenalan Posisi Start Pada Robot
                             Master

3.5.3 Pencarian Ruangan
     Berdasarkan posisi start, robot bergerak menyusuri koridor menuju
ruangan-ruangan yang telah dipetakan. Sesuai dengan posisi home,
urutan ruangan yang akan dimasuki robot akan berbeda-beda.
     Selama robot bergerak menjelajahi koridor-koridor menuju ruangan
demi ruangan menggunakan sensor ultrasonik, rotary encoder dan
kompas. Sensor ultrasonik digunakan untuk bergerak menyusuri dinding
sampai pada suatu posisi-posisi tertentu. Rotary encoder digunakan
untuk menghitung jarak yang telah ditempuh robot. Kemudian sensor
kompas digunakan untuk menyatakan posisi arah hadap robot sampai
pada suatu posisi-posisi tertentu. Selain itu sensor kompas digunakan
untuk menghadapkan robot pada posisi arah hadap tertentu.
     Secara default robot master bekerja pada lantai 2 namun dalam
keadaan tertentu robot master juga harus bekerja pada lantai 1.
Penacarian ruangan pada lantai dua dibedakan menjadi dua maping yaitu
maping undian 1 dan maping undian 2-3. Rute pencarian ruangan pada
pada maisng masing undian seperti ditujukkan pada gambar




          Gambar 3.49 Rute pada Lanati 2 untuk Undian 1.
Gambar 3.50 Rute pada Lanati 2 untuk Undian 2.




Gambar 3.51 Rute pada Lanati 2 untuk Undian 3.




 Gambar 3.52 Rute pada Lanati 1 untuk Trial 1.
           Gambar 3.53 Rute pada Lanati 1 untuk Trial 2.




           Gambar 3.54 Rute pada Lanati 1 untuk Trial 2.



3.5.4 Scanning Lilin
    Secara umum, gambaran blok diagram penggabungan sensor-sensor
    yang digunakan adalah sebagai berikut :
Gambar 3.55 Blok diagram penggabungan sensor untuk pemadaman
                             api

Informasi dari sensor-sensor tersebut diolah untuk mengatur gerakan
robot dalam mendekati lilin. Data-data sensor ultrasonik dan thermal
sensor diambil dari prosesor yang berbeda dengan menggunakan
komunikasi serial dengan interrupt. Jadi prosesor utama akan terus
menerima data ultrasonik dan termal dengan fasilitas interrupt
sehingga tidak megganggu program utama. Untuk sensor kompas,
data sudah siap pada port tertentu (dalam hal ini portC) dalam bentuk
parallel 8 bit data. Demikian juga dengan data-data sensor UVTron
dan rotary encoder ada pada port-port tertentu yang terhubung.
            Gambar 3.56 Flowchart Pemadaman Lilin

Setelah proses memasuki ruangan dan scanning lilin, dan pada
ruangan tersebut terdapat lilin, maka robot akan bergerak mendekati
lilin dengan memperhatikan kondisi lingkungan sekitar. Pada proses
ini sensor yang digunakan antara lain sensor UVTron, sensor
Ultrasonik, dan Sensor thermal. UVTron digunakan untuk
   mengetahui ada tidaknya           lilin. Sedangkan sensor ultrasonik
   digunakan untuk panduan bergerak supaya tidak menabrak atau
   menggores dinding di depan ataupun disampingnya serta tidak
   menabrak lilin. Sensor thermal digunakan untuk meluruskan robot
   terhadap titik api lilin. Bila sensor ultrasonik depan talah mendeteksi
   jarak kurang dari 20 cm maka robot akan berhenti dan mamadamkan
   api. Sedangkan sensor kompas digunakan untuk mengetahui arah
   mata angin gerakan robot selama mendekati lilin sebagai acuan
   untuk keluar dari ruangan. Gambaran flowchart proses pemadaman
   api adalah seperti tampak pada gambar 3.50.

3.5.5 Pendeteksian Boneka
     Pencarian boneka dilakukan di lantai 2, dimana ada 2 buah ruangan.
Satu ruangan berisi 1 lilin, sedangkan ruangan yang lain berisi boneka.
Saat robot masuk ke dalam salah satu ruangan, robot akan mendeteksi
apakah ada lilin dalam ruangan tersebut atau tidak. Jika ada lilin maka
robot akan memadamkan lilin tersebut dan keluar dari ruangan.




  Gambar 3.57 Blok diagram penggabungan sensor untuk pencarian
                                boneka
    Sedangkan bila tidak ada lilin, robot akan berputar melakukan
scaning mencari sumber panas. Saat sumber panas ditemukan, yang
berarti memiliki suhu di atas nilai rata-rata suhu ruangan, robot akan
maju mendekati titik panas sampai sensor ultrasonic mendeteksi jarak
depan kuarng dari 20 cm setlah itu robot akan melakukan gerakan untuk
mengeluarkan beeper. Setelah beeper dikeluarkan robot akan keluar dari
ruangan. Jadi selama proses pencarian boneka ini, yang digunakan
adalah sensor ultrasonik, kompas, dan thermal array sensor. Gambaran
blok diagram penggabungan sensor pada proses ini tampak pada gambar
3.58 dan flowchart dari pendeteksian boneka tampak pada gambar 3.57.




            Gambar 3.58 Flowchart pendeteksian boneka
3.6 Perancangan dan pembuatan software
3.6.1 AVR ATmega 162
     AVR ATmega 162 sebagai kontroller utama dalam
pemrogramannya mengunakan bahasa C. Tahap awal dalam pembuatan
software adalah inisialisasi dari mikrokontrolller. Seperti pin yang
digunakan untuk input atau output. Mode-mode interupt seperti serial,
timer/counter. Dengan bantuan software CodeVisionAVR C Compiler
dan dengan fasilitas CodeWizardAVR maka memudahkan penulis
dalam pembuatan program terutama bagian inisialisasinya.

     Pemilihan chip
     Chip atau jenis IC yang digunakan adalah ATmega 162 dengan
frekuensi clock atau crystal yang digunkan adalah 11.05920 Mhz.
Setalah membuka program code vision AVR pilih tool dan selanjutnya
pilih code wizard atau mengunakan shortcut shift+F2.




               Gambar 3.59 inisialisasi chip dan clock
   Hal yang sama juga dilakukan saat menggunakan mikrokontroler
ATmega 8. Pada pilihan chip dipilih pada ATmega 8 dengan frekeuensi
sama sebesar 11.0592 MHz.

    Inisialisasi serial
    Cara inisialisai serial USART0 dan USART1 dengan mengunakan
program codevision AVR adalah sama. Serial yang digunakan
mengunakan interupt serial dan baudrate 9600 untuk mode tersebut
tinggal memilih seperti pada gambar dibawah ini. Pengguanaan
codevision AVR Wizard dalam pembuatan source code sngst membsntu
karena metode pada interrupt serial berupa framing data atau paket data
ssehingga dengan mudah untuk membuat protocol sesuai yang di
butuhkan. Penambahan indetifikasi header atau tail cukup ditambahakan
pada bagian interup sehingga data yang diperlukan dapat dikenali
memlalui array atau urutan rx_buffer. Panjang rx_buffer dapat diatur
sesui keinginan atau desain yang kita buat.
          Gambar 3.60 Inisialisasi dan vektor interupt serial

    Inisialisasi port I/O
    Pada inisialisasi post I/O terdapat 2 bagian yang inisialisasi yaitu
port direction dan pullup/output value. Port direction adalah port
difungsikan sebagai input atau output, Pullup/output value adalah
kondisi normal pada pin port ada 3 kondisi yaitu 0,1 atau high impedans.
Untuk mode tersebut tinggal memilih seperti pada gambar dibawah ini.




                     Gambar 3.61 Inisialisasi port I/0

     Maka pada tampilan program akan terlihat register yang yang perlu
diisi untuk inisialisasi I/O. serperti pada gambar dibawah ini.
         Gambar 3.62 Tampilan program inisialisasi port I/0

     Inisialisasi timer 0
     Timer 0 digunakan sebagai counter untuk mendeteksi putaran roda
kanan. Karana timer 1 digunakan sebagai counter maka clock source
dipilih rising Edge. Timer 1 juga sebagai interupt karena timer1 adalah
counter 8 bit. Mode yang dipilih normal top=FFh jadi nilai maksimal
dari counter sama dengan FFh.




                   Gambar 3.63 Inisialisasi Timer0
     Inisialisasi timer 1
     Timer 1 digunakan sebagai counter untuk mendeteksi putaran roda
kiri. Karana timer 1 digunakan sebagai counter maka clock source
dipilih rising Edge. Mode yang dipilih normal top=00FFh jadi nilai
maksimal dari counter sama dengan FFFFh agar sama dengan timer0
yang 8 bit maka nilai awal yang diberikan sama dengan FFF0h.




                  Gambar 3.64 Inisialisasi Timer1




                Gambar 3.65 Vektor interupt Timer1

    Inisialisasi timer 2
    Timer 2 digunakan sebagai timer untuk time base pengiriman data
ke mikrokontroler slave. Karana timer 2 digunakan sebagai timer maka
clock source dipilih System clock, Clock value: 10,800 kHz
          Gambar 3.66 Inisialisasi dan Vektor interupt Timer2
      Dengan menggunakan metode time base untuk pengiriman data ke
mikrokontroler slave akan mempermudah dalam pembuatan main
program dan lebih mudah dalam trouble shoting. Timer 2 mengirimkan
data ke mikrokontroler slave secara serial, baik ke serial 0 maupun ke
serial 1. Pengiriman data akan dilakukan terus menerus setiap 20 mili
detik. Proses update data ini tidak diperlukan waktu yang sangat cepat
karena gerakan mekanik robot lebih lambat dan data yang dikirim
bukanlah data yang memerlukan respon cepat

    Inisialisasi timer 3
    Timer 3 digunakan sebagai timer untuk pembangkit PWM. Karana
timer 3 digunakan sebagai timer maka clock source dipilih System clock.
                      Gambar 3.67 Inisialisasi Timer3

     Timer 3 ini digunakan sebagai pembangkit PWM untuk motor
penggerak utama. Timer value diisi dengan nilai 0h hal ini agar sinyal
PWM mempunyai frekuensi seperti yang dikehendaki. Register TCCR0
berfungsi untuk memilih mode dari clock sourse dan clock value. PWM
yang digunakan adalah jenis fast PWM dengan clock 172.800 KHz
output non-invert. Frekwensi PWM yang dihasilkan dapat dihitung
sesuai dengan persamaan 3.13
                                   f
                           f PWM = CLOCK ....................................(3.13)
                                  256 × x

                                    11059200Hz
                          f PWM =              ≈ 675Hz
                                      256 * 64

     Inisialisasi enable interupt
    Untuk mengaktifkan interupt timer ada satu register yang harus
    diperhatikan bila register ini tidak diisi maka interrupt timer tidak
    aktif meskipun inisialisisi timer telah dilakukan.



                Gambar 3.68 Inisialisai enable interupt Timer
                           BAB IV
                  PENGUJIAN DAN ANALISA

     Dalam Bab ini akan dibahas tentang pengujian berdasarkan
perencanaan dari sistem yang dibuat. Program pengujian disimulasikan
di suatu sistem yang sesuai. Pengujian ini dilaksanakan untuk
mengetahui kehandalan dari sistem dan untuk mengetahui apakah sudah
sesuai dengan perencanaan atau belum. Pengujian pertama-tama
dilakukan secara terpisah, dan kemudian ke dalam dilakukan ke dalam
sistem yang telah terintegrasi.
Pengujian yang dilakukan pada bab ini antara lain:
     1. Perangkat masukan
         • Ultrasonic Sensor (SRF 04)
         • Electric Compass (CMPS 03)
         • Thermal Array Sensor (TPA 81)
         • Flame detector (Hamamatsu UVtron)
         • Sound activation (Tone decoder LM567)
         • Serial Radio Frequency (XbeePro 2.4GHz)
     2. Perangkat keluaran
         • Motor DC Brussless (Vexta Oriental Motor GFH230K-10)
         • Motor pompa air / washer pump (DC 12 Volt, 1A)
         • Motor servo pelontar beeper (Standart Servo)
     3. Startegi dan algoritma
         • Start detection
         • Navigasi jelajah lapangan dan pencarian api
         • Pemadaman api
         • Pencarian boneka
     4. Pengujian dilapangan

4.1 Pengujian Perangkat masukan
4.1.1 Sensor Ultrasonik
Tujuan :
  - Untuk mengetahui data jarak objek tehadap sensor dan linearitas
     data.

Peralatan :
    1. Modul sensor ultrasonic SRF-04
    2. Minimum sistem mikrokontroller ATMega 8
    3. Minimum sistem mikrokontroler ATMega162
    4.   LCD 4 * 20 Character
    5.   Seperangkat downloader      Atmel ISP dan program editor
         CodeVisionAVR.

Rangkaian :




      Gambar 4.1 Diagram blok dari rangkaian sensor ultrasonic

Persiapan :
    1. Memasang rangkaian seperti yang ditunjukkan pada gambar 4.1
    2. Mengetik program pengujian pada CodeVisionAVR dalam
       bahasa C untuk program pada ATMega 8 dan ATMega162.
    3. Mengompile program pada CodeVisionAVR.
    4. Mendownload program dengan ISP Programmer melalui
       CodeVisionAVR.
    5. Menjalankan program uji.
    6. Mengamati data jarak yang dihasilkan sensor.
    7. Kalibrasi data tersebut dengan jarak sebenarnya.

Program pengujian
Program pengujian ultrasonic terdapat pada lampiran.

Hasil dan analisa
     Pada LCD akan tampil data jarak yang dihasilkan sensor. Semakin
jauh objek maka data yang dihasikan semakin besar. Tabel dibawah
adalah data sensor ultrasonik untuk jarak dari 0-20 cm. Jika sensor yang
digunakan lebih dari satu maka perlu diperhatikan tentang bagaimana
cara scaning hal ini karena gelombang suara yang dipancarkan dapat
mempengaruhi sensor yang lain sehingga mengakibatkan data sensor
tidak akurat. Model scaning yang digunakan secara bergantian. Tetapi
hal ini dapat memperlambat proses scaning. Tetapi dalam kasus ini
waktu yang dibutuhkan sudah memenuhi.
                Tabel 4.1 Data jarak sensor ultrasonik
                  Jarak dengan       Data ultrasonik
                   benda (cm)
                         0                255
                         1                  5
                         2                  7
                         3                  9
                         4                 11
                         5                 13
                         6                 17
                         7                 19
                         8                 21
                         9                 23
                        10                 25
                        11                 27
                        12                 30
                        13                 33
                        14                 36
                        15                 38
                        16                 40
                        17                 43
                        18                 45
                        19                 48
                        20                 51

     Bila data pada tabel 4.1 dibandingkan dengan datasheet dari sensor,
maka semestinya pada jarakk kurang dari 3 cm tidak dapat terdeteksi,
atau tidak ada data yang dihasilkan (255, jarak maksimal). Tetapi pada
pengujian ini, terdapat data pada jarak 1 dan 2 cm. Hal ini dapat terjadi
dikarenakan oleh adanya pantulan dari gelombang ultrasonik oleh
permukaan obyek. Obyek yang digunakan berupa bidang datar, sehingga
pancaran ultrasonik dapat terpantulkan tidak lurus terhadap pemancar
dan terjadi pantulan, sehingga receiver menerima sinyal yang
seharusnya tidak ada. Dari data yang diperoleh pada tabel 4.1, dapat
dibuat grafik pada gambar 4.2 antara data ultrasonik dengan jarak
ultrasonik dengan obyek sebagai berikut.
                 60

                 50

                 40
       data US
                 30

                 20

                 10

                 0
                      1   2   3   4   5   6   7   8   9   10 11 12 13 14 15 16 17 18 19 20
                                                      jarak (cm )


    Gambar 4.2 Grafik data ultrasonik terhadap jarak dengan benda
     Dari grafik diatas dapat diamati linearitas data ultrasonik. Grafik
yang dihasilkan tidak benar-benar lurus. Hal ini dapat diakibatkan oleh
pengaruh lingkungan sekitar, dimana terjadi pemantulan gelombang
ultrasonik, dan jarak benda dengan ultrasonik yang tidak benar-benar
akurat. Akan tetapi, secara umum data yang dihasilkan adalah linier,
dimana perubahan datanya sebanding dengan perubahan jarak benda.

4.1.2 Kompas elektrik
Tujuan :
  - Untuk mengetahui data kompas dari koneksi I2C.

Peralatan :
    1. Modul sensor kompas elektrik
    2. Minimum system mikrokontroller ATMega162
    3. LCD 4 * 20 Character
    4. DC power supply + 5 volt
    5. Seperangkat downloader      Atmel ISP dan program editor
       CodeVisionAVR

Rangkaian




                  Gambar 4.3 Diagram blok dari rangkaian kompas

Persiapan :
    1. Memasang rangkaian seperti yang ditunjukkan pada gambar 4.3
    2. Mengetik program pengujian pada CodeVisionAVR dalam
       bahasa C untuk program pada ATMega162.
    3. Mengompile program pada CodeVisionAVR
    4. Mendownload program dengan ISP Programmer melalui
       CodeVisionAVR
    5. Menjalankan program.
    6. Memutar kompas pada empat arah mata angin
    7. Mengamati dan mencatat data yang ditampilkan pada LCD
    8. Mengkalibrasi kompas sesuai dengan prosedur pada datasheet
    9. Mengambil lagi data kompas untuk keempat arah mata angin

Program Pengujian :
Program pengujian kompas terdapat pada lampiran.

Hasil dan Analisa :
    Data yang dihasilkan dari output dari kompas yaitu 0-255, seperti
tampak pada tabel 4.2 dibawah ini:

                    Tabel 4.2 Data posisi kompas
                    Data kompas (des)     Posisi
                           201            Utara
                            6             Timur
                           64            Selatan
                           141            Barat

     Dari data tabel 4.2 diatas, dapat dianalisa linearitas data terhadap
sudut arah mata angin. Selisih data antara posisi yang saling berurutan
antara lain adalah sebagai berikut.
                   Utara – timur    : 60
                   Timur – selatan : 58
                   Selatan – barat : 77
                   Barat – utara    : 60
     Tampak bahwa data tidak linier, hal ini dapat disebabkan oleh
adanya benda-benda yang memiliki medan magnet atau benda-benda
tertentu yang mempengaruhi kompas pada lingkungan sekitar. Dengan
kata lain noise dari luar mengganggu integritas data sensor kompas,
sehingga menjadi tidak linier. Untuk meredam noise ini dapat dilakukan
dengan cara menempatkan kompas pada posisi yang jauh dari benda-
benda yang menghasilkan noise seperti motor yang menghasilkan
medan magnet. Untuk mendapat linieritas data yang lebih baik dapat
dilakukan kalibrasi pada kompas, dimana prosedur kalibrasi dapat
dilihat pada datasheet spesifikasi sensor kompas. Setelah dilakukan
kalibrasi, diperoleh data pada tabel 4.3 sebagai berikut.

            Tabel 4.3 Data posisi kompas setelah kalibrasi
                   Data kompas (des)      Posisi
                          191             Utara
                           0             Timur
                          63             Selatan
                          127             Barat

     Resolusi dari modul kompas ini adalah 360/255 = 1.40. Jadi
pergeseran 1 bit sama dengan 1,40. Nilai data 0-255 dikonversikan
kedalam posisi karena ada 4 posisi sudut yang diharapkan jadi yang
diambil hanya 4 posisi dan data yang dihasilkan cukup linier. Karena
kompas terpengaruh terhadap medan magnet maka dalam pemasangan
kompas harus dijauhkan dari benda yang yang mengandung medan
magnet seperti motor. Lapangan lomba tidak selalu menghadap utara
sehingga perlu dikalibrasi terlebih dahulu. Peletakan kompas sebaiknya
terletak pada pusat dari badan robot agar sudut yang dihasilkan seperti
yang diharapkan.

4.1.3 Flame detektor
 Tujuan :
     - Untuk sejauh mana sensor dapat mendeteksi lilin

Peralatan
    1. Modul sensor Hamamatsu Uvtron
    2. Rangkaian led indikator

Rangkaian




             Gambar 4.4 Rangkaian modul flame detektor

Persiapan
      1. Memasang jumper dan capasitor pada tempat yang ditentukan
      2. Menguji sensitifitas dari sensor
     Flame detektor terletak pada bagian bawah robot dan tidak diberi
tutup karena sensor ini berfungsi untuk mengetahui ada tidaknya lilin di
ruangan tanpa tahu posisi lilin. Peletakan sensor hendaknya pada tempat
yang terbuka dan dipoisis depan hal ini dapat mempercepat proses
deteksi karena cukup bagian depan robot saja yang masuk ruangan tetapi
sudah dapat mendeteksi seluruh ruangan. Pengujian dilakukan dengan
radius maksimal 3 meter hal ini karena jarak terjauh dari ruangan tidak
lebih dari 3 meter.




      Gambar 4.5 Pengujian posisi lilin terhadap flame detektor

     Pada gambar diatas titik yang berwarna merah adalah posisi lilin
yang dapat terdeteksi oleh sensor dan warna biru adalah posisi lilin yang
tidak dapat terdeteksi sensor. Ada lokasi yang menurut data sheet tidak
terdeteksi tapi pada prakteknya terdeteksi hal ini karena jarak yang
penulis gunakan untuk pengujian hanya 3 meter sedangkan pada data
sheet 5 meter. Posisi jumper yang digunakan mengunkan posisi 3 dan
kapasitor yang digunkan 1 μF.
     Pada gambar diatas titik yang berwarna merah adalah posisi lilin
yang dapat terdeteksi sensor dan warna hijau adalah posisi lilin yang
tidak terdeteksi sensor. Untuk mengatur sensitifitas dari sensor dapat
diatur dengan mengubah posisi dari jumper. semakin kecil nilai posisi
jumper semakin sensitif tetapi ada juga hal yang perlu diperhatikan yaitu
bila semakin sensitif maka lingkungan sangat mempengaruhi misalnya
cahaya matahari blitz dari kamera hal ini yang dapat menggangu dari
data yang kita harapkan. Untuk memperlebar pulsa maka cukup dengan
memperbesar nilai capasitor tetapi jika nilai kapasitor terlalu besar maka
respon yang dihasilkan juga lambat jadi ketika lilin seharusnya sudah
tidak terdetsksi tapi karena lebar pulsa yang masih lebar maka hasil
output akan masih dianggap ada lilin.
4.1.4 Sensor Thermal Array
Tujuan :
  - Untuk mengetahui data sensor Thermal Array dari koneksi I2C dan
     respon data terhadap posisi lilin

Peralatan :
    1. Modul sensor Thermal Array TPA-81
    2. Minimum system mikrokontroller ATMega162
    3. LCD 4 * 20 Character
    4. DC power supply + 5 volt
    5. Seperangkat downloader     Atmel ISP dan program editor
       CodeVisionAVR

Rangkaian


       Gambar 4.6 Diagram blok dari rangkaian thermal array

Persiapan :
    1. Memasang rangkaian seperti yang ditunjukkan pada gambar 4.6
    2. Mengetik program pengujian pada CodeVisionAVR dalam
       bahasa C untuk program pada ATMega162.
    3. Mengompile program pada CodeVisionAVR
    4. Mendownload program dengan ISP Programmer melalui
       CodeVisionAVR
    5. Menjalankan program.
    6. Meletakkan lilin pada jarak tertentu dari sensor
    7. Mengamati data sensor tiap pixel.
    8. Mengubah jarak lilin terhadap sensor
    9. Mangamati data sensor tiap pixel untuk beberapa posisi lilin

Program Pengujian :
Program pengujian kompas terdapat pada lampiran.

Hasil dan Analisa :
    Pada saat lilin sebagai sumber panas diletakkan tepat didepan
sensor dengan jarak berbeda-beda, hasil pembacaan sensor tiap pixel
adalah sebagai berikut :
              Tabel 4.4 Data sensor Thermal Array per pixel
    Jarak lilin             Data Sensor per pixel (desimal)
       (cm)        1      2     3      4      5       6      7    8
          2      114 167 168 164 161 158 166 169
          3       86    142 171 166 163 160 114                  80
          4       61     76    103 166 163 113              72   63
          5       54     62    82    164 161 126            73   56
          6       45     51    66    164 161 101            57   47
          7       43     44    44     50     161     80     58   41
          8       37     40    41     51     160     72     42   38
         10       35     39    43     82     158     55     42   41
         15       35     37    38     48     158     51     40   40
         20       34     36    36     43     151     50     38   34
         30       33     35    35     40     106     48     36   34
         50       32     35    35     37     87      39     33   31
         70       31     34    34     38     84      38     35   34
        100       31     34    32     32     60      34     31   30
     Dari tabel diatas, tampak bahwa pada jarak 1m lilin masih dapat
terdeteksi. Pada jarak tersebut, suhu yang terukur pada sensor adalah
60ºC. semakin dekat dengan sensor, nilai suhu yang terukur semakin
besar. Seperti pada saat jarak dengan lilin 30 cm, nilai suhu terbesar
yang terukur adalah 106ºC. Pada saat jarak 2 cm dengan lilin, data yang
terukur sangat besar, yaitu 169ºC. Dengan demikian sensor ini dapat
digunakan untuk mendeteksi lilin sampai jarak 1m dengan data yang
valid. Berdasarkan datasheet, sensor ini dapat digunakan untuk
mendeteksi lilin sampai jarak 2m. Semakin dekat lilin maka sensor yang
mendeteksi akan semakin banyak juga. Sensor yang tidak mendeteksi
liin akan menunjukkan suhu yang terukur pada sensor tersebut, yaitu
suhu ruangan dan lingkungan sekitar.

o    Sudut Vertikal
     Berikut ini adalah data hasil pengujian dengan jarak antara lilin
dengan sensor tetap, sedangkan yang diubah adalah posisi apililin
terhadap titik tengah sensor. Pergerakan ke bawah adalah jarak negatif (-
) dan pergerakan ke atas adalah jarak positif (+), sedangkan nilai nol ada
saat lilin tepat berada ditengah lurus dengan sensor. Pengujian ini
dilakukan untuk mengetahui besar sudut ruang lingkup area yang dapat
di deteksi oleh sensor.
           Gambar 4.7 Pengujian sudut vertikal sensor thermal
Jarak lilin dengan sensor = 20 cm
Tinggi lilin              = berubah-uabah
Tinggi sensor dari lantai = 14,5 cm

   Tabel 4.5 Data sensor Thermal Array pengujian sudut Vertiakal
  Posisi lilin           Data Sensor per pixel (desimal)
     (cm)       1     2      3      4      5       6      7   8
      -9       35    35     34     34     33      33     33  34
      -8       34    35     34     34     33      33     35  54
      -7       35    36     35     34     34      35     40  165
      -6       35    35     35     36     33      34     71  165
      -5       34    37     35     34     34      40    162 121
      -4       35    36     36     36     38      54    162  74
      -3       35    36     36     37     43     154     95  40
      -2       35    37     37     42     68     154     51  37
      -1       35    37     38     51     157     57     40  35
       0       35    37     40    126 124         42     38  37
       1       37    41     81    160     51      37     37  38
       2       40    57     164    64     37      36     38  39
       3       50    107 164       46     38      38     35  33
       4       86    163    54     39     37      36     34  32
       5       129 163      41     37     37      35     33  32
       6       175   49     37     37     37      35     34  32
       7       166   41     36     37     37      35     33  32
       8       64    37     35     36     35      33     34  32
       9       37    36     36     35     35      33     32  32
      Pada posisi -9 cm dan 9 cm sensor sudah tidak dapat mendeteksi
lilin. Ini berarti bahwa jangkauan sensor hanya -8 cm dan 8 cm. Dari
data tersebut dapat dihitung besarnya sudut area jangkauan sensor yang
masih bisa dideteksi. Perhitungan sudut dapat dilakukan dengan
menggunakan prinsip segitiga siku-siku. Tinggi segitiga adalah 20 cm,
sedangkan panjang alas dari segitiga adalah 8 cm. Dengan demikian
sudut pada puncak segitiga yang merupakan sudut jangkauan sensor
adalah sebagai berikut.
                              8
                      tan θ =
                              20
                      tan θ = 0.4
                      θ = arc tan 0.4
                      θ = 21 .8°
                      α = 2 × θ = 43,6°




              Gambar 4.8 Sudut area vertical sensor thermal
       Diperoleh sudut sebesar 43,6º, sedangkan pada datasheetnya hanya
41º.

o   Sudut horisontal
    Untuk mengukur sudut jangkauan secara horizontal, dilakukan
pengujian dengan cara pengambilan data untuk jarak lilin dengan sensor
yang tetap, sedangkan tinggi lilin tetap. Jarak lilin dengan sensor adalah
20 cm,dan ketinggian sensor dari lantai adalah 14 cm.
          Gambar 4.9 Pengujian sudut horisontal sensor thermal
     Pengujian sudut horisontal dilakukan dengan menggeser posisi lilin
kekanan atau ke kiri sampai sensor tidak bisa mendeteksi adanya api.
Api yang terdeteksi ditunjukkan dengan nilai sensor yang lebih besar
dari 40ºC. Diperoleh data hasil pengujian sudut vertikal sebagai berikut.
   Tabel 4.6 Data sensor Thermal Array pengujian sudut horisontal
     Tinggi                Data Sensor per pixel (desimal)
   lilin (cm)     1      2       3     4      5       6      7      8
        -2       34     36      37    37     37      36     35     35
       -1.5      34     36      37    48     51      37     37     36
        -1       35     35      36    48     74      39     36     36
       -0.5      35     36      39    95     46      37     35     35
        0        34     37      38    50     156     72     40     37
       0.5       35     37      49   159     84      46     37     37
        1        35     37      41    53     156     51     37     37
       1.5       34     36      37    39     75      38     35     36
        2        34     36      35    36     37      36     34     36

     Dari data diatas, tampak bahwa poisisi lilin sebesar -2 cm dan 2 cm
sudah tidak terdeteksi lagi. Dengan demikian tinggi jangkauan sensor
secara horisontal hanyalah 3 cm pada jarak 20 cm dari sensor.
Perhitungan sudut vertikal adalahsebagai berikut.
                            3
                   tan θ =    = 0.15
                           20
                   θ = arc tan 0.15 = 8.53 °
                   α = 2 × θ = 17,06°
     Diperoleh nilai sudut vertikalnya sebesar 17,06º. Sedangkan pada
datasheet dari sensor, sudut vertikalnya hanyalah 6º. Hal ini mungkin
terjadi karena nyala api besar dan daerah disekitar titik api cukup panas
sehingga derah disekitar titik api masih dianggap panas, sementara titik
api suadah berada diluar jangkauan sensor.




Gambar 4.10 Pengujian sudut vertikal untuk membedakan lilin dengan
                                  boneka
         Posisi sensor memang sudah di temapaetkan sedemikian rupa,
yaitu 14 cm lantai sengga apabila terdeteksi panas pada daerah posistif
berarti ada lilin, jika panas berada pada pixel negatif maka berarti ada
boneka.

4.1.5 Serial Radio Frequncy
Tujuan:
     • Untuk mengetahui kualiatas pengiriman dan penerimaan data
        yang digunakan untuk komunikasi antar robot.

Peralatan
    1. Serial Radio Frequency XbeePro 2.4GHz
    2. Minimum system mikrokontroller ATMega162
    3. LCD 4 * 20 Character
    4. DC power supply + 5 volt
    5. Seperangkat downloader Atmel ISP dan program editor
      CodeVisionAVR

Rangkaian




         Gambar 4.11 Diagram blok dari rangkaian serial RF
Persiapan :
    1. Melakukan setting addreess melalui PC atau mikro kontroller,
        setting yang perlu dilakukan adalah setting address RF itu
        sendiri (self address) dan setting addres RF tujuan (desstination
        address), setting ini hanya diperlukan sekali saja ketika modul
        masih baru dengan setting factory default.
    2. Memasang rangkaian seperti yang ditunjukkan pada gambar
        4.11
    3. Mengetik program pengujian pada CodeVisionAVR dalam
        bahasa C untuk program pada ATMega162.
    4. Mengompile program pada CodeVisionAVR
    5. Mendownload program dengan ISP Programmer melalui
        CodeVisionAVR
    6. Menjalankan program.
    7. Meletakkan modul RF pada jarak tertentu dari modul RF yang
        lain.
    8. Mengamati data yang diterima atau dikrim.
    9. Mengubah jarak modul RF yang satu terhadap modul RF yang
        lain.
    10. Mangamati data untuk beberapa jarak RF yang berbeda.

Hasil dan analisa
     Modul serial RF berfungsi untuk melakukan komunikasi antar
robot, komunikasi ini bertujuan agar robot kedua robot dapat bekerja
sama. Informasi yang diperlukan agar robot dapat bekerja dengan benar
diantaranya dalah informasi trial, posisi home dan keberhasialan dalam
menyelesaikan tugas yang ada. Pengujian RF dibedakan antara
kemampuan mengirim data dankemampuan menerima data. Jarak
penguajian adalah mualai 0.5 meter samapai 6 meter, jarak ini dipilih
karena jarak kerja antara robot master dengan slave berada pada jarak
tersebut.
     Pengiriman data melalui RF Xbee-PRO 2.4GHz ini sangat stabil,
semua data yang dikirim maupun diterma selalu sesuai. Jarak pada
pengukuran ini tiadak mempengaruhi data yang dikirim karena jarak
maksimum sesuai datasheet mampu menjangakau dalam radius 1.6Km
sehingga dengan jarak pengujian antara 0.5 sampai 6 meter datanya
sangat bagus.
      Tabel 4.7 Kemampuan RF mengirim dan menerima data
             Jarak (m) Data yang     Data yang
                        dikirim       diterima
                            0             0
                0.5         1             1
                           10            10
                            0             0
                 1          1             1
                           10            10
                            0             0
                 2          1             1
                           10            10
                            0             0
                 3          1             1
                           10            10
                            0             0
                 4          1             1
                           10            10
                            0             0
                 5          1             1
                           10            10
                            0             0
                 6          1             1
                           10            10


4.1.6 Sound aktifation
Tujuan:
     - Untuk mendeteksi suara yang digunakan untuk mengaktifkan
        robot.
Peralatan
     1. Pemancar
     2. Rangkaian penerima
     3. Led indikator
Rangakaian


                                                      `
        Gambar 4.12 Rangkaian penerima sound aktifation
Hasil dan Analisa
     Dari input berupa suara dengan frekuensi tertentu maka ditangkap
oleh mic dan dikuatkan oleh rangkaian preamplifier dan dari pre amp
diterima oleh bandpass filter yang melolos frekuensi tertentu. Ketika
frekuensi yang diterima sama dengan frekuensi dari bandpass maka led
indikator akan menyala. Jarak yang masih dapat diterima yaitu radius 5
meter karena hanya frekuensi tertentu yang terdeteksi sehingga ketika
ada suara yang mengandung frekuensi tersebut maka penerima akan
aktif .

4.2 Pengujian Perangkat keluaran
4.2.1    Motor DC Brussless (Vexta Oriental Motor GFH230K-10)
Tujuan
     - Menguji respon rangkaian pwm to analog untuk pengaturan
       kecepatan motor.

Peralatan
    1. Rangakaian driver motor dc brussless
    2. Rangkaian pwm to analog
    3. Minimum system mikrikontroller
    4. Motor DC Brussless

Rangkaian



          Gambar 4.13 Rangkaian penguji kecepatan motor

Hasil dan analisa
    Frekuensi dari pwm mempengaruhi respon dari tegangan analog.
Semakin besar frekuensi semakin tidak linier tegangan output yang
dihasilkan tetepi semakin kecil frekuensi semakin lambat respon
tegangan output. Jadi percobaan frekuensi yang cukup memenuhi
keduanyan sekitar 675 Hz. Hal ini karena mengunakan rangkaian low
passfilter sebagai pwm to analoag jadi ketika frekuensi rendah respon
menjadi lambat karena ada delay waktu untuk pengisian capasitor.
Untuk itu sebaiknya digunakan rangkaian Digital Analog
Converter(DAC) tetapi bila mengunakan DAC akan mengunakan
banyak port.
    Hubungan antara PWM dengan kecepatan motor hampir linier
seperti tampak pada tabel 4.8 berikut ini.

        Tabel 4.8 Hubungan PWM terhadap Kecepatan Motor
           Duty Cycle       Kecepatan       Frekwesi
              PWM            Motor           Motor
               (%)           (RPM)            (Hz)
                 0              0               0
                10             54              28
                20             86              59
                30             96              84
                40            128             106
                50            159             130
                60            194             161
                70            224             190
                80            258             211
                90            290             241
               100            315             269




      Gambar 4.14 Grafik Dutycyle PWM Terhadap Kec. Motor
      Pemilihan kecepatan motor ditentukan berdasarkan kejadian yang
diharapkan. Agar motor berhenti maka dutycycle yang dipilih adalah
0%. Pada saat berjalan di bidang datar rata-rata dutycycle yang
digunakan adalah 80%, sedangkan pada saat naik tangga dutycycle yang
digunakan 90%. Pada saat turun tangga agar robot manpu berjalan dan
tidak tergelincir maka diperlukan kecepatan rendah yaitu dengan
dutycycle 60%. Pada saat robot berjalan, PWM dapat berubah-ubah
berdasrkan jarak sensor ultarasonik, namun dutycycle yang telah
ditetapkan diatas merupakan dutycycle sebagai setpoint ketika posisi
robot tepat berda ditengah-tengah antara dinding. Proseses penentuan
PWM pada saat robot berjalan dilakukan dilakukan dengan if then rule
yang data-datanya diperoleh melaui percobaan dilapangan. Gambar
ilustrasi pegaturan PWM untuk mengatur kecepatan motor berdasrkan
jarak sensor ultrasonik seperti pada gambar 4.14 dibawah ini. Err0 atau
Err1 adalah selisih jarak robot terhadap dinding dengan jarak yang
dikehendaki, selisih jarak ini akan diolah oleh if then rule atau lookup
table untuk menentukan steering. Besar dutycycle pwm yang harus di
keluarkan untuk motor kiri adalah setpoint dikurangi steering
sedangakan untuk motor kanan adalah setpoint ditambah steering.




Gambar 4.15 Prinsip Pengaturan Kec.Motor Berdasarkan Data Jarak.


4.2.2   Motor pompa air
Tujuan
     - Menguji respon data mikrokontroler master ke slave

Peralatan
  1. Rangakaian Mikrokontroler master
  2. Rangkaian mikrikontroller slave
  3. Driver motor
  4. Motor DC 12 Volt pompa air

Rangkaian


        Gambar 4.16 Blok rangkaian penguji motor pompa air

Hasil dan analisa
    Motor pomapa air diaktifkan oleh mikrokontroler master tetapi
harus melalui mikrokontroler slave karena port I/O mikrokontroler
master sudah tidak cukup lagi. Data dari master keslave berupa serial
sehingga pada slave harus menerjemahakan data untuk mengaktifkan
I/O yang terhubung ke driver motor. On-Off Motor yang diatur dari
mikrokontroler master selalu berhasil karena proses pengiriman data
pada master menggunakan time base dan penerimaaan data pada slave
menggunakan interupt sehingga tidak ada data yang terlewatkan.

4.2.3    Motor Servo Standart
Tujuan
     - Menguji respon data mikrokontroler master ke slave pada motor
       servo standart
Peralatan
  1. Rangakaian Mikrokontroler master
  2. Rangkaian mikrikontroller slave
  3. Parallax Standart Motor servo 6 volt

Rangkaian



          Gambar 4.17 Blok rangkaian penguji motor servo

Hasil dan analisa
     Motor servo satandart diaktifkan oleh mikrokontroler master tetapi
harus melalui mikrokontroler slave karena port I/O dan PWM
mikrokontroler master sudah tidak cukup lagi. Data dari master ke slave
berupa serial sehingga pada slave harus menerjemahakan data untuk
mengatur duty cycle PWM terhubung ke motor servo. PWM Motor yang
diatur dari mikrokontroler master selalu berhasil karena proses
pengiriman data pada master menggunakan time base dan penerimaaan
data pada slave menggunakan interupt sehingga tidak ada data yang
terlewatkan, adapun lebar pulsa PWM yang kurang tepat karena metode
pembangkitan PWM menggunakan software.

4.3 Pengujian Software
4.3.1 Pengujian rule mengikuti didnding kanan atau dinding kiri
     Pengujian dilakukan dengan menguji rule kanan dan kiri pada
lintasan lurus, belokan 90º, belokan 180º, dan menguji sudut datang
robot terhadap dinding. Pengujian dilakukan dengan melihat performa
dari robot selama melalui lintasan-lintasan tersebut. Tujuan utama dari
kontrol tersebut adalah supaya robot tidak menabrak dinding. Karena
rule kiri dan rule kanan sebenarnya adalah sama maka pengujian hanya
dilakukan pada rule kiri saja.

     Hasil pengujian pada lintasan lurus
             Tabel 4.8 Hasil percobaan pada lintasan lurus
        percobaan 1 2 3 4 5 6 7 8 9 10
           Hasil      1 1 1 1 1 1 1 1 1 1
     Dari hasil pengujian diatas, tampak tidak terjadi error sama sekali,
ini berarti robot dapat bergerak dengan baik tanpa menabrak dinding.
Pada lintasan lurus ini, metode kontrol dapat bekerja dengan baik dan
dapat memenuhi kebutuhan untuk berjalan lurus mengikuti dinding.
Dengan demikian robot memiliki nilai error 0 % dan tingkat kepresisian
100 %.

    Hasil pengujian pada belokan 90º
                Tabel 4.9 Hasil percobaan belokan 900
      Percobaan 1 2 3 4 5 6 7 8 9                             10
          Hasil       1 1 1 0 1 0 1 1 0                       1

     Dari 10 kali percobaan ternyata terjadi error sebanyak 3 kali. Error
dalam hal ini robot menyentuh dinding atau sudut belokannya terlalu
besar, sehingga sangat jauh dari dinding. Hal ini mungkin disebabkan
oleh desain mekanik yang berbentuk tank dengan menggunakan belt.
Desain seperti ini akan menyebabkan luas permukaan gesekan antara
ban dengan lantai manjadi besar, sehingga sulit untuk melakukan
gerakan-gerakan manuver. Desain seperti ini memudahkan untuk
menghasilkan gerakan lurus, tetapi sedikit sulit untuk melakukan
manuver-manuver belokan. Pada saat akan mencapai belokan, bila arah
pergerakan robot cenderung menjauhi dinding maka pada saat mencapai
belokan robot akan belok dengan haluan yang sangat jauh, sehingga saat
akan masuk mendekati dinding kembali robot akan menabrak dinding,
seperti diilustrasikan pada gambar 4.23 (a). Untuk mengatasi hal ini
maka jarak antara dinding dengan robot tidak boleh terlalu jauh dan
osilasi pergerakan saat mendekati dinding juga harus kecil. Selain itu
dapat juga dilakukan dengan mengatur gerakan robot tidak kurvatur,
tetapi siku, dimana saat robot telah lepas dari dinding, robot berhenti
untuk berputar di tempat 90º, kemudian bergerak maju lagi, seperti
diilustrasikan pada gambar 4.23 (b). Dari data di atas, robot memiliki
nilai error 30% dan tingkat tingkat keberhasilannya 70 %.




      (a) Haluan terlalu lebar                   (b) Rotasi 90º
           Gambar 4.18 Pergerakan robot pada belokan 90º
    Hasil pengujian pada sudut datang
              Tabel 4.10 Hasil percobaan sudut datang
               Sudut                 Percobaan
               datang
                 (0)         1     2     3     4      5
                 60          1     1     1     0      1
                 45          1     0     1     1      1
                 30          0     1     1     0      1
                 20          1     0     0     1      0
                 15          0     0     1     0      0
                 10          0     0     0     0      1
                  0          0     0     0     0      0

     Pengujian dengan sudut datang 0º tidak berhasil sama sekali. Hal ini
terjadi karena pengecekan sensor yang dilakukan hanya pada sisi
kanan/kiri saja, sehingga dengan sudut datang 0º, yang berarti posisi
robot tegak lurus menuju dinding akan terjadi error. Sedangkan untuk
sudut dartang 10º, hanya sekali pengujian yang berhasil dari 5 kali
pengujian. Demikian juga dengan sudut datang 15º. Sedangkan untuk
sudut datang 20º, pengujian hanya berhasil 2 kali saja. Hal ini berarti
untuk sudut datang dengan nilai yang kecil terjadi error yang sangat
besar. Terjadinya error yang besar ini dapat disebabkan oleh masih
besarnya osilasi yang terjadi untuk mencapai kestabilan. Untuk sudut
datang sebesar 60º juga masih terjadi error sebanyak 1 kali. Metode
kontrol yang diterapkan masih kurang baik untuk sudut-sudut datang
yang kecil. Kesulitan pengontrolan lebih banyak dipengaruhi oleh desain
mekanik dari robot. Desain dengan bentuk tank menggunakan belt
mempersulit gerakan robot untuk melakukan manuver. Selain itu torsi
dari motor juga kurang besar sehingga untuk mencapai nilai kecepatan
yang diinginkan membutuhkan waktu.

4.3.2 Pengujian Pengenalan posisi start
     Pengujian pengenalan poisis start dilakukan untuk mengetahui
tingkat akurasi dan keberhasilan pendeteksian posisi start yang berbeda-
beda dan untuk mengetahui rute-rute yang dilalui apakah sudah benar.
Pengujian dilakukan dengan meletakkan robot pada posisi home yang
berbeda-beda, yaitu pada trial 1, trial 2 dan trial 3, kemudian robot
dijalankan. Dari hasil pengujian diperoleh data sebagai berikut.




                    (a)         (b)               (c)
           Gambar 4.19 Posisi Start Robot Master Pada Trial 1
                (a) Bagian dalam. (b)Bagian luar. (c)Retry
   Tabel 4.11 Hasil pengujian Pengenalan posisi start pada trial 1
     Percobaan ke 1 2 3 4 5 6 7 8 9 10
     Posisi dalam      1 1 0 1 0 1 1 1 0 1
     Posisi Luar       1 1 1 1 1 1 1 0 1 1
     Posisi retry      1 1 1 1 1 1 1 1 1 1
   Tabel 4.12 Hasil pengujian Pengenalan posisi start pada trial 2
     Percobaan ke 1 2 3 4 5 6 7 8 9 10
     Posisi dalam      1 1 0 1 1 1 1 1 0 1
     Posisi Luar       1 1 1 1 1 1 1 1 1 1
     Posisi retry      1 1 1 1 1 1 1 1 1 1
                (a)                  (b)           (c)
            Gambar 4.20 Posisi Start Robot Master Pada Trial 2
               (a) Bagian dalam. (b)Bagian luar. (c)Retry




                 (a)              (b)               (c)
          Gambar 4.21 Posisi Start Robot Master Pada Trial 3
                (a) Bagian dalam. (b)Bagian luar. (c)Retry
   Tabel 4.13 Hasil pengujian Pengenalan posisi start pada trial 3
     Percobaan ke 1 2 3 4 5 6 7 8 9 10
     Posisi dalam     1 1 1 1 0 0 1 1 1 1
     Posisi Luar      1 1 1 1 1 1 1 1 0 1
     Posisi retry     1 1 1 1 1 1 1 0 1 1

     Pada pengujian trial 1, terdapat 3 kali error untuk posisi robot pada
bagian dalam, 2 kali error pada bagian luar dan tidak terjadi error untuk
posisi retry. Pada saat posisi robot berada pada bagian dalam sering
terjadi error karena data kompas yang kuarang tepat dan terjadi
kesalahan dalam mengenali jarak robot terhadap sisi depan. Kesalahan
mengenali jarak depan ini terjadi karena yang bertindak sebagai dinding
depan adalah robot slave, sedangkan posisi peletakan robot slave
berubah ubah sesuai posisi undian lilin, sehingga sensor ultrasonik tidak
menerima pantulan dai dinding yang rata akibatnya sering terjadi
kesalan. Pada saat posisi robot berada di bagian luar error terjadi 2 kali.
Kesalahan pada posisi posisi luar cenderung diakibatkan dari data
komapas yang kurang tepat sehingga arah hadap robot tidak tepat.
Sadangkan pada saat posisi retry hasil menunjukkan paling stabil karena
hanya satu robot dan dan robot dapat bergerak terlebih dahulu baru
samapai pada titik diamana ia harus mengenali posisi start. Pada
pengujian trial 2 dan trial 3 didapatkan data yang hampir sama dengan
data trial 1, dimana kesalahan palang banyak terjadi pada posisi robot
berada pada bagian dalam dan posisi paling stabil pada posisi retry.
Permasalahan yang menyebabkan terjadi kesalahan pada trial 2 dan 3
adalah sama serti permaslahan pada trial 1.
     Dengan demikian, robot memiliki nilai error sebesar 23.3 % dan
tingkat keberhasilan sebesar 76.7 % untuk pendeteksian posisi start
ketika posisi robot terletak pada bagian dalam. Ketika posisi start robot
berada pada bagian luar rata-rata error dari tiga trial tersebuat adalah
6.6% dan tingkat keberhasilannya 93.4%. Persentase keberhasilan paling
tinggi ketika posisi retry satu robot yaitu 96.7% dengan error 3.3%.
Secara keseluruhan, dari 90 kali percobaan, terjadi error sebanyak 11
kali. Dengan demikian secara keseluruhan, proses pengenalan posisi
start pada robot master memiliki nilai error sebesar 12,11% dan tingat
kepresisian sebesar 87,89 %.

4.3.3 Pengujian Scanning Lilin
     Pengujian dilakukan dengan meletakkan lilin pada suatu posisi
didalam ruangan, dan robot melakukan proses scanning pada tengah-
tengah ruangan, kemudian robot baru akan bergerak mendekati lilin dan
memadamkan.
                Tabel 4.14 Hasil percobaan scanning lilin
                                       Percobaan
   Posisi lilin
                  1    2     3     4    5     6     7   8    9     10
     Tengah
                  √    √     √     √    √     √     √   √    x     √
    ruangan
      Sudut
                  √    √           √    √     √     √   √    √     Ө
    ruangan
   Salah satu
                  √    √     √     √          √     √   √    Ө     √
       sisi
     Keterangan : √ berhasil mendeteksi dan memadamkan
                 x mendeteksi tetapi menabrak dan tidak berhasil
memadamkan
                  Ө mendeteksi dan memadamkan tetapi menyentuh
dinding ruangan
                         tidak mendeteksi posisi lilin.
     Dari hasil pengujian diatas, terdapat 3 macam hasil. Yang pertama
adalah robot berhasil mendeteksi, menemukan dan memadamkan api
lilin. Yang kedua adalah robot berhasil mendeteksi tetapi menabrak dan
tidak berhasil memadamkan. Yang ketiga adalah robot berhasil
mendeteksi dan memadamkan tetapi menyentuh dinding ruangan
Sedangkan yang keempat adalah robot tidak dapat mendeteksi posisi
llilin karena jarak robot terhadap lilin jauh dan temperatur ruangan
terlalu tinggi.
      Saat lilin berada di tengah ruangan, terjadi 1 kali error dimana robot
berhasil mendeteksi posisi lilin dan bergerak mendekati tetapi menabrak
dan tidak berhasil memadamkan. Robot menabrak lilin karena sensor
ultrasonik depan tiadak mendeteksi adanya lilin. Pada saat posisi lilin
berada disudut ruangan atau dekat dengan salah satu sisi ruangan robot
berhasil mematikan tapi menyentuh diding karena peletakan lilin pada
posisi yang terlalu dekat dengan dinding, tetapi pada posisi lilin di sudut
ruangan, error saat robot menabrak lilin tidak terjadi karena pada proses
scanning lilin, robot juga akan mendeteksi sudut ruangan.
      Secara keseluruhan, dari 30 kali percobaan pemadaman lilin, 5 kali
erjadi error. Sehingga dapat dikatakan proses scanning lilin memiliki
nilai error sebesar 16.67 % dan tingkat keberhasilan sebesar 83.33 %.
Secara umum dapat dikatakan proses scanning ini berhasil mancapai
hasil yang diharapkan.

4.3.4 Pengujian Pencarian Boneka
     Pengujian pencarian boneka dilakukan dengan meletakkan boneka
pada satu posisi dalam ruangan dan menjalankan robot untuk
menemukan boneka tersebut. Pendeteksian boneka dilakukan dengan
menggunakan sensor thermal array untuk mendeteksi panas dari lampu.
Setelah boneka ditemukan, robot akan melakukan gerakan tertentu untuk
menjatuhkan beeper di sekitar boneka.

            Tabel 4.15 Hasil percobaan pencarian boneka
      Percobaan 1 2 3 4 5 6 7 8 9 10
         Hasil      √ √ x √ √ √ √ √ x √
         Keterangan: √ berhasil mendeteksi dan menemukan
                    x mendeteksi boneka dan menemukan tetapi
menabrak kursi.
     Pada pengujian ini terdapat 2 macam hasil yang terjadi. Yang
pertama robot berhasil mendeteksi ada boneka dan berhasil menjatuhkan
beeper di sekitar boneka. Yang kedua robot mendeteksi adanya boneka,
tetapi menabrak kursi boneka. Dari data di atas, robot berhasil
melakukan tugas dalam 8 kali pengujian, 2 kali gagal dari 10 kali
percobaan. Kegagalan dalam menandai adanya boneka disebabkan oleh
kemiringn peenmpatan kursi boneka, kemiringan kursi akan sangat ber
pengaruh pada pembacaan jarak oleh sensor ultrasonik. Apabila sudut
sensor ultrasonik tidak tegak lurus dengan bidang pantul maka jarak
yang terbaca sangat jauh akhirnya robot menabrak kursi boneka.
4.4 Pengujian Sistem secara keseluruhan
     Dari hasil pengujian sistem didapatkan data seperti pada tabel 4.16.
Untuk lilin 1 yang berada di lantai 1 robot hampir selalu dapat
menemukan dan memadamkan api, hanya dua kali pengujian dimana
robot tidak dapat memadamkan lilin. Error pada lantai satu diasebabkab
jarak lilin terhadap robot jauh dan temertur ruangan tinggi. Untuk lilin 2
yang berada di lantai 2 terdapat sekali robot tidak dapat memadamkan
api tetapi robot dapat menemukan lilin. Error yang terjadi adalah robot
menabrak lilin. Error yang terjadi untuk proses pemadaman lilin yaitu
sebesar 10%.
                 Tabel 4.16 Pengujian sistem di lapangan
     state Lilin1 Lilin2 Boneka Dinding tanggga start
        1        √       √         √          √         √        √
        2        √       √         √          x         √        √
        3        √       √         √          √         √        x
        4        √       √         √          √         √        √
        5        x       √         √          √         √        √
        6        √       √         x          √         √        √
        7        √       √         √          x         √        √
        8        √       √         √          x         √        √
        9        √       x         √          x         √        √
       10        √       x         √          √         √        √
       11        √       √         √          √         √        √
       12        √       √         √          x         √        √
       13        √       √         √          √         √        x
       14        √       √         √          √         √        √
       15        x       √         √          √         √        √

Ket: √ = berhasil ; x = gagal
    Pada pengujian robot untuk menemukan boneka terdapat 2 kali
robot kegagalan. Kegagalan robot dikarenakan kemiringan sudut kursi
boneka yang terlalu tajam sehingga robot tidak dapat mendeteksi adanya
kursi boneka. Karena hanya 2 kali robot tidak dapat mendeteksi boneka
maka error yang terjadi sebesar 13.33%.
     Pada pengujian tehadap dinding selama percobaan robot sering
menabrak atau menyentuh dinding khususnya saat robot turun dari
tangga. Posisi paling sering terjadi goresan terhadap dinding adalah pada
sat robot turun dari tangga karena pengaruh gravitasi yang menyebabkan
gerakan robot lebih cepat dan putaran roda robot tidak mampu menahan
gaya yang ada. Pada saat robot berada di bidang datar robot menabrak
dinding jadi pada daerah yang terdapat obstacle yang fungsinya untuk
menggangu gerak robot. Meskipun robot menabrak dinding tapi robot
selalu dapat kembali berjalan untuk menyelesaikan tugas sehingga dapat
dikatakan robot selalu berhasil. Robot juga selalu dapat mendeteksi atau
mengenalo posisi start dan kembali lagi menuju home.
     Jadi dengan sistem yang telah diterapkan dirasa sudah cukup
memenuhi target yang diharapkan hanya saja perlu ditingkatkan untuk
kecepatan dan kestabilannya.
( Halaman ini sengaja dikodongkan )
                                BAB V
                               PENUTUP

5.1 KESIMPULAN
          Setelah melakukan perencanaan dan pembuatan sistem
    kemudian dilakukan pengujian dan analisanya, maka dapat diambil
    beberapa kesimpulan tentang sistem kerja dari dari sistem yang
    dibuat
1. Desain mekanik robot dengan menggunakan roda belt seperti tank
     baik digunakan gerakan yang cenderung lurus dan untuk mengatasi
     permasalahan area lantai yang tidak rata seperti adanya gundukan
     dan untuk menaiki tangga.
2. Penggunaan sensor ultarasonik pada dua buah robot dalam satu
     lapangan harus diatur, apabila robot berada pada daerah yang sama
     tanpa penghalang dinding maka salah satu robot harus
     menonaktifkan scanig sensor ultasonik agar tiadak terjadi interfrensi
     data pada pembacaan jarak.
3. Proses penggabungan sensor untuk pendeteksian dan pemadaman
     lilin dapat dikatakan bekerja sesuai yang diharapkan dengan nilai
     error sebesar 16.67 %.
4. Proses penggabungan sensor untuk menemukan boneka dapat
     dikatakan berjalan sesuai hasil yang diharapkan dengan nilai error
     sebesar 20 %.
5. Proses pengenalan posisi start pada robot master memiliki nilai
     error sebesar 12,11%
6. Dalam membuat software pengendali sensor algoritma programnya
     harus dibuat seefisien mungkin, karena sistem sensor harus dapat
     memberikan data dalam kecepatan yang relatif tinggi. Karena tugas
     dalam program tersebut lebih dari satu sehingga model program
     adalah multi tasking sehingga program satu dengan yang lain tidak
     saling mengganggu.

5.2 SARAN-SARAN
      Untuk mendapatkan performa yang lebih baik dari sistem robot ini
 maka dapat digunakan prosesor yang lebih cepat untuk mengolah data.
 Selain itu sistem mekanik untuk mendukung pergerakan dari robot
 dibuat sebaik mungkin sehingga dapat memperhalus gerakan dari robot.
 Kepresisian dari sensor posisi perlu ditingkatkan. Kecepatan dari robot
 perlu ditingkatkan agar waktu yang diperlukan robot dalam
 pertandingan lebih sedikit sehingga nilai dalam pertandingan lebih baik.
     Kecepatan proses scaning ultrasonic perlu ditingkatkan hal ini dapat
membantu mempercepat pergerakan robot. Peletakan kompas elektrik
hendaknya tepat di titik pusat robot sehingga sudut yang diharapkan
tepat. Sensor thermal array dapat digunakan untuk menentukan posisi
lilin dengan lebih baik. Proses pendeteksian jarak batas lilin dengan
robot sebaiknya dibuat dengan metode yang lain, sehingga tidak terjadi
robot menabrak lilin.
     Metode kontrol dari sistem sebaiknya tidak dibuat sekuensial,
karena sangat rentan terhadap gangguan di lapangan pertandingan.
Metode yang dapat dikembangkan dan menghasilkan sistem yang lebih
baik adalah dengan menggunakan metode Behaviour Based.
                      DAFTAR PUSTAKA

[1]   Ari, Kristian, “Fusi Multisensor Untuk Navigasi Dan
      Pendeteksian Obyek Pada Robot Dengan Menggunakan Aturan
      Fuzzy Studi Kasus : Robot Cerdas Genier”, Politeknik
      Elektronika Negeri Surabaya – ITS, Surabaya, 2007.
[2]   Fernando Ardila, “Robot Pemadam Api PENSA mobile”,
      Politeknik Elektronika Negeri Surabaya – ITS, Surabaya, 2006.
[3]   Joseph L, Jones, “Robot Programming a practical Guide to
      Behavior Base Robotics”,New York : McGraw-Hill,2004
[4]   Parker, Lynne E,”Multi-Robot Systems, From Swarms to
      Intelligent Automata Volume III”, Proceedings from the 2005
      International Workshop on Multi-Robot Systems, The University
      of Tennessee, USA, 2005
[5]   Pitowarno, Endra. “Robotika desain, kontrol, dan kecerdasan
      buatan”. Yogyakarta : Andi Offset. 2006.
[6]   R. Clark, A. El-Osery, K. Wedeward, dan S. Bruder, “A
      Navigation and Obstacle Avoidance Algorithm for Mobile Robots
      Operating in Unknown, Maze-Type Environments”,Proc.
      International Test and Evaluation Association Workshop on
      Modeling and Simulation, Las Cruces, NM, December 2004.
[7]   Rule Kontes Robot Cerdas Indonesia           2007,   website:
      http://www.kri.or.id, http://www.dikti.org
          RIWAYAT HIDUP PENULIS

                   Eka Prasetyono lahir di kota Nganjuk 22
                   Nopember 1983. Menyelesaikan Sekolah
                   dasar di SDN Banjaranyar 1 pada tahun
                   1996. Kemudian melanjutkan ke SLTP
                   Negeri 1 Tanjunganom sampai pada
                   tahun 1999. Mengikuti proses belajar di
                   Sekolah Menengah Kejuruan kelompok
                   teknologi industri di SMK Negeri 1
Nganjuk selesai pada tahun 2002. Sebagi seorang lulusan STM
wajar kalau setelah lulus langsung mencari kerja, namun
selama masa menunggu belum dapat pekerjaan mengikuti
pelatihan PLC di PPGT/VEDC Malang dan BLKIP Surabaya
dan akhirnya ditrima kerja menjadi elektrik maintenance di
PT.Multi Artha Graha Glass Industri selama 8 bulan. Harapan
ku bisa kerja sambil kuliah, namun ternyata kuliah cukup
melelahkan belum ditambah lelahnya sebagai seorang buruh
pabrik, akhirnya ku pilih kuliah saja. Aku masuk Politeknik
Elektronika Negeri Surabaya agustus 2003 ditrima di jurusan
teknik elektro industri untuk program diploma 4 sebagi
angkatan pertama. Alhamdulillah walaupun ku berasal dari
lulusan STM, Alloh memberikan kemampuan pada ku
sehingga tidak kalah dengan lulusan SMA. Aku diberi
kesempatan dua tahun menjadi anggota/leader Tim robot dan
PKMT, pada tahun 2006 menjadi tim KRI CHAESAR dan
tahun 2007 sebagai tim KRCI divisi expert Swarm dengan
nama tim Mech Robo. Karena sebagai anggota tim robot,
walaupun ku berasal dari jurusan teknik elektro industri maka
tugas akhir ku mengangkat permasalahan yang dihadapi pada
KRCI divisi expert swarm dan akhirnya pada september 2007
aku dinyatakan lulus memempuh program diploma empat di
Politeknik Elektronika Negeri Surabaya – Institut Teknologi
Sepuluh Nopember (PENS-ITS).


eka_sight@plasa.com