• Tidak ada hasil yang ditemukan

ROBOT PENGIKUT CAHAYA ( LIGHT FOLLOWER ).

N/A
N/A
Protected

Academic year: 2017

Membagikan "ROBOT PENGIKUT CAHAYA ( LIGHT FOLLOWER )."

Copied!
78
0
0

Teks penuh

(1)

TUGAS AKHIR

Oleh

RESI PERMANA FIDIANTO

NPM. 0534010170

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL "VETERAN" JATIM

S U R A B A Y A

(2)

Dosen Pembimbing I : Basuki Rahmat, S.Si, MT Dosen Pembimbing II : Fetty Tri Anggraeny, S.Kom

Abstraksi

Robot pengikut cahaya yang beberbasis mikrokontroler AT89S52 merupakan suatu bentuk robot bergerak yang sudah terprogram dari otaknya dan telah ditentukan untuk robot mengikuti cahaya senter. Dalam perancangan dan implementasinya robot pengikut cahaya banyak mengalami berbagai masalah-masalah dan yang harus dipecahkan adalah system penglihatan robot biasa disebut sensor, arsitektur perangkat keras yang meliputi perangkat elektronik yang akan dibahas serta memperkenalkan komponen pembantu lainnya dalam makalah ini.

Tujuan di dalam membuat robot pengikut cahaya selain untuk menyelesaikan tugas akhir ini adalah rasa tertarik untuk mengetahui perkembangan hardware pada saat ini diantaranya bentuk – bentuk IC untuk robot yang memakai mikrokontroler AT89S52 sebagai komponen utama pada robot, untuk driver motor menggunakan tansistor, untuk sensor menggunakan LDR (Light Dependent Resistor) serta IC LM358 untuk penguat sensor, komponen lainnya yang akan dijelaskan dalam makalah ini pada pembuatan Robot Pengikut Cahaya dengan menggunakan mikrokontroler AT89S52 dan sensor LDR (Light Dependent Resistor) yang cara kerjanya adalah dengan cara menyorotkan cahaya senter ke sensor robot, maka robot tersebut akan bergerak mengikuti atau mendekati cahaya dari senter.

Kata Kunci : Robot, Mikrokontroler AT89S52, Sensor LDR

(3)

Dengan mengucapkan puji syukur kehadirat Allah swt atas rahmat serta

hidayahnya yang diberikan sehingga dapat menyelesaikan Tugas Akhir ini dengan

baik dan tepat waktu dimana hasilnya disusun dengan bentuk laporan yang

berjudul Robot Pengikut Cahaya (Light Follower).

Adapun laporan ini disusun yaitu untuk memenuhi syarat mengikuti

seminar TA serta untuk memenuhi syarat kelulusan salah satu mata kuliah “Tugas

Akhir” di Universitas Pembangunan Nasioanal “Veteran” Jawa Timur.

Penulis menyadari bahwa manusia yang serba kurang sempurna, maka di

dalam upaya menyusun Tugas Akhir ini penulis telah banyak memperoleh

bantuan dan bimbingan dari berbagai pihak, mengingat keterbatasan pengalaman

yang dimiliki oleh penulis, sehingga penulis sangat mengharapkan segala kritik

dan saran yang kontruktif dan membangun demi kebaikan maupun sistematika

penulisan akan selalu penulis terima dengan senang hati guna kesempurnaan

Tugas Akhir ini. Harapan penulis mudah – mudahan apa yang penulis lakukan ini

dapat menjadi sumbangan pemikiran dan berguna bagi semuanya, terutama

Universitas Pembangunan Nasional “Veteran” Jawa Timur.

Surabaya, 26 Mei 2010

Penulis

(4)

Dalam pembuat laporan ini, penulis telah mendapatkan bantuan dan

bimbingan dari berbagai pihak yang terkait, baik secara moril maupun materiil

oleh karena itu pada kesempatan kali ini penulis ingin menyampaikan ucapan

terima kasih kepada:

1. Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri.

2. Bapak Basuki Rahmat, S.Si, MT, selaku Kepala Jurusan Teknik

Informatika Universitas Pembangunan Nasional ”Veteran” Jawa

Timur dan sekaligus sebagai Dosen Pembimbing I yang telah

memberikan bimbingan dan petunjuk selama menyusun Tugas Akhir

ini.

3. Ibu Fetty Tri Anggraeny, S.Kom, yang juga sebagai Dosen

Pembimbing II yang telah meluangkan waktu dan memberikan

bimbingan serta petunjuk selama menyusun Tugas Akhir ini.

4. Para Dosen Penguji : Bapak Nur Cahyo Wibowo, S.Kom, M.Kom

dan Ibu Fetty Tri Anggraeny, S.Kom yang telah membuka wawasan

baru bagi penulis.

5. Kedua Orang Tua tercinta, keluarga, serta teman - teman yang telah

memberikan doa dan semangat kepada penulis.

Semoga kebaikan dan keikhlasan bagi semua pihak yang telah membantu

terwujudnya Tugas Akhir ini dapat dibalas oleh Allah SWT.

(5)

BAB I PENDAHULUAN 1.1 Latar Belakang ... 1

BAB II TINJAUAN PUSTAKA 2.1 Sensor LDR………... 6

2.2 Mikrokontroller AT89S52... 8

2.2.1 Konfigurasi Pin... 11

2.2.2 Dasar Mikrokontroler………. 15

2.7 Bascom-8501 Sebagai Compiler Basic... 26

2.7.1 Karakter Dalam Bascom... 27

2.7.7 Operasi-operasi dalam Bascom... 32

2.7.8 Kontrol Program... 33

BAB III PERANCANGAN 3.1 Perancangan Robot……….. 38

3.2 Flowchart... 39

(6)

3.4 Kebutuhan Perancangan Robot... 41

3.5 Cara Merancang Robot... 41

3.6 Analisa Perancangan Motor DC………... 42

3.7 Rancangan dan Analisis Robot..………...……… 43

3.8.4 Port Comunication... 46

3.8.5 Mikrokontroler AT89S52... 46

3.8.6 Driver Motor... 46

BAB IV IMPLEMENTASI 4.1 Kebutuhan Sistem... 47

5.2.1 Pengujian Mikrokontroler AT89S52... 55

5.2.2 Pengujian Sensor LDR (Light Dependent Resistor)... 55

5.2.3 Pengujian Rangkaian Driver Motor... 56

5.2.4 Pengujian Alat Secara Keseluruhan... 57

5.3 Pengujian Robot Pengikut Cahaya... 57

5.3.1 Pengujian di Dalam Ruangan Terang……… 59

5.3.2 Pengujian di Dalam Ruangan Gelap………. 62

5.3.3 Pengujian Dengan Dua Senter……….. 67

BAB VI KESIMPULAN DAN SARAN 6.1 Kesimpulan ... 68

6.2 Saran ... 68

DAFTAR PUSTAKA ... 69

(7)

2.1 Sensor Cahaya LDR………... 7

2.2 Rangkaian Sensor Cahaya... 7

2.3 Blok Diagram Mikrokontroler..………... 10

2.4 Konfigurasi Pin... 11

2.5 256 byte RAM Internal Bagian Bawah (Lower)……….. 18

2.6 256 byte RAM Bagian Atas ..………... 19

2.7 Bit Latch dan I/O Buffer... 21

2.8 Dasar Pengaturan Arah Putar Motor... 22

2.9 Pengaturan Arah Dengan Menggunakan Saklar....………... 23

2.10 IC LM 358...………... 23

2.11 Internal Blok Diagram IC LM 358...………... 24

2.12 Simbol Transistor NPN dan PNP ...………... 25

2.13 Pendeklarasian Variabel dalam Bascom... 29

3.1 Flowchart Robot ………... 39

3.2 Blok Diagram Hardware Robot………. ... 40

3.3 Rancangan Motor Saat Maju ke Depan .………... 43

3.4 Motor Saat Berputer Ke kanan ...………... 44

3.5 Rancangan Komponen Pada PCB... 45

4.1 Pembuatan Program pada Bascom-8501………... 48

4.2 Check Program………... 49

4.3 Error Program...………... 50

4.4 Compile Program.………... 51

4.5 Send To Chip... 52

5.1 Pengujian Rangkaian Sensor... 56

5.2 Robot Saat Mencari Cahaya... 58

5.3 Robot Mendekati Cahaya... 58

5.4 Robot Bekerja Dengan Jarak ± 5 - 10 Cm... 59

5.5 Robot Bekerja Dengan Jarak ± 20 - 30 Cm …... 60

5.6 Robot Bekerja Dengan Jarak ± 40 - 45 Cm... 61

(8)

5.9 Robot Bekerja Dengan Jarak ± 50 – 60 Cm... 65 5.10 Robot Bekerja Dengan Jarak ± 70 – 80 Cm... 66 5.11 Cara Kerja Robot Dengan 2 Senter... 67

(9)

viii

2.1 Fungsi Alternatif Port 1... 12

2.2 Fungsi Alternatif Port 3... 13

2.3 Deskripsi Pin-pin LM 358... 24

2.4 Karakter dalam Bascom-8501... 27

