2.1 Matrik Transformasi Posisi Dan Orientasi: Definisi
2.1 Matrik Transformasi Posisi Dan Orientasi: Definisi
2
Open Kinematic
Mixed Kinematic
Review : Vector dan Matriks
Dot Product: a x
a
Representasi Geometri: y
A b x
A B A B cosθ b
θ y
Representasi vektor : B
a x b x
A B a xb x a y b y
a y b y
B
uB B
B 4
uB
Review : Vector dan Matriks
Terminologi
Square matrix A adalah Matriks A (n x n), disebut, Matriks A
berorde n (square matrix of order n) merupakan matriks yang
memiliki jumlah baris dan kolom sama (m = n)
Diagonal Matrix adalah square matrix, dengan elemen aij = 0 jika
ij
Identity matriks (Matriks Identitas) adalah diagonal matrix
dimana nilai elemen aij = 1 jika i = j
Symetric Matrix (Normal Matrix) adalah square matrix dimana
nilai transpose adalah nilai matrik itu sendiri, A = AT atau
elemen aij = aji
Skew Matrix adalah square matrix dimana nilai elemen aij = - aji
atau jika A adalah Skew Matrix maka A = - AT
Sebuah symetric matrix A dapat dibuat dari sebuah non-symetric
matrix B, dengan operasi A = B + BT/2 5
Orthogonal Matrik adalah A A T = -1
Review : Vector dan Matriks
Matrix Multiplication:
Matriks A (m x n) dan Matriks B (n x p), dapat dikalikan jika
jumlah kolom Matriks A sama dengan jumlah baris Matriks B.
Perkalian matriks tidak secara umum tidak bersifat komutatif
(Non-Commutative Multiplication) AB is NOT equal to BA
a b e f ae bg af bh
c d g
h ce dg cf dh
Matrix Addition:
a b e f a e b f
c d g
h c g d h
6
Review : Vector dan Matriks
Matrix Determinant
n n
. A a
k 1
ik Aik akj Akj
k 1
Cofactor
A jk 1
j k
M jk
Inverse Matrix : (matriks cofactor dibagi dengan determinant)
1
a11 a12 . . . a1n A11 A21 . . . An1
a . . . a2 n A An 2
21 a22 12 A22 . . .
a a32 . . . . 1 A13 A23 . . . .
A1 31
. . . . . . A . . . . . .
. . . . . . . . . . . .
an1 an 2 . . . ann A1n A2 n . . . Ann
7
Matrix dan Vector Review
Karakteristik Matriks
Rank sebuah matriks A (m x n) = orde dari sub matriks A terbesar
dengan determinan = 0
Sebuah matrik dengan orde yang lebih besar dari Rank adalah matriks
Singular
Jika | A | 0, maka Matriks A adalah non singular
Matriks yang non singular memiliki inverse
Inverse of a diagonal Matrix a 0 1 / a 0
0 b 0 1 / d
8
Transformasi Dasar
Dua persoalan Transformasi :
Bagaimana menghitung nilai sebuah titik terhadap sebuah KK
tertentu yang mengalami rotasi
o Penentuan Matrik Rotasi Dasar
Bagaimana menghitung nilai sebuah titik tehadap sebuah KK
tertentu yang mengalami translasi/pergeseran
o Penentuan Vektor Translasi
Matrik Rotasi Dasar
Perhatikan dua buah Kerangka Koordinat (KK) 0XYZ
dan 0UVW yang pada saat awal berimpit
OXYZ merupakan KK diam
OUVW merupakan KK bergerak
Titik P ikut bergerak bersama KK OUVW
Pada saat KK OUVW bergerak/berputar, titik pusat
(origin) selalu berimpit dengan titik pusat KK OXYZ
(coincident)
9
Matrik Rotasi Dasar
Titik P dapat direpresentasikan dalam nilai koordinat
terhadap KK OXYZ maupun KK OUVW,
pUVW = (pu, pv, pw)T
pXYZ = (px, py, pz)T
Persoalannya adalah bagaimana menghitung matrik
transformasi (3 x 3) yang akan mentransformasikan
koordinat pUVW menjadi nilai koordinat yang dinyatakan
terhadap KK OXYZ
pXYZ = R pUVW
10
Matrik Rotasi Dasar
titik pUVW dan pXYZ , masing-masing dapat dinyatakan
dalam nilai komponen vektor, yang menyatakan proyeksi
titik P terhadap masing-masing sumbu dari KK
pXYZ = px ix + py jy + pz kz)
pUVW = pu iu + pv jv + pw kw)
i, j, k = vektor satuan dalam arah sumbu KK
Berdasarkan definisi dari Dot product
11
Matrik Rotasi Dasar
Persamaan sebelumnya dapat diekspresikan ke dalam
bentuk matrik
12
Matrik Rotasi Dasar
Karena Dot Product bersifat komutatif
Q = R-1 = RT
QR = RTR = R-1R = I
Q, R disebut matrik transformasi orthogonal
Disebut juga matrik transformasi orthonormal karena
elemen-elemen nya berupa vektor satuan (unit vector)
13
Matrik Rotasi Dasar
Rotasi Terhadap Sumbu X
14
Matrik Rotasi Dasar
Rotasi Terhadap Sumbu X
15
Matrik Rotasi Dasar
pXYZ = Ry, pUVW
jy jv
16
Matrik Rotasi Dasar
pXYZ = Rz, pUVW
k z kw
17
Matrik Rotasi Dasar (Contoh)
Diketahui dua buah titik auvw = (4,3,2)T dan buvw = (6,2,4)T
terhadap KK OUVW hitunglah nilai titik tersebut terhadap
KK OXYZ (axyz dan bxyz) jika KK OUVW diputar terhadap
sumbu OZ sebesar 60o
18
Matrik Rotasi Dasar (Contoh)
Diketahui dua buah titik axyz = (4,3,2)T dan bxyz = (6,2,4)T
terhadap KK OXYZ hitunglah nilai titik tersebut terhadap
KK OUVW (auvw dan bovw) jika KK OUVW diputar terhadap
sumbu OZ sebesar 60o
19
Matrik Rotasi Komposit
Matrik rotasi dasar dapat dikalikan untuk menyatakan
rotasi terhadap beberapa sumbu dari Kerangka Koordinat
Mengingat bahwa perkalian matriks tidak bersifat
komutatif, maka urutan rotasi terhadap beberapa sumbu
menjadi penting
Contoh 1, Pada saat awal KK OXYZ dan KK OUVW berimpit.
Hitunglah nilai matrik rotasi, apabila KK OUVW berturut-turut :
diputar terhadap sumbu OX sebesar sudut , kemudian
diputar terhadap sumbu OZ sebesar sudut , kemudian
diputar terhadap sumbu OY sebesar sudut
20
Matrik Rotasi Komposit
Contoh 2, Pada saat awal KK OXYZ dan KK OUVW berimpit.
Hitunglah nilai matrik rotasi, apabila KK OUVW berturut-turut :
diputar terhadap sumbu OY sebesar sudut , kemudian
diputar terhadap sumbu OZ sebesar sudut , kemudian
diputar terhadap sumbu OX sebesar sudut
21
Matrik Rotasi Komposit
KK OUVW (bergerak) selain dapat diputar terhadap KK
OXYZ (referensi/diam) dapat pula diputar terhadap
sumbunya sendiri (sumbu OU, sumbu OV atau sumbu OW)
Aturan umum untuk menghitung matriks transformasi
komposit yang mencakup dua kemungkinan rotasi diatas
(berputar terhadap sumbu KK diam atau KK dirinya
sendiri) adalah :
Pada saat awal dua buah KK tersebut berimpit (coincident) dengan
demikian matrik rotasi adalah matrik Identitas/Satuan, I
Bila KK OUVW diputar terhadap salah satu sumbu dari KK
OXYZ lakukan proses perkalian premultiply sesuai dengan
matriks rotasi dasar dan urutannya
Bila KK OUVW diputar terhadap salah satu sumbu dari KK nya
sendiri (OUVW) lakukan proses perkalian postmultiply sesuai
dengan matriks rotasi dasar dan urutannya
22
Matrik Rotasi Komposit
Contoh, Pada saat awal KK OXYZ dan KK OUVW berimpit.
Hitunglah nilai matrik rotasi, apabila KK OUVW berturut-turut :
diputar terhadap sumbu OY sebesar sudut , kemudian
diputar terhadap sumbu OW sebesar sudut , kemudian
diputar terhadap sumbu OU sebesar sudut
24
Rotasi Terhadap Sumbu Sembarang
Untuk mensejajarkan Sumbu OR dengan sumbu OZ dapat dilakukan dengan
cara memutar sumbu OR terhadap sumbu OX sebesar sudut (sumbu OR
sekarang berada di bidang XZ) kemudian diputar terhadap sumbu OY sebesar
sudut - (Sumbu OR sejajar dengan sumbu OZ).
Setelah diputar terhadap sumbu OZ (atau sumbu OR) sebesar , kembalikan
lagi sumbu OR ke posisi semula dengan cara membalik urutan diatas dengan
sudut yang berlawanan
25
Rotasi Terhadap Sumbu Sembarang
Dengan demikian, Matrik Rotasi ,Rr, , yang merepresentasikan putaran
terhadap sumbu sembarang dapat dinyatakan menjadi
Dimana :
26
Rotasi Terhadap Sumbu Sembarang
CONTOH : Hitunglah matrik rotasi Rr, yang merepresentasikan
putaran sebesar sudut terhadap vektor r = (1, 1, 1)T
Karena vektor r bukan vektor satuan maka komponen vektornya
perlu dinormalisasi sepanjang sumbu-sumbu utama dari KK
OXYZ, yaitu :
27
Rotasi Dengan sudut Euleur
Perputaran sudut dari sebuah KK seringkali dinyatakan dalam
perputaran sudut Euler, yaitu , , dan terhadap KK referensi
Terdapat 3 sistem perputaran sudut Euleur yang pada dasarnya
perbedaannya terletak pada urutan putarannya. Tiga sistem
perputaran ditunjukkan dalam Tabel dibawah ini
Sudut Euler Sudut Euler Sudut Euler
Sistem I Sistem II Sistem III
(Roll, Pitch
Urutan
and Yaw
1 Terhadap Terhadap Terhadap
sumbu OZ sumbu OZ sumbu OX
2 Terhadap Terhadap Terhadap
sumbu OU sumbu OV sumbu OY
3 Terhadap Terhadap Terhadap
sumbu OW sumbu OW sumbu OZ 28
Rotasi Dengan sudut Euleur Sistem I
29
Rotasi Dengan sudut Euleur Sistem II
30
Rotasi dengan sudut Euleur Sistem III (Roll, Pitch,Yaw, RPY)
31
Matriks Transformasi Homogen
• Matrik Rotasi (3 x 3) C1 S1 0
T1 S1 C1 0
0 0 1
• Vector Translasi (3 x 1)
x1
R1 y1
z1
• Matrik Homogen (4 x 4)
C1 S1 0 x1
S1 C1 0 y1
TH
0 0 1 z1
0 0 0 1
32
Matrik Transformasi Homogen
• Bentuk Matrik hanya translasi 1 0 0 x
0 1 0 y
TT
0 0 1 z
0 0 0 1
33
2.2 Metoda Denavit Hatenberg (DH)
• Pada umumnya robot berupa serial-link manipulator yang terdiri dari
sekumpulan benda tegar (rigid bodies), disebut link, dalam sebuah
untaian (chain) yang dihubungkan oleh joint. Setiap Joint memiliki
satu derajat kebebasan (degree-of-freedom, dof) yang dapat berotasi
atau bertranslasi
• Seringkali robot manipulator diklasifikasikan dalam nilai dof.
Misalnya robot 5 dof, artinya robot memiliki 5 joint yang dapat
digerakan secara bebas
• Sebuah manipulator n joint, diberi nama Joint 1 sampai dengan Joint
n, memiliki n+1 link, diberi nama Link 0 s/d Link n.
• Link 0, disebut Link Base, biasanya diam (fixed). Link n, disebut end
effector
• Joint i menghubungkan Link i-1 dengan Link i.
• Setiap linki memiliki sebuah kerangka koordinat (KKi).
34
• Denavit-Hartenberg (D-H) digunakan untuk menggambarkan
hubungan Transformasi (homogen) antara sebuah link dengan link
tetangganya.
• Secara garis besar terdapat 4 tahap
Menetapkan Kerangka Koordinat (KK)
• Setiap linki memiliki sebuah kerangka koordinat (KKi):
1) Arah sumbu Zi-1
2) Arah sumbu Xi
3) Arah Sumbu Yi
4) Posisi Titik pusat KKi
Menetapkan Parameter DH
Menghitung Matrik Transformasi Homogen Setiap Link
Menghitung Persamaan Kinematik langsung (direct kinematic)
35
Penetapan Kerangka Koordinat
36
Penetapan Kerangka Koordinat
Arah sumbu Xi
Apabila sumbu Zi-1 dan Zi berpotongan, arah sumbunya
sejajar dengan Zi-1 X Zi (Cross product)
Apabila Zi-1 dan Zi paralel, maka arah sumbunya sejajar
dengan garis tegak lurus bersama dari Zi-1 menuju ke Zi.
37
Penetapan Kerangka Koordinat
Arah Sumbu Yi mengikuti aturan tangan kanan
38
Penetapan Kerangka Koordinat
Titik pusat KKi
– Pada titik potong antara sumbu Z i-1 dengan Zi di sumbu Zi
– Titik potong garis tegak lurus bersama antara Z i-1 dengan Zi.
39
Penetapan Parameter DH
• Terdapat 4 parameter
– ai (link length); Jarak dari titik potong antara sumbu Zi-1
LINK
dengan sumbu Xi menuju titik pusat KKi sepanjang
PARAMETER
sumbu Xi (atau jarak terpendek antara sumbu Zi-1 (Lokasi relatif
dengan sumbu Zi ) 2 buah sumbu di
dalam Ruang)
– i (link twist); Sudut dari sumbu Zi-1 menuju sumbu Zi
terhadap sumbu Xi (menggunakan aturan tangan kanan)
a2 41
Penetapan Parameter : i(link twist)
i (link twist); Sudut dari sumbu Zi-1 menuju sumbu Zi terhadap
sumbu Xi
– Sudut offset
– Biasanya kelipatan dari 90o
– Sumbu Zi-1 // Zi, i = 0
z2
z1
x2
2
42
Penetapan Parameter : di (link offset)
• di (link offset); Jarak dari titik pusat KK i-1 menuju ke titik
potong antara sumbu Zi-1 dengan sumbu Xi sepanjang sumbu
Zi-1
Berupa variabel untuk untuk Joint Prismatic (translasi)
43
Robot PUMA 560
44
Robot Stanford
45
Perhitungan Matrik Transformasi Homogen
• Setelah parameter (a, , d, ) setiap link telah ditentukan,
persamaan matriks homogen dapat dibangun untuk membentuk
hubungan antar KK terdekat (adjacent), atau hubungan KK i
dengan KK i-1, dimana i menyatakan link ke i, yang pada
prinsipnya adalah membuat agar kedua KK koordinat tersebut
berimpit, yaitu melalui urutan operasi
– Putar sebesar sudut i terhadap sumbu Zi-1 agar sumbu Xi-1 dengan sumbu
Xi sejajar/paralel
– Translasikan sejauh di sepanjang sumbu Z i-1 agar sumbu X i dan sumbu
Xi-1 berimpit (coincidence)
– Translasikan sejauh ai sepanjang sumbu Xi agar kedua titik pusat
berimpit
– Putar sebesar sudut i terhadap sumbu Xi agar kedua KK berimpit
46
• Untuk joint berputar ai, i dan di adalah konstanta, i variabel
memenuhi hubungan : i-1 A i = Tz,d Tz, Tx,a Tx,
• Bentuk Inverse
47
• Untuk joint prismatic ai, i dan i adalah konstanta, di variabel
memenuhi hubungan : i-1 A i = Tz, Tz,d Tx,
• Bentuk Inverse
48
• Contoh Matrik Transformasi untuk Robot PUMA dimana
semua jointnya berputar
49
Persamaan Kinematik untuk Manipulator
• Matriks Transformasi homogen 0Ti yang menyatakan lokasi KK ke i
terhadap kerangka koordinat dasar (base, KK ke 0) merupakan rantai
perkalian dari matrik transformasi i-1Ai dan diekspresikan sebagai :
• Dimana
[xi, yi, zi] = Matrik orientasi KKi pada link i terhadap KK dasar/base .
Merupakan matriks 3x3, terletak disebelah kiri atas dari 0Ti
pi = Vektor posisi yang berarah dari titik pusat KK dasar menuju
titik pusat KK i. Merupakan vektor 3x1, terletak disebelah
kanan atas dari 0Ti
50
Persamaan Kinematik untuk Manipulator
• Sebagai contoh, untuk i = 6, matrik transformasi T = 0A6, yang
menyatakan posisi dan orintasi dari ujung lengan robot terhadap KK dasar
(matriks ini seringkali disebut arm matrix), yang berbentuk :
51
Persamaan Kinematik untuk Manipulator
• Dimana (diasumsikan bentuk tangan parallel-jaw)
n = Normal vector, arah tegak lurus terhadap jari dari tangan robot
p = Position vector, arah dari titik pusat KK dasar menuju titik pusat KK
tangan
52
Persamaan Kinematik untuk Robot PUMA
• Dimana
53
Persamaan Kinematik untuk Robot PUMA
• Persamaan Arm Matrix, 0T6
54
Kinematika Balik Manipulator
Shoulder
Elbow
Wrist
Kinematika Balik Manipulator
(Pendekatan Geometri, Studi Kasus PUMA 560)
•Beberapa Definisi :
Kinematika Balik Manipulator
(Pendekatan Geometri, Studi Kasus PUMA 560)
• Konfigurasi Robot berdasarkan definisi di atas
Elbow
Wrist
Kinematika Balik Manipulator
(Pendekatan Geometri, Studi Kasus PUMA 560)
• Solusi Sudut Joint 4
• Perhatikan gambar proyeksi KK 0X4Y4Z4 ke
bidang X3Y3 dan tabel yang menggambarkan
orientasi WRIST yang dinyatakan dalam
indikator
Kinematika Balik Manipulator
(Pendekatan Geometri, Studi Kasus PUMA 560)
• Solusi Sudut Joint 4
• Dari gambar tadi terlihat hubungan persamaan
74
Jenis Roda
Fixed wheel Centered orientable wheel
75
Fixed wheel
– Kecepatan Titik P
76
Centered orientable wheels
– Kecepatan titik P
y
77
Off-Centered orientable wheels
(caster wheels)
– Kecepatan Titik P
dimana,
ax : Vektor satuan arah sumbu x
ay : Vektor satuan arah sumbu y
78
Swedish wheel
– Kecepatan Titik P
y
79
1. Differential Drive
L L
( R ) VR ( R ) VL
2 2
82
Differential Drive
Model Posture : Model kinematik terhadap KK bumi
• Hubungan antara input kendali dengan kecepatan roda
• Persamaan Kinematik
90
• Kendala Nonholonomic
x
sin cos x sin y cos 0
y
83
Differential Drive
Model kinematik dalam KK robot
84
2. Tricycle
• Variabel Kendali :
– steering direction α(t)
– angular velocity of steering wheel ws(t)
86
Tricycle
88
Tricycle
Model Kinematik dalam KK Bumi
89
3. Synchronous Drive
• Variabel kendali (independent)
– v(t), ω(t)
cot i cot o
Rd /2 Rd /2
l l
d
l
R
91
Ackerman Steering
Equivalent:
92
Model Kinematik
• Input Kendali
Y x, y
{ x, y , , }
u1 : forward vel
{u1 , u2 } u
2 : steering vel
{ 1 , 2 }
X 93
Model Kinematik
x u1 cos
x, y
y u1 sin Y
u1
tan
l
u2
non-holonomic constraint:
X
x sin y cos 0 u1 : forward
uvelocity
2
94
: steering