Perancangan Dan Penggunaan Photodioda Sebagai Sensor Penghindar Dinding Pada Robot Forklift

(1)

TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh gelar Ahli Madya

JOHANNES PANDIANGAN 042408008

PROGRAM STUDI D3 FISIKA INSTRUMENTASI DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2007


(2)

PERNYATAAN

PERANCANGAN DAN PENGGUNAAN PHOTODIODA SEBAGAI SENSOR PENGHINDAR DINDING PADA ROBOT FORKLIFT

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 30 Juli 2007

JOHANNES PANDIANGAN 042408008


(3)

PERSETUJUAN

Judul : PERANCANGAN DAN PENGGUNAAN

PHOTODIODA SEBAGAI SENSOR PENGHINDAR DINDING PADA ROBOT FORKLIFT

Kategori : TUGAS AKHIR

Nama : JOHANNES PANDIANGAN

Nomor Induk Mahasiswa : 042408008

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 Pembimbing, Ketua,

Dr. Marhaposan Situmorang Ahmad Hidayat S.T


(4)

PENGHARGAAN

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Pemurah dan Maha Penyayang, dengan limpah kasih karunia-Nya tugas akhir ini berhasil diselesaikan dalam waktu yang telah ditetapkan.

Dalam menyelesaikan tugas akhir ini, penulis mengucapkan terima kasih kepada Bapak Ahmad Hidayat S.T selaku dosen pembimbing, yang telah memberikan panduan dan berbagai macam masukan, serta penuh kepercayaan kepada penulis untuk menyempurnakan kajian ini. Ucapan terima kasih juga penulis sampaikan kepada Ketua dan Sekretaris Departemen Dr. Marhaposan Situmorang, M.Sc. dan Dra. Justinon, M.Si., Bapak Dr. Eddy Marlianto, M.Sc selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Departemen Fisika FMIPA USU, pegawai di FMIPA USU, dan rekan-rekan mahasiswa sekalian. Teristimewa kepada kedua orang tua dan keluarga yang penulis cintai dan sayangi, yang telah memberikan dukungan moral dan material kepada penulis. Semoga Tuhan Yang Maha Esa akan membalasnya.


(5)

ABSTRAK

Kajian ini bertujuan untuk merancang dan membuat sebuah prototipe robot forklift (pengangkat barang), yang dapat menghindari dinding dengan photodioda sebagai sensor pendeteksinya. Sistem ini menggunakan beberapa rangkaian elektronik dengan Mikrokontroler AT89S52 sebagai otak pemrosesan dengan memakai bahasa pemrograman assembly. Kajian ini nantinya diharapkan dapat digunakan untuk membantu mempermudah aktivitas manusia seperti dalam hal pengangkatan alat-alat berat yang sulit dikerjakan sendiri oleh manusia.


(6)

DAFTAR ISI

Halaman

Persetujuan i

Pernyataan ii

Penghargaan iii

Abstrak iv

Daftar Isi v

Daftar Gambar vii

Daftar Tabel viii

Bab 1 Pendahuluan 1

1.1Latar Belakang 1

1.2Tujuan Proyek 2

1.3Identifikasi Masalah 2

1.4Batasan Masalah 3

1.5Sistematika Penulisan 3

Bab 2 Landasan Teori

2.1 Diagram Blok Rangkaian Robot Forklift 5

2.2 Arsitektur Mikrokontroler AT89S52 7

2.3 Konstruksi AT89S52 9

2.4 Perangkat Lunak 14

2.4.1 Bahasa Assembly MCS-51 14

2.4.2 Software 8051 Editor, Assembler, Simulator (IDE) 19

2.4.3 Software Downloader 20

2.5 IC Op-Amp LM 358 20

2.6 Photodioda 25

2.7 Dioda Pemancar Cahaya Inframerah (LED Inframerah) 27

2.8 Transistor 30

2.9 Osilator Kristal 34

Bab 3 Perancangan Alat dan Program 36

3.1 Spesifikasi Alat (Robot) 36

3.2 Diagram Blok 36

3.3 Fungsi Tiap Blok 37

3.4 Rangkaian Catu Daya (PSA) 39

3.5 Rangkaian Mikrokontroler AT89S52 40

3.6 Perancangan Sensor Dinding dan Pengolah Data Sensor 41 3.7 Perancangan Driver Penggerak Motor DC (Jembatan H) 45


(7)

Bab 4 Pengujian Rangkaian dan Analisa 54

4.1 Pengujian Rangkaian Catu Daya 54

4.2 Pengujian Rangkaian Mikrokontroler AT89S52 55

4.3 Pengujian Rangkaian Sensor Dinding 56

4.4 Pengujian Pengendali Pergerakan Motor (Motor Driver) 57


(8)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Diagram Blok Rangkaian Robot Forklift 5

Gambar 2.2 IC Mikrokontroler AT89S52 13

Gambar 2.3 8051 Editor, Assembler, Simulator (IDE) 19

Gambar 2.4 ISP-Flash Programmer 3.a 20

Gambar 2.5 Simbol Rangkaian Penguat Operasional 21

Gambar 2.6 Penguat Pembalik (Inverting Amplifier) 23

Gambar 2.7 Konfigurasi Pin LM 358 24

Gambar 2.8 Gambar Photodioda dan Simbolnya 27

Gambar 2.9 Simbol dan Rangkaian Dasar Sebuah LED 28

Gambar 2.10 Simbol Transistor PNP 30

Gambar 2.11 Simbol Transistor NPN 30

Gambar 2.12 Transistor Sebagai Saklar 31

Gambar 2.13 Karakteristik Transistor Aktif 32

Gambar 2.14 Karakteristik Transistor Sebagai Saklar 33 Gambar 2.15 Lambang dan Rangkaian Ekivalen Osilator Kristal 35

Gambar 3.1 Diagram Blok Rangkaian 37

Gambar 3.2 Rangkaian Catu Daya 39

Gambar 3.3 Rangkaian Mikrokontroler AT89S52 40

Gambar 3.4 Rangkaian Pemancar Inframerah 42

Gambar 3.5 Rangkaian Penerima Sinyal Photodioda 43

Gambar 3.6 Rangkaian Jembatan H 46

Gambar 3.7 Diagram Alir Program 49


(9)

DAFTAR TABEL

Halaman

Tabel 2.1 Fungsi Kaki-Kaki Pin Pada Port 3 11

Tabel 4.1 Hasil Pengukuran Rangkaian Catu Daya 54

Tabel 4.2 Hasil Pengujian Pada Port 2.7 Mikrokontroler 56

Tabel 4.3 Pengujian Sensor Dinding 57


(10)

PENDAHULUAN

1.1 Latar Belakang

Pada kehidupan sehari-hari manusia membutuhkan bantuan dari sesuatu yang dapat bekerja secara cepat, teliti dan dapat bekerja secara terus-menerus tanpa mengenal lelah, robot adalah jawaban dari keinginan tersebut. Robot ini diharapkan dapat menggantikan pekerjaan manusia pada lingkungan yang berbahaya bagi kesehatan maupun keselamatan manusia tersebut dan dapat mengamati lingkungan lebih dari kemampuan panca indra manusia.

Pada proyek ini dibangun sebuah AMR (Autonomous Mobile Robot) yang dapat mengangkat barang dan berusaha untuk memindahkan barang tersebut ke tempat yang sudah ditentukan. Robot ini memanfaatkan cahaya inframerah yang dipantulkan oleh barang juga dinding sebagai sistem navigasinya (pedomannya). Robot akan menangkap cahaya inframerah yang dipantulkan oleh barang dan dinding tersebut menggunakan photodioda dengan mikrokontroler sebagai pusat kontrolnya.