2.5 Tipe Data... 28

2.6 Operator Relasi... 32

3.1 Rancangan Rangkaian Driver Motor……... 42

5.1 Hasil Pengujian Rangkaian Sensor... 56

5.2 Pengujian Robot di Ruang Terang... 59

(10)

BAB I PENDAHULUAN

1.1 Latar Belakang

Di lingkungan industri sangat mengutamakan faktor keselamatan terutama

pada proses produksi yang menggunakan bahan – bahan yang berbahaya bagi

manusia. Di samping itu proses produksi juga membutuhkan ketelitian yang tinggi

dan mempunyai alur kerja yang rumit. Untuk mencapai keuntungan yang diinginkan

sebuah industri harus dapat menyelesaikan produksi dengan waktu yang singkat agar

dapat meminimalisasikan biaya dan juga dapat memenuhi target dari para konsumen.

Agar proses produksi dapat berjalan dengan lancar, maka banyak dari

lingkungan industri yang memakai bantuan robot otomatis yang dapat memudahkan

para pekerja di dalam melakukan pekerjaanya. Jika ditangani langsung oleh manusia

sering mengakibatkan kesalahan atau kecelakaan pada kerja. Karena faktor – faktor

seperti halnya tidak bisa berkonsentrasi, kelelahan itu dapat merugikan bagi industri

tersebut.

Dengan adanya robot cerdas, kemungkinan hal – hal yang dapat merugikan

industri bisa tidak terjadi. Upaya untuk meningkatkan kerja saat ini, maka

dikembangkan suatu robot yang dapat berjalan di tempat yang gelap sekalipun

dengan bantuan satu titik cahaya yang akan disorotkan ke sensor. Dengan adanya

robot ini maka tujuan dari sebuah industri untuk dapat meminimalisasikan biaya dan

(11)

1.2 Rumusan Masalah

Berdasarkan latar belakang diatas, maka dapat diambil rumusan masalah

sebagai berikut :

” Bagaimana membuat atau merangkai sebuah robot yang dapat berjalan di

tempat gelap dengan bantuan cahaya. ”

1.3 Batasan Masalah

Batasan - batasan masalah yang diberikan sesuai dengan permasalahan yang

telah diterangkan diatas, antara lain:

a. Robot ini menggunakan mikrokontroler AT89S52.

b. Jarak sumber cahaya ke sensor ± ½ (setengah) meter.

c. Robot ini menggunakan sensor LDR (Light Dependent Resistor) dalam mencari

satu titik cahaya.

d. Cahaya yang disorotkan ke robot ialah cahaya senter yang nantinya sebagai

masukan untuk sensor.

e. Penyorotan cahaya senter harus lurus dan tepat pada sensor.

1.4 Tujuan

Tujuan yang ingin dicapai dalam Tugas Akhir ini adalah :

a. Merancang robot yang mampu berjalan di tempat gelap dengan bantuan satu titik

cahaya senter.

(12)

1.5 Manfaat

Adapun manfaat yang dapat diambil dari pembuatan robot dengan

menggunakan sensor cahaya ini adalah:

Robot dapat di desain untuk membantu melakukan pekerjaan yang sulit

dilakukan oleh manusia. Seperti, dapat digunakan untuk mengirim barang dari satu

tempat ke tempat lain dalam keadaan minim cahaya, dengan bantuan sorotan cahaya

sebagai pengontrol arah robot.

1.6 Metodologi Penelitian

Metodologi yang digunakan dalam penelitian ini adalah sebagai berikut :

a. Studi literatur mengenai pengendalian Motor DC serta penggunaan

Mikrokontroller AT89S52.

b. Merancang serta menguji rangkaian penggerak motor DC yang merupakan

aktuator robot.

c. Merancang serta menguji sistem minimal Mikrokontroller AT89S52 sebagai

pengendali sistem secara keseluruhan.

d. Merancang perangkat lunak yang berfungsi untuk membangkitkan dan

mengendalikan gerakan robot secara keseluruhan.

e. Menguji kinerja sistem secara keseluruhan serta mengambil data dari hasil

perancangan.

(13)

1.7 Sistematika Penulisan

Penulisan yang digunakan dalam laporan Tugas Akhir ini adalah sebagai

berikut :

BAB I PENDAHULUAN

Bab ini berisi latar belakang permasalahan, perumusan masalah,

batasan masalah, tujuan, manfaat dan sistematika penulisan laporan

tugas akhir.

BAB II TINJAUAN PUSTAKA

Pada bab ini akan dijelaskan tentang teori-teori serta

penjelasan-penjelasan yang dibutuhkan dalam pembuatan robot pengikut cahaya

(light follower).

BAB III PERANCANGAN

Bab ini berisi tentang analisa dan perancangan sistem dalam

pembuatan Tugas Akhir robot pengikut cahaya (light follwer) dengan

menggunakan sensor.

BAB IV IMPLEMENTASI

Bab ini berisi penjelasan hasil Tugas Akhir serta pembahasan suorce

code dari robot pengikut cahaya (light follwer).

BAB V PENGUJIAN DAN ANALISA

(14)

BAB VI KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran untuk proses pengembangan

selanjutnya.

DAFTAR PUSTAKA

Bab ini berisi tentang literatur sebagai teori pendukung pembahasan

(15)

BAB II

TINJAUAN PUSTAKA

2.1 Sensor LDR

Sensor LDR (Light Dependent Resistor) adalah sensor cahaya yang berfungsi

untuk mendeteksi cahaya yang ada di sekitar kita. Sensor ini akan berubah nilai

hambatannya apabila ada perubahan tingkat kecerahan cahaya. LDR (Light

Dependent Resistor) mempunyai hambatan yang bervariasi dengan jumlah cahaya

yang jatuh di atasnya. Perlawanan menjadi lebih rendah sebagai cahaya yang jatuh

pada LDR meningkat. Bentuk sensor LDR dapat dilihat pada Gambar 2.1 dan untuk rangkaiannya dapt dilihat pada Gambar 2.2.

Resistansi LDR berubah seiring dengan perubahan intensitas cahaya yang

mengenainya. Dalam keadaan gelap resistansi LDR sekitar 10MΩ dan dalam keadaan

terang sebesar 1KΩ atau kurang. LDR terbuat dari bahan semikonduktor seperti

kadmium sulfida. Dengan bahan ini energi dari cahaya yang jatuh menyebabkan lebih

banyak muatan yang dilepas atau arus listrik meningkat. Artinya resistansi bahan

telah mengalami penurunan.

Prinsip inilah yang akan kita gunakan untuk mengaktifkan transistor untuk

dapat menggerakkan motor DC (mirip dengan dinamo pada mainan mobil-mobilan

anak-anak). Perubahan nilai hambatan pada LDR tersebut akan menyebabkan

perubahan beda tegangan pada input basis transistor, sehingga akan

(16)

Gambar2.1 Sensor Cahaya LDR

Gambar 2.1 diatas merupakan bentuk dari sensor LDR (Light Dependent Resistor) yang berfungsi sebagai penerima cahaya. Sedangkan pada pada Gambar 2.2 dibawah ini merupakan rangkaian pada saat sensor bekerja.

(17)

2.2 Mikrokontroler AT89S52

Mikrokontroler adalah salah satu dari bagian dasar dari suatu sistem

komputer. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer

pribadi dan komputer mainframe, mikrokontroler dibangun dari elemen-elemen dasar

yang sama. Secara sederhana, komputer akan menghasilkan output spesifik

berdasarkan inputan yang diterima dan program yang dikerjakan. Seperti umumnya

komputer, mikrokontroler adalah alat yang mengerjakan instruksi-instruksi yang

diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem

terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang programmer.

Program ini menginstruksikan komputer untuk melakukan jalinan yang panjang dari

aksi-aksi sederhana untuk melakukan tugas yang lebih kompleks yang diinginkan

oleh programmer.

Mikrokontroller yang digunakan didalam proyek akhir ini adalah AT89S52

dari ATMEL yang merupakan keluarga MCS 51 yang banyak berada di pasaran.

Mikrokontroller ini merupakan mikrokontroller 8 bit yang merupakan single chip

microcontroller, dimana semua rangkaian termasuk memori dan I/O tergabung dalam

satu pak IC ( diambil dari pustaka no.1 ).

Mikrokontroller AT89S51 memiliki fasilitas antara lain:

a. 4K Bytes In-System Programmable (ISP) Flash Memori

b. Range operasi 4.0V ke 5.5V.

c. Operasi Secara penuh Statis: 0 Hz ke 33 MHZ.

d. Tiga Level Program Memori Lock.

(18)

f. 32 jalur I/O Programmable.

g. Dua 16-bit Timer/Counters.

h. Enam Sumber Interrupt.

i. UART Full Duplex Saluran Serial.

j. Low-Power Idle dan Power-Down Modes.

k. Interrupt Recovery dari Power-Down Modes.

l. Tahan hapus isi sampai 1000 kali

AT89S52 adalah 8 bit CMOS mikrokomputer yang dilengkapi dengan 4 Kb

Flash Memory, yang bekerja pada tegangan rendah dengan kemampuan tinggi.

