perancangan Dan Implementasi Ronot Cerdas Pemadam Api Senior Beroda DU 114-V10 (Dirancang Untuk Pertandingan KRCI 2010)
1 BAB I PENDAHULUAN
1.1 Latar Belakang
Indonesia telah mengadakan beberapa kali kontes robot yang terbagi dua mejadi, Kontes Robot Indonesia (KRI) dan Kontes Robot Cerdas Indonesia (KRCI), dalam Kontes Robot Cerdas Indonesia (KRCI) terdapat 3 (tiga) Divisi, yaitu :
Indonesia telah mengadakan beberapa kali kontes robot yang terbagi dua mejadi, Kontes Robot Indonesia (KRI) dan Kontes Robot Cerdas Indonesia (KRCI), pada Kontes Robot Cerdas Indonesia (KRCI) tahun 2010 terdapat 4 (empat) Divisi, yaitu
1. Divisi Senior, meliputi : a. Divisi Wheeled Robot b. Divisi Legged Robot 2. Divisi Expert
a. Divisi ExpertBattle
Divisi Senior khusus dibatasi hanya untuk peserta mahasiswa, sedangkan Divisi Expert, terbuka baik untuk peserta mahasiswa maupun juga untuk peserta umum, dimana pemenangnya akan mengikuti kontes robot tingkat internasional yang diselenggarakan di beberapa negara Asia seperti Jepang, Thailand, Korea Selatan, Cina dan, Malaysia. Kontes Robot Cerdas Indonesia (KRCI) yang akan diselenggarakan bertemakan “ Robot Cerdas Pemadam Api “, diselaraskan dengan tema yang ditentukan oleh “TRINITY COLLEGE FIRE-FIGHTING ROBOT CONTEST 2009 “. Kontes tersebut memiliki nilai dan arti lebih didalam masyarakat khususnya guna mendorong penguasaan teknologi maju bagi para mahasiswa teknik di Indonesia dan peningkatan kualitas robot terutama pada sistem kontrolnya.
(2)
2 Dalam mengikuti suatu kontes, robot yang didesain dan dirancang haruslah cerdas, handal, stabil, serta cepat dalam melakukan aksi di arena kontes. Penulis pada tahun 2008 hanya sebagai wakil ketua untuk tingkat regional maupun tingkat nasional. Sedangkan pada tahun 2009 untuk tingkat regional penulis juga masih sebagai wakil ketua, dan untuk tingkat nasional penulis diharuskan membuat robot sendiri karena robot yang diturunkan tingkat regional dibawa ketua untuk bertanding ke tingkat internasional ”ROBOGAMES 2009”. Untuk tahun 2010 penulis sebagai ketua dalam team. Perbedaan rule pertandingan untuk tahun 2009 dan 2010 yaitu: untuk tahun 2009 peserta bebas memilih mode yang mereka inginkan (Mode A , Mode B atau Mode C) untuk trial pertama, kedua dan ketiga. Sedangkan untuk tahun 2010 peserta diwajibkan untuk memilih mode A untuk trial pertama mode B untuk trial kedua dan mode C untuk trial ketiga.
Hal tersebut yang mendasari Penulis untuk menyusun tugas akhir yang bertujuan merancang dan menyempurnakan Robot Cerdas Pemadam Api (DU114-V9, robot milik DIVISI ROBOTIKA UNIKOM) yang lebih cerdas untuk mengatasi kondisi lapangan yang semakin kompleks.
1.2 Maksud dan Tujuan
Maksud dan tujuan dari penelitian ini adalah :
1. Merancang dan membangun robot cerdas pemadam api divisi senior beroda yang merujuk pada Kontes Robot Cerdas Indonesia (KRCI) 2010.
2. Menyempurnakan Robot Cerdas Pemadam Api DU114-V9 sehingga robot mampu mengatasi kondisi lapangan yang semakin kompleks.
1.3 Batasan Masalah
Dalam tugas akhir ini, penulis membatasi permasalahan pada perancangan dan pengendalian gerak robot, agar dapat melakukan pencarian sumber api dan memadamkannya dengan melewati beberapa rintangan serta dengan kecepatan yang relatif tinggi dan stabil. Batasan masalah ini mengacu kepada peraturan Kontes Robot Cerdas Indonesia 2010 divisi senior beroda.
(3)
3 1.4 Metodologi Penelitian
Metodologi penelitian yang penulis lakukan adalah eksperimental dengan tahapan sebagai berikut :
1. Studi literatur dan studi lapangan
Mencari referensi buku dan mencari berbagai komponen pendukung yang akan dipakai dalam perangcangan tugas akhir ini serta mempelajari bahsa pemrograman yang akan digunakan.
2. Interview dan eksperimen
Mencoba berbagai modul rangkaian yang diperoleh dari studi literatur dan studi lapangan serta mendiskusikan hasil eksperimen dengan dosen pembimbing. 3. Perancangan
Setelah melakukan eksperimen dan hasil eksperimen tersebut sesuai dengan kebutuhan maka dilakukan perancangan dengan cara menggabungkan eksperimen-eksperimen dari segi perangkat keras ( modul-modul rangkaian ) dengan perangkat lunak, sehingga tersusun sebuah sistem.
4. Analisis dan Pengujian
Untuk mengetahui hasil dari perangcangan sistem yang telah dibuat, selanjutnya akan dilakukan pengujian dengan cara mengambil data dari sistem yang dibuat dan menganalisis data tersebut, apakah telah sesuai dengan yang diinginkan atau belum, apabila data yang diperoleh tidak sesuai dengan yang diinginkan maka akan dilakukan pengecekan kembali dan memperbaikinya sehingga diperoleh hasil pengujian yang sesuai.
(4)
4 1.5 Sistematika Penulisan
Adapun sistematika penulisan pada tugas akhir ini adalah : BAB I. PENDAHULUAN
Dalam bab ini membahas mengenai latar belakang, maksud dan tujuan penulisan, batasan masalah, metoda penulisan dan sistematika penulisan.
BAB II. LANDASAN TEORI
Dalam bab ini membahas tentang teori-teori dasar yang berhubungan dengan perangkat keras maupun perangkat lunak pembentuk robot.
BAB III.PERANCANGAN SISTEM
Dalam bab ini membahas tentang perancangan perangkat keras dan perangkat lunak. Pemilihan terhadap sensor-sensor yang digunakan untuk navigasi, pencarian api dan pemadam api. Algoritma pergerakan robot di arena BAB IV.UJI COBA DAN ANALISIS SISTEM
Dalam bab ini membahas tentang cara kerja robot dan analisa data terhadap sensor-sensor yang digunakan.
BAB V. SIMPULAN DAN SARAN
(5)
5
BAB II
LANDASAN TEORI
Dalam bab ini akan dijelaskan mengenai teori-teori tentang robot senior beroda serta penunjang untuk membentuk sebuah robot cerdas pemadam api, baik teori perangkat keras maupun perangkat lunak yang akan digunakan sebagai berikut :
2.1 PENGERTIAN ROBOT SENIOR BERODA
Robot Senior Beroda merupakan sebuah robot yang menggunakan roda sebagai alat geraknya dengan misi mencari dan memadamkan api pada arena lapangan. Pada Robot Senior Beroda yang diutamakan adalah kecepatan dan kemampuan robot dalam bernavigasi dan bermanuver dalam mencari dan memadamkan api disuatu arena dengan peta tertentu secara otomatis.
Pada Kontes Robot Cerdas Indonesia (KRCI) 2010 robot diwajibkan untuk memilih Mode A untuk trial pertama, Mode B untuk trial kedua, dan Mode C untik trial ketiga. Dengan adanya perbedaan Mode untuk setiap kali trial menuntut robot memiliki algoritma yang cerdas dan handal.
2.2 PERANGKAT KERAS (HARDWARE ) 2.2.1 Mikrokontroler ATmega64
Mikrokontroler berfungsi sebagai pusat pengendali robot dan sebagai pengambil keputusan dari data-data yang dikirimkan oleh sensor-sensor. Mikrokontroler yang digunakan adalah ATmega64.
(6)
6 Beberapa alasan utama pemilihan mikrokontroler ATmega64:
- Bahasa pemrograman yang sederhana membuat pengembangan perangkat lunak menjadi lebih cepat.
- Kecepatan tinggi dengan frekuensi clock 16 MHz. - Jumlah port I/O sebanyak 53 buah.
- Kapasitas memori program 64KBytes). - Memori data berukuran 4KBytes SRAM. - Rentang Tegangan (Vcc) 4,5 - 5 volt. - Mempunyai 8 External Interrupts
- 8 kanal 10 bit ADC internal
Fitur-fitur lain yang dimiliki ATmega 64 adalah: - 2KBytes EEPROM
- Merupakan mikrokontroler RISC, sehingga memiliki 133 instruksi dasar.
(7)
7 Gambar 2.1 Diagram blok ATmega64
2.2.1.1. Deskripsi Pin-Pin ATmega64
ATmega64 memiliki port untuk input/output sebanyak 53 pin, yang terdiri dari 8 pin sebagai port A, 8 pin sebagai port B, 8 pin sebagai port C, 8 pin sebagai
port D, 8 pin sebagai port E, 8 pin sebagai port F dan 8 pin sebagai port G. Khusus untuk port D digunakan sebagai port I/O Interrupt pada pin 1, Port E digunakan sebagai port I/O UART pada pin 0 sebagai Reciever dan pin 1 sebagai
(8)
8 Gambar 2.2 Konfigurasi pin ATmega64
Semua port dapat digunakan sebagai I/O, tapi port juga mempunyai fungsi lain. Berikut adalah daftar pin-pin pada mikrokontroler ATmega64 beserta fungsinya :
(9)
9 Tabel 2.1konfigurasi pin-pin mikrokontroler ATmega64
Pin Nama
Tipe Pin
Fungsi Lain
1 PEN I Programing Enable Pin untuk SPI serial programing 2 PE0 I/O Programing Data Input / UART0 Receive Pin 3 PE1 I/O Programming Data Output / UART0 Transmit Pin
4 PE2 I/O Analog Comparator Positive Input atau USART0 external clock input/output
5 PE3 I/O Analog Comparator Negative Input atau Output Compare dan PWM Output A untuk Timer/Counter3
6 PE4 I/O External Interrupt4 Input atau Output Compare dan PWM Output B for Timer/Counter3
7 PE5 I/O External Interrupt 5 Input atau Output Compare dan PWM Output C for Timer/Counter3
8 PE6 I/O External Interrupt 6 Input atau Timer/Counter3 Clock Input
9 PE7 I/O External Interrupt 7 Input or Timer/Counter3 Input Capture Trigger
(10)
10 Tabel 2.1 Lanjutan
Pin Nama
Tipe Pin
Fungsi Lain 11 PB1 I/O SCK (SPI Bus Serial Clock)
12 PB2 I/O MOSI (SPI Bus Master Output/Slave Input) 13 PB3 I/O MISO (SPI Bus Master Input/Slave Output)
14 PB4 I/O OC0 (Output Compare and PWM Output for Timer/Counter0)
15 PB5 I/O OC1A (Output Compare and PWM Output A for Timer/Counter1)
16 PB6 I/O OC1B (Output Compare and PWM Output B for Timer/Counter1)
17 PB7 I/O
OC2/OC1C (Output Compare and PWM Output for Timer/Counter2 or Output Compare and PWM Output C for Timer/Counter1)
18 PG3 I/O TOSC2 (RTC Oscillator Timer/Counter0) 19 PG4 I/O TOSC1 (RTC Oscillator Timer/Counter0) 20 Reset I Untuk mereset program
21 VCC Tegangan sumber 5 v
22 GND Ground
(11)
11 Tabel 2.1 Lanjutan
Pin Nama
Tipe Pin
Fungsi Lain 24 XTAL1 Input osilator
25 PD0 I/O External Interrupt0 Input or TWI Serial CLock 26 PD1 I/O External Interrupt1 Input or TWI Serial DAta 27 PD2 I/O External Interrupt2 Input or UART1 Receive Pin 28 PD3 I/O External Interrupt3 Input or UART1 Transmit Pin 29 PD4 I/O Timer/Counter1 Input Capture Trigger
30 PD5 I/O USART1 External Clock Input/Output 31 PD6 I/O Timer/Counter1 Clock Input
32 PD7 I/O Timer/Counter2 Clock Input
33 PG0 I/O WR (Write strobe to external memory) 34 PG1 I/O RD (Read strobe to external memory) 35 PC0 I/O Hanya Pin I/O dua arah
36 PC1 I/O Hanya Pin I/O dua arah 37 PC2 I/O Hanya Pin I/O dua arah 38 PC3 I/O Hanya Pin I/O dua arah 39 PC4 I/O Hanya Pin I/O dua arah 40 PC5 I/O Hanya Pin I/O dua arah 41 PC6 I/O Hanya Pin I/O dua arah
(12)
12 Tabel 2.1 Lanjutan
Pin Nama
Tipe Pin
Fungsi Lain 42 PC.7 I/O Hanya Pin I/O dua arah
43 PG.2 I/O ALE (Address Latch Enable to external memory) 44 PA7 I/O AD7 (External memory interface address and data bit 7) 45 PA6 I/O AD6 (External memory interface address and data bit 6) 46 PA5 I/O AD5 (External memory interface address and data bit 5) 47 PA4 I/O AD4 (External memory interface address and data bit 4) 48 PA3 I/O AD3 (External memory interface address and data bit 3) 49 PA2 I/O AD2 (External memory interface address and data bit 2) 50 PA1 I/O AD1(External memory interface address and data bit 1) 51 PA0 I/O AD0 (External memory interface address and data bit 0)
52 VCC Tegangan Input 5V
53 Gng Ground
54 PF7 I/O ADC input channel 7 or JTAG Test Data Input) 55 PF6 I/O ADC input channel 6 or JTAG Test Data Output 56 PF5 I/O ADC input channel 5 or JTAG Test Mode Select 57 PF4 I/O ADC input channel 4 or JTAG Test ClocK 58 PF3 I/O ADC input channel 3
(13)
13 Tabel 2.1 Lanjutan
Pin Nama
Tipe Pin
Fungsi Lain 59 PF2 I/O ADC input channel 2
60 PF1 I/O ADC input channel 1 61 PF0 I/O ADC input channel 0
62 AREF Tegangan Referensi untuk A/D Converter
63 GND Ground
64 AVCC Tegangan Input untuk Port F dan ADC
2.2.2 Sensor Dinding
Sensor dinding digunakan sebagai sensor jarak untuk menentukan jarak robot dengan dinding sehingga robot dapat menentukan aksi apa yang harus dilakukan. Sensor ultrasonik digunakan sebagai sensor dinding pada robot yang dirancang.
Pemilihan komponen ini didasarkan pada kehandalannya terhadap gangguan yang telah ditetapkan oleh Panitia KRCI. Sensor ultrasonik sangat tangguh terhadap gangguan hanging object berupa cermin, tetapi sensor ini menjadi kurang handal terhadap hanging object berupa sound damper yang dipasang di dinding arena lapangan. Solusinya yaitu dengan penempatan posisi sensor ultrasonik dibadan robot yang tidak terganggu oleh sound dumper.
(14)
14 2.2.2.1. Sensor Ultrasonik
Telinga manusia hanya bisa mendengar frekuensi bunyi antara 20 Hz sampai dengan 20 kHz. Gelombang diatas itu tidak dapat didengar oleh telinga manusia yang dinamakan dengan gelombang ultrasonik. Gelombang jenis ini bisa dimanfaatkan sebagai sensor pengukur jarak tanpa terjadinya kontak fisik dengan objek yang diukur jaraknya (dinding). Sensor ultrasonik bekerja pada frekuensi 40Khz, mempunyai bagian pengirim gelombang (transmitter) dan bagian penerima gelombang (receiver). Jarak dapat diketahui dengan menghitung waktu yang dibutuhkan oleh gelombang ultrasonik sejak awal pengiriman sampai kembali ke penerima gelombang.
Gambar 2.3 Prinsip kerja ultrasonik
2.2.3 Sensor Api
Robot pemadam api tentunya membutuhkan sensor api yang digunakan untuk mendeteksi keberadaan api di dalam ruangan. UVtron digunakan untuk mendeteksi keberadaan api dalam suatu ruangan arena lomba.
(15)
15 2.2.3.1. Uvtron
Sensor UVtron mempunyai rentang spektrum panjang gelombang antara 185 nm hingga 260 nm yang merupakan spektrum gelombang ultraviolet emisi nyala api. Sensor ini bekerja dengan menangkap pancaran ultraviolet. Api dideteksi oleh tabung UVtron sedangkan unit pemroses sinyal tersebut menggunakan modul interface UVtron (Hamamatsu seri C3704). Kelebihan dari sensor ini adalah mampu mendeteksi pancaran ultraviolet sampai jarak 5 meter. Gambar 2.4 berikut adalah gambar sensor UVtron dan modul interface-nya:
Tempat tabung UVtron
Gambar 2.4 (a) Tabung sensor UVtron; (b) modul interface-nya (kanan) (http://sales.hamamatsu.com/assets/pdf/parts_R/R2868.pdf)
2.2.4 Modul Penggerak
Roda yang dihubungkan menggunakan rantai plastik pada robot digerakkan menggunakan dua buah motor gear DC yang dipasang pada roda paling belakang sebelah kiri dan kanan. Pemilihan motor gear DC didasarkan pada putaran dan torsi yang lebih besar dibandingkan dengan motor stepper atau motor servo, juga didasarkan atas ketersediaan di pasaran selain harga murah juga banyak variasinya.
(16)
16 Gambar 2.5 Motor DC
(http://www.motortech.com/)
Motor gear DC tidak dapat dikendalikan secara langsung oleh mikrokontroler, karena kebutuhan arus yang besar sedangkan keluaran arus dari mikrokontroler sangat kecil. Motor driver merupakan alternatif yang dapat digunakan untuk menggerakkan motor DC.
Ada dua cara yang dapat digunakan untuk mendapatkan motor driver: 2.2.4.1 Transistor
Motor DC biasanya dikontrol menggunakan konfigurasi transistor yang dikenal dengan istilah H-Bridge. Konfigurasi ini biasanya menggunakan 4 buah transistor NPN atau dua transistor NPN dan dua transistor PNP.
(17)
17 Tabel 2.2Tabel kebenaran konfigurasi H-Bridge
Gambar 2.6 menunjukkan konfigurasi transistor NPN yang digunakan sebagai pengontrol motor DC. Arus yang mengalir ke motor DC polaritasnya dapat diatur dengan memberikan logika ke transistor Q1 sampai Q4. Pengaturannya seperti tabel kebenaran pada tabel 2.2 Transistor Q1 dan Q2 atau Q3 dan Q4 tidak diperbolehkan kondisi keduanya dalam keadaan high karena akan menyebabkan short circuit terhadap baterai.
2.2.4.2 IC Motor Driver
L293 dan L298 adalah contoh IC yang dapat digunakan sebagai driver
motor DC. IC ini menggunakan prinsip kerja H-Bridge. Tiap H-Bridge dikontrol menggunakan level tegangan TTL yang berasal dari output mikrokontroler. L293 dapat mengontrol 4 buah motor DC sedangkan L298 dapat mengontrol 2 buah motor DC. Tegangan yang dapat digunakan untuk mengendalikan robot bisa mencapai tegangan 46 VDC dan arus mencapai 2 A untuk setiap kanalnya.
Pengaturan kecepatan kedua motor dilakukan dengan cara pengontrolan lama pulsa aktif (metode PWM - Pulse Width Modulation) yang dikirimkan ke rangkaian driver motor oleh modul pengendali (mikrokontroler Basic Stamp).
Duty cycle PWM yang dikirimkan menentukan kecepatan putar motor DC. Gambar 2.13 menunjukkan bentuk IC L293 dan L298 Multiwatt 15 yang digunakan sebagai motor driver.
(18)
18
Gambar 2.7 IC L293 dan L298
(http://www.selectronic.fr/includes_selectronic/pdf/Thomson/L298.pdf)
2.2.4.3 Modul kendali motor
Modul kendali motor digunakan untuk mengatur kecepatan dan arah motor sesuai dengan instruksi yang dikirim oleh ATmega64. Modul kendali motor ini menggunakan DT-AVR low cost nano system yang diproduksi oleh Innovative Electronics. Modul ini menggunakan mikrokontroler ATtiny2313 yang mempunyai 2KB memori program, 128 Byte EEPROM dan 128 Byte SRAM. Gambar 2.11 menunjukkan deskripsi pin ATtiny2313.
(19)
19 Tabel 2.3konfigurasi pin-pin mikrokontroler ATtiny2313
Pin Nama Tipe Pin Fungsi
1 PA2 Sebagai Reset
2 PD0 UART data receiver
3 PD1 UART data transmitter
4 PA1 XTAL2
5 PA0 XTAL1
6 PD2 I/O External Interrupt 0, XCK, CKOUT 7 PD3 I/O External Interrupt 1
8 PD4 I/O Timer/counter 0
9 PD5 I/O Timer/Counter 1, OC0B
10 GND Ground
11 PD6 I/O Input Capture Pin pada timer/counter 1
12 PB0 I/O Analog Comparator Positive input;
Pin Change Interrupt Source 0.
13 PB1 I/O Analog Comparator Negative input;
Pin Change Interrupt Source 1
14 PB2 I/O OC0A, Pin Change Interrupt Source 2.
15 PB3 I/O OC1A, Pin Change Interrupt Source 3
16 PB4 I/O OC1B, Pin Change Interrupt Source 4
17 PB5 I/O DI/SDA, Pin Change Interrupt Source 5
18 PB6 I/O DO, Pin Change Interrupt Source 6
19 PB7 I/O USCK/SCL, Pin Change Interrupt Source 7
20 Vcc Tegangan Input
2.2.4.4 Optocoupler
Optocoupler merupakan alat yang terdiri dari led inframerah dan phototransistor. Pada saat cahaya dari led inframerah yang menuju ke phototransistor terhalang oleh cahaya dari led inframerah yang menuju ke phototransistor diterima maka phototransistor akan melewatkan arus yang melaluinya. Pada keadaan
(20)
20 phototransistor menerima cahaya maka optocoupler akan menghasilkan beda potensial sebesar beberapa mV.
2.2.5 Modul Pemadam Api
Media yang digunakan untuk memadamkan api adalah gas dan air. Yang menjadi pemadam utama adalah air. Dimana air ini disimpan dalam media tertentu berbentuk balok yang memiliki kapasistas ± 250 ml . yang digerakkan oleh motor DC. Motor DC dapat bekerja dengan menggunakan motor driver yang akan mengendalikan putaran motor tersebut. Motor diver yang digunakan sama dengan modul penggerak roda.
2.2.6 Sensor Suara
Robot dapat diaktifkan menggunakan sensor suara dengan frekuensi antara 3 – 4 kHz. Modul yang dirancang terdiri dari dua bagian, yaitu modul penghasil suara yang diaktifkan oleh operator robot dan modul pendeteksi suara yang terpasang pada robot. Alat yang digunakan sebagai penghasil suara adalah sebuah
buzzer dengan frekuensi sekitar 3 – 4 Khz. Suara yang dihasilkan berupa sinyal
analog yang akan diterima oleh komponen micondensor yang kemudian dikuatkan oleh komponen penguat, setelah dilakukan penguatanm sinyal tersebut di-filter melalui komponen bandpass filter sehingga menghasilkan sinyal digital. Sinyal tersebut diterima oleh mirokontroler yang menandakan bahwa awal dari pergerakan robot
Gambar 2.9 Diagram blok sensor suara
(21)
21 2.2.7 Catu Daya
Catu daya memegang peranan yang sangat penting dalam hal perancangan sebuah robot. Tanpa bagian ini robot tidak akan berfungsi. Begitu juga bila pemilihan catu daya tidak tepat, maka robot tidak akan bekerja dengan baik.
Penentuan sistem catu daya yang akan digunakan ditentukan oleh banyak faktor, diantaranya :
1. Tegangan
Setiap modul sensor atau aktuator tidak memiliki tegangan yang sama. Hal ini akan berpengaruh terhadap disain catu daya. Tegangan tertinggi dari salah satu modul sensor atau aktuator akan menentukan nilai tegangan catu daya.
2. Arus
Arus memiliki satuan Ah (Ampere-hour). Semakin besar Ah, semakin lama daya tahan baterai bila digunakan pada beban yang sama.
3. Teknologi Baterai
Baterai isi ulang ada yang dapat diisi hanya apabila benar-benar kosong, dan ada pula yang dapat di isi ulang kapan saja tanpa harus menunggu baterai tersebut benar-benar kosong.
Secara umum, ada beberapa jenis dan bentuk baterai yang dapat digunakan untuk sistem catu daya pada sebuah robot, diantaranya baterai Nickel Metal Hydride (Ni-MH). Baterai ini mempunyai teknologi terbaik untuk rechargeable
baterai, yakni dapat diisi ulang lebih dari 400 kali serta memiliki tahanan dalam yang rendah dengan tegangan kerja sebesar 1.2 volt, sehingga dapat memberikan arus yang relatif besar. Jika digunakan untuk beban yang berat, baterai ini dapat menjadi panas.
(22)
22 Kapasitas simpan baterai Ni-MH ini sangat bervariasi, yakni sampai 2700 mAh. Berikut ini adalah contoh sebuah baterai Ni-MH 2700 mAh.
Gambar 2.10 Baterai Ni-MH 2700mAh
(http://www.nimhbattery.com/sanyo-2700-aa-rechargeable-batteries.htm) Untuk pengisian baterai ini dapat dilakukan kapan saja, namun untuk hasil yang lebih baik, setelah beberapa kali pengisian, baterai ini harus dikosongkan terlebih dahulu sebelum diisi. Selain jenis baterai Ni-MH, masih banyak lagi jenis baterai yang tersedia di pasaran dengan spesifikasi yang beragam dan dapat digunakan untuk catu daya pada sebuah robot. Diantaranya baterai Ni-CAD, Alkaline, Lithium, Lead Acid dan sebagainya, yang masing-masing mempunyai kelebihan dan kekurangannya.
2.2.8 Modul AVR910
AVR910 merupakan modul pemrograman ATmega64. Modul ini menggunakan software AVRprog.
(23)
23 2.2.9. Modul Kompas
Kompas berfungsi sebagai penentu arah gerak robot. Modul kompas yang digunakan adalah CMPS03.
Modul CMPS03 mempunyai ukuran 4 x 4 cm dan menggunakan sensor medan magnet Philips KMZ51. Sensor magnet ini cukup sensitif untuk mendeteksi medan magnet bumi. CMPS03 memiliki resolusi hingga 0,1 derajat dan pembacaan sudut dapat dilakukan dengan 2 pilihan antarmuka yaitu I2C atau PWM.
Gambar 2.12 CMPS03
2.3. Perangkat Lunak ( Software )
Perangkat lunak merupakan faktor penting dalam tahap perancangan robot. Perangkat lunak ini berupa algoritma gerak dan tugas robot dalam bentuk listing program yang ditanamkan kedalam mikrokontroler. Program dapat bermacam-macam bentuk versi dan bahasa pemrogramannya, sesuai dengan spesifikasi dari mikrokontroler yang digunakan.
Mikrokontroler ATmega64 menggunakan bahasa pemrograman QBasic, yang bahasa pemrogramannya hampir sama dengan bahasa Basic. Software yang digunakan adalah Bascom-AVR.
(24)
24 2.3.1 Bascom-AVR
Instruksi yang dapat digunakan pada editor Bascom-AVR relatif cukup banyak dan bergantung dari tipe dan jenis AVR yang digunakan. Berikut ini beberapa instruksi-instruksi dasar yang dapat digunakan pada mikrokontroler ATmega64
Tabel 2.4Beberapa instruksi dasar BascomAVR
Instruksi Keterangan
DO…LOOP Perulangan
GOSUB Memanggil prosedur
IF…THEN Percabangan
FOR..NEXT Perulangan
WAIT Delay atau waktu tunda detik
WAITMS Delay atau waktu tunda milidetik WAITUS Delay atau waktu tunda mikrodetik SELECT…CASE Pencabangan
PULSOUT Membangkitkan pulsa
PULSIN Menerima/membaca pulsa yang diterima GOTO Menuju/loncat ke alamat memori tertentu
Bascom-AVR adalah software yang khusus dibuat untuk keluarga AVR, software ini berjalan pada sistem operasi windows. Software ini dapat berjalan pada komputer dengan sistem minimum, tanpa harus membutuhkan spesifikasi komputer yang canggih. Gambar 2.13 menunjukkan tampilan jendela program Bascom-AVR yang berjalan pada sistem operasi Windows.
(25)
25 Gambar 2.13 Tampilan editor Bascom-AVR
2.3.2. AVRProg
AVRprog merupakan software yang digunakan untuk memprogram mikrokontroler ATmega64 dengan menggunakan AVR910. Gambar 2.14 adalah tampilan jendela program AVRprog
(26)
26 .
(27)
Pada bab ini aka membangun robot ce Gambar 3.1 merupaka
3.1 HARDWARE 3.1.1. Mikrokontrole
Pemilihan mik penggunaan sensor, tersebut dapat teratas pemrogramannya seh
27 BAB III
PERANCANGAN SISTEM
akan dijelaskan mengenain komponen-kompone cerdas pemadam api berdasarkan landasan te
kan diagram blok keseluruhan dari sistem
Gambar 3.1.Diagram Blok Sistem
oler ATmega64
ikrokontroler ini didasarkan pada banyak r, dengan 53 buah I/O yang dimiliki oleh
tasi, kecepatan eksekusi yang cepat, dan kem ehingga waktu pengembangan program men
onen apa saja yang teori sebelumnya.
aknya kebutuhan h ATmega64 hal kemudahan dalam enjadi lebih cepat
(28)
28 karena menggunakan bahasa tingkat tinggi. Konsekuensinya akan mengkonsumsi banyak instruksi assembler yang akan mengurangi kapasitas memori dan kecepatan eksekusi data.
Tabel berikut menunjukkan penggunaan pin-pin pada mikrokontroler ATmega64:
Tabel 3.1Pin-pin I/O yang digunakan pada ATmega64
Nama Port Pin No Pin I/O Tipe
Pin Fungsi
PORT A
51 0 I/O motor OUT (Tx ke DT-AVR)
50 1 I/O motor IN (Rx dari DT-AVR)
49 2 I/O
48 3 I/O
47 4 I/O
46 5 I/O
45 6 I/O
44 7 I/O
PORT B
10 0 I/O Led Tanda
11 1 I/O Sound Activation
12 2 I/O
13 3 I/O
14 4 I/O
15 5 I/O Air
16 6 I/O Kipas
17 7 I/O Posisi Kipas
PORT C
35 0 I/O Ultrasonik belakang kiri
36 1 I/O Ultrasonik belakang kanan 37 2 I/O Ultrasonik kanan belakang
38 3 I/O Ultrasonik kanan depan
39 4 I/O Ultrasonik depan
40 5 I/O Ultrasonik kiri depan
PORT D
41 6 I/O
42 7 I/O Ultrasonik kiri belakang
25 0 I/O
26 1 I/O
(29)
29 Tabel 3.1 Lanjutan
Nama Port
Pin
No Pin I/O
Tipe
Pin Fungsi
D
28 3 I/O
29 4 I/O
30 5 I/O
31 6 I/O
32 7 I/O Uvtron (cek api)
PORT E
2 0 I/O Bemper kanan
3 1 I/O Bemper Tengah
4 2 I/O Bemper kiri
5 3 I/O
6 4 I/O
7 5 I/O
8 6 I/O
9 7 I/O
PORT F
61 0 I/O Sensor lantai 1
60 1 I/O Sensor lantai 2
59 2 I/O Sensor lantai 3
58 3 I/O
57 4 I/O
56 5 I/O
55 6 I/O
54 7 I/O
PORT G
33 0 I/O Kompas
34 1 I/O
43 2 I/O
18 3 I/O
19 4 I/O
(30)
30 3.1.2. Sensor Dinding
Jenis sensor yang digunakan sebagai sensor pendeteksi dinding adalah sensor ultrasonik PING)))
3.1.2.1. Sensor Ultrasonik
Sensor ultrasonik yang digunakan adalah PING))) yang diproduksi oleh Parallax, Inc. Sensor ini mendukung untuk digunakan dengan mikrokontroler yang menggunakan modul Basic Stamp. Beberapa fitur yang menjadi pertimbangan pemilihan sensor ini sebagai pengukur jarak adalah:
1. Tegangan input (Vcc) adalah 5 Vdc.
2. Tipe arus input adalah 30 mA dengan arus maksimum 35 mA. 3. Jarak 1 cm dapat ditempuh dalam waktu 29.03 4 s.
4. Jarak yang dapat diukur mulai 3 cm sampai 3 m.
Gambar 3.2. Sensor ultrasonik PING)))
(http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf)
Gambar 3.2 menunjukkan cara kerja sensor ultrasonik, PING))) mengirim gelombang ultrasonik singkat dan menunggu echo (suara pantulan) dari gelombang ultrasonik yang dikirim terlebih dahulu. Terdapat dua langkah untuk mengetahui besarnya jarak antara robot dengan dinding. Pertama mikrokontroler harus mengirimkan pulsa (trigger time) selama 2 S<ttrigger<5 S untuk memulai pengukuran. Pada waktu yang hampir bersamaan, sensor ultrasonik mengirimkan gelombang ultrasonik pada level 40 kHz selama 200 S melalui speaker
(31)
31 ultrasonik dan mengirimkan sinyal high (1) ke mikrokontroler. Ketika mikrofon ultrasonik mendeteksi adanya echo, sinyal high (1) berubah menjadi low (0). Waktu yang dibutuhkan gelombang ultrasonik menuju objek dan kembali ke mikrofon sensor ultrasonik bisa dijadikan sebagai variabel untuk menghitung jarak antara robot dengan dinding.
Gambar 3.3. Cara kerja sensor ultrasonik
(http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf)
3.1.3. Sensor Api 3.1.3.1 Sensor Uvtron
Sensor UVtron bekerja dengan menangkap pancaran sinar ultraviolet dari api. Komponen yang mendeteksi ada atau tidak adanya api adalah tabung UVtron. Tabung ini membutuhkan suplai tegangan sampai sebesar 400 Vdc sehingga dibutuhkan komponen konverter tegangan tinggi dc ke dc. Bagian ini bisa membangkitkan tegangan 350 Vdc dari tegangan input 12 Vdc.
Pancaran ultraviolet yang diterima oleh tabung Uvtron akan diteruskan ke bagian rangkaian pemroses sinyal. Pada bagian ini kita bisa mengatur seberapa banyak pulsa (3, 5, 7 atau 9 pulsa) yang bisa diterima dengan interval 2 detik atau kurang dari Uvtron dan pada perancangan ini diset pada pulsa 9. Output dari sensor ini sudah dalam bentuk digital (1 atau 0).
(32)
32 Gambar 3.4 Skema modul interface sensor Uvtron
Penggunaan phototransistor sebagai pencari titik api sering kali menghadapi kendala ketika ada gangguan cahaya lain selain cahaya yang dihasilkan oleh lilin dengan panjang gelombang yang hampir sama, seperti cahaya matahari dan cahaya dari lampu, untuk itu diperlukan suatu alat yang berfungsi sebagai pengkonfirmasi cahaya lilin tersebut. UV-Tron adalah alat yang sesuai untuk digunakan sebagai pengkonfirmasi, karena UV-Tron hanya akan menerima masukan data dari cahaya api. Agar titik api ditemukan dengan tepat, tabung UV-Tron harus diselubungi oleh sebuah karton hitam, sehingga hanya bagian depannya saja yang terlihat. Dengan demikian arah tangkapan UV-Tron menjadi lebih sempit (fokus). Oleh karena itu pencarian titik api akan menjadi lebih sempurna.
(33)
3.1.4. Modul Pengge 3.1.4.1 IC Motor Dr L298N diprodu
bridge driver. Kompo 46 Vdc dan arus sebe pin seperti Aenable, A dengan dioda 1N4002 Pemilihan dioda ini yang mampu mengura
Ga
ggerak Roda Driver L298
duksi STMicroelectronic merupakan kompo ponen ini bisa men-drive dua buah motor DC s besar 2A untuk tiap kanal. Satu motor dapat dik , A+ dan A-. Pin output yang menuju motor D 02 yang dihubungkan ke sumber Vcc dan gro
i berdasarkan kemampuannya untuk menang urangi spike yang terjadi akibat perubahan arah
Gambar 3.6 Rankaian motor driver L298N
33 ponen Dual
sampai tegangan dikontrol dengan 3 r DC dihubungkan
ground motor DC. ngani arus tinggi ah gerak robot.
(34)
34 Tabel 3.2Tabel kebenaran untuk satu motor
Aen A(+) A(-) Status Motor
L X X Motor off
H L L Stop (rem)
H H L Berputar clockwise (cepat)
H L H Berputar counter clockwise (cepat)
H H H Stop (rem)
P H L Berputar clockwise (cepat)
P L H Berputar counter clockwise (cepat) H = High ; L = Low ; P = Pulsa ; X = Don’t care
3.1.4.2 Optocoupler
Untuk mengatasi pergerakan robot yang masih dipengaruhi oleh perubahan tegangan, solusi yang digunakan adalah dengan memasangkan speed encoder pada shaft motor. Sensor sederhana yang biasanya digunakan untuk speed encoder adalah optocoupler. Optocoupler terdiri dari pemancar dan penerima, pada bagian pemancar terdiri atas sebuah led dengan intensitas pancaran dapat diatur dengan merubah-rubah besaran resistor (220 -470 ) yang terhubung ke anodanya. Bagian penerima optocoupler adalah sebuah trasnsistor, ketika pemancar tidak terhalangi maka output pada transistor akan berlogika 1 dan ketik pemancar terhalangi output pada transistor akan berlogika 0. Pada shaft tersebut dipasangkan suatu plastik dengan diameter tertentu yang memiliki pola hitam dan transparan. Ketika pemancar mengenai hitam (terhalang) output transistor akan berlogika 0, ketika pemancar mengenai transparan (tidak terhalang) output transistor akan berlogika 1. Bila motor diberikan catu daya dengan tegangan tertentu yang akan memutarkan motor, bacaan dari optocoupler akan mengasilkan pulsa kotak persatuan waktu. Kerapatan dari pulsa yang dihasilkan bergantung kepada kecepatan putaran motor, semakin cepat putaran motor semakin rapat pulsa yang dihasilkan.
(35)
G
Gambar 3.8 a. L b. R
3.1.4.3 Kendali Mot Keluaran dari o AVR yang berfungs nantinya DT-AVR in dihasilkan laju perger motor dapat dilakuka ATmega64 ke DT-A masing-masing. Data menjadi acuan/setpoi
motor dengan memba optocoupler. Jika fre frekuensi yang dihas frekeunsi tersebut seh
Gambar3.7 Rangkaian dari Optocoupler
. Lingkaran plastik dengan pola tertentu Rangkaian internal optocoupler dan bentuk fis
otor
i optocoupler akan dihubungkan ke kendali m gsi membaca pulsa yang dihasilkan oleh op ini akan mengolah data masukan dari optoc gerakan robot yang lebih stabil. Pengaturan ke kan dengan cara memberikan data serial dari
AVR melalui pin-pin Rx (reciever) dan ta serial tersebut berupa nilai frekuensi, nilai fr
oint bagi DT-AVR untuk memutarkan motor baca frekuensi sebelumnya yang didapatkan d frekuensi yang dikirimkan oleh mikro lebih
asilkan oleh optocouper maka, DT-AVR aka sehingga mendekati nilai yang diinginkan dan
35
fisik optocoupler
i motor yaitu DT-optocoupler, yang ocoupler sehingga kecepatan putaran ri Mirkokontroler n Tx (transmiter) frekuensi ini akan tor melalui driver
dari hasil bacaan h besar dari pada kan meningkatkan an sebaliknya jika
(36)
36 frekeunsi yang diinginkan lebih kecil maka DT-AVR akan menurunkan kecepatan dari putaran motor melalui driver motor.
Gambar 3.9 Diagram blok modul penggerak
3.1.5 Modul Pemadam Api
Sistem pemadam yang dirancang tersusun dari 1 buah motor pump,1 buah kipas pemadam beserta motor penggeraknya, bejana khusus tempat menyimpan air berkapasitas ±250 ml, selang dengan diameter 3 mm , dan spuyer pengatur keluaran air. Selang tersebut menghubungkan antara bejana, motor pump dan spuyer. Ketika robot menemukan api, mikrokontroler akan mengaktifkan salah satu pin yang terhubung ke motor driver guna mengaktifkan motor pump. Ketika motor pump aktif, selang akan menjadi bertekanan tinggi, tekanan air di dalam selang akan keluar melalui spuyer, arah pancaran dan besarnya debit air yang dikeluarkan dapat diatur dengan mengkonfigurasikan spuyer. Posisi bejana tempat menyimpan air harus lebih tinggi dari motor pump, agar motor tersebut selalu terendam oleh air sehingga tekanan yang dihasilkan lebih besar. Jika dalam satuan waktu tertentu api tidak padam, maka mikro kontroler akan mengaktifkan kipas pemadam yang digerakan oleh motor melalui driver motor.
Mikrokontroler
ATmega128
Kendali motor
DT-AVR
Driver Motor
L298N Motor DC Roda
(37)
37 Gambar 3.10 (a). Spuyer;(b). Motor pump; (c). Kipas pemadam
3.1.6 Sensor Suara
Sensor suara memiliki bagian penghasil suara (transmitter) dan bagian penerima suara (receiver). Bagian penghasil suara akan mengirimkan nada dengan kisaran frekuensi 3 – 4 kHz. Bagian penerima yaitu sebuah mic condensor yang akan menangkap frekuensi yang dihasilkan oleh modul penghasil suara, kemudian dilewatkan sinyal tersebut ke komponen penguat sinyal, dari penguat sinyal ini data tersebut akan di-filter oleh IC tone decoder LM567. Jika data yang masuk memiliki rentang frekuensi antara 3 - 4 Khz, output dari IC tersebut akan berlogika 0, kemudian data digital tersebut dibaca oleh mikrokontroler yang selanjutnya robot akan mulai beraksi menyusuri lorong arena, mencari api, memadamkan api dan kembali ke posisi awal.
(38)
38 3.1.6.1 Modul Pemancar
Gambar 3.11 Rangkaian penghasil suara
Pada bagian pemancar komponen yang digunakan untuk menghasilkan suara dengan frekuensi 3 – 4 Khz adalah buzzer. Prinsip kerja dari rangakain diatas yaitu. Ketika tombol switch ditekan LED akan aktif berkedip-kedip. Ketika LED dalam kondisi menyala, basis dari transistor akan terlewati oleh arus sehingga kolektor dan emitter berhubungan hal tersebut mengakibatkan terjadi beda tegangan di kedua kaki buzzer sehingga buzzer menghasilkan suara.
3.1.6.2 Modul Penerima
(39)
39 Komponen yang digunakan untuk menguatkan sinyal masukan yang tertangkap oleh miccondesor adalah transistor bertipe NPN. Agar bekerja dengan baik sebagai penguat, transistor harus dirangkai seperti gambar 3.14. Hasil penguatan yang masih berupa sinyal analog akan dilewatkan ke pada komponen pengatur besarnya amplitudo sinyal yang dihasilkan, komponen tersebut adalah potensiometer dengan besaran 10K
Gambar 3.13 Rangkaian penerima bagian filter
IC LM567 berfungsi sebagai filter frekuensi, sinyal yang telah melewati potensiometer akan terhubung dengan pin 3 dari IC yang berfungsi sebagai pembaca sinyal masukan. IC ini akan mem-filter frekeunsi antara 3 - 4Khz. Rentang pengaturan rekuensi tersebut dapat kita atur dengan mengubah-ubah nilai C2 dan VR2. Ketika sinyal yang masuk berada pada rentang tersebut output dari IC LM567 akan berlogika 0 (low). Dari gambar 3.13 dapat kita lihat bahwa keluaran dari IC ini dihubungkan kembali dengan IC 40106. hal ini dikarenakan keluaran dari IC LM567 logika low nya tidak benar2 low. IC 40106 berfungsi menstabilkan keluaran tersebut. LED yang terpasang berfungsi sebagai indikator keluaran.
(40)
40 3.1.7 Catu Daya
Catu daya adalah faktor pendukung yang sangat penting, karena mikrokontroler, sensor-sensor dan aktuator dapat bekerja karena adanya tegangan.
Power supply yang dibutuhkan sebanyak 2 buah, pertama untuk mencatu mikrokontroler dan sensor-sensor yang membutuhkan level tegangan 5 volt. Kedua, tegangan 19.2 volt sebagai tegangan kerja aktuator berupa motor dc. Pemisahan tegangan ini dimaksudkan agar tegangan yang masuk ke mikrokontroler tidak terganggu oleh tegangan dari motor.
Tegangan yang digunakan berasal dari baterai rechargeable yang mempunyai nilai tegangan 1,2 volt per satu baterai. Untuk supply tegangan ke mikrokontroler dan sensor-sensor digunakan 8 buah baterai yang disusun seri sehingga menghasilkan tegangan total sebesar 9,6, karena mikrokontroler dan sensor-sensor hanya mampu bekerja pada level tegangan 5 volt, untuk itu diperlukan regulator tegangan untuk mendapatkan tegangan 5 volt, dengan demikian digunakan IC regulator LM2940
Gambar 3.14 (a) IC Regulator; (b) kapasitor polar
(41)
41 Gambar 3.15 menunjukkan catu daya untuk tegangan output 5 Vdc (nilai terukur 4.9 volt) menggunakan IC LM2940 sebagai regulator tegangan positif yang dihasilkan dari tegangan sumber Vin sebesar 9.6 Vdc. Kapasitor digunakan untuk menghilangkan ripple yang berasal dari tegangan input.
Gambar 3.15 Schematic regulator 5 volt dengan LM2940
IC L298N sebagai driver motor membutuhkan tegangan logic 5 volt sama halnya dengan sensor-sensor dan mikrokontroler. Untuk menghasilkan tegangan 5 volt tersebut dibutuhkan IC yang berbeda dari regulator LM2940, hal ini dikarenakan arus yang masuk ke driver motor ± 2A, dengan arus sebesar itu IC LM2940 tidak bekerja dengan baik, IC yang digunakan sebagai penggantinya adalah LM2575, mampu bekerja dengan teganan sumber sebesar 40 volt dengan arus 3 A
(42)
42 3.2 SOFTWARE
3.2.1 Algoritma Dasar
Perancangan algoritma dasar merupakan hal yang sangat penting dalam perancangan sistem kendali pada sebuah sistem robot, sebab algoritma dasar inilah yang akan menjadi panduan dalam pengembangan/perancangan algoritma kendali secara keseluruhan. Algoritma-algoritma dasar tersebut diantaranya :
3.2.1.1 Maju dan Mundur
Gerakan maju dilakukan dengan menggerakkan roda kiri dan roda kanan ke arah depan secara bersama-sama, begitu pula dengan gerakan mundur, yakni dengan menggerakkan roda kiri dan roda kanan kearah belakang secara bersama-sama. Untuk dapat menggerakkan robot dengan arah maju, ada 2 mode intruksi yang diterapkan kepada mikrokontroler sebagai berikut :
1. Mode SetDC
Mode SetDC merupakan mode dimana motor akan berputar terus-menerus sampai ada instruksi selanjutnya.
Print #1, 0 ; 0 ; 0 ; 1 ; 180 ; 180
Kecepatan kiri Kecepatan kanan Mode setdc Mode run Arah motorkiri Arah motorkanani
Ket:
- Print#1 = mikrokontroler melalukan pengiriman data serial ke DT-AVR
- 0 = Arah putaran motor kanan, nilai 1 untuk merubah arah putaran - 0 = Arah putaran motor kiri, nilai 1 untuk merubah arah putaran - 0 = Mode Run, nilai 1 untuk stop
(43)
43 - 1 = Mode SetDC, nilai 0 untuk mode count
- 180 = Kecepatan motor kanan - 180 = Kecepatan motor kiri
2. Mode Count
Mode count adalah mode untuk menggerakkan motor dengan putaran yang ditentukan. Dapat digunakan untuk bergerak dengan jarak pasti.
Print #1, 0 ; 0 ; 0 ; 1 ; 100 ; 100; 180 ; 180
Kecepatan kiri Kecepatan kanan Count kiri
Count kanan Mode count Mode run Arah motorkiri Arah motorkanani
Ket:
- Print#1 = mikrokontroler melalukan pengiriman data serial ke DT-AVR
- 0 = Arah putaran motor kanan, nilai 1 untuk merubah arah putaran - 0 = Arah putaran motor kiri, nilai 1 untuk merubah arah putaran - 0 = Mode Run, nilai 1 untuk stop
- 0 = Mode Count, nilai 1 untuk mode setDC - 100 = Count kanan
- 100 = Count kiri
- 180 = Kecepatan motor kanan - 180 = Kecepatan motor kiri
(44)
44 Mode count juga digunakan untuk belok kanan dan belok kiri. Penggunaan mode count untuk belok hanya dengan merubah arah putaran motor. Berikut contoh program belok kiri dan belok kanan; Print #1, 0, 1, 0, 0, 90, 90, 180, 180 ‘belok kiri
Print #1, 1, 0, 0, 0, 90, 90, 180, 180 ‘belok kanan
3.2.2 Algoritma Gerak Untuk Seluruh Ruangan
Alur pergerakan robot dalam proses pencarian api di setiap ruangan di perlihatkan pada gambar berikut ini :
Gambar 3.17 Salah satu denah lapangan dan nomor rungan
6
1
3
(45)
45 Gambar 3.18 Salah satu denah lapangan dan nomor ruangan
2
4
(46)
46 Algoritma utama robot untuk mode A ditunjukkan seperti pada diagram alir berikut ;
(47)
47 Algoritma utama robot untuk Mode B dan Mode C ditunjukkan seperti pada diagram alir berikut ;
(48)
48 Algoritma menuju Ruang1, Ruang2 dan Ruang3 ditunjukkan seperti pada diagram alir berikut ;
Gambar 3.21 A. Diagram alir prosedur ke ruang1 B. Diagram alir prosedur keruang 2 C. Diagam alir prosedur keruang 4
Awal Prosedur
Belokkanan90
Maju sampai kanan kosong
Belokkanan90
Maju sampai Garis
Return Awal Prosedur Maju sampai kanan kosong Maju sampai kanan ada Maju sampai kanan kosong dan
depan ada
Belokkanan90
Maju sampai Garis
Return
Awal Prosedur
Maju sampai Kiri kosong Belokkiri90 Mundur Sampai kiri ada Kanan = Kosong Belokkanan90
Maju sampai Garis
Return tidak ya A B C
(49)
49 Algoritma menuju Ruang 5 dan Ruang 6 ditunjukkan seperti pada diagram alir berikut ;
Gambar 3.22 A. Diagram alir prosedur ke ruang 5 B. Diagram alir prosedur keruang 6 Awal Prosedur
Maju sampai Kiri kosong
Belokkiri90
Maju sampai kanan kosong dan
depan ada Belokkanan90 Maju sampai kanan ada Maju sampai kanan kosong Belokkanan90
Maju sampai Garis
Return
Awal Prosedur
Maju sampai Kiri kosong
Maju sampai Kiri ada
Maju sampai Kanan kosong dan depan
ada
Belokkanan90
Maju sampai Garis
Return
B
(50)
50 Algoritma dari Ruang 1 menuju ruang-ruang lainya ditunjukkan seperti pada diagram alir berikut ;
(51)
51 Algoritma dari Ruang 2 menuju ruang-ruang lainya ditunjukkan seperti pada diagram alir berikut ;
(52)
52 Algoritma dari Ruang 3 menuju ruang-ruang lainya ditunjukkan seperti pada diagram alir berikut ;
(53)
53 Algoritma dari Ruang 6 menuju ruang-ruang lainya ditunjukkan seperti pada diagram alir berikut ;
(54)
54 Algoritma matikan api ruang 1,2,4,5 dan ruang 6 ditunjukkan seperti pada diagram alir berikut ;
(55)
55 Algoritma matikan api ruang 3 ditunjukkan seperti pada diagram alir berikut ;
(56)
56 Algoritma susurkanan dan susurkiri digunakan untuk keluar ruangan ditunjukkan seperti pada diagram alir berikut ;
(57)
57 Samakan merupakan program yang digunakan robot agar posisinya sesuai dengan dinding dan arahnya tepat tegak lurus atau sejajar dengan dinding.
(58)
58 Gambar 3.31 Diagram alir prosedur samakanbelakang
ya
tidak
ya
ya
cmbelakangkanan-cmbelakangkiri>1
?
Cmbelakangkanan> cmbelakangkiri
?
Cmbelakangkanan< cmbelakangkiri
?
Motor kanan mundur motor kiri maju
Motor kanan maju motor kiri mundur
Awal prosedur
Baca sensor ultrasonik
Return
tidak
(59)
59 Gambar 3.32 Diagram alir prosedur samakankanan
ya
tidak
ya
ya
cmkanandepan-cmkananbelakang
>1
Cmkanandepan>c mkananbelakang
?
Cmkanandepan<c mkananbelakang
?
Motor kanan mundur motor kiri
maju
Motor kanan maju motor kiri mundur
Awal prosedur
Baca sensor ultrasonik
Return
tidak
(60)
60 Gambar 3.33 Diagram alir prosedur samakankiri
ya
tidak
ya
ya
cmkiridepan-cmkiribelakang>1
?
Cmkiridepan> cmkiribelakang
?
Cmkiridepan< cmkiribelakang
?
Motor kanan maju motor kiri mundur
Motor kanan mundur motor kiri maju
Awal prosedur
Baca sensor ultrasonik
Return
tidak
(61)
61 BAB IV
UJI COBA DAN ANALISIS SISTEM
Untuk mengetahui kehandalan dan keberhasilan dari sistem yang kita buat, maka diperlukan pengujian terhadap terhadap komponen – komponen pembangun sistem terutama sensor – sensor.
4.1. Pendeteksian Jarak Menggunakan Sensor Ultrasonik
Pengujian sensor ini dilakukan dengan membandingkan besarnya jarak yang telah ditetapkan dengan hasil perhitungan berdasarkan lamanya waktu high yang diterima, oleh mirkokontroler dalam program. Berdasarkan data sheet sensor
ultrasonic PING))), kecepatan suara adalah 1130 kaki/detik atau setara dengan 34442.4 cm/detik. Sehingga 1 cm dapat dalam 29.034 S. Beberapa tahapan untuk mengetahui besarnya jarak antara sensor dengan objek yaitu:
1. Mikrokontroler mengirimkan pulsa (trigger pulse) minimal sebesar 10 S. Perintah ini dikirim menggunakan instruksi
PULSEOUT port, pin, Duration Keterangan :
PULSEOUT : menghasilkan pulsa pada Pin selama Duration yang akan menjadi input sensor.
Port : nama dari sebuah port ( PortA – PortG )
Pin : sebuah variabel/konstanta/ekspresi ( 0-7 ) yang menetapkan pin I/O yang digunakan. Pin ini akan diset untuk mode
output.
Duration : sebuah variabel/konstanta/ekspresi (1-65535) menetapkan lamanya waktu pulsa yang dihasilkan.
2. Setelah pulsa trigger dikirimkan, sensor harus menunggu selama 700 s sebelum mengirimkan gelombang ultrasonik pendek. Waktu ini juga digunakan oleh sensor PING))) mengirimkan gelombang ultrasonik
(62)
62 pendek selama 200 S pada frekuensi 40 KHz dan mikrokontroler untuk menyiapkan instruksi selanjutnya.
3. Instruksi yang digunakan untuk memulai pengukuran adalah PULSEIN Variable, pinx, Pin, State Keterangan:
PULSEIN : mengukur lebar pulsa pada Pin yang digambarkan oleh State dan menyimpan hasilnya dalam Variable.
Variable : sebuah variabel (biasanya dalam Word) yang mana pulsa yang diukur akan disimpan.
Pinx : sebuah pin register ( PinA – PinG )
Pin : sebuah variabel/konstanta/ekspresi ( 0-7 ) yang menetapkan pin I/O yang digunakan. Pin ini akan diset untuk mode input.
State : sebuah variabel/konstanta/ekspresi (0-1) yang menetapkan apakah pulsa yang akan diukur low (0) atau high (1). Pulsa low dimulai dengan perpindahan 1 ke 0 dan pulsa
high dimulai dengan perpindahan 0 ke 1.
Satu unit variabel waktu pada mikrokontroler ATMEGA 64 adalah 10 S.
(63)
63 Gambar 4.1Cara kerja sensor ultrasonik
Keterangan:
Mikrokontroler PING
tOUT min. 10 S tHOLDOFF 750 S
tBURST 200 S @40kHz
tIN-MIN 115 S
tIN-MAX 18.5 mS
Berikut ini merupakan perintah yang diberikan mikrokontroler untuk mengakses penggunaan dari sensor ultrasonik, sehingga jarak benda yang ada di depannya dapat diketahui.
Config Portc.1 = Output
Portc.1 = 0 ; Port PingKanan di nol-kan Pulseout Portc , 1 , 40 ; Kirim pulsa trigger 10 uS
Pulsein waktu , Pinc , 1 , 1 ; Jika Port PingKanan=1 (HIGH), maka simpan lama waktu kondisi 1 ke waktu waktu = Waktu * 10 ; simpan waktu
(64)
64 Gambar 4.2 menunjukkan posisi pengujian sensor ultrasonik terhadap dinding. Hasil pengukuran dibandingkan dengan jarak sesungguhnya yang sudah diatur terlebih dahulu.
ATMEGA 128 Dinding D in d ing 50 cm
Gambar 4.2Posisi pengujian sensor ultrasonik
Berikut merupakan listing program untuk menguji sensor ultrasonik : $regfile = "m64def.dat"
$crystal = 16000000 $baud = 9600
‘--- Dim Jarak As Word
Dim Waktu As Word
‘--- Do
Gosub Ultrasonik
Print " tes ultrasonik "
Print "=========================================" Print
Print "jarak : " ; Jarak Print "waktu : " ; Waktu Print
Print "=========================================" Loop
End
Ultrasonik:
Config Portc.1 = Output Portc.1 = 0
Pulseout Portc , 1 , 40 Pulsein Waktu , Pinc , 1 , 1 waktu = Waktu * 10
Jarak = waktu / 61 Waitms 10
(65)
65
Print adalah instruksi untuk menampilkan informasi hasil pengukuran
pada layar monitor seperti terlihat pada gambar 4.3 yang merupakan tampilan pengambilan data sensor ultrasonik pada layar monitor.
Gambar 4.3Tampilan pengambilan data sensor ultrasonik
Data diambil dengan posisi sensor ultrasonik tegak lurus terhadap objek yang ada di depannya. Tabel 4.1 menunjukkan data hasil pengukuran. Kolom pertama adalah jarak yang kita tetapkan antara sensor dengan dinding. Kolom kedua dan ketiga adalah waktu dan jarak yang didapatkan dari hasil pengukuran seperti pada gambar 4.3.
Tabel 4.1Hasil pengukuran sensor ultrasonik
Jarak (cm) Hasil Pengukuran Error (cm) Perhitungan Waktu (uS) Jarak (cm) Jarak (cm)
10 626 10.78 0.78 10.78
20 1172 20.18 0.18 20.18
30 1770 30.48 0.48 30.48
40 2362 40.67 0.67 40.67
50 2927 50.41 0.41 50.41
60 3506 60.38 0.38 60.38
70 4097 70.56 0.56 70.56
80 4590 79.05 0.05 79.05
90 5225 89.98 0.98 89.98
100 5849 100.72 0.72 100.72
150 8736 150.45 0.45 150.45
200 11631 200.30 0.30 200.30
250 14549 250.55 0.55 250.55
(66)
66 Jarak hasil perhitungan didapatkan dari:
Jarak =
• 034 . 29 ) 8 . 0 ( 2
1 t x
cm Keterangan :
Jarak : Besarnya jarak antara sensor dengan objek (cm) t : Didapatkan dari hasil pengukuran sensor ( S) 0.8 : Konstanta konversi waktu untuk mode BS2P ke S 29.034 S : Waktu balikan lebar pulsa menempuh jarak 1 cm.
½ : pengambilan waktu hanya waktu kembalinya suara (echo) ke Rx sensor
Data pada tabel 4.1 rata – rata error dari sensor ultrasonik sebesar 0.5 cm masih dalam batas kewajaran, karena perubahan data yang dihasilkan bersifat
fluktuatif dengan nilai error tertinggi sebesar 0.98 cm pada jarak 90 cm dan nilai error terendah sebesar 0.05 pada jarak 80 cm.
ATMEGA 128 Dinding s o u n d d u m p e r D in d in g 50 cm ATMEGA 128
Dinding sound dumper
D in d in g 50 cm
(a) (b)
Gambar 4.4a. Posisi Sound Dumper didepan sensor ultrasonik.
b. Posisi Sound Dumper disamping sensor ultrasonik.
Gambar 4.4(a) menunjukkan posisi sensor ultrasonik terhadap sound dumper yang dipasang tegak lurus didepan dinding. Hasil pengukuran menunjukkan, ketika jarak yang ingin diukur sejauh 50 cm tetapi jarak hasil pengukuran menunjukkan 49 cm. Hal ini berarti bacaan sensor kekurangan 1 cm,
(67)
67 kekurangan disebabkan karena adanya penebalan dinding oleh sound dumper, tebal dari sound dumper itu sendiri adalah 1 cm, dalam hal ini sensor tidak terganggu oleh sound dumper jika ditempatkan didepan sensor. Akan tetapi jika posisi sound dumper disamping sensor ultrasonik, pada pengukuran dengan jarak 50 cm, hasil bacaan menjadi 35 cm, hal ini menunjukkan error yang sangat besar, oleh karena itu untuk mengatasi error ini adalah penempatan sensor ultrasonic yang tidak tergangu oleh sound dumper. Gambar 4.5(a) merupakan hasil pengukuran dengan posisi sound dumper di depan sensor ultrasonik, sedangkan gambar 4.5(b) adalah hasil pengukuran dengan posisi sound dumper di samping sensor ultrasonik
(a) (b)
Gambar 4.5(a) Tampilan pengukuran Posisi Sound Dumper didepan sensor
(b) Tampilan hasil pengukuran Posisi Sound Dumper disamping sensor
4.2. Pendeteksian Garis Putih Menggunakan Sensor Lantai
Pengujian sensor lantai dilakukan terhadap 2 komponen sensor pengirim cahaya yang berbeda yaitu LED super bright dan infra-merah. Hal ini dilakukan untuk mendapatkan modul sensor lantai yang sesuai yaitu hanya akan aktif apabila ada garis yang berwarna putih, dan tidak aktif apabila mengenai warna hitam dan hijau
(68)
68 1. Menggunakan LED super bright putih.
Berikut adalah data hasil penggujian sensor lantai menggunakan LED super bright putih sebagai media pengirim cahaya.
Tabel 4.2Hasil pengujian sensor Lantai menggunakan LED super putih
2. Menggunakan Infra-merah
Berikut adalah data hasil penggujian sensor lantai menggunakan Infra- merah sebagai media pengirim cahaya.
Tabel 4.3Hasil pengujian sensor lantai menggunakan Infra-merah
Ket : Sensor lantai aktif = low
Berdasarkan tabel pengujian di atas sensor lantai yang menggunakan LED super bright putih lebih handal dari pada sensor lantai yang menggunakan infra-merah, sensor lantai yang menggunakan LED super bright putih hanya akan aktif pada kertas warna putih, sedangkan sensor lantai yang menggunakan infra-merah aktif pada kertas putih dan karpet hijau.
Sensor lantai akan mendeteksi garis putih yang berada di area home, di depan pintu ruangan, dan di area sekitar lilin.
media penguji Sinyal
Kertas putih Low Lantai hitam High Karpet abu-abu High
media penguji Sinyal
Kertas putih Low Lantai hitam High Karpet abu-abu Low
(69)
69 4.3. Pencarian titik api menggunakan sensor UVtron
Sensor api yang digunakan menggunakan sensor UVtron, yang digunakan untuk mendeteksi keberadaan api di ruangan.
Output dari sensor UVtron berupa pulsa. Pulsa yang disediakan 3, 5, 7, dan 9 pulsa yang bisa dihasilkan dalam interval waktu kurang dari 2 detik. Untuk menguji sensor UVtron, dilakukan pengecekan data 1 dan menjumlahkan banyaknya data 1 tersebut dalam interval waktu tertentu.
Dengan instruksi ini kita bisa menentukan keberadaan api dalam suatu ruangan. Prosedur berikut digunakan untuk mengetahui keberadaan api di dalam ruangan.
$regfile = "m64def.dat" $crystal = 16000000 $baud = 9600
Uvtron Alias Pind.5 Dim Datauv As Word Dim Lama As Word Dim Kali As Word Do
Gosub Apiuvtron
Print " tes uvtron " Print "==============================="
Print "Datauv : " ; Datauv Print
Print "================================" Loop
End
Apiuvtron: Datauv = 0 Kali = 0 Do
Lama = 0 Do
If Uvtron = 1 Then Incr Lama
Incr Datauv Do
Loop Until Uvtron = 0 Else
Incr Lama End If
Loop Until Lama = 10000 Incr Kali
Loop Until Kali = 9 Return
(70)
70 Program di atas digunakan untuk mengetahui bahwa di ruangan ada api. Variabel uvtron digunakan sebagai variabel port data input pada pind.5,
sedangkan datauv digunakan sebagai variabel untuk menyimpan hasil
menghitung (count) siklus. Lamanya pengambilan data selama 90000 kali perulangan dengan bahasa BASCOM AVR, atau jika diukur dengan stop watch selama 500 ms.
Gambar 4.6 Tampilan pengambilan data UVtron
Gambar 4.7 Posisi lilin terhadap UVtron
Gambar 4.15 menunjukkan posisi lilin terhadap UVtron. Lilin dikatakan berada pada sudut nol derajat (00) jika diletakkan di depan sensor UVtron. Pengukuran berikutnya dilakukan terhadap lilin yang diletakkan pada sudut 150, 300, 450, 600 dan 900 yang secara berturut-turut digeser ke arah kanan UVtron.
00 90
(71)
71 Tabel 4.4 adalah tabel hasil pengukuran respon sensor UVtron terhadap keberadaan nyala lilin berdasarkan jarak dan sudut.
Tabel 4.4Hasil pengukuran jumlah siklus UVtron
Sudut Jarak (cm) Count Sudut Jarak (cm) Count
00
25 6
450
25 5
50 5 50 4
75 3 75 3
100 3 100 2
125 2 125 2
150 2 150 2
150
25 5
600
25 5
50 3 50 4
75 3 75 3
100 3 100 3
125 2 125 2
150 2 150 2
300
25 6
900
25 2
50 4 50 1
75 3 75 1
100 3 100 1
125 2 125 1
150 2 150 1
Dari tabel 4.4 dapat ditentukan jumlah siklus yang dapat menentukan keberadaan api yang berada dalam suatu ruangan. Api akan dianggap berada dalam suatu ruangan jika jumlah counter lebih dari 0 (datauv>=1).
(72)
72 4.4 Penentuan kecepatan motor
Dalam melakukan aksinya, pergerakan robot haruslah selalu stabil dan konstan, gerakan-gerakan yang sering dilakukan oleh robot seperti maju lurus, belok kanan 900, belok kiri 900 harus selalu tepat sehingga menghasilkan pergerakan yang sempurna. Untuk itu digunakan suatu komponen pengendali putaran motor yang bekerja secara close loop. Komponen ini berfungsi mengatur putaran motor agar tetap stabil dan konstan ketika robot sedang melakukan aksinya mencari dan memadamkan api serta menandai keberadaan bayi. Cara kerja dari kendali motor tersebut yaitu kendali motor akan mengkoreksi putaran dari motor dengan cara membaca frekuensi yang dihasilkan oleh optocoupler
yang membaca lingkaran plastik dengan pola hitam-transparan berselang, jika besarnya pulsa yang dihasilkan oleh optocoupler lebih besar dari frekuensi putaran yang diinginkan maka motor kontrol akan mengurangi kecepatan putaran motor. Demikian juga sebaliknya jika frekuensi bacaan optocoupler lebih kecil, maka kendali motor akan menambah kecepatan dari putaran motor.
Ketika terjadi perubahan catu daya yang digunakan untuk motor, hal tersebut akan mempengaruhi kinerja dari putaran motor. Namun dengan digunakannya kendali motor ini, perubahan catu daya yang digunakan tidak akan terlalu berpengaruh bagi kinerja motor, sampai catu daya yang digunakan sudah benar-benar tidak mampu mensuplai daya ke motor. Berikut ini adalah tabel hasil pengujian putaran motor dengan kendali motor, dimana catu daya yang digunakan untuk motor berubah-ubah dengan arah pergerakan putaran motor yaitu maju:
(73)
73 Ketika robot melakukan pergerakan belok-belok pengunaan motor kontrol berperan sangat penting agar ketepatan belok selalu terpenuhi. Berikut di bawah ini beberapa penggalan intruksi yang digunakan untuk melakukan pergerakan belok dari robot.
Open "coma.0:9600,8,n,1" For Output As #1 Open "coma.2:9600,8,n,1" For Output As #2
Print #1 , Chr(085) ; Chr(006) ; Chr(001) ; Chr(205) ; Chr(130) Print #2 , Chr(085) ; Chr(006) ; Chr(001) ; Chr(205) ; Chr(130) Variabel yang dikirimkan berturut-turut dalam intruksi serial di atas adalah
6 = count, mode yang digunakan untuk menghitung pulsa dari optocoupler
1 = FreqHigh, bit-bit tertinggi dari frekeunsi yang dikirimkan 205 = FreqLow , bit-bit terendah dari frekuensi yang dikirimkan 130 = Speed, kecepatan putaran untuk masing-masing motor
Dari intruksi di atas dapat diketahui bahwa motor akan berputar sebanyak 381 pulsa, baik motor kiri maupun motor kanan ke arah yang telah ditentukan. Kecepatan yang diberikan kepada masing-masing motor berbeda, dikarenakan masing-masing motor DC yang digunakan memiliki karakteristik yang berbeda. Pulsa sebanyak 381 didapatkan melalui Perhitungan sebagai berikut:
Jumlah Count = FreqHigh* 256 + FreqLow
Jadi jika nilai FreqHigh dan FreqLow dimasukan :
461 205 ) 256 * 1 ( ) 256 * ( = + = +
= FreqHigh FreqLow
count
Untuk membuktikan apakah jumlah count yang digunakan dapat menghasilkan gerakan belok kanan 90º dan belok kiri 90º, dilakukan percobaan sebanyak 10 kali dan dilihat apakah gerakannya telah benar atau belum. Tabel 4.6 adalah tabel keberhasilan gerakan belok kanan 90º dan belok kiri 90º :
(74)
74 Table 4.5 Keberhasilan algoritma belokkanan dan belokkiri
Pergerakan Percobaan Berhasil / Tidak Berhasil
belok kanan 90º
1 Berhasil
2 Berhasil
3 Berhasil
4 Berhasil
5 Berhasil
6 Berhasil
7 Berhasil
8 Berhasil
9 Berhasil
10 Berhasil
belok kiri 90º
1 Berhasil
2 Berhasil
3 Berhasil
4 Berhasil
5 Berhasil
6 Berhasil
7 Berhasil
8 Berhasil
9 Berhasil
10 Berhasil
Keberhasilan pegerakan belok-belok tersebut memiliki toleransi sekitar ± 10 º. Hal tersebut dikarenakan gaya gesek rantai robot terhadap lantai. Sehingga dengan toleransi tersebut pergerakan dianggap berhasil.
4.5 Penentuan arah robot menggunakan kompas
Pada robot, posisi pemasangan kompas diletakkan paling atas dari robot, yaitu sekitar 28,5 cm dari permukaan lantai atau 5 cm daripermukaan robot paling atas, hal ini dimaksudkan agar kompas tidak terpengaruh oleh medan magnetik dan medan listrik yang dihasilkan oleh motor DC dan komponen elektronika.
(75)
75 BASCOM AVR telah menyediakan intruksi PWM untuk mengontrol kompas yaitu instruksi Pulsein, listing programnya sebagai berikut :
Dim Sudut As Word
Kompas:
Pulsein Sudut , Ping , 1 , 1 Sudut = Sudut - 1000
Sudut = Sudut / 10 Print Sudut
Waitms 20 Return
Table 4.6 Hasil pengujian kompas sudut Sudut
terbaca error
0 0 0
15 16 1
30 29 1
45 43 2
60 62 2
75 75 0
90 88 2
105 104 1
120 116 4
135 131 4
150 148 2
165 166 1
180 179 1
sudut Sudut
terbaca error
195 195 0
210 214 4
225 227 2
240 241 1
255 257 2
270 273 3
285 283 2
300 298 2
315 314 1
330 331 1
345 343 2
360 359 1
(76)
4.6 Pengujian Alg
Pengujian algo telah dirancang telah adalah tabel pengujian api, dengan range teg range tegangan teruk merupakan batasan te
• Trial 1 Mode A
• Trial 2 Mode B
• Trial 3 Mode C
Algoritma dari Posisi HOME Hingga Memad
goritma dilakukan untuk mengetahui apakah lah sesuai dengan yang diinginkan atau belu
an algoritma, dari mulai HOME sampai denga tegangan terukur untuk mikrokontroler 11.2 V ukur untuk motor 22.4 V – 20.1 V. Range te tegangan yang digunakan.
e A
e B
e C
76 adamkan Api
h algoritma yang elum. Berikut ini gan memadamkan V – 10.5 V dan tegangan tersebut
(77)
77 BAB V
SIMPULAN DAN SARAN
5.1 Simpulan
Berdasarkan pengujian dan analisis dari sistem yang telah dirancang, maka dapat diperoleh beberapa simpulan, diantaranya :
1. Robot dengan bentuk dasar tank bisa digunakan untuk mengatasi kondisi lingkungan KRCI 2009 dan KRCI 2010
2. Sensor ultrasonik bisa tergangu dengan frekuensi yang sama dengan frekuensi sensor ultrasonik tersebut
5.2 Saran
Adapun saran-saran dari Penulis yang dapat dijadikan sebagai bahan pertimbangan dalam penelitian robot cerdas pemadam api lebih lanjut adalah :
1. Perlunya dibuat modul sensor ultrasonik yang frekuensinya tidak sama dengan alat-alat elektronik yang menggunakan ultrasonik yang ada dipasaran
(78)
PERANCANGAN DAN IMPLEMENTASI
ROBOT CERDAS PEMADAM API SENIOR BERODA DU114-V10 ( DIRANCANG UNTUK PERTANDINGAN KRCI 2010 )
LAPORAN PENGGANTI TUGAS AKHIR
Disusun untuk memenuhi syarat kelulusan pada
Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer Oleh :
WAHYU EKO PRASETYO 1.02.05.056
Pembimbing :
YUSRILA Y KERLOOZA, M.T. TAUFIQ NUZWIR NIZAR, S.Kom
JURUSAN TEKNIK KOMPUTER
FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS KOMPUTER INDONESIA
BANDUNG 2010
(79)
78
DAFTAR PUSTAKA
Lewis, F.L. & Frank Kreith, Ed. (1999). Mechanical Engineering Handbook. Boca Rato;CRC Press LLC
Malvino. (2001). Prinsip – Prinsip Elektronik, Edisi kedua. Jakarta: PT. Erlangga. McComb, Gordon. (2001). The Robot Bulider`s Bonanza. New York;McGraw-Hill
Holand, John M. (2004). Designing Mobile Autonomous Robot. Boston;Newnes Panitia Kontes Robot Cerdas Indonesia. (2007). Buku Panduan Kontes Robot
Cerdas Pemadam Api. Jakarta: Direktorat Jendral Pendidikan Tinggi.
Parallax, Inc (2006). PING)))™ Ultrasonic Distance Sensor. Diakses pada 19 Mei 2009dari World Wide Web:
http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf.
Williams, Jon. (2005). The Sheer Joy of Experimenting. Diakses pada 5 Juli 2009 dariWorld Wide Web:
http://parallax.com/dl/docs/cols/nv/vol6/col/nv118.pdf.
Susilo, Dedi. (2005). Robot Avoider. Diakses pada tanggal 15 Mei 2009 dari http://www.electroniclab.com/index.php?action=html&fid=54.
Anita Desiani & Muhammad Arhami. (2006). Konsep Kecerdasan Buatan.
Yogyakarta: Andi Offset
Agfianto Eko Putra. (2005). Pengendalian Mobile Robot (Mobot) dengan MOBOTSIM v1.0. Yogyakarta : Gava Media
Dosen Elektronika POLBAN. (2006). Modul Pelatihan Robot Cerdas Pemadam Api. Bandung: Politeknik Negeri Bandung.
Endra Pitowarno. (2006). ROBOTIKA : Desain, Kontrol, dan Kecerdasan Buatan. Yogyakarta : Andi Offset
Ibram. (2005). Prinsip Kerja Catu Daya Linier. Diakses pada tanggal 22 April 2009 dari http://www.electroniclab.com/index.php?action=html&fid=37. Lynxmotion, Inc. (1998). Dual H-Bridge DC Motor Driver. Diakses pada tanggal
(80)
i
KATA PENGANTAR
Assalamu’alaikum Wr.Wb
Puji syukur kita panjatkan kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya tugas akhir dengan judul “Perancangan dan Implementasi Robot Cerdas Pemadam Api Senior Beroda DU114-V10 (Dirancang Untuk Pertandingan KRCI 2010)” dapat diselesaikan tepat pada waktunya. Tugas akhir ini disusun untuk memenuhi salah satu syarat kelulusan, dalam menempuh pendidikan program Strata Satu (S1) pada Jurusan Teknik Komputer, program studi Ilmu Komputer Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia, serta mengikuti Kontes Robot Cerdas Indonesia 2010 yang diadakan oleh Direktorat Jenderal Pendidikan Tinggi tanggal 7-8 Mei 2010 di Politeknik Negeri Bandung.
Tugas Akhir mencakup perancangan perangkat keras dan implementasi algoritma kendali gerak robot agar dapat menemukan titik api, memadamkannya.
Penulis menyadari bahwa tugas akhir ini masih jauh dari kesempurnaan, mengingat keterbatasan pengetahuan, keilmuan, pengalaman serta referensi yang penulis miliki. Oleh karena itu, penulis mengharapkan kritik dan saran yang sifatnya membangun sehingga dapat menyempurnakan tugas akhir ini dimasa-masa yang akan datang.
Dalam penulisan tugas akhir ini tidak lepas dari bantuan berbagai pihak, sehingga pada kesempatan ini penulis ingin menyampaikan ucapan terima kasih kepada :
1. Kedua orang tua, Ibu dan Ayah tercinta yang telah banyak berkorban dalam membesarkan penulis, dan tak henti-hentinya memberikan perhatian, nasehat, serta motivasi selama studi. Semoga Allah SWT memberikan kemuliaan kepada keduanya baik di dunia maupun di akhirat kelak.., Amin
2. Bapak Dr. Ir. Eddy Suryanto Soegoto, M.Sc, selaku Rektor Universitas Komputer Indonesia
3. Bapak Wendi Zarman, M.Si selaku Ketua Jurusan Teknik Komputer Universitas Komputer Indonesia
(81)
ii
4. Bapak Yusrila Y. Kerlooza, M.T, selaku Pembimbing I yang telah banyak memberikan arahan, saran dan bimbingan kepada penulis.
5. Bapak Taufik Nuzwir Nizar, S.Kom, selaku Pembimbing II yang telah memberikan arahan dan bimbingan kepada penulis.
6. Bapak Ir. Syahrul, M.T, selaku dosen wali.
7. Bapak dan Ibu Dosen serta Seluruh Staff Administrasi di Jurusan Teknik Komputer Universitas Komputer Indonesia, yang telah banyak memberikan ilmu, wawasan, motivasi serta bimbingan dan bantuan kepada penulis.
8. Teman-teman dalam tim Senior Beroda( Rudi, Adi, Ridwanto, Yudha), terima kasih telah membantu penulis.
9. Teman-teman tim inti divisi robotika (Cucu, Galih, Rizal, Irwan, Sopiah, mei, Heri, Rifki, Malik, Ken) juga teman-teman Divisi Robotika lainnya, terus bekerja keras.
10.Teman-teman 05-TK-02, yang telah banyak membantu selama studi maupun selama proses penyelesaian Tugas Akhir.
11.Semua pihak yang telah banyak membantu dan tidak dapat penulis sebutkan satu persatu, terima kasih banyak atas bantuannya.
Akhir kata, semoga semua kebaikan yang telah diberikan oleh semua pihak kepada penulis, mendapatkan balasan yang setimpal dari Allah SWT, dan berharap semoga tugas akhir ini dapat bermanfaat bagi Kelompok Studi Robot Cerdas UNIKOM pada masa-masa yang akan datang, Amin..
Wassalamu’alaikum Wr.Wb.
Bandung, Agustus 2010
(82)
iii DAFTAR ISI
KATA PENGANTAR ... i
DAFTAR ISI ... iii
DAFTAR GAMBAR ... vi
DAFTAR TABEL ... ix
DAFTAR LAMPIRAN ... x
ABSTRAK ... xi
I. PENDAHULUAN 1.1. Latar Belakang ... 1
1.2. Maksud dan Tujuan ... 2
1.3. Batasan Masalah ... 2
1.4. Metodologi Penelitian ... 3
1.5. Sistematika Penulisan ... 4
II. LANDASAN TEORI 2.1. Pengertian Robot Senior Beroda ... 5
2.2. Perangkat Keras (Hardware) ... 5
2.2.1. Mikrokontroler ATmega64 ... 5
2.2.1.1 Deskripsi PIN ... 7
2.2.2. Sensor dinding ... 13
2.2.2.1 Sensor ultrasonik ... 14
2.2.3. Sensor Api ... 14
2.2.3.1 UVtron ... 15
2.2.4. Modul Penggerak ... 15
2.2.4.1 Transistor ... 16
2.2.4.2 IC Motor Driver ... 17
2.2.4.3 Modul Kendali Motor ... 18
2.2.4.4 Optocupler ... 19
(1)
vi
DAFTAR GAMBAR
Gambar 2.1 Diagram blok ATmega64 ... 7
Gambar 2.2 Konfigurasi pin ATmega64 ... 8
Gambar 2.3 Prinsip kerja ultrasonik ... 14
Gambar 2.4 (a) Tabung sensor UVtron; (b) modul interface-nya (kanan) .... 15
Gambar 2.5 Motor DC ... 16
Gambar 2.6 Konfigurasi H-Bridge ... 16
Gambar 2.7 IC L293 dan L298 ... 18
Gambar 2.8 Deskripsi pin ATtiny2313 ... 18
Gambar 2.9 Diagram blok sensor suara ... 20
Gambar 2.10 Baterai Ni-MH 2700mAh ... 22
Gambar 2.11 AVR910 ... 22
Gambar 2.12 CMPS03 ... 23
Gambar 2.13 Tampilan editor Bascom-AVR ... 25
Gambar 2.14 Tampilan programmer AVRprog ... 25
Gambar 3.1. Diagram Blok Sistem ... 27
Gambar 3.2. Sensor ultrasonik PING))) ... 30
Gambar 3.3. Cara kerja sensor ultrasonik ... 31
Gambar 3.4. Skema modul interface sensor Uvtron ... 32
Gambar 3.5. Tabung UV-Tron yang telah terselubungi karton ... 32
Gambar 3.6. Rangkaian motor driver L298N ... 33
Gambar 3.7. Rangkaian dari Optocoupler ... 35
Gambar 3.8. (a) Lingkaran plastik dengan pola tertentu ... 35
(b) Rangkaian internal optocoupler dan bentuk fisik Optocoupler ... 35
Gambar 3.9. Diagram blok modul penggerak ... 36
Gambar 3.10. (a). Spuyer;(b). Motor pump; (c). Kipas pemadam ... 37
Gambar 3.11. Rangkaian penghasil suara ... 38
(2)
vii
Gambar 3.13. Rangkaian penerima bagian filter ... 39
Gambar 3.14. (a) IC Regulator; (b) kapasitor polar ... 40
Gambar 3.15. Schematic regulator 5 volt dengan LM2940 ... 41
Gambar 3.16. Schematic regulator 5 volt dengan LM2575 ... 41
Gambar 3.17. Salah satu denah lapangan dan nomor ruangan ... 44
Gambar 3.18. Salah satu denah lapangan dan nomor ruangan ... 45
Gambar 3.19. Diagram alir program utama robot Mode A ... 46
Gambar 3.20. Diagram alir program utama robot Mode B dan C... 47
Gambar 3.21. (A) Diagram alir prsedur keruang 1 ... 48
(B) Diagram alir prsedur keruang 2 ... 48
(C) Diagram alir prsedur keruang 4 ... 48
Gambar 3.22. (A) Diagram alir prsedur keruang 5 ... 49
(B) Diagram alir prsedur keruang 6 ... 49
Gambar 3.23. Diagram alir prosedur dari ruang 1 ... 50
Gambar 3.24. Diagram alir prosedur dari ruang 2 ... 51
Gambar 3.25. Diagram alir prosedur dari ruang 3 ... 52
Gambar 3.26. Diagram alir prosedur dari ruang 6 ... 53
Gambar 3.27. Diagam alir prosedur matikan api ruang 1, 2,4, 5, 6 ... 54
Gambar 3.28. Diagram alir prosedur matikan api ruang 3 ... 55
Gambar 3.29. Diagram alir susurkanan dan susurkiri ... 56
Gambar 3.30. Diagram alir prosedur samakan ... 57
Gambar 3.31. Diagram alir prosedur samakanbelakang ... 58
Gambar 3.32. Diagram alir prosedur samakankanan ... 59
Gambar 3.33. Diagram alir prosedur samakankiri ... 60
Gambar 4.1 Cara kerja sensor ultrasonik ... 63
Gambar 4.2 Posisi pengujian sensor ultrasonik ... 64
Gambar 4.3 Tampilan pengambilan data sensor ultrasonik ... 65
Gambar 4.4 (a). Posisi Sound Dumper didepan sensor ultrasonik. ... 66
(3)
viii
Gambar 4.5 (a) Tampilan pengukuran Posisi Sound Dumper didepan
sensor ... 67
(b) Tampilan hasil pengukuran Posisi Sound Dumper disamping sensor ... 67
Gambar 4.6 Tampilan pengambilan data UVtron ... 70
Gambar 4.7 Posisi lilin terhadap UVtron ... 70
(4)
ix
DAFTAR TABEL
Tabel 2.1 konfigurasi pin-pin mikrokontroler ATmega64 ... 9
Tabel 2.2 Tabel kebenaran konfigurasi H-Bridge ... 17
Tabel 2.3 konfigurasi pin-pin mikrokontroler ATtiny2313 ... 19
Tabel 2.4 Beberapa instruksi dasar BascomAVR ... 24
Tabel 3.1 Pin-pin I/O yang digunakan pada ATmega64 ... 28
Tabel 3.2 Tabel kebenaran untuk satu motor ... 34
Tabel 4.1 Hasil pengukuran sensor ultrasonik ... 65
Tabel 4.2 Hasil sensor lantai menggunakan LED super putih ... 68
Tabel 4.3 Hasil sensor lantai menggunakan infra-merah ... 68
Tabel 4.4 Hasil pengukuran jumlah siklus UVtron ... 71
Tabel 4.5 Keberhasilan algoritma belokkanan dan belokkiri ... 74
(5)
x
DAFTAR LAMPIRAN
Lampiran A : Penjelasan peraturan Kontes Robot Cerdas Indonesia 2010 Lampiran B : Rangkaian Rangkaian
Lampiran C : Listing program Lampiran D : Datasheets
(6)
xi ABSTRAK
Penelitian mengenai teknologi robot telah banyak dikembangkan, karena robot berguna untuk membantu kepentingan-kepentingan manusia misalnya, untuk pekerjaan yang memerlukan ketelitian tinggi pada bidang perindustrian, melakukan pekerjaan dengan resiko bahaya yang tinggi ataupun melakukan pekerjaan yang membutuhkan tenaga besar dan sebagainya. Robot Cerdas Pemadam Api dibuat sebagai salah satu simulasi bentuk robot dalam skala kecil dimana robot tersebut bertugas mencari api dalam suatu ruangan dan kemudian mematikannya.
Robot yang dirancang akan menggunakan sensor jarak yaitu ; ultrasonik, sensor api ;Uvtron, menggunakan 2 sistem pemadam api yaitu, air dan kipas, DC (Direct Current) motor sebagai penggerak putaran roda dengan IC (Integreted Circuits) L298 sebagai driver motor dan kendali motor yang dikontrol secara close loop, yang berfungsi mengatur putaran dari DC motor, yang kesemuanya itu dihubungkan ke dalam satu sistem kontrol, yaitu menggunakan mikrokontroler ATmega64. Robot tersebut dapat berjalan secara autonomous tanpa kendali manual dan dalam pengaktivasiannya digunakan sensor suara dengan frekuensi yang telah ditetapkan oleh panitia KRCI yang berkisar antara 3-4 KHz.
Hasil perancangan yang dilakukan pada penelitian ini terbukti cukup baik dalam hal kecepatan serta pemadaman api di arena yang telah ditentukan.
Kata kunci : ATmega64, robot pemadam api