BAB III
PERANCANGAN SISTEM
Pada bab ini akan dijelaskan mengenai perancangan dari perangkat keras, serta perangkat lunak dari algoritma robot.
3.1. Perancangan Perangkat Keras
Pada bagian ini akan dijelaskan mengenai perancangan perangkat keras. Perancangan perangkat keras yang akan dijelaskan meliputi sistem kontrol, konstruksi robot, dan perangkat keras elektronik.
3.1.1. Sistem Kontrol
Gambar 3.1. Blok Diagram Sistem.
Sistem kontrol pada robot dibagi menjadi 2 bagian utama, yaitu kontrol utama dan
keseluruhannya terdiri dari motor servo, di mana perintah pergerakan tersebut diputuskan di kontrol utama.
1. Kontrol Utama
Kontrol utama pada robot terdiri dari sebuah smartphone dan mikrokontroler. Smartphone ini memiliki sensor-sensor yang digunakan untuk membuat suatu perintah. Kemudian untuk mengirimkan perintah gerakan robot ke servo controller digunakan sebuah mikrokontroler yang berfungsi untuk mengolah data dari smartphone tersebut. Dengan
menggunakan modul bluetooth untuk komunikasi secara serial antara
smartphone dan mikrokontroler. Selain itu, kontrol utama ini juga digunakan
untuk menggerakan kedua servo di bagian kepala.
2. Kontrol Aktuator Robot
3.1.2 Konstruksi Robot
Pada bagian ini akan dijelaskan mengenai perancangan konstruksi robot.
Gambar 3.2. Desain robot.
Robot menggunakan perpaduan antara plastik, aluminium dan acrylic untuk bodinya. Perpaduan bahan-bahan ini dimaksudkan agar robot memiliki bobot yang ringan sehingga robot memiliki keseimbangan yang baik serta kecepatan yang optimal. Robot ini akan memiliki 18 degree of freedom, dengan rincian 5 di setiap kaki, 3 di setiap lengan dan 2 di bagian kepala. Untuk control utamanya, yaitu sma rtphone
diletakan di punggung robot dengan tujuan tidak mengubah titik berat. Sedangkan ukuran telapak kaki akan menyesuaikan dengan tinggi robot agar mampu menyokong robot agar tetap stabil.
Tabel 3.1. Tabel Keterangan Mekanik Robot. HARDWARE
Dimensi (pxlxt) : 200x100x440 [mm]
Berat ± 2 [kg]
3.1.3 Perangkat Keras Elektronik
Pada bagian ini akan dijelaskan mengenai smartphone beserta sensor yang digunakan, board minimum sistem mikrokontroler Atmega 324 dan modul
DF-bluetooth V3.
1. Smartphone
Smartphone berbasis android merupakan salah satu piranti yang dapat
digunakan sebagai kontrol robot. Dengan kecepatan proses instruksi yang cepat, smartphone dapat memberikan perintah secara real time pada robot humanoid. Selain kecepatan proses instruksi, smartphone berbasis android dapat bekerja secara multitasking sehingga sangat jelas bahwa proses jalannya
program lebih cepat dan ringan. Adanya OS android pada smartphone
mempermudah proses pemrograman dan mengakses sensor-sensor serta fitur-fitur yang ada dalam smartphone itu sendiri karena library android merupakan
open source dimana libra ry android untuk pengaksesan sensor serta fitur-fitur
tersebut sudah tersedia di Google. Library untuk image processing
menggunakan Open CV yang sudah tersedia dalam android sehingga pemrograman tracking ball menjadi lebih mudah.
Smartphone yang digunakan pada robot R2C adalah Sony Xperia Mini
ST15i. R2C menggunakan smartphone ini karena alasan dimensi yang cocok dan spesifikasi yang memadai [10]. Spesifikasi yang dimiliki Sma rtphone
Sony Xperia ini adalah sebagai berikut :
1. Memiliki dimensi 88 x 52 x 16 mm dengan berat 99g.
2. Touchscreen dengan ukuran 320x 480 pixels
3. Terdapat Wi-FI dan Bluetooth 4. Kamera 5MP
5. Android OS v2.3
6. CPU 1Ghz
kalibrasi warna untuk mendeteksi warna bola dan warna gawang karena
smartphone memiliki layar sentuh yang digunakan untuk display sekaligus
layar sentuh yang sangat membantu untuk mengatur kalibrasi warna[11]. Sensor-sensor yang ada dalam smartphone antara lain :
1) Sensor Accelerometer
Sensor ini memiliki 3 sumbu fisik (x, y dan z). Jika sensor dimiringkan kearah sumbu x, maka akan memberikan nilai balikan positif dan akan naik secara linear sesuai dengan kemiringan sensor. Sebaliknya jika sensor dimiringkan kearah sumbu –x, maka akan memberikan nilai balikan negatif dan naik secara linear sesuai dengan
kemiringan sensor pada sumbu –x. Kerja sensor pada kemiringan sumbu y dan –y, sumbu z dan -z sama dengan kerja sensor pada kemiringan sumbu x dan –x.
Dengan menggunakan kombinasi nilai dari ketiga sumbu fisik tersebut, dapat diketahui posisi robot sedang terjatuh atau tidak, jatuh depan, jatuh belakang ataupun jatuh samping.
Gambar 3.3. Sensor Accelerometer Smartphone[11]
2) Kompas
Kompas (Sensor Orientation) Sensor ini mengembalikan 3 nilai yaitu azimuth, pitch, dan roll. Dimana azimuth merupakan rotasi di sekitar sumbu Z, pitch merupakan rotasi di sekitar sumbu X dan roll
Gambar 3.4. Sensor Orientation Smartphone[11]
Nilai ini dikembalikan dalam bentuk derajat dengan jangkauan antara 0 dan 360 derajat.
Dengan menggunakan sensor ini, dapat diketahui kemana arah robot menjaga gawang sehingga tidak mungkin robot terbalik dalam menjaga gawang.
3) Kamera
Perangkat ini merupakan perangkat penting yang harus dimiliki oleh setiap robot pemain bola, karena kamera ini merupakan mata bagi robot.
Setiap sma rtphone pasti dilengkapi dengan kamera.
Keunggulan dari kamera pada smartphone adalah sudah dilengkapi dengan teknologi auto brightness, auto focus, dan white balance.
Dengan memanfaatkan hal ini, kamera dapat digunakan untuk image
processing yang maksimal tanpa khawatir kamera ini blur atau
bermasalah dalam pencahayaan. Perbedaan warna yang ada di lapangan dapat diproses sehingga dapat dideteksi bola dan gawang. Oleh karena itu, robot dapat mengejar bola berwarna oranye dan menangkisnya jika bola ke arah gawang.
4) Bluetooth
terhubung dengan servo controller. Tugas dari servo controller adalah sebagai penerjemah data atau instruksi yang diterima via bluetooth dari android. Data atau instruksi yang telah diolah tersebut adalah data yang digunakan untuk menggerakan servo kepala dan memerintahkan servo
controller dalam pemanggilan motion.
2. Mikrokontroler Tipe Atmega 324
Mikrokontroler adalah sebuah sistem microprosesor di mana didalamnya sudah terdapat CPU, ROM, RAM, I/O, Clock, dan peralatan internal lainnya yang sudah saling terhubung dan terorganisasi dengan baik oleh pabrik pembuatnya dan dikemas dalam satu chip yang siap pakai. Sehingga kita tinggal
memprogram isi ROM sesuai aturan penggunaan oleh pabrik yang membuatnya [12].
Penulis menggunakan mikrokontroler tipe 324 karena selain dapat diprogram dengan bahasa C dan banyak dijual dipasaran, mikrokontroler ini memiliki dua pin TX dan dua pin RX sehingga mikrokontroler ini dapat berkomunikasi secara serial dengan servo controller dan modul Bluetooth yang digunakan untuk berkomunikasi dengan smartphone android untuk memberikan perintah kepada robot.
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-DF-Bluetooth V3.
Gambar 3.6. DF-Bluetooth V3 [13].
3.2. Perancangan Perangkat Lunak
Untuk merancang robot humanoid kiper yang dapat secara cepat dan tepat, penulis memilih untuk menggunakan penggabungan dua mode yaitu mode pinalti dan
mode counter. Yang dimaksud dengan mode pinalti adalah mode di mana robot akan mengunci bola yang diam dan apabila bola ditendang ke arahnya dia langsung akan merespon secara seketika. Mode pinalti ini digunakan pada saat bola sudah masuk ke daerah pinalti (180cm dari gawang). Sedangkan yang dimaksud dengan mode counter adalah mode yang menghitung kecepatan bola, jadi dengan mode ini robot dapat memperkirakan apakah bola sampai ke daerahnya dan perlu menangkisnya atau tidak. Mode ini digunakan pada saat bola berada di luar daerah pinalti dengan maksud robot tidak melakukan gerakan yang sia-sia dengan jatuh ke kanan, jatuh ke kiri ataupun split untuk menjaga bola.
Akan dibahas dua algoritma yaitu algoritma pertama dan algoritma kedua. Algoritma kedua dibuat untuk dijadikan pembanding dengan algoritma pertama.
Algoritma pertama ini adalah algoritma baru yang dirancang dalam penelitian ini. Perancangan algoritma ini dibuat dengan tujuan optimalisasi. Beberapa hal yang perlu diperhatikan dalam algoritma ini adalah dalam pengambilan keputusan. Gambar 4.4.1 menunjukan diagram alir algoritma pertama.
tidak
ya ya
ya
tidak tidak
tidak tidak
tidak ya
ya ya
tidak
ya
Gambar 3.7. Diagram alir algoritma pertama Kejar bola
Buang bola
Inisialisasi mode penalti Inisialisasi
Algoritma kedua merupakan algoritma yang lama, sebelum dioptimalisasi. Algoritma ini masih belum optimal karena robot belum bisa mengejar bola dan membuang bola apabila dekat. Selain itu algoritma ini masih kurang akurat dalam menghalau bola. Gambar 3.8 menunjukkan diagram alir algoritma kedua.
tidak
ya
tidak
ya
tidak
ya
Optimalisasi yang dilakukan pada robot dari algoritma lama menjadi yang baru, penulis menambahkan beberapa algoritma di setiap prosesnya agar menjadi lebih akurat dan efisien. Optimalisasi yang sudah dilakukan penulis :
3.2.1 Proses Mengejar Bola
Proses ini ditambahkan dengan tujuan robot kiper dapat mengejar bola yang berada di daerahnya. Apabila bola di daerahnya tidak dikejar, ini akan menguntungkan pihak lawan untuk mencetak gol. Pada algoritma lama belum ada proses ini dikarenakan hardware yang belum stabil, dengan hardware yang sekarang robot mampu melakukan proses ini.
3.2.2 Proses Membuang Bola
Proses ini merupakan lanjutan dari proses mengejar bola. Proses ini bertujuan untuk menjauhkan bola yang berada di dekat robot kiper, sehingga robot kiper memiliki space untuk kembali bersiap-siap dalam posisi menjaga bola. Berikut adalah diagram alir dari proses membuang bola :
Gambar 3.10. Diagram Alir Proses Membuang Bola
3.2.3 Mode Penalti
Mode ini sebenarnya pengembangan dari algoritma lama yang sudah dioptimalisasi dalam eksekusi menghalau bola. Dalam algoritma baru, mode ini hanya digunakan dalam jarak dekat saja.
Gambar 3.11. Diagram Alir Mode Pinalty
3.2.4 Mode Counter
Mode ini merupakan pelengkap dari mode penalti, yang digunakan untuk eksekusi bola yang berada dalam jarak jauh. Penambahan mode ini
dimaksudkan agar robot kiper lebih akurat, apabila bola yang mengarah ke gawang tidak sampai ke daerah jangkauannya maka robot kiper tidak perlu jatuh sehingga akan lebih siap untuk menjaga gawang jika robot dari tim lawan kembali menendang ke arah gawang. Selain itu robot kiper menjadi
Berikut adalah diagram alir dari mode counter :
3.2.5 Proses Kembali ke Posisi Awal
Untuk membuat robot kiper menjadi lebih effisien, penulis membuat robot agar dapat kembali ke posisi awal setelah robot kiper melakukan proses mengejar dan membuang bola. Mengingat di mana pentingnya penempatan posisi kiper agar dapat lebih akurat untuk menjaga gawang.
Berikut merupakan diagram alir dari proses robot untuk kembali ke posisi awal :