PROTOTIPE PENGENDALI ROBOT MOBIL BERLENGAN JEPIT DENGAN MIKROKONTROLER ATMEGA 16
MELALUI PAPAN KETIK BERANTARMUKA PS/2 Angkar Wijaya / 0422005
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jl. Prof. Drg. Suria Sumantri 65, Bandung 40164, Indonesia
Email: akian_w@yahoo.com
ABSTRAK
Dalam dunia industri, untuk memindahkan barang-barang yang berbentuk tabung dan berat dapat digunakan perangkat pembantu yang bertujuan untuk mempermudah kerja manusia. Perangkat pembantu ini dapat berupa robot mobil dengan lengan yang mampu menjepit benda, memindahkan, dan meletakan kembali.
Pada tugas akhir ini telah dibuat robot mobil yang dilengkapi dengan lengan jepit. Penggunaan mikrokontroler dalam hal ini Atmega16 dengan menghubungkan dengan papan ketik yang memiliki antarmuka PS/2 digunakan untuk mengendalikan robot mobil untuk menjepit, memindahkan, dan melepaskan benda.
Dari hasil pengujian terhadap robot mobil yang direalisasi, untuk benda yang berbentuk tidak beraturan (batu), hanya bentuk-bentuk tertentu (batu 1 dan batu 2) yang dapat dijepit dan dipindahkan dengan baik. Untuk benda dengan permukaan normal dan licin yang beratnya kurang dari 100 gram dapat dijepit dan dipindahkan dengan baik. Demikian juga untuk benda yang berdiameter kurang dari 2 centimeter dapat dijepit dan dipindahkan dengan baik.
PROTOTIPE PENGENDALI ROBOT MOBIL BERLENGAN JEPIT DENGAN MIKROKONTROLER ATMEGA 16
MELALUI PAPAN KETIK BERANTARMUKA PS/2
Angkar Wijaya / 0422005
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jl. Prof. Drg. Suria Sumantri 65, Bandung 40164, Indonesia
Email: akian_w@yahoo.com
ABSTRACT
On the industries, for moving things that in the cylinder form and also heavy, a tool can be used with aim to help human being. This tool can be form like mobile robot with arm that capable to grip object, move it, and then place it.
At this final project has been made mobile robot equiped with gripper arm. Usage of microcontroller in this case Atmega16 connected to PS/2 keyboard to control mobile robot to grip object, move it, and then place it.
less than 100 grams can be gripped and moved well, and for objects which have diameter less than 2 centimeter can be gripped and moved well too.
DAFTAR ISI
ABSTRAK ………...…i
ABSTRACT……….ii
KATA PENGANTAR ………...iii
DAFTAR ISI ………...v
DAFTAR GAMBAR....………...….viii
DAFTAR TABEL...……….x
BAB I PENDAHULUAN………….………...1
1.1 Latar Belakang.………1
1.2 Perumusan Masalah……….1
1.3 Tujuan...………..……2
1.4 Pembatasan Masalah………...………….…2
1.5 Sistematika Penulisan………..……2
BAB II LANDASAN TEORI…………..………4
2.1. PS/2...………...4
2.1.1 Deskripsi PS/2....……….….4
2.1.2. Komunikasi Device dengan Host.……….………5
2.2. Mikrokontroler ATmega16…….……….………6
2.2.1. Deskripsi Mikrokontroler ATmega16...7
2.2.3. Konfigurasi pin ATMega 16...9
2.3. Code Vision AVR C Compiler..……….10
2.4. LCD (Liquid Crystal Display)...15
2.5. Motor Arus Searah (DC)...16
BAB III PERANCANGAN DAN REALISASI... 19
3.1. Diagram Blok ...………...19
3.2. Perancangan dan Realisasi Perangkat Keras...….………..……20
3.2.1. Rangkaian Antarmuka PS/2 dengan Mikrokontroler Atmega16...20
3.2.2. Rangkaian IC L293D dengan Mikrokontroler Atmega16...22
3.2.3. Rangkaian LCD dengan Mikrokontroler Atmega16...24
3.2.4. Perancangan Bentuk Robot Mobil...25
3.3. Perancangan Software...26
3.3.1. Code Vision AVR C Compiler...26
3.3.2. Flowchart Program Utama...31
BAB IV DATA PENGAMATAN DAN ANALISA……….35
4.1. Pengujian Tampilan LCD..………35
4.2. Pengujian Reaksi Motor...……...………..36
4.3 Pengujian Pengendalian Robot Mobil….………..37
4.4 Pengujian Lengan Penjepit...41
BAB V KESIMPULAN DAN SARAN………44
5.2. Saran………..44 DAFTAR PUSTAKA.………xi LAMPIRAN A FOTO ALAT...A-1 LAMPIRAN B LISTING PROGRAM………B-1 LAMPIRAN C DATA KOMPONEN……….C-1 LAMPIRAN D SKEMA RANGKAIAN……….D-1 LAMPIRAN E DOKUMENTASI...E-1 LAMPIRAN F KODE-KODE TOMBOL KEYBOARD...F-1
DAFTAR TABEL
Tabel 2.1. Pin-pin pada antarmuka PS/2...………...5
Tabel 3.1. Tombol pada keyboard, kode, dan fungsinya .……….21
Tabel 3.2. Motor yang bekerja pada pergerakan robot mobil...…….……22
Tabel 4.1. Tombol pada keyboard, kode desimal, dan tampilan LCD...36
Tabel 4.2. Reaksi pada robot mobil dan motor DC yang aktif ...37
Tabel 4.3. Batas kemampuan menjepit yang kaitannya dengan diameter benda.…...…...41
Tabel 4.4. Batas kemampuan menjepit yang kaitannya dengan berat benda...…41
Tabel 4.5. Gambar benda...42
Tabel 4.6. Kemampuan menjepit batu...43
DAFTAR GAMBAR
Gambar 2.1. Port PS/2 male pada keyboard……….4
Gambar 2.2. Port PS/2 female pada komputer...…....5
Gambar 2.3. Sinyal data dan sinyal clock…………...………..6
Gambar 2.4 Blok Diagram Fungsional ATMega16...……….….8
Gambar 2.5. Konfigurasi pin mikrokontroler Atmega16...………...10
Gambar 2.6. Tampilan CodeWizardAVR pada bagian Chip………..…11
Gambar 2.7. Tampilan CodeWizardAVR pada bagian LCD...12
Gambar 2.8. Tampilan CodeWizardAVR pada bagian Ports...13
Gambar 2.9. Tampilan CodeWizardAVR pada bagian External IRQ...….14
Gambar 2.10. Gambar LCD 16x2...………...15
Gambar 2.11. Penghubungan LCD dengan mikrokontroler ATMega 16……...16
Gambar 2.12. Cara Kerja Motor DC………...….……....17
Gambar 2.13. Motor DC Konvensional…………..…...…...….18
Gambar 3.1 Blok Diagram...………...19
Gambar 3.2. Rangkaian antarmuka PS/2 dengan mikrokontroler ATmega16...20
Gambar 3.3. Rangkaian IC L293D dengan mikrokontroler ATmega16 untuk roda depan dan roda belakang ...………….…..23
Gambar 3.4. Rangkaian IC L293D dengan mikrokontroler ATmega16 untuk lengan penjepit ...………..24
Gambar 3.6. Sketsa rancangan bentuk robot mobil...……….….26
Gambar 3.7. Tampilan CodeWizardAVR pada bagian Chip...………...….27
Gambar 3.8. Tampilan CodeWizardAVR pada bagian LCD...………...28
Gambar 3.9. Tampilan CodeWizardAVR pada bagian Ports...………...29
Gambar 3.10. Tampilan CodeWizardAVR pada bagian External IRQ...…...30
Gambar 3.11. Flowchart utama.…...31
Gambar 3.12. Flowchart robot mobil maju………...………...32
Gambar 3.13. Flowchart robot mobil mundur………..32
Gambar 3.14. Flowchart robot mobil belok kiri dan maju………...33
Gambar 3.15. Flowchart robot mobil belok kanan dan maju………...33
Gambar 3.16. Flowchart lengan menjepit………34
Gambar 3.17. Flowchart lengan melepas...34
Gambar 4.1. Denah percobaan pertama………...………...38
Gambar 4.2. Denah percobaan kedua….………....39
DAFTAR LAMPIRAN
Lampiran A Foto Alat...A-1 Lampiran B Listing Program...B-1
LAMPIRAN A
Gambar A.1. Gambar robot mobil dilihat dari atas
Gambar A.3. Gambar robot mobil dilihat dari samping
LAMPIRAN B
/***************************************************** This program was produced by the
CodeWizardAVR V1.25.3 Professional Automatic Program Generator
© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com
#include <mega16.h> #include <lcd.h> #include <stdio.h> #include <delay.h> int keyboard_data; int data_kb;
char display_lcd[33]; int count;
char pindata[12]={0,0,1,2,4,8,16,32,64,128,0,0};
// Alphanumeric LCD Module functions #asm
.equ __lcd_port=0x15 ;PORTC #endasm
#include <lcd.h>
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void) {
// Place your code here count ++;
{
sprintf(display_lcd,"%d",keyboard_data); lcd_puts(display_lcd);
}
}
// Declare your global variables here void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization // Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;
DDRA=0xFF;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;
DDRB=0xF0;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;
DDRD=0x00;
// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;
TCNT0=0x00; OCR0=0x00;
// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off
// Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00;
// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;
OCR2=0x00;
// External Interrupt(s) initialization // INT0: On
// INT0 Mode: Falling Edge // INT1: Off
// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;
// Analog Comparator initialization // Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;
SFIOR=0x00;
// LCD module initialization lcd_init(16);
// Global enable interrupts #asm("sei")
while (1) {
}
LAMPIRAN C
LAMPIRAN D
LAMPIRAN E
PERCOBAAN I
1
2
PERCOBAAN II
1
2
PERCOBAAN III
1
2
MENJEPIT BENDA LICIN
LAMPIRAN F
BAB I
PENDAHULUAN
1.1Latar Belakang
Meningkatnya dunia industri, keterbatasan waktu dan juga keterbatasan tenaga manusia menuntut manusia untuk bekerja lebih efektif dan efisien. Dalam kenyataannya di industri banyak dibutuhkan perangkat-perangkat pembantu demi menghemat tenaga kerja manusia, waktu, dan biaya produksi. Kemajuan teknologi membuat manusia berupaya membuat perangkat pembantu agar kerja manusia lebih cepat dan ringan.
Khususnya dalam industri, untuk memindahkan barang-barang yang berbentuk tabung dan berat. Dalam hal ini dapat digunakan perangkat pembantu yang bertujuan untuk mempermudah kerja manusia yaitu dapat berupa robot mobil dengan lengan yang mampu menjepit benda, memindahkan, dan meletakan kembali.
Penggunaan mikrokontroler dalam hal ini Atmega16 dengan menghubungkan dengan papan ketik yang memiliki antarmuka PS/2 menjadikan sistem dapat diprogram untuk menjalankan berbagai fungsi tambahan mengingat papan ketik mempunyai banyak tombol.
1.2 Perumusan Masalah
1.3 Tujuan
Penyusunan Tugas Akhir ini bertujuan untuk membuat robot mobil berlengan jepit dengan mikrokontroller Atmega16 yang dikendalikan dengan papan ketik yang memiliki antarmuka PS/2.
1.4Pembatasan masalah
Dalam tugas akhir ini, pembatasan masalah mencakup hal-hal berikut:
1. Menggunakan papan ketik dengan kabel sebagai penghubung dengan antarmuka PS/2.
2. Panjang kabel pada kotak kendali yang menentukan daerah pergerakan yang mampu dijangkau robot mobil adalah 1 meter.
3. Robot mobil mempunyai satu lengan jepit yang kemampuan menjepit benda berukuran maksimum 2 centimeter dan merupakan benda padat dan pejal yang beratnya tidak lebih dari 100 gram.
4. Lengan penjepit dibuat dari kunci inggris.
5. Robot mobil bergerak dari suatu lokasi awal untuk menjepit benda di lokasi tersebut lalu akan bergerak ke lokasi lain sebagai tujuan dan kemudian benda dilepaskan di lokasi tujuan tersebut.
1.5Sistematika Penulisan
Agar dalam penulisan laporan Tugas Akhir ini lebih terarah dan teratur serta terstruktur maka akan dibagi dalam:
BAB I PENDAHULUAN
Berisi latar belakang, perumusan masalah, tujuan, pembatasan masalah, dan sistematika penulisan.
BAB II LANDASAN TEORI
BAB III PERANCANGAN DAN REALISASI
Berisi perancangan dan implementasi, yang membahas tentang perencanaan dan implementasi dalam sistem yang dibangun, meliputi diagram blok, perancangan dan realisasi perangkat keras, perancangan perangkat lunak.
BAB IV DATA PENGAMATAN DAN ANALISA
Berisi hasil pengamatan dan analisa terhadap alat yang telah dirancang.
BAB V
KESIMPULAN DAN SARAN
Dari hasil pengamatan dalam tugas akhir ini, dapat diambil kesimpulan dan saran sebagai berikut:
5.1. Kesimpulan
Kesimpulan yang didapat dari tugas akhir ini sebagai berikut :
1. Robot mobil berlengan jepit dengan mikrokontroller Atmega16 yang dikendalikan dengan papan ketik yang memiliki antarmuka PS/2 telah berhasil direalisasi.
2. Dari hasil pengujian terhadap robot mobil yang direalisasi, untuk benda yang berbentuk tidak beraturan (batu), hanya bentuk-bentuk tertentu (batu 1 dan batu 2) yang dapat dijepit dan dipindahkan dengan baik. Untuk benda dengan permukaan normal dan licin yang beratnya kurang dari 100 gram dapat dijepit dan dipindahkan dengan baik. Dan untuk benda yang berdiameter kurang dari 2 centimeter dapat dijepit dan dipindahkan dengan baik
5.2. Saran
Untuk pengembangan selanjutnya disarankan :
1. Perancangan dari robot mobil perlu disempurnakan dengan membuat struktur penjepit yang dapat menjepit benda yang bentuknya tidak beraturan.
DAFTAR PUSTAKA
1. Wardhana, Lingga, Belajar Sendiri Mikrokontroler AVR Seri ATMega
8535 Simulasi, Hardware, dan Aplikasi, Andi, Yogyakarta, 2006
2. http://www.atmel.com/dyn/resources/prod_documents/doc1919.pdf, 25 Juli 2007.
3. www.datasheet4u.com/l293d, 21 Agustus 2007. 4. http://www.lima.com.tr, 21 Agustus 2007.