Mikrokontroler adalah sistem komputer yang ringkas, sebab dapat menggantikan fungsi komputer dalam pengendalian kerja dan disain yang jauh lebih ringkas dari pada komputer. Dengan ukurannya yang kecil, mikrokontroler dapat digunakan pada peralatan yang bersifat bergerak (mobile), seperti kendaraan dan peralatan jinjing (portable), atau pada robot.

AT89S52 adalah chip mikrokontroler produksi Atmel Inc, merupakan keluarga dari MCS-51 rancangan Intel. AT89S52 mempunyai fitur dasar yang cukup lengkap


(11)

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, sehingga dalam penggunaannya tidaklah begitu sulit.

1.2 Tujuan Proyek

Yang menjadi tujuan penulisan Tugas Akhir ini adalah:

1. Memanfaatkan mikrokontroler AT89S52 sebagai tempat pemrosesan data (otak) dari sebuah sistem (robot).

2. Sebagai langkah awal untuk membuat sebuah sistem otomatisasi dalam dunia industri sehingga meningkatkan efisiensi kerja.

3. Membuat sebuah sistem elektronik yang dapat membantu manusia untuk memindahkan barang ke tempat tertentu secara otomatis.

4. Memanfaatkan inframerah dan photodioda sebagai sensor pada robot

1.3 Identifikasi Masalah

Yang menjadi permasalahan dalam penulisan Tugas Akhir ini adalah bagaimana merancang suatu robot pengangkat barang yang dapat menghindari dinding dengan photodioda sebagai sensornya dan dihubungkan dengan mikrokontroler AT89S52 memakai bahasa pemograman assembly.


(12)

1.4Batasan Masalah

Pemancar yang digunakan pada sensor dinding adalah IRED (Infrared Emitting Diodes) dan penerimanya adalah photodioda, sehingga dinding hanya dapat terdeteksi dari jarak yang dekat (maksimal 30cm).

 Robot hanya bisa mendeteksi dinding yang berada di depan, depan samping kiri dan depan samping kanan, tidak dapat mendeteksi keberadaan dinding dibagian belakang.

 Robot hanya mengetahui keberadaan benda (benda yang sudah ditentukan) di depannya, tetapi tidak mengetahui berapa jarak benda dari tempat robot berada.

1.5Sistematika Penulisan

Untuk mempermudah pembahasan dan pemahaman, maka penulis membuat

sistematika penulisan Tugas Akhir ini sebagai berikut:

BAB I PENDAHULUAN

Meliputi latar belakang masalah, maksud dan tujuan penulisan, identifikasi masalah, batasan masalah, metode penulisan dan sistematika penulisan.

BAB II LANDASAN TEORI

Dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian, yang meliputi arsitektur dan konstruksi mikrokontroler yang digunakan. Selain itu juga membahas tentang jenis sensor yang digunakan.

BAB III PERANCANGAN ALAT DAN PROGRAM


(13)

BAB IV PENGUJIAN DAN ANALISA RANGKAIAN

Meliputi uraian tentang cara pengujian rangkaian.

BAB V KESIMPULAN DAN SARAN

Mengenai kesimpulan yang didapat setelah merakit proyek ini dan saran yang diberikan demi kesempurnaan dan pengembangan proyek ini pada masa yang akan datang kearah yang lebih baik.

DAFTAR PUSTAKA LAMPIRAN


(14)

LANDASAN TEORI

2.1 Diagram Blok Rangkaian Robot Forklift


(15)

Gambar 2.1 merupakan diagram blok keseluruhan dari robot forklift. Pada robot ini terdapat 5 buah sensor dinding, dimana sensor dinding yang berada di bagian paling depan robot dihubungkan ke P2.3 dari mikrokontroler AT89S52, sensor dinding yang berada di depan kiri dihubungkan ke P2.5 dari mikrokontroler AT89S52, sensor dinding yang berada di depan kanan dihubungkan ke P2.6 dari mikrokontroler AT89S52, sedangkan sensor dinding belakang kiri dihubungkan ke P3.4 dari mikrokontroler AT89S52,dan sensor belakang kanan dihubungkan ke P3.3 dari mikrokontroler AT89S52.

Adapun sensor barang kanan dihubungkan ke P1.6 dari mikrokontroler AT89S52, sensor barang kiri dihubungkan ke P1.5 dari mikrokontroler AT89S52, dan sensor barang bawah dihubungkan ke P1.7 dari mikrokontroler AT89S52.

Sedangkan komponen lain yang dihubungkan ke mikrokontroler sebagai input antara lain seperti:

1. Sensor garis dihubungkan ke P3.5 dari mikrokontroler AT89S52

2. Limit switch bagian atas dihubungkan ke P3.7 dari mikrokontroler AT89S52 3. Limit switch bagian atas dihubungkan ke P3.6 dari mikrokontroler AT89S52

Untuk mengendalikan pergerakan motor stepper yang digunakan untuk mengangkat barang, digunakan rangkaian driver motor stepper, dimana rangkaian ini dapat memutar motor stepper searah atau berlawanan arah jarum jam bila diberi pulsa 1000,0100,0010,0001 atau 0001,0010,0100,1000 oleh mikrokontroler AT89S52. Dengan demikian pergerakan motor stepper dapat dikendalikan melalui program. Rangkaian ini dihubungkan ke P0.0,P0.1,P0.2,dan P0.3 dari mikrokontroler AT89S52.


(16)

Untuk mengendalikan pergerakan motor yang berfungsi sebagai penggerak roda dari robot, digunakan sebuah rangkaian driver penggerak motor DC yaitu jembatan H. Jembatan H ini akan memutar motor DC searah atau berlawanan arah jarum jam bila diberi pulsa 1 atau 0. Dengan demikian pergerakan motor dapat dikendalikan melalui program. Pin – pin jembatan H ini dihubungkan ke P0.4, P0.5, P0.6, dan P0.7 dari mikrokontroler AT89S52. Teori yang akan dibahas disini meliputi perangkat keras dan lunak yang mengarah kepada sensor penghindar tabrakan.

2.2. Arsitektur Mikrokontroler AT89S52

Mikrokontroler saat ini sudah dikenal dan digunakan secara luas pada dunia industri. Banyak sekali penelitian atau tugas akhir mahasiswa yang menggunakan berbagai versi mikrokontroler yang dapat dibeli dengan murah. Hal ini dikarenakan produksi massal yang dilakukan oleh para produsen chip seperti Atmel, Maxim, dan Microchip. Mikrokontroler saat ini merupakan chip utama pada hampir setiap peralatan elektronika canggih. Robot-robot canggih pun sangat bergantung pada kemapuan mikrokontroler dan kemapuan pembuat program mikrokontroler tersebut.

Mikrokontroler AT89S51/52 merupakan versi terbaru dibandingkan mikrokontroler AT89C51 yang telah banyak digunakan saat ini. Mikrokontroler AT89S52 merupakan mikrokomputer CMOS 8 bit dengan 8 Kbyte Flash Programmable dan Erasable Read Only Memory (PEROM), yaitu ROM yang dapat ditulis ulang atau dihapus sebanyak 1000 kali. Mikrokontroler ini berteknologi memori High Density Non Volatile kerapatan tinggi dari Atmel yang kompatibel dengan mikrokontroler standar


