ROBOT PENGIKUT CAHAYA ( LIGHT FOLLOWER ).
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)
ABSTRAKSI... i
KATA PENGANTAR... ii
UCAPAN TERIMA KASIH... iii
DAFTAR ISI ... iv
DAFTAR GAMBAR ... vi
DAFTAR TABEL ... viii
BAB I PENDAHULUAN 1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 2
1.3 Batasan Masalah ... 2
1.4 Tujuan ... 2
1.5 Manfaat... 3
1.6 Metodologi Penelitian ... 3
1.7 Sistematika Penulisan ... 4
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.3 Motor DC………... 21
2.4 IC LM 358...………... 23
2.4.1 Susunan Pin LM 358……..……...………. 24
2.5 Transistor... 25
2.6 Dinamika Robot... 26
2.7 Bascom-8501 Sebagai Compiler Basic... 26
2.7.1 Karakter Dalam Bascom... 27
2.7.2 Tipe Data... 28
2.7.3 Variabel... 28
2.7.4 Alias... 29
2.7.5 Konstanta... 30
2.7.6 Array... 31
2.7.7 Operasi-operasi dalam Bascom... 32
2.7.8 Kontrol Program... 33
2.7.8.1 If Then ... 34
2.7.8.2 Select Case ... 35
2.7.8.3 While End ... 35
2.7.8.4 Do Loop ... 35
2.7.8.5 For Next ... 36
2.7.8.6 Exit ... 37
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.7.1 Rancangan Motor Saat Maju Ke Depan…...………. 43
3.7.2 Rancangan Motor Saat Belok Ke Kanan... 44
3.8 Rancangan Komponen Robot... 44
3.8.1 On/Off Switch... 45
3.8.2 Sensor LDR... 46
3.8.3 IC LM 358... 46
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
4.1.1 Perangkat Sistem... 47
4.2 Prosedur Pembuatan Program... 47
4.3 Implementasi Coding……….. 52
BAB V PENGUJIAN DAN ANALISA 5.1 Pendahuluan... 55
5.2 Pengujian Alat ………... 55
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 juga untuk memenuhi target dari konsumen bisa teratasi.
(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 pada laporan tugas akhir ini.
(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 mengaktif/nonaktifkan transistor ( diambil dari pustaka no.5 ).
(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 yang dapat dipilih.
(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 (MOVX @R1), port 2 mengeluarkan isi dari P2 Special Function Register.
(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 untuk menangani operasi perhitungan maupun boolean dalam program.
(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 yang kita buat. Memori digunakan sebagai tempat untuk menimpan program, data
(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 aplikasi-aplikasi mikrokontroler.
(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 User Area Bank 1 Bank 0 Bank 3 Bank 2 8 Bytes 78 7F 70 77 68 6F 60 67 58 5F 50 57 48 4F 40 47 38 3F 30 37 28 2F 20 27 18 1F 10 17 08 0F 00 07 SCRATCHPAD AREA BIT ADDRESSABLE SEMENT REGISTER BANKS SP FF 80 7F 00
(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. SFR User Area 8 Bytes F8 FF F0 F7 E8 EF E0 E7 D8 DF D0 D7 C8 CF C0 C7 B8 BF B0 B7 A8 AF A0 A7 98 9F 90 97 88 8F 80 87 FF 80 7F 00 SP IMOD SBUF DPL IL0 B AOC PSW P E P3 P0 ICON P2 SCON P1 DPH
IL1 IHU IH1
PCON
BIT ADDRESSABLE
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 dilihat pada Gambar 2.7.
(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 membalik arus sehingga layaknya pulsa yang menggerakkan motor tersebut. Biasa
(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 perubahan yang serempak.
(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 8 Vcc Pin sumber tegangan positif
(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 (off).
(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
Tipe Data Ukuran (byte) Range
Bit 1/8
Byte 1 0 s/d 255
Integer 2 -32,768 s/d +32,768
Word 2 0 s/d 65535
Long 4 -2147483648 s/d
+2147483648
Single 4
String hingga 254 byte
2.7.3 Variabel
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 lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias
(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
Dim B1 As Const &B1001 Cara lain yang paling mudah :
(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 :
Dim kelas ( 10 ) as byte Dim c as Integer
For C = 1 To 10 A ( C ) = C
P1 = A ( C ) Next
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 = Sama dengan X = Y
< > Tidak sama
dengan X < > Y < Lebih kecil dari X < Y > Lebih besar dari X > Y < = Lebih kecil/sama
dengan X < = Y > = Lebih besar/sama
dengan X > = Y
c. Operator Logika
Operator digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan operasi boolean. Dalam BASCOM terdapat empat buah operator logika yang dapat
(42)
digunakan juga untuk menguji sebuah byte dengan pola bit tertentu yaitu AND, OR, NOT, dan XOR seperti :
DIM A As Byte A = 63 And 19 PRINT A A = 10 Or 9 PRINT A Output 16 11 d. Operator Fungsi
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 sering digunakan dalam pemrograman dengan BASCOM.
(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 :
IF < syarat kondisi 1 > THEN < blok pernyataan ke 1 >
ELSEIF < syarat kondisi 2 > THEN < blok pernyataan ke 2 > ELSEIF < syarat kondisi n > THEN < Blok pernyataan ke n >
ELSE
< blok pernyataan > END IF
Pada sintaksis diatas, BASCOM akan menguji kondisi 1, jika kondisi 1 tidak terpenuhi, maka BASCOM akan menguji kondisi 2, begitu seterusnya hingga BASCOM menemukan satu kondisi yang
(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 , sehingga kita bisa menggunakannya atau tidak, Jika nilai kenaikan
(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 (Light Dependent Resistor).
(48)
3.2 Flowchart
Mencari Cahaya
Menemukan cahaya
Finish
T
Y
Mengikuti/ Mendekati
Cahaya Start
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 di deteksi oleh sensor LDR (Light Dependent Resistor).
(49)
3.3 Blok Diagram
Penguat Operasional LM
358
Mikrokontroler AT89S52
Driver Motor Motor
DC
Motor DC Sensor LDR
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 driver motor berputar searah jarum jam guna mencari cahaya.
(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 rangkaian komponen dan motor diperlukan sebuah mika sebagai rangka dari robot.
(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. Dan dihubungkan dengan perangkat luar antara lain rangkaian sensor LDR dengan
(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
Comunication Driver Motor
(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 perintah dari mikrokontroler.
(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 program yang di buat terdapat error atau tidak.
(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 pembuatan program yang kita buat terdapat error.
(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 tombol F2 pada keybord.
(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 pada mikrokontroler dalam membaca perintah sebelum masuk ke perintah utama.
(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 untuk mengikuti atau mendekati cahaya.
(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 tegangan masukan pada mikrokontroler, yang sebelumnya melewati proses
(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 oleh rangkaian driver motor sehingga dapat menjalankan motor. Data tersebut berupa
(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 dibandingkan dengan senter.
(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 atau mengikuti cahaya dari senter yang disorotkan lurus pada sensor LDR.
(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
Sensor LDR Jarak
Ruang
(3.8 V) Senter Min - Max
10 - 20 Cm 30 - 40 Cm 50 - 60 Cm
Gelap (4.5 V) 30 V
(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 sejajar dengan sensor LDR, dengan jarak minimal ± 10 – 20 Cm ( Centimeter ).
(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 sejajar dengan sensor LDR, dengan jarak ± 30 – 40 Cm ( Centimeter ).
(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 bias untuk mengikuti atau mendekati cahaya senter.
(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 dapat mengikuti cahaya ± 70 – 80 Cm ( Centimeter ).
(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 mengikuti satu cahaya yang terlebih dahulu telah di deteksi oleh sensor.
(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 ).
(1)
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 sejajar dengan sensor LDR, dengan jarak ± 30 – 40 Cm ( Centimeter ).
(2)
65
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 bias untuk mengikuti atau mendekati cahaya senter.
(3)
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 dapat mengikuti cahaya ± 70 – 80 Cm ( Centimeter ).
(4)
67
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 mengikuti satu cahaya yang terlebih dahulu telah di deteksi oleh sensor.
(5)
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.
(6)
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 ).