BAB III
PERANCANGAN
Pada bab ini akan dibahas perancangan tugas akhir yang meliputi mekanik robot yang dibuat, sistem kontrol robot, dan algoritma perangkat lunak pada robot.
3.1.Bagian Perangkat Keras
Pada bagian mekanik akan dijelaskan bentuk dan ukuran robot, hardware yang digunakan dan cara kerja hardware.
3.1.1. Robot Humanoid Kondo KHR-3HV
Basis perancangan menggunakan robot Kondo KHR-3HV yang merupakan robot
humanoid yang dirakit oleh Jepang dan digunakan sebagai robot petarung di negara asalnya. Kondo KHR-3HV merupakan edisi ketiga dari robot Kondo Kagaku. Pemilihan Kondo KHR-3HV karena harga robot dan suku cadang lebih terjangkau, badan robot yang kokoh, dan pada dasarnyarobot digunakan untuk bertarung. Robot
ini mampu menggerakkan servo motor hingga 22 Degree of Freedom (DOF). Saat
mengikuti kompetisi KRSBI, robot ini hanya menggunakan 20 DOF. Dengan rincian dua servo motor untuk kepala dan leher, tiga pasang servo motor untuk dua lengan, dan enam pasang servo motor untuk dua kaki.
Berikut adalah foto robot :
Gambar 3.1 Robot Kondo KHR-3HV tampak depan
Gambar 3.2 Robot Kondo KHR-3HV tampak samping
3.1.2. Servo Motor ICS KRS-2552RHV
Servo yang digunakan adalah dua belas servo KRS-2552RHV (Gambar 3.4) dengan torsi sebesar 14 kgfcm dan besar perputaran sudut maksimal 270o. Gambar 3.5 menunjukan nama setiap servo kaki yang terpasang.
Gambar 3.4 Servo KRS-2552RHV
3.1.3. Serial USB Adapter High Speed
Serial USB Adapter High Speed (HS) (Gambar 3.6) merupakan USB bawaan dari robot Kondo KHR-3HV yang digunakan untuk memberi nomor identitas ke servo KRS-2552RHV. Namun USB adapter ini juga bisa digunakan sebagai pengirim data dari Odroid XU4 ke servo motor ICS KRS-2552RHV. Data yang dikirim berupa nilai servo yang dikonversi dari derajat ke nilai yang bisa dibaca servo yaitu sebagai berikut : untuk data dari Odroid XU4 berupa derajat dari 0o hingga 270o, di mana 270o merupakan perputaran sudut maksimum dari servo KRS-2552RHV. Sedangkan nilai yang dapat diterima oleh servo KRS-2552RHV adalah angka offset servo yaitu angka dari 3500 hingga 11500. Maka dilakukan konversi dengan cara dibandingkan 0o dengan 3500 dan 270o dengan 11500.
3.1.4. Odroid XU4
Odroid XU4 (Gambar 3.7) adalah mini PC yang digunakan sebagai prosesor algoritma dan kontroler servo motor. Odroid XU4 merupakan sebuah Single Board Computer (SBC) yang terdiri dari satu buah board dengan kemampuan operasi layaknya komputer personal. Odroid XU4 dipilih karena ukurannya kecil yaitu 82 x 58 x 22 mm dan kecepatan proses 1.5Ghz quad core. Odroid XU4 akan diisi sistem operasi Linux dengan distro Ubuntu. Odroid XU4 ini mampu memproses algoritma dengan ringan dan cepat serta dapat mengontrol servo motor. Pada perancangan digunakan komunikasi serial antara mini PC dengan ke 12 servo kaki melalui Serial USB Adapter HS. Pada Odroid hanya digunakan Port USB saja dan disambungkan ke Serial USB Adapter HS. Supply Odroid menggunakan Battery Turnigy 2.2mah 11.1Volt 3 cells yang telah dipotong menjadi 5 Volt menggunakan Regulator UBEC Turnigy 5 Volt.
3.1.5. Bagan Perangkat Keras
Gambar 3.8 Bagan Skematik Sistem
Gambar 3.8 adalah bagan pada sistem yang dibuat, terdapat board PCB yang
tidak dijelaskan pada diagram blok sistem. Pada board PCB terdapat rangkaian supply dari battery menuju regulator ke Odroid XU4 dan servo, serta rangkaian untuk
3.2.Bagian Sistem dan Algoritma 3.2.1. Bagian Sistem
Gambar 3.9 Diagram Blok Sistem
Sistem terdiri dari PowerSupply, Voltage Regulator, Odroid XU4, Serial USB Adapter, dan 12 Servo KRS-2552RHV. Sistem dimulai dari Odroid XU4 yang
Pada Diagram Blok Sistem (Gambar 3.8) terdapat dua jenis anak panah, warna putih dan warna hitam. Anak panah warna putih menunjukan distribusi tegangan dari Battery ke Servo KRS-2552RHV dan Odroid XU4. Anak panah warna hitam menunjukan aliran data dari Odroid XU4 ke Serial USB Adapter HS kemudian ke setiap servo KRS-2552-RHV.
3.2.2Kinematika Balik
Untuk memudahkan perhitungan kinematika balik digunakan pendekatan geometri segitiga untuk mencari besar sudut pada konfigurasi setiap rantai kinematika. Pertama diketahui adalah panjang kaki robot yaitu 260 mm, akan digunakan sebagai posisi standby pada sumbu y. Panjang frame 1 dan frame 2 masing-masing 65 mm (Gambar 3.10).
Gambar 3.10 Gambar Frame Kaki Robot
Gambar 3.11 Gambar Urutan Servo Kaki dan Pergerakan Kaki Tahap pertama perhitungan arah hadap atau heading dan gerak kaki pada bidang X-Z. Pada tahap ini, nilai-nilai input yang harus diketahui adalah Heading, px, dan pz.
Untuk heading hanya menggunakan input nilai sudut saja. Heading, px, dan pz adalah
input nilai bisa berasal dari perhitungan pembangkit pola gerakan langkah atau diinput melalui program. Terdapat empat buah frame pada setiap kaki, dan panjang frame dari servo 0 ke servo 2, servo 2 ke servo 3, servo 3 ke servo 4, dan servo 4 ke telapak kaki masing-masing adalah sama yaitu 65 mm (Gambar 3.11). Berikut adalah gambar joint space pada bidang X-Z :
Gambar di atas adalah pemodelan kinematika tampak atas dari kaki robot jika kaki robot digerakkan pada bidang X-Z. Dapat diketahui (px, pz) adalah titik (point =
p) input algoritma, Ɵ1 adalah besar sudut untuk heading (servo 0) yang dituju, Rxz
adalah resultan gerak kaki pada sumbu (x) dan sumbu (z). B adalah besar sudut untuk mencari arah orientasi gerak kaki (ax, az) menuju sumbu (z). ax dan azakan memiliki
nilai jika terdapat nilai input heading tidak sama dengan 0. Berikut adalah persamaan-persamaan yang dipakai untuk mencari nilai-nilai diatas :
� = ℎ � � (1)
Tahap kedua berisi perhitungan gerak kaki pada bidang Y-Z yaitu gerakan kaki mengangkat (y) dan ke arah samping (z). Pada tahap ini, nilai-nilai input yang harus diketahui adalah nilai py, ay, dan az. Nilai az sudah diketahui dari perhitungan tahap
pertama. Pada perhitungan ini menggunakan pergerakan servo 1 (Ɵ2) dan servo 5 (Ɵ6)
pada Gambar 3.11. Nilai sudut yang dihasilkan adalah sama antara nilai Ɵ2dan Ɵ6
Gambar 3.13 Pemodelan Kinematika pada bidang Y-Z
Dari gambar di atas dapat dilihat Ɵ2 dan Ɵ6memiliki besar sudut yang sama, dan
nilai Ɵ2 dapat dicari besar sudut yang terbentuk dari frame ay dengan az, ay adalah
panjang frame yang bergerak dari servo 1 ke servo 5 sepanjang sumbu y (Gambar 3.10), dan Ryz adalah resultan gerak kaki pada sumbu (y) dan sumbu (z). by dan bz
adalah panjang garis bantu untuk menghitung resultan gerak kaki yang memiliki titik tumpu yang berbeda pada bidang Y-Z dan X-Y. Berikut adalah persamaan 6 untuk mencari nilai diatas:
= − − (6)
� = � = − (�
� ) (7)
= � × (8)
Tahap terakhir adalah perhitungan kinematika pada bidang X-Y yang akan mengatur gerak kaki robot melangkah ke depan sumbu (x) dan mengangkat sumbu (y). Pada tahap ini, nilai-nilai input yang harus diketahui adalah py, ax,az, by,dan bz.
Nilai axdan az sudah diketahui dari perhitungan tahap pertama, sedangkan nilai by,
dan bz, diketahui dari perhitungan tahap kedua.
Gambar 3.14 Pemodelan Kinematik pada bidang X-Y
Tahap ini merupakan tahap yang paling panjang karena memiliki tiga DOF. Pergerakan kaki pada bidang X-Y akan terjadi pada servo 2, servo 3, dan servo 4 (Gambar 3.11), di mana servo 3 adalah lutut robot. Ryz adalah resultan gerak antara
sumbu (y) dan sumbu (z). Selanjutnya dapat dilihat dari Gambar 3.14 bahwa Ɵ3
terbentuk dari penjumlahan sudut sA dengan sudut sB. sA terbentuk dari sudut antara Rxy dengan panjang garis antara servo 2 dengan servo 4 atau Rb, Rb didapat dari
pitagoras Ry dengan ax.Ɵ4 dapat diketahui dari sudut 180o yang dikurangi oleh sudut
yang terbentuk antara frame1 dengan frame2 dengan panjang yang sama. Kemudian Ɵ5 dapat diperoleh dari selisih Ɵ4dengan Ɵ3, atau bisa dilihat dari persamaan berikut:
= cos− �� 2+ �� 2−� 2
Algoritma dimulai dari deklarasi nilai seperti phi dan radian, inisialisasi variabel seperti nama sudut, dan variabel untuk menyimpan perhitungan matematis.
Nilai posisi final diinput ke dalam program atau mendapat masukan dari perhitungan pembangkit pola gerakan langkah, kemudian masuk ke perhitungan kinematika balik yang berisi algoritma penghitungan yang menghasilkan nilai sudut-sudut yang akan membentuk posisi akhir end-effector.
dapat menerima nilai tersebut. Konversi nilai dan pengaturan orientasi servo dilakukan secara bersamaan. Pengaturan orientasi servo akan mengatur arah perputaran servo, yaitu ke arah putaran clockwise atau counter-clockwise agar perputaran servo berputar sesuai pergerakan kaki manusia.