(17)

industri MCS-51 baik pin kaki IC maupun set intruksinya serta harganya yang cukup murah. Oleh kaena itu, sangatlah tepat jika digunakan untuk berbagai keperluan.

Kita dapat menjumpai bermacam aplikasi dari mikrokontroler, seperti dalam bidang pengukuran jarak jauh atau yang dikenal dengan sistem telemetri. Misalnya pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman jika dipasang suatu sistem 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 sistem akuisisi data sekaligus sistem pengiriman data secara serial (melalui pemancar), yang semuanya itu bisa diperoleh dari mikrokontroler yang digunakan.

Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk suatu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif 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 kontrol 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.


(18)

2.3 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. Mikrokontroler memiliki dua macam memori yang sifatnya berbeda.

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.


(19)

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 128 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/Output. Jalur Input/Output paralel dikenal sebagai Port 0 (P0.0..P0.7), Port 1 (P1.0..P1.7), Port 2 (P2.0..P2.7) dan Port 3 (P3.0.. P3.7).

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.


(20)

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 pinnya masing-masing.

Tabel 2.1 Fungsi Kaki-Kaki Pin Pada Port 3

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)


(21)

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. Dengan kata lain bila pin ini diberi logika tinggi (H), mikrokontroler akan melaksanakan instruksi dari ROM / EPROM ketika isi program counter kurang dari 4096. Bila diberi logika rendah (L) maka mikrokontroler akan melaksanakan seluruh instruksi dari memori program luar. Pada saat flash progamming, pin ini akan mendapat tegangan 12 Volt.

XTAL1 (pin 19)

Input untuk clock internal. Pin masukan ke rangkaian osilator internal. Sebuah osilator kristal atau sumber osilator luar dapat digunakan.

XTAL2 (pin 18)

Pin keluaran ke rangkaian osilator internal (pin output). Pin ini dipakai bila menggunakan osilator kristal.


(22)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 P1.0 P1.2 P1.3 P1.4 P1.1 P1.5 P1.6 P2.3 (A11) P2.1 (A9) P2.0 (A8) P1.7 P2.4 (A12) P2.6 (A14) P2.7 (A15) P2.5 (A13) PSEN ALE/PROG EA/VPP P3.1 (TXD) P3.2 (INTO) P3.0 (RXD) P3.5 (T1) P3.4 (TD) P3.3 (INT1) P3.6 (WR) P3.7 (RD) XTAL2 XTAL1 GND RST P0.2 (AD2) P0.7 (AD7) P0.6 (AD6) P0.5 (AD5) P0.4 (AD4) P0.3 (AD3) P0.1 (AD1) P0.0 (AD0) VCC

AT89S52

Gambar 2.2 IC Mikrokontroler AT89S52

Spesifikasi penting AT89S52 antara lain:


(23)

 8 Kbyte In-system Programmable (ISP) flash memori dengan kemampuan 1000 kali baca/tulis.

 Tegangan kerja 4 – 5 V.

 Bekerja dengan rentang 0 – 33 MHz.

 256x8 bit RAM internal.

 32 jalur I/O yang dapat deprogram.

 Tiga buah 16 bit Timer/Counter.

 Delapan sumber interrupt.

 Saluran Full-Duplex serial UART.

 Watchdog timer.

 Dual data pointer.

 Mode pemograman ISP yang fleksibel (Byte dan Page Mode).

2.4 Perangkat Lunak

2.4.1 Bahasa Assembly MCS-51

Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89C52 adalah bahasa assembly untuk MCS-51. Angka 51 merupakan jumlah instruksi pada bahasa ini. Dari 52 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.


(24)

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

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.


(25)

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 pemanggil setelah instruksi ACALL dilaksanakan.

Contoh:

ACALL TUNDA ... TUNDA:

... RET

5. Instruksi JMP (Jump)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh:

Loop:


(26)

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 dimaksud berlogika Low (0).

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


(27)

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:

MOV R0,#20h R0 = 20h ...

INC R0 R0 = R0 + 1 ...


(28)

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

Gambar 2.3 8051 Editor, Assembler, Simulator (IDE)

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 8051 IDE 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 mikrokontroler.


(29)

2.4.3 Software Downloader

Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroler digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet. Tampilannya seperti gambar di bawah ini

Gambar 2.4 ISP- Flash Programmer 3.a

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

2.5 IC OP-AMP LM 358

Penguat operasional adalah suatu rangkaian elektronika yang dikemas dalam bentuk rangkaian terpadu (IC). Perangkat ini sering digunakan sebagai penguat sinyal-sinyal, baik yang linier maupun yang nonlinier terutama dalam sistem-sistem pengaturan


(30)

penguat oprasional ini adalah karakteristiknya yang mendekati ideal sehingga dalam merancang rangkaian yang menggunakan penguat ini lebih mudah dan juga karena penguat ini bekerja pada tingkatan yang cukup dekat dengan karakteristik kerjanya yang teoritis.

Dari sudut sinyal sebuah operasional mempunyai tiga terminal, yaitu dua terminal masukan dan satu terminal keluaran. Gambar 2.5 menunjukkan simbol dari sebuah penguat operasional. Terminal 1 dan 2 adalah terminal masukan dan terminal 3 adalah terminal keluaran. Kebanyakan penguat operasional membutuhkan catu daya DC dengan dua polaritas untuk dapat beroperasi. Terminal 4 disambungkan ke tegangan positif ( +V) dan terminal 5 disambungkan ke tegangan negatif ( -V).

Gambar 2.5 Simbol rangkaian Penguat Operasional

Karakteristik utama sebuah penguat operasional yang ideal adalah: 1. Impedansi masukan yang tak terhingga

Penguat yang ideal diharapkan tidak menarik arus masukan, artinya tidak ada arus yang masuk ke terminal 1 maupun 2 ( I1 = I2 = 0 ).


(31)

Terminal 3 merupakan keluaran penguat opersional, idealnya diharapkan bertindak sebagai terminal keluaran sebuah sumber-sumber tegangan ideal. Tegangan antara terminal 3 dengan ground akan selalu sama dengan A (V2 – V1) dimana A adalah faktor penguatan sebuah penguat operasional.

3. Penguatan loop terbuka tak terhingga

Apabila dioperasikan pada loop terbuka (tidak ada umpan balik dari keluaran ke masukan), maka sebuah penguat operasional ideal mempunyai gain (penguatan) yang besarnya tak terhingga.

Pada op-amp terdapat satu terminal keluaran, dan dua terminal masukan. Terminal masukan yang diberi tanda (-) dinamakan terminal masukan pembalik (inverting), sedangkan terminal masukan yang diberi (+) dinamakan terminal masukan bukan pembalik (non inverting).

 Penguat Pembalik (Inverting Amplifier)

Penguat pembalik adalah rangkaian penguat dimana outputnya mempunyai perbedaan fasa 1800 dengan sinyal input. Rangkaian penguat pembalik ini ditunjukkan pada gambar di bawah ini. Pada rangkaian ini terminal masukan penguat tak membalik (non inverting) ditanahkan, sedangkan tegangan keluaran dihubungkan dengan terminal masukan pembaliknya.


(32)

Gbr 2.6 Penguat Pembalik (Inverting Amplifier)

Arus yang melintasi R1 ( I1 ) terbagi dua yaitu arus yang melintasi Rf ( I2 ) dan arus yang masuk ke op-amp sehingga dapat ditulis:

