BAB III PERANCANGAN SISTEM -...

14
12 BAB III PERANCANGAN SISTEM Pada bab ini akan dibahas mengenai perancangan dari perangkat keras, serta perangkat lunak dari algoritma robot. 3.1. Sistem Instruksi dan Kontrol Robot Gambar 3.1. Blok diagram sistem Sistem kontrol pada robot dibagi menjadi dua yaitu kontrol utama dan kontrol aktuator robot. Kontrol utama di sini terdiri dari smartphone dan mikrokontroler, di mana kontrol utama di sini bertugas untuk menciptakan keputusan bagaimana robot harus bertindak. Masukkan berupa gambar yang diterima oleh smartphone dari kamera, diolah dengan program sehingga menghasilkan keputusan untuk melakukan pergerakan. Keputusan yang diciptakan tersebut kemudian diperintahkan oleh smartphone dengan keluaran berupa paket data yang berupa char. Kemudian paket data tersebut akan diterjemahkan oleh mikrokontroler dan dapat diterima oleh kontrol aktuator robot berupa alamat-alamat ID dari servo untuk mengontrol servo dan telah diinisialisasi sebagai suatu gerakan. Kontrol aktuator robot di sini adalah pengendali servo yang berfungsi untuk mengontrol sistem pergerakan robot yang diaplikasikan pada servo motor yang ada pada

Transcript of BAB III PERANCANGAN SISTEM -...

Page 1: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

12

BAB III

PERANCANGAN SISTEM

Pada bab ini akan dibahas mengenai perancangan dari perangkat keras, serta

perangkat lunak dari algoritma robot.

3.1. Sistem Instruksi dan Kontrol Robot

Gambar 3.1. Blok diagram sistem

Sistem kontrol pada robot dibagi menjadi dua yaitu kontrol utama dan kontrol

aktuator robot. Kontrol utama di sini terdiri dari smartphone dan mikrokontroler, di

mana kontrol utama di sini bertugas untuk menciptakan keputusan bagaimana robot

harus bertindak. Masukkan berupa gambar yang diterima oleh smartphone dari kamera,

diolah dengan program sehingga menghasilkan keputusan untuk melakukan pergerakan.

Keputusan yang diciptakan tersebut kemudian diperintahkan oleh smartphone dengan

keluaran berupa paket data yang berupa char. Kemudian paket data tersebut akan

diterjemahkan oleh mikrokontroler dan dapat diterima oleh kontrol aktuator robot

berupa alamat-alamat ID dari servo untuk mengontrol servo dan telah diinisialisasi

sebagai suatu gerakan.

Kontrol aktuator robot di sini adalah pengendali servo yang berfungsi untuk

mengontrol sistem pergerakan robot yang diaplikasikan pada servo motor yang ada pada

Page 2: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

13

robot sehingga robot bisa melakukan gerakan seperti berjalan, jatuh, menendang, dsb.

Di mana semua pergerakan tersebut diputuskan oleh kontrol utama

3.2. Konstruksi Robot

Gambar 3.2 Robot humanoid kiper versi 2015

Bahan yang digunakan pada robot kiper saat ini terdiri dari Alumunium, plastik

dan akrilik. Bahan-bahan yang digunakan ini berfungsi untuk menjaga agar robot tetap

kokoh dan ringan. Robot kiper ini terdiri dari 18 motor servo dengan rincian 5 servo di

setiap kaki, 3 servo di setiap tangan, dan 2 di bagian kepala. Selain itu juga terdapat

smartphone yang ada pada punggung robot sebagai kontrol utamanya.

Tabel 3.1. Tabel keterangan badan robot

Badan Robot

Dimensi (p×l×t) : 20 x 10 x 44 [cm]

Berat 2,2 kg

Derajat kebebasan gerak 18 servo (tangan 3x2, kaki 5x2, kepala 2)

3.3. Desain Perangkat Keras

Pada bagian ini akan dijelaskan mengenai perancangan perangkat keras.

Perancangan perangkat keras yang akan dijelaskan berupa perangkat keras elektronik

yang digunakan.

3.3.1. Smartphone Android

Smartphone adalah telepon seluler yang memiliki kemampuan komputasi yang

