BAB II DASAR TEORI
Pada bab ini akan dibahas teori-teori pendukung yang digunakan sebagai acuan dalam merancang robot menggunakan algoritma kinematika balik.
2.1. Metode Trial and Error Metode trial and error adalah metode pendekatan analisis numerik dan optimalisasi algoritma dalam pembuatan locomotion robot. Locomotion adalah gerakan atau kemampuan bergerak dari suatu tempat ke tempat lain. Metode ini digunakan dalam sistem gerakan robot sebelumnya. Metode trial and error tidak efisien dan hasilnya adalah solusi non-optimal yang hanya beradaptasi dengan situasi yang sangat spesifik [3]. Situasi spesifik tersebut misalnya perbedaan tingkat gesekan antara lantai dengan telapak kaki robot. Untuk membangun sebuah robot sepak bola dibutuhkan kemampuan bergerak seperti berjalan, bergeser, berputar dan menendang, dan dibutuhkan tiga buah kecepatan untuk salah satu contoh dalam gerakan berjalan yaitu jalan lambat, jalan sedang, dan jalan cepat. Tabel 2.1 menunjukan gerakan yang dibutuhkan oleh sebuah robot sepak bola R2C. Dibutuhkan beberapa locomotion untuk menyusun satu buah gerakan (Gambar 2.1), dan setiap locomotion berisi beberapa analisis numerik (Gambar 2.2). Analisa numerik didapat dari percobaan pelaksanaan rangkaian locomotion suatu gerakan dengan cara menginput nilai tertentu. Metode ini hanya bisa digunakan jika penggunaan Degree of Freedom (DOF) sedikit dan sangat sulit dikerjakan jika menggukan banyak DOF. Pengaturan gerakan seperti pergantian gerakan dan transisi gerakan dikontrol melalui algoritma. Pergantian gerakan sendiri berisi perintah seperti pergantian gerakan saat robot berjalan kemudian berhenti dan kemudian menendang. Transisi gerakan berisi pergantian kaki yang benar ketika berganti gerakan seperti akhir dari gerakan berjalan menggunakan kaki kanan kemudian menutup kaki kiri dan bergeser ke kanan menggunakan kaki kanan. Pada kasus transisi gerakan tanpa menggunakan algoritma 4
transisi biasanya ditemui akhir dari gerakan berjalan menggunakan kaki kanan tanpa menutup kaki kiri sehingga menyebabkan robot terjatuh. Proses pembuatan gerakan melalui metode trial and error membutuhkan waktu yang sangat lama dan belum tentu pengeksekusian gerakan akan sama pada permukaan lantai dengan tingkat gesekan yang berbeda. Hal ini disebabkan oleh karena gaya berjalan tanpa menggunakan pola gerakan yang benar yang sulit dicapai. Gerakan berjalan yang terjadi seperti gerakan berjalan dengan telapak kaki yang menyeret dan tidak terangkat sehingga terjadi banyak gesekan terhadap telapak kaki dengan permukaan lantai. Hal lain akan terjadi jika pola gerakan berjalan menggunakan pola berjalan yang benar seperti mengangkat kaki robot sehingga hanya terjadi gesekan kecil antara kaki robot dengan permukaan lantai. Untuk mewujudkan pola gerakan langkah yang benar dibutuhkan suatu algoritma pembangkit gerakan langkah robot yang diterapkan pada telapak kaki robot, dan untuk merealisasikan pola tersebut diperlukan suatu perhitungan untuk menghasilkan nilai sudut dari pola gerakan tersebut.
Tabel 2.1 Daftar Gerakan Robot Kondo KHR-3HV R2C-R9 Nomor
Gerakan
Nomor
Gerakan
1
Standby
11
Mundur Sedang
2
Bangun Telungkup
12
Maju Lambat
3
Bangun Terlentang
13
Maju Sedang
4
Jalan Kiri Lambat
14
Maju Cepat
5
Jalan Kiri Sedang
15
Tendang Kanan
6
Jalan Kiri Cepat
16
Tendang Kiri
7
Jalan Kanan Lambat
17
Rotasi Kanan
8
Jalan Kanan Sedang
18
Rotasi Kiri
9
Jalan Kanan Cepat
19
Putar Kanan
10
Mundur Lambat
20
Putar Kiri
5
Gambar 2.1 Diagram Locomotion Sebuah Gerakan
Gambar 2.2 Analisis Numerik dari Sebuah Locomotion
2.2. Pembangkit Pola Gerakan Langkah Pembangkit Pola Gerakan Langkah adalah perhitungan pola lintasan dalam ruang koordinat kartesian yang terdiri dari dua fungsi lintasan. Fungsi pertama adalah fungsi lingkaran yang digunakan untuk posisi pergelangan kaki robot. Fungsi kedua adalah fungsi polinomial yang digunakan untuk menetapkan interval waktu posisi mendarat telapak kaki robot.
6
Pembangkit Pola Gerakan Langkah akan menghasilkan lintasan untuk pergelangan kaki robot dalam sumbu x, sumbu y, sumbu z, lintasan arah robot, dan kecepatan langkah robot. Setiap nilai lintasan dari perhitungan ini akan dieksekusi oleh perhitungan kinematika balik. Nilai tersebut akan membentuk grafik lengkung seperti pada Gambar 2.3.
Gambar 2.3 Kurva Gerakan Langkah
7
2.3. Kinematika Robot Kinematika
mempelajari
gerak
dan
pengembangan
persamaan
untuk
menggambarkan gerakan benda-benda tanpa mempertimbangan gaya (forces), penyebab gerakan atau interaksi yang mungkin terjadi selama gerakan [4]. Rantai Kinematika (kinematic chain) adalah manipulator buatan yang berinteraksi dengan lingkungan dan biasanya digambarkan sebagai rakitan frame robot yang bersambungan dengan sendi putar. Sendi berputar dan memberikan kontrol posisi sudut relatif dari manipulator. Tidak semua kombinasi posisi sendi dalam suatu rantai kinematika valid, karena beberapa kombinasi menyebabkan tabrakan antar frame atau dengan lingkungan yang bersifat tetap seperti lantai atau dinding. Semua kombinasi valid dari rantai kinematika membentuk ruang sendi (joint space). Sedangkan banyaknya sendi dalam rantai kinematika disebut Degree of Freedom (DOF) atau derajat kebebasan. Semakin banyak jumlah DOF yang ada membuat fleksibilitas gerakan manipulator menjadi lebih banyak. Kinematika robot adalah aplikasi geometri untuk mempelajari rantai kinematika dengan beberapa DOF. Kinematika robot memberikan transformasi dari joint space yang didefinisikan ke ruang Kartesian di mana robot manipulator bergerak. Kinematika robot cukup berguna, karena dapat digunakan untuk perencanaan dan pelaksanaan gerakan [5]. Kinematika dibagi menjadi dua yaitu kinematika maju (forward kinematics) dan kinematika balik (inverse kinematics) dan diterapkan pada suatu rantai kinematika (Gambar 2.4) atau hubungan antar sendi dari base-frame (posisi pangkal) menuju endeffector (posisi akhir).
Gambar 2.4 Rantai Kinematika
8
Joint space memberikan sedikit informasi tentang posisi dan orientasi dari endeffector rantai kinematika. Kinematika maju mendefinisikan pemetaan dari joint space ke ruang Kartesian tiga dimensi dengan m sendi dan nilai sendi (Ɵ1, Ɵ2, …, Ɵm). Kinematika maju dapat menemukan posisi (px, py, pz) dan orientasi (ax, ay, az) dari endeffector rantai kinematika dalam ruang (x, y, z) tiga dimensi [5]. Kinematika maju bersifat domain-independent atau dapat diselesaikan dengan satu cara untuk tingkat kesulitan rendah maupun tinggi untuk setiap permasalahan rantai kinematika. Dengan kata lain kinematika maju digunakan untuk mencari posisi akhir dalam bidang kartesian dari masukan berupa sudut dari setiap sendi rantai kinematika. Sehingga metode kinematika maju tidak sesuai dengan metode pembangkit pola gerakan langkah robot. Pembangkit pola gerakan langkah menghasilkan nilai yang akan diterapkan pada endeffector, dan agar end-effector dapat menentukan nilai yang sesuai dengan rantai kinematika maka digunakan kinematika balik yang akan memberikan cara menuju ruang tiga dimensi untuk ruang sendi. Kinematika balik berisi hubungan titik dalam tiga dimensi yaitu posisi (px, py, pz) dan orientasi (ax, ay, az) terhadap nilai sendi atau sudut (Ɵ1, Ɵ2, …, Ɵm) dari ruang sendi dalam rantai kinematika dengan m sendi, atau kinematika balik digunakan untuk mencari nilai sudut setiap sendi dari masukan posisi akhir dalam bidang Kartesian. Hal ini ditunjukan oleh Gambar 2.5. Kinematika balik bersifat domain-dependent atau memiliki solusi yang berbeda untuk setiap konfigurasi rantai kinematika. Solusi untuk kinematika balik bisa berupa analisis, closed-form equation, dan pendekatan matematis berulang. Setiap penambahan DOF menyebabkan setiap titik dalam ruang tiga dimensi dapat memiliki lebih dari satu titik yang cocok dalam ruang sendi (joint space). Banyaknya solusi membuat perhitungan kinematika adalah perhitungan yang berkesinambungan [5].
Gambar 2.5 Diagram Perbedaan Kinematika
9
Kinematika balik memberikan kontrol langsung pada end-effector objek akan berakhir pada akhir rantai kinematika sehingga dapat menempatkan servo motor di lokasi yang diinginkan [6]. Pada tugas akhir ini end-effetor adalah telapak kaki robot. Servo motor juga membutuhkan masukan berupa sudut, oleh karena itu digunakan kinematika balik sebagai perhitungan.
10