APLIKASI MIKROKONTROLER AT89S51 SEBAGAI
PENGENDALI JARAK JAUH PADA ROBOT FORKLIFT
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya
062408018
SUTAN SORIPADA HARAHAP
PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : APLIKASI MIKROKONTROLER AT89S51 PADA ROBOT FORKLIFT
Kategori : TUGAS AKHIR
Nama : SUTAN SORIPADA HARAHAP
Nomor Induk Mahasiswa : 062408018
Program Studi : DIPLOMA TIGA (D3) FISIKA INSTRUMENTASI
Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (MIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juni 2009
Diketahui
Departemen Fisika FMIPA USU Pembimbing, Ketua Program Studi D3 FIN
(Drs. Syahrul Humaidi, M.Sc.) (Dr. Marhaposan Situmorang)
PERNYATAAN
APLIKASI MIKROKONTROLER AT89S51 PADA ROBOT FORKLIFT
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing – masing disebutkan sumbernya.
Medan, Juni 2009
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Allah Subhanahuwata’ala, sang penguasa
langit dan bumi dan apa yang ada diantara keduanya. Yang senantiasa melimpahkan
karunia-Nya dan selalu memberikan kemudahan dan kelancaran sehingga penulis dapat
menyelesaikan tugas akhir ini dalam waktu yang telah ditetapkan. Sholawat dan salam
semoga senantiasa tercurahkan kepada Rasulullah sallallahu’alaihiwasalam sang
pembawa petunjuk dan selalu menjadi inspirasi dan teladan bagi penulis.
Ucapan terimakasih saya sampaikan kepada Dr. Marhaposan Situmorang selaku
Ketua Departemen Fisika dan selaku dosen pembimbing pada penyelesaian tugas akhir
ini yang telah memberikan panduan dan penuh kepercayaan kepada saya untuk
menyelesaikan tugas akhir ini. Ucapan terima kasih juga disampaikan kepada Drs.
Syahrul Humaidi, M.Sc, selaku Ketua Program Studi D3 Fisika Instrumentasi. Ucapan
terima kasih juga disampaikan kepada Dr. Eddy Marlianto, selaku Dekan FMIPA.
Ucapan terima kasih juga disampaikan kepada Dra. Yustinon, M.Si, selaku sekretaris
jurusan Departemen Fisika. Seluruh dosen pada Departemen Fisika. Kepada Ayahanda
H.Yusron Harahap dan Ibunda Sugiani yang telah banyak memberikan dukungan dan
semangat kepada penulis, serta Kakak dan Abang tersayang.Dan tidak lupa pula abang
senior kami Andika Siregar, Amd yang telah memberika bantuan, panduan dan sarana
dalam menyelesaikan tugas akhir ini. Rekan-rekan Fisika Instrumentasi stambuk 2006
khususnya Amroel, Emil, Iril, Djono, Dede, Sule, Rina, Visca, Yuli dan Ika wahyuni
makasih ya atas kebersamaannya dan dukungannya. Penulis menyadari bahwa dalam
penyusunan tugas akhir ini masih terdapat kekurangan dan masih jauh dari
ketidaksempurnaan. Oleh karena itu penulis sangat terbuka terhadap saran maupun
kritikan dalam sebuah diskusi yang membangun dari pembaca.
Akhir kata penulis mengharapkan semoga tugas akhir ini dapat bermanfaat bagi
ABSTRAK
DAFTAR ISI
1.3 Identifikasi Masalah 3
1.4 Batasan Masalah 3
1.5 Sistematika Penulisan 3
BAB II LANDASAN TEORI 5
2.1 Mikrokontroler AT89S51 5
2.1.1 Konstruksi AT89S51 6
2.1.2 SFR (Register Fungsi Khusus) 8 2.1.3 IC Mikrokontroler AT89S51 11 2.2 Komponen-Komponen Pendukung 13
2.2.1 Resistor 13
3.2.2 Software 8051 Editor, Assembler, Simulator 48 3.2.3 Software Downloader 50
BAB IV PENGUJIAN RANGKAIAN 54
4.1Pengujian Rangkaian Catu Daya 54 4.2 Pengujian Rangkaian Mikrokontroler AT89S51 55 4.3 Pengujian Rangkaian Driver Motor Stepper 56 4.4 Rangkaian penerima sinyal pada robot Forklift 58 4.5 Rangkaian pemancar sinyal pada robot forklift 59
BAB V KESIMPULAN DAN SARAN 62
5.1 Kesimpulan 62
5.2 Saran 62
DAFTAR TABEL
Halaman
Tabel 2.1 Peta Register Fungsi Khusus - SFR 12
Tabel 2.2 Fungsi Pin Pada Port 3 8
DAFTAR GAMBAR
Halaman Gambar 2.1 IC Mikrokontroler AT89S51 11 Gambar 2.2 Resistor Karbon 14 Gambar 2.3 Skema Kapasitor 15 Gambar 2.4 Electrolytic Capacitor (ELCO) 15
Gambar 2.5 Ceramic Capacitor 16
Gambar 2.6 Simbol Tipe Transistor 16 Gambar 2.7 Transistor Sebagai Saklar ON 17
Gambar 2.8 Transistor Sebagai Saklar OFF 18 Gambar 2.9 Diagram Motor Stepper 20 Gambar 2.10 Pemberian Data/Pulsa Pada Motor Stepper 21
Gambar 2.11 Bentuk Fisik dari Motor DC Magnet Permanen 22 Gambar 2.12 Prinsip Motor 22 Gambar 2.13 Hukum Tangan Kanan Motor 23
Gambar 2.14 Operasi Motor DC Magnet Permanen 23 Gambar 2.15 Lambang Kristal 25 Gambar 3.1 Diagram Blok Stasiun Pemancar 26 Gambar 3.2 Diagram Blok Robot Forklift 27 Gambar 3.3 Rangkaian Catu Daya 27 Gambar 3.4 Rangkaian Mikrokontroler AT89S51 28 Gambar 3.5 Rangkaian Driver Motor Stepper 30 Gambar 3.6 Rangkaian Jembatan H 31
Gambar 3.7 Rangkaian Relay 34
ABSTRAK
BAB I
PENDAHULUAN
1.1 Latar Belakang
Pada kehidupan sehari-hari manusia membutuhkan bantuan dari
sesuatu yang dapat bekerja secara cepat, teliti dan dapat bekerja secara terus-menerus
tanpa mengenal lelah, robot adalah jawaban dari keinginan tersebut. Robot ini diharapkan
dapat menggantikan pekerjaan manusia pada lingkungan yang berbahaya bagi kesehatan
maupun keselamatan manusia tersebut dan dapat mengamati lingkungan lebih dari
kemampuan panca indra manusia.
Pada awalnya, aplikasi robot tidak dapat dipisahkan dengan dunia
industri sehingga muncul istilah industrial robot, tetapi sejak awal 80-an teknologi
dibidang robot ini telah berkembang dan dipakai secara meluas.Dengan munculnya
teknologi mobile robot ini, seiring itu pula muncul istilah robot humanoid (konstruksi
mirip manusia), animaloid ( mirip binatang ), dan sebagainya yang digunakan dalam
berbagai jenis keperluan seperti kebutuhan akan metode navigasi, pemetaan medan
jelajah (path planning), kamampuan untuk menghindari halangan (obstacle avoidance),
dan kemampuan untuk menghindari tabrakan sesama robot (collision).
Mikrokontroler adalah sistem komputer yang ringkas, sebab dapat
menggantikan fingsi komputer dalam pengendalian kerja dan desain yang jauh lebih
ringkas dari pada komputer. Dengan ukurannya yang kecil, mikrokontroler dapat
peralatan portable, atau pada robot. Mikrokontroler digunakan sebagai otak dari suatu
embebded system, sebuah komputer terpadu.
AT89S51 adalah chip mikrokontroler produksi Atmel Inc,
merupakan keluarga dari MCS-51 rancangan Intel. AT89S51 mempunyai fitur dasar yang
cukup lengkap untuk suatu pemrosesan input-output. Bahasa pemrograman yang
digunakan AT89S51 hampir tidak berbeda jauh dengan instruksi set pada mikroprosesor
Intel yang sudah dipelajari diperkuliahan.
Pada proyek ini digunakan sebuah Transmitter (pemancar) dan
Receiver (penerima) yang berfungsi untuk mengirimkan data dari remote kontroler
ke-robot forklift. Dimana ke-robot ini dapat mengangkat barang dan berusaha untuk
memindahkan barang tersebut ketempat yang akan ditentukan.
1.2 Tujuan Penulisan
Penulisan Tugas Akhir ini bertujuan sebagai berikut :
1. Sebagai salah satu syarat untuk dapat menyelesaikan program studi Diploma Tiga
(D-III) Fisika Instrumentasi FMIPA Universitas Sumatera Utara.
2. Memanfaatkan mikrokontroler AT89S51 sebagai tempat pemrosesan data (otak)
dari sebuah system (robot).
3. Sebagai langkah awal untuk membuat sebuah system otomatisasi dalam dunia
industri sehingga meningkatkan efisiensi kerja.
4. Membuat sebuah sistem elektronik yang dapat membantu manusia memindahkan
1.3 Identifikasi Masalah
Yang menjadi permasalahan dalam penulisan Tugas Akhir ini adalah bagaimana
merancang suatu robot pengangkat barang yang dapat dikontrol dengan remote control
dan dihubungkan dengan mikrokontroler AT89S51 memakai bahasa pemrograman
assembly.
1.4 Batasan Masalah
1. Mikrokontroler yang digunakan adalah jenis AT89S51.
2. Untuk menghubungkan rangkaian penerima sinyal dengan mikrokontroler
diperlukan kode-kode bilangan biner yang pas.
3. Untuk menggerakkan pengangkat forklift digunakan motor stepper.
4. Rangkaian penerima sinyal akan menerima sinyal yang dipancarkan oleh
rangkaian pemancar.
1.5 Sistematika Penulisan
Untuk mempermudah pembahasan dan pemahaman, maka penulis membuat sistematika
penulisan laporan ini sebagai berikut:
BAB I PENDAHULUAN
Meliputi latar belakang masalah, tujuan penulisian, identfikasi masalah, batasan
masalah dan sistematika penulisan.
BAB II LANDASAN TEORI
Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang
antara lain tentang mikrokontroler AT89S51 (hardware dan software), bahasa
program yang digunakan. serta karekteristik dari komponen-komponen
pendukung.
BAB III PERANCANGAN ALAT DAN PROGRAM
Pada bagian ini akan dibahas perancangan dari alat, yaitu diagram blok dari
rangkaian, skematik dari masing-masing rangkaian dan diagram alir dari
program yang akan diisikan ke mikrokontroler AT89S51
BAB IV PENGUJIAN RANGKAIAN
Meliputi tentantang cara pengujian rangkaian.
BAB V KESIMPULAN DAN SARAN
Mengenai kesimpulan yang didapat setelah merakit proyek ini dan saran yang
diberikan demi kesempurnaan dan pengembangan proyek ini pada masa yang
akan dating kearah yang lebih baik.
BAB II
LANDASAN TEORI
2.1 Mikrokontroler AT89S51
Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan mikroprosesor). Sebagai kebetuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih canggih.
Ilustrasi yang mungkin bisa memberikan gambaran yang jelas dalam penggunaan mikrokontroler adalah aplikasi mesin tiket dalam arena permainan yang saat ini terkenal di Indonesia. Jika kita sudah selesai bermain, maka akan diberikan suatu nilai, nilai inilah
yang menentukan berapa jumlah tiket yang bisa diperoleh dan jika dikumpulkan dapat ditukar dengan berbagai macam hadiah. Sistem tiket ini ditangani dengan mikrokontroler, karena tidak mungkin menggunakan komputer PC yang harus dipasang di samping (atau di belakang) mesin permainan yang bersangkutan.
Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer RAM dan ROM-nya besar. Sedangkan pada mikrokontroler ROM dan RAM-nya terbatas. Pada mikrokontroler AT89S51 ROM atau flash PEROM berukuran 2 kilo byte, sedangkan RAM-nya berukuran 128 byte.
2.1.1. Kontruksi AT89S51
Mikrokontrol AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 10 Kilo Ohm dipakai untuk
membentuk rangkaian reset. Dengan adanya rangkaian reset ini AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 24 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja mikrokontroler.
Memori merupakan bagian yang sangat penting pada mikrokontroler. Mikrokontroler memiliki dua macam memori yang sifatnya berbeda.
Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dangan keperluannya, dalam susunan MCS-51 memori penyimpanan progam ini dinamakan sebagai memori progam.
Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC mikrokontroler dicetak di pabrik IC. Untuk keperluan tertentu mikrokontroler mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah ada flash PEROM yang harganya jauh lebih murah.
Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat bantuan alat yang dinamakan sebagai AT89S51 Flash PEROM Programmer.
Memori Data yang disediakan dalam chip AT89S51 sebesar 128 byte, meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.
Sarana Input/Ouput yang disediakan cukup banyak dan bervariasi. AT89S51 mempunyai 32 jalur Input/Ouput. Jalur Input/Ouput paralel dikenal sebagai Port 1 (P1.0..P1.7) dan Port 3 (P3.0..P3.5 dan P3.7).
AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmiter) yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri (RXD dan TXD) diletakan berhimpitan dengan P3.0 dan P3.1 di kaki nomor 10 dan 11, sehingga kalau sarana input/ouput yang bekerja menurut fungsi waktu. Clock penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang diumpan dari luar lewat T0 dan T1. T0 dan T1 berhimpitan dengan P3.4 dan P3.5, sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/ouput parelel kalau T0 dan T1 dipakai.
Port1 dan 2, UART, Timer 0,Timer 1 dan sarana lainnya merupakan register yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Functoin Regeister (SFR).
2.1.2 SFR (Register Fungsi Khusus ) Pada Keluarga 51
Sekumpulan SFR atau Special Function Register yang terdapat pada Mikrokontroler Atmel Keluarga 51 ditunjukan pada tabel 2.1, pada bagian sisi kiri dan kanan dituliskan alamat-alamatnya dalam format heksadesimal.
Tidak semua alamat pada SFR digunakan, alamat-alamat yang tidak digunakan diimplementasikan pada chip. Jika dilakukan usaha pembacaan pada alamat-alamat yang tidak terpakai tersebut akan menghasilkan data acak dan penulisannya tidak menimbulkan efek sama sekali. Pengguna perangkat lunak sebaiknya jangan menuliskan
‘1’ pada lokasi-lokasi ‘tak bertuan’ tersebut, karena dapat digunakan untuk mikrokontroler generasi selanjutnya. Dengan demikian, nilai-nilai reset atau non-aktif dari bit-bit baru ini akan selalu ‘0’ dan nilai aktifnya adalah ‘1’. Berikut akan dijelaskan secara singkat SFR-SFR beserta fungsinya:
Akumulator
ACC atau akumulator yang menempati lokasi E 0h digunakan sebagai register untuk penyimpanan data sementara, dalam program, instruksi mengacunya sebagai register A (bukan ACC).
Register B
Register B (lokasi D 0h) digunakan selama operasi perkalian dan pembagian, untuk instruksi lain dapat diperlakukan sebagai register scratch pad (“papan coret-coret”) lainnya.
Program Status Word (PSW)
Register PSW (lokasi D 0h) mengandung informasi status program.
Stack Pointer
Register SP atau Stack Pointer (lokasi 8 1h) merupakan register dengan panjang 8-bit,
digunakan dalam proses simpan menggunakan instruksi PUSH dan CALL. Walau Stack bisa menempati lokasi dimana saja dalam RAM, register SP akan selalu diinisialisasi ke 07h setelah adanya reset, hal ini menyebabkan stack berawal di lokasi 08h.
Data Pointer
Register Data Pointer atau DPTR mengandung DPTR untuk byte tinggi (DPH) dan byte rendah (DPL) yang masing-masing berada dilokasi 83h dan 82h, bersama-sama membentuk register yang mampu menyimpan alamat 16-bit. Dapat dimanipulasi sebagai register 16-bit atau ditulis dari/ke port, untuk masing-masing Port 0,Port 1, Port2 dan Port 3.
Serial Data Buffer
penyangga pengirim dan sekaligus mengawali transmisi data serial. Sedangkan pada saat data disalin dari SBUF, maka sebenarnya data tersebut berasal dari penyangga penerima.
Time Register
Pasangan register (TH0, TL0) dilokasi 8Ch dan 8Ah,(TH1, TL1) dilokasi 8Dh dan 8Bh serta (TH2, TL2) dilokasi CDh dan CCH merupakan register-register pencacah 16-bit untuk masing-masing Timer 0, Timer 1 dan Timer 2.
Capture Register
Pasangan register (RCAP2H, RCAP21) yang menempati lokasi CBh dan CAh merupakan register capture untuk mode Timer 2 capture. Pada mode ini, sebagai
tanggapan terjadinya suatu transisi sinyal di kaki (pin) T2EX (pada AT89C52/55), TH2 dan TL2 disalin masing-masing ke RCAP2H dan RCAP2L. Timer 2 juga memiliki mode isi-ulang-otomatis 16-bit dan RCAP2H serta RCAP2L digunakan untuk menyimpan nilai isi-ulang tersebut.
Kontrol Register
Register-register IP, IE, TMOD, TCON, T2CON, T2MOD, SCON dan PCON berisi bit-bit kontrol dan status untuk sistem interupsi, pencacah/pewaktu dan port serial.
Berikut ini merupakan spesifikasi dari IC AT89S51 :
• Kompatible dengan produk MCS-51
• Empat K byte In-Sistem Reprogammable Flash Memory
• Daya tahan 1000 kali baca/tulis
• Tegangan kerja 4,0 volt sampai 5,5 volt
• Fully Static Operation : 0 Hz sampai 33 MHz
• Tiga level kunci memori progam
• 128 x 8 – bit RAM internal
• 32 jalur input/output (I/O)
• Enam sumber interupt
• Jalur serial dengan UART
2.1.3. Gambar IC Mikrokontroler AT89S51
Gambar IC mikrokontroler AT89S51 ditunjukkan pada gambar 2.1 di bawah ini:
Gambar 2.1 IC Mikrokontroler AT89S51 Deskripsi pin-pin pada mikrokontroler AT89S51 :
VCC
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini
(Pin 40) Suplai tegangan
GND (Pin 20) Ground
dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex address/data, port ini akan mempunyai internal pull up. Pada saat flash progamming diperlukan eksternal pull up, terutama pada saat verifikasi program.
Port 2 (Pin 21 – pin 28)
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakse memori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat memberikan output sink ke keempat buah input TTL.
Port 3 (Pin 10 – pin 17)
Port 3 merupakan 8 bit port I/O dua arah dengan internal pull up. Port 3 juga mempunyai fungsi pin masing-masing, yaitu sebagai berikut :
Tabel 2.2 Fungsi Pin pada Port 3
Nama pin Fungsi
P3.0 (pin 10) RXD (Port input serial)
P3.1 (pin 11) TXD (Port output serial)
P3.2 (pin 12) INT0 (interrupt 0 eksternal)
P3.3 (pin 13) INT1 (interrupt 1 eksternal)
P3.4 (pin 14) T0 (input eksternal timer 0) P3.5 (pin 15) T1 (input eksternal timer 1)
P3.6 (pin 16) WR (menulis untuk eksternal data memori)
P3.7 (pin 17) RD (untuk membaca eksternal data memori)
RST (pin 9)
ALE/PROG (pin 30)
Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat selama mengakses memori eksternal. Selain itu, sebagai pulsa input progam (PROG) selama memprogram Flash.
PSEN (pin 29)
Program store enable digunakan untuk mengakses memori progam eksternal.
EA (pin 31)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada memori internal. Pada saat flash programming, pin ini akan mendapat tegangan 12 Volt.
XTAL1 (pin 19)
Input untuk clock internal.
XTAL
2.2Komponen-Komponen Pendukung 2 (pin 18)
Output dari osilator.
2.2.1 Resistor
Resistor komponen pasif elektronika yang berfungsi untuk membatasi arus listrik yang
mengalir. Berdasarkan kelasnya resistor dibagi menjadi 2 yaitu : Fixed Resistor dan
Variable R esistor Dan umumnya terbuat dari carbon film atau metal film, tetapi tidak
Pada dasarnya semua bahan memiliki sifat resistif namun beberapa bahan
tembaga perak emas dan bahan metal umumnya memiliki resistansi yang sangat kecil.
Bahan–bahan tersebut menghantar arus listrik dengan baik, sehingga dinamakan
konduktor. Kebalikan dari bahan yang konduktif, bahan material seperti karet, gelas,
karbon memiliki resistansi yang lebih besar menahan aliran elektron dan disebut sebagai
insulator.
Gambar 2.2. Resistor Karbon
2.2.2 Kapasitor
Kapasitor adalah komponen elektronika yang dapat menyimpan muatan listrik.
Struktur sebuah kapasitor terbuat dari 2 buah plat metal yang dipisahkan oleh suatu bahan
dielektrik. Bahan-bahan dielektrik yang umum dikenal misalnya udara vakum, keramik,
gelas dan lain-lain. Jika kedua ujung plat metal diberi tegangan listrik, maka
muatan-muatan positif akan mengumpul pada salah satu kaki elektroda metalnya dan pada saat
yang sama muatan-muatan negatif terkumpul pada ujung metal yang satu lagi. Muatan
positif tidak dapat mengalir menuju ujung kutup negatif dan sebaliknya muatan negatif
tidak bisa menuju ke ujung kutup positif karena terpisah oleh bahan elektrik yang
kakinya. Di alam bebas phenomena kapasitor terjadi pada saat terkumpulnya
muatan-muatan positif dan negatif diawan.
dielektrik
Elektroda Elektroda
Gambar 2.3 Skema Kapasitor.
Kapasitor merupakan komponen pasif elektronika yang sering dipakai didalam
merancang suatu sistem yang berfungsi untuk mengeblok arus DC, Filter, dan penyimpan
energi listrik. Didalamnya 2 buah pelat elektroda yang saling berhadapan dan dipisahkan
oleh sebuah insulator. Sedangkan bahan yang digunakan sebagai insulator dinamakan
dielektrik. Ketika kapasitor diberikan tegangan DC maka energi listrik disimpan pada tiap
elektrodanya. Selama kapasitor melakukan pengisian, arus mengalir. Aliran arus tersebut
akan berhenti bila kapasitor telah penuh. Yang membedakan tiap-tiap kapasitor adalah
dielektriknya. Berikut ini adalah jenis– jenis kapasitor yang dipergunakan dalam
perancangan ini.
C
B
E
C
B
E
NPN PNP
Gambar 2.5 Ceramic Capacitor
2.2.3 Transistor
Transistor adalah komponen elektronika yang mempunyai tiga buah terminal.
Terminal itu disebut emitor, basis, dan kolektor. Transistor seakan-akan dibentuk dari
penggabungan dua buah dioda. Dioda satu dengan yang lain saling digabungkan dengan
cara menyambungkan salah satu sisi dioda yang senama. Dengan cara penggabungan
seperti dapat diperoleh dua buah dioda sehingga menghasilkan transistor NPN.
Bahan mentah yang digunakan untuk menghasilkan bahan N dan bahan P adalah
silikon dan germanium. Oleh karena itu, dikatakan :
1. Transistor germanium PNP.
2. Transistor silikon NPN.
3. Transistor silikon PNP.
4. Transistor germanium NPN.
.
Keterangan :
C = kolektor
E = emiter
B = basis
Didalam pemakaiannya transistor dipakai sebagai komponen saklar (switching)
dengan memanfaatkan daerah penjenuhan (saturasi) dan daerah penyumbatan (cut off)
yang ada pada karakteristik transistor.
Pada daerah penjenuhan nilai resistansi persambungan kolektor emiter secara
ideal sama dengan nol atau kolektor dan emiter terhubung langsung (short). Keadaan ini
menyebabkan tegangan kolektor emiter (VCE) = 0 Volt pada keadaan ideal, tetapi pada
kenyataannya VCE
Gambar 2.7. Transistor sebagai Saklar ON
Saturasi pada transistor terjadi apabila arus pada kolektor menjadi maksimum dan
untuk mencari besar arus basis agar transistor saturi adalah :
bernilai 0 sampai 0,3 Volt. Dengan menganalogikan transistor sebagai
saklar, transistor tersebut dalam keadaan on seperti pada gambar 2.13.
Rc Vcc
Imax = ………..……….(2.1)
Saklar On Vcc Vcc
IC R
RB
VB
IB VBE
Rc
Hubungan antara tegangan basis (VB) dan arus basis (IB
B
Jika tegangan VB BE
B
telah mencapai , maka transistor akan
saturasi, dengan Ic mencapai maksimum.
Keadaan ini menyebabkan tegangan (VCB) sama dengan tegangan sumber (Vcc).
Tetapi pada kenyataannya Vcc pada saat ini kurang dari Vcc karena terdapat arus bocor
dari kolektor ke emiter. Dengan menganalogikan transistor sebagai saklar, transistor
tersebut dalam keadaan off seperti gambar dibawah ini.
Gambar 2.8 Transistor Sebagai Saklar OFF
Keadaan penyumbatan terjadi apabila besar tegangan habis (VB) sama dengan
tegangan kerja transistor (VBE) sehingga arus basis (IB
hfe I
IB = C
) = 0 maka :
………(2.6)
IC = IB . hfe ….………(2.7)
IC = 0 . hfe ………..………(2.8)
IC = 0 ………..(2.9)
Hal ini menyebabkan VCE sama dengan Vcc dapat dibuktikan dengan rumus :
Vcc = Vc + VCE …………..………(2.10)
VCE = Vcc – (Ic . Rc) …..………(2.11)
VCE
Aplikasi penggunaan motor langkah dapat juga di jumpai dalam bidang industri
atau untuk jenis motor langkah kecil dapat di gunakan dalam perancangan suatu alat
mekatronik atau robot. Motor langkah berukuran besar digunakan, misalnya, dalam
proses pengeboran logam yang menghendaki ketepatan posisi pengeboran, dalam hal ini = Vcc …..………(2.12)
2.3 Motor Langkah ( Motor Stepper )
Motor langkah ( Motor Stepper ) banyak digunakan dalam berbagai aplikasi,
dipergunakan apabila dikehendaki jumlah putaran yang tepat atau di perlukan sebagian
dari putaran motor. Suatu contoh dapat di jumpai pada disk drive, untuk proses
pembacaan dan/atau penulisan data ke/dari cakram(disk), head baca-tulis ditempatkan
pada tempat yang tepat di atas jalur atau track pada cakram, untuk head tersebut di
di lakukan oleh sebuah robot yang memerlukan ketepatan posisi dalam gerakan
lengannya dan lain-lain.
Pada gambar di bawah ditunjukkan dasar susunan sebuah motor langkah
(stepper).
Gambar 2.9 Diagram Motor Stepper
Magnet permanen N-S berputar kearah medan magnet yang aktif. Apabila
kumparan stator dialiri arus sedemikian rupa, maka akan timbul medan magnet dan rotor
akan berputar mengikuti medan magnet tersebut.setiap pengalihan arus ke kumparan
berikutnya menyebabkan medan magnet berputar berputar menurut suatu sudut tertentu,
biasanya informasi besar sudut putar tertulis pada badan motor langkah yang
bersangkutan. Jumlah keseluruhan pengalihan menentukan sudut perputaran motor.Jika
pengalihan arus di tentukan, maka rotor akan berhenti pada posisi terakhir. Jika
kecepatan pengalihan tidak terlalu tinggi, maka slip akan dapat dihindari. Sehingga tidak
di perlukan umpan balik (feedback) pada pengendalian motor langkah. A
D B
A C
B U
Motor langkah yang akan di gunakan memiliki 4 fase (pole atau kutub),
pengiriman pulsa dari mikrokontroler ke rangkaian motor langkah dilakukan secara
bergantian, masing-masing 4 data (sesuai dengan jumlah phase-nya), sebagian di
tunjukkan pada gambar di bawah ini.
Gambar 2.10 Pemberian Data / Pulsa pada Motor Stepper
Pada saat yang sama ,untuk tiap motor langkah, tidak boleh ada 2 (dua) masukan
atau lebih yang mengandung pulsa sama dengan 1 (high), atau dengan kata lain, pada
suatu saat hanya sebuah masukan yang bernilai 1 (satu) sedangkan lainnya bernilai 0
(nol).
2.4 Motor DC
Pada peristiwa mesin listrik dapat berlaku sebagai generator, perbedaannya hanya terletak dalam konversi dayanya. Generator adalah suatu mesin listrik yang mengubah daya masuk mekanik menjadi daya keluar listrik, sedangkan sebaliknya motor mengubah daya masuk listrik menjadi daya keluar mekanik. Tujuan motor adalah untuk menghasilkan gaya yang menggerakkan (torsi). Motor DC yang digunakan disini adalah motor DC magnet permanen yaitu motor yang fluks magnet utamanya dihasilkan oleh
magnet permanen. Berikut adalah bentuk fisik dari motor DC magnet permanen dan prinsip motor serta operasi motor magnet permanen dapat kita lihat pada gambar berikut :
Gambar 2.11 Bentuk Fisik dari Motor DC Magnet Permanen
Gambar 2.13 Hukum Tangan Kanan Motor
Pada gambar 2.7 (a), jangkar berputar searah dengan putaran jarum jam. Apabila kutub jangkar segaris dengan kutub medan, sikat – sikat ada pada celah di komutator dan tidak ada arus mengalir pada jangkar. Jadi, gaya tarik atau gaya tolak magnet berhenti, seperti pada gambar 2.7 (b).
Kemudian kelembaman membawa jangkar melewati titik netral. Komutator membalik arus jangkar ketika kutub yang tidak sama dari jangkar dan medan berhadapan satu sama lain, sehingga membalik polaritas medan jangkar. Kutub – kutub yang sama dari jangkar dan medan kemudian saling menolak, menyebabkan jangkar berputar terus – menerus seperti pada gambar 2.7 ( c ).
2.4 Kristal
Kristal adalah komponen yang dibuat dari bahan alam yang menunjukkan
efek piezoelektrik, sehingga sering disebut Kristal Piezoelektrik. Bahan utama kristal
yang dapat menimbulkan efek Piezoelektrik adalah garam rachelle, tourmaline dan
qualte.
Dalam sebuah kristal Piezoelektrik, biasanya qualeze, mempunyai
elektroda-elektroda yang dilapiskan pada permukaan yang berhadapan, dan apabila
diberikan suatu potensial pada elektroda-elektroda nya maka gaya akan bekerja pada
muatan-muatan yang terikat pada kristal.
Apabila komponen ini dipasang dengan benar, maka dalam kristal akan
terjadi deformasi-deformasi sehingga terbentuk suatu sistem elektromekanik yang akan
bergetar bila dibandingkan dengan benar. Frekuensi, resonansi dan nilai Q-nya
tergantung pada dimensi kristal, orientasi permukaan pada sumbu-sumbu kristal dan
beberapa KHz sampai beberapa MHz. dan jangkauan nilai Q (resonansi pararel)-nya yang
beberapa ribu sampai beberapa ratus ribu data diperoleh secara komersial.
Dengan nilai Q yang sangat tinggi dan dari kenyataan bahwa karakteristik
quartz sangat stabil terhadap waktu dan temperature, maka kristal akan menghasilkan
stabilitas frekuensi pada osilator-osilator yang dibangun dengan menggunakan kristal.
Pada hakikatnya frekuansi dari suatu osilator kristal hanya ditentukan oleh
kristalnya dan tidak oleh komponen lainnya.
BAB III
PERANCANGAN ALAT DAN PERANCANGAN PROGRAM
3.1 Perangkat Keras
Pada subbab ini akan dibahas perangkat – perangkat keras yang digunakan
pada robot ini. Perangkat – perangkat keras tersebut antara lain adalah rangkaian catu
daya, rangkaian mikrokontroler AT89S51, rangkaian driver motor stepper, rangkaian
jembatan H, dan rangkaian relay
3.1.1 Diagram Blok Rangkaian
Diagram blok merupakan gambaran dasar dari rangkaian sistem yang akan
dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram
blok dari sistem yang dirancang adalah seperti yang diperlihatkan pada gambar berikut
ini:
Mikrokontroler AT89S51
P0.0 – P0.3
Rangkaian Keypad P1.0 – P1.5
Rangkaian Relay Rangkaian Pemancar Sinyal
2200uF
5 Volt DC
0 Volt 6,2 Volt DC
6.2 V Rangkaian Penerima Sinyal
Mikrokontroler AT89S51
Driver Motor Stepper Motor Stepper
Jembatan H Motor DC
P1.4 – P1.7 P0.0 – P0.3
P0.4 – P0.7
Gambar 3.2 Diagram Blok Robot Forklift 3.1.2 Rangkaian Catu Daya (PSA)
Rangkaian catu daya ini berfungsi untuk mensuplay tegangan ke seluruh
rangkaian. Rangkaian ini terdiri dari sebuah baterei 6 volt yang di serikan dengan dua
buah dioda. Untuk menembus 1 buah dioda diperlukan tegangan sebesar 0,6 volt,
sehingga untuk menembus 2 buah dioda diperlukan tegangan sekitar 1,2 volt, sehingga
output dari rangkaian ini sekitar 4,8 volt sampai 5,0 volt. Kemudian dipasang sebuah
kapasitor untuk menyimpan arus, sehingga jika tiba-tiba mikrokontroler membutuhkan
arus besar, maka arus tersebut dapat disupplay oleh kapasitor ini. Rangkaian catu daya
ditunjukkan oleh gambar berikut ini :
Pada rangkaian ini terdapat 2 buah keluaran, yaitu 5 volt dan 6 volt. Keluaran 5 volt
dibutuhkan oleh mikrokontroler, penguat sinyal dan rangkaian sensor, sedangkan 6 volt
dibutuhkan untuk rangkaian jembatan H ( pengendali motor )
3..1.3 Rangkaian Mikrokontroler AT89S51
Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada.
Kompoen utama dari rangkaian ini adalah IC mikrokontroler AT89S51. Pada IC inilah
semua program diisikan, sehingga rangkaian dapat berjalan sesuai dengan yang
dikehendaki. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:
Mikrokontroler ini memiliki 32 port I/O, yaitu port 0, port 1, port 2 dan port 3.
Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit. Pin 1 sampai 8
adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3 Pin 40
dihubungkan ke sumber tegangan 5 volt. Dan pin 20 dihubungkan ke ground. Rangkaian
mikrokontroler ini menggunakan komponen kristal 12 MHz sebagai sumber clocknya.
Nilai kristal ini akan mempengaruhi kecepatan mikrokontroler dalam mengeksekusi suatu
perintah tertentu.
Pada pin 9 dihubungkan dengan sebuah kapasitor 10 uF yang dihubungkan ke
positip dan sebuah resistor 10 Kohm yang dihubungkan ke ground. Kedua komponen ini
berfungsi agar program pada mikrokontroler dijalankan beberapa saat setelah power
aktif. Lamanya waktu antara aktipnya power pada IC mikrokontroler dan aktipnya
program adalah sebesar perkalian antara kapasitor dan resistor tersebut.
3.1.4 Rangkaian Driver Motor Stepper
Untuk mengendalikan perputaran motor stepper dibutuhkan sebuah driver. Driver
ini berfungsi untuk memutar motor stepper searah dengan jarum jam atau berlawanan
arah dengan jarum jam. Rangkaian ini dihubungkan ke port 0 dari mikrokontroler
AT89S51. sehingga untuk memutar motor, harus diberikan logika high secara bergantian
ke port 0. Sedangkan untuk memutar motor ke arah sebaliknya, maka logika high yang
diberikan secara bergantian tersebut harus berlawanan arah dengan sebelumnya. Dengan
Gambar 3.5 Rangkaian Driver Motor Stepper
3.1.5 Perancangan Driver penggerak Motor DC (Jembatan H)
Untuk dapat bergerak, maka robot harus dapat mengendalikan perputaran rodanya. Robot
menggunakan 2 buah motor DC 6 volt untuk menggerakkan rodanya, dimana 1 motor
untuk menggerakkan roda sebelah kanan dan 1 motor lagi untuk menggerakkan roda
sebelah kiri.
Motor DC akan berputar searah/berlawanan arah dengan jarum jam jika salah satu
kutubnya diberi tegangan positip dan kutub yang lainnya diberi tegangan negatip atau
ground. Dan motor DC akan berputar kearah sebaliknya jika polaritasnya dibalik.
Dengan sipat yang demikian maka dibutuhkan suatu rangkaian yang dapat membalikkan
polaritas yang diberikan ke motor DC tersebut, sehingga perputaran motor DC dapat
dikendalikan oleh rangkaian tersebut. Dan jika rangkaian tersebut dihubungkan dengan
mikrokontroler AT89S51, maka pergerakan motor dapat dikendalikan oleh program.
Rangkaian untuk mengendalikan perputaran motor DC tersebut adalah sebuah
rangkaian yang dikenal dengan jembatan H. Jembatan H ini terdiri dari 4 buah transistor,
dimana 2 buah transistor bertipe NPN dan 2 buah transistor lagi bertipe PNP. Ke-4
transistor ini dirangkai sedemikian rupa sehingga dengan memberikan sinyal low atau
high pada rangkaian maka perputaran motor dapat diatur.
Untuk perintah maju, maka robot akan memutar maju kedua motor, motor kanan
dan kiri. Untuk perintah mundur, maka robot akan memutar mundur kedua motor.
Sedangkan untuk memutar/berbelok kekanan, maka robot akan memutar maju motor
sebelah kiri dan memutar mundur motor sebelah kanan, sehingga dengan demikian maka
robot akan memutar/berbelok kearah kanan. Hal sebaliknya dilakukan jika robot berputar
ke sebelah kiri. Rangkaian jembatan H, ditunjukkan pada gambar di bawah ini:
Vcc Vcc Gambar 3.6. Rangkaian jembatan H
Pada rangkaian di atas, jika P0.0 diset high yang berarti P0.0 mendapat tegangan
5 volt, maka kedua transistor tipe NPN C945 yang disebelah kiri akan aktip. Hal ini akan
ground. Kolektor dari transistor C945 yang berada di sebelah kiri atas diumpankan ke
basis dari transistor tipe PNP TIP 127 sehingga basis dari transistor TIP 127
mendapatkan tegangan 0 volt yang menyebabkan transistor ini aktip (transistor tipe PNP
akan aktip jika tegangan pada basis lebih kecil dari 4,34 volt). Aktipnya transistor PNP
TIP 127 ini akan mengakibatkan kolektornya terhubung ke emitor sehingga kolektor
mendapatkan tegangan 5 volt dari Vcc.
Sedangkan kolektor dari transistor C945 yang berada di sebelah kiri bawah
diumpankan ke basis dari transistor tipe NPN TIP 122 sehingga basis dari transistor TIP
122 mendapatkan tegangan 0 volt yang menyebabkan transistor ini tidak aktip (transistor
tipe NPN akan aktip jika tegangan pada basis lebih besar dari 0,7 volt). Karena transistor
TIP 122 ini tidak aktip, maka kolektornya tidak terhubung ke emitor, sehingga kolektor
tidak mendapatkan tegangan 0 volt dari ground.
Karena kolektor TIP 122 dihubungkan dengan kolektor TIP 127 yang
mendapatkan teganagan 5 volt dari Vcc, maka kolektor dari TIP 122 juga mendapatkan
tegangan yang sama. Hal ini menyebabkan kaki motor sebelah kiri mendapatkan
tegangan 5 volt (polaritas positip).
Agar motor dapat berputar ke satu arah maka kaki sebelah kanan motor harus
mendapatkan tegangan 0 volt (polaritas negatip). Hal ini diperoleh dengan memberikan
Pada rangkaian di atas, jika P0.1 diset low yang berarti P0.1 mendapat tegangan 0
volt, maka kedua transistor tipe NPN C945 yang disebelah kanan tidak akan aktip. Hal ini
akan membuat kolektor dari kedua transistor C945 itu akan mendapat tegangan 5 volt
dari Vcc. Kolektor dari transistor C945 yang berada di sebelah kanan atas diumpankan ke
basis dari transistor tipe PNP TIP 127 sehingga basis dari transistor TIP 127
mendapatkan tegangan 5 volt yang menyebabkan transistor ini tidak aktip Karena
transistor PNP TIP 127 tidak aktip maka kolektornya tidak terhubung ke emitor
sehingga kolektor tidak mendapatkan tegangan 5 volt dari Vcc, tetapi mendapatkan
tegangan yang berasal dari transistor TIP 122 yang berada di bawahnya.
Sedangkan kolektor dari transistor C945 yang berada di sebelah kiri bawah
diumpankan ke basis dari transistor tipe NPN TIP 122 sehingga basis dari transistor TIP
122 mendapatkan tegangan 5 volt yang menyebabkan transistor ini menjadi aktip. Karena
transistor TIP 122 ini menjadi aktip, menyebabkan kolektornya terhubung ke emitor,
sehingga kolektor mendapatkan tegangan 0 volt dari ground.
Karena kolektor TIP 122 yang mendapatkan teganagan 0 volt dari ground
dihubungkan dengan kolektor TIP 127, maka kolektor dari TIP 127 juga mendapatkan
tegangan yang sama. Hal ini menyebabkan kaki motor sebelah kanan mendapatkan
tegangan 0 volt (polaritas negatip). Hal ini akan menyebabkan motor akan berputar ke
satu arah tertentu. Sedangkan untuk memutar motor kea arah sebaliknya, maka logika
3.1.6 Perancangan Rangkaian Relay
Relay ini berfungsi sebagai saklar elektronik yang dapat menghidupkan /
mematikan peralatan elektronik. Rangkaian relay tampak seperti gambar di bawah ini
Gambar 3.7 Rangkaian Relay Pengendali Blower 220 volt AC
Pada rangkaian di atas, untuk menghubungkan rangkaian dengan 220 V AC digunakan
relay. Relay merupakan salah satu komponen elektronik yang terdiri dari lempengan
logam sebagai saklar dan kumparan yang berfungsi untuk menghasilkan medan magnet.
Pada rangkaian ini digunakan relay 6 volt, ini berarti jika positif relay (kaki 1)
dihubungkan ke sumber tegangan 6 volt dan negatif relay (kaki 2) dihubungkan ke
ground, maka kumparan akan menghasilkan medan magnet, dimana medan magnet ini
3.2Perangkat Lunak
3.2.1 Bahasa Assembly MCS-51
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah
bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa ini
hanya ada 51 instruksi. Dari 51 instruksi, yang sering digunakan orang hanya 10
instruksi. Instruksi –instruksi tersebut antara lain :
1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register
tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.
Contoh pengisian nilai secara langsung
MOV R0,#20h
Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0).
Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai.
Contoh pengisian nilai secara tidak langsung
MOV 20h,#80h ...
MOV R0,20h
Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20 Heksadesimal
ke register 0 (R0).
Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah
alamat.
Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk mengurangi
nilai register tertentu dengan 1 dan lompat jika hasil pengurangannya belum nol.
Contoh ,
MOV R0,#80h Loop: ...
...
DJNZ R0,Loop ...
R0 -1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan meneruskan
ke perintah pada baris berikutnya.
3. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :
...
ACALL TUNDA ...
TUNDA:
...
4. Instruksi RET
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin
pemanggil setelah instruksi ACALL dilaksanakan. Contoh,
ACALL TUNDA ...
TUNDA:
5. Instruksi JMP (Jump)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh,
Loop:
... JMP Loop
6. Instruksi JB (Jump if bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika high (1). Contoh,
Loop:
JB P1.0,Loop ...
7. Instruksi JNB (Jump if Not bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika Low (0). Contoh,
Loop:
JNB P1.0,Loop ...
8. Instruksi CJNZ (Compare Jump If Not Equal)
Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register dengan
suatu nilai tertentu. Contoh,
Loop:
...
Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan instruksi selanjutnya..
9. Instruksi DEC (Decreament)
Instruksi ini merupakan perintah untuk mengurangi nilai register yang dimaksud
dengan 1. Contoh,
MOV R0,#20h R0 = 20h ...
DEC R0 R0 = R0 – 1 ...
10.Instruksi INC (Increament)
Instruksi ini merupakan perintah untuk menambahkan nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h R0 = 20h ...
INC R0 R0 = R0 + 1
11.Dan lain sebagainya
3.2.2 Software 8051 Editor, Assembler, Simulator (IDE)
Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada
sebuah editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti di
Gambar 3.8 8051 Editor, Assembler, Simulator (IDE)
Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble
(di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika masih
ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan perintah atau
ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu sampai tidak ada
pesan kesalahan lagi.
Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke
dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an.
3.2.3 Software Downloader
Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller
digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet.
Tampilannya seperti gambar di bawah ini
Gambar 3.9 ISP- Flash Programmer 3.a
Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file
heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk mengisikan hasil
Keypad kanan = 0
Kirim data = 01001111
Kirim data = 00101111
Kirim data = 00011111 Keypad
Mundur = 0
Keypad kiri = 0
FLOW CHART STASIUN PEMANCAR FORKLIFT
Tidak
Kirim data = 10001111
Keypad angkat = 0
Keypad
Kirim data = 10101111
Mulai
Ambil data dari penerima
Data =
10001111 Maju
Mundur
Kanan
Kiri Data =
01001111
Data = 00101111
FLOW CHART PENERIMA FORKLIFT
Tidak
Ya
Tidak
Ya
Tidak
Ya
Tidak
Ya
Tidak Ya Data =
00011111
Data =
Pada stasium pemancar forklift
Program diawali dengan jika tombol maju ditekan dan mendapat logika 0, maka mikrokontroler akan mengirimkan data 10001111 ke mikrokontroler robot melalui pemancar, maka robot akan maju.
Bila tombol mundur ditekan dan berlogika 0, maka mikrokontroler akan mengirimkan data 01001111 ke mikrokontroler robot melalui pemancar, maka robot akan mundur. Jika tidak, dan ditekan tombol belok kanan dan mendapatkan logika 0, maka mikrokontroler akan mengirimkan data 00101111 ke mikrokontroler robot melalui pemancar, maka robot akan belok kanan.
Bila tidak, dan ditekan tombol belok kiri dan mendapatkan logika 0, maka mikrokontroler akan mengirimkan data 00011111 ke mikrokontroler robot melalui pemancar, maka robot
akan belok kiri.
Jika tidak, dan ditekan tombol angkat dan mendapatkan logika 0, maka mikrokontroler akan mengirimkan data 10101111 ke mikrokontroler robot melalui pemancar, maka robot akan mengangkat benda.
Bila tidak, dan ditekan tombol turun dan mendapatkan logika 0, maka mikrokontroler akan mengirimkan data 01011111 ke mikrokontroler robot melalui pemancar, maka robot akan menurunkan benda.
Pada Forklift
Program diawali dengan jika mikrokontroler menerima data 10001111 dari pemancar, maka robot akan maju. Jika tidak, dan data 01001111 yang diterima oleh mikrokontroler di robot maka robot akan mundur.
Bila mikrokontroler menerima data 00101111 dari pemancar, maka robot akan belok kanan. Jika yang diterima 00011111 dari pemancar, maka robot akan belok kiri.
BAB IV
PENGUJIAN RANGKAIAN
4.1 Pengujian Rangkaian Catu Daya
Pengujian pada rangkaian catu daya ini dilakukan dengan mengukur tegangan
keluaran dari rangkaian ini dengan mengukur voltmeter. Dari hasil pengukuran pada saat
baterai penuh , maka didapatkan tegangan keluaran pertama sebesar 6.2 Volt dan
tegangan keluaran yang kedua sebesar 5.0 Volt. Pada saat bateray lemah, maka
didapatkan tegangan keluaran pertama sesebar 5,3 Volt dan tegangan keluaran yang
kedua sebesar 4.5 Volt. Walaupun tegangan keluaran pertama tidak tepat 6 Volt, dan
tegangan keluaran kedua tidak tepat 5 Volt, robot tetap bekerja namun jalanya semakin
lambat. Hal ini disebabkan karena kurangnya tegangan yang dibutuhkan untuk memutar
motor. Dengan demikian rangkaian ini berjalan dengan baik.
Vo 1 (Volt)
Vo 2 (Volt)
6,2 5,0
6,2 5,0
6,2 5,0
6,0 5,0
5,8 4,9
5,5 4,7
5,3 4,5
4.2 Pengujian Rangkaian Mikrokontroller AT89S51
Untuk mengetahui apakah rangkaian mikrokontroller AT89S51 telah bekerja
dengan baik, maka dilakukan pengujian.Pengujian bagian ini dilakukan dengan
memberikan program sederhana pada mikrokontroller AT89S51. Programnya adalah
sebagai berikut:
Loop:
Setb P3.7
Acall tunda
Clr P3.7
Acall tunda
Sjmp Loop
Tunda:
Mov r7,#255
Tnd: Mov r6,#255
Djnz r6,$
Djnz r7,tnd
Ret
Program di atas bertujuan untuk menghidupkan LED yang terhubung ke
P3.7 kemudian mematikannya secara terus menerus. Perintah Setb P3.7 akan menjadikan
P3.7 berlogika high yang menyebabkan transistor aktif, sehingga LED menyala. Acall
tunda akan menyebabkan LED ini hidup selama beberapa saat. Perintah Clr P3.7 akan
menjadikan P3.7 berlogika low yang menyebabkan transistor tidak aktif sehingga LED
akan mati. Perintah Acall tunda akan menyebabkan LED ini mati selama beberapa saat.
Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan tampak
4.3 Pengujian Rangkaian Driver Motor Stepper
Rangkaian driver motor stepper dapat diuji dengan menggunakan perangkat
lunak (software) yaitu bahasa assembly. Pengujian dengan prosedur pada program
dilakukan untuk mengetahui apakah rangkaian driver motor stepper ini dapat beroperasi
sesuai dengan data/perintah yang ditentukan.
Untuk pengujian dapat dilakukan dengan program sederhana berikut ini:
saklar_atas bit p3.6
saklar_bawah bit p3.7
utama: mov a,p1
cjne a,#1fh,utama
acall naik1
sjmp utama
naik1:
setb p0.3
setb p0.2
clr p0.1
clr p0.0
acall tunda
clr p0.3
setb p0.2
setb p0.1
clr p0.0
acall tunda
clr p0.3
acall tunda
jb saklar_bawah,turun1
acall naik1
ret
mati:
clr p0.0
clr p0.1
clr p0.2
clr p0.3
ret
tunda:
mov r7,#100
tnd:
mov r6,#255
djnz r6,$
djnz r7,tnd
ret
Rangkaian penerima sinyal ini akan menangkap data yang dikirimkan oleh stasiun
pemancar. Dimana, data yang ditangkap berbentuk bilangan biner, yang kemudian
dikodekan menjadi sebuah perintah oleh robot. Rangkaian ini dilengkapi dengan antenna
penerima yang akan menerima data yang dipancarkan oleh pemancar.
4.5 Rangkaian Pemancar Pada Stasiun Pemancar
Rangkaian ini akan memancarkan data yang diterima dari rangkaian keypad. Rangkaian
ini dilengkapi dengan tombol manual maju, mundur, belok kanan,dan belok kiri, yang
jika tidak terpasang ke rangkaian mikrokontroler. Rangkaian ini memancarkan
gelombang sebesar 27Mhz.
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
1. Transmitter (pemancar) dan Receiver (penerima) yang berfungsi untuk
mengirimkan data dari remote kontroler ke-robot forklift. Dimana robot ini
dapat mengangkat barang dan berusaha untuk memindahkan barang tersebut
ketempat yang akan ditentukan.
2. Mikrokontroler yang digunakan adalah mikrokontroler jenis AT89S51, dimana
pada rangkaian robot data-data masukan dari rangkaian jembatan H, driver motor
stepper dan rangkaian penerima masuk ke mikrokontroler semua.
3. Pada stasiun pemancar, digunakan 4 buah relay, yang berfungsi untuk memutus
atau menyambungkan hubungan antara rangkaian pemancar pada stasiun
pemancar dan rangkaian penerima pada robot forklift agar robot bekerja.
4. Baterai yag digunakan pada robot sebesar 6V, sedangkan pada stasiun pemancar
nya digunakan 2 buah batarai sebeasar 9V.
Saran
1. Agar keypad tampak lebih bagus,sebaiknya digunakan stick games analog.
2. Untuk mendapatkan kualitas gambar kamera lebih bagus, sebaiknya
menggunakan CCTV kamera Megapixel.
3. Pada ststiun pemancar,hendaknya menggunakan sumber daya PLN, untuk
DAFTAR PUSTAKA
Agfianto,2004,“Belajar Mikrokontroler AT89S51/53/55 Teori dan Aplikasi”,Edisi
Kedua, Penerbit : Gava Media, Yogyakarta.
Andi,2003,“Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler
AT89S51”, Penerbit : PT Elex Media Komputindo, Jakarta.
Budiharto, Widodo. 2005. Panduan Lengkap Belajar Mikrokontroler Perancangan
Sistem dan Aplikasi Mikrokontroler. Jakarta : PT.Elex Media
Komputindo.
Malvino, Albert Paul, 2003,”Prinsip-Prinsip Elektronika, Jilid 1&2”, Edisi Pertama,
Penerbit : Salemba Teknika, Jakarta.
Wahyudin, Didin.2007. Belajar Mudah Mikrokontroler AT89S52 dengan Bahasa BASIC