tinggi dan biasanya memiliki periperal sensorik seperti akselerometer, kompas digital,

dan kamera. Seperti komputer pada umumnya, smartphone membutuhkan sistem

Page 3: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

14

operasi (OS). OS smartphone yang banyak beredar dipasaran antara lain Android, iOS,

Windows dan Symbian.

Gambar 3.3. Smartphone Android Sony Xperia Mini st15i [1].

Penggunaan smartphone berbasis OS Android dipilih oleh penulis karena OS

Android merupakan sistem operasi yang didukung oleh Google. Smartphone Android

yang dipilih adalah keluaran Sony bertipe Xperia mini st15i dengan spesifikasi[1] :

Resolusi Layar : 320 x 480 pixel

Kamera : 5 megapixel dengan penyetabil citra

OS : Android 2.3

Kecepatan CPU : 1 GHz

Sensor : Akselerometer, jarak, kompas

Jaringan : Wifi 802.11 b/g/n, Bluetooth V2.1

Gambar 3.4. Orientasi sensor pada smartphone.

menggulung

mengoleng

melenggang

Page 4: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

15

Smartphone Android memiliki sensor orientasi di mana terdapat sumbu

mengoleng, melenggang, dan menggulung. Kompas digital memanfaatkan sumbu

mengoleng dari sensor Android ini yang mengembalikan nilai dari 0 sampai 360 derajat.

3.3.2. Mikrokontroler ATMega 324

Mikrokontroler ATMega 324 bertugas mengontrol servo pan dan tilt kepala dan

servo tubuh. Pengontrolan servo kepala dilakukan secara langsung menggunakan timer

16 bit. Pengontrolan servo tubuh dilakukan dengan mengirimkan instruksi gerakan ke

controller servo Dynamixel. Instruksi gerakan yang dikirim adalah instruksi gerakan

yang didapat dari perintah smartphone Android.

3.3.3. Modul Bluetooth

Modul bluetooth digunakan untuk media pengiriman data yang berupa perintah

dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan dari smartphone

melalui bluetooth sehingga diperlukan modul bluetooth agar mikrokontroler dapat

terhubung dengan smartphone dan menerima data yang dikirimkan.

Modul bluetooth yang digunakan adalah modul bluetooth tipe DF-Bluetooth V3.

Berikut adalah gambar dari DF-Bluetooth V3.

Gambar 3.5. DF-Bluetooth V3 [2].

Gambar 3.6. Pin pada DF-Bluetooth V3 [2].

3.3.4. Motor Servo

Motor servo disini digunakan untuk mengontrol gerakan kepala robot. Motor

servo yang digunakan adalah motor servo dengan tipe Tower Pro MG90s. Motor servo

Page 5: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

16

dikontrol oleh ATMega 324 dengan mengirimkan modulasi lebar pulsa atau Pulse

Width Modulation (PWM).

Gambar 3.7. Motor servo Tower Pro MG90s[10].

3.4. Desain Perangkat Lunak

3.4.1. Modifikasi Algoritma

Untuk merancang sebuah robot humanoid kiper yang cepat, tepat, dan efektif,

dilakukan modifikasi terhadap Mode pinalti dan Mode counter[9] yang sudah ada

sebelumnya, kemudian ditambahkan lagi dua mode lain yaitu Mode siap dan Mode

kembali. Modifikasi di sini meliputi penambahan beberapa algoritma dan penggantian

nama terhadap Mode pinalti dan Mode counter, di mana Mode pinalti menjadi Mode

blok dan Mode counter menjadi mode siaga untuk menyesuaikan perilaku robot.

Perbedaan algoritma yang lama dengan yang baru dapat dillihat pada Tabel 3.2

Tabel 3.2. Tabel perbedaan algortima lama dan baru

Algoritma Lama Algoritma Baru

Metode menjauhkan bola yang belum

efektif, yaitu masih menggunakan kaki,

yang bisa menyebabkan bola menjauh

karena tidak sengaja tertendang sebelum

dijauhkan dengan kaki[9].

Metode menjauhkan bola yang baru dan

lebih efektif yaitu dengan menggunakan

tangan, untuk menghindarkan kejadian