I1 = I2 + I3 ...(1) (V1–Vs)/R1 = (Vs-Vo)/Rf + Vs/Rin...(2) Dengan mengasumsikan bahwa op-amp adalah ideal (dimana Zin = A = tak terhingga), maka:

Vs = Vo/A = 0

Karena Vs = 0 sehingga persamaan (2) menjadi:

Vi/R1 = - Vo/Rf ...(3) Vo/Vi = - Rf /R1 ...(4) Vo = - (Rf/R1).Vi ...(5)

LM-358 merupakan rangkaian terintegrasi yang memiliki dua penguat operasional. Terdiri dari empat masukan, memiliki faktor penguatan yang besar dan frekuensi internal yang berubah-ubah, yang mana didisain secara spesifik untuk beroperasi dari sebuah power supplay melalui sebuah range tegangan.


(33)

IC ini memiliki spesifikasi sebagai berikut:

 Frekuensi internal yang dapat diubah untuk penguatannya.

 Penguatan tegangan yang besar (100 dB).

 Memiliki besar range tegangan antara 3V – 32V .

 Arus bias input rendah (20 nA).

 Arus offset input rendah (2 nA).

 Tegangan offset input rendah (2 mV).

 Tegangan output besar, berkisar 0 sampai (Vcc – 1,5V)


(34)

2.6 Photodioda

Photodioda merupakan piranti semikonduktor dengan struktur sambungan p-n yang dirancang untuk beroperasi bila dibiaskan dalam keadaan terbalik, untuk mendeteksi cahaya.

Ketika energi cahaya dengan panjang gelombang yang benar jatuh pada sambungan photodioda, arus mengalir dalam sirkuit eksternal. Komponen ini kemudian akan bekerja sebagai generator arus, yang arusnya sebanding dengan intensitas cahaya itu. Cahaya diserap di daerah penyambungan atau daerah intrinsik menimbulkan pasangan elektron-hole yang mengalami perubahan karakteristik elektris ketika energi cahaya melepaskan pembawa muatan dalam bahan itu, sehingga menyebabkan berubahnya konduktivitas. Hal inilah yang menyebabkan photodioda dapat menghasilkan tegangan/arus listrik jika terkena cahaya. Hal ini dapat ditunjukkan dengan rumus di bawah ini:

h.c

Eg = atau Eg = h.f



Dimana Eg = Energi foton

h = Potensial ionisasi (4,136.10-15 eV)

c = Kecepatan cahaya (3.108 m/s) Panjang Gelombang Cahaya (m)

Photodioda digunakan dalam aplikasi – aplikasi yang meliputi kartu bacaan, kontrol cahaya ambient dan layar proyektor. Pada photodioda kita mengenal istilah responsivitas yaitu kemampuan dari sebuah photodioda untuk menambah arus bias


(35)

mundur sebagai hasil dari sebuah penambahan pada cahaya. Reponsivitas dari photodioda merupakan perbandingan dalam mA/mW pada panjang gelombang tertentu photodioda honeywell SE3452 mempunyai perbandingan 0.5mA/mW. Jika cahaya yang teradiasi pada cell 2 mV, dioda akan menghasilkan arus yang mengalir sebesar 1 mA (0,5 mA/mW x 2 mV). Respon tertinggi dari SE3452 sekitar 820nm .

Mode operasi.

Photodioda dapat dioperasikan dalam 2 mode yang berbeda:

1. Mode potovoltaik: seperti solar sel, penyerapan pada photodioda menghasilkan tegangan yang dapat diukur. Bagaimanapun, tegangan yang dihasilkan dari energi cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil.

2. Mode potokonduktivitas: disini photodioda diaplikasikan sebagai tegangan reverse (tegangan balik) dari sebuah dioda (yaitu tegangan pada arah tersebut pada dioda tidak akan dihantarkan tanpa terkena cahaya) dan pengukuran menghasilkan arus poto ( hal ini juga bagus untuk mengaplikasikan tegangan mendekati nol). Ketergantungan arus poto 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).


(36)

3. Indium Gallium Arsenida (InGaAs): mahal, arus kecil saat gelap, kecepatan tinggi sensitivitas baik pada jarak 800 sampai 1700nm (terbaik antara 1300 sampai 1600nm).

Gambar Photodioda ditunjukkan pada gambar 2.8.

Gambar 2.8 Gambar Photodioda (kiri) dan Simbolnya (kanan)

2.7 Dioda Pemancar Cahaya Inframerah (LED inframerah)

LED adalah dioda yang menghasilkan cahaya saat diberi energi listrik. Dalam bias maju sambungan p-n terdapat rekombinasi antara elektron bebas dan lubang (hole). Energi ini tidak seluruhnya diubah kedalam bentuk energi cahaya atau photon tetapi dalam bentuk panas sebagian.

Mengapa LED dapat memancarkan cahaya? Sebabnya adalah sebagai berikut: Bila suatu dioda diberi prategangan maju, elaktron-elektron bebas akan bergabung kembali dengan lubang-lubang disekitar persambungan. Ketika meluruh dari tingkat energi lebih tinggi ketingkat energi lebih rendah, elektron-elektron bebas tersebut akan


(37)

mengeluarkan energinya dalam bentuk radiasi. Dalam dioda penyearah, hampir seluruh energi ini diubah dalam bentuk panas, tetapi dalam LED sebagian dari selisih energi ini dilepaskan sebagai radiasi cahaya.

Proses pemancaran 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 inframerah.

Gambar 2.9 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 foton. Foton-foton yang dihasilkan ini ada yang diserap lagi dan ada yang meninggalkan permukaan dalam betuk radiasi energi.Hubungan antara energi foton yang dipancarkan dengan Eg LED ditunjukkan dengan persamaan berikut:

h.c

330 VCC


(38)

Dimana Eg = Energi foton

h = Potensial ionisasi (4,136.10-15 eV)

c = Kecepatan cahaya (3.108 m/s) Panjang Gelombang Cahaya (m)

Dengan menggunakan unsur-unsur tersebut di atas, pabrik dapat membuat LED yang memancarkan warna merah, kuning, dan infra merah (tak kelihatan). LED yang menghasilkan pancaran yang kelihatan dapat berguna pada display peralatan, mesin hitung, jam digital, dan lain-lain. LED infra merah dapat digunakan dalam sistem tanda bahaya pencuri dan ruang lingkup lain yang membutuhkan pancaran yang tak kelihatan. Keuntungan dari LED dibandingkan dengan lampu pijar yaitu umurnya yang lebih panjang (lebih dari 20 tahun), teganganya randah (1 sampai 2 V) dan saklar nyala matinya cepat (nano detik).

Sinar inframerah meliputi daerah frekuensi antara 1011 Hz sampai 1014 Hz dan mempunyai daerah panjang gelombang 10-14 cm sampai 10-1 cm. Gelombang inframerah ini dihasilkan oleh elektron – elektron dalam molekul yang bergetar karena benda dipanaskan. Selain tidak dapat dilihat secara langsung, sinar inframerah juga dapat menembus kabut dan awan tebal.

Dengan ciri – cirinya yang spesifik tersebut, pesawat udara yang terbang tinggi ataupun satelit–satelit dapat membuat photo permukaan bumi yang tidak diperoleh dengan menggunakan cahaya inframerah.

Radiasi sonar inframerah dapat getaran – getaran atom pada suatu molekul. Getaran atom pada suatu molekul dapat memancarkan gelombang elektromagnetik. Pada


(39)

frekuensi – frekuensi yang khas dalam inframerah sehingga spektroskopi. Infamerah merupakan salah satu alat penting untuk mempelajari spektrum molekul.

