SKRIPSI
Diajukan Oleh :
Riski Pr ihanto
0634010093
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
J AWA TIMUR
i
KATA PENGANTAR
Puji sukur penulis panjatkan kehadirat Tuhan Yang Maha Esa, karena
anugrah dan rahmatNya, salah satu dari sekian banyaknya karunia-Nya yang
berupa Skripsi dan masih banyak kekurangan dalam laporan ini dapat
terselesaikan. Semoga nikmat ini dapat mendorong menuntut ilmu yang lebih
tinggi serta semangat pengabdian yang tulus karena Ridho-Nya, amin.
Laporan tugas akhir ini dibuat bukan semata-mata untuk memenuhi salah
satu persyaratan akademik dalam menyelesaikan pendidikan jenjang sarjana,
tetapi juga sebagai bentuk apresiasi penulis dalam ilmu pengetahuan, terutama
ilmu tentang informasi dan teknologi khususnya didaerah asal penulis. Didalam
pembuatan laporan tugas akhir ini penulis mengambil judul “ROBOT FORKLIFT
DINAMIS”.
Penulis sangat menyadari walaupun pembuatan laporan tugas akhir ini
telah diupayakan sebaik mungkin, namun tetap masih terdapat banyak
kekurangan, baik itu dalam hal penulisan maupun dalam penyajian materi.
Pembuatan laporan tugas akhir ini tidak lepas dari bantuan berbagai pihak
yang senatiasa selalu memberikan dorongan dan motivasi kepada penulis, oleh
karena itu penulis mengucapkan terima kasih sebesar-besarnya kepada :
1. Bapak Prof. Dr. Ir. Teguh Soedarto, MP selaku Rektor Universitas
Pembangunan Nasional “Veteran” Jawa Timur.
2. Ir. Sutiyono, MS selaku Dekan Fakultas Teknik Industri UPN
“Veteran” Jawa Timur.
Hak Cipta © milik UPN "Veteran" Jatim :
4. Basuki Rahmat, S.Si, MT selaku dosen Pembimbing I Skripsi.
5. Fetty Tri Anggraeny, S.Kom selaku dosen Pembimbing II Skripsi.
6. Kepada Ibu dan Kakak yang telah banyak berkorban untuk putranya
dan memberikan tauladan agar anak mereka senang pada ilmu
pengetahuan, dan juga mendorong untuk menuntut ilmu lebih tinggi.
7. Teman-teman angkatan 2006 dan semua pihak yang telah banyak
membantu dalam pelaksanaan Tugas Akhir ini, yang tak mampu
penulis sebutkan satu-persatu, terima kasih atas segala dukungan dan
bantuannya.
Mengingat terbatasnya kemampuan dan kurangnya pengalaman yang
penulis miliki. Untuk itu dengan kerendahan hati, penulis mengharapkan kritik
dan saran yang membangun untuk kesempurnaan Tugas Akhir ini dan akhir kata,
semoga skripsi ini dapat bermanfaat khususnya bagi seluruh mahasiswa
Universitas Pembangunan Nasional “Veteran” Jawa Timur dan umumnnya bagi
pembaca sekalian.
Surabaya, 28 Maret 2012
iii
PERANCANGAN ROBOT FORKLIFT DINAMIS
BERBASIS MIKROKONTROLER
ATMEL89S51
Oleh :
Risk i Pr ihanto
0634010093
Dosen Pembimbing1 : Basuki Rahmat, S.Si, MT Dosen pembimbing2 : Fetty Tri Anggraeny, S.Kom
ABSTRAK
Pada saat ini otomatisasi di setiap aspek kehidupan, seperti robot yang nantinya akan menggantikan tenaga kerja manusia, oleh karna itu penulis membuat prototype robot forklift dinamis, dengan tujuan nantinya robot yang dibuat dapat menggantikan forklift konvensional yang ada saat ini.
Prototype ini dirancang untuk memindahkan benda dari suatu tempat ke tempat yang lainnya, menggunakan sensor ultrasonik sebagai pendeteksi benda, dan menggunakan motor DC sebagai penggerak roda dan lengan pengangkut dan Mikrokontroler ATMEL 89S51.
Dengan adanya tugas akhir ini, diharapkan adanya kemajuan. Yaitu memicu mahasiswa lainnya untuk membuat robot forklift dinamis yang lebih dari yang penulis buat.
Kata Kunci : Robot, Forklift, Dinamis,ATMEL89S51
Hak Cipta © milik UPN "Veteran" Jatim :
HALAMAN JUDUL
LEMBAR PENGESAHAN TUGAS AKHIR
LEMBAR PENGESAHAN DAN PERSETUJUAN
KATA PENGANTAR……… i
ABSTRAK……….. iii
DAFTAR ISI………... iv
DAFTAR GAMBAR DAFTAR TABEL BAB I PENDAHULUAN 1.1 Latar Belakang ………... 1
1.2 Perumusan Masalah………. 1
1.3 Batasan Masalah………... 2
1.4 Tujuan………... 3
1.5 Manfaat……… 3
1.6 Metodologi Perancangan……….. 3
1.7 Sistematika Penulisan……… 4
BAB II TINJ AUAN PUSTAKA 2.1 Mikrokontroler ATMEL 89S51... 7
v
2.1.2 Pin-pin mikrokontroler AT89S51………. 10
2.1.3 Struktur Perangkat Keras AT89S51…………. 12
2.1.4 Struktur Memori……….. 13
2.1.5 Regiter Mikrokontroler AT89S51……… 16
2.1.6 Pewaktu/Pencacah (Timer/Counter)…………. 19
2.1.7 Sintem Interrupt………... 25
2.2 Motor DC... 27
2.3 Sensor Jarak Ultrasonic SRF05... 29
BAB III ANALISIS PERANCANGAN ROBOT 3.1 Perancangan Perangkat Keras……….. 30
3.1.1 Perancangan Kerangka Robot……….. 30
3.1.2 Perancangan Mikrokontroler ATMEL89S51... 33
3.1.3 Perancangan Driver Motor………. .. 33
3.1.4 Perancangan Mikro dengan Servo Controller... 37
3.1.5 Penggunaan DST – Navi... 38
3.1.6 Perancangan Gripper... 39
3.1.7 Perancangan Seluruh Rangkaian………... 40
3.2 Perancangan Perangkat Lunak………... 42
BAB IV IMPLEMENTASI SISTEM 4.1 Implementasi Perangkat Keras……….. 45
4.1.1 Kerangka Robot………. 45
Hak Cipta © milik UPN "Veteran" Jatim :
4.1.4 Sensor Jarak Ultrasonic Devantech SRF05…... 50
4.2 Implementasi Perangkat Lunak……….. 51
4.2.1 Dst Uniprog V2.8 / Full Version……… 51
BAB V PENGUJ IAN DAN ANALISA ROBOT 5.1 Pengujian……… 58
5.1.1 Pengujian Driver Motor………. 58
5.1.2 Pengujian Sensor Ultrasonik……….. 59
5.1.3 Pengujian Robot Forklift………... 60
5.2 Analisa………... 64
5.2.1 Analis Robot Forklift………. 64
BAB VI KESIMPULAN DAN SARAN 6.1 Kesimpulan……… 66
6.2 Saran………... 67
vii DAFTAR GAMBAR
Gambar 2.1 Konfigurasi Pin Mikrokontroler AT89S51……… 10
Gambar 2.2 Blok Diagram AT89S51……… 13
Gambar 2.3 Denah Memori Data……….. 14
Gambar 2.4 Susunan Register Dasar MCS51………... 17
Gambar 2.5 Timer / Counter Logic………... 20
Gambar 2.6 TCON / Timer Control Special Function Register……… 21
Gambar 2.7 TMOD / Timer Mode Special Function Register……….. 22
Gambar 2.8 16-bit up Counter……….. 24
Gambar 2.9 Mode Operasi Timer... 24
Gambar 2.10 Analogi Sistem Interupsi……….. 26
Gambar 2.11 Fase 1 dari Motor DC... 27
Gambar 2.12 Fase 2 dari Motor DC... 28
Gambar 2.13 Putaran Motor DC... 28
Gambar 2.14 SRF05 Ultrasonic Ranger……… 29
Gambar 3.1 Roda Robot………. 31
Gambar 3.2 Kerangka Robot Tampak Atas……… 32
Gambar 3.3 Kerangka Robot Tampak Samping……….. 32
Gambar 3.4 Kerangka Robot Tampak Depan……….. 32
Gambar 3.5 Fase Pertama dariMotor DC... 34
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 3.8 Perhitungan Rasio Gigi... 35
Gambar 3.9 Pengatur gerakan Motor... 37
Gambar 3.10 Skema Servo Controller 08 Smart Version………... 37
Gambar 3.11 Gripper /Penjepit………... 40
Gambar 3.12 Diagram blok Rangkaian Robot Forklift……….. 40
Gambar 3.13 Skema Rangkaian Robot Forklift………. 41
Gambar 3.14 Diagram Alir Jalannya Robot……… 42
Gambar 3.15 Diagram Alir Robot Forklift………. 43
Gambar 4.1 Kerangka Robot Tampak Depan………... 45
Gambar 4.2 Kerangka Robot Tampak Atas……….. 46
Gambar 4.3 Kerangka Robot Tampak Bawah……….. 46
Gambar 4.4 Pemasangan Roda ke Motor DC………... 47
Gambar 4.5 Rangkaian Mikrokontroler………. 47
Gambar 4.6 Driver Motor……….. 48
Gambar 4.7 Perhitungan Rasio Gigi... 49
Gambar 4.8 Rasio dari Motor Gearbox... 50
Gambar 4.9 SRF05 Ultrasonic Ranger……….. 50
Gambar 4.10 Modul DST AVR Converter………. 51
Gambar 4.11 ATMEL 89S51 dan DST - 51 USB……….. 52
ix
Gambar 4.13 Pemilihan Mikrokontroler………. 53
Gambar 4.14 Pendeklarasian I/O dan Konstanta………... 53
Gambar 4.15 Subroutine Pengambilan Barang……… 54
Gambar 4.16 Subroutine Meletakkan Barang………. 55
Gambar 4.17 Subroutine Menuju Ke Arah Sudut Yang Ditentukan….. 56
Gambar 4.18 Pengaturan Servo………... 56
Gambar 5.1 Pengujian Driver Motor... 59
Gambar 5.2 Pengujian Sensor Ultrasonic Terhadap Objek... 60
Gambar 5.3 Pengujian Robot Berdasar Bentuk Objek... 61
Gambar 5.4 Pengujian Robot Berdasar Ketinggian Objek... 62
Gambar 5.5 Pengujian Robot Berdasar Berat Objek... 63
Gambar 5.6 Pengujian Robot Berdasar Posisi Objek... 63
Hak Cipta © milik UPN "Veteran" Jatim :
DAFTAR TABEL
Tabel 2.1 Konfigurasi Pin AT89S51………. 11
Tabel 2.2 TCON / Timer Control Special Function Register……… 21
Tabel 2.3 TMOD / Timer Mode Special Function Register……….. 22
Tabel 3.1 Daftar Komponen………...……….. 31
Tabel 5.1 Hasil Pengujian Motor DC... 59
Tabel 5.2 Pengujian Berdasar Bentuk Objek... 61
Tabel 5.3 Pengujian Berdasar Ketinggian Objek... 61
Tabel 5.4 Pengujian Berdasar Berat Objek... 62
12312YAYASAN KESEJ AHTERAAN PENDIDIKAN DAN PERUMAHAN UPN “VETERAN” J AWA TIMUR
FAKULTAS TEKNOLOGI INDUSTRI
Jl. Rungkut Madya Gunung Anyar Surabaya 60294 Tlp. (031) 8706369, 8783189 Fax (031) 8706372 Website: www.upnjatim.ac.id
KETERANGAN REVISI
Mahasiswa di bawah ini :Nama : Riski Prihanto
NPM : 0634010093
Program Studi : Teknik Informatika
Telah mengerjakan revisi/tidak ada revisi*) pra rencana (design) / skripsi ujian lisan gelombang VI, Tahun Ajaran 2011/2012 dengan judul:
“ROBOT GRIPPER DINAMIS BERBASIS MIKROKONTROLER AT89S51”.
Oleh karenanya mahasiswa tersebut diatas dinyatakan bebas revisi skripsi dan diijinkan untuk membukukan skripsi dengan judul tersebut.
Surabaya, 21 Juni 2012 Dosen Penguji yang memerintahkan revisi:
1.) Ir . R. Pur nomo Edi Sasongko, MP
{
}
Hak Cipta © milik UPN "Veteran" Jatim :
PENDAHULUAN
1.1 Latar Belaka ng
Dalam era modern saat ini perkembangan teknologi kian pesat sehingga
memberikan tuntutan kepada manusia untuk berusaha lebih maju dapat mengikuti
perkembangan yang sedang berlangsung selaras dengan berbagai kebutuhan
manusia itu sendiri. Tidak menutup kemungkinan dibidang industri yang
membutuhkan modernisasi, dimana pengoptimalan tenaga kerja menjadi tuntutan
agar hasil kerja yang dicapai dapat di tingkatkan.
Contohnya optimalisasi tenaga kerja yang mengoprasikan alat-alat berat
seperti forklift, dan semakin banyaknya perindustrian-perindustrian yang
menginginkan pengoptimalisasian dalam segi alat berat atau forklift khususnya,
maka dengan ini kami mencoba membuat rancang miniature “Robor Forklift
Dinamis”, dengan harapan pada tahap selajutnya atau tahap robot sesungguhnya
dapat menggantikan robot forklift yang ada sekarang.
Peneliti pendahulu : Jadid Achmadi, 2010 “Perancangan Robot Forklift
2
1.2 Rumusan Masalah
Berdasar pada latar belakang pembuatan miniature robot forklift dinamis,
dapat dibuat rumusan masalah sebagai berikut:
a. Bagaimana membuat miniature robot forklift yang dapat
dikembangkan, sehingga nantinya robot forklift yang sesungguhnya
dapat digunakan oleh masyarakat.
b. Bagaimana membuat lengan penjepit pada forklift dapat mengangkat
barang.
c. Bagaimana membuat system yang sesuai dengan hardware dan mikro
yang digunakan. Dalam perancangan ini mikrokontroler yang
digunakan ATMEL 89S51 dan bahasa yang digunakan adalah bahasa
assembly.
1.3 Batasan Masalah
Agar perancangan yang dibahas dalam tugas akhir tidak terlalu luas
menyimpang dari topik yang telah ditentukan, maka penulis perlu membatasi
permasalahan sebagai berikut:
a. Bahasa Pemrograman yang digunakan adalah bahasa Assembly.
b. Posisi awal, koordinat ambil barang dan koordinat taruh barang telah
ditentukan terlebih dahulu.
c. Pergerakan robot kekiri dan kekanan terbatas pada 900.
d. Robot hanya dapat mendeteksi benda yang berada tepat didepan sensor
ultrasonic.
Hak Cipta © milik UPN "Veteran" Jatim :
e. Berat maksimal dari beban yang dapat diangkut oleh robot 50g.
f. Letak Koordinat awal (0,0) berada di pojok kiri bawah.
1.4 Tujuan
Tujuan pembuatan robot forklift ini adalah :
a. Merancang robot berbasis mikrokontoler ATMEL 89S51 yang dapat
memindahkan barang dari posisi awal ke posisi tujuan.
b. Robot berjalan sesuai harapan yang diinginkan dan berhasil
memindahkan barang.
c. Pembuatan robot yang dapat dikembangkan ketahap-tahap selanjutnya
atau lebih sempurna.
1.5 Manfaat
Adapun manfaat dari pembuatan robot forklift ini yaitu:
a. Pengomtimalisasian tenaga yang digunakan untuk pengoprasian alat
berat atau forklift khususnya.
b. Dapat meminimalisasi biaya operasional dibandingkan menggunakan
forklift konvensional.
1.6 Metodologi Per ancangan
4
a. Studi Literatur dan Diskusi.
Pada tahap pertama perancangan ini penulis akan mempelajari
literature yang berhubungan dengan perancangan robot forklift.
Mikrokontroler ATMEL 89S51 dan komponen pendukung yang
digunakan. Penulis juga bediskusi dengan dosen dan teman untuk
memperkaya wawasan penulis mengenai perancangan robot forklift.
b. Perancangan perangkat keras.
Rangkaian yang akan dirancang meliputi rangkaian minimum
mikrokontroler, rangkaian pengendali sensor dan rangkaian pengendali
motor.
c. Perancangan perangkat lunak.
Setelah semua perangkat keras dan perangkat lunak selesai maka akan
dilakukan perancangan perangkat lunak yang terdiri dari diagram alir
dan listing program.
d. Pengujian robot.
Pengujian perangkat keras dan perangkat lunak selesai dibuat, maka
tahap berikutnya adalah pengujian robot. Jika hasil pengujian tidak
sesuai dengan yang diharapkan, akan dilakukan perbaikan.
1.7 Sistemtika Penulisan
Untuk mempermudah penulisan tugas akhir ini, dapat dibuat suatu
sistematika penulisan yang terdiri atas:
Hak Cipta © milik UPN "Veteran" Jatim :
BAB I PENDAHULUAN
Pada bab ini diuraikan secara ringkas pembahasan tentang
latar belakang, rumusan masalah, batasan masalah, tujuan
dan manfaat, metodologi perancangan dan sistematika
penulisan.
BAB II TINJAUAN PUSTAKA
Pada bab ini membahas dasar-dasar teori dari
mikrokontroler ATMEL 89S51 dan komponen-komponen
pendukung lainnya.
BAB III PERANCANGAN ROBOT
Pada bab ini membahas tentang perancangan perangkat
keras dan perancangan perangkat lunak prototype robot
forklift.
BAB IV IMPLEMENTASI DAN PERANCANGAN
Pada bab ini membahas mengenai implementasi
perancangan perangkat keras maupun perangkat lunak yang
telah dirancang.
6
Pada bab ini membahas tentang pengujian driver motor,
sensor, pengujian prototype robot dan analisa prototype
robot.
BAB VI KESIMPULAN DAN SARAN
Pada bab ini membahas tentang kesimpulan dan saran yang
bermanfaat bagi perbaikan dan pengembangan prototype
robot forklift.
Hak Cipta © milik UPN "Veteran" Jatim :
Agfianto eko putra,2004. Belajar Mikrokontroler AT89S51 Teori Dan
Aplikasi, gavamedia, Jakarta.
Team IE.2006. Panduan Praktis Mikrokotroler Keluarga AVR. Innovative
Electronic. Surabaya.
Widodo, Budiharto. 2006. Membuat Sendiri Robot Cerdas. Elex Media
Komputindo. Jakarta.
Widodo, Budiharto. 2008. “Panduan Praktikum Mikrokontroler AVR AT
Mega 16”, Media Koputundo. Jakarta.
eskuter.googlecode.com/files/mekanika-robotika.pdf 11.38 am 2 June 2012
http://repository.univpancasila.ac.id/index.php?option=com_docman&task=d
oc_details&gid=760&Itemid=2 11.38 am 2 June 2012
http://www.robotindonesia.com/articles.php 11.38 AM 2 June 2012
7 BAB II
TINJ AUAN PUSTAKA
2.1 MIKROKONTROLER ATMEL 89S51
Mikrokontroler sebagai teknologi baru yaitu semikonduktor kehadirannya
sangat membantu dunia elektronika. Dengan arsitektur yang praktis tetapi memuat
banyak kandungaan transistor yang terintegrasi, sehingga mendukung dibuatnya
rangkaian elektronika. Mikrokontroler adalah mikroprosesor chip tunggal yang
dirancang secara spesifik untuk apliaksi kontrol bukan untuk
aplikasi-aplikasi serbaguna. Perangkat ini sering digunakan untuk kebutuhan kontrol
tertentu seperti pada sebuah penggerak motor. Pengguna mikrokontroler sangat
luas, tidak hanya untuk akuisi melainkan juga untuk pengendalian di
pabrik-pabrik, kebutuhan peralatan kantor, peralatan rumah tangga, automobile dan
sebagain. Hal ini disebabkan mikrokontroler merupakan system mikroprosesor
(yang didalamnya terdapat CPU, ROM, RAM dan I/O) yang telah terpadu dalam
suatu chip, selain itu komponennya (AT89S51) mudah dan murah di pasaran.
Mikrokontroler, sebagai suatu trobosan teknologi mikroprosesor dan
mikrokomputer, hadir memenuhi kebutuhan pasar (marked need) dan teknologi
baru.
Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan
transistor yang lebih banyak namun hanya membutuhkan ruang yang kecil serta
dapat diproduksi secara masal (dalam jumlah banyak) membuat harganya menjadi
lebih murah (dibandingkan mikroprosesor). Sebagai kebutuhan pasar,
mikroprosesor hadir untuk memenuhi selera industri dan para konsumen akan
Hak Cipta © milik UPN "Veteran" Jatim :
kebutuhan dan keinginan alat-alat bantu bahkan mainan yang lebih baik dan
canggih.
Tidak seperti system computer, yaitu mampu menangani berbagai macam
program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya),
mikrokomputer hanya bias digunakan untuk satu aplikasi tertentu saja (hanya satu
program saja yang dapat disimpan), perbedaan lainya terletak pad perbandingan
RAM dan ROM.
Pada system komputer perbandingan RAM dan ROM-nya besar, artinya
program-program pengguna disimpan dalam ruang RAM yang relatif besar,
digunakan sebagai tempat penyimpanan sementara, termasuk register-register
yang digunakan pada mikrokontroler yang bersangkutan.
Adapu kelebihan dari mikrokontroler adalah sebagai berikut:
a. Mikrokontroler tersusun dalam satu chip dimana prosesor, memori, dan
I/O terintegrasi menjadi satu kesatuan kontrol sistem sehinga
mikrokontroler dapat dikatakan sebagai computer mini yang dapat bekerja
secara inovatif sesuai kebutuhan sistem.
b. Sistem running bersifat berdiri sendiri tanpa bergantung pada komputer
sedangkan parameter komputer hanya digunakan untuk download perintah
intruksi atau program. Langkah-langkah untuk download computer dengan
mikrokontroler sangat mudah digunakan karena tidak menggunakan
banyak perintah.
9
c. Pada mikrokontroler tersedia fasilitas tambahan untuk pengembangan
memori dan I/O yang disesuaikan dengan kebutuhan sistem.
d. Harga untuk memperoleh alat ini lebih murah dan mudah didapat.
Mikrokontroler AT89S51 adalah standart Internasional. Arsitektur
perangkat keras 89S51 mempunyai 40 kaki, 31 kaki digunakan untuk keperluan 4
buah port pararel. 1 port terdiri dari 8 kaki yang dapat di hubungkan untuk
interfacing ke pararel device, seperti ADC, sensor dan sebagainya, atau dapat juga
digunakan secara sendiri tiap bitnya untuk interfacing single bit seperti switch,
LED, dll.
2.1.1 Spesifikasi ATMEL89S51
a. Kompatibel dengan keluarga mikro MCS51
b. 8 Kybte In System Programable (ISP) flash memori dengan kemampuan
1000 kali baca / tulis.
c. Tegangan kerja 4-5 volt.
d. Bekerja dengan rentang 0-33 MHz.
e. 256x8 bit RAM internal.
f. 32 jalur I/O dapat deprogram.
g. 3 buah 16 bit timer / counter.
h. 8 sumber interup.
Hak Cipta © milik UPN "Veteran" Jatim :
i. Saluran full dupleks serial UART.
j. Watchdog timur
k. Dua data pointer.
l. Mode pemrograman ISP yang fleksibel (Byte dan Page Model).
2.1.2 Pin-pin Mikr okontr oler AT89S51
Gambar 2.1 Konfigurasi Pin Mikrokontroler AT89S51
Yang membedagan mikrokontroler AT89S51 dengan C51 (seri
sebelumnya) adalah cara pengisian program meskipun program (flash
programming). Pada mikrokontroler AT89S51 terdapat fasilitas ISP (In System
Programing). Artinya mikrokontroler ini mampu diprogram ,meskipun dalam
kondisi bekerja. Letak perbedaan pada hardware adalah adanya MOSI dan SCK,
11
pin ini berguna saat flash programming. Adapun fungsi dari pin-pin lain,
fungsinya sama seperti pada seri sebelumnya. Dibawah ini disajikan fungsi pin
untuk mikrokontroler AT89S51.
Tabel 2.1 Konfigurasi Pin AT89S51
Nomor Pin
Nama Pin Alternatif Keterangan
20 GND Sebagai Kaki Suplay GND
40 VCC Sebagai Kaki Suplay VCC
32…39 P0.7...P0.0 D7…D0&
A7..A0
Port 0 dapat berfungsi sebagai I/O biasa, juga bisa sebagai alamat rendah dan bus data untuk memori external.
1.8 P1.0…P1.7 Sebagai port I/O biasa, mempunyai internal pull up yang berfungsi sbagai input dengan memberikan logika 1. Terdapat Pin MISO, MOSI, SCK.
21…28 P2.0…P2.7 A8..A15 Port 0 sebagai I/O biasa, atau sebagai
16 P3.6 WR External data memory write strobe
17 P3.7 RD External data memory read strobe
Hak Cipta © milik UPN "Veteran" Jatim :
9 RST Reset aktif dengan logika 1 minimal 2 siklus
30 ALE Prog Pin ini dapat berfungsi sebagai Addres Latch Enable (ALE) yang me- Latch low byte address pada saat mengakses memori external. Sedangkan pada saat Flash Programing (PROG) berfungsi sebagai pulse input untuk pada operasi normal ALE akan mengeluarkan sinyal clock sebesar 1/16 frekwensi oscillator kecuali pada saat mengakses memori external. Sinyal clock pada pin ini dapat pula didisable dengan men-set bit 0 dari Special Function Register di alamat 8EH ALE hanya akan aktif pada saat mengakses memori external (MOVX & MOVC)
31 EA Pada kondisi low maka pin akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan program yang ada pada memori eksternal setelah system direset. Apabila berkondisi high makan pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal.
18 XTAL1 Input Oscillator
19 XTAL2 Output Oscillator
2.1.3 Str uktur Per angkat Keras AT89S51
Struktur mikrokontroler AT89S51 di otaki oleh CPU 8 bit yang terhubung
melalui satu jalur bus dengan memori penyimpanan berupa RAM dan ROM serta
jalur I/O berupa port bit I/O serial. Selain itu terdapat fasilitas timer / counter
internal dan jalur interface address dan data ke memori eksternal.
13
Blok diangram dan struktur mikrokontroler AT89S51 adalag sebagai
berikut:
Gambar 2.2 Blok Diagram AT89S51
2.1.4 Str uktur Memor i
Dalam pengertian MCS51, Random Access Memory dalam chip AT89x51
adalah memori data, yaitu memori yang dipakai untuk menyimpan data,
Hak Cipta © milik UPN "Veteran" Jatim :
sedangkan Flash PEROM merupakan memori penampung program pengendali
AT89x51, dikenal sebagai memori program. Karena kedua memori itu memang
dibedakan dengan tegas, maka kedua memori itu mempunyai penomoran yang
terpisah. Memori program dinomori sendiri, pada AT89S51 mulai dari nomor
$0000 sampai $0FFF. Sedangkan memori-data yang hanya 256 bytes dinomori
dari nomor $00 sampai $FF. gambar 5 denah memori –data dibagi menjadi dua
bagian, memori $00 sampai $7F merupakan memori seperti RAM selayaknya
meskipun beberapa bagian mempunyai kegunaan khusus, sedangkan memori
nomor $80 sampai $FF dipakai sangat khusus yang dinamakan sebagai Special
Function Register Pelatihan Mikrokontroler.
Gambar 2.3 Denah Memori Data
15
Seperti terlihat dalam denah memori data gambar 2.3, memori data dibagi
menjadi dua bagian, memori nomor $00 sampai $7F merupakan memori seperti
RAM selayaknya meskipun beberapa bagian mempunyai kegunaan khusus,
sedangkan nenori nomor $80 sampai $FF dipakai sangat khusus yang dinamakan
sebagai Special Function Register.
Memori-data nomor $00 sampai $7F bisa dipakai sebagai memori
penyimpanan data biasa, dibagi menjadi 3 bagian:
• Memori nomor $00 sampai $18 selain sebagai memori-data biasa, bisa
pula dipakai sebagai Register Serba Guna (General Purpose Register).
• Memori nomor $20 sampai $2F selai sebagai memori-data biasa, bisa
dipakai untuk menyimpan informasi dalam level bit.
• Memori nomor $30 sampai $7F (sebanyak 80 byte) merupakan
memori-data biasa, bisa dipakai untuk menyimpan memori-data maupun dipakai sebagai
stack.
a. Register Ser ba Guna
Register Serba Guna (General Purpose Register) menempati memori-data
nomor $00 sampai $18, memori sebanyak 32 byte ini dikelompokkan menjadi 4
kelompok Register (Register Bank), 8 Byte memori dari masing-masing
kelompok itu dikenali Register 0, Register 1,…,Register 7 (R1,R2,…,R7). Dalam
penulisan program memori-memori ini bisa langsung disebut sebagai
R0,R1,R2,R3,R4,R5,R6 dan R7, tidak lagi dengan nomor memori. Dengan cara
ini intruksi yang terbentuk bisa lebih sederhana dan bekerja lebih cepat.
Hak Cipta © milik UPN "Veteran" Jatim :
b. Memor i Lower Bit
Memori-data nomor $20 sampai $2F bisa dipakai menampung informasi
dalam level bit. Setiap byte memori di daerah ini bisa dipakai menampung 8bit
informasi yang masin-masing dinomori tersendiri, dengan demikian dari 16 byte
memori yang ada bisa dipakai untuk menyimpan 128 bit (16 x 8 bit) yang
dinomori dengan bit nomor $00 sampai $7F. informasi dalam level bit tersebut
masing-masing bisa di-‘1’-kan, di-‘0’-kan dengan intruksi.
c. Special Function Register (SFR)
Register Khusus (SFR – Special Function Register) adalah suatu daerah
RAM dalam IC keluarga MCS51 yang dipakai untuk mengatur perilaku MCS51
dalam hal-hal khusus, misalnya tempat untuk berhubungan dengan port pararel P1
atau P3, dan sarana input/output lainnya, tapi tidak umum dipakai untuk
menyimpan data seperti layaknya memori-data. Meskipun demikian, dalam hal
penulisan program SFR diperlakukan persis sama dengan memori-data.
2.1.5 Regiter Mikr okontr oler AT89S51
Untuk keperluan penulisan program, setiap mikroprosesor/mikrokontroler
selalu dilengkapi dengan Register Dasar. Ada beberapa macam register
merupakan register bakuyang bisa dijumpai disemua jenis mikroprosesor
/mikrokontroler, ada register yang spesifik pada masing-masing prosesor. Yang
termasuk register baku antara lain Orogram Counter, Akumulator, Stack Pointer
Register, Program Status Register. MCS51 mempunyai semua Register baku ini.
Sebagai register yang khas MCS51, antara lain adalah register B, Data Pointer
High Byte dan Data Pointer Low Byte. Semua ini digambarkan dalam Gambar2.4.
17
Disamping itu MCS51 masih mempunyai Register Serba Guna R0,…, R7yang
sudah disebut dibagian atas. Dalam mikroprosesor/mikrokontroler yang lain,
register-register dasar biasanya ditempatkan ditempat tersendiri dalam inti
prosesor, tetapi dalam MCS51 register-register ini ditempatkan secara terpisah.
• Program Counter ditempatkan ditempat tersendiri didalam inti prosesor.
• Register Serba Guna R0,.., R7 ditempatkan di salah satu bagian dari
memori-data.
• Register lainya ditempatkan didalam Special Function Register (SFR).
Gambar 2.4 Susunan Register Dasar MCS51
Kegunaan dan pemakaian register-register dasar tersebut antara lain sebagai
berikut:
a. Pr ogr am Counter
Program Counter (PC) dalam AT89S51 merupakan register dengan
kapasitas 16 bit. Di dalam PC dicatat nomor memori-program yang menyimpan
Hak Cipta © milik UPN "Veteran" Jatim :
instruksi berikutnya yang akan diambil (fetch) sebagai intruksi untuk dikerjakan
(execute). Saat setelah reset PC bernilai 0000h, berarti MCS51 akan segera
mengambil isi memori-program nomor 0 sebagai intruksi. Nilai PC otomatis
bertambah 1 setelah prosesor mengambil intruksi 1 byte. Ada instruksi yang
hanya 1 byte, ada instruksi yang sampai 4 byte, dengan demikian pertambahan
nilai PC setelah menjalankan intruks, tergantung pada jumlah byte intruksi
bersangkutan.
b.Akumulator
Sesuai dengan namanya, Akumulator adalah sebuah register yang
berfungsi untuk menampung (accumulate) hasil-hasil pengolahan data dari banyak
instruksi MCS51. Akumulator bisa menampung data 8 bit (1byte) dan merupakan
register yang paling banyak kegunaannya, lebih dari setengah instruksi-instruksi
MCS51 melibatkan akumulator.
c. Stack Pointer Register
Salah satu bagian dari memori-data dipakai sebagai stack, yaitu tempat
yang dipakai untuk menyimpan sementara nilai PC sebelum proses menjalankan
sub-rutin, nilai tersebut akan diambil kembali dari stack dan dikembalikan ke PC
saat proses selesai menjalankan sub-rutin. Stack Pointer Register adalah register
yang berfungsi untuk mengatur kerja stack, dalam Stack Pointer Register
disimpan nomor memori-data yang dipakai untuk operasi Stack berikutnya.
19
d.Pr ogr am Status Wor d
Program Status Word (PSW) berfungsi mencatat kondisi prosesor setelah
melaksanakan instruksi. Pembahasan tentang PSW secara rinci akan dilakukan
dibagian lain.
e. Register B
Merupakan register dengan kapasitas 8 bit, merupakan register pembantu
Akumulator saat menjalankan perkalian dan pembagian.
f. DPH dan DPL
Data Pointer High Byte (DPH) dan Data Pointer Low Byte (DPL)
masing-masing merupakan register dengan kapasitas 8 bit, tetapi dalam pemakaiannya
kedua register ini digabungkan menjadi satu register 16 bit yang dinamakan
sebagai Data Pointer Regsiter (DPTR). Sesuai dengan namanya, Register ini
dipakai untuk mengalamati data dalam jangkauan yang luas.
2.1.6 Pewaktu/Pencacah (Timer /Counter )
Timer sangat diperlukan untuk membuat delay/tundaan waktu.AT89S51
menyediakan fasilitas timer 16 bit. Sebanyak 2 buah yaitu Timer 0 dan timer 2.
Timer ini difungsikan sebagai counter/pencacah.
a. Timer bekerja dengan cara menghitung pulsa clock internal mikrokontroler
yang dihasilkan dari rangkaian oscillator. Jumlah pulsa clock akan
dibandingkan dengan sebuah nilai yang terdapat dalam register timer (TH dan
TL). Jika jumlah pulsa clock sama dengan nilai timer, maka sebuah interrupt
Hak Cipta © milik UPN "Veteran" Jatim :
akan terjadi (ditandai oleh Flag TF). Interrupt ini dapat dipantau oleh program
sebagai tanda bahwa timer telah overflow.
b.Counter bekerja dengan cara menghitung pulsa eksternal pada P3.4 (T0) dan
P3.5 (T1). Jumlah pulsa ini akan disimpan dalam register timer (TH dan TL).
Gambar 2.5 Timer / Counter Logic
a. Timer akan menghitung pulsa clock dari osilator yang sebelumnya telah
dibagi 12.
Agar berfungsi sebagai timer maka :
Bit C/T dalam TMOD harus 0 (timer operation)
Bit TRx dalam TCON harus 1 (timer run)
Bite Gate dalam TMOD harus 0 atau pin INTx harus 1.
b. Cunter akan menghitung pulsa dari pin input T0 dan T1. Agar berfungsi
sebagai counter maka:
21
Bit C/T dalam TMOD harus 1 (counter operation)
Bit TRx dalam TCON harus 1 (timer run)
Bit Gate dalam TMOD harus 0 atau pin INTx harus 1.
c. Register TCON
Gambar 2.6 TCON / Timer Control Special Function Register
Keterangan:
Tabel 2.2 TCON / Timer Control Special Function Register
Bit Symbol Function
7 TF1 Timer 1 overflow flag. Set saat timer berubah dari satu ke nol. Clear saat prosesor mengeksekusi interrupt service routine pada address 001Bh
6 TR1 Timer 1 run control bit. Set 1 oleh program agar timer mulai menghitung. Clear oleh program untuk menghentikan timer, bukan me-reset timer.
5 TF0 Timer 0 overflow flag. Set saat timer berubah dari satu ke nol. Clear saat prosesor mengeksekusi interrupt service routine pada address 000Bh.
4 TR0 Timer 0 run control bit. Set 1 oleh program agar timer mulai menghitung. Clear oleh program untuk menghentikan timer, bukan me-reset timer.
3 IE1 External interrupt edge flag. Set 1 pada saat transisi sinyal high ke low diterima oleh port 3 pin 3.3 (INT1). Clear saat prosesor mengeksekusi interrupt service routine pada address 0013h. Tidak terkain
Hak Cipta © milik UPN "Veteran" Jatim :
dengan operasi timer.
2 IT1 External Interrupt 1 signal type control bit. Set 1 oleh program untuk mengaktifkan external interrupt 1 yang dipicu oleh sisi turun sinyal (falling edge / transisi high ke low). Clear oleh program untuk mengaktifkan sinyal low pada external interrupt 1 untuk menghasilkan sebuah interrupt.
1 IE0 External Interrupt 0 edge flag. Set 1 pada saat transisi sinyal high ke low diterima oleh port 3 pin 3.2 (INT1). Clear saat prosesor mengeksekusi interrupt service routine pada address 0003h. Tidak terkain dengan operasi timer.
0 IT0 External Interrupt 0 signal type control bit. Set 1 oleh program untuk mengaktifkan external interrupt 0 yang dipicu oleh sisi turun sinyal (falling edge / transisi high ke low). Clear oleh program untuk mengaktifkan sinyal low pada external interrupt 0 untuk menghasilkan sebuah interrupt.
d. Register TMOD
Gambar 2.7 TMOD / Timer Mode Special Function Register
Keterangan:
Tabel 2.3 TMOD / Timer Mode Special Function Register
Bit Symbol Function
7/3 Gate OR gate enable bit. Mengendalikan RUN/STOP timer 1/0. set oleh program untuk mengaktifkan timer (RUN) jika bit TR1/0 pada TCON=1 dan
23
sinyal pada pin INT0/1 high. Clear oleh program untuk mengaktifkan timer (RUN) jika bit TR0/1 pada TCON=1.
6/2 C/T Set oleh program untuk membuat timer 1/0 berfungsi sebagai counter yang akan menghitung pulsa eksternal pada pin 3.5(T1) atau 3.4 (T0). Clear oleh program untuk membuat timer 1/0 berfungsi sebagai timer yang akan menghitung pulsa clock internal.
5/1 M1 Timer/counter operating mode select bit. Set/clear oleh program untuk memilih mode.
4/0 M0 Timer/counter operating mode select bit. Set/clear oleh program untuk memilih mode.
e. Timer / Counter Inter r upt
Timer/counter pada AT89S51 adalah sebuah Up Counter, nilai counternya
akan naik (increament) dari nilai awalnya sampai nilai maksimumnya dan
kembali keniali nol. Saat bergulir menjadi nol (overflow), maka sebuah timer flag
akan berniali 1. Flag ini dapat diuji oleh program untuk menandakan bahwa
counter telah selesai menghitung, atau flag tersebut bisa digunakan untuk
meng-interrupt program. Nilai awal timer/counter harus dimasukkan dulu ke dalam
timer register Timer High (TH) dan Timer Low (TL) sebelum timer /counter
dijalankan.
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 2.8 16-bit up Counter
Gambar 2.9 Mode Operasi Timer
25
Pemilihan mode operasi timer ditentukan pada bit M1 dan M0 dalam
register TMOD. Ada 4 mode operasi yaitu:
a. Timer Mode 0 . 13-bit Timer/Counter
Dengan mensetting M1&M0 = 00 dalam TMOD menyebabkan register
THx berfungsi sebagai counter 8 bit dan register TLx berfungsi sebagai couner 5
bit. Ketika overflow, TF1x akan 1. Nilai maksimumnya adalah 8191d atau 1FFFh.
b. Timer Mode 1. 16-bit Timer /Counter
Register THx dan TLx masing-masing berfungsi sebagai counter 8 bit.
Ketika overflow, TFx akan 1. nilai maksimumnya adalah 65535d atau FFFFh.
c. Timer Mode 2. 8-bit Autor eload Timer/Counter
Register TLx berfungsi sebagai counter 8 bit. Register Thx berfungsi
mengisi ulang / autoreload register TLx ketika terjadi overflow (TFx = 1).
d. Timer Mode 3. Two 8 bit Timer /Counter
Pada mode 3. timer berfungsi sebagai counter 8 bit yang benar-benar
terpisah satu sama lain. Timer 0 berfungsi sebagai timer sekaligus sebagai counter
secara terpisah. TL0 digunakan sebagai counter 8 bit yang menghitung pulsa
eksternal, dengan timer flag TF0. TH0 digumakan sebagai timer 8 bit yang
menghitung pulsa clock internal, dengan timer flag TF1.
2.1.7 Sintem Inter r upt
Interrupt adalah suatu kejadian atau peristiwa yang menyebabkan
mikrokontroler berhrnti sejenak untuk melayani interrupt tersebut. Setelah
Hak Cipta © milik UPN "Veteran" Jatim :
melaksanakan ISR secara lengkap, maka mikrokontroler akan kembali
melanjutkan eksekusi program utama yang tadi ditinggalkan. Yang harus
diperhatikan adalah, kita harus tahu sumber-sumber interupsi, vector layanan
interupsi, yaitu subrutib yang akan dijalankan bila terjadi interupsi.
Gambar 2.10 Analogi Sistem Interupsi
Pada AT89S51, ada 5 sumber interrupt yaitu:
a. System Reset
b. Eksternal 0
c. Timer 0
d. Eksternal 1
e. Timer 1
f. Serial Port
27
2.2 Motor DC
Pada sebuah robot, motor ini merupakan bagian penggerak utama di mana
hamper setiap robot pasti selalu menggunakan motor DC. Kecuali beberapa robot
yang menggunakan pneumatic, muscle wire atau motor AC. Motor DC terdiri dari
sebuah magnet permanent dengan dua kutub dan dua kumparan, cincin belah yang
berfungsi sebagai komutator (pemutus arus).
a. Arus mengalir dari sisi kiri cincin belah ke sisi kanan. Arus ini akan
dilanjutkan ke kumparan yang terkait pada cincin belah.
b. Arus mengalir dalam kumparan menimbulakan medan magnet.
c. Kutub magnet yang sama dengan kutub magnet permanen akan saling tolak
menolak dan kumparan akan bergerak memutar hingga kumparan berada
pada posisi dimana kedua kutubnya berbeda dengan kutub magnet permanen.
Gambar 2.11 Fase 1 dari Motor DC
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 2.12 Fase 2 dari Motor DC
d. Perputaran kumparan yang terkait pada cincin belah akan mengakibatkan
perubaha polaritas pada kumparan karena sikat-sikat (Brush) yang dialiri
listrik tergulung pada sisi cincin belah yang berbeda.
e. Perubahan polaritas kumparan juga mengakibatkan perubahan kutub pada
kumparan sehinga kumparan kembali memutar.
f. Proses tersebut terjadi berulang-ulang sehingga kumparan akan berputar
secara kontinyu selama aliran arus terjadi pada kedua kutub sikat.
Gambar 2.13 Putaran Motor DC
29
Arah putaran motor DC dapat diubang dengan mengubah polaritas aliran
arus yang terhubung ke sikat-sikatnya. Sedangkan kecepatan putar motor
tergantung dari berapa besar arus yang mengalir.
2.3 Sensor J ar ak Ultr asonic Devantech SRF05
Sensor jarak merupakan sensor yang wajib ada pada robot terkini.
Devantech SRF05 adalah salah satu sensor yang paling banyak digunakan pada
kontes robot di Indonesia selain ping Devantech. SRF05 Ultrasonic Ranger
Finder memberikan informasi jarak berkisar 3cm – 3m. harga sensor ini tidak
lebih dari Rp. 360.000,00.
Gambar 2.14 SRF05 Ultrasonic Ranger
Kit ini sangat mudah untuk dirangkai dan membutuhkan sumber daya yang kecil
sekali, sangat ideal untuk robot mobil yang membutuhkan sensor jarak, dengan
cara kerja memancarkan pulsa suara dengan kecepatan suara (0,9ft/milisecon).
Hak Cipta © milik UPN "Veteran" Jatim :
Dalam bab 3 ini penulis membahas tentang perancangan perangkat keras
dan peancangan perangkat lunak.
3.1 Per a ncangan Per angkat Keras
Perancangan perangkat keras yang berupa perancangan kerangka robot,
perancangan rangkaian mikrokontroler ATMEL 89S51, perancangan rangkaian
driver motor, rangkain gribber, perangkaian sensor ultrasonic dan perancangan
seluruh rangakaian.
3.1.1 Per a ncangan Ker angka Robot
Pada perancangan kerangka robot ini penulis menggunakan alumunium
dan pelastik mica sebagai kerangka robot, alasan penulis menggunakan
alumunium dan pelastik mica adalah karena bahan tersebut kuat dan ringan, dan
kerangka tidak mudah berkarat seperti halnya logam besi.
Dalam pembuatan kerangka robot penulis memerlukan beberapa alat bantu seperti
bor, alat ukur, gerinda dan gergaji supaya kerangka robot terbentuk dengan baik
dan terukur. dibawah ini adalah komponen dan gambar dari kerangka robot.
Berikut ini adalah komponen yang dibutuhkan dalam membuat robot yang
penulis buat:
31
2 Elektrolit kapasitor 1000 mikro 2 IC 74 IS 02
Hak Cipta © milik UPN "Veteran" Jatim :
2
1
3
4
5
6
7
8
9
*
0
#
A
B
C
D
Gambar 3.2 Kerangka Robot Tampak Atas
Gambar 3.3 Kerangka Robot Tampak Samping
Gambar 3.4 Kerangka Robot Tampak Depan
33
Setelah kerangka robot terbentuk langkah selanjutnya adalah pemasangan
motor DC dan roda robot pada kerangka robot. Pada awalnya motpr Dc dipasang
pada kerangka robot yang disediakan lalu buat satu shaft untuk pemasangan roda,
agar roda yg satu tidak berputar bersama-sama.
3.1.2 Per a ncangan Mik rokontr oler ATMEL 89S51
Mikrokontroler ATMEL 89S51 adalah otak dari robot yang penulis buat
dimana semua input-output berada, Mikrokontroler ATMEL 89S51
menggerakkan motor dc mengatur sinyal yang dikeluarkan oleh sensor SRF05
ulatrasonic ranger, tetapi untuk membuat rangkaian mikrokontroler agar dapat
bekerja dengan baik dibutuhkan rangkaian pengatur yang berupa rangkaian reset
yang berfungsi untuk mengatur kembali program setiap kali catu daya dihidupkan.
3.1.3 Per a ncangan Dr iver Motor
Pada sebuah robot, motor ini merupakan bagian penggerak utama di mana
hampir pasti setiap robot pasi menggunakan motor Dc. Kecuali beberapa robot
yang menggunan pneumatic, muscle wire atau motor AC.
Motor DC terdiri dari sebuah magnet permanen dengan dua kutub dan
kumparan, cincin belah yang berfungsi berfungsi sebagai komutator (pemutus
arus).
a. Arus mengalir dari sisi kiri cincin sisi kanan, arus ini akan dilanjutkan ke
kumparan yang terkait pada cincin belah.
b. Arus mengalir dalam kumparan menimbulkan medan magnet dan membentuk
rumah kutub-kutub magnet pada kumparan.
Hak Cipta © milik UPN "Veteran" Jatim :
c. Kutub magnet yang sama dengan kutub magnet permanen akan saling tolak
menolak dan kumparan akan bergerak pada posisi dimana kedua kutubnya
berbeda dengan magnet permanen.
d. Perputaran kumparan yang terkait pada cincin belah akan mengakibatkan
perubahan polaritas pada kumparan karena sikat-sikat (brush) yang dialiri
listrik terhubung pada sisi cinci belah yang berbeda.
e. Perubahan polaritas kumparan juga mengakibatkan perubahan kutub pada
kumparan sehingga kumparan kembali bergerak memutar.
Proses tersebut terjadi berulang-ulang sehingga kumparan akan berputar
secara kontinyu selama aliran arus terjadi pada kedua kutub sikat.
Gambar 3.5 Fase Pertama dariMotor DC
Gambar 3.6 Fase Kedua dari Motor DC
35
Gambar 3.7 Putaran Motor DC
Arah putaran motor DC dapat diubah dengan mengubah polaritas aliran
arus yang terhubung ke sikat-sikatnya. Sedangkan kecepatan pada motor
tergantung dari berapa besar arus yang mengalir. Namun Motor DC biasa
seringkali tidak cukup kuat untuk menggerakkan mekanisme robot secara
langsung. Untuk memperbesar torsi maka dibutuhkan gear-gear yang akan
memproduksi kecepatan motor dan sekaligus meningkatkan torsi. Proses
pengurangan kecepatan dan peningkatan torisi ini berbanding terbalik dan
dihitung berdasarkan perbandingan gigi.
Gambar 3.8 Perhitungan Rasio Gigi
a. Worm gear adalah gigi yang berbentuk ulir yang berfungsi mengubah arah
puratan dari horizontal menjadi vertikal.
Hak Cipta © milik UPN "Veteran" Jatim :
b. Tranfer gear adalah gigi yang berfungsi untuk konversi antara gigi dengan
jumlah banyak ke jumlah kecil ataupun sebaliknya.
c. Gear shaft adalah gigi yang terhubung langsung dengan as atau sumbu motor.
Perbandingan gear transfer dapat dihitung dengan menghitung jumlah gigi
yang ada baik sesudah atau sebelum transfer. Gear transfer 1 memiliki 22 gigi dan
11 gigi sesudah di transfer oleh karena itu gear ini memiliki perbandingan 22:11
atau 2:1. Hal ini akan mempercepat putana motor dua kali lipat namun juga
mengurangi torsi motor dua kali lipat. Sedangkan gear transfer 2 memiliki
perbandingan 11:25 yang menguatkan torsi dan mereduksi kecepatan.
Gear tranfer 3 memiliki perbandingan 33:15 dan terhubung pada gear
dengan 50gigi. Untuk menghitung ratio total gear adalah sebagai berikut.
Perhitungan ratio dilakukan pada gigi-gigi yang saling bersinggungan oleh karena
itu perhitungannya adalah sebagai berikut:
22/11 x 33/15 x 50/15 =20
Jadi ratio dari motor gearbox ini adalah 1:20 dimana torsi akan naik 20 kali lipat
dan kecepatan turun 20 kali lipat pula.
Dasar untuk rangkaian pengatur gerakan motor adalah dua buah saklar
DPDT yang akan mengaliri arus dengan polaritas berbeda. Saat S1 dan S2 berada
di posisi kiri, maka arus akan mengalir dari kutub atas ke kutub bawah motor
sedangkan saat S1 dan S2 berada pada posisi kanan maka arus akan mengalir dari
kutub bawah ke kutub atas motor sehingga motor bergerak ke arah sebalik nya.
37
Gambar 3.9 Pengatur gerakan Motor
3.1.4 Per ancangan Mikr okontr oler dengan Ser vo Contr oller
Gambar 3.10 Skema Servo Controller 08 Smart Version
Berbeda dengan versi sebelumnya DSR-30, Modul DSR-08 adalah
merupakan modul servo controller yang memiliki feedback feature yaitu
mendeteksi seberapa banyak motor berputar. Untuk mengamankan servo dari
kerusakan akibat kegagalan mekanis juga tersedia feedback untuk menghentikan
Hak Cipta © milik UPN "Veteran" Jatim :
gerakan servo saat bagian ini aktif. Selain itu juga terdapat fitur untuk
menggerakkan servo secara relatif dari posisi tertentu.
Modul 08 adalah merupakan modul 30 dengan firmware
DSR-08, oleh karena itu ada beberapa bagian yang perlu diperhatikan terutama bagian
SRV.
BAGIAN-BAGIAN
SRV1-SRV8 Konektor yang menghubungkan modul ini motor servo 1 hingga 8.
SRV9-SRV16 Input feedback dari encoder 1 hingga 8.
SRV17-SRV24 Input Sensor 1 hingga 8.
ISP Por t, konektor untuk pemrograman firmware dari Servo Control melalui ISP
Port.
Ser ial, konektor yang menghubungkan modul ini dengan port serial sistem
mikrokontroler, kabel RS232 atau USB to RS232 Converter.
3.1.5 Penggunaan DST – Navi
Modul ini adalah merupakan sub system untuk navigasi yang sangat
praktis apabila digunakan pada aplikasi robotik. Dilengkapi dengan 8 port untuk
sensor jarak sonar dan 8 port untuk sensor jarak infrared sistem ini dapat
mendeteksi jarak pada 8 arah mata angin dengan dua metode yaitu ultrasonik dan
infrared. Metode ultrasonik digunakan untuk mendeteksi jarak dengan akurat
terhadap obyek cermin yang akan mengganggu akurasi metode infrared.
Sedangkan metode infrared digunakan untuk mendeteksi jarak pada obyek yang
berlekuk-lekuk yang mengganggu akurasi metode ultrasonik. Kombinasi kedua
metode ini akan memperoleh perhitungan jarak yang lebih akurat.
39
Spesifikasi:
- 8 input Infrared Range Finder (GP2D12 or GP2Y0A21).
- 8 input Ultrasonic Range Finder (SRF-05 or Ping).
- Devantech Digital Compass CMPS03 Port compatible.
- Devantech Digital Compass CMPS09/CMPS10 Port Compatible.
- Dapat mendeteksi arah mata angin (Devantech Compass terpasang).
- Dapat mendeteksi 3 axis akselerasi (Devantech Compass CMPS09 /
CMPS10 terpasang).
- Dapat mendeteksi medan magnet (Devantech Compass terpasang).
- Dapat merekam perjalanan robot ke dalam memori (Devantech Compass
terpasang).
- Dimensi 5,3 x 3,2 cm
-3.1.6 Per a ncangan Gr ipper
Gripper adalah alat yang berfungsi sebagai penjepit atau pencengkram
suatu benda yang prinsip dasar nya sama sepeti tang penjepit.
Pada perancangan gripper robot ini penulis menggunakan gripper
modifikasi sendiri, punulis menggunakan plastik mika tebal sebagai lengan
penjepit yang diberi plyurethane (sejenis plastik) yang dipasang pada sisi bagiaqn
dalam mika, agar gesekan yang didapatkan lebih besar, namun lapisannya lenter
sehingga tidak merusak benda yang akan di pegang.
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 3.11 Gripper /Penjepit
3.1.7 Per a ncangan Selur uh Rangkaian
Pada perancangan seluruh rangkaian ini penulis mengambarkan rangkaian
robot secara keseluruhan dari rangkaian mikrokontroler rangkaian driver motor,
dan juga rangkaian sensor ultrasonik digabung menjadi satu rangkaian saja.
Gambar 3.12 Diagram blok Rangkaian Robot Forklift
Pada blok diatas terdapat rangkaian driver motor, rangkaian
compas, rangkaian sensor ultrasonik, yang masuk pada mikrokontroler ATMEL
89S51.
41
Gambar 3.13 Skema Rangkaian Robot Forklift
Hak Cipta © milik UPN "Veteran" Jatim :
Semua rangkaian masuk ke pin mikrokontroler dan mikrokontroler
berfungsi untuk memberi perintah kepada masing-masing rangkaian yang telah
terhubung ke pin mikrokontroler.
3.2 Per a ncangan per angkat lunak
Pada perancangan perangkat lunak terdiri darin perangkat lunak untuk
motor driver, dan juga perangkat lunak untuk sensor ultrasonik.
Dengan menggunakan diagram alir sebagai berikut.
Gambar 3.14Diagram Alir Jalannya Robot Mengambil Dan Menaruh
Barang
43
Pada diagram alir diatas adalah gambaran bagaimana robot bisa sampai
pada posisi/koordinat ambil barang menuju posisi/koordinat peletakan barang
hingga sampai pada posisi awal robot kembali.
Gambar 3.15 Diagram Alir Robot Forklift
Hak Cipta © milik UPN "Veteran" Jatim :
Pada diagram alir diatas adalah diagram alir robot forklift, pada saat
pertama robot d hidupkan atur terlebih dahulu koordinat awal (tempat benda awal)
dan atur juga koordinat akhir (tempat akhir benda), kemudian robot akan berjalan
menuju koordinat awal ketika sampai robot akan mencari benda yang akan
diangkut, kemudian robot akan mengangkut benda dengan gripper, robot kembali
ke posisi awal robot kemudian melaju ke koordinta akhir, setelah benda di taruh,
robot akan kembali ke posisi awal robot dan kembali ke koordinat benda awal
untuk mendeteksi apakah masih ada benda lagi, jika masih ada benda maka robot
akan mengulang proses yang dilakukan pada saat mengangkat benda sebelumnya,
jika sudah tidak ada benda lagi di koordinat awal benda makan robot akan
kembali ke posisi awal robot.
45 BAB IV
IMPLEMENTASI SISTEM
Pada bab ini penulis menjelaskan tentang implementasi dari perancangan
perangkat keras dan implementasi dari perancangan perangkat lunak dari bab
sebelumnya.
4.1 Implementasi Per angkat Keras
Pada bagian implementasi perangkat keras yang telah dibahas di bab
sebelumnya, yaitu implementasi dari perancangan perangkat keras robot.
Mikrokontroler AT89S51, driver motor, dan sensor ultrasonic.
4.1.1 Ker angka Robot
Di bagian perancangan telah dibahas tentang perangcangan kerangka robot
yang penulis buat dan pada bagian ini adalah gambar-gambar dari implementasi
dari perancangan perangkat keras untuk kerangka robot yang penulis buat.
Gambar 4.1 Kerangka Robot Tampak Depan
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 4.2 Kerangka Robot Tampak Atas
Gambar 4.3 Kerangka Robot Tampak Bawah
Dari gambar-gambar kerangka robot diatas adalah gambar-gambar kerangka
robot yang penulis buat yang terbuat dari bahan mica dan alumunium.
Dikarenakan kedua bahan tersebut sangat ringan dan kuat. Dengan begitu robot
tidak terlalu berat saat berjalan di lantai dan tidak menguras tenaga batrai terlalu
banyak.
47
Gambar 4.4 Pemasangan Roda ke Motor DC
Gambar diatas adalah gambar pemasangan dari roda robot ke motor DC.
Dengan menggunakan gearbox sebagai penarik agar waktu motor DC bergerak ,
roda robot ikut bergerak pula. Untuk pemasangan dan mengurangi gesekan pada
saat roda digerakkan oleh motor DC.
4.1.2 Mikr okontroler ATMEL 89S51
Langkah pertama dari penyusunan hardware dari robo pemadam api yang
dibuat oleh penulis adalah pembuatan atau implementasi dari perancangan
perangkat kertas mikrokontroler yang penulis buat.
Gambar 4.5 Rangkaian Mikrokontroler
Hak Cipta © milik UPN "Veteran" Jatim :
Pada gambar rangkaian diatas terdapat satu komponen yang berfungsi
memberi tegangan sebesar 5V yaitu komponen IC (Integrated Circuit) regulator.
Komponen ini berfungsi untuk menurunkan sumber tegangan DC yang diterima
oleh rangkaian menjadi 5V. ini dikarenakan mikrokontoler ATMEL 89S51
bekerja pada sumber tegangan 5V. sumber tegangan ini berfungsi untuk
menggerakkan motor DC.
4.1.3 Dr iver Motor
Pada implementasi perangkat keras driver motor penulis menerapkan dari
perancangan perangkat keras driver motor yang telah dibahas pada bab
sebelumnya. Dimana penulis membuat suatu rangkaian elektronika yang
berfungsi untuk menggerakkan motor DC yang dihubungkan ke roda robot.
Gambar 4.6 Driver Motor
Namun motor DC seringkali tidak cukup kuat untuk menggerakkan
mekanisme robot secara langsung. Untuk memperbeasar torsi maka dibutuhkan
rangkaian gear-gear yang akan mereduksi kecepatan motor dan sekaligus
49
meningkatkan torsi. Proses pengurangan kecepatan dan peningkatan torsi ini
berbanding terbalik dan dihitung berdasarkan perbandingan gigi.
Gambar 4.7 Perhitungan Rasio Gigi
a. Worm gear adalah gigi yang berbentuk ulir yang berfungsi mengubah arah
puratan dari horizontal menjadi vertikal.
b. Tranfer gear adalah gigi yang berfungsi untuk konversi antara gigi dengan
jumlah banyak ke jumlah kecil ataupun sebaliknya.
c. Gear shaft adalah gigi yang terhubung langsung dengan as atau sumbu motor.
Perbandingan gear tranfer dapat dihitung dengan menghitung jumlah gigi
yang ada baik sesudah atau sebelum transfer. Gear transfer 1 memiliki 22 gigi dan
11 gigi sesudah di transfer oleh karena itu gear ini memiliki perbandingan 22:11
atau 2:1. Hal ini akan mempercepat putana motor dua kali lipat namun juga
mengurangi torsi motor dua kali lipat. Sedangkan gear transfer 2 memiliki
perbandingan 11:25 yang menguatkan torsi dan mereduksi kecepatan.
Gear tranfer 3 memiliki perbandingan 33:15 dan terhubung pada gear
dengan 50gigi. Untuk menghitung ratio total gear adalah sebagai berikut.
Hak Cipta © milik UPN "Veteran" Jatim :
Perhitungan ratio dilakukan pada gigi-gigi yang saling bersinggungan oleh karena
itu perhitungannya adalah sebagai berikut:
22/11 x 33/15 x 50/15 =20
Jadi ratio dari motor gearbox ini adalah 1:20 dimana torsi akan naik 20 kali
lipat dan kecepatan turun 20 kali lipat pula.
Gambar 4.8 Rasio dari Motor Gearbox
4.1.4 Sensor J ar ak Ultr asonic Devantech SRF05
Sensor jarak merupakan sensor yang wajib ada pada robot terkini.
Devantech SRF05 adalah salah satu sensor yang paling banyak digunakan pada
kontes robot di Indonesia selain ping Devantech. SRF05 Ultrasonic Ranger
Finder memberikan informasi jarak berkisar 3cm – 3m. harga sensor ini tidak
lebih dari Rp. 360.000,00.
Gambar 4.9 SRF05 Ultrasonic Ranger
51
Kit ini sangat mudah untuk dirangkai dan membutuhkan sumber daya
yang kecil sekali, sangat ideal untuk robot mobil yang membutuhkan sensor jarak,
dengan cara kerja memancarkan pulsa suara dengan kecepatan suara
(0,9ft/milisecon).
4.2 Implementasi Per a ngkat Lunak
Pada implementasi perangkat lunak penulis mengimplementasikan
perangcangan perangkat lunak yang telah dibahas pada bab sebelumnya seperti
software yang digunakan penulis untuk menanamkan program robot kedalam
mikrokontroler.
4.2.1 DST UNIPROG V2.8 / FULL VERSION
Modul DST Uniprog Full Version adalah merupakan modul Development
System sekaligus Universal Programer. Dengan dengan bantuan Modul DST
AVR Converter, Development System tersebut juga dapat digunakan untuk
mikrokontroler keluarga MCS - 51 maupun AVR yang lain.
Gambar 4.10 Modul DST AVR Converter
Hak Cipta © milik UPN "Veteran" Jatim :
Penulis menggunakan DST - 51 USB Version tanpa memerlukan modul
tambahan. Langkah-langkahnya sebagai berikut :
a. Mikrokontroler ATMEL 89S51 dipasang.
Gambar 4.11 Rangkaian ATMEL 89S51 dan DST - 51 USB
b. Pasang kabel USB dan aktifkan Power Supply. Apabila aplikasi ini tidak
membutuhkan arus yang besar anda dapat menggantikan power supply
tersebut dengan power dari USB dengan cara memasang Jumper Power
Enable yang ada didekat konektor USB.
c. Buka program AVR studio 4 dan pilih auto connect pada bagian tools →
Program AVR.
Gambar 4.12 AVR Studio
53
d. Memilih Mikrokontroler yang akan digunakan pada bagian Device and
Signature Bytes.
Gambar 4.13 Pemilihan Mikrokontroler
e. Untuk AT89S51 diatur frekuwensi ISP maksimum 125 KHz.
f. Pilih Tab Program dan Load File Hex pada bagian program seta klik Program
untuk download.
g. Pendeklarasian I/O dan Konstanta.
Gambar 4.14 Pendeklarasian I/O dan Konstanta
Hak Cipta © milik UPN "Veteran" Jatim :
;=======
================================================== =======
; Deklarasi I/O
LeftMotor Bit P1.0 ;Port Pengatur Arah motor Kiri
LeftEnable Bit P1.1 ;Port Pengatur Kecepatan motor Kiri
RightMotor Bit P1.2 ;Port Pengatur Arah motor kanan
RightEnable Bit P1.3 ;Port Pengatur Kecepatan Motor
Kanan
ServoNaikTurun EQU 01
ServoGrip EQU 02
SudutBukaGrip EQU 52h
SudutTutupGrip EQU 82h
SudutNaikGrip EQU 78h
SudutTurunGrip EQU 73h
h. Skrip Subroutine Pengambilan Barang.
Gambar 4.15 Subroutine Pengambilan Barang
;====
55
i. Skrip Subroutine Meletakkan Barang.
Gambar 4.16 Subroutine Meletakkan Barang
Ambil
Hak Cipta © milik UPN "Veteran" Jatim :
j. Skrip Subroutine Menuju Ke Arah Sudut Yang Ditentukan.
Gambar 4.17 Subroutine Menuju Ke Arah Sudut Yang Ditentukan
;====
==================================================== ; SUBROUTINE MENUJU KE ARAH SUDUT YANG DITENTUKAN ; - Arah sudut tujuan di variabel arah robot
MenujuArahSudut:
57
;====
============================================================= =====
; PROSES PENGATURAN SERVO
; - Var Sudut servo = sudut servo yang digerakkan ; - R6 = Nomor servo yang digerakkan
Hak Cipta © milik UPN "Veteran" Jatim :
BAB V
PENGUJ IAN DAN ANALISIS ROBOT
Pada bab pengujian penulis akan menguji robot mulai dari pengujian
driver motor, sensor ultrasonic dan terakhir pengujian robot forklift, serta analisis
dari perangkat keras, perangkat lunak dan analisis dari pengujian.
5.1 Pengujian
Pada bagian pengujian akan dilakukan pengujian dari pengujian driver
motor, dan juga pengujian sensor Devantech SRF05 Ultrasonic.
5.1.1 Pengujian Dr iver Motor
Untuk pengujian driver motor yang berfungsi untuk menggerakkan robot
penulis mencoba dengan softwere yang telah dibuat sederhana seperti bab
sebelumnya. Untuk melakukan pengujian terhadap driver motor ini penulis
menyiapkan 12 buah baterai dengan tegangan 1.5 V yang disususn seri sehingga
tegangan total mencapai 18 V. Jika tegangan kurang dari 5 V maka motor DC
tidak akan bergerak karena supply tegangan kurang.
Tancapkan pin-pin yang ada dimotor ke pin mikrokontroler yang telah
ditentukan pada program, jika sudah maka langkah selanjutnya hubungkan
tegangan positif mikrokontroler dengan tegangan positif pada driver motor.
Pasang catu daya pada driver motor minimal 5V dan pasang pula catu daya pada
rangkaian mikrokontroler yang telah dihubungkan pada ic regulator 7805 yang
berfungsi untuk menurunkan tegangan menjadi 5 volt dc karena mikrokontroler
bekerja pada tegangan 5 volt Dc.
59
Gambar 5.1 Pengujian Driver Motor
Tabel 5.1 Hasil Pengujian Motor DC
P1 P2 P3 Ger ak Robot
1 1 1 Jalan
1 1 0 Jalan
1 0 0 Mati
0 0 0 Mati
Dengan pantauan hasil tabel diatas dapat dilihat bahwa robot atau motor
dc dapat berjalan jika semua baterai terpasang dengan baik atau memiliki daya
yang cukup.
5.1.2 Pengujian Sensor Ultr asonik
Pada pengujian sensor ultrasonic penulis hanya mnguji manual dan jika
pada pengujian manual berhasil maka pengujian langsung diujikan pada robot.
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 5.2 Pengujian Sensor Ultrasonic Terhadap Objek
Pada gambar diatas sensor ultrasonic dapat mendeteksi bahwa didepannya
terdapat objek, dan robot akan membuka lengan penjepit dan akan mengangkat
objek tersebut.
5.1.3 Pengujian Robot For klift
Pada pengujian robot forklift ini penulis mencoba menguji robot apakah
robot berjalan sesuai dengan yang diharapkan. Jika robot tidak berjalan sesuai
yang diharapkan maka penulis akan melakukan perbaikan pada robot.
a. Pengujian Robot berdasar dari bentuk objek yang akan di angkat.
Pada pengujian berdasar bentuk objek, penulis menggunakan 3 bentuk
objek
61
.
Tabel 5.2 Pengujian Berdasar Bentuk Objek
Coba Bentuk Sisi Status
1 Persegi Berhasil
2 Segitiga Berhasil
3 Lingkaran Berhasil
Gambar 5.3 Pengujian Robot Berdasar Bentuk Objek
b. Pengujian Robot berdasar dari ketinggian Objek.
Pada pengujian berdasar ketinggian Objek, penulis menggunakan 4
macam ketinggian, yaitu 5cm, 10cm, 15cm dan 20cm.
Tabel 5.3 Pengujian Berdasar Ketinggian Objek
Coba Ketinggian Objek Status
1 5cm Tidak
2 10cm Berhasil
3 15cm Berhasil
4 20cm Berhasil
Hak Cipta © milik UPN "Veteran" Jatim :
Gambar 5.4 Pengujian Robot Berdasar Ketinggian Objek
c. Pengujian Robot berdasar dari berat Objek.
Pada pengujian berdasar berat objek, penulis menggunakan 6 takaran
berat. Yaitu 10g,20g,30g,40g,50g dan 60g.
Tabel 5.4 Pengujian Berdasar Berat Objek
Coba Ketinggian Objek Status
1 10g Berhasil
2 20g Berhasil
3 30g Berhasil
4 40g Berhasil
5 50g Berhasil
6 60g Tidak