TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya
HOTMAIDA SITOHANG 042408060
PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
ABSTRAK
Robot penghindar dinding merupakan suatu robot bergerak bebas yang mempunyai
misi berjalan tanpa menabrak dinding. Dalam pengembangannya, sistem ini
menggunakan bahasa assembly sebagai perangkat lunaknya dan rangkaian – rangkaian
elektronika sebagai perangkat kerasnya. Pengembangan pada sistem ini adalah
berdasarkan mikrokontroler berisi program sebagai otak untuk menjalankan robot,
sehingga pada saat robot berjalan sensor akan memberikan informasi kepada
mikrokontroler. Objektif utama tugas akhir ini untuk melihat bagaimana cara kerja
sensor inframerah sebagai pemancar dan photodioda sebagai penerima sinar
DAFTAR ISI Halaman Persetujuan... Pernyataan………... Penghargaan………... Abstrak……… Daftar Isi………. Daftar Gambar………
BAB 1 Pendahuluan
1.1Latar Belakang………
1.2 Batas Masalah……….
1.3 Tujuan ……...……….
1.4 Manfaat Robot.………...
1.5 Metode Pengumpulan Data……….
1.6 Sistematika Penulisan……….
BAB 2 Tinjauan Pustaka
2.1 Inframerah………...
2.2 Dioda Pemancar Cahaya Inframerah………..
2.3 Photodioda………..
2.4 Mikrokontroler AT89S52………...
2.4.1 Arsitektur Mikrokontroler AT89S52………...
2.4.2 Kontruksi AT89S52……….
BAB 3 Perancangan Alat dan Program
3.1 Perangkat Keras………..
3.1.1 Diagram Blok………..
3.1.2 Rangkaian Sensor Dinding..………..
3.1.4 Rangkaian Catu Daya (PSA)………..
3.2 Perangkat Lunak………..
3.2.1 Bahasa Assembly MCS-51……….
3.2.2 Software 8051 Editor, Assembler, Simulator (IDE)………..
3.2.3 Software Downloade………...
3.2.3 Perancangan Program………..
BAB 4 Pengujian dan Analisa Rangkaian
4.1 Pengujian Rangkaian………
4.1.1 Pengujian Rangkaian Mikrokontroler AT89S52…………...
4.1.2 Pengujian Rangkaian Sensor Dinding………...
4.1.3 Pengujian Rangkaian Jembatan H……….
4.1.4 Pengujian Rangkaian PSA……….
4.2 Analisa………..
BAB V Kesimpulan dan Saran
DAFTAR GAMBAR
Halaman
Gambar 2.1 : Karakteristik Spectrum Elektromagnetik
Gambar 2.2 : Simbol dan rangkaian dasar sebuah LED
Gambar 2.3 : Gambar Photodioda (kiri) dan Simbolnya (kanan)
Gambar 2.4 : Karakteristik photodioda sensitivitas - vs - panjang gelombang
Gambar 2.5 : Blok Diagram AT89S52
Gambar 3.1 : Diagram Blok Rangkaian
Gambar 3.2 : Rangkaian Pemancar Inframerah
Gambar 3.3 : Rangkaian Penerima Sinar Inframerah
Gambar 3.4 : Rangkaian Jembatan H
Gambar 3.5 : Rangkaian Catu Daya
Gambar 3.6 : 8051 Editor, Assembler, Simulator (IDE)
Gambar 3.7 : ISP – Flash Programmer 3.a
Gambar 3.8 : Diagram Alir Program
6
8
10
10
14
17
18
19
22
25
30
31
PERSETUJUAN
Judul : ROBOT PENGHINDAR DINDING DENGAN NAVIGASI INFRAMERAH
Kategori : TUGAS AKHIR
Nama : HOTMAIDA SITOHANG
Nomor Induk Mahasiswa : 042408060
Program Studi : DIPLOMA III FISIKA INSTRUMENTASI
Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA
UTARA
Diluluskan di Medan, 30 Juli 2007
Diketahui
Departemen Fisika FMIPA USU Ketua,
Dr. Marhaposan Situmorang,MSc NIP: 130810771
Pembimbing,
PERNYATAAN
ROBOT PENGHINDAR DINDING DENGAN NAVIGASI INFRAMERAH
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing – masing disebutkan sumbernya.
Medan, 28 Juli 2007
PENGHARGAAN
Puji syukur penulis ucapkan kepada Yesus Kristus dengan berkat serta kasih
karunia-Nya penulis dapat sampai pada penyelesaian Tugas Akhir dengan baik yang judulnya
“ROBOT PENGHINDAR DINDING DENGAN NAVIGASI INFRAMERAH”.
Ucapan terima kasih, penulis sampaikan kepada Bapak Ir.Junaidi selaku Dosen
Pembimbing Tugas Akhir yang telah memberikan panduan dan penuh kepercayaan
kepada penulis untuk menyempurnakan tugas ini hingga sampai akhir penyelesaian
tugas akhir ini. Ucapan terima kasih juga ditujukan kepada Bapak Dr. Marhaposan
Situmorang, M.Sc selaku Ketua Program Studi D3 Fisika instrumentasi, Bapak Dr.
Eddy Marlianto, M.Sc selaku Dekan FMIPA USU dan kepada seluruh Dosen / Staf
pengajar pada program studi D3 Fisika Instrumentasi, pegawai di FMIPA USU dan
rekan – rekan kuliah. Dan yang tidak terlupakan kepada Mama yang kami sayangi dan
bang Rafael, kak Ana, serta adik Lina dan Ica yang kami cintai yang telah
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Manusia membutuhkan bantuan dari sesuatu yang dapat bekerja cepat, teliti dan tidak
mengenal lelah, robot adalah jawaban dari keinginan tersebut. Robot diharapkan dapat
mengganti pekerjaan manusia pada lingkungan yang berbahaya bagi kesehatan dan
keselamatan atau daerah yang harus diamati dengan pengamatan lebih dari
kemampuan panca indera manusia.
Robot yang dapat berpindah tempat tanpa campur tangan manusia disebut juga
Autonomous Mobile Robot (AMR) dan menjadi penelitian di berbagai universitas dan
lembaga penelitian di seluruh dunia. Aplikasi AMR antara lain sebagai penyapu
ranjau, kurir dan penelitian objek mineral batuan planet di luar angkasa.
Mikrokontroler adalah sistem komputer yang ringkas, dapat menggantikan
fungsi komputer dalam pengendalian kerja dan disain yang jauh lebih ringkas
daripada komputer. Dengan ukurannya sangat kecil, mikrokontroler dapat digunakan
pada peralatan yang bersifat bergerak (mobile), seperti kendaraan dan peralatan jinjing
(portable) atau pada robot. Mikrokontroler digunakan sebagai otak dari suatu
AT89S52 adalah chip mikrokontroler produksi Atmel Inc, merupakan keluarga
dari MCS-51 rancangan Intel. AT89S52 mempunyai fitur dasar yang cukup lengkap
untuk suatu pemrosesan input-output. Bahasa pemrograman yang digunakan
AT89S52 hampir tidak berbeda jauh dengan instruksi set pada mikroprosesor Intel
yang sudah dipelajari pada perkuliahan.
Pada proyek ini dibangun sebuah AMR yang dapat melihat adanya dinding ,
dan berusaha untuk menghindarinya. Robot ini memanfaatkan cahaya inframerah
yang dipancarkan oleh dinding sebagai sistem navigasinya. Robot akan menangkap
sinar inframerah yang dipancarkan dinding menggunakan photodioda.
1.2 Batasan Masalah
1. Robot hanya dilengkapi sensor dinding.
2. Pemancar yang digunakan pada sensor dinding adalah inframerah dan
penerimanya adalah photodioda, sehingga dinding hanya terdeteksi dari jarak
yang dekat.
3. Robot hanya mengetahui dinding yang ada di depannya.
4. Penerima inframerah dari dinding yang digunakan adalah photodioda.
1.3 Tujuan
Tujuan pembuatan judul Tugas Akhir ini adalah sebagai berikut :
1. Sebagai salah satu syarat untuk dapat menyelesaikan program Diploma Tiga
2. Pengembangan kreatifitas mahasiswa dalam bidang ilmu instrumentasi dan
elektronika sebagai bidang yang diketahui.
3. Untuk mengaplikasikan ilmu pengetahuan yang diperoleh dari perkuliahan
terhadap realita.
4. Mengetahui dan membuat cara kerja robot penghindar dinding.
1.4 Manfaat Robot
Dalam kehidupan bermasyaratkat yang akan datang, robot akan menjadi bagian
bagi kehidupan yang akan dimanfaatkan sebagai alat untuk menggantikan pekerjaan
manusia. Bagi mahasiswa, ini akan merupakan cikal bakal untuk mengembangkan
pola pikir mahasiswa untuk dapat mengembangkan robot – robot selanjutnya yang
lebih bermanfaat bagi kehidupan.
1.5 Metoda Pengumpulan Data
Metode pengumpulan data yang dilakukan oleh perancang adalah :
1. Melakukan studi ke perpustakaan mengenai teori – teori yang berkaitan dengan
judul proyek ini.
2. Mengumpulkan dan membaca data sheet mengenai komponen yang digunakan.
3. Melakukankonsultasi dengan dosen pembimbing serta dosen – dosen staf
pengajar yang berkaitan dengan realisasi dibidang masing – masing.
1.6 Sistematika Penulisan
BAB I PENDAHULUAN
Meliputi latar belakang, batasan masalah, tujuan pengambilan judul, manfaat robot,
metode pengumpulan data dan sistematika penulisan.
BAB II TINJAUAN PUSTAKA
Meliputi tentang pembahasan inframerah sebagai pemancar dan photodioda sebagai
penerima.
BAB III PERANCANGAN ALAT DAN PERANCANGAN PROGRAM
Meliputi tentang perancangan rangkaian dan program.
BAB IV PEMBAHASAN RANGKAIAN DAN PROGRAM
Meliputi uraian tentang prinsip kerja dasar dari rangkaian yang digunakan pada robot .
BAB V KESIMPULAN DAN SARAN
BAB 2
TINJAUAN PUSTAKA
2.1 Inframerah
Inframerah (infrared) merupakan radiasi elektromagnetik yang sinarnya tidak tampak,
berada pada spectrum berwarna merah. Inframerah berarti “bawah merah”, berasal
dari bahasa latin infra yang berarti bawah. Memiliki panjang gelombang lebih dari
cahaya nampak dan kurang dari mikrogelombang, yaitu diantara 0,75mikrometer dan
1000 mikrometer. Gelombang inframerah dan milimeter dapat digunakan dengan
meluas sebagai saluran komunikasi jarak dekat seperti penggunaan alat kawalan jarak
jauh (remote control) bagi televisi, radio dan sebagainya.
Saat ini telah dikenal berbagai macam gelombang elektromagnetik dengan
rentang panjang gelombang tertentu. Spektrum elektromagnetik merupakan kumpulan
spectrum dari berbagai panjang gelombang. Berdasarkan pembagian daerah panjang
gelombang, sinar inframerah dibagi dalam 3 daerah, yaitu:
1. Daerah inframerah dekat dengan panjang gelombang 0,75 micrometer – 2,5
micrometer.
2. Daerah inframerah pertengahan dengan panjang gelombang 2,5 micrometer –
3. Daerah inframerah jauh dengan panjang gelombang 50 micrometer – 1000
micrometer.
Spectrum sinar matahari terdiri dari sinar tampak dan sinar tidak tampak.
Dimana sinar tampak meliputi: merah, orange, kuning, hijau, biru, dan ungu. Sinar
yang tidak tampak antara lain: sinar ultraviolet, sinar – X, sinar gamma, sinar kosmik,
microwave, gelombang listrik dan sinar inframerah. Gelombang elektromagnetik
diantara sinar tampak dan sinar microwave dinamakan sinar inframerah, dengan
karakteristik adalah tidak kasat mata atau tidak terlihat, bersifat linier atau menyebar,
refraktif atau dapat dipantulkan dan dapat diserap oleh beberapa obyek.
Dibawah ini terdapat gambar berdasarkan pembagian panjang gelombang,
yaitu:
Dari pembagian daerah spektrum elektromagnetik tersebut diatas, daerah
panjang gelombang yang digunakan pada alat spektrofotometer infra merah adalah
pada daerah infra merah pertengahan, yaitu pada panjang gelombang 2,5 – 50 µm atau
pada bilangan gelombang 4.000 – 200 cm-1.
2.2. Dioda Pemancar Cahaya Inframerah (LED Inframerah)
LED (Ligh Emiting Dioda) yang merupakan dioda yang memancarkan cahaya yang
kepadanya diberi energi listrik. Timbulnya cahaya adalah sebagai akibat
penggabungan electron dan lubang (hole) pada persambungan antara dua jenis
semikonduktor. Tiap penggabungan disertai dengan pelepasan suatu kuantum energi.
Kuantum energi yang dihasilkan bergantung pada jenis bahan yang digunakan. Energi
ini tidak seluruhnya diubah kedalam bentuk energi cahaya atau photon melainkan
dalam bentuk panas sebagian
LED sebagai pemancar yang dapat memancarkan sinar inframerah untuk
memperluas pemancaran sinar inframerah biasnya disertakan sebuah modul yang
berfungsi memodulasi frekuensi agar diterima oleh obyek tertentu yaitu photodioda.
Proses pemancara cahaya akibat adanya energi listrik yang diberikan terhadap
suatu bahan disebut dengan sifat elektroluminesensi. Material lain misalnya Galium
Arsenida Pospat (GaAsP) atau Galium Pospat (GaP): photon energi cahaya
dipancarkan untuk menghasilkan cahaya tampak. Jenis lain dari LED digunakan untuk
menghasilkan energi tidak tampak seperti yang dipancarkan oleh pemancar laser atau
Gambar 2.2 Simbol dan rangkaian dasar sebuah LED
Pemancar inframerah adalah dioda solid state yang terbuat dari bahan Galium
Arsenida (GaAs) yang mampu memancarkan fluks cahaya ketika dioda ini dibias
maju. Bila diberi bias maju elektron dari daerah-n akan menutup lubang elektron yang
ada didaerah-p. Selama proses rekombinasi ini, energi dipancar keluar dari permukaan
p dan n dalam bentuk photon. Photon-photon yang dihasilkan ini ada yang diserap lagi
dan ada yang meninggalkan permukaan dalam betuk radiasi energi.
2.3. Photodioda
Pengertian : piranti semikonduktor dengan struktur p-n atau p-i-n untuk mendeteksi
cahaya.
Photodioda biasanya digunakan untuk mendeteksi cahaya. Photodioda adalah
piranti semikonduktor yang mengandung sambungan p-n, dan biasanya terdapat
lapisan intrinsik antara lapisan n dan p. Piranti yang memiliki lapisan intrinsik disebut
p-i-n atau PIN photodioda. Cahaya diserap di daerah penggambungan atau daerah
intrinsik menimbulkan pasangan elektron-hole, kebanyakan pasangan tersebut
menghasilkan arus yang berasal dari cahaya.
330 VCC
Mode Operasi
Photodioda dapat dioperasikan dalam 2 mode yang berbeda:
1. Mode photovoltaik: seperti solar sel, penyerapan pada photodioda menghasilkan
tegangan yang dapat diukur. Bagaimanapun, tegangan yang dihasilkan dari
tenaga cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil.
2. Mode photokonduktivitas : disini, photodioda diaplikasikan sebagai tegangan
revers (tegangan balik) dari sebuah dioda (yaitu tegangan pada arah tersebut
pada dioda tidak akan menghantarkan tanpa terkena cahaya) dan pengukuran
menghasilkan arus photo ( hal ini juga bagus untuk mengaplikasikan tegangan
mendekati nol).
Ketergantungan arus photodioda pada kekuatan cahaya dapat sangat linier .
Karakteristik bahan photodioda:
1. Silikon (Si) : arus lemah saat gelap, kecepatan tinggi, sensitivitas yang bagus
antara 400 nm sampai 1000 nm ( terbaik antara 800 sampai 900 nm).
2. Germanium (Ge): arus tinggi saat gelap, kecepatan lambat, sensitivitas baik
antara 600 nm sampai 1800 nm (terbaik 1400 sampai 1500 nm).
3. Indium Gallium Arsenida (InGaAs): mahal, arus kecil saat gelap, kecepatan
tinggi sensitivitas baik pada jarak 800 sampai 1700nm (terbaik antara 1300
Gambar 2.3 Gambar Photodioda (kiri) dan Simbolnya (kanan)
Gambar 2.4 Karakteristik photodioda sensitivitas - vs - panjang gelombang
Pada gambar diatas dapat dilihat, bahwa semakin besar nilai panjang
gelombang suatu sinar inframerah yang dipancarkan maka akan semakin besar pula
sensitivitas pada photodioda.
2.4. Mikrokontroler AT89S52
2.4.1. Arsitektur Mikrokontroler AT89S52
Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan mikrokomputer,
hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi
namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam
jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan mikroprosesor).
Sebagai kebutuhan pasar, mikrokontelor hadir untuk memenuhi selera industri dan
para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih
canggih.
Ilustrasi yang mungkin bisa memberikan gambaran yang jelas dalam
penggunaan mikrokontroler adalah aplikasi mesin tiket dalam arena permainan yang
saat ini terkenal di Indonesia. Jika kita sudah selesai bermain, maka akan diberikan
suatu nilai, nilai inilah yang menentukan berapa jumlah tiket yang bisa diperoleh dan
jika dikumpulkan dapat ditukar dengan berbagai macam hadiah. Sistem tiket ini
ditangani dengan mikrokontroler, karena tidak mungkin menggunakan computer PC
yang harus dipasang disamping (atau di belakang) mesin permainan yang
bersangkutan.
Selain system tiket, kita juga dapat menjumpai aplikasi mikrokontroler dalam
bidang pengukuran jarak jauh atau ynag dikenal dengan system telemetri. Misalnya
pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman
jika dipasang suatu system pengukuran yang bisa mengirimkan data lewat pemancar
dan diterima oleh stasiun pengamatan dari jarak yang cukup aman dari sumbernya.
Sistem pengukuran jarak jauh ini jelas membutuhkan suatu system akuisisi data
sekaligus system pengiriman data secara serial (melalui pemancar), yang semuanya itu
bisa diperoleh dari mikrokontroler yang digunakan.
Tidak seperti system komputer, yang mampu menangani berbagai macam
mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan
lainnya terletak pada perbandingan RAM-nya dan ROM. Pada system computer
perbandingan RAM dan ROM-nya besar, artinya program-program pengguna
disimpan dalam ruang RAM yang relative besar, sedangkan rutin-rutin antarmuka
perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada
mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program
control disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang
ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat
penyimpanan sementara, termasuk register-register yang digunakan pada
mikrokontroler yang bersangkutan.
2.4.2. Konstruksi AT89S52
Mikrokontroler AT89S52 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1
kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 10 Kilo Ohm
dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini
AT89S52 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan
frekuensi maksimum 12 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi
rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja
mikrokontroler.
Memori merupakan bagian yang sangat penting pada mikrokontroler.
Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan
catu daya. Sesuai dangan keperluannya, dalam susunan MCS-51 memori
penyimpanan progam ini dinamakan sebagai memori progam.
Random Access Memori (RAM) isinya akan sirna begitu IC kehilangan catu
daya, dipakai untuk menyimpan data pada saat progam bekerja. RAM yang dipakai
untuk menyimpan data ini disebut sebagai memori data.
Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah
baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC
mikrokontroler dicetak di pabrik IC. Untuk keperluan tertentu mikrokontroler
mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang
disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra
Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan
setelah ada flash PEROM yang harganya jauh lebih murah.
Jenis memori yang dipakai untuk memori Program AT89S52 adalah Flash
PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat
bantuan alat yang dinamakan sebagai AT89S52 Flash PEROM Programmer. Memori
Data yang disediakan dalam chip AT89S52 sebesar 256 byte, meskipun hanya kecil
saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.
Sarana Input/Ouput yang disediakan cukup banyak dan bervariasi. AT89S52
mempunyai 32 jalur Input/Ouput. Jalur Input/Ouput paralel dikenal sebagai Port 1
Deskripsi pin-pin pada mikrokontroler AT89S52 :
VCC (Pin 40) Suplai tegangan
GND (Pin 20) Ground
Port 0 (Pin 39-Pin 32) Port 0 dapat berfungsi sebagai I/O biasa, low order
multiplex address/data ataupun penerima kode byte pada saat
flash progamming Pada fungsi sebagai I/O biasa port ini dapat
memberikan output sink ke delapan buah TTL input atau dapat
diubah sebagai input dengan memberikan logika 1 pada port
tersebut.
Pada fungsi sebagai low order multiplex address/data, port ini
akan mempunyai internal pull up. Pada saat flash progamming
diperlukan eksternal pull up, terutama pada saat verifikasi
program.
Port 2 (Pin 21 – pin 28) Port 2 berfungsi sebagai I/O biasa atau high order
address, pada saat mengaksememori secara 16 bit. Pada saat
mengakses memori 8 bit, port ini akan mengeluarkan isi dari P2
special function register. Port ini mempunyai internal pull up
dan berfungsi sebagai input dengan memberikan logika 1.
Sebagai output, port ini dapat memberikan output sink keempat
buah input TTL.
Port 3 (Pin 10 – pin 17) Port 3 merupakan 8 bit port I/O dua arah dengan
internal pullup. Port 3 juga mempunyai fungsi pin
Nama pin Fungsi
P3.0 (pin 10) RXD (Port input serial)
P3.1 (pin 11) TXD (Port output serial)
P3.2 (pin 12) INTO (interrupt 0 eksternal)
P3.3 (pin 13) INT1 (interrupt 1 eksternal)
P3.4 (pin 14) T0 (input eksternal timer 0)
P3.5 (pin 15) T1 (input eksternal timer 1)
P3.6 (pin 16) WR (menulis untuk eksternal data memori)
P3.7 (pin 17) RD (untuk membaca eksternal data memori)
RST (pin 9) Reset akan aktif dengan memberikan input high selama 2 cycle.
ALE/PROG (pin 30) Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat selama mengakses memori
eksternal. Selain itu, sebagai pulsa input progam (PROG)
selama memprogam Flash.
PSEN (pin 29) Progam store enable digunakan untuk mengakses memori progam eksternal.
EA (pin 31) Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan progam yang ada pada
memori eksternal setelah sistem direset. Jika kondisi high, pin
ini akan berfungsi untuk menjalankan progam yang ada pada
memori internal. Pada saat flash progamming, pin ini akan
mendapat tegangan 12 Volt.
XTAL1 (pin 19) Input untuk clock internal.
BAB 3
PERANCANGAN ALAT DAN PERANCANGAN PROGRAM
3.1 Perangkat Keras
3.1.1 Diagram Blok
Gambar 3.1 Diagram blok rangkaian
3.1.2 Rangkaian Sensor dinding
Untuk dapat menghindari dinding, maka robot dilengkapi dengan 6 buah sensor
dinding. Semua sensor dinding ini mempunyai rangkaian yang sama, hanya
VCC 5V
Infra Merah
100 100
Infra Merah 100
Masing-masing sensor menggunakan 3 buah pemancar inframerah dan sebuah
photodioda. Sensor ini memanfaatkan pantulan dari pemancar inframerah yang
diterima oleh photodioda. Digunakan 3 buah pemancar inframerah pada
masing-masing sensor bertujuan agar sinyal pantulan semakin kuat, sehingga posisi halangan
dapat terdeteksi dengan baik.
Setiap pantulan yang diterima oleh photodioda akan diolah dan dijadikan data
digital, sehingga bila photodioda mendapatkan pantulan dari pemancar inframerah,
maka akan mengirimkan sinyal low ke mikrokontroler AT89S52. Dengan demikian
mikrokontroler dapat mendeteksi sensor yang mengirimkan sinyal low dan mengambil
tindakan untuk mengatur putaran roda kekanan atau kekiri.
Rangkaian pemancar inframerah tampak seperti gambar di bawah ini:
Gambar 3.2. Rangkaian Pemancar inframerah
Pada rangkaian di atas digunakan 3 buah LED inframerah yang diparalelkan,
dengan demikian maka intensitas yang dipancarkan oleh inframerah semakin kuat,
karena merupakan gabungan dari 3 buah LED inframerah. Resistor yang digunakan
adalah 100 ohm sehingga arus yang mengalir pada masing-masing LED inframerah
5
0, 05 50
100 V
i A atau mA
R
Dengan besarnya arus yang mengalir ke LED inframerah, maka intensitas
pancaran inframerah akan semakin kuat, yang menyebabkan jarak pantulannya akan
semakin jauh.
Pantulan dari sinar inframerah akan diterima oleh photodioda, kemudian akan
diolah oleh rangkaian penerima agar menghasilkan data biner, dimana jika photodioda
menerima pantulan sinar inframerah maka output dari rangkaian penerima ini akan
mengeluarkan logika low (0), namun jika photodioda tidak menerima pantulan sinar
inframerah, maka output dari rangkaian penerima akan mengeluarkan logika high (1).
Rangkaian penerima inframerah seperti gambar di bawah ini:
Gambar 3.3. Rangkaian Penerima sinar inframerah
Photodioda memiliki hambatan sekitar 15 s/d 20 Mohm jika tidak terkena sinar
inframerah, dan hambatannya akan berubah menjadi sekitar 80 s/d 300 Kohm jika
terkena sinar inframerah tergantung dari besarnya intensitas yang mengenainya.
Semakin besar intensitasnya, maka hambatannya semakin kecil.
Pada rangkaian di atas, output dari photodioda diumpankan ke basis dari
transistor tipa NPN C828, ini berarti untuk membuat transistor tersebut aktip maka
tegangan yang keluar dari photodioda harus lebih besar dari 0,7 volt. Syarat ini akan
terpenuhi jika photodioda mendapatkan sinar inframerah. Analisanya sebagai berikut:
Jika tidak ada sinar inframerah yang mengenai photodioda, maka hambatan pada
photodioda 15 Mohm, sehingga:
2 330.000
5 0,107 1 2 15.000.000 330.000
R
Vo xVcc x Volt
R R
Vout akan diumpankan be basis dari transistor C828, karena tegangannya hanya 0,107
Volt maka transistor tidak aktif.
Jika ada sinar inframerah yang mengenai photodioda, maka hambatan pada
photodioda 300 Kohm, sehingga:
2 330.000
5 2, 619
1 2 300.000 330.000
R
Vo xVcc x Volt
R R
Vout akan diumpankan ke basis dari transistor C828, karena tegangannya lebih besar
dari 0,7 volt yaitu 2,619 Volt maka transistor akan aktif.
Aktifnya transistor C828 akan menyebabkan kolektornya terhubung ke emitor,
sehingga kolektor mandapat tegangan 0 volt dari ground, tegangan ini diumpankan ke
basis dari transistor ke-2 tipe PNP A733, sehingga transistor ini juga aktif. Seterusnya
aktifnya transistor A733 akan menyebabkan kolektornya terhubung ke emitor,
sehingga kolektor mandapat tegangan 5 volt dari Vcc, tegangan ini diumpankan ke
Kolektor dari transistor C945 dihubungkan mikrokontroler AT89S52 sehingga
jika transistor ini aktif, maka kolektor akan mendapatkan tegangan 0 volt dari ground.
Tegangan 0 volt inilah yang merupakan sinyal low (0) yang diumpankan ke
mikrokontroler AT89S52, sehingga mikrokontroler dapat mengetahui bahwa sensor
ini mengirimkan sinyal, yang berarti bahwa sensor ini telah berada dekat dengan
penghalang atau dinding.
Transistor ke-4 tipe PNP A733 berfungsi untuk menyalakan LED sebagai
indikator bahwa sensor ini menerima pantulan sinar inframerah dari pemancar. LED
ini akan menyala jika sensor menerima sinar inframerah, dan akan mati jika sensor
tidak menerima sinar inframerah.
3.1.3. Rangkaian Pengendali Pergerakan Motor (Jembatan H)
Untuk dapat bergerak, maka robot harus dapat mengendalikan perputaran rodanya.
Robot menggunakan 2 buah motor DC 6 volt untuk menggerakkan rodanya, dimana 1
motor untuk menggerakkan roda sebelah kanan dan 1 motor lagi untuk menggerakkan
roda sebelah kiri.
Motor DC akan berputar searah/berlawanan arah dengan jarum jam jika salah
satu kutubnya diberi tegangan positip dan kutub yang lainnya diberi tegangan negatip
atau ground. Dan motor DC akan berputar kearah sebaliknya jika polaritasnya
dibalik. Dengan sifat yang demikian maka dibutuhkan suatu rangkaian yang dapat
membalikkan polaritas yang diberikan ke motor DC tersebut, sehingga perputaran
dihubungkan dengan mikrokontroler AT89S52, maka pergerakan motor dapat
dikendalikan oleh program.
Rangkaian untuk mengendalikan perputaran motor DC tersebut adalah sebuah
rangkaian yang dikenal dengan jembatan H. Jembatan H ini terdiri dari 4 buah
transistor, dimana 2 buah transistor bertipe NPN dan 2 buah transistor lagi bertipe
PNP. Ke-4 transistor ini dirangkai sedemikian rupa sehingga dengan memberikan
sinyal low atau high pada rangkaian maka perputaran motor dapat diatur.
Untuk perintah maju, maka robot akan memutar maju kedua motor, motor
kanan dan kiri. Untuk perintah mundur, maka robot akan memutar mundur kedua
motor. Sedangkan untuk memutar/berbelok kekanan, maka robot akan memutar maju
motor sebelah kiri dan memutar mundur motor sebelah kanan, sehingga dengan
demikian maka robot akan memutar/berbelok kearah kanan. Hal sebaliknya dilakukan
jika robot berputar ke sebelah kiri. Rangkaian jembatan H, ditunjukkan pada gambar
di bawah ini:
[image:30.595.123.452.477.689.2]Pada rangkaian di atas, jika P2.6 diset high yang berarti P2.6 mendapat
tegangan 5 volt, maka kedua transistor tipe NPN C945 yang disebelah kiri akan aktif.
Hal ini akan membuat kolektor dari kedua transistor C945 itu akan mendapat tegangan
0 volt dari ground. Kolektor dari transistor C945 yang berada di sebelah kiri atas
diumpankan ke basis dari transistor tipe PNP TIP 127 sehingga basis dari transistor
TIP 127 mendapatkan tegangan 0 volt yang menyebabkan transistor ini aktif
(transistor tipe PNP akan aktif jika tegangan pada basis lebih kecil dari 4,34 volt).
Aktifnya transistor PNP TIP 127 ini akan mengakibatkan kolektornya terhubung ke
emitor sehingga kolektor mendapatkan tegangan 5 volt dari Vcc.
Sedangkan kolektor dari transistor C945 yang berada di sebelah kiri bawah
diumpankan ke basis dari transistor tipe NPN TIP 122 sehingga basis dari transistor
TIP 122 mendapatkan tegangan 0 volt yang menyebabkan transistor ini tidak aktif
(transistor tipe NPN akan aktif jika tegangan pada basis lebih besar dari 0,7 volt).
Karena transistor TIP 122 ini tidak aktif, maka kolektornya tidak terhubung ke emitor,
sehingga kolektor tidak mendapatkan tegangan 0 volt dari ground.
Karena kolektor TIP 122 dihubungkan dengan kolektor TIP 127 yang
mendapatkan teganagan 5 volt dari Vcc, maka kolektor dari TIP 122 juga
mendapatkan tegangan yang sama. Hal ini menyebabkan kaki motor sebelah kiri
mendapatkan tegangan 5 volt (polaritas positip).
Agar motor dapat berputar ke satu arah maka kaki sebelah kanan motor harus
mendapatkan tegangan 0 volt (polaritas negatip). Hal ini diperoleh dengan
Pada rangkaian di atas, jika P2.7 diset low yang berarti P2.7 mendapat
tegangan 0 volt, maka kedua transistor tipe NPN C945 yang disebelah kanan tidak
akan aktif. Hal ini akan membuat kolektor dari kedua transistor C945 itu akan
mendapat tegangan 5 volt dari Vcc. Kolektor dari transistor C945 yang berada di
sebelah kanan atas diumpankan ke basis dari transistor tipe PNP TIP 127 sehingga
basis dari transistor TIP 127 mendapatkan tegangan 5 volt yang menyebabkan
transistor ini tidak aktip Karena transistor PNP TIP 127 tidak aktif maka
kolektornya tidak terhubung ke emitor sehingga kolektor tidak mendapatkan tegangan
5 volt dari Vcc, tetapi mendapatkan tegangan yang berasal dari transistor TIP 122
yang berada di bawahnya.
Sedangkan kolektor dari transistor C945 yang berada di sebelah kanan bawah
diumpankan ke basis dari transistor tipe NPN TIP 122 sehingga basis dari transistor
TIP 122 mendapatkan tegangan 5 volt yang menyebabkan transistor ini menjadi aktif.
Karena transistor TIP 122 ini menjadi aktif, menyebabkan kolektornya terhubung ke
emitor, sehingga kolektor mendapatkan tegangan 0 volt dari ground.
Karena kolektor TIP 122 yang mendapatkan tegangan 0 volt dari ground
dihubungkan dengan kolektor TIP 127, maka kolektor dari TIP 127 juga
mendapatkan tegangan yang sama. Hal ini menyebabkan kaki motor sebelah kanan
mendapatkan tegangan 0 volt (polaritas negatip). Hal ini akan menyebabkan motor
akan berputar ke satu arah tertentu. Sedangkan untuk memutar motor kearah
sebaliknya, maka logika yang diberikan ke P2.6 adalah low (0) dan logika yang
2200uF
5 Volt DC
0 Volt 6,2 Volt DC
6.2 V
3.1.4. Rangkaian Catu Daya (PSA)
Rangkaian catu daya ini berfungsi untuk mensuplay tegangan ke seluruh
rangkaian. Rangkaian ini terdiri dari sebuah baterei 6 volt yang di serikan dengan dua
buah dioda. Untuk menembus 1 buah dioda diperlukan tegangan sebesar 0,6 volt,
sehingga untuk menembus 2 buah dioda diperlukan tegangan sekitar 1,2 volt,
sehingga output dari rangkaian ini sekitar 4,8 volt sampai 5,0 volt. Kemudian
dipasang sebuah kapasitor untuk menyimpan arus, sehingga jika tiba-tiba
mikrokontroler membutuhkan arus besar, maka arus tersebut dapat disupplay oleh
[image:33.595.158.440.333.552.2]kapasitor ini. Rangkaian catu daya ditunjukkan oleh gambar berikut ini :
Gambar 3.5 Rangkaian catu daya
Pada rangkaian ini terdapat 2 buah keluaran, yaitu 5 volt dan 6 volt. Keluaran
5 volt dibutuhkan oleh mikrokontroler, penguat sinyal dan rangkaian sensor,
3.2 Perangkat Lunak
3.2.1. Bahasa Assembly MCS-51
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S52 adalah
bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa
ini hanya ada 51 instruksi. Dari 51 instruksi, yang sering digunakan orang hanya 10
instruksi. Instruksi –instruksi tersebut antara lain :
1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register
tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.
Contoh pengisian nilai secara langsung
MOV R0,#20h
Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0).
Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai.
Contoh pengisian nilai secara tidak langsung
MOV 20h,#80h
...
...
MOV R0,20h
Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20
Heksadesimal ke register 0 (R0).
Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah
2. Instruksi DJNZ
Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk
mengurangi nilai register tertentu dengan 1 dan lompat jika hasil
pengurangannya belum nol. Contoh ,
MOV R0,#80h
Loop: ...
...
DJNZ R0,Loop
...
R0 - 1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan
meneruskan ke perintah pada baris berikutnya.
3. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu.
Contoh :
...
ACALL TUNDA
...
TUNDA:
...
4. Instruksi RET
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin
Contoh,
ACALL TUNDA
...
TUNDA:
...
RET
5. Instruksi JMP (Jump)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu.
Contoh,
Loop:
...
...
JMP Loop
6. Instruksi JB (Jump if bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika high (1).
Contoh,
Loop:
JB P1.0,Loop
...
7. Instruksi JNB (Jump if Not bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
Contoh,
Loop:
JNB P1.0,Loop
...
8. Instruksi CJNZ (Compare Jump If Not Equal)
Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register
dengan suatu nilai tertentu.
Contoh,
Loop:
...
CJNE R0,#20h,Loop
...
Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin
Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan
instruksi selanjutnya..
9. Instruksi DEC (Decreament)
Instruksi ini merupakan perintah untuk mengurangi nilai register yang
dimaksud dengan 1.
Contoh,
MOV R0,#20h R0 = 20h
...
DEC R0 R0 = R0 – 1
10.Instruksi INC (Increament)
Instruksi ini merupakan perintah untuk menambahkan nilai register yang
dimaksud dengan 1. Contoh,
[image:38.595.115.483.456.710.2]MOV R0,#20h R0 = 20h
...
INC R0 R0 = R0 + 1
...
11.Dan lain sebagainya
3.2.2. Software 8051 Editor, Assembler, Simulator (IDE)
Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah
editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti di bawah
ini.
Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble
(di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika
masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan
perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu
sampai tidak ada pesan kesalahan lagi.
Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke
dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an.
Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller.
3.2.3. Software Downloader
Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroler digunakan
software ISP- Flash Programmer 3.0a yang dapat didownload dari internet.
[image:39.595.108.440.324.408.2]Tampilannya seperti gambar berikut ini:
Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil
file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk
mengisikan hasil kompilasi tersebut ke mikrokontroller.
3.2.4. Perancangan Program
Robot ini dirancang untuk mendeteksi adanya dinding, mendekatinya, kemudian
[image:40.595.156.435.270.713.2]meghindarinya. Diagram alir dari program yang akan dibuat adalah:
Program diawali dengan pengecekan logika pada sensor dinding, kemudian
robot akan berjalan secara acak. Saat sensor dinding samping kanan atau kiri aktif,
maka sensor akan memberi informasi kepada mikrokontroler tentang keberadaan
dinding. Kemudian mikrokontroler memberikan perintah untuk mengarahkan robot
untuk menghindari dinding dengan cara belok kanan atau kiri. Tetapi ketika sensor
tidak aktif, robot akan maju dan berjalan kembali secara acak..
Program yang dibuat adalah sebagai berikut:
motor_kanan1 bit p0.0 motor_kanan2 bit p0.1 motor_kiri1 bit p0.2 motor_kiri2 bit p0.3
mati_untuk_belok:
clr motor_kanan1 clr motor_kanan2 clr motor_kiri1 clr motor_kiri2 mov r7,#2
BAB 4
PENGUJIAN DAN ANALISA RANGKAIAN
4.1. Pengujian Rangkaian
4.1.1 Pengujian Rangkaian Mikrokontroler AT89S52
Untuk mengetahui rangkaian mikrokontroler ini sudah bekerja dengan baik, maka
dilakukan pengujian. Pengujian ini dilakukan dengan cara memberikan program
sederhana pada mikrokontroler AT89S52. Programnya adalah sebagai berikut:
loop:
setb p2.7
acall tunda
clr p2.7
acall tunda
sjmp loop
tunda:
mov r7,#0ffh
tnd:
mov r6,#0ffh
djnz r6,$
djnz r7,tnd
ret
Program ini ditujukan untuk menghidupkan LED yang terhubung pada p2.7,
menerus. Perintah setb p2.7 akan menyebabkan p2.7 akan berlogika high, yang akan
menyebabkan transistor akan aktif. Aktifnya transistor akan memicu hidupnya LED.
Perintah acall tunda akan menyebabkan LED tersebut akan menyala selama selang
waktu tertentu. Setelah itu, dengan perintah clr p2.7, p2.7 akan berlogika low. Hal ini
menyebabkan LED mati. LED akan mati selama beberapa saat karena adanya
pemanggilan waktu tunda kembali yang ditandai dengan perintah acall tunda.
Keadaan ini akan berulang – ulang, sehingga LED akan terlihat kelap – kelip.
Jika program tersebut diisikan, kemudian nyala LED terlihat kelap – kelip
maka rangkaian tersebut telah bekerja dengan baik.
4.1.2 Pengujian Rangkaian Sensor Dinding
Rangkaian ini dikatakan baik apabila ketika photodioda terkena pantulan inframerah,
LED indikator akan menyala dan tegangan keluarannya jika diukur adalah 0 V.
Demikian sebaliknya, ketika photodioda tidak terkena pantulan inframerah, LED
indikator tidak akan menyala, dan tegangan kelurannya jika diukur adalah 5 V.
Sensor dinding mempunyai jarak jangkau terhadap dinding yang berbeda –
beda. Berikut ini adalah jangkauan dinding yang dapat dideteksi sensor dinding ini:
Letak Sensor Jangkauan
Depan Kanan 6 cm
Depan Kiri 6 cm
Samping Kiri 7 cm
Sudut Kanan 6 cm
Sudut Kiri 6 cm
4.1.3 Pengujian Rangkaian Jembatan H
Untuk menguji rangkaian ini, diberikan logika high (5 V) pada salah satu inputnya,
sedangkan inputnya yang lain diberikan logika low (0 V). Maka motor dc yang
dihubungkan pada outputnya akan berputar ke arah tertentu. Dan ketika pemberian
logika dibalik, motor akan berputar kearah yang sebaliknya.
4.1.4. Pengujian Rangkaian PSA
Rangkaian PSA dikatakan baik ketika nilai tegangan outputnya berkisar antara
4,5V – 5,0V.
4.2 Analisa
Setelah keseluruhan dibuat dan diuji, maka berikut ini adalah rangkaian kerja
dari robot yang dibuat:
1. Pada saat dihidupkan, robot akan berjalan secara acak.
2. Ketika salah satu sensor aktif, robot akan segera menjalankan rutin untuk
3. Pada saat sensor tidak aktif, maka robot akan berjalan secara acak kembali.
4. Pengaruh cahaya sangat besar terhadap jalannya robot untuk mengetahui
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
1. Makin banyak pemancar inframerah yang dipakai maka sinyal pantulannya
semakin kuat sehingga posisi dinding dapat terdeteksi dengan baik.
2. Ketika ada dinding di depan maupun di samping, robot tidak akan menabrak
melainkan menghindarinya tetapi robot tidak mengetahui jarak sensor terhadap
dinding.
3. Photodioda kurang sensitive terhadap sinar yang berasal dari lingkungan yang
memiliki sinar inframerah yang besar.
4. Pada catu daya terdapat 2 buah keluaran, dimana tegangan sebesar 6 volt
dibutuhkan oleh rangkaian pengendali motor (jembatan H), sedangkan tegangan 5
volt dibutuhkan oleh rangkaian mikrokontroler, penguat sinyal dan rangkaian
sensor.
5.2 Saran
1. Alat ini bekerja untuk menghindari dinding, ada baiknya jika alat ini
dikembangkan bukan hanya sebagai penghindar dinding saja melainkan alat yang
2. Untuk di masa yang akan datang penggunaan alat dapat lebih dikembangkan,
seperti photodioda sebagai sensor dindingnya karena photodioda sangat mudah
terganggu jika ada cahaya disekelilingnya.
3. Alangkah baiknya jika alat ini dikembangkan kegunaannya dikalangan
mahasiswa, guna mengembangkan teknologi dan inovasi robotik dikalangan
Agfianto. 2002. Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi. Edisi Pertama Penerbit: Gava Media, Yogyakarta.
Andi. 2003. Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler
AT89C51. Penerbit PT Elex Media Komputindo, Jakarta.
Malvino, Albert Paul, 2003. Prinsip-prinsip Elektronika. Jilid 1 & 2. Edisi Pertama. Penerbit: Salemba Teknika, Jakarta.