IC ini diproduksi oleh Atmel dengan teknologi kepadatan tinggi (high

density), dengan non-valatile memori yang dapat diisi dengan program yang

intruksinya kompatibel dengan keluarga MCS-51.

Mengombinasikan CPU 8 bit serbaguna dengan Flash Memory pada sebuah

chip monolitik, Atmel 89S51 adalah sebuah mikrokomputer handal yang

menghasilkan banyak aplikasi kontrol menjadi lebih fleksibel dan berbiaya rendah.

AT89S52 menyediakan fitur standar: 4 Kb FlashMemory, 256 Byte RAM, 32

jalur I/O yang full duplex (dapat mengirim dan menerima secara bersamaan),

komparator tegangan analog yang presisi, oscilator, dan generator clock yang On

Chip (sudah tersedia di dalam chip).

Dengan tambahan AT89S52 yang didesain secara Static-Logic untuk

beroperasi hingga ke frekuensi nol dan mendukung dua software penghemat daya

(19)

Idle Mode (mode dimana sistem tidak sedang bekerja) akan menghentikan

CPU, namun RAM, timer/counter, serial port dan interupsi tetap dibiarkan

berfungsi. Power Down Mode menyimpan isi RAM, namun menghentikan oscilator

dan menonaktifkan seluruh fungsi chip sampai sistem direset secara hardware

(berikut blok diagram mikrokontroler pada Gambar 2.3).

(20)

2.2.1 Konfigurasi Pin

Berikut akan dijelaskan tentang konfigurasi pin dari mikrokontroler AT89S52.

Gambar 2.4 Konfigurasi Pin Berikut adalah penjelasan dari konfigurasi pin di atas:

a. VCC

Tegangan sumber

b. GND

(21)

c. Port 0

Sebuah port 8-bit yang dapat dipakai untuk akses I/O 2 arah, sebagai port

output tiap pinnya dapat menurunkan delapan TTL input dan pin-pinnya dapat

digunakan untuk inputan dengan impedansi tinggi

d. Port 1

Port 8-bit yang dapat dipakai untuk akses 2 arah I/O, buffer output port 1

dapat menurunkan empat TTL input. Jika 1s dituliskan maka dapat dinaikkan internal

pull-upsnya dan dapat dipakai sebagai inputan. Sebagai inputan, port 1 akan secara

eksternal menurunkan arus sumber dikarenakan ada internal pull-ups.

Tabel 2.1 Fungsi Alternatif Port 1

Port Fungsi alternatif

P1.5 MOSI (digunakan untuk ISP)

P1.6 MISO (digunakan untuk ISP)

P1.7 SCK (digunakan untuk ISP)

e. Port 2

Sama dengan port 1, port 2 dapat mengeluarkan pengalamatan byte sampai

high-order selama akses pengalamatan dari eksternal program memori dan akses ke

eksternal data memori yang panjang serta menggunakan alamat 16-bit (MOVX

@DPTR). Pada akses ke eksternal data memori yang menggunakan alamat 8-bit

(22)

f. Port 3

Adalah sebuah port yang dapat dipakai sebagai input atau outputan dengan

internal pull-ups. Dapat menurunkan empat TTL input, sebagai input pin pada port 3

akan dapat secara eksternal diturunkan oleh arus sumber atau sebagai peredam sinyal

yang disebabkan oleh pull-ups.

Port 3 menerima beberapa sinyal kontrol untuk pemrograman dan verifikasi.

Juga dapat melayani fungsi dari macam-macam fitur spesial dari AT89S51 seperti

yang ditunjukkan pada tabel.

Tabel 2.2 Fungsi Alternatif Port 3

Port Pin Fungsi Alternatif P3.0 RXD (serial input port)

P3.1 TXD (serial output port)

P3.2 INT0 (eksternal interrupt 0)

P3.3 INT1 (eksternal interrupt 1)

P3.4 T0 (timer 0 eksternal input)

P3.5 T1 (timer 1 eksternal input)

P3.6 WR (eksternal data memori write strobe)

P3.7 RD (eksternal data memori read strobe)

g. RST

Reset input. Pin membutuhkan keadaan high untuk 2 siklus mesin sampai

oscilator mengerjakan reset pada alat. Sesudah Watchdog timer, pin membutuhkan

(23)

8EH) dapat digunakan untuk menonaktifkan reset. Dalam kondisi default state bit

DISRTO, reset akan berada dalam keadaan high jika telah diaktifkan.

h. ALE/PROG

Address Latch Enable adalah pulsa output untuk mengunci low byte pada

alamat selama akses ke eksternal memori. Pin ini juga berfungsi sebagai inputan

pulsa program selama Flash Programming. Dalam operasi normal ALE dikeluarkan

secara konstan pada 1/6 frekwensi oscilator dan dimungkinkan digunakan untuk

pewaktuan sacara eksternal atau dengan tujuan pewaktuan. Bagaimanapun bahwa

satu dari pulsa ALE akan diloncati selama tiap akses ke eksternal data memori.

Operasi pada ALE dapat dinonaktifkan dengan menyetting bit 0 pada SFR dengan

alamat 8EH. Dengan penyettingan bit, ALE hanya akan aktif selama perintah

MOVX atau MOVC. Dengan cara lain pin dengan bit rendah akan di pull-high.

Penonaktifan setting bit pada ALE tidak akan ada hasilnya jika dieksekusi secara

eksternal mode pada mikrokontroller.

i. PSEN

Program Store Enable berfungsi untuk membaca strobe yang menuju memori

eksternal program. Jika chip AT89S51 melakukan eksekusi kode dari eksternal

program memori, PSEN hanya dapat aktif dua kali tiap siklus mesin, kecuali

pengaktifa 2 PSEN dilompati selama tiap akses ke eksternal data memori.

j. EA/VPP

External Access Enable harus terhubung ke GND untuk mengaktifkan

(24)

yang dimulai dari 0000H sampai FFFFH. Bagaimanapun bila bit 1 telah dikunci

lewat program, EA akan secara internal terhubung ke reset. EA seharusnya

tersambung juga ke VCC untuk mengeksekusi internal program. Pin ini juga

menerima tegangan 12 volt untuk program pengaktifan tegangan (VPP) selama Flash

Programming.

k. XTAL1

Yaitu inputan oscilator pembalik dan inputan ke pengoperasian clock internal

pada sirkuit.

l. XTAL2

Outputan dari oscilator pembalik.

m. SFR

Sebuah peta pada chip memori area

2.2.2 Dasar Mikrokontroler

Sebuah mikrokontroler memiliki beberapa perlengkapan dasar, antara lain

adalah CPU, Alamat, Data, Pengendali, Memori, RAM, ROM, Input/ Output.

a. Central Processing Unit (CPU)

Unit pengelola pusat (CPU) terdiri atas dua bagian yaiu unit pengendali (CU)

serta unit aritmatika dan logika (ALU). Fungsi utama unit pengendali adalah untuk

mengambil, mengkode, dan melaksanakan urutan instruksi pada sebuah program

yang tersimpan dalam memori. Sedangkan unit aritmatika atau perhitungan bertugas

(25)

b. Alamat

Sistem berbasis mikroprosesor atau mikrokontroler pada umumnya

mempunyai lebih dari satu device / peripheral seperti memori, input output, Analog to

Digital Converter (ADC), dan lain-lain. Masing-masing device ini perlu diberi

alamat, sama seperti rumah kita yang mempunyai alamat unik untuk tiap-tiap rumah.

Bayangkan apa yang terjadi kalau rumah-rumah itu tidak diberi alamat, pasti kita

akan kebingungan untuk menuju ke rumah tertentu. Demikian pula dengan

mikrokontroler, supaya dapat mengakses suatu device maka mikrokontroler tersebut

harus mengetahui alamat device yang akan diakses. Address decoder akan

memberikan alamat untuk tiap device.

c. Data

CPU mikrokontroler AT89S52 mempunyai lebar bus 8 bit. Pena data 8 bit

pada AT89S52 (D0, …..D7) ini terletak didalam chip karena jumlah pena luar pada

mikrokontroler terbatas. Pena untuk bus data di multipleks dengan alamat A0, …..A7

pada port 0, sehingga sering juga disebut AD0, …..AD7.

d. Pengendali

Selain bus alamat dan bus data mikroprosesor atau mikrokontroler dilengkapi

juga dengan bus pengendali (control bus), yang fungsinya untuk menyerempakkan

operasi mikroprosesor atau mikrokontroler dengan operasi rangkaian luar. Contoh

pena pengendali ini antara lain ALE, PSEN, WR, RD, interupsi dan lain-lain.

e. Memori

“Kecanggihan” sebuah komputer atau kontroller ditentukan oleh program

(26)

dan stack. Program adalah kumpulan instruksi untuk mengerjakan suatu pekerjaan. Data adalah variabel-variabel yang dapat di ubah saat program berjalan. Stack digunakan untuk menyimpan alamat kembali (return address) dan juga dapat dipakai

untuk menyimpan data. Umumnya didalam mikrokontroller tersedia 2 jenis memori

