Ditulis oleh
Finka Diana 15-2014-041
Kelas : B
Puji dan syukur saya ucapkan ke hadirat Allah swt, yang telah melimpahkan rahmat
dan karunia-Nya sehingga penulis diberikan kemudahan dalam menyusun laporan
Pemrograman Robomind.
Laporan ini disusun dengan berbagai sumber untuk membantu dalam menyelesaikan
salah satu tugas mata kuliah Pemrograman Robot Cerdas berdasarkan waktu yang telah
ditetapkan. Oleh karena itu, penulis mengucapkan terimakasih kepada semua pihak yang telah
membantu dalam penyusunan laporan ini.
Penulis menyadari bahwa masih banyak kekurangan yang mendasar pada laporan ini.
Oleh karena itu, kritik dan saran yang dapat membangun sangat penulis harapkan untuk
penyempurnaan laporan ini.
Akhir kata semoga laporan ini dapat memberikan manfaat bagi kita semua.
Penulis
i
Daftar Isi
Kata Pengantar ........................................................................................................................... i
Daftar Isi .................................................................................................................................... ii
Daftar Gambar .......................................................................................................................... iv
Daftar Tabel............................................................................................................................... v
Daftar Kode Program ............................................................................................................... vi
BAB I PENDAHULUAN ......................................................................................................... 1
1.1 Latar Belakang Masalah .................................................................................................. 1
1.2 Rumusan Masalah ........................................................................................................... 1
1.3 Tujuan.............................................................................................................................. 2
1.4 Batasan Masalah .............................................................................................................. 2
1.5 Sistematika Penulisan ...................................................................................................... 2
ii
DAFTAR GAMBAR
iii
DAFTAR TABEL
iv
BAB I
PENDAHULUAN
Dalam Bab I ini, akan dijelaskan pendahuluan pada proses pembuatan program robomind.
Pendahuluannya terdiri dari latar belakang, rumusan masalah, tujuan, batasan masalah dan
sistematika penulisan.
1
1.2 Rumusan Masalah
Adapun masalah yang dirumuskan laporan ini adalah
Bagaimana proses pembuatan program simulasi RoboMind pada lingkungan
terbuka.
Bagaimana proses pembuatan program simulasi RoboMind pada lingkungan
tertutup.
Bagaimana proses pembuatan program simulasi RoboMind menggunakan sensor
dan tanpa sensor
1.3 Tujuan
Adapun tujuan dari laporan ini adalah
Menjelaskan cara proses pembuatan program simulasi RoboMind pada lingkungan
terbuka
Menjelaskan cara proses pembuatan program simulasi RoboMind pada lingkungan
tertutup.
Menjelaskan cara proses pembuatan program simulasi RoboMind menggunakan
sensor dan tanpa sensor
2
1.5 Sistematika Penulisan
Sistematika penulisan pada laporan ini adalah
BAB I PENDAHULUAN
Bab ini berisikan penjelasan mengenai latar belakang masalah, rumusan masalah,
tujuan, batasan masalah dan sistematika penulisan.
BAB II PEMROGRAMAN ROBOMIND
Bab ini menjelaskan mengenai gambaran umum, spesifikasi robot dan pemrograman,
serta pembuatan workspace(map).
BAB III MATERI PEMROGRAMAN
Bab ini menjelaskan mengenai rancangan dan implementasi pada aplikasi RoboMind
dalam pergerakkan robot dilingkungan terbuka dan tertutup.
BAB IV PENUTUP
Bab ini berisikan penjelasan mengenai kesimpulan, kendala dan saran dari hasil
pembuatan program simulasi RoboMind.
3
BAB II
PEMROGRAMAN ROBOMIND
Pada Bab ini, akan dijelaskan gambaran umum, spesifikasi robot dan pemrograman,
serta pembuatan workspace (MAP).
Secara mendasar robot dapat diartikan sebagai alat mekanik yang dapat melakukan
tugas fisik, baik menggunakan kontrol dari manusia, maupun menggunakan program yang
sudah ditanam terlebih dahulu pada robot agar dapat melaukan atau mengerjakan sesuatu hal.
Istilah robot berawal bahasa Cheko yaitu robota yang berarti pekerja yang tidak
mengenal lelah dan bosan. Robot biasanya digunakan untuk tugas yang berat, berbahaya dan
pekerjaan yang berulang-ulang.
Dalam bahasan kali ini kita akan memperkenalkan RoboMind yang akan membantu
pengguna dalam mempelajari cara kerja dan memahami logika sederhana dari cara kerja robot
yang sering dijumpai saat ini. Robomind adalah sebuah game opensource tentang bagaimana
mengendalikan pergerakan sebuah robot melalui perintah-perintah menggunakan bahasa
pemrograman. RoboMind mengguunakan bahasa populer seperti basic dan c ini sangat mudah
untuk mempraktikannya, didalamnya terdapat simulasi arena dan percobaan pergerakkan robot
mobile, bahkasn robot dapat mengamil objek dan meletakkannya kembali, ada juga menandai
track yang telah dilewati dengam cat dengan pilihan map atau arena dapat dimofikasi dari yang
mudah hingga yang sulit.
Dengan menggunakan software seperti RoboMind tentu saja akan membantu pengguna
dalam membiasakan diri dengan dasar-dasar ilmu komputer dengan mencoba membuat
program robot sendiri.
Pada sub bab ini akan menjelaskan spesifikasi robot dan pemrograman, yang
didalamnya terdpat juga workspace dan perintah perintah dasar yang digunakan pada
RoboMind.
4
2.2.1 Spesifikasi Robot pada RoboMind
1. Menu File
5
Translate Script Menerjemahkan program kedalam bahasa
lain
Open map Membuka file peta/lapangan permainan
Settings Pengaturan fungsi-fungsi RoboMind
Exit Keluar dari software RoboMind
6
3. Menu Bar [View]
7
Tabel 2.4 Keterangan fitur Menu bar [run]
Tabel Keterangan fungsi
Execute Menjalankan robot sesuai dengan
program yang dibuat
Step Menjalankan robot secara langkah demi
langkah
Pause Menghentikan eksekusi gerak robot
untuk sementara
Stop Menghentikan eksekusi gerak robot
Remote control Panel pengendalian robot secara manual
Pada Tabel 2.4 terdapat tombol remote control yang berfungsi sebagai panel
pengendalian robot secara manual. Maka akan dijelaskan secara rinci yang terdapat didalam
remote control.
8
5. Menu Bar [help]
Teks editor (panel script) digunakan untuk menulis program pengendalian robot.
9
7. Panel Lapangan permainan (world)
Untuk keperluan uji coba pergerakkan robot dengan program yang telah dibuat, RoboMoind
telah menyediakan panel lapangan pemainan seperti pada gambar 2.8.
Lapangan permainan ini dapat diubah sesuai dengan yang di inginkan, yaitu dengan
langkah tekan menu File >> Open map >> namamap.map
Sebuah bahasa pemrograman khusus pada RoboMind telah dibuat yang terdiri dari satu
set aturan ringkas dan ditunjukkan untuk pemrograman robot yang bisa pula disisipkan aturan-
aturan lain seperti struktur kendali percabangan(IF, IF-ELSE, IF-ELSEIF) dan perulangan (For,
While, Do-While).
Terdapat beberapa perintah yang sering digunakan pada RoboMind untuk mengatur
gerakan robot, seperti yang terlihat pada tabel 2.1.
10
Right() Perintah digunakan untuk robot belok kanan
90o
11
Sedangkan untuk struktur pemrograman untuk bentuk IF, berikut ini sintaksnya:
If (syarat)
{
Instruksi
}
Atau bisa juga dengan :
If (syarat)
{
Instruksi
}
Else {
Intruksi
}
Pada RoboMind pun mempunyai looping untuk pemrogramannya, ada beberapa bentuk
looping dalam RoboMind, contohnya yaitu:
Repeat(n)
Intruksi
Bentuk looping tersebut digunakan untuk mengulangi instruksi sampai dengan n kali
(sama dengan struktur for dalam pascal)
right()
forward(8)
repeat()
{
if(frontIsWhite()){
forward(1)
}
12
else if(rightIsWhite()){
right()
}
else if(leftIsWhite()){
left()
}
else if(frontIsObstacle()){
end
}
}
Apabila kurang familiar dengan bahasa pemrograman atau yang menggunakan script,
bisa langsung mencoba menggerakan robot dengan bantuan remote yang bisa di akses pada
menu Run dan secara otomatis ketika robot digerakkan dengan remote, script akan muncul
sebagai perintah yang seharusnya digunakan sebagai perintah atau command untuk
menggerakan.
Pembuatan workspace ini bertujuan untuk area robot. Terdapat bagian bagian peta yang
akan dijelaskan, yaitu
a. Bagian Map
b. Bagian Paint
c. Bagian Extra
Bagian Map :
Memiliki objek-objek :
13
b. Empty space (ruang kosong)
c. Beacons (suar), yang dinyatakan dengan asteriks (*)
d. Robot, dimana posisi awal dinyatakan dengan tanda @
A.2 Bagian Paint
Bagian Paint (cat) :
Diawali dengan pernyataan paint :
Dinyatakan dengan format : (warna, jenis, koord_x, koord_y)
a. warna, yang disediakan adalah b (black, hitam) dan w (white, putih)
b. jenis coretan (stroke), yang disediakan adalah :
b.1 Titik (.) dengan ukuran 1 kotak (1 block)
b.2 Garis horizontal (-) dengan ukuran 2 kotak (2 blocks) ke kanan
b.3 Garis vertikal (|) dengan ukuran 2 kotak (2 blocks) ke bawah
c. koord_x , koord_y adalah posisi awal mulai coretan pada koordinat x dan y
A.3 Bagian Extra
Bagian Extra :
Diawali dengan pernyataan extra :
Dinyatakan dengan format : <nama>@x,y
a. nama adalah jenis objek, dan objek yang disediakan adalah :
i. disco@x,y dengan objeknya ubin yang dianimasikan
ii. palm@x,y dengan ukuran ubin 3x3 dimana objeknya adalah pohon palem
bersama bayangan dan batangnya yang berada pada posisi (x+1 , y+1)
iii. tree@x,y dengan ukuran ubin 3x3 dimana objeknya adalah pohon yang
beradapada posisi (x+1 , y+1)
14
Gambar 2.9 Bagian-bagian peta dan objek-objek yang dapat dimunculkan
B. Langkah pembuatan peta
Pembuatan peta dapat di lakukan dengan:
- Secara gafis, melalui web RoboMind
- Dalam bentuk file teks
- Menggunakan buit-in map generator
Dalam penjelasan ini hanya dibahas mengenai pembuatan peta dalam bentuk file teks
(skrip) dan built-in generator
B.1 Peta dalam format file teks
Langkah -langkah nya yaitu :
- Buka aplikasi notepad
- Tulis #map: def dibawah baris
- Tulis bagian-bagian peta yaitu paint: , extra: , dan map :
- Tulis objek sesuai dengan yang didefinisikan pada ketiga jenis bagian peta tersebut
- Simpan file peta
- Buka aplikasi RoboMind
15
- Salin (copy) isi file peta (skrip) dan tempel (paste) di bagian editor (kiri dan bawah
menu)
- Pilih menu Run dan tekan tombol Execute
16
BAB III
MATERI PEMROGRAMAN
Pada bab ini menjelaskan mengenai rancangan dan implementasi pada aplikasi RoboMind
dalam pergerakkan robot dilingkungan terbuka, tertutup, dan menggunakan sensor.
3.1 Pergerakkan Robot pada Lingkungan Terbuka
Pada sub bab ini menjelaskan mengenai pergerakan robot yang di lakukan pada lingkungan
terbuka. Tujuannya adalah melakukan pergerakan robot secara terbuka dan misinya adalah
menggerakkan robot ke ujung sebrang dari lokasi robot berasal (posisi awal) secara bebas.
Untuk membuat simulasi program RoboMind ada beberapa yang harus di lakukan dan di
jelaskan pada sub bab berikutnya.
7 kotak
7 kotak
17
3.4.2 Rancangan dan Pergerakan Aksi Robot
Berikut akan di perlihatkan rancangan dan pergerakan aksi robot pada gambar 3.2.
3
2
18
3.4.4 Hasil Program
Pada sub bab ini akan dijelaskan mengenai perbandingan rancangan dan hasil program,
serta implementasi program(coding) sesuai algoritma yang dibuat berdasarkan rencana
pergerakkan dan aksi robot pada lingkungan terbuka.
Untuk menjelaskan hasil dari program simulasi robot pada lingkungan terbuka ini akan
dilakukan perbandingan dari perbuatan dan hasil jadi. Berikut perbandingan yang dilakukan.
Pembuatan workspace
#map : area (7,7)
7kotak
kotakot
ak
7 kotak
Kode program
19
Right repeat(6){
forward(1) Atau forward(6) forward(1)
forward(1) }
forward(1) left
forward(1) forward(3)
forward(1)
forward(1)
Left
forward(1) Atau forward(3)
forward(1)
forward(1)
20
3.4.2 Rancangan Pergerakan
Pergerakan robot yang akan dilakukan yaitu robot harus bergerak dari ujung kiri bawah
ke ujung kanan atas serta mengambil beacon melalui jalur yang berbelok-belok lalu kembali
lagi ke tempat semula seperti terlihat pada gambar berikut:
21
Perancangan workspace
Hasil workspace
22
Kode program
23
forward(1)
Left
forward(1) Atau Forward(2)
forward(1)
Right
forward(1) Atau Forward(4)
forward(1)
forward(1)
forward(1)
Right
forward(1) Atau Forward(9)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
Pick up
Forward(1)
24
Gambar 3.7 rancangan workspace
25
3.3.3 Rancangan Program
a. Algoritma
b. Flowchart
3.3.4 Hasil Program
Pada sub bab ini akan dijelaskan mengenai perbandingan rancangan dan hasil program,
serta implementasi program(coding) sesuai algoritma yang dibuat berdasarkan rencana
pergerakkan dan aksi robot pada area lingkungan terbuka.
Untuk menjelaskan hasil dari program simulasi robot pada lingkungan terbuka ini akan
dilakukan perbandingan dari perbuatan dan hasil jadi. Berikut perbandingan yang dilakukan.
Pembuatan workspace
26
Kode program
forward(1) right
Right repeat(2){
forward(1) }
forward(1) right
forward(1) repeat(4){
Left forward(1)
forward(1) left
repeat(2){
Left
forward(1)
forward(1) Atau Forward(4)
}
forward(1)
left
forward(1)
repeat(4){
forward(1)
forward(1)
Right
27
forward(1) Atau Forward(2) }
forward(1) right
right repeat(2){
forward(1) Atau Forward(2) forward(1)
forward(1) }
Left right
repeat(2){
forward(1)
}
left
}
28
3.4.2 Rancangan Pergerakan
Pergerakan yang akan dihasilkan adalah menyusuri jalur terpendek untuk mencapai
posisi beacon berada untuk mengambil dan memindahkan posisi beacon dan memindahkan
posisi beacon jarak satu kotak seperti ditunjukan di Gambar
29
3.4.3 Rancangan Program
a. Algoritma
b. Flowchart
3.4.4 Hasil Program
Pada sub bab ini akan dijelaskan mengenai perbandingan rancangan dan hasil program,
serta implementasi program(coding) sesuai algoritma yang dibuat berdasarkan rencana
pergerakkan dan aksi robot pada area lingkungan tertutup Area 10x10xakhir nrp
Untuk menjelaskan hasil dari program simulasi robot pada lingkungan terbuka ini akan
dilakukan perbandingan dari perbuatan dan hasil jadi. Berikut perbandingan yang dilakukan.
Pembuatan workspace
30
Hasil workspace
Kode program
forward(1) }
putDown
left if(frontIsBeacon){
left pickUp
forward(1) }
if( frontIsWhite){
31
Left putDown
forward(1) Atau Forward(2)
forward(1) }
right if(frontIsBlack){
left forward(1)
left break
forward(1) Atau Forward(3) end
forward(1) }
forward(1) }
pickup
forward(1) Atau Forward(4)
forward(1)
forward(1)
forward(1)
putDown
left
left
forward(1) Atau Forward(3)
forward(1)
forward(1)
Right
forward(1) Atau Forward(2)
forward(1)
Right
forward(1) Atau Forward(4)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
32
Right
forward(1) Atau Forward(2)
forward(1)
right
left
left
forward(1) Atau Forward(2)
forward(1)
Left
forward(1) Atau Forward(8)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
Left
forward(1) Atau Forward(2)
forward(1)
Right
forward(1) Atau Forward(2)
forward(1)
Left
forward(1) Atau Forward(4)
forward(1)
forward(1)
forward(1)
right
forward(1)
pickup
33
forward(1) Atau Forward(3)
forward(1)
forward(1)
left
putDown
left
forward(1) Atau Forward(5)
forward(1)
forward(1)
forward(1)
forward(1)
pickUp
forward(1)
right
left
left
forward(1) Atau Forward(2)
forward(1)
left
right
right
forward(1) Atau Forward(2)
forward(1)
left
right
right
forward(1) Atau Forward(2)
forward(1)
left
forward(1)
putDown
right
34
right
forward(1)
right
forward(1) Atau Forward(2)
forward(1)
Left
forward(1) Atau Forward(2)
forward(1)
left
forward(1) Atau Forward(2)
forward(1)
right
forward(1) Atau Forward(2)
forward(1)
Right
forward(1) Atau Forward(2)
forward(1)
forward(1)
forward(1)
right
forward(1) Atau Forward(2)
forward(1)
right
left
left
forward(1) Atau Forward(2)
forward(1)
left
right
right
forward(1) Atau Forward(8)
forward(1)
forward(1)
35
forward(1)
forward(1)
forward(1)
forward(1)
forward(1)
left
right
right
forward(1) Atau Forward(2)
forward(1)
left
right
right
forward(1) Atau Forward(2)
forward(1)
left
forward(1) Atau Forward(2)
forward(1)
left
right
right
forward(1)
pickUp
forward(1)
right
forward(1) Atau Forward(2)
forward(1)
left
forward(1)
putDown
right
right
forward(1)
36
left
right
right
forward(1) Atau Forward(2)
forward(1)
left
forward(1) Atau Forward(2)
forward(1)
left
right
right
forward(1) Atau Forward(5)
forward(1)
forward(1)
forward(1)
forward(1)
left
forward(1) Atau Forward(2)
forward(1)
right
right
37
BAB IV
PENUTUP
Dalam Bab ini, akan dijelaskan penutup pada proses pembuatan simulasi RoboMind.
Penutupnya terdiri dari kesimpulan, kendala dan saran.
4.1 Kesimpulan
Pada laporan ini telah dilakukan penjelasan mengenai cara proses simulasi program
RoboMind baik diarea terbuka, tertutup , maupun menggunakan sensor.
4.2 Kendala
Kendala dalam membuat cara proses simulasi program RoboMind adalah:
a. Terbatasnya ilmu pengetahuan serta wawasan untuk membuat proses simulasi program
RiboMind.
4.3 Saran
Diharapkan laporan ini dapat memberikan informasi kepada pembaca tentang pembelajaran
cara proses simulasi program RoboMind. Laporan ini masih jauh dari sempurna, oleh karena
itu diharapkan kritik dan saran dari semua pihak yang bersifat membangun demi kesempurnaan
laporan ini.
38
39