bola tertendang dengan kaki sebelum

dijauhkan.

Robot tidak dapat menyesuaikan posisi

terhedap arah datang bola

Robot dapat menyesuaikan posisi terhadap

arah datang bola

Robot belum bisa kembali dengan baik ke

tempat semula

Robot dapat kembali dengan baik ke

tempat semula

Robot belum bisa kembali dengan baik

setelah dilakukan pickup

Robot dapat kembali dengan baik setelah

dilakukan pickup

Page 6: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

17

Mode siap, dan Mode kembali digunakan saat robot ingin kembali ke posisi

siaganya berada di tengah gawang. Penjabaran mengenai Mode blok, Mode siaga, Mode

siap dan Mode kembali serta penjelasan mengenai modifikasi yang ada dapat

dirangkum sebagai berikut:

1. Mode blok

Mode blok ini digunakan pada saat bola sudah masuk ke area pandang sejauh 80

cm dari kiper, kemudian mengunci posisi dari bola tersebut, dan jika bola ditendang

kiper akan mengambil tindakan jatuh ke kanan, ke kiri, atau split. Selain itu kiper juga

dapat menjauhkan bola saat bola berada kurang dari 40 cm. Modifikasi algoritma yang

dilakukan di sini yaitu jika robot melihat bola di dekatnya, robot akan langsung

merespon untuk menjauhkan bola dari gawang setelah menepis bola dengan metode

yang lebih baik, yaitu dengan melakukan sampling terhadap jarak bola, serta cara

menjauhkan yang berbeda yaitu menggunakan tangan robot sehingga menghindarkan

kemungkinan bola tertendang karena motion robot yang tidak sempurna dan akhirnya

keberhasilan untuk menjauhkan bola menjadi lebih besar.

Gambar 3.8. decision tree mode blok.

Pada mode ini keputusan yang harus dipilih yaitu jarak bola dari kiper. Jika

kurang dari 80 cm berarti menginisialisasi mode blok jika kurang dari 40 cm, berarti

robot memutuskan untuk mengejar bola dan menjauhkannya.

Page 7: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

18

2. Mode Siaga

Gambar 3.9. decision tree mode siaga.

Mode siaga merupakan pengembangan dari mode counter yang ada pada

algoritma sebelumnya. Mode counter adalah mode yang mengukur kecepatan bola,

dengan mode ini robot dapat memperkirakan apakah bola sampai ke daerahnya dan

perlu menangkisnya atau tidak. Pada mode siaga ditambahkan kemampuan pada robot

yang nantinya dapat memperkirakan posisi bola (di sebelah kiri atau sebelah kanan

gawang). Mode ini digunakan pada saat bola berada di luar daerah pinalti (80 cm)

dengan maksud robot bisa memposisikan diri terhadap arah keberadaan bola, dan tidak

melakukan gerakan yang sia-sia seperti split, jatuh ke kanan, dan jatuh ke kiri,

mengingat ukuran gawang pada peraturan yang baru menjadi lebih besar dari ukuran

sebelumnya.

3. Mode Siap

Pada mode siap ini robot dapat kembali ke posisi awalnya ke tengah gawang agar

siap untuk kembali menjaga gawang. Tujuan dibuatnya mode ini adalah agar robot tetap

menjaga gawang di daerah jaganya, sehingga tidak terlalu maju atau mundur, serta tidak

keluar dari area gawang yang harus dijaga. Acuan posisi kembali yang tepat pada mode

ini yaitu menggunakan titik pinalti sebagai penentu supaya robot berada di tengah.

Page 8: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

19

Gambar 3.10. decision tree mode siap.

4. Mode Kembali

Mode kembali memiliki konsep yang sama dengan mode siap, namun mode

kembali ini digunakan saat robot ingin kembali ke gawang dengan tepat setelah pickup .

Pembahasan mengenai algoritma sebelumnya dan algoritma yang baru akan

digambarkan menggunakan diagram alir, di mana algoritma pertama merupakan

algoritma yang lama dan algoritma kedua merupakan algoritma yang baru. Di mana

terdapat perbedaan pada pengambilan keputusan saat robot akan membuang bola,