yaitu ROM dan RAM (Read Only Memory) bersifat hanya dibaca dan isinya tidak

hilang bila catu daya dimatikan, digunakan untuk menyimpan program. Sedangkan

RAM (Random-Access Memory) bersifat bisa dibaca dan ditulis tetapi isinya bisa

hilang bila catu daya dimatikan, digunakan untuk menyimpan data stack. Dengan

berkembangannya teknologi batas antara ROM dan RAM kini agak kabur. ROM

sekarang bisa ditulisi untuk tipe flash atau EEROM. RAM sekarang juga tidak

kehilangaan isinya saat catu daya dimatikan yaitu pada tipe NVRAM (Non-Volatile

RAM).

Memori di dalam Mikrokontroller berukuran terbatas. Untuk itu dan harus tahu

persis berapa kebutuhan memori yang digunakan. Kekurangan memori menyebabkan

program anda tidak berjalan dengan benar, terlalu banyak memori yang tidak dipakai

juga menyebabkan cost yang sia-sia.

f. RAM

RAM (Random Access Memory) pada mikrokomputer bisa mencapai ukuran

sekian megabyte dan bisa di-upgrade ke ukuran yang lebih besar dan berlokasi di luar

chip CPU-nya, sedangkan RAM pada mikrokontroler ada di dalam chip

mikrokontroler yang bersangkutan dan ukurannya sangat minim, misalnya 128 byte,

256 byte dan seterusnya dan ukuran yang relatif kecil inipun dirasa cukup untuk

(27)

Pada 256 byte bagian bawah, perhatikan Gambar 2.5. 32 byte pertama (00h-1Fh) dikelompokkan menjadi 4 bank dari 8 register. Instruksi pada program

mengenalnya dengan sebutan R0 sampai R7. Dua bit pada Program Status Word

(PSW) digunakan untuk memilih bank register yang digunakan. Penggunaan instruksi

yang mengakses register akan menghemat kode mesin dibandingkan dengan instruksi

yang mengakses lokasi secara langsung (direct addressing).

16 byte diatas bank register yaitu pada alamat 20h sampai 2Fh merupakan

daerah yang dapat dialamati secara bit. Alamat bit-bit pada daerah ini adalah 00h

sampai 7Fh.

Pendek kata, untuk RAM internal 256 byte bagian bawah, 32 byte pertama

dapar digunakan sebagai bank register, 16 byte berikutnya dapat dialamati perbit, dan

sisanya 80 byte dapat digunakan seperti biasa.

SFR

(28)

RAM internal 256 byte atas merupakan tempat register fungsi khusus (SFR).

Gambar 2.6. menunjukan SFR untuk Mikrokontroller seri 89S52. SFR ini meliputi alamat port, bit status dan kontrol, timer, register, stack pointer, akumularor dan

lainnya. Bagian-bagian yang kosong digunakan untuk pengembangan divais

Mikrokontroller selanjutnya.

Gambar 2.6 256 byte RAM Bagian Atas g. ROM

ROM (Read Only Memory) diisi saat proses produksinya. Informasi yang

dituliskan harus dipesan oleh pelanggan sebelum chip diberikan. Dalam sistem

mikrokontroler, informasi ini dapat dibaca oleh CPU tetapi tidak dapat dirubah. ROM

adalah memori yang paling sederhana, kecil, dan murah. Sifat memori program ini

(29)

h. Input/ Output

Diagram latch dan I/O buffer tiap bit dari Port 0 - Port 3. Port 1,2, dan 3

mempunyai pull-up internal. Sedangkan Port 0, konfigurasi outputnya adalah open

drain. Setiap bit I/O ini berdiri sendiri, jadi dapat berfungsi sebagai input atau output

tanpa tergantung satu sama lain. Port 0 dan 2 tidak dapat dipakai sebagai I/O bila

digunakan sebagai jalur alamat / data. Bila port-port tersebut ingin difungsikan

sebagai input, maka bit latch harus berisi '1', yang akan mematikan output driver

FET. Sehingga pin-pin Port 1,2, dan 3 akan 'ditarik' ke high oleh pull-up internal,

tetapi bila diinginkan dapat juga 'ditarik' ke low dengan sumber external. Port 0 agak

berbeda, karena tidak menggunakan pull-up internal. FET pull-up pada output driver

P0 (lihat gambar 6A) hanya digunakan pada saat Port mengeluarkan '1' selama akses

memori external, selain keadaan ini FET pull-up tidak aktif. Akibatnya bila bit-bit P0

berfungsi sebagai output maka bersifat open drain. Penulisan logika '1' ke bit latch

menyebabkan kedua FET tidak bekerja, sehingga pin dalam keadaan mengambang

(floating). Pada kondisi ini pin dapat berfungsi sebagai high impedance input. Port

1,2, dan 3 sering disebut dengan 'quasibidirectional' karena mempunyai pull-up

internal. Saat berfungsi sebagai input maka mereka akan 'ditarik' ke high dan akan

bersifat sebagai sumber arus bila 'ditarik' ke low secara eksternal. Port 0 sering

disebut sebagai 'true-bidirectional', karena bila dikonfigurasikan sebagai input maka

pinpinnya akan mengambang. Pada saat reset semua port latch akan berlogika ’1’

(diambil dari pustaka no.1,2). Berikut adalah rangkaian bit latch dan I/O buffer, dapat

(30)

Gambar 2.7 Bit Latch Dan I/O Buffer

2.3 Motor DC

Motor DC adalah alat yang mengubah pulsa listrik menjadi gerak, mempunyai

prinsip dasar yang sama dengan motor stepper namun gerakannya bersifat kontinyu

atau berkelanjutan. Motor DC dibagi menjadi 2 jenis yaitu :

1. Motor DC dengan sikat (mekanis komutasi), yaitu motor yang memiliki sifat

karbon berfungsi sebagai pengubah arus pada kumparan sedemikian rupa sehingga

arah tenaga putaran motor akan selalu sama.

2. Motor DC tanpa sikat, menggunakan semi konduktor untuk merubah maupum

(31)

digunakan pada sistem servo, karena mempunyai efisiensi tinggi, umur pemakaian

lama, tingkat kebisingan suara listrik rendah, karena putarannya halus seperti stepper

namun putarannya terus menerus tanpa adanya step.

Dalam aplikasinya seringkali sebuah motor digunakan untuk arah yang searah

dengan jarum jam maupun sebaliknya. Untuk mengubah putaran dari sebuah motor

dapat dilakukan dengan mengubah arah arus yang mengalir melalui motor tersebut.

Secara sederhana seperti yang ada pada Gambar 2.8, hal ini dapat dilakukan hanya dengan mengubah polaritas tegangan motor.

Gambar 2.8 Dasar Pengaturan Arah Putar Motor

Agar pengubahan polaritas tegangan motor dapat dilakukan dengan mudah,

maka hal ini dilakukan dengan menggunakan dua buah saklar seperti pada Gambar 2.9. di mana kedua saklar tersebut harus berada pada posisi yang saling berlawanan. Apabila S1 berada di posisi kiri (terhubung dengan positif) maka S2 harus berada di

posisi kanan (terhubung dengan negatif) dan demikian pula sebaliknya dengan

(32)

Gambar 2.9 Pengaturan Arah Dengan Menggunakan Saklar

2.4 IC LM 358

IC LM 358 merupakan suatu IC yang didalamnya dibangun empat buah

rangkaian penguat operasional ( Op – amp ). IC LM 358 memiliki beberapa

keunggulan diatas standart tipe penguat operasional yang lainnya yaitu pada aplikasi

hanya membutuhkan sumber tegangan tunggal untuk mengaktifkannya. Penguat ini

dapat beroperasi pada sumber tegangan rendah 3.0V dan sumber tegangan tinggi

32V. Tegangan keluaran juga meliputi tegangan negatif dari Power Supply.

Sedangakan pada arus bias pada masukan rendah maksimum100mA ( diambil dari

pustaka no.4 ). Bentuk dari IC LM 358 dapat dilihat pada Gambar 2.10 dibawah ini.

(33)

2.4.1 Susunan Pin LM 358

IC ini mempunyai pin sebanyak 8 buah pin, susunan pin-pin LM 358

ditunjukkan pada Gambar 2.11 berikut:

Gambar 2.11 Internal Blok Diagram IC LM 358

Berikut ini adalah penjelasan dari pin – pin LM 358, dapat dilihat pada Tabel 2.3 dibawah ini :

Tabel 2.3 Deskripsi Pin-pin LM 358 No. Pin Nama Pin Deskripsi

1 Out 1 Pin keluaran dari Op-Amp pertama

2 Inputs 1 Pin masukan negatif Op-Amp pertama

3 Inputs 2 Pin masukan positif Op-Amp pertama

4 V- Pin sumber tegangan negatif

5 Inputs 2 Pin masukan positif Op-Amp kedua

6 Inputs 2 Pin masukan negatif Op-Amp kedua

7 Out 2 Pin keluaran dari Op-Amp kedua

(34)

2.5 Transistor

Transistor bipolar biasanya digunakan sebagai saklar elektronik dan penguat