Energi yang terkandung dalam radiasi sinar ini tampak sebagai energi panas, termasuk cahaya yang kita terima dari matahari sejumlah besar mengandung radiasi ini.

2.8 Transistor

Transistor adalah suatu semikonduktor mono kristal dimana terjadi dua pertemuan P-N. Dari pertemuan P-N tersebut dapat dibuat dua tipe transistor yaitu :

1. Transistor PNP

Dalam transistor ini disisipkan suatu lapisan N tipis antara dua lapis P.

Gambar 2.10 Simbol Transistor PNP

2. Transistor NPN


(40)

Transistor Sebagai Saklar.

Banyak kegunaan dari transistor, salah satunya adalah sebagai saklar. Jika transistor digunakan sebagai saklar maka dalam hal ini transistor tersebut dioperasikan dalam daerah jenuhnya (saturasi) dan daerah yang menyumbat (cut-off). Pada saat transistor dalam keadaan jenuh maka resistansi antara kolektor dan emitor akan sangat kecil, maka transistor ini akan berfungsi sebagai saklar yang tertutup (ON) sedangkan apabila transistor dalam keadaan cut-off, maka resistansi antara kolektor dan emiter akan sangat besar, maka transistor akan berfungsi sebagai saklar yang terbuka (OFF). Lebih lanjut dapat kita lihat seperti pada gambar 2.12.

v c c

R c

R b

V C C

Gambar 2.12 Transistor Sebagai Saklar

Pada saat transistor ON:

 Arus IC = maximum

 Tegangan VCE = 0


(41)

Paa saat OFF:

 Arus IC = 0

 Tegangan VCE = Tegangan sumber

 Tegangan pada RC = 0

Pada saat basis transistor mengalir arus, transistor dalam keadaan on, maka: IB = Vi . VBE / RB……….(6)

IC = VCE / RC………(7)


(42)

Gambar 2.14 Karakteristik Transistor Sebagai Saklar

Parameter-parameter yang terdapat pada rangkaian transistor sebagai saklar antara lain:

Delay Time (td) yaitu waktu tunda antara sinyal masukan dengan keluaran saat transistor konduksi.

Rise Time (tr), yaitu waktu yang dibutuhkan sinyal input untuk naik dari 10% ke 90% dari harga akhir saat transistor konduksi.

Fall Time (tf), yaitu waktu yang dibutuhkan oleh transistor untuk turun dari 90% ke 10% dari harga saat transistor off.

Storage Time (ts), yaitu waktu tunda antara sisi-sisi perubahan sinyal masukan dan sinyal keluaran saat transistor off.

Turn On Time (t-On), yaitu waktu transistor untuk kondisi penuh.


(43)

Transistor sebagai driver adalah transistor yang pada saat jenuh akan mengaktifkan komponen atau rangkaian yang lain, dimana variasi arus kolektor penguatannya kecil kalau dibandingkan dengan arus kolektor stasioner. Penguatan sinyal kecil ini dapat diterapkan untuk berbagai rancangan sistim penguatan, penerima dan instrumen ukur.

2.9 Osilator Kristal

Kristal adalah komponen yang dibuat dari bahan alam yang menunjukan efek piezoelektrik, sehingga sering disebut Kristal Piezoelektrik. Bahan utama kristal yang dapat menimbulkan efek piezoelektrik adalah garam rachelle, tourmaline dan quarte.

Dalam sebuah kristal Piezoelektrik, biasanya quartz, mempunyai elektroda-elektroda yang dilapiskan pada permukaan yang berhadapan, dan apabila diberikan suatu potensial pada elektroda-elektrodanya maka gaya akan bekerja pada muatan-muatan yang terikat dalam kristal. Apabila komponen ini dipasang dengan benar, maka dalam kristal akan terjadi deformasi - deformasi sehingga terbentuk suatu sistim elektromekanik yang akan bergetar bila dibandingkan dengan benar. Frekuensi resonansi dan nilai Q (resonansi paralel)-nya tergantung pada dimensi kristal, orientasi permukaan pada sumbu-sumbu kristal dan bagaimana komponen tersebut dipasang ( mounted ). Jangkauan frekuensinya dari beberapa KHz sampai beberapa MHz dan jangkauan nilai Q (resonansi paralel)-nya yang beberapa ribu sampai beberapa ratus ribu data diperoleh secara komersial.

Dengan nilai resonansi paralel yang sangat tinggi dan dari kenyataan bahwa karakteristik Quartz sangat setabil terhadap waku dan temperatur, maka kristal akan menghasilkan stabilitas frekuensi pada osilator –osilator yang dibangun dengan


(44)

Pada hakikatnya, frekuensi dari suatu osilator kristal hanya dittentukan oleh kristalnya dan tidak oleh komponen lainnya. Lambang Osilator kristal dan ekivalen AC (model listriknya) dapat dilihat pada gambar 2.13.

(a) (b)

Gambar 2.15 (a) Lambang Osilator Kristal,


(45)

PERANCANGAN ALAT DAN PROGRAM

3.1. Spesifikasi Alat (Robot)

Source : 6 V / 700 mAh Dimensi (cm) : 40 x 30 x 40

Weight : 3.5 kg

Forklift power : 0.5 kg

3.2 Diagram Blok

Dalam membuat suatu alat ada beberapa hal yang perlu diperhatikan yaitu bagaimana cara merancang alat yang akan dibuat sesuai dasar teori. Sebelum merancang suatu sistim atau rangkaian terlebih dahulu membuat blok diagramnya.

Diagram blok merupakan salah satu cara yang paling sederhana untuk menjelaskan cara kerja dari suatu sistim dan memudahkan untuk melokalisir kesalahan dari suatu sistim.

Dengan diagram blok kita dapat menganalisa cara kerja rangkaian dan merancang hardware yang akan dibuat secara umum. Diagram merupakan pernyataan hubungan yang berurutan dari suatu atau lebih komponen yang memiliki kesatuan kerja tersendiri, dan setiap blok komponen mempengaruhi komponen yang lainnya.

Diagram blok memiliki arti yang khusus dengan memberikan keterangan didalamnya. Untuk setiap blok dihubungkan dengan suatu garis yang menunjukan arah


(46)

CATU DAYA M I K R O K O N T R O L E R A T 8 9 S 5 2 SENSOR DINDING DEPAN DEPAN DRIVER MOTOR KANAN DRIVER MOTOR KIRI SENSOR DINDING DEPAN KANAN SENSOR DINDING DEPAN KIRI INTERFACE INTERFACE INTERFACE MOTOR KANAN MOTOR KIRI DINDING DINDING DINDING

Gambar 3.1 Diagram Blok Rangkaian

3.3 Fungsi Tiap Blok

Dinding

Merupakan media yang akan dihindari oleh robot.

Catu Daya

Catu daya pada sistim ini berfungsi untuk mensuplai tegangan keseluruh perangkat sistim yang membutuhkan daya untuk bekerja. Sumber daya yang digunakan pada blok ini adalah sebuah batterai Rechargeable 6 V / 700 mAh.

Sensor Dinding Depan Depan

Berfungsi untuk mendeteksi dinding pada bagian depan robot. Pada blok ini, digunakan sebuah photo dioda pada tiap bagian sensornya dan LED infra merah


(47)

Sensor Dinding Depan Kiri

Berfungsi untuk mendeteksi dinding pada bagian depan sebelah kiri. Komponen yang digunakan sama seperti yang digunakan pada sensor dinding depan-depan.