dengan algoritma yang baru robot dapat menjauhkan bola dari gawang dengan lebih

baik karena menggunakan sampling serta metode yang lebih aman seperti yang sudah

dijelaskan pada penjabaran algoritma mode blok di atas. Selain itu perbedaan juga

terletak pada saat bola di luar jangkauan kiper. Dengan algoritma yang baru kiper dapat

menyesuaikan arah posisi bola, dibandingkan dengan sebelumnya kiper tidak dapat

memposisikan diri terhadap arah bola. Diagram alir yang menunjukan perbedaan antara

algoritma yang lama dan yang baru dapat dilihat pada Gambar 3.11 dan Gambar 3.12.

Page 9: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

20

Kemudian untuk algoritma pada mode siap dan mode kembali akan ditunjukan

oleh diagram alir pada Gambar 3.13 dan 3.14. Pada Gambar 3.13 menunjukan algoritma

dari mode siap. Robot akan menerima komunikasi dari robot penyerang di mana

menerima komunikasi ini menandakan bahwa bola sudah berada jauh di depan, di dekat

robot penyerang. Setelah menerima komunikasi ini kemudian robot akan kembali ke

posisi awal dengan menyesuaikan diri terhadap posisi titik pinalti.

Pada Gambar 3.14 menunjukan algoritma dari mode kembali. Saat robot ingin

kembali ke posisinya di lapangan, pertama-tama robot akan menyesuaikan kompas

terhadap posisi gawang dari pinggir lapangan, setelah kompas posisi gawang ditemukan

dia akan berjalan sampai gawang sesuai dengan perhitungan langkah yang dilakukan,

setelah langkahnya habis itu berarti menandakan bahwa robot kiper sudah berada di

depan gawang, dan kemudian robot akan cek kompas ke arah gawang musuh, agar

posisinya menghadap ke depan. Setelah robot menyesuaikan posisi hadapnya robot akan

kembali ke posisi tengah gawang dengan menyesuaikan diri terhadap posisi titik pinalti

seperti pada mode siap.

Page 10: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

21

Gambar 3.11. Diagram alir algoritma lama

Page 11: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

22

Gambar 3.12. Diagram alir algoritma baru

Page 12: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

23

Gambar 3.13. Diagram alir algoritma mode siap

Page 13: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

24

Gambar 3.14. Diagram alir algoritma mode kembali

Page 14: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/9809/4/T1_612011016_BAB III...dari smartphone Android ke mikrokontroler. Perintah akan dikirimkan

25

3.4.3. Analisis Perubahan Spesifikasi

Pertimbangan yang dilakukan oleh penulis dalam merubah spesifikasi pada poin

3 yaitu, Robot dapat mengoper bola ke area kosong ke arah sisi lain lapangan dengan

presentase keberhasilan 80% dengan percobaan sebanyak 30 kali percobaan menjadi,

robot dapat menjauhkan bola dari gawang dengan presentase keberhasilan 80% dengan

percobaan sebanyak 30 kali percobaan yaitu dengan alasan sebagai berikut:

1. Persebaran warna hijau yang merata pada pandangan robot, sehingga sulit untuk

menentukan daerah mana yang kosong, meskipun ada robot di depannya apabila

warna hijau (lapangan) yang didapat terlalu banyak, tetap saja robot akan

menganggap daerah kosong ada di hadapannya.

Gambar 3.15. Persebaran warna hijau yang nampak sangat dominan meski

ada robot di depannya

2. Adanya keterbatasan motion robot serta keterbatasan perangkat keras, sehingga

dalam kondisi ini menyebabkan gerakan robot yang lambat untuk menjauhkan bola,

untuk menjauhkan bola tanpa mencari posisi yang kosong saja sudah membutuhkan

waktu yang relatif lama, jika algoritma pada robot ditambahkan untuk mencari di

mana posisi yang kosong, hal ini akan menghilangkan tingkat efisiensi robot dalam

menjauhkan bola, malah memungkinkan akan menghilangkan kesempatan robot

kiper untuk menjauhkan bola. Karena tindakan terpenting pada robot yang digunakan

saat lomba hanyalah “bagaimana menjauhkan bola dari gawang dengan cepat”.