pada rangkaian elektronika digital. Transistor memiliki 3 terminal. Transistor

biasanya dibuat dari bahan silikon atau germanium. Tiga kaki yang berlainan

membentuk transistor bipolar adalah emitor, basis dan kolektor. Mereka dapat

dikombinasikan menjadi jenis N-P-N atau P-N-P yang menjadi satu sebagai tiga kaki

transistor ( diambil dari pustaka no.5 ). Gambar 2.12 di bawah memperlihatkan bentuk dan simbol untuk jenis NPN. (Pada transistor PNP, panah emitor berlawanan

arah).

Gambar 2.12 Simbol Transistor NPN dan PNP

Pada rangkaian elektronik, sinyal inputnya adalah 1 atau 0 ini selalu dipakai

pada basis transistor, yang mana kolektor dan emitor sebagai penghubung untuk

pemutus (short) atau sebagai pembuka rangkaian. Aturan/prosedur transistor sebagai

berikut:

1. Pada transistor NPN, memberikan tegangan positif dari basis ke emitor,

menyebabkan hubungan kolektor ke emitter terhubung singkat, yang menyebabkan

transistor aktif (on). Memberikan tegangan negatif atau 0 V dari basis ke emitor

menyebabkan hubungan kolektor dan emitor terbuka, yang disebut transistor mati

(35)

2. Pada PNP transistor PNP, memberikan tegangan negatif dari basis ke emitor ini

akan menyalakan transistor (on ). Dan memberikan tegangan positif atau 0 V dari

basis ke emitor ini akan membuat transistor mati (off).

2.6 Dinamika Robot

Rangkaian Robot Light Follower dengan menggunakan LDR (Light

Dependent Resistor) pada intinya ialah 2 buah motor DC yang aktif berdasarkan

input dari sensor LDR, jika LDR mendeksi adanya satu titik cahaya dalam ruangan

yang gelap maka akan ada perubahan nilai hambatan pada LDR tersebut, yang akan

mengaktif/menonaktifkan transistor 2N3904. Untuk mengatur input tegangan ke

basis agar dapat membuat transistor 2N3904 saturasi, maka digunakan pembagi

tegangan, dalam hal ini trimpot / potensiometer 50k-100k. Perubahan logika pada

transistor 2N3904 juga akan menyebabkan LED menyala atau mati, sebagai indikator

apakah LDR membaca adanya cahaya. Perubahan logika pada kaki kolektor 2N3904

juga sebagai input pada basis 2N2907, yang akan mengaktifkan/menonaktifkan

motor DC, dimana transistor 2N2907 merupakan transistor switching standar.

2.7 BASCOM-8051 Sebagai COMPILER BASIC

Basic adalah suatu bahasa pemrograman tingkat tinggi karena semua

variabelnya dan konstanta menyerupai bahasa manusia. BASCOM-8051 hadir

sebagai compiler program untuk memudahkan user. Dalam BASCOM-8051 terdapat

