BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak...

23
16 BAB III PERANCANGAN Membahas perancangan sistem yang terdiri dari gambaran umum sistem dan bagaimana mengolah informasi yang didapat dari penglihatan dan arah hadap robot di dalam algoritma penentuan lokasi dan penempatan posisi. 3.1. Sistem Instruksi dan Kontrol Robot Sistem kontrol robot terdiri dari 3 bagian utama, yaitu smartphone Android sebagai pemroses utama, controller servo robot kondo KHR-3HV (RCB4) sebagai pengontrol servo-servo yang menggerakkan tubuh robot, dan ATMega324 sebagai pengontrol servo kepala dan memberikan perintah kepada controller KHR-3HV dari smartphone Android. Gambar 3.1 menunjukkan blok diagram sistem instruksi robot yang digunakan. Gambar 3.1. Sistem instruksi dan kontrol robot.

Transcript of BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak...

Page 1: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

16

BAB III

PERANCANGAN

Membahas perancangan sistem yang terdiri dari gambaran umum sistem dan

bagaimana mengolah informasi yang didapat dari penglihatan dan arah hadap robot di

dalam algoritma penentuan lokasi dan penempatan posisi.

3.1. Sistem Instruksi dan Kontrol Robot

Sistem kontrol robot terdiri dari 3 bagian utama, yaitu smartphone Android

sebagai pemroses utama, controller servo robot kondo KHR-3HV (RCB4) sebagai

pengontrol servo-servo yang menggerakkan tubuh robot, dan ATMega324 sebagai

pengontrol servo kepala dan memberikan perintah kepada controller KHR-3HV dari

smartphone Android. Gambar 3.1 menunjukkan blok diagram sistem instruksi robot

yang digunakan.

Gambar 3.1. Sistem instruksi dan kontrol robot.

Page 2: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

17

3.2. Desain Perangkat Keras

3.2.1. Smartphone Android

Smartphone Android Xperia Mini St15i digunakan sebagai pemroses algoritma

utama. Semua instruksi yang dijalankan oleh ATMega 324, controller servo KHR-3HV

dan servo kepala berasal dari smartphone Android. Algoritma yang dijalankan

mengambil tindakan berdasarkan citra yang didapat dan diolah menggunakan library

OpenCV. Informasi akan dieksekusi dalam bahasa Java yang dirancang menggunakan

Eclipse IDE.

Gambar 3.2. Sensor orientasi smartphone Android.

Smartphone Android memiliki sensor orientasi dimana terdapat sumbu yaw,

pitch, dan roll seperti yang ditunjukkan pada Gambar 3.2. Kompas memanfaatkan

sumbu yaw dari sensor Android ini. Sudut 0° diatur agar selalu mengarah ke tiang

gawang musuh. Pengaturan sudut kompas ditunjukkan oleh Gambar 3.3.

Gambar 3.3. Nilai kompas (yaw) yang digunakan [14].

Page 3: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

18

3.2.2. Mikrokontroler ATMega 324 dan Controller Servo KHR-3HV

Mikrokontroler ATMega 324 bertugas mengontrol servo pan dan tilt kepala dan

servo tubuh. Pengontrolan servo tubuh dilakukan dengan mengirimkan instruksi

gerakan ke controller servo KHR-3HV. Instruksi gerakan yang dikirim adalah instruksi

gerakan yang didapat dari perintah smartphone Android.

3.2.3. Modul Bluetooth

Modul bluetooth dengan versi DF-Bluetooth V3 digunakan sebagai media

penghubung smartphone dengan ATMega 324. Instruksi-instruksi dari Android

berbentuk paket data dikirim melalui modul bluetooth ke ATMega 324. Instruksi yang

dikirimkan berupa instruksi untuk menggerakkan servo pan dan tilt kepala serta servo

tubuh robot.

3.2.4. Motor Servo

Motor Servo digunakan untuk mengontrol gerakan kepala robot. Terdapat 2

motor servo yang digunakan, yaitu untuk pan dan tilt kepala robot. Motor servo

dikontrol oleh ATMega 324 dengan menggunakan modulasi lebar pulsa atau Pulse

Width Modulation (PWM). Gambar 3.4 menunjukkan konfigurasi pan dan tilt kepala

robot

Gambar 3.4. Arah sudut pan dan tilt servo kepala robot [14].

Page 4: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

19

3.3. Pendeteksian Tiang Gawang Menggunakan Android dan OpenCv

Algoritma penentuan lokasi dan penempatan posisi robot di lapangan diperoleh

dengan menggunakan informasi yang diperoleh dari citra gawang, kompas, dan pan