Sensor Dinding Depan Kanan

Berfungsi untuk mendeteksi dinding pada bagian depan sebelah kanan. Komponen yang digunakan sama seperti yang digunakan pada sensor dinding depan-depan.

Interface

Interface disini berfungsi sebagai pengolah data masukan dari sensor dinding yang kemudian diumpankan pada mikrokontroler. Disini digunakan IC LM 358 sebagai penguat data masukan dari photodioda

Mikrokontroler AT89S52

Mikrokontroler pada blok ini merupakan pusat proses untuk mengendalikan semua perangkat pada robot. Pada blok ini mikrokontroler telah diprogram untuk dapat membaca data dari sensor kemudian mengolah semua data tersebut dan selanjutnya mengambil keputusan perangkat mana saja yang harus dikendalikan.

Driver Motor

Driver motor ini berfungsi untuk mengendalikan arah putaran motor kiri dan kanan robot, sehingga robot dapat berjalan dengan baik. Pada blok ini digunakan beberapa buah transistor untuk men-drive motor agar dapat berputar dan mengubah polaritas tegangan motor sehingga dapat mengubah arah putaran motor.


(48)

2200uF

5 Volt DC

0 Volt 6,2 Volt DC

6.2 V Motor kanan

Motor ini berfungsi sebagai pemutar roda kanan dari robot. Motor yang digunakan pada bagian ini adalah motor DC 6 V.

Motor Kiri

Motor ini berfungsi sebagai pemutar roda kiri robot. Motor yang digunakan adalah sama seperti yang digunakan pada motor kanan yaitu motor DC 6 V.

3.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 kapasitor ini. Rangkaian catu daya ditunjukkan oleh gambar berikut ini :


(49)

Pada rangkaian ini terdapat 2 buah keluaran, yaitu 5 volt dan 6 volt. Keluaran 5 volt dibutuhkan oleh mikrokontroler, penguat sinyal dan rangkaian sensor, sedangkan 6 volt dibutuhkan untuk rangkaian jembatan H ( pengendali motor ).

3.5 Rangkaian Mikrokontroler AT89S52

Rangkaian ini berfungsi sebagai pusat kendali dari seluruh sistem yang ada. Kompoen utama dari rangkaian ini adalah IC mikrokontroler AT89S52. Pada IC inilah semua program diisikan, sehingga rangkaian dapat berjalan sesuai dengan yang dikehendaki. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:

Gambar 3.3 Rangkaian Mikrokontroler AT89S52

5 V V CC

1 0 u F 5 V V CC

2 1

3 0 p F 3 0 p F

X TA L 1 2 MHz

A T 8 9 S 5 1

P 0 . 3 (A D 3 ) P 0 . 0 (A D 0 ) P 0 . 1 (A D 1 ) P 0 . 2 (A D 2 ) V c c P 1 . 0

P 1 . 1 P 1 . 2 P 1 . 3 P 1 . 4 P 1 . 5 P 1 . 6 P 1 . 7

P 0 . 4 (A D 4 ) P 0 . 5 (A D 5 ) P 0 . 6 (A D 6 ) P 0 . 7 (A D 7 ) R S T

E A / V P P P 3 . 0 ( R XD )

P 3 . 1 ( T XD ) P 3 . 2 ( I N T 0 ) P 3 . 3 ( I N T 1 ) P 3 . 4 ( T 0 )

A L E / P R O G P S E N P 2 . 7 (A 1 5 ) P 2 . 6 (A 1 4 ) P 2 . 5 (A 1 3 ) P 2 . 4 (A 1 2 ) P 2 . 3 (A 1 1 ) P 2 . 2 (A 1 0 ) P 2 . 1 ( A 9 ) P 3 . 6 ( W R )

P 3 . 5 ( T 1 ) P 3 . 7 ( R D ) XT A L 2 XT A L 1

G N D P 2 . 0 ( A 8 )

1 2 3 4 5 6 7 8 4 0 3 9 3 8 3 7 3 6 3 5 3 4 3 3 9 1 0 1 1 1 2 1 3 1 4 1 5 3 2 3 1 3 0 2 9 2 8 2 7 2 6 1 6 1 7 1 8 1 9 2 0 2 5 2 4 2 3 2 2 2 1 4 .7 k

2 S A 7 3 3

5 V V CC


(50)

Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena mikrokontroler AT89S52 tidak menggunakan memori eskternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan kapasitor 30 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroler AT89S52 dalam mengeksekusi setiap perintah dalam program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroler ini. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit open collector dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3. Pin 17 yang merupakan P3.7 dihubungkan dengan transistor dan sebuah LED. Ini dilakukan hanya untuk menguji apakan rangkaian minimum mikrokontroller AT89S52 sudah bekerja atau belum. Dengan memberikan program sederhana pada mikrokontroler tersebut, dapat diketahui apakah rangkaian minimum tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubug ke Pin 17 sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum tersebut telah siap digunakan. Pin 20 merupakan ground dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay.

3.6 Perancangan Sensor Dinding dan Pengolah Data Sensor

Untuk mendeteksi keberadaan dinding digunakan 3 buah sensor dinding. Ke-3 sensor dinding ini mempunyai rangkaian yang sama satu dengan yang lain, hanya penempatan saja yang berbeda. Satu sensor berada didepan robot, satu sensor berada di sudut kiri depan robot, dan yang satunya lagi berada di sudut kanan depan robot.


(51)

Masing-VCC 5V

Infra Merah

100 100

Infra Merah 100

masing sensor dinding terdiri dari tiga buah pemancar inframerah yang akan diterima oleh sebuah photodioda. Digunakan tida buah pemancar inframerah pada masing – masing sensor bertujuan agar jarak pemantulan semakin jauh, sehingga robot tidak sampai menyentuh dinding. Dinding dirancang berwarna putih sehingga dapat memantulkan sinar infrared tersebut.

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 akan dapat mendeteksi sensor yang mengirimkan sinyal low dan mengambil tindakan untuk mengatur putaran roda ke kanan atau ke kiri. Rangkaian pemancar inframerah tampak seperti gambar 3.4.

Gambar 3.4 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


(52)

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 potodioda, kemudian 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 ini menggunakan IC LM 358 sebagai penguat tegangan yang dihasilkan photodioda. Satu buah IC ini memiliki dua penguat operasional (op-amp). Pada rangkaian ini, kedua op-amp tersebut digunakan. Sehingga sinyal dari photodioda mengalami dua kali penguatan.


(53)

Sesuai gambar 3.5, maka besar penguatan op-amp tergantung pada besarnya tahanan variabel yang digunakan. Pada prakteknya, tahanan variabel tersebut ditrim pada kisaran harga 50 KOhm, sehingga besar penguatan op-amp adalah:

50

A = = 5 kali 10

Pada robot ini, digunakan satu buah photodioda sebagai sensor dinding. Sebuah photodioda memiliki nilai tahanan sekitar 15 s.d. 20 MOhm jika tidak terkena sinar inframerah, dan memiliki nilai tahanan sekitar 80 s.d. 330 KOhm jika terkena sinar inframerah, tergantung dari intensitas sinar inframerah yang diterimanya.

Dengan demikian, besar tegangan yang masuk ke op-amp adalah: Saat terkena sinar inframerah:

47K

Vo = x 5V = 0,6 Volt 330K + 47K

Saat tidak terkena sinar inframerah:

47K

Vo = x 5V = 0,015 Volt 15000K + 47K