program simulasi untuk melihat jalannya program setiap step-nya ( diambil dari

(36)

2.7.1 Karakter dalam BASCOM

Dalam program BASCOM, karakter dasar terdiri atas alphabet (A-Z dan a-z),

karakter numerik (0-9), dan karakter spesial. Pada Tabel 2.4 berikut ini akan dijelaskan karakter dalam BASCOM-8501

Tabel 2.4 Karakter Dalam BASCOM-8051

Karakter Nama

Blank atau spasi

' Apostrophe

* Asterisk (simbol perkalian)

+ Plus sign

, Comma

- Minus sign

. Period (decimal point)

/ Slash (division symbol) will be handled

as \

: Colon

" Double quotation mark

; Semicolon

< Less than

= Equal sign (assignment symbol or

relational operator)

> Greater than

\ Backslash (integer/word division

symbol)

' Single quotation mark (apostrophe)

(37)

2.7.2 Tipe Data

Setiap variabel dalam BASCOM punya tipe data yang menunjukkan daya

tampungnya. Hal ini berhubungan dengan penggunaan memori mikrokontroler.

Berikut Tabel 2.5 adalah tipe data pada BASCOM. Tabel 2.5 Tipe Data

Berfungsi sebagai tempat penyimpan data sementara, misalnya untuk

menampung hasil perhitungan, data hasil pembacaan register, dan lain sebagainya.

Variabel merupakan pointer yang menunjuk pada alamat memori fisik di

mikrokontroler.

Ada beberapa aturan dalam penamaan sebuah variabel :

a. Nama variabel maksimum terdiri atas 32 karakter

b. Karakter biasa berupa angka atau huruf

(38)

d. Variabel tidak boleh menggunakan kata-kata yang digunakan oleh BASCOM

sebagai perintah, pernyataan, internal register, dan nama operator (AND, OR, DIM,

dll).

Sebelum digunakan, maka variabel harus dideklarasikan terlebih dahulu. Pada

Gambar 2.13 berikut ini adalah beberapa cara mendeklarasikan sebuah variabel dan diikuti nama dan tipe datanya.

Gambar 2.13 Pendeklarasian Variabel Dalam BASCOM 2.7.4 Alias

Dengan menggunakan alias, variabel yang sama dapat diberikan nama yang

(39)

digunakan untuk mengganti nama variabel yang telah baku, seperti port

mikrokontroler.

LEDBAR alias P1 Tombol1 alias P0.1 Tombol2 alias P0.2

Dengan deklarasi seperti diatas, perubahan pada tombol1 akan mengubah

kondisi P0.1. Selain mengganti nama port, kita dapat pula menggunakan alias untuk

mengakses bit tertentu dari sebuah variabel yang telah dideklarasikan.

Dim Ledbar as byte Led1 as Ledbar . 0 Led2 as Ledbar . 1 Led3 as Ledbar . 2 2.7.5 Konstanta

Selain variabel kita mengenal pula konstanta, perbedaannya dengan variabel

biasa adalah nilai yang dikandungnya tetap. Dengan konstanta, kode program yang

kita buat akan lebih muda dibaca dan dapat mencegah kesalahan penulisan pada

program kita. Misalnya, kita akan lebih muda menulis phi dari pada menulis

3,14159867. Sama seperti variabel, agar konstanta biasa dikenali program, maka

harus dideklarasikan terlebih dahulu. Berikut adalah cara pendeklarasian sebuah

konstanta :

Dim A As Const 5

(40)

Const Cbyte = &HF Const Cint = -1000 Const Csingle = 1.1 Const Cstring = “ test ” 2.7.6 Array

Dapat digunakan pada sekumpulan variabel dengan nama dan tipe yang sama.

Untuk mengakses variabel tertentu dalam array harus menggunakan indeks. Indeks

harus berupa angka dengan tipe data byte, integer, atau word. Artinya, nilai

maksimum sebuah indeks sebesar 65535.

Proses pendeklarasian sebuah array hampir sama dengan variabel, namun

perbedaannya kita pun mengikutkan jumlah elemennya. Berikut adalah contoh

pemakaian array :

Program diatas membuat sebuah array dengan nama ‘ kelas ’ yang berisi

seluruh elemen ( 1 – 10 ) dan kemudian seluruh elemennya diisikan dengan nilai C

yang berurutan, Untuk membacanya, kita menggunakan indeks dimana elemen

disimpan, pada program diatas, elemen-elemen array-nya dikeluarkan ke port 1 dari

(41)

2.7.7 Operasi-operasi Dalam BASCOM

Berikut adalah beberapa contoh kasus tentang cara menggabungkan,

memodifikasi, membandingkan, atau mendapatkan informasi tentang sebuah

pernyataan dengan menggunakan operator-operator yang tersedia dalam BASCOM.

a. Operator Aritmatika

Digunakan dalam perhitungan meliputi tambah ( + ), kurang ( - ), bagi ( / ),

dan kali ( * ).

b. Operator Relasi

Operator ini berfungsi membandingkan nilai sebuah angka. Fungsi dari

operator relasi dapat dilihat pada Tabel 2.6 berikut ini. Tabel 2.6 Operator Relasi

Operator Relasi Pernyataan

Operator digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan

(42)

digunakan juga untuk menguji sebuah byte dengan pola bit tertentu yaitu AND, OR,

Digunakan untuk melengkapi operator yang sederhana.

2.7.8 Kontrol Program

Keunggulan sebuah pemrograman terletak pada kontrol program. Dengan

kontrol program, kita akan mengendalikan alur sebuah program dan menentukan apa

yang harus dilakukan oleh sebuah program ketika menemukan kondisi tertentu.

Kontrol program meliputi kontrol pertimbangan kondisi dan keputusan, kontrol

pengulangan, serta kontrol alternatif. BASCOM menyediakan beberapa kontrol

program yang sering digunakan untuk menguji sebuah kondisi, perulangan, dan

pertimbangan sebuah keputusan. Berikut adalah beberapa kontrol program yang

(43)

2.7.8.1 If…Then

Dengan pernyataan If…Then, kita dapat mengetes kondisi tertentu,

kemudian menentukan tindakan yang sesuai dengan kondisi yang

diinginkan, Sintaks penulisannya sebagai berikut :

IF < syarat kondisi > THEN < pernyataan ke-1 >

< pernyataan ke-2 >

< pernyataan ke-n >

END IF

Jika ada dua kondisi atau lebih yang akan diuji, maka sintaks-nya

menjadi :

Pada sintaksis diatas, BASCOM akan menguji kondisi 1, jika kondisi 1

tidak terpenuhi, maka BASCOM akan menguji kondisi 2, begitu

(44)

memenuhi. Jika kondisi tidak memenuhinya, maka BASCOM akan

mengeksekusi blok pernyataan ELSE.

2.7.8.2 Select…Case

Perintah Select…Case akan mengeksekusi beberapa blok pernyataan

tergantung pada nilai variabelnya. Perintah mirip dengan perintah

If…Then, namun memiliki kelebihan, yaitu kemudahan dalam

penulisannya. Sintaksisnya sebagai berikut :

SELECT…CASE variabel CASE test1: statements CASE test2: statements CASE ELSE : statements END SELECT

2.7.8.3 While…End

Perintah While…wend akan mengeksekusi sebuah pernyataan secara

berulang ketika masih menemukan kondisi yang sama. Perintah akan

berhenti jika ada perubahan kondisi dan melakukan perintah

selanjutnya. Sintaksisnya sebagai berikut :

WHILE < syarat kondisi > < pernyataan >

WEND 2.7.8.4 Do…Loop

Perintah DO… Loop digunakan untuk mengulangi sebuah blok

(45)

menambshkan sebuah syarat kondisi agar perulangannya berhenti dan

perintahnya menjadi Do…Loop Until. Sintaksisnya sebagai berikut : Do

< blok pernyataan >

Loop

Dengan perintah Do…Loop Until :

Do

< blok pernyataan >

Loop Until < syarat kondisi > 2.7.8.5 For…Next

Perintah For…Next digunakan untuk mengeksekusi sebuah blok

pernyataan secara berulang. Perintah hampir sama dengan perintah

Do…Loop, namun pada perintah For…Next nilai awal dan akhir

perulangan serta tingkat kenaikan atau turunnya bisa ditentukan.

Penggunaannya sebagai berikut :

FOR var = start TO/DOWNTO end [ STEP value ] < blok pernyataan >

Next

Untuk menaikkan nilai perulangan, gunakan To, sedangkan untuk

menurunkan gunakan Downto. Tingkat kenaikan merupakan pilihan ,

(46)

tidak ditentuksn maka secara otomatis BASCOM akan menentukan

nilainya, yaitu 1.

2.7.8.6 Exit

Perintah Exit digunakan untuk keluar secara langsung dari blok

program For…Next, Do…Loop, Sub…End Sub, While…Wend.

Sintaksis penulisannya adalah :

EXIT [ Do ] [ For ] [ While ] [ Sub ]

Sintaksis selanjutnya setelah EXIT bisa bermacam-macam, tergantung

pada perintah Exit berada pada perintah apa. Jika pada perintah

(47)

BAB III PERANCANGAN

Pada Bab ini akan dibahas mengenai beberapa hal dasar tentang bagaimana

perancangan robot dirancang, komponen - komponen apa saja yang dibutuhkan dalam

perancangan robot ini, bagaimana cara merancang robot ini, Flowchart Robot, Blok

Diagram Hardware Robot dan Analisa setelah robot itu dibuat.

3.1 Perancangan Robot

Dalam pembuatan robot ini penulis memperhatikan beberapa aspek yang

dibutuhkan, yaitu :

a. Robot ini dirancang untuk dapat berjalan secara otomatis dengan kemampuan

program yang telah diinputkan untuk mencari dan mengikuti cahaya.

b. Robot ini bergerak dalam sebuah ruangan yang memiliki intensitas cahaya yang

rendah.

c. Robot ini dirancang dengan kemampuan hanya dapat bergerak dan tidak

mempunyai kemampuan lebih untuk menangani hal yang bersifat berat.

d. Robot ini dirancang dengan menggunakan sensor yang sensor LDR (Light

Dependent Resistor) dengan Mikrokontroller AT89S52 sebagai pengendali

utama pada robot.

e. Robot ini menggunakan LM 358 sebagai penguat operasional dari sensor LDR

(48)

3.2 Flowchart

Gambar 3.1 Flowchart Robot 3.2.1 Penjelasan Flowchart

Berikut adalah penjelasan flowchart dari Gambar 3.1 di atas.

1. Setelah diaktifkan robot secara otomatis akan melakukan proses pencarian

cahaya dengan cara berputar-putar ditempat.

2. Jika robot tidak menemukan adanya satu titik cahaya, robot akan terus mencari

lagi cahaya. Dan jika robot menemukan satu titik cahaya, maka akan ke proses

selanjutnya, yaitu robot akan mengikuuti atau mendekati arah dari cahaya yang telah

(49)

3.3 Blok Diagram

Gambar 3.2 Blok Diagram Hardware Robot

3.3.1 Penjelasan Blok Diagram Pada Gambar 3.2

Perencanaan perangkat keras pada proyek akhir ini mempergunakan

mikrokontroler AT89S52 sebagai sistem kontrol utama pada robot pengikut cahaya.

Dimana sensor LDR (Light Dependent Resistor) memiliki penguat opresional yang

digunakan untuk mengatur tingkat kesnsitifan dari sensor. Jika sensor mendeteksi

adanya cahaya maka mikrokontroler yang berfungsi sebagai system control utama

akan memerintahkan driver motor untuk baerjalan maju mengikuti cahaya. Dan jika

sensor tidak mendeteksi adanya cahaya maka mikrokontroler akan memerintahkan

(50)

3.4 Kebutuhan Perancangan Hardware Robot

Dalam pembuatan robot ini komponen-komponen yang dibutuhkan adalah

sebagi berikut:

1. Sensor LDR (Light Dependent Resistor).

2. Dynamo DC.

3. Transistor.

4. PCB (Printed Circuit Board).

5. Pararel Port.

6. Baterai ukuran AA.

3.5 Cara Merancang Robot

Merancang robot bukanlah suatu hal yang mudah dan tidak dapat dilakukan

oleh banyak kalangan. Dalam menjalani Tugas Akhir ini penulis ingin memaparkan

bagaimana cara merancang robot ini.

Pertama, membeli semua komponen-komponen yang diperlukan dalam

pembuatan robot ini. Setelah membeli semua komponennya, kemudian mendesign

robotnya.

Kedua, setelah mendesign robot, kemudian merakit komponen-komponen

yang sudah ada ke PCB (Printed Circuit Board). Setelah itu untuk menyatukan

(51)

Ketiga, di dalam menggerakkan robot maka di gunakan baterai dengan ukuran

AA yang berjumlah masing-masing 8 (delapan) biji untuk mekanik dan komponen

yang terdapat di PCB.

Keempat, untuk menghubungkan CPU ke robot maka digunakan pararel port.

3.6 Analisa Perancangan Motor DC

Motor DC merupakan salah satu bagian terpenting dalam merancang sebuah

robot pengikut cahaya. Motor DC ini mempunyai peran yang sangat penting

disamping sebagai alat penggerak. Pada Tabel 3.1 dibawah ini akan menjelaskan

pada saat robot bekerja, jika robot tersebut maju ke depan maka kedua motor kanan

dan kiri berputar bersama - sama ke arah depan dan apabila robot tersebut berputar

kekanan maka motor bagian kanan akan berputar ke belakang sedangkan motor

bagian kiri berputar ke depan.

Tabel 3.1 Rancangan Rangkaian Driver Motor

Motor Kanan Motor Kiri

Maju Mundur Maju Mundur

Keterangan

0 1 0 1 maju

(52)

3.7 Rancangan dan Analisis Robot

Berikut ini adalah cara kerja mekanik yang terdapat pada robot saat

dijalankan.

3.7.1 Rancangan Motor Saat Maju ke Depan

Posisi pada saat maju , dinamo kanan berputar ke arah kanan atau searah

jarum jam sedangkan untuk dinamo kiri berputar ke kiri atau berlawanan searah

jarum jam.

Dinamo

Kiri

Dinamo

Kanan

(53)

3.7.2 Rancangan Motor Saat Berputar ke Kanan

Posisi pada saat belok kanan , dinamo kanan dan dinamo kiri berputar ke arah

kanan atau searah jarum jam.

Dinamo

Kiri

Dinamo

Kanan

Gambar 3.4 Robot Saat Berputar Ke Kanan

3.8 Rancangan Komponen Robot

Perencanaan perangkat keras pada proyek akhir ini mempergunakan

mikrokontroler AT89S52 sebagai sistem kontrol utama pada robot penjejak cahaya.

(54)

menggunakan IC LM358 untuk pendeteksian cahaya. Sedangkan rangkaian driver

digunakan untuk menjalankan motor DC.

Mikrokontroler AT89S52 On/Off Switch

Sensor LDR

Gambar 3.5 Rancangan Komponen Pada PCB

3.8.1 On/Off Switch

On/off switch adalah tombol untuk mengaktifkan robot, dimana tombol

tersebut komponen dan motor DC dengan baterai sebagai arus listrik untuk

menggerakkan robot.

IC LM 358 Port

(55)

3.8.2 Sensor LDR (Light Dependent Resistor)

Sensor LDR merupakan salah satu sensor cahaya yang digunakan dalam

pembuatan robot ini, fungsi dari sensor LDR itu sendiri hanya sebagai penerima

cahaya.

3.8.3 IC LM 358

IC LM 358 merupakan perangkat tambahan untuk sensor, dimana IC tersebut

berfungsi sebagai penguat (Gain) setelah menerima masukan dari sensor didalam

pendeteksian cahaya.

3.8.4 Port Comunication

Port communication adalah tempat untuk menghubungkan robot dengan

komputer dan menggunakan pararel port sebagai sarana penghubung didalam

mengirim program yang telah dibuat pada aplikasi BASCOM – 8051 kedalam chip

robot.

3.8.5 Mikrokontroler AT89S52

Mikrokontroler itu sendiri merupakan chip yang berfungsi sebagai control

utama pada robot pengikut cahaya yang saya buat.

3.8.6 Driver Motor

Driver motor adalah komponen yang digunakan khusus untuk pergerakan

motor DC, dimana fungsi driver motor tersebut mengatur dan menyampaikan

(56)

BAB IV IMPLEMENTASI

4.1 Kebutuhan Sistem

Ada beberapa hal dalam pengembangan sistem yang harus diperhatikan

sebelum akhirnya sampai pada langkah menjalankan program, antara lain perangkat

keras (hardware), perangkat lunak (software) serta bagaimana akhirnya sistem dapat

berjalan sesuai dengan program yang telah dibuat.

4.1.1 Perangkat Sistem

Perangkat yang dibutuhkan dalam pembuatan robot pengikut cahaya dengan

menggunakan sensor LDR (Light Dependent Resistor) ini termasuk dalam pembuatan

laporan adalah perangkat keras (hardware) dan perangkat lunak (software).

Adapun perangkat keras yang digunakan dalam pengembangan sistem ini adalah:

1. Komputer Pentium 4 Intel 3.0 Ghz

2. RAM 512 Mb

3. Hard Disk 80 Gb

Sedangkan perangkat lunak yang digunakan adalah BASCOM – 8051.

4.2 Prosedur Pembuatan Program

Ada beberapa cara yang harus dilakukan sebelum program dibuat dan

dimasukkan kedalam chip robot, yaitu :

(57)

2. Setelah selesai menginstal maka tahap selanjutnya adalah pembuatan program

yang akan dimasukkan ke dalam chip robot.

Gambar 4.1 Pembuatan Program pada BASCOM - 8501

3. Setelah program di buat terlebih dahulu kita check syntax program dengan cara

memilih menu yang terdapat pada aplikasi BASCOM – 8501 atau dengan cara

menekan tombol ctrl+F7 yang terdapat pada keybord untuk mengetahui apakah

(58)

Gambar 4.2 Check Program

4. Setelah melakukan pengecekan, kita dapat mengetahui apakah program yang kita

buat teradapat error atau tidak, apabila dalam program terdapat kesalahan maka akan

muncul tampilan errors. Berikut ini akan ditunjukkan pada Gambar 4.3 jika dalam

(59)

Gambar 4.3 Error Program

5. Jika dalam program tidak terdapat kesalahan atau error terlebih kita compile

program sebelum kita masukkan kedalam chip robot, kita dapat memilih menu yang

sudah ada pada aplikasi tersebut untuk meng-compile atau dengan cara menekan

(60)

Gambar 4.4 Compile Program

6. Tahap terakhir dalam pembuatan program setelah di-compile yaitu memasukkan

program kedalam chip robot. Dengan cara memilih menu “program" pada aplikasi

tersebut lalu memilih pilhan send to chip atau dengan cara menekan tombol F4 pada

keybord. Setelah itu akan muncul tampilan BASCOM – 8501 *MCS

(61)

Gambar 4.5 Send To Chip

4.2 Implementasi Coding

Pada tahapan ini akan dibahas mengenai program yang telah dibuat untuk

robot, berikut adalah penjelasan beserta program yang telah dibuat.

Langkah pertama yang harus dilakukan dalam pembuatan program adalah

mendeklarasikan semua fungsi, delay perintah ke perintah yang lain, dan semua port

pada mikrokontroler yang digunakan sebagai input atau output dari program yang

akan kita susun. Berikut adalah potongan program yang merupakan penentuan port

(62)

Sensor Alias P3.2

Relay_maju_kanan Alias P0.0

Relay_mundur_kanan Alias P0.3 deklarasi port

Relay_maju_kiri Alias P0.4

Relay_mundur_kiri Alias P0.7

Setelah proses deklarasi port yang ditentukan ke dalam mikrokontroler selesai,

langkah kedua adalah membuat program yang akan memfungsikan register dan port

mikrokontroler untuk menjalankan dan meneruskan perintah kepada piranti

pendukungnya. Berikut adalah potongan program dimana robot akan berputar - putar

ke kanan jika sensor tidak menerima adanya cahaya.

Do

If Sensor = 1 Then

Relay_maju_kanan = 1 : Relay_mundur_kanan = 0

Relay_maju_kiri = 0 : Relay_mundur_kiri = 1

Waitms 300

Program dibawah ini adalah sederet perintah mutlak mewakili inisialisasi program

diatas jika sensor dalam keadaan menerima cahaya, maka robot akan berjalan maju

(63)

Elseif Sensor = 0 Then

Relay_maju_kanan = 0 : Relay_mundur_kanan = 1

Relay_maju_kiri = 0 : Relay_mundur_kiri = 1

Waitms 200

End If

Loop

(64)

BAB V

PENGUJIAN

DAN ANALISA

5.1 Pendahuluan

Pada bab ini akan dibahas mengenai pengujian dan analisa pada hardware

yang telah dirancang. Tujuan dari pengujian dan analisa ini adalah untuk mengetahui

apakah hardware tersebut telah berfungsi dengan benar dan sesuai rencana atau tidak.

Pengujian dan analisa ini ditujukan pada pengujian komponen-komponen yang

terdapat pada robot serta pengujian robot pengikut cahaya itu sendiri.

5.2 Pengujian Alat

Berikut ini adalah pengujian alat atau komponen yang terdapat pada robot

pengikut cahaya.

5.2.1 Pengujian Mikrokontroler AT89S52

Untuk menguji mikrokontroller AT89S52 yang telah berisi sebuah program

kita tinggal meletakkan AT89S52 tersebut pada socket yang telah dipasang pada

PCB. Setelah itu tinggal memberi tegangan pada hardware sederhana sebesar + 4V

sampai dengan +5V.

5.2.2 Pengujian Sensor LDR (Light Dependent Resistor)

Tujuan pengujian rangkaian sensor adalah untuk mendapatkan data

karakteristik dari sensor LDR. Rangkaian sensor bertugas memberikan besaran

(65)

inisialisasi dengan memanfaatkan rangkaian comparator pada sistem penguat

operasional. Pada rangkaian sensor LDR berfungsi sebagai penerima cahaya sehingga

akan terjadi perubahan tegangan. Saat LDR keadaan terang hambatan LDR sangat

kecil sehingga Vin juga kecil. Sedangkan saat gelap hambatan LDR sangat besar

sehingga Vin juga besar.

Gambar 5.1 Pengujian Rangkaian Sensor

Hasil pengujian rangkaian sensor ditunjukan tabel tabel berikut.

Tabel 5.1 Hasil Pengujian Rangkaian Sensor

Vin (volt) Sensor Vref

(volt) Gelap Terang

Sensor LDR 3.8 4.5 2.9

5.2.3 Pengujian Rangkaina Driver Motor

Pengujian yang dilakukan pada rangkaian driver motor dengan menggunakan

transistor adalah untuk mengetahui apakah data dari mikrokontroler dapat diterima

(66)

keadaan arus logika tinggi dan rendah yang diatur melalui mikrokontroler. Arus

logika tinggi dan rendah tersebut diwujudkan ke bentuk tegangan 12V atau 0V. Jika

data dari mikrokontroler dapat masuk ke rangkaian driver motor maka dapat

dipastikan motor tersebut bekerja dengan baik, sehingga dapat menggerakkan robot

sesuai dengan program yang diinginkan.

5.2.4 Pengujian Alat Secara Keseluruhan

Tujuan pengujian alat secara keseluruhan untuk mendapatkan hasil dan data –

data secara keseluran dari awal rangkaian pendeteksi cahaya pada sensor sampai

berkerjanya motor pada waktu robot dijalankan. Pengujian alat secara keseluruhan

dapat dilakukan dengan adanya program yang telah tertanam pada mikrokontroller.

Dengan menjalankan program sesuai dengan fungsinya, maka sistem dapat berjalan

sesuai dengan harapan yaitu robot akan berjalan mengikuti cahaya dengan masukkan

dari pendeteksian cahaya yang dilakukan oleh sensor dan keluarannya berupa

bekerjanya motor yang semuanya diproses oleh mikrokontroler. Apabila sistem tidak

bekerja sesuai dengan harapan, maka telah terjadi kesalahan pada sistem tersebut.

5.3 Pengujian Robot Pengikut Cahaya

Berikut ini akan ditunjukkan cara kerja robot secara keseluruhan, dari robot

mencari cahaya sampai robot mengikuti cahaya. Dalam menguji robot ini harus

dilakukan didalam ruangan yang memiliki intensitas cahaya lebih rendah

(67)

Gambar 5.2 Robot Saat Mencari Cahaya

Dalam mencari cahaya robot akan berputar ke kanan apabila sensor LDR

tidak mendeteksi atau menerima cahaya dari senter.

senter

cahaya

Gambar 5.3 Robot Mendekati Cahaya

Gambar di atas menunjukkan cara kerja robot yang berjalan maju mendekati

(68)

5.3.1 Pengujian di Dalam Ruangan Terang

Tabel dibawah ini akan menunjukkan jarak - jarak yang dibutuhkan robot

dalam keadaan ruang yang memiliki intensitas cahaya terang dengan senter sebagai

alat bantu pada robot tersebut.

Tabel 5.2 Pengujian Robot di Ruang Terang

Sensor LDR Jarak

Ruang

(3.8 V) Senter Min - Max

± 5 - 10 Cm

± 20 - 30 Cm

Terang (2.9 V) 30 V

± 40 - 45 Cm

Berikut akan ditunjukkan gambar - gambar disaat robot bekerja didalam

ruangan yang terang :

(69)

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang terang,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) menurun dari tegangan normal 3.8 V

