-
11
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 dasarnya robot 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.
Bagian mekanik robot memiliki tinggi 48 cm, lebar 20,5 cm dan
sudah
memenuhi aturan ukuran robot maksimal pada KRSBI. Pada tugas
akhir ini hanya
menggunakan kaki robot saja untuk mengaplikasikan kinematika
balik. Ukuran kaki
robot memiliki panjang 26 cm dan digunakan sebagai besaran
perhitungan
kinematika balik, dengan enam servo pada masing-masing kaki.
Gambar 3.1
menunjukkan ukuran panjang kaki robot tiap frame dan arah
perputaran servo.
-
12
Berikut adalah foto robot :
Gambar 3.1 Robot Kondo KHR-3HV tampak depan
Gambar 3.2 Robot Kondo KHR-3HV tampak samping
Gambar 3.3 Ukuran Panjang Kaki Robot dan Arah Perputaran
Servo
-
13
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
Gambar 3.5 Penamaan Servo Motor
-
14
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.
Gambar 3.6 Serial USB Adapter HS
-
15
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.
Gambar 3.7 Odroid XU4
-
16
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
pengiriman data dari Serial USB Adaptor HS ke servo.
-
17
3.2. Bagian Sistem dan Algoritma
3.2.1. Bagian Sistem
Gambar 3.9 Diagram Blok Sistem
Sistem terdiri dari Power Supply, Voltage Regulator, Odroid XU4,
Serial USB
Adapter, dan 12 Servo KRS-2552RHV. Sistem dimulai dari Odroid
XU4 yang
bekerja sebagai prosesor algoritma dan kontroler servo. Odroid
XU4 dicatu dengan
daya sebesar 5 Volt dari Battery 2.2mAh 11.1 Volt melalui
Voltage Regulator UBEC
5 Volt. Data masukan Odroid merupakan input melalui program atau
data dari
pembangkit pola gerakan kemudian diproses sehingga didapat hasil
nilai-nilai sudut
servo yang akan dikomunikasikan ke servo KRS-2552RHV melalui
Serial USB
Adapter HS yang terhubung dengan Odroid XU4 melalui USB Port.
Serial USB
Adapter HS akan mengirimkan nilai ke masing-masing servo
KRS-2552RHV. Servo
KRS-2552RHV dicatu menggunakan Battery 2.2mAh 11.1Volt tanpa
menggunakan
regulator.
-
18
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.2 Kinematika 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
Pergerakan kaki dalam tiga dimensi (x, y, z) akan dihitung dan
dibagi menjadi
tiga tahap. Perhitungan dimulai dari bidang yang memakai DOF
yang paling sedikit
ke bidang yang memakai DOF yang paling banyak, pada
masing-masing bagian yaitu
bidang X-Y memakai satu DOF, bidang Y-Z dua DOF, dan bidang X-Y
memakai
tiga DOF. Berikut adalah gambar urutan servo yang akan digunakan
dalam penjelasan
diagram kartesian dan perhitungan matematis.
-
19
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 3.12 Pemodelan Kinematika pada bidang X-Z
-
20
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 az akan memiliki
nilai jika terdapat nilai input heading tidak sama dengan 0.
Berikut adalah persamaan-
persamaan yang dipakai untuk mencari nilai-nilai diatas :
𝜃1 = ℎ𝑒𝑎𝑑𝑖𝑛𝑔 (1)
𝑅𝑥𝑧 = √𝑝𝑥2 + 𝑝𝑧2 (2)
𝐵 = 𝑡𝑎𝑛−1 (𝑝𝑧
𝑝𝑥) − ℎ𝑒𝑎𝑑𝑖𝑛𝑔 (3)
𝑎𝑧 = 𝑅𝑥𝑧 × 𝑠𝑖𝑛𝐵 (4)
𝑎𝑥 = 𝑅𝑥𝑧 × 𝑐𝑜𝑠𝐵 (5)
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 Ɵ2 dan Ɵ6
namun orientasi perputaran servo berbeda. Hal ini disebabkan
konfigurasi kaki robot
yang mengharuskan telapak kaki harus tetap mendatar agar robot
dapat berdiri.
Berikut adalah gambar pemodelan kinematika pada bidang Y-Z.
-
21
Gambar 3.13 Pemodelan Kinematika pada bidang Y-Z
Dari gambar di atas dapat dilihat Ɵ2 dan Ɵ6 memiliki 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:
𝑎𝑦 = 𝑝𝑦 − 25𝑚𝑚 − 25𝑚𝑚 (6)
𝜃2 = 𝜃6 = 𝑡𝑎𝑛−1 (
𝑎𝑧
𝑎𝑦) (7)
𝑏𝑦 = 𝑐𝑜𝑠𝜃2 × 40𝑚𝑚 (8)
𝑏𝑧 = 𝑠𝑖𝑛𝜃2 × 40𝑚𝑚 (9)
-
22
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 ax dan 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 Ɵ4 dengan Ɵ3, atau bisa dilihat
dari persamaan berikut:
𝑅𝑦𝑧 = √(𝑝𝑦 − 50𝑚𝑚 − 2 × 𝑏𝑦)2
+ (𝑎𝑧 − 2 × 𝑏𝑧)2 (10)
𝑅𝑥𝑦 = √𝑅𝑦𝑧2 + 𝑎𝑥2 (11)
𝑠𝐴 = sin−1(𝑎𝑥/𝑅𝑥𝑦) (12)
-
23
𝑠𝐶 = cos−1 (𝑓𝑟𝑎𝑚𝑒2+𝑓𝑟𝑎𝑚𝑒2−𝑅𝑥𝑦2
2×𝑓𝑟𝑎𝑚𝑒×𝑓𝑟𝑎𝑚𝑒) (13)
𝑠𝐵 = sin−1 (𝑓𝑟𝑎𝑚𝑒×sin 𝑠𝐶
𝑅𝑥𝑦) (14)
𝜃3 = 𝑠𝐴 + 𝑠𝐵 (15)
𝜃4 = 180 − 𝑠𝐶 (16)
𝜃5 = 𝜃4 − 𝜃3 (17)
3.2.3 Bagian Algoritma
Gambar 3.15 Diagram Alir Algoritma
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.
Setelah melakukan perhitungan, selanjutnya masuk ke koversi
nilai hasil
perhitungan yang berupa nilai sudut akan dikonversi ke nilai
offset servo agar servo
-
24
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.
Langkah selanjutnya adalah mengirimkan nilai offset servo ke
servo agar servo
dapat bergerak sesuai nilai perhitungan algoritma. Pengiriman
data nilai merupakan
protokol pengiriman dari Serial USB Adapter HS. Pergerakan
langkah akan
disempurnakan dengan algoritma keseimbangan dan algoritma
selesai.
-
25