Tegangan tersebut diumpankan pada op-amp dengan faktor penguatan 5 kali, sehingga tegangan keluarannya pada saat terkena sinar inframerah sekitar 3 Volt, sedangkan saat tidak terkena sinar inframerah sekitar 0,07 Volt. Namun, tegangan ini masih diumpankan lagi pada op-amp yang kedua. Dengan faktor penguatan yang yang


(54)

terkena sinar inframerah sekitar 6 Volt dan saat tidak terkena inframerah sekitar 0,14 Volt. Tegangan inilah yang selanjutnya diumpankan ke basis transistor C945.

Transistor akan aktif ketika tegangan basisnya lebih besar dari 0,7 Volt. Maka, ketika basisnya mendapat tegangan 3 Volt (saat photodioda terkena sinar inframerah), transistor aktif. Aktifnya transistor ini akan menyebabkan mikrokontroler mendapatkan logika low dan LED indikator akan mati. Hal sebaliknya akan berlaku ketika photodioda tidak mendapatkan pantulan sinar inframerah.

3.7 Perancangan Driver Penggerak Motor DC (Jembatan H)

Untuk menghindari dinding, maka robot harus dapat mengendalikan perputaran rodanya. Robot menggunakan 2 buah motor DC 6 Volt untuk menggerakkan rodanya, dimana 1 motor digunakan untuk menggerakkan roda kanan dan yang lainnya untuk menggerakkan roda kiri. Motor DC akan berputar searah/berlawanan arah dengan jarum jam jika salah satu kutubnya diberi tegangan positif dan kutub yang lainnya diberi tegangan negatif. 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 motor DC dapat dikendalikan oleh rangkaian tersebut. Dan jika rangkaian tersebut 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 (H Bridge). Jembatan H ini terdiri dari 4 buah transistor, dimana 2 buah transistor bertipe NPN dan 2 buah transistor lagi bertipe PNP.


(55)

Ke-4 transistor ini dirangkai sedemikian rupa sehingga dengan memberikan sinyal low atau high pada rangkaian maka perputaran motor dapat diatur. Pemilihan transistor ini disesuaikan dengan karakteristik arus masukannya ( IB ) dan nilai resistor.

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

Gambar 3.6. Rangkaian Jembatan H

Pada rangkaian di atas, jika P0.0 diset high yang berarti P0.0 mendapat tegangan 5 volt, maka kedua transistor tipe NPN C945 (IB = 0,015A) 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


(56)

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; IB = 0,006A). Aktifnya transistor PNP TIP 127 ini akan mengakibatkan kolektornya terhubung ke emitor sehingga kolektor mendapatkan tegangan 6 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; IB = 0,006A). 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 positif).

Agar motor dapat berputar ke satu arah maka kaki sebelah kanan motor harus mendapatkan tegangan 0 volt (polaritas negatif). Hal ini diperoleh dengan memberikan logika low (0) pada P0.1 mikrokontroler AT89S52.

Pada gambar rangkaian 3.6, jika P0.1 diset low yang berarti P0.1 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 aktif Karena


(57)

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 kiri 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 teganagan 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 negatif). Hal ini akan menyebabkan motor akan berputar ke satu arah tertentu.

Sedangkan untuk memutar motor ke arah sebaliknya, maka logika yang diberikan ke P0.0 adalah low (0) dan logika yang diberikan ke P0.1 adalah high (1).

3.8 Perancangan Program

Dalam menjalankan misinya, robot forklift dilengkapi dengan sensor dinding agar robot ini tidak bertabrakan dengan dinding. Diagram alir dari program yang akan dibuat dapat dilihat pada gambar 3.7.


(58)

START Cek sensor dinding depan kiri Cek sensor dinding depan kanan Belok Kanan Cek sensor dinding depan depan dan kanan Belok Kiri Cek sensor dinding depan depan dan kiri

Belok Kiri Belok Kanan Tidak Tidak Tidak Tidak Ya Ya Ya Ya Maju

Gambar 3.7 Diagram Alir dari Program

Pertama-tama robot akan melakukan pengecekan sensor dinding. Jika sensor dinding sebelah depan kiri memberikan logika 0,maka robot akan rutin belok kanan dan sebaliknya jika sensor depan kiri tidak memberikan logika 0, maka yang dilakukan adalah pengecekan sensor depan kanan jika berlogika 0 maka robot akan rutin belok kiri. Jika sensor depan depan dan sensor depan kanan yang berlogika 0 maka rutin yang dikerjakannya adalah belok kiri, sedangkan sensor depan depan dan sensor depan kiri yang memberikan logika 0 maka rutin yang dilakukannya adalah rutin belok kanan.


(59)

Apabila tidak ada sensor yang aktif (dinding tidak terdeteksi), maka robot akan maju. Demikian seterusnya.

Pergerakan robot diatur logika yang dihasilkan dari sensor dinding. Sensor dinding akan memberikan informasi keberadaan dinding pada mikrokontroler. Mikrokontroler akan mengirimkan perintah untuk mengarahkan robot untuk menghindari dinding (halangan) yang ada.

Program yang dibuat adalah sebagai berikut: utama:

mov a,p2 cjne a,#0ffh,e acall maju ret

e:

cjne a,#0bfh,f acall bel2 sjmp utama f:

cjne a,#0b7h,g acall bel2 sjmp utama g:


(60)

sjmp utama h:

cjne a,#0d7h,i acall bel1 sjmp utama i:

cjne a,#0f7h,utama acall bel1

sjmp utama tunda:

mov r7,#100 tnd:

mov r6,#255 djnz r6,$ djnz r7,tnd ret maju: clr p0.0 setb p0.1 clr p0.3 setb p0.2 mov r7,#100 djnz r7,$


(61)

clr p0.4 clr p0.5 clr p0.6 clr p0.7 mov r7,#75 djnz r7,$ ret bel1:

mov r6,#5 belka:

mov r5,#1 belok_kanan: clr p0.0 setb p0.1 clr p0.2 setb p0.3 mov r7,#220 djnz r7,$ acall matibel

djnz r5,belok_kanan djnz r6,belka


(62)

mov r6,#5 belki:

mov r5,#1 belok_kiri:

setb p0.0 clr p0.1 setb p0.2 clr p0.3 mov r7,#245 djnz r7,$ acall matibel djnz r5,belok_kiri djnz r6,belki ret

matibel: clr p0.0 clr p0.1 clr p0.2 clr p0.3 mov r7,#1 djnz r7,$ ret


(63)

PENGUJIAN DAN ANALISA RANGKAIAN

4.1 Pengujian Rangkaian Catu Daya

Pengujian pada rangkaian catu daya ini dilakukan dengan mengukur tegangan keluaran dari rangkaian ini dengan menggunakan voltmeter. Dari hasil pengujian pada saat baterai penuh, maka didapatkan tegangan keluaran pertama sebesar 6.2 volt dan tegangan keluaran yang kedua sebesar 5.1 volt. Pada saat baterai lemah, maka didapatkan tegangan keluaran pertama sebesar 5,3 volt dan tegangan keluaran yang kedua sebesar 4.5 volt. Walaupun tegangan keluaran pertama tidak tepat 6 volt, dan tegangan keluaran kedua tidak tepat 5 volt, robot tetap bekerja namun jalannya semakin lambat. Hal ini disebabkan karena kurangnya tegangan yang dibutuhkan untuk memutar motor. Dengan demikian rangkaian ini telah berjalan dengan baik.