menjadi 2.9 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

sejajar dengan sensor LDR, dengan jarak minimal ± 10 – 20 Cm ( Centimeter ).

(70)

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang terang,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) menurun dari tegangan normal 3.8 V

menjadi 2.9 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

sejajar dengan sensor LDR, dengan jarak ± 20 – 30 Cm ( Centimeter ) robot masih

bias untuk mengikuti cahaya.

(71)

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang terang,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) menurun dari tegangan normal 3.8 V

menjadi 2.9 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

sejajar dengan sensor LDR, maka jarak maksimal yang dibuthkan oleh robot agar

dapat mengikuti cahaya ± 40 – 45 Cm ( Centimeter ). Jika jarak yang ditentukan lebih

dari ± 40 – 45 Cm maka keadaan ruangan harus lebih gelap lagi, sehingga tingkat

kesensitifan dari sensor akan bertambah.

5.3.2 Pengujian di Dalam Ruangan Gelap

Tabel dibawah ini akan menunjukkan jarak - jarak yang dibutuhkan robot

dalam keadaan ruang yang memiliki intensitas cahaya gelap dengan senter sebagai

alat bantu pada robot tersebut.

Tabel 5.3 Pengujian Robot di Ruang Gelap

(72)

Berikut akan ditunjukkan gambar - gambar disaat robot bekerja didalam

