Ada beberapa hal dalam pengembangan system yang harus diperhatikan sebelum akhirnya sampai pada langkah menjalankan program, antara lain perangkat keras (hardware), perangkat lunak (software) serta bagaimana akhirnya system dapat berjalan sesuai dengan program yang telah dibuat.
4.1.1. Perangkat Sistem
Perangkat yang dibutuhkan dalam pembuatan robot menghindari halangan
dengan menggunakan sensor Ultrasonic GH-311 ini termasuk dalam pembuatan
laporan adalah perangkat keras (hardware) dan perangkat lunak (software). Adapun perangkat keras yang digunakan dalam pengembangan sistem ini adalah :
a. Laptop Intel Core 2 Duo 2,16 GHz (Giga Heartz) b. RAM 512 MB (Mega Byte)
c. Hard Disk 160 GB (Giga Byte)
a. Program Code Vision AVR C Compiler Set up.exe b. Program AVR St udio416 Set up.exe
4.2. Prosedur Pemasangan
Ada beberapa cara yang harus dilakukan sebelum program dibuat dan dimasukkan ke dalam chip robot, yaitu :
a. Instal terlebih dahulu aplikasi Code Vision AVR C Compiler Set up.exe pada lapt op at au comput er, dengan cara sepert i Gambar 4.1 :
Gambar 4.1 Langkah 1 instalasi program
Gambar 4.2 Langkah 2 instalasi program
Setelah di double click, maka akan muncul seperti pada Gambar 4.2.
Kemudian klik OK.
Gambar 4.3 Langkah 3 instalasi program
Gambar 4.4 Langkah 4 instalasi program
Pilih I accept the agreement kemudian klik next.
Gambar 4.6 Langkah 6 instalasi program
Gambar 4.8 Langkah 8 instalasi program
Tunggu hingga proses installasi selesai.
Gambar 4.10 Langkah 10 instalasi program
Kemudian klik tombol Finish untuk mengahiri proses installasi program.
b. Setelah selesai menginstal maka tahap selanjutnya adalah pembuatan program melalui Code Vision AVR.
dengan cara memilih meni yang terdapat pada aplikasi Code Vision AVR atau dengan cara menekan shortcut tombol F9 yang terdapat pada keyboard untuk mengetahui apakah program yang dibuat terdapat error atau tidak.
Gambar 4.12 Run atau Compile program
c. Setelah melakukan Run program, kita data mengetahui apakah program
yang kita buat terdapat error atau tidak. Pada Gambar 4.13 akan
Gambar 4.13 Error program
d. Jika dalam program tidak terdapat kesalahan atau error terlebih kita compile program yang berekstensi .C ke .HEX, kita dapat memilih menu yang sudah ada pada aplikasi tersebut untuk meng-compile atau dengan menekan tombol F9 pada keyboard.
Gambar 4.14 Compile program
e. Setelah selesai membuat dan mengconvert pemograman ke dalam bentuk
file .HEX, selanjutnya adalah mengirim / mengunduh file .HEX tersebut ke dalam Mikrokontroller ATMega16 yang telah terpasang pada system minimum. Pertama kita jalankan program lunak AVR St udio416 Set up.exe
Gambar 4.15Tampilan program
f. Tahap berikutnya pemilihan target IC Dialog Device
Pada tahapan ini akan dibahas menganai implementasi program yang telah dibuat untuk robot, dari perancangan robot yang telah dibuat sebelumnya. Langkah pertama yang harus dilakukan dalam pembuatan program adalah mendeklarasikan semua fungsi, delay perintah ke perintah yang lain, dan semua port pada mikrokontroler yang digunakan sebagai input dan output dari program yang akan kita susun. Berikut
adalah potongan program yang merupakan penentuan port pada mikrokontroller
dalam membaca perintah sebelum masuk ke dalam perintah utama.
Setting waktu delay belok kanan jika Ultrasonic dihalangi oleh benda, dalam detik
Letak port dan pin pada lampu LED
Letak port dan pin pada Motor Servo
Letak port dan pin pada tombol 3 dan 4
Deklarasi untuk tombol Power-On DELAYUS_C 2 LED1_P PORTA.3 LED2 P PORTA.4 SERVO1_P PORTC.4 SERVO2 P PORTC.5 BUTTON3_P PINC.0 BUTTON4 P PIND.7 M ODE_M =IDLE_M D;
Deklarasi untuk Motor Servo
Deklarasi untuk tombol 3 dan 4
Deklarasi untuk lampu LED
Deklarasi untuk sensor Ultrasonic
Setelah proses deklarasi port yang ditentukan ke dalam mikrokontroller
selesai, langkah kedua adalah membuat program yang akan memfungsikan register dan port mikrokontroller untuk menjalankan dan meneruskan perintah kepada piranti pendukungnya. Berikut adalah potongan program dimana robot akan berjalan sesuai
SERVO1CTR_M =0; SERVO2CTR_M =0; SERVO1CTRM AX_M =0; SERVO2CTRM AX_M =0; SERVO1CTRDIR_M =0; SERVO2CTRDIR_M =0; SERVO1ON_F=0; SERVO2ON_F=0; SERVO1HI_F=1; SERVO2HI_F=1; BUTTON3_F=0; BUTTON4_F=0; LED1BLINK_F=0; LED2BLINK_F=0; US_F=0;
inisialisasi program di atas jika sensor mendekati sebuah rintangan.
Perintah untuk menentukan robot maju
Perintah untuk menentukan robot mundur
Perintah untuk menentukan robot berhenti
Perintah untuk menentukan robot pengecekan tombol
Perintah untuk menginterupsi delay pada tiap tombol
void servo1_forw ard (void)
void servo2_forw ard (void)
void servo1_backw ard (void)
void servo2_backw ard (void)
void servo1_st op (void)
void servo2_st op (void)
void check_but t on (void)
int errupt [TIM 0_COM P] void t imer0_comp_isr(void)
lampu LED dan tombol ketika 2 (dua) tombol yang berbeda ditekan.
4.4. Implementasi Robot
Pada tahap ini akan dibahas mengenai implementasi system dari perancangan robot yang telah dibahas sebelumnya.
Pada Gambar 4.17 akan di tunjukkan sebuah komponen-komponen yang
telah di rakit pada PCB robot.
Gambar 4.17 Rangkaian komponen kabel baterai ke PCB
Pada Gambar 4.17 memasang komponen kabel baterai ke PCB
Gambar 4.18 Rangkaian komponen kabel Motor Servo ke PCB
Setelah merangkai komponen-komponen pada PCB, tahap implementasi yang terakhir adalah menggabungkan rangkaian PCB pada Motor Servo dan juga kaki-kaki robot sebagai rangka dari robot itu sendiri. Maka dari itu robot ini membutuhkan beberapa perangkat tambahan agar robot menghindari rintangan dapat bergerak. Perangkat tambahan yang dibutuhkan antara lain baterai, Motor Servo, kabel pararel,
dan kaki-kaki robot. Pada Gambar 4.19 ditunjukkan sebuah gambar robot
Gambar 4.19 Robot Menghindari Rintangan
5.1. Pendahuluan
Pada bab ini akan dibahas mengenai pengujian dan analisa pada hardware
yang telah dirancang. Tujuannya dari pengujian dan analisa ini adalah untuk mengetahui apakah hardware tersebut telah berfungsi dengan benar dan sesuai rencana atau tidak. Pengujian dan analisa ditunjukan pada pengujian komponen - komponen yang terdapat pada robot serta pengujian robot menghindari rintangan itu sendiri.
5.2. Pengujian Alat
Berikut ini adalah pengujian alat atau komponen yang terdapat pada robot menghindari rintangan.
5.2.1. Pengujian Mikrokontroller ATMega16
Untuk menguji mikrokontroller ATMega16 yang telah berisi sebuah program, kita tinggal meletakkan ATMega16 tersebut pada socket yang telah dipasang pada PCB. Setelah itu tinggal member tegangan pada hardware sederhana sebesar +5V (volt) sampai dengan +6V.
Tujuan pengujian rangkaian sensor adalah untuk mendapatkan data karakteristik dari sensor Ultrasonic GH-311. Rangkaian sensor bertugas memberikan besaran tegangan masukan pada mikrokontroller, yang sebelumnya melewati
proses.inisialisasi dengan memanfaatkan rangkaian comparator pada sistem
operasional.
5.2.3. Pengujian Rangkaian Motor Servo
Pengujian yang dilakukan pada rangkaian Motor Servo dengan menggunakan transistor adalh untuk mengetahui apakah data dari mikrokontroller dapat diterima oleh rangkaian driver motor sehingga dapat menjalankan motor. Data tersebut berupa berupa keadaan arus logika tinggi dan rendah yang diatur melalui mikrokontroller. Arus logika tinggi dan rendahnya tersebut diwujudkan ke bentuk tegangan. Jika data dari mikrokontroller dapat masuk ke rangkaian motor servo maka dapat dipastika motor tersebut bekerja dengan baik, sehingga dapat menggerakkan robot sesuai dengan program yang diinginkan.
5.2.4. Pengujian Alat Secara Keseluruhan
Tujuan pengujian alat secara keseluruhan untuk mendapatkan hasil dan data-data secara keseluruhan dari awal rangkaian pendeteksi hambatan pada sensor hingga bekerjanya motor servo pada waktu robot dijalankan. Pengujian alat secara keseluruhan dapat dilakukan dengan adanya program yang telah tertanam pada
dan mampu menghindari rintangan, serta sensor Ultrasonic dan keseluruhan berupa bekerjanya motor yang semuanya diproses oleh mikrokontroller. Apabila sistem tidak bekerja sesuai dengan harapan, maka telah terjadi kesalahan pada sistem tersebut.
5.3. Pengujian Robot Menghindari Rintangan
Pada Gambar 5.1 akan ditunjukkan cara kerja robot secara keseluruhan, dari robot menghindari rintangan.
Gambar 5.1 Robot Saat Kondisi OFF
Robot masih dalam kondisi mati dan akan bisa di jalankan setelah tombol power pada robot dinyalakan secara manual.
Gambar 5.2 Robot Saat Kondisi ON
Pada saat kondisi ON robot mampu berjalan sesuai inputan user serta mampu menghindari rintangan yang berada di depannya. Robot akan berhenti jika tombol OFF pada robot dimatikan
Pada Gambar 5.3 menunjukan robot berjalan lurus tanpa ada halangan di depannya.
Gambar 5.3 Robot Saat Kondisi Berjalan Lurus
Pada saat robot tidak terhalang oleh sebuah rintangan yang berada di depannya, robot akan tetap berjalan lurus hingga robot menemukan sebuah rintangan
di depannya. Pada Gambar 5.4 adalah gerakan robot yang menghindari rintangan
Gambar 5.4 Gerakan robot menghindari rintangan tangan
Gerakan robot berbelok ke kanan untuk menghindari rintangan tangan
Gambar 5.5 Gerakan robot menghindari rintangan kursi kayu
Gambar 5.6 Gerakan robot menghindari rintangan plastik
Gerakan robot berbelok ke kanan untuk menghindari rintangan plastik
Gambar 5.7 Gerakan robot menghindari rintangan kertas
Gambar 5.8 Gerakan robot menghindari rintangan gabus
Gerakan robot berbelok ke kanan untuk menghindari rintangan gabus
Gambar 5.9 Gerakan robot menghindari rintangan batu
Gambar 5.10 Gerakan robot menghindari rintangan kaleng
Gerakan robot berbelok ke kanan untuk menghindari rintangan kaleng
Gambar 5.11 Gerakan robot menghindari rintangan tissue
Gambar 5.12 Gerakan robot menghindari rintangan album foto
Gerakan robot berbelok ke kanan untuk menghindari rintangan album foto
Gambar 5.13 Gerakan robot menghindari rintangan boneka
Gambar 5.14 Gerakan robot berbelok ke kiri menghindari rintangan tangan
Gerakan robot berbelok ke kiri untuk menghindari rintangan tangan
Gambar 5.15 Gerakan robot berbelok ke kiri menghindari rintangan kaki meja
Gambar 5.16 Gerakan robot berbelok ke kiri menghindari rintangan plastic
Gerakan robot berbelok ke kiri untuk menghindari rintangan plastik
Gambar 5.17 Gerakan robot berbelok ke kiri menghindari rintangan kertas
Gambar 5.18 Gerakan robot berbelok ke kiri menghindari rintangan gabus
Gerakan robot berbelok ke kiri untuk menghindari rintangan gabus
Gambar 5.19 Gerakan robot berbelok ke kiri menghindari rintangan batu
Gambar 5.20 Gerakan robot berbelok ke kiri menghindari rintangan kaleng
Gerakan robot berbelok ke kiri untuk menghindari rintangan kaleng
Gambar 5.21 Gerakan robot berbelok ke kiri menghindari rintangan tissue
Gambar 5.22 Gerakan robot berbelok ke kiri menghindari rintangan album foto
Gerakan robot berbelok ke kiri untuk menghindari rintangan album foto
Gambar 5.23 Gerakan robot berbelok ke kiri menghindari rintangan boneka
Gambar 5.24 Gerakan robot berbelok ke kiri menghindari empat rintangan
Gerakan robot berbelok ke kiri untuk menghindari empat rintangan
Gambar 5.25 Gerakan robot berbelok ke kanan menghindari empat rintangan
Gambar 5.26 Gerakan robot berjalan mundur
Gerakan robot berjalan mundur
Gambar 5.27 Gerakan robot berjalan mundur dan berbelok ke kiri
Gambar 5.28 Gerakan robot berjalan mundur dan berbelok ke kanan
Gerakan robot berbelok mundur ke kanan untuk menghindari rintangan
Pada saat robot terhalang oleh rintangan baik berupa tangan maupun sebuah benda yang berada di depannya, robot akan bereaksi menghindari rintangan tersebut dengan berbelok kearah kanan maupun berbelok kearah kiri. Selain itu robot juga dapat berjalan mundur dan akan berhenti jika tombol off dimatikan serta menekan tombol reset pada robot.
Tabel 5.1 Uji coba Ultrasonic pada robot
Sensor Arah Gerakan Robot Keterangan Status
Ultrasonic GH-311
Maju, delay, belok kanan, delay, maju
Terhalang oleh tangan Berhasil
Terhalang oleh benda (kaki meja)
Berhasil
Terhalang oleh plastik Berhasil
Terhalang oleh kertas Berhasil
Terhalang oleh gabus Berhasil
Terhalang oleh batu Berhasil
Terhalang oleh kaleng Berhasil
Terhalang oleh tisue Berhasil
Terhalang oleh album foto
Terhalang oleh boneka
Berhasil
Maju, delay, belok kiri, delay, maju
Terhalang oleh tangan Berhasil
Terhalang oleh benda (kaki meja)
Berhasil
Terhalang oleh plastik Berhasil
Terhalang oleh kertas
Berhasil Terhalang oleh gabus
Berhasil Terhalang oleh batu
Berhasil Terhalang oleh kaleng
Berhasil Terhalang oleh tisue
Berhasil Terhalang oleh album
foto Berhasil
Terhalang oleh
Mundur, delay, belok kiri, delay, mundur Berjalan mundur, terhalang oleh rintangan, ke kiri Berhasil
Mundur, delay, belok kanan, delay, mundur
Berjalan mundur, terhalang oleh rintangan, ke kanan
Berhasil
6.1. Kesimpulan
Dari hasil uraian yang telah digambarkan, baik secara teori maupun berdasarkan hasil-hasil pengujian yang telah dilakukan pada Tugas Akhir ini, maka sapat diambil kesimpulan sebagai berikut :
Komponen terpenting yang dipergunakan pada Tugas Akhir Robot Menghindari Rintangan adalah dengan menggunakan salah satu jenis Mikrokontroller ATMega16. Dengan menggunakan Mikrokontroller ATMega16 tersebut gerak laju robot tersebut secara otomatis sesuai dengan program yang telah diinputkan ke dalam chip robot.
6.2. Saran
Dengan adanya kekurangan dalam kinerja dari robot menghindari rintangan ini, banyak hal-hal yang perlu dilakukan untuk mendapatkan system yang lebih baik.
a. Untuk sensor robot dikembangkan dengan penditeksian sebuah benda
yang berada di depannya, misalnya dipasang sensor Ultrasonic GH-311. b. Untuk gerak robot dapat dikembangkan dengan pengatur gerak / remote,
pada sebuah kontes robot, sehingga robot ini dapat dikembangkan menjadi robot yang bergerak dengan menggunakan sebuah sensor yang dapat mendeteksi benda, dan dapat juga robot ini dijadikan sebuah robot yang dapat membantu meringankan pekerjaan manusia di kehidupan sehari-hari terutama dalam sebuah penjelajahan (explorasi).
[1]. Chritianto Tjahyadi, http://christiantotjahyadi.wordpress.com/2010/10/13/motor-servo-standard-hs311/ (Diakses tanggal 05 Mei 2011).
[2]. Endra, P, 2006,Robotika: Desain Kontrol dan kecerdasan buatan,AndiOffset, Yogyakarta.
[3]. Hadi Nugroho, Laporan Unversitas Kristen Petra,
http://www.scribd.com/doc/46508765/Tutorial-Robot (Diakses tanggal 05 Mei 2011) [4].Mokh.Sholihul Hadi, 2004, Mengnal Mikrokontroler AVR ATMega16, Ilmu komputer.com, Jakarta
[5]. Noname, http://blog.indorobotika.com/tag/servo (Diakses tanggal 05 Mei 2011) [6]. Noname, http://devilzc0de.org/forum/thread-3804.html (Diakses tanggal 05 Mei 2011)
[7]. Noname, Laporan Universitas Sumatra Utara,
repository.usu.ac.id/bitstream/123456789/21370/4/Chapter%20 II.pdf (Diakses tanggal 05 Mei 2011)