i
TUGAS AKHIR
APLIKASI SENSOR
THERMAL ARRAY
TPA81 PADA
ROBOT PEMADAM API
Diajukan Untuk Memenuhi Syarat Memperoleh Gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Fakultas Sains dan Teknologi Universitas Sanata Dharma
Disusun oleh: ALDINOVA SAMUEL
NIM : 065114032
PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
THERMAL ARRAY TPA81 SENSOR APPLICATION
ON THE FIRE FIGHTING ROBOT
Presented as a Partial Fulfillment of the Requirements for S1 Degree in Electrical Engineering Department, Faculty of Science and Technology, Sanata Dharma University
by:
ALDINOVA SAMUEL Student Number : 065114032
ELECTRICAL ENGINEERING DEPARTMENT FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
“Kalau telah berusaha keras tetapi menemui kegagalan terus menerus, maka
jangan pernah berhenti mencoba. Karena kegagalan yang sebenarnya adalah
apabila berhenti untuk mencoba”
“
Apabila di dalam diri seseorang masih ada rasa malu dan takut untuk berbuat
suatu kebaikan, maka jaminan bagi orang tersebut adalah tidak akan
bertemunya ia dengan kemajuan selangkah pun. ~ Bung Karno
”
“
Banyak kegagalan dalam hidup ini dikarenakan orang-orang tidak menyadari
betapa dekatnya mereka dengan keberhasilan saat mereka menyerah. ~
Thomas Alva Edison
”
Tugas Akhir ini kupersembahkan untuk….
Bapa di Surga yang selalu membimbingku
viii
INTISARI
Kontes Robot Cerdas Indonesia (KRCI) adalah suatu kontes robot tingkat nasional yang diikuti oleh hampir seluruh perguruan tinggi di Indonesia. Pada KRCI 2011 dipertandingkan dua divisi yaitu divisi beroda dan divisi battle. Divisi beroda mempertandingkan robot yang bertugas untuk memadamkan lilin dalam sebuah model denah rumah. Robot bertugas untuk mencari lilin yang sudah ditempatkan pada salah satu ruangan dalam model tersebut.
Pada penelitian ini, penulis membahas tentang sensor Thermal Array TPA81 sebagai salah satu sensor yang umum digunakan dalam Kontes Robot Cerdas Indonesia sebagai sensor pendeteksi api. Dengan pengujian pemindaian titik api dalam sebuah ruangan melalui variasi dari jarak, sudut dan pemberian halangan akan menghasilkan karakteristik dari sensor TPA81. Pengambilan dan pengolahan data menggunakan mikrokontroller ATmega32,dan data ditampilkan menggunakan LCD 16×32. Setelah diketahui keberadaan dari api lilin maka pemadaman api dilakukan dengan menggunakan penyemprot air yang dibantu dengan Motor Servo agar area penyemprotan lebih luas.
Sensor Thermal Array TPA81 telah diimplementasikan pada robot pemadam api dan telah diuji. Sensor thermal array berhasil memindai api dalam ruangan dari jarak 3cm sampai dengan 210cm dan sudut 6° sampai dengan 10°. Namun robot belum bisa memadamkan api dengan baik.
ix
ABSTRACT
Indonesian smart robot contest is a robot contest in a national level which been follow by almost all of university in Indonesia. On KRCI 2011 being competed two division, that is wheeled division and battle division. On wheeled division, two robot compete to extinguish fire in a model house. The robot will be in charge to find out a candle placed in a model house.
In this research, writer discuss about Thermal Array TPA81 sensor as a one of a sensor usually use in a robotic contest as a fire detector sensor. In a fire scanning test in a room through a variation from a distance, angle and an obstacle will produce a
characteristics from the TPA81 sensor. Taking and processing the data using a Atmega 32 controller and the data shown using 16x32 LCD screen. After known the presence of the fire from the candle, then the fire extinction do using a water sprayers helped by a servo motor for a wider spraying area.
The thermal array sensor has been implemented on the fire fighting robot and tested. The thermal array sensor was able to scan fire in a room from distance 3cm to 210cm and from 6° until 10°. But the robot was not able to extinguish the fire.
x
KATA PENGANTAR
Ucapan syukur dan terima kasih kepada Tuhan Yesus Kristus atas segala penyertaan
dan bimbingannya sehingga tugas akhir dengan judul “APLIKASI SENSOR THERMAL ARRAY TPA81 PADA ROBOT PEMADAM API” ini dapat diselesaikan dengan baik.
Selama menulis tugas akhir ini, penulis menyadari bahwa ada begitu banyak pihak yang telah memberikan bantuan dengan cara masing-masing, sehingga tugas akhir ini bisa diselesaikan. Oleh karena itu penulis ingin mengucapkan terimakasih kepada :
1. Orangtua dan adik-adik ku tercinta atas doa dan kesabarannya.
2. Bapak Martanto,S.T.,M.T., selaku pembimbing yang penuh kesabaran memberikan saran dan kritik yang membantu penulis menyelesaikan tulisan ini.
3. Ibu Prima Ari Setiyani selaku pembimbing akademik Teknik Elektro yang telah banyak memberikan saran dalam pembuatan tulisan ini.
4. Ibu Wuri Harini sebagai ketua jurusan Teknik Elektro yang telah banyak memberikan saran dalam pembuatan tulisan ini.
5. Bapak Tjendro selaku dosen Teknik Elektro yang telah banyak memberikan saran dalam pembuatan tulisan ini.
6. Teman-temanku sekalian, Christian Andi sebagai kakak pertama dan Yohanes Osie Handoyo sebagai kakak kedua yang banyak memberikan dorongan dan semangat juga memberikan pinjaman jas untuk ujian.
7. Seluruh dosen dan laboran teknik elektro yang memberikan ilmu dan pengetahuan selama kuliah, dan pihak-pihak lain yang tidak dapat disebutkan satu persatu yang telah membantu penulis.
Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini sangat diharapkan. Akhir kata, semoga tugas akhir ini dapat bermanfaat bagi semua pihak. Terima Kasih
Yogyakarta, 18 Oktober 2011
xi
DAFTAR ISI
Halaman
HALAMAN JUDUL ... i
HALAMAN PERSETUJUAN ... ii
HALAMAN PENGESAHAN ... iii
PERNYATAAN KEASLIAN KARYA ... iv
HALAMAN PERSEMBAHAN DAN MOTO HIDUP ... v
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vi
xii
2.3. Mikrokontroller ATmega32 ... 11
xiii
BAB IV. HASIL DAN PEMBAHASAN ... 37
4.1. Hasil Pengujian Plant ... 37
4.2. Hasil Pengujian Plant Terhadap Gangguan ... 43
4.3. Tampilan Pada LCD ... 45
4.4. Pengujian Pemadaman Api ... 45
4.3.1. Kecepatan Pemindaian Sensor ... 46
4.3.2. Pengecekan Ruangan ... 46
4.3.3. Pemadaman Api ... 46
4.5. Pengujian Driver Motor DC ... 48
BAB V. KESIMPULAN DAN SARAN ... 49
DAFTAR PUSTAKA ... 50
xiv
DAFTAR GAMBAR
Halaman
Gambar 2.1 Sudut pandang TPA81 [1] ... 4
Gambar 2.11 Regulator dengan eksternal pass transistor [6] ... 15
Gambar 2.12 Rangkaian Driver Pompa Air DC [8] ... 16
Gambar 3.3 Skematik minimum sistem ATmega32 ... 27
Gambar 3.4 Pengkabelan jalur I2C ... 28
Gambar 3.5 Skematik driver motor penyemprot ... 28
Gambar 3.6 Regulator dengan Eksternal pass transistor ... 29
xv
Gambar 3.8 Rancangan Penggerak robot ... 31
Gambar 3.9 Flowchart Robot Fire Fighter ... 32
Gambar 3.10 Flowchart Pengecekan Ruangan ... 34
Gambar 3.11 Flowchart Sub Sistem TPA81[1] ... 36
Gambar 4.1 Bentuk Robot yang Digunakan ... 37
Gambar 4.2 Grafik Pengujian dengan sudut titik api 0˚ terhadap robot 38
Gambar 4.3 Grafik Pengujian dengan sudut titik api 10˚ terhadap robot 39 Gambar 4.4 Grafik Pengujian dengan sudut titik api 20˚ terhadap robot 40 Gambar 4.5 Grafik Pengujian dengan sudut titik api -10˚ terhadap robot 40 Gambar 4.6 Grafik Pengujian dengan sudut titik api -20˚ terhadap robot 41 Gambar 4.7 Skema Pengujian Pemindaian Titik Api dengan Halangan 43 Gambar 4.8 Grafik Pengujian dengan halangan ... 44
Gambar 4.9 Hasil tampilan LCD ... 45
xvi
DAFTAR TABEL
Halaman
Tabel 2.1 Register pada TPA81 [1] ... 5
Tabel 2.2 Deskripsi pin LCD ... 18
Tabel 4.1 Pengujian dengan sudut titik api 0˚ terhadap robot ... 38
Tabel 4.2 Pengujian dengan sudut titik api 10˚ terhadap robot ... 39
Tabel 4.3 Pengujian dengan sudut titik api 20˚ terhadap robot ... 39
Tabel 4.4 Pengujian dengan sudut titik api -10˚ terhadap robot ... 40
Tabel 4.5 Pengujian dengan sudut titik api -20˚ terhadap robot ... 41
Tabel 4.6 Sudut dan Pixel yang mendeteksi ... 42
Tabel 4.7 Pengujian dengan halangan ... 44
1
BAB I
PENDAHULUAN
1.1
Latar Belakang
Kontes Robot Cerdas Indonesia (KRCI) adalah suatu kontes robot tingkat nasional
yang diikuti oleh hampir seluruh perguruan tinggi di Indonesia.Pada KRCI 2010
dipertandingkan dua divisi yaitu divisi beroda dan divisi battle.Divisi beroda
mempertandingkan robot yang bertugas untuk memadamkan lilin dalam sebuah model denah
rumah.Robot bertugas untuk mencari lilin yang sudah ditempatkan pada salah satu ruangan
dalam model tersebut.
Sebagai pendeteksi keberadaan api, robot dilengkapi dengan sensor api. Pada robot
dapat digunakan satu atau lebih sensor api untuk mendapatkan pembacaan yang akurat. Sensor
yang umum dipakai adalah UVTron dan Thermal Array TPA81. Masing-masing sensor
memiliki karakteristik pembacaan api yang berbeda satu dengan yang lainnya.
Pada penelitian ini penulis memilih sensor TPA81karena bila dibandingkan dengan
UVTron, sensor ini memiliki beberapa kelebihan, sebagai contoh adalah dari dimensi sensor
TPA81yang lebih kecil yang memberikan keuntungan dalam penempatannya pada robot.
Salah satu kelebihanlain sensor jenis Thermal Array TPA81dengan sensor api jenis
lain, sebagai contoh UVTron adalah sensor Thermal Array TPA81dapat mendeteksi suhu pada
8 titik sekaligus.Hal ini dikarenakan didalam TPA81terdapat 8 buah sensor Thermopile yang
masing-masing memiliki sudut pandang (Field of View) tertentu[1].Kelebihan lain dari sensor
ini adalah sensor ini menggunakan jalur komunikasi data teknologi I2C (Inter Intergrated
Circuit) yang hanya menggunakan dua buah kabel saja yaitu SDA untuk jalur data dan
SCKuntuk jalur clock.Penggunaan jalur komunikasi I2C sangat menguntungkan apabila
sensor akandihubungkan ke microcontroller, TPA81dapat dipasang sebanyak 8 buah secara
paralel tanpa menambah jalur komunikasi.Selain dapat mengeluarkan data suhu,TPA81juga
2
Dalam proses pemadaman api, penyemprot menggunakan motor DC sebagai
penyemprot air. Pergerakan penyemprot air dibantu dengan motor servo. Hal ini dimaksudkan
agar area penyemprotan lebih luas, sehingga api padam.
1.2
Tujuan dan Manfaat
Tujuan dilakukan penelitian ini adalah mendapatkan karakteristik dari sensor TPA81
dalam pembacaan api pada robot pemadam api.
Manfaat dari penelitian ini adalah
a) Untuk melakukan pembacaan api yang akurat.
b) Dapat digunakan sebagai referensi oleh mahasiswa lain untuk mengembangkan
kreatifitas yang berhubungan dengan sensor api.
1.3
Batasan Masalah
Batasan masalah pada penelitian ini adalah :
a) Sensor api menggunakan Thermal Array TPA81.
b) Jalur penghubung antara sensor Thermal Array TPA81 menggunakan sistem jalur
komunikasi I2C.
c) Mikrokontroller ATMega 32
d) MotorServoTower Pro SG-5010digunakan sebagai penggerak penyemprot.
e) Penyemprot air menggunakan pompa air DC.
1.4
Metodologi Penelitian
Metode yang digunakan dalam penelitian adalah mengumpulkan referensi dari
berbagai sumber, buku literatur, internet dan sebagainya. Kemudian menyusun perancangan
dan melakukan serangkaian percobaan untuk menguji hasil rancangan.
Pengujian dilakukan dengan memberikan gangguan pada sistem dengan cara merubah
posisi letak api terhadap sensor, jarak, sudut, halangan, menguji kecepatan baca sensor
terhadap perubahan posisi letak api dan pengujian terhadap pompa dan driver motor.
Hasil yang ingin dicapai adalah menghasilkan suatu data karakteristik pembacaan api
3
1.5
Sistematika Penulisan
Tugas Akhir ini memiliki sistematika penulisan sebagai berikut:
BAB I : Pendahuluan
BAB ini berisi latar belakang penelitian, tujuan dan manfaat penelitian, batasan
masalah, metodologi penelitian dan sistematika penulisan.
BAB II : DASAR TEORI
BAB ini berisi tentang studi pustaka landasan teori penelitian Sensor api Thermal
Array TPA81, Sistem jalur komunikasi I2C, Mikrokontroller ATMega 32, MotorServoTower
Pro SG-5010, driver motor DC yang digunakan sebagai pompa penyemprot air.
BAB III : RANCANGAN PENELITIAN
BAB ini berisi tentang diagram blok perancangan, perancangan perangkat keras
(Hardware) dan perancangan perangkat lunak (Software) dari peralatan yang akan dibuat.
BAB IV : HASIL DAN PEMBAHASAN
BAB ini berisi tentang hasil perancangan perangkat keras, data hasil pengujian,
analisis data dan pembahasan.
BAB V : KESIMPULAN DAN SARAN
BAB ini berisi tentang kesimpulan akhir dan saran-saran penulis tentang alat
4
BAB II
DASAR TEORI
2.1
Sensor Api
Thermal Array TPA81
2.1.1
Karakteristik
Thermal Array
TPA81 [1]
TPA81 dapat mendeteksi sinar inframerah dengan panjang gelombang 2µm-22µm
(1mikrometer = sepersejuta meter)[1]. Panjang gelombang ini dihasilkan oleh benda-benda
yang panas.Oleh karena yang dideteksi adalah radiasi panasnya saja, maka TPA81 dapat
mengukur suhu panas tanpa harus menyentuh sumber panas. Sebagai gambaran, TPA81 dapat
mendeteksi suhu api lilin dalam jarak 2 meter tanpa terpengaruh cahaya ruangan.
2.1.2
Field of View (FOV)
TPA81dapat mendeteksi suhu pada 8 titik sekaligus. Karena didalam TPA81 terdapat 8
buah sensor thermophile yang masing-masing memiliki sudut pandang (Field of View) 5,12˚
terhadap sumbu horizontal dan 6˚ terhadap sumbu vertikal. Jadi dapat dilihat dari gambar 2.1
total sudut pandangnya adalah 41˚ pada posisi horizontal dengan 6˚ pada posisi vertical.
5
2.1.3
Jalur Komunikasi [1]
Jalur komunikasi data TPA81 menggunakan teknologi I2C (Inter-Intergrated Circuit)
yang menggunakan 2 kabel saja yaitu SDA untuk jalur data dan SCK untuk jalur clock. Jika
dihubungkan dengan Mikrokontroller, TPA81 dapat dipasang paralel sebanyak 8 buah tanpa
menambahkan jalur komunikasi. Hanya perlu menambahkan resistor pull-up 1K8 pada jalur
SDA dan SCK. Selain dapat mengeluarkan data suhu, TPA81 dapat juga mengendalikan
sebuah motor servo.
Gambar 2.2. Konfigurasi Pin TPA81 [1]
2.1.4
Register [1]
Didalam TPA81 terdapa 10 buah register yang dapat kit abaca maupun kita tulisi, yaitu
Tabel 2.1 Register pada TPA81 [1]
Register Read Write
0 Software Revision Command Register
1 Ambient Temperature Servo Range
2 Pixel 1 Temperature ˚C N/A
3 Pixel 2 Temperature ˚C N/A
4 Pixel 3 Temperature ˚C N/A
6
Tabel 2.1 (Lanjutan) Register pada TPA81 [1]
Register Read Write
6 Pixel 5 Temperature ˚C N/A
7 Pixel 6 Temperature ˚C N/A
8 Pixel 7 Temperature ˚C N/A
9 Pixel 8 Temperature ˚C N/A
Hanya register 0 dan 1 yang dapat ditulisi. Register 0 adalah command register yang
digunakan untuk mengatur posisi servo dan untuk mengubah addressTPA81. Register ini tidak
bisa dibaca. Membaca register 0 akan menghasilkan pembacaan Software Revision. Menulisi
Register 1 akan mengatur range servo. Membaca register 1 akan membaca suhu ambient.
Ada 9 suhu yang bisa dibaca, semuanya dalam derajat celcius (˚C). Register 1
menyimpan suhu ambient yang dibaca sensor. Register 2-9 adalah 8 pixel suhu. Pembacaan
suhu akan akurat setelah 40ms sensor mengarah pada posisi baru.
2.2
Sistem jalur komunikasi I2C
2.2.1
Latar Belakang dan Konsep I2C
Tujuan dari pembuatan desain jalur komunikasi I2C adalah agar didapatkan desain
elektronikringkas dan fleksibelsehingga ukuran fisik IC diperkecil dan jumlah pin
diminimalkan[2].
Perusahaan semikonduktor mengembangkan cara baru komunikasi antar IC yang lebih
akomodatif terhadap tuntutan diatas, maka sebagai alternatif dari hubungan antar IC secara
paralel (parallel bus). Salah satu metode adalah IIC (sering ditulis juga I2C) singkatan dari
Inter Integrated Circuit bus dikembangkan oleh Philips Semiconductor 1992.
konsep dasar komunikasi 2 arah antar IC dan/atau antar sistem secara serial
menggunakan 2 kabel.Sistem bus Inter-IC, yang umumnya dikenal sebagai bus I2C, adalah
7
sebuah sistem dengan menggunakan pin yang sangat sedikit. Sistem ini dikembangkan oleh
Philips pada awal tahun 1980-an, bus dua kabel sederhana ini dengan bantuan sebuah protokol
software-defined telah menjadi standar di seluruh dunia untuk sistem kontrol mengenai
berbagai macam hal mulai sensor temperatur sampai dengan EEPROM, general-purpose I/O,
A/D and D/A converters, dan semua jenis microprocessors.
Gambar 2.3 menunjukkan implementasi dari jalur I2C. Dengan I2C hanya
membutuhkan dua jalur untuk berkomunikasi antar perangkat. Kita tidak memerlukan address
decoder untuk mengimplementasi jalur I2C. Dua jalur tersebut adalah SDA (Serial
Data) danSCL (Serial Clock). SCL merupakan jalur yang digunakan untuk mensinkronisasi
transfer data pada jalur I2C, sedangkan SDA merupakan jalur untuk data[3]. Beberapa
perangkat dapat terhubung ke dalam jalur I2C yang sama dimana SCL dan SDA terhubung ke
semua perangkat tersebut, hanya ada satu perangkat yang mengontrol SCL yaitu perangkat
master. Jalur dari SCL dan SDA ini terhubung dengan pull-up resistor yang besar
resistansinya tidak menjadi masalah (bisa 1K, 1.8K, 4.7K, 10K, 47K atau nilai diantara range
tersebut).
Gambar 2.3 Implementasi Jalur I2C [3]
Dengan adanya pull-up disini, jalur SCL dan SDA menjadi open drain, yang
maksudnya adalah perangkat hanya perlu memberikan output 0 (LOW) untuk membuat jalur
menjadi LOW, dan dengan membiarkannya pull-up resistor sudah membuatnya HIGH.
Umumnya dalam I2C ada satu perangkat yang berperan menjadi master (meskipun
dimungkinkan beberapa perangkat, dalam jalur I2C yang sama, menjadi master) dan satu atau
beberapa perangkat slave. Dalam jalur I2C, hanya perangkat master yang dapat mengontrol
jalur SCL yang berarti transfer data harus diinisialisasi terlebih dahulu oleh perangkat master
melalui serangkaian pulsa clock (slave tidak bisa, tapi ada satu kasus yang disebut
8
memberi data ke master dan menerima data dari master setelah server melakukan inisialisasi.
Misalkan mikrokontroler (uC) adalah perangkat master yang terhubung dalam satu I2C
dengan perangkat-perangkat slave seperti modul pengendali motor servo, modul kompas,
sensor TPA81 dan sensor lainnya.
Gambar 2.4 menunjukkan sinyal untuk start dan stop. Sebagaimana telah dijelaskan
sebelumnya, bahwa master terlebih dahulu menginisialisasi sebelum memulai transfer data
antara slave-nya. Inisialisasi diawali dengan sinyal START (transisi high ke low pada jalur
SDA dan kondisi high pada jalur SCL, lambang S pada gambar 2), lalu transfer data dan
sinyal STOP (transisi low ke high pada jalur SDA dan kondisi high pada jalur SCL, lambang P
pada gambar 2) untuk menandakan akhir transfer data.
Gambar 2.4 Gambar untuk sinyal Start dan Stop [3]
Gambar 2.5 menunjukkan transfer bit pada jalur I2C͘Banyaknya byte yang dapat
dikirimkan dalam satu transfer data itu tidak ada aturannya. Jika transfer data yang ingin
dilakukan sebesar 2 byte, maka pengiriman pertama adalah 1 byte dan setelah itu 1 byte. Setiap
byte yang di transfer harus diikuti dengan bit Acknowledge (ACK) dari si penerima,
menandakan data berhasil diterima. Byte yang dikirim dari pengirim diawali dari bit MSB.
Saat bit dikirim, pulsa clock (SCL) di set ke HIGH lalu ke LOW. Bit yang dikirim pada jalur
SDA tersebut harus stabil saat periode clock (SCL) HIGH. Kondisi HIGH atau LOW dari jalur
9
Gambar 2.5 Transfer Bit pada jalur I2C [3]
Gambar 2.6 menunjukkan data transfer pada jalur I2C. Setiap pulsa clock itu
dihasilkan (di jalur SCL) untuk setiap bit (di jalur SDA) yang ditransfer. Jadi untuk
pengiriman 8 bit akan ada 9 pulsa clock yang harus dihasilkan (1 lagi untuk bit ACK).
Kronologi sebelum perangkat penerima memberikan sinyal ACK adalah sebagai berikut: saat
pengirim selesai mengirimkan bit ke-8, pengirim melepaskan jalur SDA ke pull-up sehingga
menjadi HIGH. Saat kondisi tersebut terjadi, penerima harus memberikan kondisi LOW ke
SDA saat pulsa clock ke-9 berada dalam kondisi HIGH.
Gambar 2.6 Data Transfer Pada Jalur I2C[3]
Jika SDA tetap dalam kondisi HIGH saat pulsa clock ke-9, maka ini didefinisikan
sebagai sinyal Not Acknowledge (NACK). Master dapat menghasilkan sinyal STOP untuk
menyudahi transfer, atau mengulang sinyal START untuk memulai transfer data yang baru.
Ada 5 kondisi yang menyebabkan NACK:
1. Tidak adanya penerima dengan alamat yang diminta pada jalur, sehingga tidak ada
perangkat yang merespon ACK.
2. Penerima tidak dapat menerima atau mengirim karena sedang mengeksekusi fungsi
10
3. Pada saat transfer data, penerima mendapatkan data atau perintah yang tidak
dimengerti oleh penerima.
4. Pada saat transfer data, penerima tidak dapat menerima lagi byte data yang
dikirimkan.
5. Penerima-master perlu memberi sinyal pengakhiran transfer data ke
penerima-slave.
Gambar 2.7 menunjukkan sinyal alamat dan data. Pengalamatan dalam I2C bisa 7 bit
atau 10 bit. Pengalamatan 10 bit jarang digunakan dan juga tidak dibahas di sini. Semua
perangkat (uC dan modul-modul) yang terhubung ke dalam jalur I2C yang sama dapat
dialamati sebanyak 7 bit. Ini berarti sebuah jalur I2C dengan pengalamatan 7 bit dapat
menampung 128 (2^7) perangkat. Saat mengirimkan data alamat (yang 7 bit itu), kita tetap
mengirim data 1 byte (8 bit). 1 bit lagi digunakan untuk menginformasikan perangkat slave
apakah master menulis (write) data ke slave atau membaca (read) data dari slave. Jika bit
tersebut 0, maka master menulis data ke slave. Jika bit tersebut 1, maka master membaca data
dari slave. Bit ini (untuk infomasi tulis/baca) merupakan LSB, sedangkan sisanya adalah data
alamat 7 bit. Berikut adalah contoh sinyal yang dimulai dengan data alamat lalu data yang
ingin ditransfer ke alamat tersebut:
11
2.3
Mikrokontroller ATMega 32
Mikrokontroler adalah sebuah sistem mikroprosesor dimana didalamnya sudah
terdapat CPU, ROM, RAM, I/O, Clock dan peralatan internal lainnya yang sudah saling
terhubung dan terorganisasi dengan baik oleh pabrik pembuatnya dan dikemas dalam satu chip
yang siap pakai. Gambar 2.2 menunjukkan konfigurasi dari port-port yang terdapat pada
ATmega 32.
Gambar 2.8ATmega32 [4]
2.3.1
Fitur ATmega32
Berbagai macam fitur dihadirkan dalam sebuah IC ATmega32, yang terdapat
didalamnya adalah dua buah 8-bit Timer/counter dengan prescaler terpisah dan mode
pembanding, Satu buah 16-bit Timer/Counter dengan prescaler terpisah, mode pembanding,
dan mode penangkap, Real Time counter dengan oscillator terpisah, PWM 4-channel,
8-channel, 10 bit ADC, Orientasi Byte untuk Two wire Serial Interface, Programmable Serial
USART, Master/slave SPI Serial Interface, Programmable watchdog timer dengan on-chip
12
2.3.2
Arsitektur AVR [4]
Aritmetic Logic Unit (ALU) adalah processor yang bertugas mengeksekusi kode
program yang ditunjuk oleh program counter. Gambar 2.3 adalah gambaran blok diagram pada
ATmega32.
Program memori adalah memori flash PEROM yang bertugas menyimpan program
(software) yang dibuat dalam bentuk kode-kode program (berisi alamat memori serta kode
program dalam ruangan memori alamat tersebut) yang telah di compile berupa bilangan
heksadesimal atau biner.
Gambar 2.9Blok diagram Mikrokontroler AVR [4]
Program Counter (PC)adalah komponen yang bertugas menunjukan ke ALU alamat
memori yang harus diterjemahkan kode programnya dan dieksekusi. Sifat dasar dari PC
adalah menghitung naik satu bilangan yang bergantung pada alamat awal.
32 General Purphose Working Register (GPR) adalah register file atau register kerja
(R0-R31) yang mempunyai ruangan 8-bit. Tugas GPR adalah sebagai tempat ALU mengeksekusi kode-kode program, setiap instruksi pada ALU melibatkan GPR.
Static Random Accses Memory (SRAM) adalah RAM yang bertugas untuk menyimpan
data sementara sama seperti RAM pada umumnya mempunyai alamat dan ruangan data.
Internal Pheripheral adalah peralatan/modul internal yang ada dalam mikrokontroler
13
peralatan internal mempunyai registerport (resister I/O) yang menggendalikan peralatan
internal tersebut.
2.3.3
Memori AVR
Gambar 2.4 menunjukkan peta memori dari ATmega 32. Memori ATmega terbagi
menjadi tiga,yaitu:
Gambar 2.10 Peta Memori ATmega [4]
1. Memori Flash
Adalah memori ROM tempat kode-kode program berada. Kata flash menunjukan jenis
ROM yang dapat ditulis dan dihapus secara elektrik. Memori flash terbagi dua bagian
yaitu bagian aplikasi dan bagian boot. Bagian aplikasi adalah bagian kode-kode program
aplikasi berada. Bagian boot adalah bagian yang digunakan khusus untuk booting awal
yang dapat deprogram untuk menulis bagian aplikasi tanpa melalui
programmer/downloader, misalnya melalui USART.
2. Memori Data
Adalah memori RAM yang digunakan untuk keperluan program. Memori data terbagi
14
Additional I/O register dan internal RAM. 32 General Purphose Working Register (GPR)
adalah register khusus yang bertugas untuk membantu mengeksekusi program oleh ALU.
I/O register dab Additional I/O register adalah register yang difungsikan untuk
mengendalikan berbagai pheripheral dalam mikrokontroler.
3. EEPROM
Adalah memori data yang dapat mengendap ketika chip mati (off), digunakan untuk
keperluan penyimpanan data yang tahan terhadap gangguan catu daya.
2.3.4
Jalur I2C [5]
1. SDA, Port C bit 1
SDA, Two Wire Data Interface, ketika bit TWEN dalam TWCR di set untuk
mengaktifkan Two Wire Serial Interface, pin PC1 menjadi tidak terkoneksi dari port dan
menjadi serial data I/O untuk Two Wire Serial Interface. Didalam mode ini, ada sebuah spike
filter pada pin untuk menahan spike yang lebih pendek dari 50nS dari sinyal input, dan pin
dikendalikan oleh sebuah open drain driver dengan batasan slew rate. Ketika pin ini
digunakan sebagai Two Wire Serial Interface, pull up tetap dapat dikendalikan oleh bit
PORTC1 [5].
2. SCL, Port C bit 0
SCL, Two Wire Serial Interface Clock, , ketika bit TWEN dalam TWCR di set untuk
mengaktifkan Two Wire Serial Interface, pin PC0 menjadi tidak terkoneksi dari port dan
menjadi serial clock I/O untuk Two Wire Serial Interface. Didalam mode ini, ada sebuah spike
filter pada pin untuk menahan spike yang lebih pendek dari 50nS dari sinyal input, dan pin
dikendalikan oleh sebuah open drain driver dengan batasan slew rate. Ketika pin ini
digunakan sebagai Two Wire Serial Interface, pull up tetap dapat dikendalikan oleh bit
2.4
Regulator Tegan
2.4.1
Regulator Tegan
Perangkat elektronik
yg digunakan memiliki nil
regulator tegangan agar
berlebihan. Untuk mereg
menurunkan level teganga
menurunkan tegangan, IC r
keluaran arus IC seri 78x
perangkat keras pada robot
yang berlebihan bahkan d
output arus yang lebih besa
terminal, diberikan sebuah p
Nilai dari R2 diperh
yang diinginkan[6]. Arus in
ada output arus kecil yang
transistor. Ketika arus pa
mengaktifkan transistor. Se
tidak berhubungan dengan
tegangan yang di set oleh re
Untuk menentukan n Gambar 2.11
15
angan dan
Driver
Motor Pompa
angan
nika rata-rata memerlukan tegangan 5VDC, se
nilai tegangan lebih dari 5VDC. Oleh karena
r tidak merusak komponen elektronika a
egulasi tegangan digunakan sebuah IC 7
gan sampai dengan kurang lebih 5VDC. S
regulator juga harus dapat mensuplai daya ya
8xx hanya berkisar 1A, maka apabila total
ot mencapai 1A atau bahkan lebih dari 1A dap
dapat merusakkan perangkat regulator. Keti
sar dari kemampuan standar yang dapat diberi
h pass transistor eksternal seperti yang tampak
rhitungkan sehingga transistor dapat mulai bek
ini ditentukan oleh batasan arus dan daya da
ng ditarik, tidak ada cukup tegangan pada R
pada beban meningkat, akan mencapai su
Sejak transistor menjadi sumber arus, maka te
an tegangan pada basis dan emitter, sehingg
regulator.
n nilai R2 digunakan persamaan sebagai beriku 11 Regulator dengan External pass transistor
sedangkan sumber daya
a itu diperlukan sebuah
akibat tegangan yang
7805 yang berfungsi
. Selain berfungsi untk
yang besar. Kemampuan
tal kebutuhan arus dari
apat menimbulkan panas
etika diperlukan sebuah
rikan oleh regulator tiga
k pada gambar 2.4.
ekerja pada batasan arus
dari IC regulator. Ketika
R2 untuk mengaktifkan
suatu titik yang akan
tegangan pada kolektor
gga kolektor tetap pada
16
ܴʹ ൌ
ூ (2.1)
Dengan V = tegangan untuk mengaktifkan transistor.
I = batas arus yang akan dilewatkan oleh regulator.
Disipasi daya resistor :
ܲ݀݅ݏݏ ൌ ሺܸሻǤ ሺܫሻ (2.2)
Dengan V = tegangan untuk mengaktifkan transistor.
I = batas arus yang akan dilewatkan oleh regulator.
Untuk menentukan nilai dari kapasitor C1 dan C2 dapat mengacu pada datasheet yaitu
C1=0,33µF dan C2 = 0,01µF [7].
2.4.2
Driver
Pompa Air DC
Gambar 2.12 Rangkaian Driver Pompa Air DC [8]
Sebagai pemadam api lilin digunakan sebuah motor DC yang berfungsi sebagai pompa
untuk menyemprotkan air. Gambar 2.13 menunjukkan rangkaian driverpompa penyemprot.
Karena kemampuan tegangan keluaran hanya 5v dan arus keluaran dari port ATmega 32
hanya berkisar 20mA saja. Sedangkan motor DC yang digunakan memerlukan tegangan
12VDC dan arus yang melebihi kemampuan output dari port Atmega32, oleh karena itu
diperlukan sebuah penguat arus agar motor DC dapat dikendalikan oleh
mikrokontroler.Penguat menggunakan metode switching transistor yang memakai TIP122
digunakan sebagai penguat
darlington internal.
Untuk menentukan
menggunakan persamaan :
Arus yang melewati R4 :
Tegangan pada R4 :
Maka nilai R4 :
2.5
Driver
Motor D
G
17
at arus. TIP122 merupakan transistor NPN den
an nilai R4 berdasarkan spesifikasi yan
:
(2.3)
(2.4)
(2.5)
(2.6)
DC
Gambar 2.13 Rangkaian Driver Motor DC
engan rangkaian
ang diinginkan dapat
18
Sebagai penggerak robot, menggunakan 2 buah motor DC. Karena kebutuhan arus
untuk menggerakkan motor DC melebihi kapasitas kemampuan dari port mikrokontroler,
maka diperlukan driver untuk meneruskan perintah dari kontroler. Untuk driver motor
tersebut menggunakan IC driver L298 Dual Full-Bridge Driver. IC ini memiliki kemampuan
sebagai driver tegangan tinggi dan arus yang tinggi yang didesain untuk menerima level
logika standar TTL dan mengendalikan beban induktif seperti : relay, solenoid, motor DC dan
motor stepper. Dua buah input enable disediakan untuk meng-enable atau men-disable
perangkat secara independen dari input sinyal [11]. Dalam pengoperasian standar maka setiap
output dapat mensuplai arus sampai dengan 2 ampere.Untuk kebutuhan arus dari beban yang
lebih besar dari 2 ampere, maka port output dapat diparalel. Konfigurasi ini dapat mensuplai
beban sampai dengan 3 ampere pada operasi DC [11].
2.6
Rangkaian LCD
Untuk menampilkan data-data yang diproses dalam mikrokontroller diperlukan LCD.
Pada robot digunakan LCD display 16x2. Setiap karakter dibentuk oleh 8x5 atau 10x5 pixel.
Tabel 2.1 menujukkan deskripsi dari tiap pin pada LCD. Gambar 2.15 menunjukkan rangkaian
LCD pada PCB.
Tabel 2.2 Deskripsi pin LCD
2.7
Motor Servo Tow
Motor servo adalahdari motor akan diinformas
Motor ini terdiri dari seb
kontrol. Potensiometer berf
sudut dari sumbu motor ser
dari kabel motor [9].
Gam
19
Tabel 2.2 (Lanjutan) Deskripsi pin LCD
ĞƐŬƌŝƉƐŝ
asikan kembali ke rangkaian kontrol yang ada
ebuah motor DC, serangkaian gear, potensio
rfungsi untuk menentukan batas sudut dari put
servo diatur berdasarkan lebar pulsa yang dikir
ambar 2.15 Konfigurasi kabel motor servo [9] Gambar 2.14 Rangkaian LCD
ĂĐŬůŝŐŚƚ
ďĂĐŬůŝŐŚƚ
k tertutup dimana posisi
da di dalam motor servo.
siometer dan rangkaian
utaran servo. Sedangkan
20
Karena motor DC servo merupakan alat untuk mengubah energi listrik menjadi energi
mekanik, maka magnit permanent motor DC servolah yang mengubah energi listrik ke dalam
energi mekanik melalui interaksi dari dua medan magnit. Salah satu medan dihasilkan oleh
magnit permanen dan yang satunya dihasilkan oleh arus yang mengalir dalam kumparan
motor. Resultan dari dua medan magnit tersebut menghasilkan torsi yang membangkitkan
putaran motor tersebut. Saat motor berputar, arus pada kumparan motor menghasilkan torsi
yang nilainya konstan.
Secara umum terdapat 2 jenis motor servo. Yaitu motor servo standard dan motor
servo continous. Servo motor tipe standar hanya mampu berputar 180 derajat. Motor servo
standard sering dipakai pada sistim robotika misalnya untuk membuat “ Robot Arm” ( Robot
Lengan ), sedangkan servo motor continuous dapat berputar sebesar 360 derajat. Motor servo
continous sering dipakai untuk “Mobile Robot”.
2.8
Denah Ruangan
21
Lapangan mensimulasikan interior dari sebuah rumah dengan 4 ruangan. Lapangan
terbuat dari papan multipleks dengan ketebalan 1,8 sampai dengan 2 cm dan berukuran 248cm
x 248cm x 30cm. Didalam lapangan terdapat 4 ruangan dengan posisi tetap yang 2 diantaranya
memiliki pintu yang dapat digeser posisinya (ruang 1 dan 4).
Untuk penomoran ruangan adalah sebagai berikut : ruang 1 (room 1) adalah ruangan
dengan ukuran terbesar, berturut- turut ruang 2 ( room 2), ruang 3 (room 3), ruang 4 (room 4)
adalah ruangan yang berada searah jarum jam dengan ruang 1. Untuk menandai masuk
keruangan yang akan dipindai, pada bagian depan ruangan diberi penanda sebuah garis putih
dengan tebal ± 3cm.
2.9
Lilin
Untuk mensimulasikan titik api dalam ruangan. Titik lilin (belum termasuk sumbu api)
berkisar antara 15-20cm dengan diameter 2-3cm. Lilin berjumlah 1 buah yang diletakkan di
salah satu ruangan dari 4 ruangan yg ada. Bila lilin telah diletakkan pada dudukannya, maka
yang dimaksud tinggi lilin adalah antara 15 sampai dengan 20 cm terhitung dari lantai sampai
dengan bagian tertinggi dari lilin (bukan sumbu apinya).
22
2.10 Alas Lilin
Robot atau sebagian badan robot harus berada pada jarak kurang dari 30cm untuk
memadamkan lilin, untuk itu akan ada alas lilin berbentuk lingkaran atau juring lingkaran di
sekeliling lilin. Lingkaran ini posisinya berpindah-pindah mengikuti posisi liliAlas lilin
berbentuk lingkaran atau juring lingkaran solid berjari-jari 30cm, terbuat dari karton warna
putih. Agar karton tidak bergelombang dan mudah dipindah-pindah maka karton tersebut
ditempelkan pada sebuah plat alumunium dengan ketebalan 1,5mm sampai dengan 2mm
berukuran sama dengan karton. Agar plat tersebut tidak mudah bergeser maka di bawah
platharus dilapisi alas karet anti slip. Detail bentuk dan ukuran alas lilin dapat dilihat pada
gambar 2.18.
Kemungkinan posisi lingkaran diruangan cukup banyak. Sehingga ada posisi-posisi
yangtidak memungkinkan satu lingkaran penuh ditempatkan, misalnya posisi yang dekat Gambar 2.18 Bentuk dan Ukuran Alas Lilin
23
dengan dinding atau posisi yang lain. Oleh karena itu, lingkaran akan berbentuk “juring”
(potongan lingkaran). Juring ada 2 jenis yaitu : lingkaran dan lingkaran. Bentuk dan
ukuran ketiga juring dapat dilihat pada gambar 2.19.
2.11 Dudukan Lilin
Lilin ditempatkan pada suatu dudukan terbuat dari kayu, berbentuk silinder dan
berdiameter 5cm dengan ketinggian 5cm dan kedalaman lubang 4cm. Ditengah-tengah
dudukan terdapat lubang yang memungkinkan liin berdiri. Dudukan lilin berjumlah 1
buah.Bentuk dan ukuran dudukan lilin dapat dilihat pada gambar 2.18.
2.12 Furniture
Furniture berfungsi untuk mensimulasikan benda-benda yang berada disuatu ruangan
dan bertujuan untuk menguji kemampuan bermanuver robot dalam ruangan dalam rangka
bergerak mendekati api. Furniture adalah sebuah silinder berwarna kuning terang terbuat dari
potongan pipa PVC/paralon berdiamater 11cm dengan tinggi 30cm. Silinder paralon ini
kemudian di cor dengan adukan semen dan pasir supaya menjadi berat dan tidak mudah
tergeser atau terjatuh ketika tertabrak robot
24
Furniture berjumlah 4buah yang masing-masing diletakkan disetiap ruangan baik yang
25
BAB III
RANCANGAN PENELITIAN
3.1
Diagram Blok
Gambar 3.1 di bawah menunjukkan diagram blok perancangan sistem penggunaan
sensor api Thermal Array TPA81 dengan menggunakan mikrokontroller AVR seri
ATmega32.
Pada awal inisialisasi program diberikan sebuah nilai set point untuk pembacaan suhu.
Set point inilah yang nanti akan digunakan sebagai refrensi untuk menentukan ada dan
tidaknya sumber api di depan robot. Mikrokontroller mengirimkan perintah dan membaca
hasil dari proses scanning sensor api kemudian menampilkannya pada tampilan LCD.
Pengiriman data menggunakan jalur I2C. Apabila dari hasil pembacaan sensor sudah sama
dengan atau lebih besar dari set point yang telah ditentukan sebelumnya, maka
mikrokontroller akan memberikan perintah untuk mengaktifkan motor DC penyemprot air
dengan cara memberi masukan logika tinggi kepada penguat arus. Bersamaan dengan
dilakukannya penyemprotan air, mikrokontroller memberikan pulsa untuk mengaktifkan
motor servo dengan tujuan untuk menggerakkan ujung penyemprot air sehingga didapatkan
26
mikrokontroller akan memberikan perintah kepada sensor untuk melakukan pengecekan lagi,
apakah api sudah padam atau belum. Apabila hasil pembacaan menunjukkan bahwa api sudah
padam maka mikrokontroller akan menjalankan perintah untuk mengembalikan robot ke posisi
home. Sebaliknya apabila dari hasil pembacaan didapatkan bahwa api masih menyala, maka
akan dilakukan proses penyemprotan sekali lagi.
3.2
Perancangan Hardware
3.2.1 Spesifikasi Robot
Robot dirancang memiliki dimensi panjang x lebar x tinggi = 19cm x 15,8cm x 19 cm
seperti yang tampak pada gambar 3.2. Robot menggunakan penggerak motor DC dengan roda
tank sebagai alasnya. Sensor TPA81 terpasang pada ketinggian 18cm dari permukaan tanah
agar dapat membaca titik api pada ketinggian 15cm sampai dengan 20cm yang mengacu pada
peraturan lomba KRCI.
27
3.2.2 Sistem Minimum
Microcontroller tidak dapat langsung digunakan karena selain memerlukan supply
tegangan, tegangan refrensi untuk ADC (Analog to Digital Converter), juga diperlukan
sumber clock., oleh karena itu digunakan sebuah perangkat sistem sederhana yg berfungsi
sebagai penghubung microcontroller dengan sumber tegangan dan sumber clock. Selain itu
perangkat ini juga membantu menghubungkan microcontroller dengan perangkat input
(sensor) dan output (LCD, driver). Rangkaian minimum sistem dapat dilihat pada gambar 3.3
dibawah.
Gambar 3.3 Skematik Sistem Minimum ATmega32
Sistem minimum menggunakan catu daya 5v. Untuk tiap port diberi pin deret untuk
memudahkan menghubungkan ke perangkat sensor dan perangkat pendukung lainnya.
Perancangan minimum sistem ini banyak mengacu pada ketentuan datasheet. Port xtal1 dan
xtal 2 dihubungkan dengan crystal oscillator dan diberi 2 buah capasitor. Crystal oscillator
menggunakan nilai 12Mhz dan nilai C1 dan C2 mengacu pada datasheet. Port AREV sebagai
28
dengan sumber 5v walau ADC tidak digunakan, dan apabila ADC digunakan harus
dihubungkan ke sumber 5V melalui sebuah low-pass filter. Untuk fasilitas downloader
diberikan sebuah pin sendiri yang dihubungkan dengan port MISO, MOSI, SCK, RESET,
GND dan 5v.
3.2.3 Jalur I2C
Gambar 3.4 Pengkabelan jalur komunikasi I2C
Gambar 3.3 diatas adalah pengkabelan untuk jalur komunikasi I2C. Untuk besarnya
nilai resistor pull up mengacu pada dasar teori yaitu 1,8k untuk jalur SDA dan SCL.
3.2.4 Driver Pompa Air DC
Gambar 3.5 Skematik driver Pompa Air DC
Gambar 3.4 diatas menujukkan rancangan skematik untuk switching transistor yang
digunakan sebagai driver motor DC penyemprot air. Untuk mencari nilai dari resistor R4
dapat mengacu pada dasar teori menggunakan persamaan berikut :
Arus yang melewati R4 :
݄݂݁ ൌ ܫܿ
29
ܫܾ ൌ ܫܿ
݄݂݁
Besarnya Ic adalah besarnya arus yang dibutuhkan motor DC saat beroperasi. Setelah
dilakukan percobaan untuk mencari besarnya arus yang dibutuhkan motor DC didapatkan
nilainya I=1,3 A. Besarnya hfe mengacu pada datasheet [10] hfe = 1000. Besarnya Ib dapat
dihitung dengan mengacu pada persamaan 2.4 :
ܫܾ ൌ ͳǡ͵
ͳͲͲͲൌ ͲǡͲͲͳ͵
Nilai Vin = 5v, dan Vbe=0,6, dengan mengacu pada persamaan 2.5, maka :
ܸݎͶ ൌ ͷ െ Ͳǡ
ܸݎͶ ൌ ͶǤͶݒ
Maka nilai R4 mengacu pada persamaan 2.6 :
ܴͶ ൌ ͶǡͶ
ͲǡͲͲͳ͵ൌ ͵͵ͺͶǡͳͷȳ
Karena tidak ada nilai resistor seperti pada perhitungan di atas, maka dibuat nilai
pendekatan. Nilai R4 = 3k3 .
3.2.5 Regulator Tegangan
Gambar 3.4 menunjukkan rancangan skematik regulator dengan eksternal pass
transistor sebagai penguat arus. Untuk menentukan nilai-nilai komponen yang digunakan
dapat mengacu pada dasar teori.
Dengan nilai tegang
akan dilewatkan oleh regu
persamaan 2.1 :
Daya disipasi resisto
Mengacu pada dasar
3.2.6
Driver
Motor D
Sebagai penggerak
memiliki spesifikasi tegang
30
ngan untuk mengaktifkan transistor V=0.6 vol
gulator I=500mA. Maka dapat dihitung nilai
stor dapat dihitung dengan mengacu persamaan
sar teori untuk nilai C1 dan C2, C1=0,33µF da
DC
Gambar 3.7 Rangkaian Driver Motor DC
k robot, menggunakan 2 buah motor DC yang
ngan 12Vdc dan arus sebesar 2,5 ampere dari h
olt, dan batas arus yang
lai R2 dengan mengacu
an 2.2:
dan C2 = 0,01µF.
ng masing-masing motor
31
pengoperasian standar maka setiap output dapat mensuplai arus sampai dengan 2 ampere.
Untuk kebutuhan arus dari beban yang lebih besar dari 2 ampere seperti pada penggunaan
motor ini, maka port output dapat diparalel. Konfigurasi ini dapat mensuplai beban sampai
dengan 3 ampere pada operasi DC [11]. Berikut adalah rangkaian driver dengan konfigurasi
parallel.
3.2.7 Aktuator
Robot ini menggunakan system penggerak dua roda dengan masing-masing satu buah
motor DC disetiap sisi pada bagian belakang robot. Sebagai roda digunakan sistem roda tank
dengan rantai sebagai transfer gerak dari motor DC ke roda-rodanya. Roda menggunakan
bahan akrilik dengan diberi bantalan karet agar tidak selip saat berjalan.
Gambar 3.6 menunjukkan skema dari perangcangan aktuator robot. Motor Dc
dihubungkan langsung dengan roda yang dilengkapi oleh gear dan menggunakan rantai
32
3.3
Perancangan
Software
3.3.1
Flowchart
Robot
Fire Fighter
Agar dapat bekerja sesuai keinginan, mikrokontroler harus deprogram terlebih dahulu.
Untuk memudahkan dalam pembuatan program, maka perlu dibuat sebuah flowchart. Gambar
3.8 menunjukkan flowchart utama dari robot pemadam api secara keseluruhan, yang berisi
rancangan program robot mulai dari titik start awal ke titik api berada.
Gambar 3.9 Flowchart Robot Fire Fighter
33
Secara umum program dimulai dengan proses inisialisasi. Proses ini penting untuk
mendefinisikan PORT pada mikrokontroler sebagai input maupun output, variable-variabel
yang akan digunakan serta inisialisasi dari LCD, TIMER dan juga PWM agar perangkat keras
dapat bekerja dengan baik.
Program dimulai dengan penempatan posisi robot pada titik start kemudian dilakukan
pembacaan oleh sensor jarak (PING) untuk mengetahui apakah posisi robot sudah benar atau
belum untuk berjalan maju.
Apabila posisi belum tepat maka robot akan mencari posisi yang benar dengan cara
berbelok ke kanan atau ke kiri dan kemudian saat sudah mendapatkan posisi yang benar akan
dilanjutkan dengan berjalan menuju ke ruangan pertama. Setelah sampai pada ruangan
pertama, robot akan melakukan pengecekan apakah ada titik api di ruangan atau tidak. Apabila
terbaca ada titik api pada ruangan, maka akan dilanjutkan proses untuk pemadaman api. Tetapi
apabila pada saat pengecekan tidak ditemukan adanya titik api pada ruangan pertama, maka
robot akan menuju ke ruangan berikutnya. Apabila pada ruangan kedua ditemukan api, maka
akan dilakukan pemadaman api oleh robot, tetapi bila tidak ditemukan robot akan meuju ke
ruangan ketiga. Proses berulang sampai dengan ruangan keempat. Sensor jarak digunakan
sebagai alat navigasi robot agar robot tidak menabrak dinding atau halangan lainnya disekitar
robot. Sebagai sensor jarak digunakan sensor PING. Proses pembacaan ruangan menggunakan
sensor api TPA81. Bagian flowchart yang diberi tanda dengan garis putus-putus adalah saat
proses pengecekan ruangan menggunakan sensor TPA81
3.3.2
Flowchart
Pengecekan Ruangan
Flowchart dari sistem pengecekan ruangan dapat dilihat pada gambar 3.2. Proses ini
melakukan pembacaan ruangan apakah di dalam ruangan terdapat api atau tidak. Setelah
pendeteksian garis oleh sensor garis maka program akan memerintahkan robot untuk berhenti
34
Gambar 3.10 Flowchart Pengecekan Ruangan
Agar didapatkan pembacaan ruangan secara menyeluruh, maka dilakukan 5 kali
pembacaan ruangan. Setelah pengecekan pertama, robot di program untuk berbelok ke kanan
sampai didapatkan posisi baru dan memulai pembacaan lagi. Apabila setelah 5 kali pembacaan
35
sehingga tercapai posisi awal robot saat masuk ruangan, lalu robot akan mundur keluar dari
ruangan. Robot berjalan mundur sampai terdeteksi adanya garis lalu robot akan berhenti. Garis
menunjukkan robot pada posisi didepan ruangan seperti saat akan memulai pengecekan
ruangan. Saat terdeteksi ada titik api pada ruangan maka robot akan menyesuaikan posisinya
agar titik api tepat pada bagian depan penyemprot air. Karena TPA81 memiliki 8 pixel
pembacaan akan memudahkan robot untuk menyesuaikan posisinya tepat pada titik api
tersebut. Setelah didapatkan posisi yang tepat, robot akan berjalan maju menuju titik api. Pada
saat robot berjalan maju dilakukan pendeteksian garis karena disekitar titik api diberi tanda
berupa lingkaran putih. Saat terdeteksi garis, robot akan berhenti dan memulai proses
pemadaman. Penyemprotan pemadaman api menggunakan motor DC yang dibantu motor
servo untuk menggerakkan ujung penyemprot agar didapatkan area penyemprotan yang lebih
luas. Untuk memastikan apakah api sudah padam atau belum, akan dilakukan pengecekan lagi.
3.3.3
Flowchart
Sub-Sistem TPA81
Flowchart dari sistem TPA81 dapat dilihat pada gambar 3.3. Pada proses awal
program melakukan inisialisasi untuk menentukan variable-variabel yang akan digunakan
untuk proses selanjutnya. Perintah selanjutnya adalah I2C start yaitu mengirimkan sinyal start
untuk memulai semua perintah. Proses selanjutnya adalah memberikan perintah untuk
penulisan register ke dua dari perangkat TPA81. Setelah penulisan register diberikan perintah
sinyal start lagi untuk memulai pembacaan nilai register yang nilainya dihasilkan pembacaan
suhu oleh TPA81. Setelah didapatkan nilai pembacaannya diberikan sinyal stop, yaitu sinyal
yang mengakhiri semua perintah. Kemudian data ditampilkan di penampil LCD. Proses
selanjutnya adalah menaikkan nilai register awal ke register selanjutnya untuk pembacaan
register selanjutnya. Semua proses ini terus berulang sebanyak 8 kali untuk pembacaan 8
register.
36
Gambar 3.11 Flowchart Sub Sistem TPA81[1]
Flowchart ini sebenarnya adalah flowchart umum untuk mengaktifkan fungsi
37
BAB IV
HASIL DAN PEMBAHASAN
Suatu peralatan atau program dikatakan bekerja dengan baik apabila telah disertai
pembuktian terhadap fungsi dari kerja peralatan tersebut. Pada bab ini akan dijelaskan
mengenai cara pengujian dari perangkat keras dan lunak sesuai perancangan pada bab III
sebelumnya.
Dari pengujian didapatkan data maupun bukti-bukti hasil akhir dari kenyataan
bahwa perangkat lunak dan keras yang telah dibuat dapat bekerja dengan baik atau tidak.
Berdasarkan data dan bukti tersebut dapat dilakukan analisa terhadap proses kerja yang
nantinya dapat digunakan untuk menarik kesimpulan dari apa yang telah disajikan dalam
tugas akhir ini.
4.1
Hasil Pengujian
Plant
38
Dapat dilihat pada gambar, sensor TPA81 diletakkan pada bagian depan robot
dengan tidak terhalang sesuatu didepannya agar dengan leluasa untuk melakukan
pembacaan terhadap titik api. Pada bagian atas sensor diletakkan penyemprot air yang
dihubungkan dengan pompa air yang diletakkan pada bagian belakang robot.
Mikrokontroller diletakkan pada bagian atas robot, dan driver motor diletakkan pada
bagian bawah tepat didepan motor DC.
Pengujian dilakukan dengan cara membaca api dari jarak tertentu dan sudut tertentu
untuk mengetes sensitifitas sensor dan sudut pandang sensor. Pengujian ini bertujuan untuk
menguji kemampuan sensor untuk membaca titik api. Hasil pengujian berupa angka dalam
tampilan LCD yang menunjukkan temperatur dari obyek api.
Gambar 4.2 Grafik Pengujian dengan sudut titik api 0˚ terhadap robot
Ϭ
Tabel 4.1 Pengujian dengan sudut titik api 0˚ terhadap robot
39
Gambar 4.3 Grafik Pengujian dengan sudut titik api 10˚ terhadap robot
Tabel 4.2 Pengujian dengan sudut titik api 10˚ terhadap robot
Tabel 4.3 Pengujian dengan sudut titik api 20˚ terhadap robot
40
Gambar 4.4 Grafik Pengujian dengan sudut titik api 20˚ terhadap robot
Tabel 4.4 Pengujian dengan sudut titik api -10° Terhadap Robot
Gambar 4.5 Grafik Pengujian dengan sudut titik api -10˚ terhadap robot
41
Tabel 4.5Pengujian dengan sudut titik api -20° Terhadap Robot
Gambar 4.6 Grafik Pengujian dengan sudut titik api -20˚ terhadap robot
Angka-angka yang ditampilkan dalam tabel menunjukkan hasil dari pembacaan
sensor api yang kemudian ditampilkan dalam LCD. Angka-angka ini dapat diartikan
sebagai intensitas suhu dari titik api. Ketika sensor tidak membaca adanya titik api maka
LCD akan menampilkan angka yang berkisar antara 28 sampai dengan 31. Dan pada saat
membaca adanya titik api akan berada pada kisaran 32 sampai dengan 93.
Setiap perubahan sudut titik api akan berpengaruh terhadap hasil dari pembacaan
sensor juga, hal ini dikarenakan setiap pixel dari sensor memiliki sudut pandang (point of
42
view) yang berbeda juga. Seperti dapat dilihat pada tabel 4.1 saat titik api berada pada
sudut 0˚ dari robot, pixel yang membaca titik api tersebut adalah pixel 5. Hasil pembacaan
api menampilkan hasil angka pembacaan tertinggi pada jarak terdekat dengan titik api,
yaitu jarak 30 cm antara titik api dengan robot. Pada jarak terjauh dari percobaan, yaitu
210cm antara titik api dengan robot. Hasil pembacaan mulai berkurang, tetapi ini tidak
akan terlalu berpengaruh kepada kinerja pembacaan api pada saat lomba karena jarak yang
diperbolehkan untuk robot membaca api tidak akan sampai jarak 210cm.
Pada tabel 4.2, titik api diletakkan pada sudut 10° kearah kanan dari robot. Dapat
dilihat dari tabel bahwa pada sudut 10°, pixel yang membaca titik api adalah pixel 2,3 dan
pixel 4. Pada jarak 90cm, pixel 2 sudah tidak dapat membaca titik api. Sebaliknya pixel 3
dan 4 masih dapat membaca api terlihat dengan LCD menunjukkan angka 38 dan 40.
Sampai pada pengambilan data saat jarak 150cm, pixel yang mendeteksi api adalah pixel 4,
intensitas suhu yang ditunjukkan 35 sampai dengan 37. Pada pengujian untuk sudut 20°,
pixel yang paling banyak membaca adanya titik api adalah pixel 1. Pixel 2 dapat membaca
titik api, tetapi tidak terlalu besar intensitasnya. Hal ini dapat terlihat pada tabel
menunjukkan angka intensitas suhu pada kisaran 33 sampai dengan 34.
Pada pengambilan data untuk sudut -10° yang disajikan dalam tabel 4.4 (titik api
berada pada sisi kiri robot), pixel yang paling dominan membaca titik api adalah pixel 6.
Walaupun pixel 5, 7 dan 8 membaca titik api tetapi tidak terlalu besar intensitasnya. Pada
jarak yang lebih jauh, pixel terlihat mulai tidak membaca titik api. Pada tabel 4.5 dapat
dilihat bahwa pixel 8 lebih dominan dalam pembacaan titik api. Intensitas suhu berada
pada rentang 34 sampai dengan 64. Tabel 4.6 menunjukkan hasil dari pemindaian pada
sudut tertentu dan pixel yang mendeteksi api pada sudut tersebut.
Tabel 4.6 Sudut dan Pixel yang mendeteksi
No Sudut Pixel yang Mendeteksi Api
ϭ Ϭȗ 5
Ϯ ϭϬȗ ϯĂƚĂƵϰ
ϯ ϮϬȗ 1 atau 2
ϰ ͲϭϬȗ ϲĂƚĂƵϳ
43
4.2
Hasil Pengujian
Plant
Terhadap Gangguan
Untuk menguji kehandalan pembacaan sensor terhadap gangguan berupa halangan
yang berada disekitar titik api, maka dilakukan beberapa percobaan dengan meletakkan
halangan dibeberapa titik disekitar api dengan jarak dan sudut tertentu. Hasil pengujian
berupa angka dalam tampilan LCD yang menunjukkan temperatur dari objek api.
60cm
30cm
+
-Lilin
Halangan
Sensor TPA81
0
0+10 -10
Gambar 4.7 Skema Pengujian Pemindaian Titik Api dengan Halangan
Gambar 4.2 menunjukkan skema pemindaian titik api dengan halangan yang
diletakkan didepan robot (sudut 0˚). Jarak antara robot dengan halangan adalah 30cm dan
jarak antara robot dengan lilin adalah 60cm. Nilai yang divariasi pada percobaan kali ini
adalah nilai dari sudut halangan terhadap robot, apabila halangan bergeser kekanan maka
sudutnya akan bernilai positif, sedangkan apabila bergeser kekiri sudutnya akan bernilai
negatif. Untuk pengujian ini diberikan sebuah halangan yang biasanya dipakai dalam
kompetisi robot cerdas Indonesia. Pengujian ini memvariasi sudut dari halangan supaya
didapatkan hasil pembacaan tiap pixel untuk setiap perbedaan sudut halangan. Hasil
44
Gambar 4.8 GrafikPengujian dengan halangan
Dari hasil pembacaan didapatkan bahwa sensor mengalami kesulitan pembacaan
titik api ketika terdapat halangan, apalagi ketika halangan tersebut berada pada posisi
hampir segaris dengan titik api dan robot. Dari grafik dapat dilhat bahwa pixel 5 yang
dapat membaca mulai sudut 6° sampai dengan 8°.
Ϭ
45
4.3
Tampilan Pada LCD
Ketika supply dihidupkan, maka mikrokontroller akan langsung menjalankan
programnya. Sewaktu program dijalankan maka LCD akan menampilkan identitas penulis
selama 4 detik setelah itu akan langsung melakukan pembacaan suhu sekitar untuk mencari
titik api. Hasil tampilan LCD dapat dilihat pada gambar 4-3.
Gambar 4.9 Hasil tampilan LCD (a) Tampilan LCD saat supply dihidupkan. (b) Tampilan
setelah 4 detik menampilkan pembacaan ruangan tanpa titik api, (c) Tampilan LCD saat
sensor membaca adanya titik api dalam ruangan
4.4
Pengujian Pemadaman Api
Pengujian ini bertujuan untuk menguji kemampuan robot dalam memadamkan api
lilin. Pada awal pengujian dilakukan pemindaian terhadap suhu ruangan tanpa titik api.
Setelah didapatkan suhu tanpa titik api lalu dilakukan pengujian dengan memberikan titik
api pada ruangan. Hal ini bertujuan agar diketahui pembacaan intensitas suhu minimal
untuk pendeteksian titik api, karena suhu dalam ruangan memberikan pengaruh yang
cukup besar pada penentuan set point untuk proses pembacaan titik api. Pemberian set
point memiliki tujuan untuk pengambilan keputusan untuk menentukan apakah ada api
atau tidak didalam ruangan.
(a) (b)
46
4.4.1 Kecepatan Pemindaian Sensor
Sensor memulai pemindaian dari pixel 1 sampai dengan pixel 8, kecepatan
pemindaian dari pixel 1 sampai dengan pixel 8 dihitung menggunakan stopwatch saat
proses pemindaian. Hasil pengamatan menghasilkan kecepatan baca sebesar 1 detik.
Kecepatan baca sangat dipengaruhi oleh pembuatan software untuk sensor TPA81. Untuk
menghindari pemborosan memori mikrokontroler yang disebabkan oleh program yang
terlalu panjang dan tidak efisien, digunakan sistem array untuk penulisan program.
4.4.2 Pengecekan Ruangan
Sesuai dengan perancangan pada bab 3, mengikuti alur dari flowchart pengecekan
ruangan. Saat pemindaian ruangan, robot melakukan 5 kali pembacaan ruangan. Diawali
dengan pemindaian pertama, setelah pengecekan pertama, robot diprogram untuk berbelok
ke kanan sampai didapatkan posisi baru dan memulai pembacaan lagi. Setelah terdeteksi
ada titik api dalam ruangan robot akan berjalan mendekati titik api tersebut. Karena TPA81
memiliki 8 pixel pembacaan, robot akan mudah untuk menyesuaikan posisinya tepat pada
titik api tersebut. Setelah didapatkan posisi yang tepat, robot akan berjalan maju menuju
titik api. Pada saat robot berjalan maju dilakukan pendeteksian garis karena disekitar titik
api diberi tanda berupa lingkaran putih. Saat terdeteksi garis, robot akan berhenti dan
memulai proses pemadaman. Dengan demikian pemindaian ruangan telah berhasil, terbukti
robot dapat mendeteksi api dalam ruangan.
4.4.3 Pemadaman Api
Sensor diberikan setpoint tertentu dan dapat memindai api yang ada didalam
ruangan. Driver motor penyemprot mulai bekerja saat diberikan logika tinggi oleh
mikrokontroler dan mulai menyemprotkan air. Bentuk dari penyemprot sangat
mempengaruhi keberhasilan dalam memadamkan api. Pada robot ini ujung penyemprot air
kurang menyemprotkan air secara menyebar, melainkan terlalu terfokus pada titik tertentu
47
Gambar 4.10 memperlihatkan pola penyemprotan air oleh penyemprot air. Dari
gambar terlihat bahwa pola penyemprotan terlalu fokus dan kurang menyebar, sehingga
ada kemungkinan air tidak mengenai titik api. Hal ini mengakibatkan ada kemungkinan api
tidak dapat padam. Dikarenakan lilin mempunyai range tinggi tertentu antara 15 sampai
dengan 20 cm, menjadi kesulitan tersendiri untuk merancang penyemprot air. Sebaiknya
penyemprot air dirancang untuk dapat menyemprotkan air lebih menyebar. Dari pengujian
penyemprotan air dapat diketahui bahwa driver motor penyemprot dapat bekerja dengan
baik, pada saat dideteksi adanya titik api maka mikrokontroler akan mengirimkan perintah
kepada driver untuk mengaktifkan motor penyemprot. Permasalahan lain yang timbul
apabila dalam penyemprotan pertama api tidak berhasil dipadamkan, maka akan dilakukan
pemindaian kedua dan sensor mendeteksi lagi ada api. Maka akan dilakukan pemadaman
kedua. Pada saat pemadaman kedua kemungkinan persediaan air dalam tabung air sudah
habis untuk pemadaman pertama. Sehingga penyemprot tidak akan menyemprotkan air
karena sudah habis dan api tidak dapat dipadamkan.
48
4.5
Pengujian
Driver
Motor DC
Dari hasil pengujian dapat dilihat bahwa untuk mengaktifkan driver dapat dengan
cara mengaktifkan fungsi enable pada driver dan member logika pada input. Ketika driver
sudah diberi logika tinggi pada enable nya, motor tidak akan bergerak jika belum ada
masukan logika pada pin input baik input 1 dan input 2.
Tabel 4.8 Pengujian terhadap driver motor DC
EŽ ŶĂďůĞ /ŶƉƵƚϭ /ŶƉƵƚϮ dĞŐĂŶŐĂŶ;sͿ ƌƵƐ;Ϳ ƌĂŚ'ĞƌĂŬDŽƚŽƌ
ϭ > > > Ϭ Ϭ ŝĂŵ
Ϯ > > , Ϭ Ϭ ŝĂŵ
ϯ > , > Ϭ Ϭ ŝĂŵ
ϰ , > > Ϭ Ϭ ŝĂŵ
ϱ , > , ϭϮ Ϯ͕ϱ DĂũƵ
ϲ , , > ϭϮ Ϯ͕ϱ DƵŶĚƵƌ
ϳ , , , ϭϮ Ϯ͕ϱ ŝĂŵ
Dari hasil pengujian dapat dilihat bahwa untuk mengaktifkan driver dapat dengan
cara mengaktifkan fungsi enable pada driver dan member logika pada input. Ketika driver
sudah diberi logika tinggi pada enable nya, motor tidak akan bergerak jika belum ada
masukan logika pada pin input baik input 1 dan input 2.
Setelah diberi logika tinggi pada enable dan pada input, sedangkan logika rendah
pada input 1 maka motor akan bergerak maju. Begitu pula apabila diberi masukan logika
tinggi pada enable dan input 1 dan logika rendah pada input 2 maka motor akan bergerak
mundur. Masukan pada input 1 dan 2 dapat digunakan sebagai pengatur arah gerak motor