ruangan yang gelap :

Gambar 5.7 Robot Bekerja Dengan Jarak ± 10 – 20 Cm

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang gelap,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) meningkat dari tegangan normal 3.8 V

menjadi 4.5 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

(73)

Gambar 5.8 Robot Bekerja Dengan Jarak ± 30 – 40 Cm

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang gelap,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) meningkat dari tegangan normal 3.8 V

menjadi 4.5 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

(74)

Gambar 5.9 Robot Bekerja Dengan Jarak ± 50 – 60 Cm

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang gelap,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) meningkat dari tegangan normal 3.8 V

menjadi 4.5 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

sejajar dengan sensor LDR, dengan jarak ± 50 – 60 Cm ( Centimeter ) robot masih

(75)

Gambar 5.10 Robot Bekerja Dengan Jarak ± 70 – 80 Cm

Gambar diatas menunjukkan saat robot bekerja didalam ruangan yang gelap,

dimana pada intensitas cahaya dari ruangan tersebut membuat tingkat kesensitifan

sensor LDR ( Light Dependent Resistor ) meningkat dari tegangan normal 3.8 V

menjadi 4.5 V. Dengan bantuan senter yang memiliki tegangan 3.0 V dan disorotkan

sejajar dengan sensor LDR, maka jarak maksimal yang diperoleh oleh robot agar

(76)

5.3.3 Pengujian Dengan 2 ( Dua ) Senter

Gambar dibawah ini akan menunjukkan bagaimana cara kerja robot bila

menggunakan 2 ( dua ) senter.

Gambar 5.11 Cara Kerja Robot Dengan 2 Senter

Saat robot menyala terlebih dahulu robot akan berputar untuk mencari cahaya,

bila didalam ruangan terdapat cahaya lebih dari satu maka robot hanya dapat

(77)

BAB VI

KESIMPULAN DAN SARAN

6.1 Kesimpulan

Dari hasil uraian yang telah digambarkan, baik secara teori maupun

berdasarkan hasil-hasil pengujian yang telah dilakukan pada Tugas Akhir ini, maka

dapat di ambil kesimpulan sebagai berikut :

Komponen terpenting yang dipergunakan pada Tugas Akhir Robot Pengikut

Cahaya adalah dengan menggunakan salah satu jenis Mikrokontroller yaitu AT89S52

sebagai komponen utama dan sensor LDR ( Light Dependent Resistor ) sebagai

penerima cahaya. Robot ini tidak harus dapat berjalan di ruangan gelap, tetapi juga

bisa digunakan di ruangan terang, akan tetapi pada ruangan yang terang jarak robot

untuk mengikuti cahaya lebih pendek dibandingkan pada ruangan yang lebih gelap.

6.2 Saran

Dengan adanya kekurangan dalam kinerja dari robot penjejak cahaya banyak

hal – hal yang perlu dilakukan untuk mendapatkan sistem yang lebih baik :

a. Pembuatan robot penjejak cahaya pada saat ini sudah sedikit ketinggalan karena

tidak ada aksi tertentu selain robot bergerak mendekati cahaya. Sebaiknya robot

diberi aksi tertentu seperti menyemprotkan air seperti robot pemadam kebakaran.

b. Agar dapat mempermudah robot di dalam mencari cahaya, sebaiknya robot diberi

lebih dari satu sensor, atau juga dapat menggunakan kamera agar dapat menjangkau

cahaya dengan jarak yang jauh.

(78)

DAFTAR PUSTAKA

1. Eko Putra, Agfianto. 2003. Belajar Mikrokontroler AT 89C51/52/55 Teori dan

Aplikasi. Gaya Media. Yogyakarta.

2. Wahyudin, Didin. 2007. Belajar Mudah Mikrokontroler AT89S52 dengan Bahasa

Basic Menggunakan BASCOM-8051. Yogyakarta: ANDI.

3. Corporation, Atmel. “Migrating from AT89C51/C52 to AT89S51/S52 Ap Note.”

http://www.atmel.com/dyn/resources/prod_documents/doc3487.pdf ( diakses

tanggal 17 Maret 2010 ).

4. Corporation, Atmel. “Migrating from IC LM 358 Ap Note.”

http://www.atmel.com/dyn/resources/prod_documents/doc7001.pdf ( diakses

tanggal 17 Maret 2010 ).

5. Toko Elektronika. “Sensor LDR Dan Transistor.”

http://www.toko-elektronika.com/tutorial/linefollowertanpamikro.html ( diakses tanggal 17 Maret

2010 ).

Gambar

Gambar 2.7 Bit Latch Dan I/O Buffer
Gambar 2.10 IC LM 358
Gambar 2.11 Internal Blok Diagram IC LM 358
Gambar 2.12 Simbol Transistor NPN dan PNP
+7

Referensi

Dokumen terkait

Tujuan Tugas Akhir ini adalah membuat realisasi robot line follower yang dapat mensimulasikan proses pencarian sumber cahaya dan pengisian tegangan pada kapasitor secara

Dari hasil pengujian enam kali dengan berbagai macam rintangan dan posisi sumber cahaya yang dilakukan dalam Tugas Akhir ini (medan 2x2 m 2 ) menunjukkan bahwa robot bor

sehingga Robot Light Follower dapat bergerak mengikuti perbedaan intensitas cahaya pada ke tiga sensor kiri, tengah, kanan.. Apabila robot berbelok kiri, maka motor kanan

Menyatakan dengan sesungguhnya bahwa Laporan Akhir yang telah saya buat dengan judul “ PENGGUNAAN POTENSIOMETER SEBAGAI SENSOR POSISI PADA LENGAN ROBOT BERJARI PENGIKUT

Robot pengikut garis yang dirancang ini bekerja pada saat sensor membaca garis dan mengirim signal ke komparator sebagai pembanding dan diterima oleh

Tujuan utama dari tugas akhir ini adalah menggunakan metode kendali yang baik agar robot bisa mendeteksi adanya cahaya dan dapat menghindari rintangan di depan

Robot pengikut garis yang dirancang ini bekerja pada saat sensor membaca garis dan mengirim signal ke komparator sebagai pembanding dan diterima oleh

Sedangkan untuk proses pengolahan citra, mulai dari pengambilan citra hingga menghasilkan parameter nilai kontrol untuk kemudi dan kecepatan robot pengikut, dapat dilihat pada Gambar 2