kepala robot. Citra gawang yang dipakai adalah citra tiang gawang. Tiang gawang

dipilih sebagai acuan karena tiang gawang adalah landmark yang mudah terlihat dari

posisi mana saja di lapangan. Proses pendeteksian tiang gawang dilakukan

menggunakan android dengan bantuan library OpenCV.

Kamera Android akan mengirimkan citra yang akan dilakukan pemeriksaan

objek tiang gawang menggunakan library Android OpenCV. Untuk menentukan tiang

gawang, digunakan metode penentuan pusat massa [1] dengan mencari objek yang

memiliki lebar minimal ptgMin dan tinggi minimal htgMin.

Jika sebuah bagian vertikal memiliki warna kuning dengan ketinggian minimal

htgMin, maka akan dilakukan pemeriksaan secara horisontal. Jika lebar objek (ptg) lebih

besar dari lebar proyeksi sebuah objek tiang gawang minimal (ptgMin), maka objek

adalah tiang gawang yang memiliki lebar proyeksi ptg pixel [13].

Gawang tim musuh dan gawang tim sendiri dibedakan menggunakan kompas,

dimana 0° adalah arah hadap robot ke gawang tim musuh dan 180° adalah arah hadap

ke gawang tim sendiri. Tiang gawang kanan dan kiri dibedakan menggunakan metode

pusat massa. Tiang kiri memiliki pusat massa yang berada di kiri pusat massa gawang

secara keseluruhan, sedangkan tiang kanan memiliki pusat massa yang berada di kanan

pusat massa gawang secara keseluruhan. Gambar 3.5. menunjukkan contoh

pendeteksian tiang gawang.

Gambar 3.5. Contoh pendeteksian tiang gawang dengan ptgMin=2 pixel dan htgMin=5

pixel

Page 5: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

20

3.4. Perhitungan Jarak Robot dan Gawang

Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi panjang

pada bidang gambar kamera. Jika jarak antara kamera dan tiang gawang serta tilt robot

tetap, meskipun dilihat dari sudut manapun, lebar persegi panjang hasil proyeksi tiang

gawang akan selalu tetap. Lebar tiang gawang akan digunakan untuk mencari jarak

antara robot dan tiang gawang.

Gambar 3.6. Proyeksi lebar tiang gawang pada kamera yang akan dianalisis.

Perhitungan jarak robot dan gawang dilakukan dengan menggunakan persamaan

(3) pada Bab 2.5.2. Gambar 3.6 menunjukkan lebar tiang gawang hasi proyeksi pada

bidang gambar kamera yang dapat diibaratkan sebagai sebuah garis dengan lebar dtg cm.

Jika lebar tiang gawang asli adalah Dtg cm, dan fokus kamera adalah f cm, maka dapat

dicari jrg, yaitu jarak robot ke gawang dengan persamaan :

tg

tg

rgd

Dfj

........................................................................................................ (4)

dengan

jrg = jarak bola dan tiang gawang (cm)

f = fokus kamera (cm)

Dtg = lebar tiang gawang asli (cm)

dtg = lebar tiang gawang hasil proyeksi dalam dalam sentimeter (cm)

Page 6: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

21

Pendeteksian tiang gawang pada Bab 3.3 mendeteksi lebar tiang gawang dalam

satuan pixel, sedangkan persamaan untuk menghitung jarak robot dan tiang gawang

(persamaan 4) menggunakan lebar tiang gawang dalam satuan sentimeter. Oleh karena

itu, dibutuhkan pengkonversian nilai antara sentimeter dan pixel sebagai satuan lebar

tiang gawang yang terdeteksi.

Resolusi kamera adalah 480 x 320 pixel. Analisa lebar tiang gawang dilakukan

secara landscape, sehingga lebar resolusi layar yang digunakan adalah 480 pixel.

Sebuah objek yang terdeteksi pada layar dengan panjang dob, akan menggunakan pob

pixel dengan rumus:

L

dRp ob

ob ........................................................................................................ (5)

dengan :

pob = lebar proyeksi sebuah objek di bidang gambar kamera (pixel)

R = resolusi (pixel)

dob = lebar benda yang terdeteksi pada layar (cm)

L = lebar layar (cm)

Gambar 3.7 menunjukkan hubungan lebar benda dan nilai pixel yang digunakan

pada layar sesuai dengan rumus (5).

(1) (2) (3)

Gambar 3.7. Pendeteksian sebuah objek bola menunjukkan lebar benda dan nilai

pixel yang berhubungan.

Keterangan gambar 3.7:

(1) dob = 0,9 cm ; pob = 67 pixel

