PENERAPAN ALGORITMA
BACTRACKING
PADA PERANCANGAN
LINE MAZE SOLVER ROBOTIC
BERBASIS
MIKROKONTROLER ATMEGA32
SKRIPSI
HELMIWATI SEMBIRING
111421040
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PENERAPAN ALGORITMA BACTRACKING PADA PERANCANGAN LINE MAZE SOLVER ROBOTIC BERBASIS
MIKROKONTROLER ATMEGA32
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
HELMIWATI SEMBIRING 111421040
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA MEDAN
PERSETUJUAN
Judul : PENERAPAN ALGORITMA BACKTRACKING PADA PERANCANGAN LINE MAZE SOLVER ROBOTIC BERBASIS ATMEGA32
Kategori : SKRIPSI
Nama : HELMIWATI SEMBIRING Nomor Induk Mahasiswa : 111421040
Program Studi : EKSTENSI S1 ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Drs. Dahlan Sitompul, M.Eng Dr.Poltak Sihombing, M.Kom NIP. 196707252005011002 NIP. 19620217 199103 1 001
Diketahui/disetujui oleh
Program Studi Ekstensi S1 Ilmu Komputer Ketua
PENERAPAN ALGORITMA BACTRACKING PADA PERANCANGAN LINE MAZE SOLVER ROBOTIC BERBASIS
MIKROKONTROLER ATMEGA32
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, April 2014
PENGHARGAAN
Segala puji dan syukur penulis panjatkan hanya kepada Tuhan YME, atas limpahan rahmat-Nya yang diberikan kepada penulis sehingga skripsi ini dapat diselesaikan dengan tepat waktu
Skripsi ini dikerjakan sebagai salah satu syarat guna memperoleh gelar Sarjana Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Penulis menyadari bahwa terselesaikannya skripsi ini tentunya tak lepas dari dorongan dan bantuan berbagai pihak. Oleh karena itu, dengan segala kerendahan hati penulis mengungkapkan rasa terima kasih dan penghargaan kepada :
1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Muhammad Zarlis M.Sc selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara dan selaku Dosen Pembimbing I.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.
5. Bapak Drs. Dahlan Sitompul, M.Eng, selaku pembimbing II yang telah memberikan masukan, bimbingan, saran dan motivasi kepada penulis sehingga penulis dapat menyelesaikan skripsi ini dengan baik.
6. Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembanding I yang telah memberikan kritik dan saran yang membangun bagi penulis.
7. Bapak Syahriol Sitorus, S.Si, MIT selaku Dosen Pembanding II yang telah memberikan kritik dan saran yang membangun bagi penulis.
9. Kepada para sahabat penulis, Meilan Sari Hutami Munthe, Posma Hotma Ria Sinaga, Lisnawati Sukatendel, Selvira Chikita Tarigan, Mila Susanti, dan Nova Rialni, terimakasih atas segala motivasi, bantuan, saran, kritik dan kerjasamanya selama proses penulisan penelitian ini. Semoga Tuhan membalas semua kebaikan yang telah kalian berikan.
Penulis,
ABSTRAK
Pada umumnya Algoritma Backtracking digunakan untuk mencari jalan keluar pada dibuat labirin. Labirin merupakan sebuah sistem jalur yang rumit, berliku-liku, serta memiliki banyak jalan buntu. Labirin garis (line maze) adalah labirin yang dibuat membentuk garis. Jika garis berwarna putih maka background berwarna hitam atau sebaliknya. Permasalahan yang timbul pada line maze adalah cara untuk mendapatkan jalur terpendek dari line maze. Pada tugas akhir ini, permasalahan pada line maze diselesaikan dengan algoritma Backtracking. Algoritma ini terdiri dari dua mode, yaitu mode search dan mode return. Pada mode search, robot melakukan perjalanan dari posisi start menuju finish dengan aturan bahwa robot akan mengutamakan belok kiri bila menjumpai persimpangan. Kode-kode unik dibangkitkan setiap robot berjumpa dengan persimpangan. Pada mode return, robot sudah berjalan dari start menuju finish dengan jalur terpendeknya. Jalur terpendek diperoleh dari kode-kode unik yang telah dikonversi. Berdasarkan percobaan program konversi yang telah dilakukan, maka dibutuhkan formulasi yang handal agar diperoleh hasil yang diinginkan.
APPLICATION OF BACKTACKING ALGORITHM TO DESIGN LINE MAZE SOVING ROBOT BASED
MIKROKONTROLER ATMEGA32
ABSTRACT
Backtracking algorithm is usually used to find a way out on a maze. Maze is a route. Line maze is a maze which made formed line. If line colored white, then the backgroud colored black and the otherwise. The problem is how to get the shortest-path of line maze by using Backtracking algorithm. Backtracking algorithm is consists of two modes namely search mode and return mode. In search mode, the robot traveled from the starting point to the finish with the rule that the robot will give priority to turn left when encounter crossroads. Codes are generated each robot encounter crossroads, In return mode, the robot has been running from the start to the finish with the shortest path. The shortest path is obtained from the codes that have been converted. Based on the experimental conversion program that has been done, it is necessary in order to obtain a reliable formulation desired results.
DAFTAR ISI
DAFTAR GAMBAR xii
DAFTAR LAMPIRAN xii
BAB 1 PENDAHULUAN
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 3
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metodologi Penelitian 3
1.7 Sistematika Penulisan 4
BAB 2 LANDASAN TEORI 5
2.1 Sejarah Robot 5
2.2 Perkembangan Robot 5
2.3 Robot Maze Solving 7
2.4 Perangkat Keras 8
2.4.1 Mikrokontroler ATmega32 8 2.4.2 Konfigurasi Pin AVR ATmega32 10
2.4.3.1 Photo Dioda 12 2.4.3.2 Cara Kerja Sensor Garis 13
2.4.4 Aktuator 14
2.4.4.1 Motor DC 14
2.4.4.2 Driver Motor 15
2.4.4.3 PWM 16
2.4.5 Catu Daya 17
2.5 Bahasa Pemograman Mikrokontroler 18 2.5.1 Jenis-jenis Bahasa Pemograman 18
2.5.2 BASCOM AVR 18
2.6 Algoritma Backtracking 20
BAB 3 ANALISIS DAN PERANCANGAN ALAT
3.1 Analisis Masalah 21
3.2 Analisis Algoritma 24
3.2.1 Algoritma Backtracking 24
3.3 Flowchart Algoritma 28
3.4 Analisi Kebutuhan 30
3.4.1 Kontrol PID 30
3.4.2 Rangkaian H-Bridge 32
3.4.3 Rangkaian Regulator 35
3.4.4 Rangkaian Sensor Priximity 36
3.5 Diagram Blok 38
3.6 Perancangan Mikrokontroler ATmega 32 39 BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 Komponen Sistem pada Robot ine Mize Solving 41 4.1.1 Spesifikasi Prangkat Keras 41 4.1.2 Spesifikasi Prangkat Lunak 42
4.1.3 Brainware 43
4.2 Pengujian Mikrokontroler ATmega 32 43 4.3 Pengujian Sensor Proximity 44
4.4 Pengujian Backtracking 44
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan 49
5.2 Saran 50
DAFTAR PUSTAKA 51
DAFTAR TABEL
Hal.
2.1 Fungsi Khusus Port B 11
2.2 Fungsi Khusus Port C 11
2.3 Fungsi Khusus Port D 12
3.1 Tabel Kebenaran I/O 33
3.2 Hubungan Nilai PWM dengan Kecepatan Motor 34
DAFTAR GAMBAR
Hal.
2.1 Jalur Berupa Garis dan Jalur Berupa Dinding 8
2.2 Robot Mize Solving 8
2.3 Modul AVR ATmega32 9
2.4 Konfigurasi Pin ATmega32 10
2.5 Mekanisme Pemantulan Cahaya Sensor Garis 13
2.6 Ilustrasi Kerja Sensor Garis 13
2.7 Motor DC 15
2.8 IC L293D dan IC L298D 15
2.9 Ilustrasi Prosentasi PWM 16
2.10 Lithium Polymer 1300mA 17
2.11 Tampilan Jendela Baskom AVR 19 2.12 Tampilan Simulasi Baskom AVR 20 3.1 Penerapan Algoritma Backtracking pada Labirin Garis 26 3.2 Shortes Way Robot Line Mize Solving 27 3.3 Flowchart Algoritma Backtracking 29 3.4 Ilustrasi Robot dalam Kondisi Stabil dan Tidak Stabil 30
3.5 Ilustrasi Proses PID 31
3.6 Rangkaian Habrid 32
3.7 Rangkaian Regulator 35
3.8 Sensor Proximity 36
3.9 Rangkaian Sensor Proximity 37
3.10 Diagram Blok Rangkaian 38