Professional Documents
Culture Documents
Abstract
Sepakbola robot adalah sebuah proyek internasional yang bertujuan untuk mendukung penelitianpenelitian di bidang Sistem Kecerdasan Buatan (Artificial Intelligence), Robotika, Independent Agent,
dan disiplin ilmu lain yang mempunyai keterkaitan dengan hal-hal tersebut di atas. Penelitian ini
secara umum bertujuan untuk merancang bangun sebuah sistem mirosot dengan pengembangan
disisi host menjadi client server system. Secara khusus bertujuan untuk mengembangkan konsep
lapisan mode gerak agen robot sepakbola. Selanjutnya lapisan mode gerak agen robot sepakbola ini
digunakan untuk mengembangkan kemampuan agen dan tim. Lapisan mode gerak agen robot
merupakan salah satu bagian dalam rancang bangun tim robot sepakbola. Lapisan mode gerak
agen robot telah didesain dan diimplementasikan dalam bentuk lapisan lapisan mode gerak agen
robot. Setiap lapisan mode gerak agen robot dapat digunakan sesuai dengan lingkungan dan target
yang dikehendaki. Desain lapisan mode gerak agen dilakukan dengan membagi mode gerak agen
kedalam beberapa lapisan gerak dengan tujuan untuk memudahkan pengujian, implementasi dan
pengembangan. Penelitian ini telah menghasilkan desain total 20 mode gerak yang terbagi dalam 3
lapisan gerak agen robot.
Kata kunci : Sepakbola robot, kecerdasan buatan, lapisan mode gerak robot, agen robot sepakbola
1. Pendahuluan
Sepakbola merupakan sebuah olah raga tim yang membutuhkan kemampuan individu dan kerjasama
tim untuk dapat melakukannya dengan baik. Ditinjau dari sudut pandang sistem informasi dan
komunikasi, dalam sepakbola terjadi pertukaran informasi dan komunikasi yang cukup kompleks
sehingga menarik untuk dipelajari.
Sepakbola robot adalah sebuah proyek internasional yang bertujuan untuk mendukung penelitianpenelitian di bidang Sistem Kecerdasan Buatan (Artificial Intelligence), Robotika, Independent Agent,
dan disiplin ilmu lain yang mempunyai keterkaitan dengan hal-hal tersebut di atas.
Dalam kaitan itu dilakukan perancangan dan pembuatan sistem mikro robot soccer atau mirosot di
Institut Teknologi Bandung, yang terdiri dari sistem mekanik robot, sistem elektronik robot, sistem
vision, sistem komunikasi, dan sistem host yang dikembangkan menjadi sistem client server serta
kemampuan lapisan mode gerak agen robot sebagai bagian dari kecerdasan buatan yang digunakan
pada robot.
Penelitian ini secara umum bertujuan untuk merancang bangun sebuah sistem mirosot dengan
pengembangan disisi host menjadi client server system. Secara khusus bertujuan untuk
mengembangkan konsep lapisan mode gerak agen robot sepakbola. Untuk selanjutnya lapisan mode
gerak agen robot sepakbola ini digunakan untuk mengembangkan kemampuan agen dan tim.
Penelitian ini dibatasi pada desain dan implementasi lapisan mode gerak agen robot sepakbola
dengan pengujian pada sistem mirosot yang dibangun oleh tim mirosot dengan menggunakan
mekanik robot dari Yujin Robotics Co, Ltd.
2. Landasan Teori
2.1.
Sepakbola Robot
Robot Soccer atau sepakbola robot adalah sebuah proyek internasional yang bertujuan untuk
mendukung penelitian-penelitian di bidang Sistem Kecerdasan Buatan (Artificial Intelligence),
Robotika, Independent Agent, dan disiplin ilmu lain yang mempunyai keterkaitan dengan hal-hal
tersebut di atas. Salah satu liga sepakbola robot adalah yang dikembangkan oleh Federation of
International Robot-soccer Association (FIRA). Selain Mirosot, ada beberapa liga yang dikelola oleh
FIRA, seperti Narosot (Nano Robot World-Soccer Tournament), Amiresot (Amire Soccer Tournament),
Hurosot (Humanoid World-cup Robot soccer Tournament), Androsot, dan simulasi Mirosot atau
Simurosot. [1].
2.2.
Model matematis dari kinematika robot yang digunakan adalah sebagaimana digambarkan sebagai
berikut :
(1)
dimana,
(x,y) = posisi robot
= orientasi robot
(2)
dimana,
v = kecepatan linier robot
w = kecepatan angular robot
Suara diproduksi oleh sebuah obyek yang bergetar, contohnya loudspeaker, musical instrument,
ataupun pita suara manusia. Hubungan antar input kendali dengan kecepatan roda [3] :
(3)
(4)
Dasar kendali gerak pada robot untuk dapat bergerak mengelilingi titik poros adalah sebagai berikut :
(5)
(6)
R = diameter
3. Perancangan
Perancangan pada tahap awal meliputi perancangan umum sistem sepakbola robot mikro (mirosot)
dengan sistem client server yang digambarkan pada diagram berikut :
id
+ vl[0]
vl[1]
vl[2]
+ vr[0]
vr[1]
vr[2]
end
2. Mundur
Gerak mundur merupakan gerak dasar agen robot dengan memberikan kecepatan senilai VL dan
VR untuk motor kiri dan kanan robot. Dengan format paket data :
start
i
d
- vl[
vl[
vl[
- vr[0
0]
1]
2]
vr[1
vr[2
en
i
d
+ vl[
vl[
vl[
+ vr[0
0]
1]
2]
vr[1
vr[2
en
i
d
+ vl[
vl[
vl[
+ vr[0
0]
1]
2]
vr[1
vr[2
en
5. Spin Kanan
Gerak spin kanan merupakan gerak dasar agen robot dengan memberikan kecepatan senilai -VL
dan + VR untuk motor kiri dan kanan robot. Dengan format paket data :
| VL | = | VR |
start
- vl[
vl[
vl[
+ vr[0
0]
1]
2]
vr[1
vr[2
en
6. Spin Kiri
Gerak spin kiri merupakan gerak dasar agen robot dengan memberikan kecepatan senilai +VL dan
- VR untuk motor kiri dan kanan robot. Dengan format paket data :
| VL | = | VR |
start
+ vl[
vl[
vl[
- vr[0
0]
1]
2]
vr[1
vr[2
en
7. Belok Kanan
Gerak belok kanan merupakan gerak dasar agen robot dengan memberikan kecepatan senilai
+VL dan + VR untuk motor kiri dan kanan robot. Dengan format paket data :
VL > VR
start
+ vl[
vl[
vl[
+ vr[0
0]
1]
2]
vr[1
vr[2
en
8. Belok Kiri
Gerak belok kanan merupakan gerak dasar agen robot dengan memberikan kecepatan senilai
+VL dan + VR untuk motor kiri dan kanan robot. Dengan format paket data :
VL < VR
start
i
d
+ vl[
vl[
vl[
+ vr[0
0]
1]
2]
vr[1
vr[2
en
Algoritma
Targ
et
Terima posisi
Posi
Sudu
si
sudut target
Tuju
relative terhadap
targe
an
(xT,yT
fungsi posisi
relati
)
-
dan sudut
ve
menghasilkan
terha
e = 0, kemudian
dap
berikan
robot
kecepatan motor
=0
(e =
kecepatan motor
0).
kanan (Vr)
Posi
untuk menuju
si
posisi
robot
tujuan(xT,yT)kem
udian berhenti.
posis
Jika tidak,
jalankan fungsi
targe
sudut kemudian
Sudu
t
targe
t
relati
ve
terha
dap
robot
(e)
berikan
kecepatan motor
kiri (Vl) dan
kecepatan motor
kanan (Vr)
dengan arah (+)
untuk menuju
posisi
tujuan(xT,yT)
kemudian
berhenti.
2. Mundur
Tabel 2. Desain Fungsi Mundur
Input data
-
Algoritma
Target
Posisi
-Sudut
Tujuan
target
(xT,yT)
Sudut
relative
terhada
p robot
menghasilkan e =
= 0 (e
= 0).
-Posisi
robot =
posisi
target.
target
relative
terhada
p robot
(e)
tujuan(xT,yT)kemudian
berhenti. Jika tidak,
jalankan fungsi sudut
sampai mendapat e =
180 kemudian berikan
kecepatan motor kiri (Vl)
dan kecepatan motor
kanan (Vr) dengan arah
(-) untuk menuju posisi
tujuan(xT,yT) kemudian
berhenti.
3. Belok Kanan
Tabel 3. Desain Fungsi Belok Kanan
Input data
Algoritma
Targe
t
Posis
Terima posisi
tujuan (xR,yR)
Sudu
Tujua
relative terhadap
targe
(xT,yT
)
Sudu
t
targe
t
relati
ve
terha
dap
robot
(e)
fungsi posisi
relati
dan sudut
ve
menghasilkan
terha
e>0, kemudian
dap
berikan
robot
kecepatan motor
>0
(e >
kecepatan motor
0).
-
kanan (Vr)
dengan arah (+)
untuk menuju
posisi
tujuan(xT,yT)den
gan Vr<Vl
kemudian
berhenti. Jika
tidak, jalankan
Posis
i
robot
=
posis
i
targe
t.
fungsi sudut
sampai
mendapat e>0
kemudian
berikan
kecepatan motor
kiri (Vl) dan
kecepatan motor
kanan (Vr)
dengan arah (+)
untuk menuju
posisi
tujuan(xT,yT)den
gan Vr<Vl
kemudian
berhenti.
4. Belok Kiri
Tabel 4. Desain Fungsi Belok Kiri
Input data
Algoritma
Targe
t
Posis
Terima posisi
tujuan (xR,yR)
Sudu
Tujua
relative terhadap
targe
(xT,yT
)
Sudu
fungsi posisi
relati
dan sudut
ve
menghasilkan
terha
e<0, kemudian
dap
berikan
robot
kecepatan motor
<0
(e <
kecepatan motor
0).
-
t
targe
t
relati
ve
terha
dap
kanan (Vr)
robot
(e)
Posis
i
robot
=
posis
i
targe
t.
fungsi sudut
sampai
mendapat e<0
kemudian
berikan
kecepatan motor
kiri (Vl) dan
kecepatan motor
kanan (Vr)
dengan arah (+)
untuk menuju
posisi
tujuan(xT,yT)den
gan Vr>Vl
kemudian
berhenti.
5. Spin Kanan
Tabel 5. Desain Fungsi Spin Kanan
The 1st International Joint Conference of Indonesia-Malaysia-Bangladesh-Ireland (IJCIMBI) 2015
Input
Algoritma
Target
Pos
Terima posisi
Berpu
isi
robot
tar
Rob
(xR,yR,)kemudia
ditem
ot
n berikan
pat.
(xR,
kecepatan motor
yR)
data
-
Algoritma
Target
Pos
Terima posisi
Berpu
isi
robot
tar
Rob
(xR,yR,)kemudia
ditem
ot
n berikan
pat.
(xR,
kecepatan motor
yR)
data
-
Algoritma
Target
data
Posi
si
(xR,yR, ), posisi
Menghitung
Robo
sudut objek
sudut target(d)
(d)
(xR,y
kemudian hitung
)
Posi
Mendapatk
an sudut
kemudian berhenti
target
setelah menghadap
relatif(d)
tujuan.
terhadap
R,
si
Tuju
an
(xT,yT
robot (e).
)
2. Posisi
Posisi dibuat sebagai sebuah fungsi yang berguna untuk memberikan kecepatan motor kiri
(Vl) dan kecepatan motor kanan (Vr) dari robot dengan arah yang berlawanan untuk
menghadap posisi tujuan (xT,yT).
Tabel 8. Desain Fungsi Posisi
Input data
-
Algoritma
Target
Posisi
Sudut
Robot
target
(xR,yR,
target relative
relative
)
Sudut
terhadap
kemudian lakukan
robot = 0
normalisasi sudut
(e = 0).
target
relative
terhada
p robot
(e)
kemudian berikan
kecepatan motor kiri
(Vl) dan kecepatan
motor kanan (Vr)
dengan arah yang
berlawanan untuk
bergerak sesuai
kecepatan.
3. Mendekati Bola
Tabel 9. Desain Fungsi Mendekati Bola
Input data
Algoritma
Target
Robot
(xR,yR,) kemudian
target
(xR,yR,
jalankan fungsi
relativ
maju.
)
-Sudut
terhad
target
ap
relative
robot =
terhad
0 (e =
ap
robot
0).
Vl & Vr
(e)
4. Menggiring Bola
Tabel 10. Desain Fungsi Menggiring Bola
Input data
-
Algoritma
Target
Posisi
Terima posisi
Robot
robot(xR,yR,)kemudi
target
(xR,yR,
an jalankan fungsi
relative
posisi kemudian
terhad
jalankan fungsi
ap
sudut kemudian
robot =
0 (e =
)
-Posisi
Bola
(xB,yB)
-Sudut
target
relative
terhada
p robot
Sudut
0).
Vl & Vr
Bola
digiring
robot
fungsi posisi.
(e)
5. Menendang Bola
Tabel 11. Desain Fungsi Menendang Bola
Input data
Algoritma
Target
-Posisi
Robot
(xR,yR)
-Posisi
Bola
(xB,yB)
-Sudut
Sudut
(xR,yR) kemudian
target
jalankan fungsi
relative
sudut kemudian
terhada
jalankan fungsi
p robot
posisi kemudian
= 0 (e
target
relative
= 0).
Vl & Vr
Bola
(xB,yB) kemudian
terhad
ditenda
dorong kemudian
ap
ng
jalankan perintah
robot
robot
lain(ulangi) atau
(e)
berhenti
Algoritma
Terima posisi
Target
-
Sudut
robot (xR,yR)
target
kemudian
relative
jalankan fungsi
terhad
position
ap
kemudian
robot =
jalankan fungsi
0 (e =
sudut kemudian
jalankan fungsi
maju menuju
posisi bola
(xB,yB) kemudian
dorong sampai
0).
Vl & Vr
Bola
ditend
ang ke
gawan
g
gawan
kemudian
jalankan perintah
lain(ulangi) atau
berhenti
Implementasi
Implementasi dilakukan dengan menurunkan algoritma dan model matematis dari setiap fungsi
kendali kedalam program menggunakan bahasa pemrograman C++ .
Struktur pemrograman kendali gerak agen robot sepakbola terdiri dari bagian masukan, formula
berupa fungsi dan model matematis, dan target.
4.2.
Pengujian
Pengujian dilakukan dengan menjalankan setiap formula dalam bentuk fungsi dan model matematis
yang dituliskan dalam program. Didalam pengujian ini, dibandingkan kesesuaian antara kondisi awal
dan akhir agen dengan kondisi seharusnya. Ketika gerakan robot sesuai, maka implementasi formula
dinyakatan berhasil.
Rekapitulasi hasil pengujian ditampilkan dalam tabel hasil pengujian sebagai berikut :
5. Kesimpulan
Lapisan mode gerak agen robot merupakan salah satu bagian dalam rancang bangun tim robot
sepakbola . Kendali gerak agen robot telah didesain dan diimplementasikan dalam bentuk lapisan
lapisan mode gerak agen robot. Setiap lapisan mode gerak agen robot dapat digunakan sesuai
dengan lingkungan dan target yang dikehendaki. Lapisan mode gerak agen robot yang sudah
dikembangkan yaitu :
1. Lapisan Gerak Dasar
a. Maju
b. Mundur
c. Putar kanan 900
d. Putar kiri 900
e. Belok kanan
f. Belok kiri
g. Spin kanan
h. Spin kiri
2.
a.
b.
c.
d.
e.
f.
3.
a.
b.
c.
d.
e.
f.
Dalam implementasi setiap formula disesuaikan dengan kemampuan mekanik dan elektronik dari
robot yang dibangun.