(2) dob = 1,7 cm ; pob = 127 pixel

(3) dob = 2,0 cm ; pob = 153 pixel

Page 7: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

22

Jarak robot dan tiang gawang (jrg) pada persamaan (4) dapat dicari dengan

menggunakan persamaan (5) dengan pob=ptg dan dob=dtg karena objek yang dideteksi

adalah tiang gawang.

tg

tg

rgd

Dfj

, sedangkan L

dRp

tg

tg , maka :

)(R

Lp

Dfj

tg

tg

rg

Lp

RfDj

tg

tg

rg

........................................................................................................ (6)

Fokus kamera yang digunakan (f) adalah 7,2 cm, lebar tiang gawang yang asli

(Dtg) adalah 10 cm, Resolusi layar (R) adalah 480 pixel, dan lebar layar (L) adalah 6,4

cm. Dari rumus jrg, L

RfDtgadalah suatu konstanta yang memiliki nilai 5400, sehingga jrg

dapat dicari dengan rumus:

tg

rgp

j5400

......................................................................................................... (7)

dengan :

jrg = jarak antara robot dan tiang gawang (cm)

ptg = lebar proyeksi tiang gawang di bidang gambar kamera (pixel)

Page 8: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

23

3.5. Penentuan Posisi Robot di Lapangan

Gambar 3.8. Desain sistem koordinat lapangan KRSBI.

Desain sistem koordinat lapangan KRSBI ditunjukkan pada Gambar 3.8.

Koordinat (0,0) berada di tengah lapangan dengan sumbu Y positif menunjukkan daerah

depan penyerangan, sedangkan sumbu Y negatif menunjukkan daerah belakang

penyerangan. Sumbu X positif menunjukkan daerah kanan lapangan, sedangkan sumbu

X negatif menunjukkan daerah kiri lapangan.

Setelah didapat jarak robot dan tiang gawang, yaitu jrg dan selisih sudut pan

kepala dan kompas robot (α), maka posisi robot relatif terhadap salah tiang gawang,

yaitu koordinat x dan y dapat dicari menggunakan selisih pan dan kompas robot seperti

yang ditunjukkan pada Gambar 3.9. Koordinat robot diperoleh dari rumus:

)sin(rgrg jx .................................................................................................. (8)

)cos(rgrg jy .................................................................................................. (9)

dimana

α = pan – 90 – kompas ....................................................................................... (10)

90 adalah nilai saat robot menghadap lurus ke depan (gambar 3.4).

Page 9: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

24

Gambar 3.9. Penentuan koordinat relatif robot terhadap salah satu tiang gawang

Koordinat robot relatif terhadap koordinat lapangan dapat dicari dengan

melakukan pergeseran koordinat xrg dan yrg tergantung dari jenis tiang gawang yang

sedang digunakan untuk acuan. Tabel 3.1 adalah pergeseran koordinat relatif robot

terhadap tiang gawang ke koordinat robot terhadap lapangan. Gambar 3.10

menunjukkan diagram alir penentuan lokasi robot. Pseudocode 1 menunjukkan

algoritma menghitung lokasi robot di lapangan.

Tabel 3.1. Tabel pergeseran koordinat relatif robot terhadap tiang gawang ke koordinat

robot terhadap lapangan.

Jenis tiang gawang Rumus koordinat robot terhadap

lapangan

Gawang sendiri

Tiang kanan xrl = xrg - 112,5

yrl = -450 - yrg

Tiang kiri xrl = xrg +112,5

yrl = -450 - yrg

Gawang musuh

Tiang kanan xrl = xrg + 112,5

yrl = 450 - yrg

Tiang kiri xrl = xrg - 112,5

yrl = 450 - yrg

Page 10: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

25

Page 11: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

26

Gambar 3.10. Diagram alir algoritma menentukan lokasi robot

//Menghadapkan kepala ke depan

if(ada tiang gawang){

//memfokuskan kamera ke tengah tiang gawang

//menghitung jarak robot dan tiang gawang

//menyelisihkan kompas dan pan kepala robot

//mencari x dan y robot terhadap tiang gawang

//memeriksa jenis tiang gawang yang sedang dilihat

//mendapatkan x dan y robot terhadap lapangan berdasarkan

jenis tiang gawang yang sedang dilihat

}

else{

if(kompas/orientasi robot menghadap ke kiri){

//menghadapkan kepala robot ke kiri

//selama belum menemukan gawang, robot melakukan

pergeseran kepala ke arah kanan

}

else{

//menghadapkan kepala robot ke kanan

//selama belum menemukan gawang, robot melakukan

pergeseran kepala ke arah kiri

}

}

Pseudocode 1. Pseudocode algoritma menghitung lokasi robot di lapangan

Page 12: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

27

3.6. Penentuan Posisi Bola di Lapangan

Robot dapat menentukan posisi bola dilapangan dengan cara mencari jarak bola

terhadap robot terlebih dahulu dengan bantuan tilt robot. Gambar 3.11 menunjukkan

jarak antara robot dan bola (jbr) diperoleh dari rumus:

tan

rbr

hj , dengan hr (tinggi robot) adalah 47 cm.

tan

47brj

....................................................................................................... (11)

dengan

jbr = jarak bola dan robot (cm)

hr = tinggi robot (cm) = (47 cm)

γ = sudut tilt (derajat)

Gambar 3.11. Penentuan jarak robot terhadap bola.

Page 13: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

28

Setelah mendapatkan jarak robot dan bola, dapat dicari koordinat x dan y relatif

bola terhadap robot menggunakan selisih pan dan kompas robot (β) seperti yang

ditunjukkan pada Gambar 3.12. Koordinat relatif bola diperoleh dengan rumus:

)sin(rbbr jx ................................................................................................ (12)

)cos(rbbr jy .................................................................................................. (13)

dimana

β = pan – 90 – kompas ....................................................................................... (14)

90 adalah nilai saat robot menghadap lurus ke depan (gambar 3.4).

Gambar 3.12. Penentuan koordinat relatif bola terhadap robot.

Jika robot telah mengetahui posisinya di lapangan, maka robot dapat

menentukan posisi bola relatif terhadap lapangan.

rlbrbl xxx ...................................................................................................... (15)

rlbrbl yyy ..................................................................................................... (16)

Gambar 3.13 menunjukkan diagram alir penentuan posisi bola. Pseudocode 2

menunjukkan algoritma menghitung lokasi bola relatif terhadap robot.

Page 14: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

29

Gambar 3.13. Diagram alir algoritma menentukan lokasi bola

//Menghadapkan kepala depan

if(ada bola){

//memfokuskan kamera ke bola

//menghitung jarak robot bola

//menyelisihkan kompas dan pan kepala robot

//mencari x dan y bola terhadap robot

}

else{

//melakukan gerakan memutar tubuh dan kepala untuk mencari

bola

}

Pseudocode 2. Pseudocode algoritma menghitung lokasi bola

Page 15: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

30

3.7. Penentuan Daerah Kerja Robot di Lapangan

Terdapat 2 macam peran robot di lapangan yang memerlukan algoritma

penentuan lokasi dan penempatan posisi, yaitu robot penyerang dan robot bek. Daerah

kerja penyerang adalah untuk berjaga di lapangan bagian depan, sedangkan daerah kerja

bek adalah untuk berjaga di lapangan bagian belakang. Algoritma penentuan lokasi dan

penempatan posisi didukung oleh proses komunikasi antar robot dimana terdapat

informasi tentang robot yang sedang memegang bola seperti yang ditunjukkan pada

Gambar 3.14 dan Gambar 3.15. Terdapat 2 kondisi permainan di lapangan, yaitu saat

menyerang dan bertahan. Kondisi menyerang ditunjukkan saat robot penyerang

mendapatkan bola, dan kondisi bertahan ditunjukkan saat kiper mendapatkan bola.

Proses komunikasi akan mengirimkan data kondisi permainan berdasarkan robot yang

sedang memegang bola. Berdasarkan data yang masuk, robot akan memanggil fungsi

yang menjalankan proses penempatan posisi. Saat menerima data komunikasi yang

menunjukkan kondisi untuk menyerangke arah musuh, robot penyerang akan

memanggil fungsi yang akan memposisikan dirinya untuk selalu berjaga di depan,

sedangkan robot bek akan memanggil fungsi yang memposisikan dirinya untuk selalu

berjaga di belakang garis tengah lapangan. Sedangkan saat menerima data komunikasi

yang menunjukkan kondisi untuk bertahan, robot penyerang akan memanggil fungsi

yang memposisikan dirinya untuk pergi ke belakang hingga garis tengah lapangan,

sedangkan robot bek akan berusaha membuang bola ke depan. Proses pemposisian diri

terjadi saat robot penyerang/bek tidak sedang memegang bola. Algoritma penentuan

lokasi dan penempatan posisi dirancang terpisah dengan algoritma untuk mengejar bola.

Page 16: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

31

Gambar 3.14. Proses pergantian kondisi pada robot penyerang

Gambar 3.15. Proses pergantian kondisi pada robot bek

Page 17: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

32

3.7.1. Algoritma Penempatan Posisi Menyerang Robot Penyerang

Robot penyerang ditunjukkan pada Gambar 3.16. Gambar 3.17 menunjukkan saat

kondisi menyerang dan robot tidak sedang memegang bola, maka robot penyerang akan

memposisikan dirinya ke arah penyerangan bagian depan bola dengan jarak setengah

jarak bola ke gawang, kecuali bola berada di dalam kotak penalti.

Gambar 3.16. Robot yang menjalankan algoritma penyerang.

Gambar 3.17. Penempatan posisi menyerang robot penyerang.

Robot penyerang akan pergi ke arah tengah gawang hingga setengah dari jarak

bola ke tengah gawang. Hal ini dilakukan agar proses interaksi lebih sering terjadi

antara robot dan bola yang ditendang oleh robot teman. Gambar 3.18 menunjukkan

diagram alir penempatan posisi menyerang robot penyerang. Pseudocode 3

menunjukkan algoritma penempatan posisi menyerang robot penyerang.

Page 18: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

33

Gambar 3.18. Diagram alir algoritma penempatan posisi menyerang robot

penyerang.

Page 19: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

34

//mengarahkan orientasi robot ke arah penyerangan

//mencari gawang

//menghitung lokasi robot di lapangan

//mencari bola

//menghitung lokasi bola di lapangan

if(bola pada kotak pinalti){

//standby menjaga bola

}

else{

//menghitung seberaba banyak robot harus melangkah ke depan

bola ke arah gawang musuh

while(langkah belum habis){

//robot maju ke depan

if(ada bola){

//mengarahkan pandangan robot ke bola

}

else{

//mencari bola dengan menggelengkan kepala

}

}

}

Pseudocode 3. Pseudocode algoritma positioning attack robot penyerang

3.7.2. Algoritma Penempatan Posisi Bertahan Robot Penyerang

Gambar 3.19 menunjukkan saat kondisi sedang bertahan, maka robot penyerang

akan mundur ke belakang lurus hingga garis tengah lapangan. Hal ini mencegah robot

penyerang kehilangan bola di bagian depan lapangan. Gambar 3.20 menunjukkan

diagram alir penempatan posisi bertahan robot penyerang. Pseudocode 4 menunjukkan

algoritma penempatan posisi bertahan robot penyerang.

Gambar 3.19. Penempatan posisi bertahan robot penyerang.

Page 20: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

35

Gambar 3.20. Diagram alir algoritma penempatan posisi bertahan robot

penyerang.

Page 21: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

36

//mengarahkan orientasi robot ke arah gawang sendiri

//mencari gawang

//menghitung lokasi robot di lapangan

//menghitung seberaba banyak robot harus melangkah ke depan bola

ke arah gawang sendiri

while(langkah belum habis){

//robot maju ke arah sendiri

if(ada bola){

//mengarahkan pandangan robot ke bola

}

else{

//mencari bola dengan menggelengkan kepala

}

}

Pseudocode 4. Pseudocode algoritma positioning bertahan robot penyerang

3.7.3 Algoritma Penempatan Posisi Robot Bek

Robot penyerang ditunjukkan pada Gambar 3.21. Gambar 3.22 menunjukkan

saat kondisi menyerang, robot bek akan memposisikan dirinya untuk selalu berjaga di

belakang garis tengah lapangan. Gambar 3.23 menunjukkan diagram alir penempatan

posisi bertahan robot penyerang. Pseudocode 5 menunjukkan algoritma penempatan

posisi robot bek.

Gambar 3.21. Robot yang menjalankan algoritma bek.

Gambar 3.22. Penempatan posisi robot bek.

Page 22: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

37

Gambar 3.23. Diagram alir algoritma penempatan posisi robot bek.

Page 23: BAB III PERANCANGANrepository.uksw.edu/bitstream/123456789/9808/4/T1...20 3.4. Perhitungan Jarak Robot dan Gawang Tiang gawang yang berbentuk silinder akan terlihat berbentuk persegi

38

//mengarahkan orientasi robot ke arah gawang musuh

//mencari gawang

//menghitung lokasi robot di lapangan

if(lokasi robot melebihi garis tengah lapangan){

//menghitung seberaba banyak robot harus melangkah ke depan

bola ke arah gawang sendiri

while(langkah belum habis){

//robot maju ke arah sendiri

if(ada bola){

//mengarahkan pandangan robot ke bola

}

else{

//mencari bola dengan menggelengkan kepala

}

}

}

else{

//standby dan menjaga bola

}

Pseudocode 5. Pseudocode algoritma positioning robot bek