Dokumen tersebut membahas perencanaan trayektori robotik yang meliputi review model kinematika, matrik Jacobian, dan persyaratan-persyaratan perencanaan trayektori seperti kontinuitas posisi, kecepatan, dan percepatan untuk mendapatkan gerakan yang mulus."
3. Review
• Langkah penurunan model kinematik:
– Tentukan KK berdasarkan Metoda D-H
– Mengukur parameter2 link
– Menghitung matrik transformasi untuk setiap
joint yang berdekatan (adjacent joints)
– Menghitung Matrik Kinematik (POSE)
– Jika diperlukan nyatakan POSE dalam
representasi sudut Euler 3 (Yaw-Pitch-Roll)
3
4. Review
• Matrik Transformasi D-H untuk KK yang
berdekatan, i dan i-1.
– Posisi dan orientasi KK i dapat diekspresikan dalam KK
i-1melalui transformasi secara berurutan 4 urutan
transformasi dasar
4
5. Review
Reference
Coordinate
• i-1 A
i = Tz,d Tz, Tx,a Tx,
Source coordinate C i C iS i S iS i ai C i
S i C iC i S iC i ai S i
0 S i C i di
0 0 0 1
5
6. Review
Cartesian Representation
1 Forward
2 nx sx ax px
3 ny sy ay py
Kinematics T
4 nz sz az pz
5 0 0 0 1
Inverse Task Space
6
x
Euler Representation
Joint Space
y
z
6
7. Review
• Representasi Yaw-Pitch-Roll
1
T Rz , R y , Rx , R T z, Ry , Rx,
C S 0 0 nx sx ax 0 C 0 S 0 1 0 0 0
S C 0 0 ny sy ay 0 0 1 0 0 0 C S 0
0 0 1 0 nz sz az 0 S 0 C 0 0 S C 0
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
C nx S ny XX XX 0
S nx C ny S sx C sy S ax C ay 0
nz XX XX 0
0 0 0 1
C S S S C 0
0 C S 0
(Persamaan A)
S C S C C 0
0 0 0 1
7
8. Review
• Bandingkan LHS dan RHS Persamaan A
sin nx cos ny 0 a tan 2(n y , nx )
cos nx sin ny cos
nz sin a tan 2( nz , cos nz sin ny )
sin s x cos s y cos
sin ax cos a y sin
a tan 2(sin ax cos a y , sin sx cos sy )
8
9. Review
0 90 for x and y
90 180 for x and y
a tan 2( y, x)
180 90 for x and y
90 0 for x and y
9
10. Jacobian Matrix
1 Forward x
x
1
2 y
y
2
Jacobian
3 z Matrix
z
Kinematics 3
4
4 x
5 y
5
6 Inverse
6 z
Joint Space Task Space Jacobian Matrix: Hubungan antara joint
space velocity dengan task space velocity
10
11. Jacobian Matrix
Kinematika Lngsung
x q1 h1 (q1 , q2 , , q6 )
y q2 h2 (q1 , q2 , , q6 )
z q3 h3 (q1 , q2 , , q6 ) Y6 1 h ( qn 1 )
h( )6 1
q4 h4 (q1 , q2 , , q6 )
q5 h5 (q1 , q2 , , q6 )
q6 h6 (q1 , q2 , , q6 ) 6 1
d dh(q) dq dh(q)
Y6 1 h ( qn 1 )
q
x
dt dq dt dq
q1
y
dh(q )
q2
z
Y6 1
J 6 n qn 1
x dq
6 n
dh( q )
y
qn J
z
n 1
dq
11
12. Jacobian Matrix
x
y
q1
z dh(q )
q2 Matrik Jacobian adalah
dq fungsi dari q, (tidak
x 6 n konstan !)
y
qn n 1
h1 h1 h1
z
q1 q2 qn
h2 h2 h2
dh(q )
J q1 q2 qn
dq 6 n
h6 h6 h6
q1 q2 qn 6 n
12
13. Jacobian Matrix
x h1 (q)
Kinematika Langsung
p y h2 (q)
0 n s a p z h3 (q)
T6
0 0 0 1 4 4 (q) h4 (q )
h1 (q) {n, s, a} (q) h5 (q )
h2 (q) (q) h6 (q )
Y6 1 h( q )
x
y Kecepatan Linier Kecepatan Sudut
h6 (q)
z V
x
Y
x
V
y
Y6 1
J 6 n qn 1 y
z
z
13
14. Contoh
• 2-DOF planar robot arm (x , y)
– Diketahui l1, l2 , Hitung : Matrik Jacobian
2
x l1 cos 1 l2 cos( 1 2 ) h1 ( 1 , 2 ) l2
y l1 sin 1 l2 sin( 1 2 ) h2 ( 1 , 2 )
x
Y J 1
l1
y 1
2
h1 h1
1 2
l1 sin 1 l2 sin( 1 2 ) l2 sin( 1 2 )
J
h2 h2 l1 cos 1 l2 cos( 1 2 ) l2 cos( 1 2 )
1 2
14
16. Robot Motion Planning
Tasks • Path planning
Task Plan – Geometric path
– Path adalah adalah ruang kurva
dimana lengan robot (robot arm), yang
Action Plan diwakili oleh masing-masing joint,
bergerak dari posisi awal (initial
position) menuju posisi akhir (final
Path Plan position
– Permasalahan : obstacle avoidance,
shortest path
Trajectory
Plan • Trajectory planning,
– “interpolasi” atau “aproksimasi” path yg
diinginkan (desired path) dengan
Controller fungsi-fungsi polinomial dan
membangkitkan urutan nilai “set point”
untuk pengendalian robot dari posisi
Robot awal (initial point) menuju posisi yang
diinginkan (destination point).
Sensor
16
17. Configuration Space
Jika konfigurasi robot berada di dalam daerah biru akan menabrak
halangan
360
qrobot
270
180
90
qslug
0
45 90 135 180
An obstacle in the robot’s workspace a “C-space” representation
Visualization of high dimension
C-space is difficult
17
18. Trajectory Planning
(continuity,
smoothness)
Path
constraints
joint space
{q (t ), q (t ), q (t )}
Path Trajectory sequence of control set points
or
specification Planner along desired trajectory
{ p(t ), v(t ), a(t )}
cartesian space
18
19. Trajectory Planning
• Metoda Perencanaan trayektori :
– Ruang variabel joint (joint variable space), dimana trayektori
dibentuk berdasarkan posisi,kecepatan, percepatan joint
– Ruang Cartesian (Cartesian Space), dimana trayektori dibentuk
berdasarkan posisi, kecepatan, percepatan ujung lengan robot
• Pendekatan ruang variable joint
– Keuntungan : 1)trayektori direncanakan secara langsung
sesuai dengan variabel kendali untuk pergerakan, 2)
perencanaan trayektori dapat dilakukan real-time, 3) joint
trajectory lebih mudah dibuat
– Kerugian : sulit untuk menentukan posisi link maupun lengan
robot selama bergerak, dimana biasanya sebuah pergerakan
(initial to final) harus dijamin tidak menabrak halangan (obstacle
avoidance)
19
20. Trajectory Planning
Joint i
Final
q(tf)
q(t2)
• Path Profile Set down
• Velocity Profile q(t1)
Lift-off
Initial
q(t0)
• Acceleration Profile
t0 t1 t2 tf Time
Speed
t0 t1 t2 tf Time
Acceleration
t0 t1 t2 tf Time
20
21. Persyaratan
• Beberapa hal yang menentukan
perencanaan trayektori
– Nilai set point harus sudah terhitung sebelum
dilakukan pergerakan
– Posisi antara (intermediate position, knot point)
harus ditentukan
– Kontinyuitas posisi, kecepatan dan percepatan
harus dijamin agar trayektori yang dirancang
berjalan mulus (smooth)
21
22. Persyaratan
1) Initial position Joint i
2) Initial velocity Final
q(tf)
3) Initial acceleration q(t2)
Set down
4) Lift-off position
5) Continuity in position at t1
6) Continuity in velocity at t1
7) Continuity in acceleration at t1 q(t1)
8) Set-down position Lift-off
Initial
9) Continuity in position at t2 q(t0)
10) Continuity in velocity at t2
11) Continuity in acceleration at t2 t0 t1 t2 tf Time
12) Final position
13) Final velocity
14) Final acceleration
22
23. Persyaratan
• Initial Position
– Position (given)
– Velocity (given, normally zero)
– Acceleration (given, normally zero)
• Final Position
– Position (given)
– Velocity (given, normally zero)
– Acceleration (given, normally zero)
23
24. Persyaratan
• Intermediate positions
– set-down position (given)
– set-down position (continuous with previous
trajectory segment)
– Velocity (continuous with previous trajectory
segment)
– Acceleration (continuous with previous
trajectory segment)
24
25. Persyaratan
• Intermediate positions
– Lift-off position (given)
– Lift-off position (continuous with previous
trajectory segment)
– Velocity (continuous with previous trajectory
segment)
– Acceleration (continuous with previous
trajectory segment)
25
26. Trajectory Planning
• Terdapat Beberapa Jenis Trajectory
– 4-3-4 Trajectory, dimana Path dibagi menjadi 3 segmen
» segmen 1 diwakili oleh fungsi polinomial 4 derajat (initial to
lift-off position)
» Segmen 2 diwakili oleh fungsi polinomial 3 derajat (lift-off to
set-down position)
» Segmen 3 diwakili oleh fungsi polinomial 4 derajat (set-down
to final position)
– 3-5-3 Trajectory, sama seperti diatas namun derajat fungsi
polinomial berturut-turut adalah 3,5 dan 3
– 5-Cubic Trajectory, dimana Path dibagi dalam 5 segmen.
Setiap segmen dinyatakan dalam fungsi polinomial 3 derajat
26
27. Trajectory Planning
• 4-3-4 trajectory
h1 (t ) a14t 4 a13t 3 a12t 2 a12t a10 t0t1, 5 unknow
h2 (t ) a23t 3 a22t 2 a21t a20 t1t2, 4 unknow
hn (t ) an 4t 4 a n 3t 3 a n 2 t 2 an 2t an 0 t2tf, 5 unknow
• 3-5-3 trajectory
27
29. Untuk apa Motion Planning?
• Untuk menentukan kemana akan bergerak
tanpa menabrak halangan (obstacle)
29
30. Materi yang dibahas
• Dasar
– Ruang Konfigurasi (Configuration Space)
– C-obstacles
• Metoda-metoda Motion Planning
– Roadmap Approaches
• Visibility graphs
• Voronoi diagram
– Cell Decomposition
• Trapezoidal Decomposition
• Quadtree Decomposition
– Potential Fields
– Bug Algorithms
• Referensi :
– G. Dudek, M. Jenkin, Computational Principles of Mobile Robots,
MIT Press, 2000 (Chapter 5)
– J.C. Latombe, Robot Motion Planning, Kluwer Academic
Publishers, 1991.
30
31. Configuration Space
Notasi:
A: Obyek kaku (rigid) –(misalnya robot)
W: Ruang Euclidean dimana A bergerak; W R2 atau R 3
B1,…Bm: halangan (obstacle) kaku dan tetap (fixed)
tersebar dalam W
• FW – KK Bumi (fixed frame)
• FA – KK robot (moving frame)
Konfigurasi q dari A adalah spesifikasi
dari status/keadaan fisik dari A
Bm terhadap FW.
B1
Configuration Space (Ruang Konfigurasi) adalah ruang semua
kemungkinan konfigurasi gerak robot
31
32. Configuration Space
Ruang konfigurasi A adalah ruang (C ) semua
kemungkinn konfigurasi A.
Perhatikan robot titik (free-flying, no constraints)
C
Cfree
qgoal
Cobs
qstart
Untuk robot titik yang bergerak dalam bidang 2-D , Ruang konfigurasi
(C-space) adalah R2 32
33. Configuration Space
C
y
Cfree qgoal
Cobs
qstart
x
Untuk robot titik yang bergerak dalam bidang 3-D , Ruang konfigurasi (C-
3
space) adalah R
33
34. Configuration Space
Y
Robot bergerak hanya translasi dalam bidang
C-space: 2-D (x, y)
X
Euclidean space:R 2
Y Robot bergerak translasi dan rotasi dalam bidang
C-space:3-D (x, y, )
Y
X
x
34
36. Configuration Space
Robot akan menabrak halangan jika konfigurasi robot dalam daerah
warna biru
360
qrobot
270
180
90
qslug
0
45 90 135 180
Representasi “C-space”
Berapakah dimensi dari C-space untuk Visualisari C-space untuk
robot PUMA (6R)? dimensi yang banyak sangat
sulit 36
37. Motion Planning Problem
Mencari jalur bebas halangan (collision
free) mulai dari konfigurasi awal menuju
konfigurasi akhir (goal) dengan
memperhatikan kendala2 (geometri,
fisik, temporal)
Konsep C-space
memberikan
kerangka kerja
umum untuk
mempelajari
persoalan
motion planning
37
41. Free Space
From
Robot Motion Planning
J.C. Latombe
41
42. Minkowski Sums
Perluasan bentuk bidang planar oleh bidang lain disebut dengan
Minkowski sum
robot persegi yang hanya bergerak translasi
P R
R
P
(Dilation operation) P R= {p+r | p P and r R}
42
43. Penambahan Dimensi
Bagaimana bentuk ruang C-obstacle jika robot persegi dapat bergerak
translasi dan rotasi dalam bidang.
(Kotak biru adalah halangan)
y
robot persegi yang dapat bergerak translasi dan rotasi
x
43
44. C-obstacle in 3-D
Bagaimana bentuk ruang C-obstacle jika robot persegi dapat bergerak
translasi dan rotasi dalam bidang.
3-D
(Kotak biru adalah halangan)
y 360º
180º
0º
x this is twisted...
44
45. C-obstacle in 3-D
Bagaimana bentuk ruang C-obstacle jika robot persegi dapat bergerak
translasi dan rotasi dalam bidang.
3-D
(Kotak biru adalah halangan)
y 180º
0º
x
45
46. Untuk satu irisan
Perhatikan satu irisan dari C-obstacle dimana rotasi robot sebesar 45o
P R
y R
45 degrees
P
x
46
49. Metoda Motion Planning
Komponen dasar motion planning dapat diuraikan sbb :
Input Output
• deskripsi geometri robot dan
lingkungannya (obstacles) • jalur mulai dari posisi awal
(start) menuju posisi akhir
• konfigurasi awal (initial) dan
(finish)
tujuan (goal)
qrobot qgoal
Aplikasi :
Robot-assisted surgery
Automated assembly plans
Drug-docking and analysis
Moving pianos around...
49
50. Metoda Motion Planning
Tujuan mengurangi N-dimensi ruang
konfigurasi (configuration space) menjadi
(1) Roadmap approaches
pencarian jalur satu dimensi
(2) Cell decomposition Tujuan menghitung semua ruang bebas
Tujuan menghasilkan strategi kendali
(3) Potential Fields lokal yang lebih fleksibel dibandingkan
dua metoda diatas
(4) Bug algorithms Perencanaan jalur dengan
pengetahuan yg terbatas
50
51. Roadmap: Visibility Graphs
Visibility graphs: Ruang konfigurasi dalam bentuk poligon atau
polyhendral yang membentuk segmen garis yang menghubungkan
antar vertex.
51
52. The Visibility Graph
• Pertama kali, tarik garis dari titik awal dan tujuan ke semua
vertex yang terlihat (“visible”) dan sudut (corner) dari
Kerangka bumi
goal
start
52
53. The Visibility Graph
• Kedua, tarik garis dari setiap vertex halangan (obstacle) ke
vertex dan sudut yang terlihat.
goal
start
53
56. The Visibility Graph
goal
start
Karena peta ini dalam ruang konfigurasi (C-space) setiap garis dapat
merepresentasikan bagian dari jalur pergerakan dari awal menuju tujuan.
56
57. Visibility graph drawbacks
Visibility graphs sukar menunjukan jalur optimal pada dimensi
yang tinggi
shortest path
shortest path within the visibility graph
Tidak ada clearance
57
58. Roadmap: Voronoi diagrams
• Generalized Voronoi
Diagram (GVG)
membentuk jalur
yang berjarak sama
(equidistant)
terhadap 2 atau lebih
halangan (obstacle)
termasuk batas-batas
ruang (workspace)
• Memaksimumkan
clearance antara
halangan.
• Metoda ini menghasilkan peta jalan (roadmap) yang
menghindari halangan seaman mungkin
58
63. Exact Cell Decomposition
Trapezoidal Decomposition:
Penguraian (decomposition)
ruang bebas ke dalam bentuk sel
trapezoidal & triangular
Grafik konektifitas yang
(Sweepline algorithm) menyatakan hubungan antara sel
yang berdekatan
63
64. Exact Cell Decomposition
Trapezoidal Decomposition:
Terdapat beberapa algoritma graph-
search untuk menemukan jalur dari
posisi awal sampai tujuan
64
65. Exact Cell Decomposition
Trapezoidal Decomposition:
Posisi jalur terletak di titik tengah
( mid-points) garis sambung
(intersection) antar sel
65
66. Optimalisasi
Trapezoidal Decomposition:
15 cells 9 cells
Metoda trapezoidal decomposition Cara yang dapat dilakukan hanya
eksak (exact) dan lengkap memperoleh jumlah minimum sel.
(complete), tetapi tidak optimal
66
67. Approximate Cell Decomposition
Quadtree Decomposition:
Secara rekursif membagi (subdivides) daerah
Quadtree:
bebas/halangan (free/obstacle (sub)region)
kedalam 4 sisi (four quarters)
67
69. Approximate Cell Decomposition
Quadtree Decomposition:
• sel persegi panjang secara rekursif
diuraikan menjadi luas yang lebih kecil
• pada tingkat resolusi tertentu, hanya sel
yang luasnya terletak dalam ruang bebas
yang digunakan
Quadtree
69
71. Potential Field
– Lokasi tujuan membangkitkan potensial atraktif (attractive potential)
yang bertujuan menarik (pull) robot untuk menuju tujuan
– Obyek halangan membangkitkan potensial repulsif (repulsive potential)
yang bertujuan mendorong robot untuk menjauh dari halangan
– gradien negatif dari potensial total diperlakukan sebagai gaya artifisial
yang diberikan kepada robot
-- Jumlah gaya keseluruhan digunakan untuk mengendalikan robot
C-obstacles
71
72. Potential Field
• Perhitungan gaya atraktif untuk menuju ke tujuan
Menuju nol ketika robot
C-obstacles semakin mendekat ke tujuan
Attractive potential
72
74. Potential Field
• Jumlah Potensial Attractive potential Repulsive potential
C-obstacle
Sum of potentials
74
75. Potential Field
• pembangkitan gaya artificial (negative gradient)
• Jumlah gaya keseluruhan digunakan untuk
mengendalikan robot
Negative
gradient
Equipotential contours
Total potential
75
76. Potential Field
Pros:
• Perencanaan dan kendali bergabung dalam satu fungsi
• dapat diperoleh jalur pergerakan yang halus (smooth paths)
Cons:
• terjebak dalam lokal minima (perlu ada teknik random walk atau
backtracking untuk menghadapi lokal minima)
• pengetahuan tentang bentuk halangan harus jelas (seringkali tidak
mungkin)
76
78. Bug Algorithms
• diketahui arah dari tujuan
Goal
• Hanya memiliki sensor lokal
(walls/obstacles sensor)
Start
78
79. Bug Algorithms
Insect-inspired “bug” algorithms
Perpindahan pada 2 jenis tingkah
laku sederhana:
1. Bergerak langsung menuju
tujuan
2. Menelusuri halangan
(Circumnavigating an obstacle)
“Bug” algorithm
1) Mengarah menuju tujuan
2) Ikuti halangan sampai
diperoleh LOS dari tujuan
assume a 3) Kembali ke tahap 1
leftist robot
79