Vo 1 (Volt)

Vo 2 (Volt)

6,2 5,1

6,2 5,1

6,2 5,1

6,0 5,0

5,8 4,9

5,5 4,7


(64)

4.2 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, dan kemudian mematikannya kembali selama selang waktu tertentu secara terus menerus. Perintah setb p2.7 akan menyebabkan p2.7 akan berlogika high, yang akan menyebabkan transistor aktif. Aktifnya transistor akan memicu hidupnya LED. Perintah acall tunda


(65)

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.

p2.7 LED

1 Nyala

0 Mati

Tabel 4.2 Hasil Pengujian Pada Port 2.7 Mikrokontroler

4.3 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 tidak akan menyala, dan tegangan kelurannya jika diukur adalah 5 V.

Jangkauan sensor ini dapat diatur, sesuai dengan besarnya nilai hambatan yang ingin diberikan (ditrimp). Pada rangkaian yang digunakan ini, sensor dapat mendeteksi keberadaan dinding maksimal sejauh 30 cm di depan sensor.


(66)

Tabel 4.3 Pengujian Sensor Dinding

4.4 Pengujian Pengendali Pergerakan Motor (Motor driver)

Pengujian pada rangkaian ini dapat dilakukan dengan menghubungkan input rangkaian ini ke rangkaian mikrokontroler AT89S52 dan menghubungkan outputnya ke motor DC.

Langkah selanjutnya adalah mengisikan pada mikrokontroler program sederhana untuk memutar motor DC tersebut. Program yang diisikan ke mikrokontroler AT89S52 untuk memutar motor ke satu arah tertentu adalah:

Setb P0.0 Clr P0.1

Perintah Setb P0.0 akan memberikan logika high ke P0.0 dan perintah Clr P0.1 akan memberikan logika low ke P0.1. Untuk membuat motor berputar kearah sebaliknya adalah,

Clr P0.0 Setb P0.1

Perintah Clr P0.0 akan memberikan logika low ke P0.0 dan perintah Setb P0.1 akan memberikan logika high ke P0.1. Dengan demikian arah perputaran motor sudah dapat dikendalikan oleh program yang diisikan ke mikrokontroler AT89S52.

Dinding Logika Vout (volt)

Terdeteksi 0 0.05


(67)

Input Putaran (Motor)

1 0 Kanan

0 1 Kiri


(68)

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Photodioda sensitif terhadap cahaya, sehingga mudah terganggu dengan adanya sinar matahari.

2. Makin banyak tambahan sinar infra merah, maka jarak pantulannya pada dinding akan semakin jauh.

3. Data yang dikirimkan oleh sensor akan diolah oleh Mikrokontroler AT89S52 untuk mengambil keputusan pada sistem robot.

4. Robot bekerja secara otomatis untuk menemukan barang dan mengangkatnya tanpa menabrak dinding. Hal ini disebabkan oleh adanya sensor pada robot tersebut.

5.2 Saran

1. Robot pada proyek ini hanya menggukan media Inframerah sebagai pemberi

instruksinya, sehingga dalam pemberian instruksi hanya dapat dilakukan dari jarak yang dekat, maka sebaiknya pemberian instruksi pada robot dilakukan dari jarak jauh ataupun menggunakan radio frekuensi.

2. Motor penggerak dari robot ini hanya menggunakan motor DC biasa sehingga pergerakan robot kurang sempurna, maka sebaiknya digunakan motor yang lebih presisi dan daya yang lebih besar agar dapat memperbaiki keakuratan robot dalam mengikuti track-nya.


(69)

3. Sensor yang digunakan pada robot sebaiknya menggunakan komponen yang lebih berkualitas agar dapat menghasilkan pembacaan yang optimal.

4. Disain robot sebaiknya dibuat dengan seimbang terhadap titik beratnya dan dengan bentuk yang benar-benar tepat untuk mendukung penampilan dan unjuk kerjanya.


(70)

Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit: Gava Media, Yogyakarta, 2004

Andi, Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit PT Elex Media Komputindo, Jakarta 2003

Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama, Penerbit: Salemba Teknika, Jakarta, 2003.

Widodo, S.Si, Mkom, Interfacing Komputer dan Mikrokontroler, Penerbit: Elex Media Komputindo, Jakarta, 2004.


(71)

(1)

Tabel 4.3 Pengujian Sensor Dinding

4.4 Pengujian Pengendali Pergerakan Motor (Motor driver)

Pengujian pada rangkaian ini dapat dilakukan dengan menghubungkan input rangkaian ini ke rangkaian mikrokontroler AT89S52 dan menghubungkan outputnya ke motor DC.

Langkah selanjutnya adalah mengisikan pada mikrokontroler program sederhana untuk memutar motor DC tersebut. Program yang diisikan ke mikrokontroler AT89S52 untuk memutar motor ke satu arah tertentu adalah:

Setb P0.0 Clr P0.1

Perintah Setb P0.0 akan memberikan logika high ke P0.0 dan perintah Clr P0.1 akan memberikan logika low ke P0.1. Untuk membuat motor berputar kearah sebaliknya adalah,

Clr P0.0 Setb P0.1

Perintah Clr P0.0 akan memberikan logika low ke P0.0 dan perintah Setb P0.1 akan memberikan logika high ke P0.1. Dengan demikian arah perputaran motor sudah dapat dikendalikan oleh program yang diisikan ke mikrokontroler AT89S52.

Dinding Logika Vout (volt)

Terdeteksi 0 0.05

Tidak Terdeteksi 1 4.8


(2)

58

Input Putaran (Motor)

1 0 Kanan

0 1 Kiri


(3)

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Photodioda sensitif terhadap cahaya, sehingga mudah terganggu dengan adanya sinar matahari.

2. Makin banyak tambahan sinar infra merah, maka jarak pantulannya pada dinding akan semakin jauh.

3. Data yang dikirimkan oleh sensor akan diolah oleh Mikrokontroler AT89S52 untuk mengambil keputusan pada sistem robot.

4. Robot bekerja secara otomatis untuk menemukan barang dan mengangkatnya tanpa menabrak dinding. Hal ini disebabkan oleh adanya sensor pada robot tersebut.

5.2 Saran

1. Robot pada proyek ini hanya menggukan media Inframerah sebagai pemberi

instruksinya, sehingga dalam pemberian instruksi hanya dapat dilakukan dari jarak yang dekat, maka sebaiknya pemberian instruksi pada robot dilakukan dari jarak jauh ataupun menggunakan radio frekuensi.

2. Motor penggerak dari robot ini hanya menggunakan motor DC biasa sehingga pergerakan robot kurang sempurna, maka sebaiknya digunakan motor yang lebih presisi dan daya yang lebih besar agar dapat memperbaiki keakuratan robot dalam mengikuti track-nya.


(4)

59

3. Sensor yang digunakan pada robot sebaiknya menggunakan komponen yang lebih berkualitas agar dapat menghasilkan pembacaan yang optimal.

4. Disain robot sebaiknya dibuat dengan seimbang terhadap titik beratnya dan dengan bentuk yang benar-benar tepat untuk mendukung penampilan dan unjuk kerjanya.


(5)

Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit: Gava Media, Yogyakarta, 2004

Andi, Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit PT Elex Media Komputindo, Jakarta 2003

Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama, Penerbit: Salemba Teknika, Jakarta, 2003.

Widodo, S.Si, Mkom, Interfacing Komputer dan Mikrokontroler, Penerbit: Elex Media Komputindo, Jakarta, 2004.


(6)