perancangan algoritma penentuan lokasi dan penempatan...
TRANSCRIPT
PERANCANGAN ALGORITMA PENENTUAN LOKASI DAN PENEMPATAN
POSISI ROBOT HUMANOID SOCCER R2C-R9 DI AREA LAPANGAN
KONTES ROBOT SEPAKBOLA INDONESIA
oleh
Oei Kurniawan Utomo
NIM: 612011004
Skripsi
Untuk melengkapi salah satu syarat memperoleh
Gelar Sarjana Teknik
Program Studi Teknik Elektro
Fakultas Teknik Elektronika dan Komputer
Universitas Kristen Satya Wacana
Salatiga
Agustus 2015
i
INTISARI
Tugas akhir ini bertujuan untuk merancang algoritma penentuan lokasi dan
penempatan posisi robot humanoid soccer R2C-R9 di lapangan dengan ukuran 900 cm
x 600 cm untuk menghadapi Kontes Robot Sepak Bola Indonesia. Robot harus dapat
menguasai bola di dalam lapangan dengan ukuran yang ditentukan.
Algoritma penentuan lokasi dan penempatan posisi menggunakan parameter
ketebalan tiang gawang, nilai kompas, dan nilai servo kepala robot. Tiang gawang
dideteksi menggunakan metode pusat massa. Lebar tiang gawang yang terdeteksi
dianalisis dengan prinsip pembentukan gambar pada kamera untuk menentukan jarak
robot dan tiang gawang. Sudut tilt kepala robot digunakan untuk menentukan jarak
robot dan bola dengan rumus tangen. Jarak robot dengan objek tiang gawang dan bola
diproses dengan selisih sudut pan kepala dan kompas robot menggunakan rumus-rumus
geometri untuk menentukan koordinat robot dan bola di lapangan dalam koordinat
kartesius.
Algoritma penentuan lokasi dan penempatan posisi memiliki ralat 15% dari jarak
robot dan tiang gawang, 27,94% dari jarak robot dan bola karena pembulatan nilai pixel
dan sudut tilt kepala. Ralat pada selisih sudut pan kepala dan kompas sebesar 5,74° saat
robot menghadap ke gawang, dan 5,48° saat robot menghadap ke bola. Rata-rata waktu
komputasi yang dibutuhkan robot untuk menentukan lokasi diri sendiri di lapangan
adalah 85,33 milidetik, sedangkan rata-rata waktu komputasi yang dibutuhkan robot
untuk menentukan lokasi bola adalah 77,67 milidetik.
ii
ABSTRACT
An algorithm which is used to determine location and position was designed for
humanoid soccer robot R2C-R9. The robots have to be able to control the ball
effectively on the soccer field of Indonesian Robot Soccer Competition which has a size
of 900 cm x 600 cm.
Parameters used in the algorithm are goalpost’s thickness, compass value, and
robot’s head servo value. The goalpost is detected using Center of Gravity method.
Camera geometry is used to analyze the width of the goalpost detected for determining
the distance between the robot and the goalpost. The tilt angle of the robot’s head is
used to determine the distance between the robot and the ball using tangent formula.
The robot-goalpost and robot-ball distance is processed with the difference between pan
angle and compass value using geometrical formulas to determine the coordinates of the
robot and the ball in the Cartesian coordinates.
This algorithm has 15% error of robot-goalpost distance and 27.94% error of
robot-ball distance because pixel and tilt values are an integer. The error of pan-
compass’ differences is 5.74° when robot faces the goalpost and 5.48° when robot faces
the ball. Average of computational time required to determine the location of the robot
is 85.33 milliseconds and average of computational time required to determine the
location of the ball is 77.67 milliseconds.
iii
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa yang selalu
menyertai penulis selama menempuh pendidikan dari awal hingga penyelesaian tugas
akhir sebagai syarat kelulusan di Fakultas Teknik Elektronika dan Komputer
Universitas Kristen Satya Wacana.
Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada berbagai
pihak yang baik secara langsung maupun tidak langsung telah membantu penulis dalam
menyelesaikan tugas akhir ini:
1. Tuhan Yesus yang selalu memberkati, menyertai, dan memberikan segala yang
terbaik bagi penulis selama menempuh pendidikan S1 di FTEK UKSW hingga
selesai.
2. Papa Hwee Huang, Mama Henny Meriana, dan adik Airy Utomo tercinta
sebagai keluarga yang telah selalu mendidik, mendukung, dan mendoakan
penulis.
3. Bapak Saptadi Nugroho, M.Sc dan Bapak Daniel Santoso, M.S. sebagai
pembimbing I dan pembimbing II yang telah membimbing dan memberikan
saran serta masukan kepada penulis selama mengerjakan tugas akhir ini.
4. Keluarga besar Tim R2C yang selalu memberikan semangat dan mendukung
dalam melakukan riset, serta berjuang dalam suka dan duka selama
mempersiapkan Kontes Robot Indonesia.
5. Seluruh staff dosen, karyawan dan laboran FTEK yang memfasilitasi penulis
selama menempuh pendidikan S1 di FTEK UKSW.
6. Keluarga besar 2011, terutama Kurnia Sanjaya, Ivan Kurniawan, Silvester
Kristian, dan Marcel Frans Wijadi sebagai teman seperjuangan yang selalu
memberi dukungan kepada penulis.
7. Teman-teman FTEK, terutama Samuel Alvin Hutama dan Yohanes
Haryudanta Dwityatmaka, teman-teman kos, terutama Yonathan Ivan Kukuh
prakoso.
8. Berbagai pihak yang tidak dapat dituliskan satu persatu.
iv
Penulis menyadari bahwa tugas akhir ini masih jauh dari kata “sempurna”, oleh
karena itu penulis mengharapkan kritik dan saran dari pembaca sehingga tugas akhir ini
dapat berguna bagi kemajuan pendidikan FTEK UKSW dan riset tim R2C UKSW.
Salatiga, 13 Agustus 2015
Penulis
v
DAFTAR ISI
INTISARI .......................................................................................................................... i
ABSTRACT...................................................................................................................... ii
KATA PENGANTAR ..................................................................................................... iii
DAFTAR ISI..................................................................................................................... v
DAFTAR GAMBAR ..................................................................................................... viii
DAFTAR TABEL............................................................................................................. x
DAFTAR SIMBOL ......................................................................................................... xi
DAFTAR SINGKATAN ............................................................................................... xiii
BAB I PENDAHULUAN ................................................ Error! Bookmark not defined.
1.1.Tujuan .................................................................... Error! Bookmark not defined.
1.2.Latar Belakang ....................................................... Error! Bookmark not defined.
1.2.1.Pendahuluan .................................................... Error! Bookmark not defined.
1.2.2.Permasalahan ................................................... Error! Bookmark not defined.
1.3. Batasan Masalah.................................................... Error! Bookmark not defined.
1.4. Sistematika Penulisan ........................................... Error! Bookmark not defined.
BAB II DASAR TEORI .................................................. Error! Bookmark not defined.
2.1. Smartphone Android ............................................. Error! Bookmark not defined.
2.2. Mikrokontroler ATmega 324 ................................ Error! Bookmark not defined.
2.3. Modul Bluetooth ................................................... Error! Bookmark not defined.
2.4. Motor Servo .......................................................... Error! Bookmark not defined.
2.5. Pembentukan Gambar pada Kamera Lubang Jarum ........... Error! Bookmark not
defined.
2.5.1. Proyeksi Sebuah Titik pada Kamera .............. Error! Bookmark not defined.
2.5.2. Proyeksi Sebuah Garis pada Kamera ............. Error! Bookmark not defined.
2.6. Pemrograman OpenCV Android ........................... Error! Bookmark not defined.
2.7. Spesifikasi Lapangan ............................................ Error! Bookmark not defined.
vi
BAB III PERANCANGAN ............................................. Error! Bookmark not defined.
3.1. Sistem Instruksi dan Kontrol Robot ...................... Error! Bookmark not defined.
3.2. Desain Perangkat Keras ........................................ Error! Bookmark not defined.
3.2.1. Smartphone Android ...................................... Error! Bookmark not defined.
3.2.2. Mikrokontroler ATMega 324 dan Controller Servo KHR-3HV ........... Error!
Bookmark not defined.
3.2.3. Modul Bluetooth ............................................. Error! Bookmark not defined.
3.2.4. Motor Servo .................................................... Error! Bookmark not defined.
3.3. Pendeteksian Tiang Gawang Menggunakan Android dan OpenCv .............. Error!
Bookmark not defined.
3.4. Perhitungan Jarak Robot dan Gawang .................. Error! Bookmark not defined.
3.5. Penentuan Posisi Robot di Lapangan .................... Error! Bookmark not defined.
3.7. Penentuan Daerah Kerja Robot di Lapangan ........ Error! Bookmark not defined.
3.7.1. Algoritma Penempatan Posisi Menyerang Robot Penyerang ................. Error!
Bookmark not defined.
3.7.2. Algoritma Penempatan Posisi Bertahan Robot Penyerang . Error! Bookmark
not defined.
3.7.3 Algoritma Penempatan Posisi Robot Bek ....... Error! Bookmark not defined.
BAB IV HASIL PENGUJIAN DAN ANALISIS ........... Error! Bookmark not defined.
4.1. Pengujian Penentuan Lokasi ................................. Error! Bookmark not defined.
4.1.1. Pengujian Posisi Robot di Lapangan Mengacu pada Tiang Gawang Musuh
Secara Acak Kiri/Kanan ........................................... Error! Bookmark not defined.
4.1.2. Pengujian Posisi Bola terhadap Robot ........... Error! Bookmark not defined.
4.2. Pengujian Penempatan Posisi ................................ Error! Bookmark not defined.
4.2.1. Penempatan Posisi Menyerang Robot Penyerang ........ Error! Bookmark not
defined.
4.2.2. Penempatan Posisi Bertahan Robot Penyerang ............ Error! Bookmark not
defined.
4.2.3. Penempatan Posisi Robot Bek ........................ Error! Bookmark not defined.
vii
4.3. Pengujian Waktu Komputasi dalam Pengeksekusian Algoritma Penentuan Lokasi
...................................................................................... Error! Bookmark not defined.
4.3.1. Pengujian Waktu Komputasi dalam Pengeksekusian Algoritma Penentuan
Lokasi Robot di Lapangan........................................ Error! Bookmark not defined.
4.3.2. Pengujian Waktu Komputasi dalam Pengeksekusian Algoritma Penentuan
Penentuan Lokasi Bola Terhadap Robot .................. Error! Bookmark not defined.
BAB V KESIMPULAN DAN SARAN .......................... Error! Bookmark not defined.
5.1. Kesimpulan ........................................................... Error! Bookmark not defined.
5.2. Saran Pengembangan ............................................ Error! Bookmark not defined.
DAFTAR PUSTAKA ...................................................... Error! Bookmark not defined.
LAMPIRAN A ................................................................. Error! Bookmark not defined.
LAMPIRAN B ................................................................. Error! Bookmark not defined.
viii
DAFTAR GAMBAR
Gambar 2.1. Smartphone Android Sony Xperia Mini ST15i ........ Error! Bookmark not
defined.
Gambar 2.2. DF-Bluetooth V3 [6]. .................................. Error! Bookmark not defined.
Gambar 2.3. Motor servo Tower Pro MG90s. ................. Error! Bookmark not defined.
Gambar 2.4. Proses pembentukan gambar pada kamera lubang jarum. .................. Error!
Bookmark not defined.
Gambar 2.5. Representasi matematika dari pembentukan sebuah titik pada kamera.
......................................................................................... Error! Bookmark not defined.
Gambar 2.6. Representasi matematika dari pembentukan gambar pada kamera pada
bidang XZ. ....................................................................... Error! Bookmark not defined.
Gambar 2.7. Representasi kesebangunan antara titik Q, bidang gambar, dan pusat
proyeksi pada bidang XZ. ................................................ Error! Bookmark not defined.
Gambar 2.8. Representasi matematika dari pembentukan gambar pada kamera pada
bidang YZ. ....................................................................... Error! Bookmark not defined.
Gambar 2.9. Representasi kesebangunan antara titik Q, bidang gambar, dan pusat
proyeksi pada bidang YZ. ................................................ Error! Bookmark not defined.
Gambar 2.10. Representasi matematika dari pembentukan sebuah garis yang melewati
titik Q1 dan Q2 pada kamera. ........................................... Error! Bookmark not defined.
Gambar 2.11. Representasi matrix YUV 420. ................. Error! Bookmark not defined.
Gambar 2.12. Lapangan KRSBI. ..................................... Error! Bookmark not defined.
Gambar 3.1. Sistem instruksi dan kontrol robot. ............. Error! Bookmark not defined.
Gambar 3.2. Sensor orientasi smartphone Android. ........ Error! Bookmark not defined.
Gambar 3.3. Nilai kompas (yaw) yang digunakan [14]. .. Error! Bookmark not defined.
Gambar 3.4. Arah sudut pan dan tilt servo kepala robot [14]. ...... Error! Bookmark not
defined.
Gambar 3.5. Contoh pendeteksian tiang gawang dengan ptgMin=2 pixel dan htgMin=5 pixel
......................................................................................... Error! Bookmark not defined.
Gambar 3.6. Proyeksi lebar tiang gawang pada kamera yang akan dianalisis. ....... Error!
Bookmark not defined.
ix
Gambar 3.7. Pendeteksian sebuah objek bola menunjukkan lebar benda dan nilai pixel
yang berhubungan. ........................................................... Error! Bookmark not defined.
Gambar 3.8. Desain sistem koordinat lapangan KRSBI. . Error! Bookmark not defined.
Gambar 3.9. Penentuan koordinat relatif robot terhadap salah satu tiang gawang .. Error!
Bookmark not defined.
Gambar 3.10. Diagram alir algoritma menentukan lokasi robot ... Error! Bookmark not
defined.
Gambar 3.11. Penentuan jarak robot terhadap bola. ........ Error! Bookmark not defined.
Gambar 3.12. Penentuan koordinat relatif bola terhadap robot. .... Error! Bookmark not
defined.
Gambar 3.13. Diagram alir algoritma menentukan lokasi bola ..... Error! Bookmark not
defined.
Gambar 3.14. Proses pergantian kondisi pada robot penyerang .... Error! Bookmark not
defined.
Gambar 3.15. Proses pergantian kondisi pada robot bek . Error! Bookmark not defined.
Gambar 3.16. Robot yang menjalankan algoritma penyerang. ...... Error! Bookmark not
defined.
Gambar 3.17. Penempatan posisi menyerang robot penyerang. .... Error! Bookmark not
defined.
Gambar 3.18. Diagram alir algoritma penempatan posisi menyerang robot penyerang.
......................................................................................... Error! Bookmark not defined.
Gambar 3.19. Penempatan posisi bertahan robot penyerang. ........ Error! Bookmark not
defined.
Gambar 3.20. Diagram alir algoritma penempatan posisi bertahan robot penyerang.
......................................................................................... Error! Bookmark not defined.
Gambar 3.21. Robot yang menjalankan algoritma bek. .. Error! Bookmark not defined.
Gambar 3.22. Penempatan posisi robot bek. ................... Error! Bookmark not defined.
Gambar 3.23. Diagram alir algoritma penempatan posisi robot bek. ... Error! Bookmark
not defined.
Gambar 4.1. Pengambilan data untuk pengujian posisi robot di lapangan. ............. Error!
Bookmark not defined.
x
Gambar 4.2. Pengambilan data untuk pengujian posisi bola di lapangan. ............. Error!
Bookmark not defined.
Gambar 4.3. Pengambilan data untuk penempatan posisi menyerang robot penyerang
......................................................................................... Error! Bookmark not defined.
Gambar 4.4. Pengambilan data untuk penempatan posisi bertahan robot penyerang
......................................................................................... Error! Bookmark not defined.
Gambar 4.5. Pengambilan data untuk penempatan posisi robot bek .... Error! Bookmark
not defined.
Gambar 4.6. Screenshot tampilan dari Android Logcat... Error! Bookmark not defined.
Gambar B.1. Tampilan User Interface ............................ Error! Bookmark not defined.
Gambar B.2. Tampilan User Interface saat mendeteksi gawang .. Error! Bookmark not
defined.
Gambar B.3. Tampilan User Interface saat mendeteksi bola ........ Error! Bookmark not
defined.
xi
DAFTAR TABEL
Tabel 4.1. Hasil pengujian posisi robot di lapangan ........ Error! Bookmark not defined.
Tabel 4.2. Hasil perhitungan nilai j berdasarkan nilai pixel .......... Error! Bookmark not
defined.
Tabel 4.3. Hasil pengujian posisi bola terhadap robot ..... Error! Bookmark not defined.
Tabel 4.4. Hasil perhitungan nilai a berdasarkan nilai tilt ............. Error! Bookmark not
defined.
Tabel 4.5. Sebagian data dari Lampiran A tabel A.1 ....... Error! Bookmark not defined.
Tabel 4.6. Sebagian data dari Lampiran A tabel A.2 ....... Error! Bookmark not defined.
Tabel 4.7. Hasil penempatan posisi menyerang robot penyerang . Error! Bookmark not
defined.
Tabel 4.8. Hasil penentuan posisi bertahan robot penyerang ........ Error! Bookmark not
defined.
Tabel 4.9. Hasil penentuan posisi robot bek .................... Error! Bookmark not defined.
Tabel 4.10. Waktu komputasi penentuan lokasi robot di lapangan Error! Bookmark not
defined.
Tabel 4.11. Waktu komputasi penentuan lokasi bola ...... Error! Bookmark not defined.
Tabel A.1. Hasil pengujian posisi robot di lapangan ....... Error! Bookmark not defined.
Tabel A.2. Hasil pengujian posisi bola terhadap robot .... Error! Bookmark not defined.
Tabel A.3. Hasil pengujian jarak yang ditempuh robot selama melakukan proses
pemposisian diri selama 1 pertandingan (10 menit) tanpa adanya robot lawan ...... Error!
Bookmark not defined.
xii
DAFTAR SIMBOL
f fokus kamera (cm)
Q sebuah objek titik di dunia nyata
q proyeksi sebuah objek titik pada bidang gambar kamera
A koordinat objek titik Q di dunia nyata pada sumbu X (cm)
B koordinat objek titik Q di dunia nyata pada sumbu Y (cm)
C koordinat objek titik Q di dunia nyata pada sumbu Z (cm)
a koordinat proyeksi objek Q di bidang gambar kamera (q) pada sumbu X (cm)
b koordinat proyeksi objek Q di bidang gambar kamera (q) pada sumbu Y (cm)
c koordinat proyeksi objek Q di bidang gambar kamera (q) pada sumbu Z (cm)
Dob panjang objek garis di dunia nyata (cm)
dob panjang proyeksi objek garis pada kamera (cm)
Dtg lebar tiang gawang dalam sentimeter (cm)
dtg lebar proyeksi tiang gawang di bidang gambar kamera dalam sentimeter (cm)
pob lebar proyeksi sebuah objek di bidang gambar kamera dalam pixel (pixel)
ptg lebar proyeksi tiang gawang di bidang gambar kamera dalam pixel (pixel)
htg tinggi proyeksi tiang gawang di bidang gambar kamera dalam pixel (pixel)
ptgMin lebar proyeksi tiang gawang minimal sebuah objek tiang gawang (pixel)
htgMin tinggi proyeksi tiang gawang minimal sebuah objek tiang gawang (pixel)
α sudut yang terbentuk antara pan kepala robot dan kompas robot saat robot
menghadap ke tiang gawang (derajat)
β sudut yang terbentuk antara pan kepala robot dan kompas robot saat robot
menghadap ke bola (derajat)
γ sudut tilt kepala robot saat menghadap ke bola (derajat)
xiii
hr tinggi robot (cm)
jrg jarak antara robot dan tiang gawang (cm)
jbr jarak antara bola dan robot (cm)
L lebar layar smartphone Android (cm)
xrg koordinat x robot terhadap tiang gawang (cm)
yrg koordinat y robot terhadap tiang gawang (cm)
xrl koordinat x robot di lapangan (cm)
yrl koordinat y robot di lapangan (cm)
xbr koordinat x bola terhadap robot (cm)
ybr koordinat y bola terhadap robot (cm)
xbl koordinat x bola di lapangan (cm)
ybl koordinat y bola di lapangan (cm)
xiv
DAFTAR SINGKATAN
KRSBI Kontes Robot Sepakbola Indonesia