KADOMS KRIM, WIMIR, AGH Kraków 1
Katedra Robotyki i Mechatroniki
Akademia Górniczo-Hutnicza w Krakowie
Wojciech Lisowski
4
Trajectory planning
Kinematics and Dynamics of Mechatronic Systems
KADOMS KRIM, WIMIR, AGH Kraków 2
Problems:
Motion path and trajectory
Classification of constraints in the trajectory
planning
Technique of planning of the joint trajectories
Scaling of the joint trajectories
KADOMS KRIM, WIMIR, AGH Kraków 3
Motion Path – a set of points in space, which are attained by an end-
effector with some (demanded or not demanded) orientation during
carrying out of some operation (Geometry).
Parameterization of the motion path with respect to time leads to
definition of the Motion Trajectory of the end-effector (Kinematics).
The planned trajectory influences:
- cycle time
- energy consumption
- quality of manufacturing
- effectiveness of cooperation of robots with other robots, machines
or devices
- effectiveness of obstacle avoidance.
KADOMS KRIM, WIMIR, AGH Kraków 4
Motion at each point of a spatial curve that the manipulator end-
effector follows during operation might be defined by the following
kinematic parameters:
- position vector P
- orientation vector
- translational velocity vector V
- angular velocity vector
- translational acceleration vector A
- angular acceleration vector
The most often only the position is defined.
Less often the orientation and translational velocity of an end-effector
is planned.
The applied robot programming technique determines how complex
the trajectory planning algorithm is.
- on-line programming (teaching)
- off-line (direct) programming
KADOMS KRIM, WIMIR, AGH Kraków 5
Trajectory planning diagram:
The result of the trajectory planning is the description of the motion
path in terms of joint variables q(t) or less often in terms of Cartesian
coordinates: P(t), (t), v(t), w(t), a(t), e(t).
TRAJECTORY
PLANNER
pd, d, vd, wd,ad, ed
p(t), (t), v(t), w(t), a(t), e(t)
GEOMETRICAL
CONSTRAINTS
KINEMATIC
AND DYNAMIC
CONSTRAINTS
JOINT TRAJECTORY
CARTESIAN
TRAJECTORY
)(),(),( tqtqtq
KADOMS KRIM, WIMIR, AGH Kraków 6
Geometrical constraints concern:
- locations in space of points of the end-effector path
- locations of obstacles in the workspace.
Kinematic constraints concern:
- values of velocities, accelerations, jerks as well the higher order
derivatives of displacement with respect to time.
- parameters of driving systems in a form of relationship between
velocity/acceleration and driving torque/force.
Dynamic constraints concern:
- values of driving torque/force
- dynamic loads for a manipulator structure
KADOMS KRIM, WIMIR, AGH Kraków 7
Applicable geometrical and kinematic constraints are of the type of:
- continuity
- differentiability
- limits of extreme values of a trajectory parameters.
Fast changes of values of kinematic parameters of discontinuity
and/or non-differentiability type:
- cause vibrations of manipulators
- limit precision of motion
- cause increase of an operation cycle
- cause fast wear of elements and subassemblies of manipulators.
When planning of trajectories takes into account constraints
corresponding to limits of driving forces, it is necessary to introduce
the dynamic model of a manipulator during the trajectory planning.
KADOMS KRIM, WIMIR, AGH Kraków 8
In case of concurrent planning and tracking of trajectories at each time
sample the current corrections of the planned trajectory parameters are
generated.
It requires high computational power and for majority of types of
operations used in the engineering practice it is unjustified.
Usually the trajectory planning stage is carried out separately from the
trajectory tracking stage. The planning precedes the tracking.
During tracking the planned values of the trajectory parameters cannot
be updated any more.
The tracking errors are minimized by application of an appropriate
controller.
KADOMS KRIM, WIMIR, AGH Kraków 9
The main practical reason against application of Cartesian trajectories
in practice is a lack of sensors capable to determine positions and
orientation of an end-effector in the Cartesian space that can be reliably
applied in the industrial workshop conditions
Without the sensors the Tracking of the Cartesian trajectories requires
transformation of geometrical and kinematic parameters
- from the joint coordinates space to the Cartesian space in order to
determine the control error
- from the Cartesian space to the joint coordinates space in order to
determine the correction of the control.
With the sensors:
- from the Cartesian space to the joint coordinates space in order to
set the correction of the control for each single axis controller.
-This approach is:
- complex
- computationally demanding
- (usually) unjustified from the economical point of view.
KADOMS KRIM, WIMIR, AGH Kraków 10
In practice the most often the trajectory planning in the joint coordinates
space is used
To plan the joint trajectories usually the two following types of the spline
functions are used:
- polynomial splines
- trigonometric splines.
The main advantage of the joint trajectories:
Simplicity of trajectory planning algorithms and ease of trajectory
tracking by control systems of majority of industrial robots.
The main drawback of the joint trajectories:
Lack of coordination of motions of the consequent joints
(unpredictable shape of the resultant Cartesian trajectory that is a
composition of a set of the joint trajectories).
KADOMS KRIM, WIMIR, AGH Kraków 11
Due to the high variability of values of polynomials of high degree
and difficulties in determination of their local extremes it is not
advisable to use polynomials of degree higher than 7 (usually the
degree from 3 to 5 is used).
In case of positioning of an end-effector the safety considerations
regarding its motion indicate the use of a path defined by at least 4 points
q t a a t a t a t
t
j i i i i i n
n
, , , , ,...
0 1 2
2
0 1
p
k s1
sn
KADOMS KRIM, WIMIR, AGH Kraków 12
Example formulation of the type 3-5-3 polynomial trajectory
1011
2
12
3
131 atatatath
2021
2
22
3
23
4
24
5
252 atatatatatath
3031
2
32
3
333 atatatath
time
displacement
velocity
acceleration
0
X0
V0
A0
1
X1
-
-
2
X2
-
-
3
X3
V3
A3
KADOMS KRIM, WIMIR, AGH Kraków 13
Normalization of the time axis:
1
1
ii
it
iii td
dt 11
1
dt
tdh
td
dt
dt
tdh
d
tdhtv i
i
ii
i
1
2
2
2
111
dt
thd
ttdt
tdh
tdt
d
d
dt
dt
tdv
d
tdvta i
ii
i
i
ii
i
KADOMS KRIM, WIMIR, AGH Kraków 14
The first segment of the type 3-5-3 trajectory:
01 0 Xh
01 0 Vv
01 0 Aa
101 0 ah 010 Xa
1112
2
13
1
1 231
atatat
tv 1
111 0
t
av 1011 tVa
12132
1
1 261
atat
ta 2
1
121
20
t
aa
2
2
10
12
tAa
11 1 Xh 010
2
10
1312
1 XtVtA
ah 0110
2
10
132
XXtVtA
a
1
0
0
0
1
2
1
2
11
10
11
12
13
0001
000
02
00
12
1
X
A
V
X
t
t
tt
a
a
a
a
1011
2
12
3
131 atatatath
KADOMS KRIM, WIMIR, AGH Kraków 15
The third segment of the type 3-5-3 trajectory:
33 1 Xh
33 1 Vv
33 1 Aa
23 0 Xh
2
013
123
111
2
33
33
23
31
32
33
tA
tV
XX
a
a
a
2333
2
3331
2333
2
3332
2333
2
3333
322
1
33
2
1
XXtVtAa
XXtVtAa
XXtVtAa
303 0 ah 230 Xa
3
3
3
2
2
33
2
33
2
333
30
31
32
33
00012
233
3332
1
A
V
X
X
tt
tt
ttt
a
a
a
a
3031
2
32
3
333 atatatath
KADOMS KRIM, WIMIR, AGH Kraków 16
The second segment of the type 3-5-3 trajectory:
12 0 Xh
12 0 Vv
12 0 Aa
22 1 Xh
22 1 Vv
22 1 Aa
202 0 ah 120 Xa
2122
2
23
4
24
4
25
2
2 23451
atatatatat
tv 2
212 0
t
av 2121 tVa
2223
2
24
3
252
2
2 2612201
atatatat
ta 2
2
222
20
t
aa
2
2
2122
tAa
2
212324252
2
2
21
2
21232425
2
2
121
2
212324252
612201
3451
2
tAaaat
a
tVtAaaat
v
XtVtA
aaax
2
212
212
2
11
1221
2
21
23
24
25 2
61220
345
111
tAA
tVVtA
XXtVtA
a
a
a
2
22
2
2122211223
2
22
2
2122211224
12
2
22121225
2
1
2
34610
2
37815
2
136
tAtAtVtVXXa
tAtAtVtVXXa
AAtVVtXXa
2021
2
22
3
23
4
24
5
252 atatatatatath
KADOMS KRIM, WIMIR, AGH Kraków 17
2
2
2
1
1
1
2
2
2
2
22
2
22
2
22
2
22
2
22
2
22
20
21
22
23
24
25
000001
00000
0002
00
2410
2
3610
7152
3815
236
236
A
V
X
A
V
X
t
t
tttt
tttt
tt
tt
a
a
a
a
a
a
0
0
1
1
32
32
11
11
aA
vV
aA
vV
233
122
011
t
t
t
tatttAA
tvtttVV
thtttHH
j
i
i
ji
j
i
i
ji
j
i
i
ji
1
0
1
0
1
0
)(
1,...,2,1 Nj
Determination of the trajectory in terms of the absolute time variable :
KADOMS KRIM, WIMIR, AGH Kraków 18
h [rad] h [rad]
A numerical example
time
displace
ment
velocity
acceleration
example 1
example 2
0.00
0.00
0
0
0
1.00
1.00
0.3
-
-
2.25
1.60
1.7
-
-
3.25
2.60
2
0
0
displacement:
KADOMS KRIM, WIMIR, AGH Kraków 19
v [rad/s] v [rad/s]
a [rad/s2] a [rad/s2]
velocity:
acceleration:
KADOMS KRIM, WIMIR, AGH Kraków 20
Number and type of start/end
conditions
6
(displacement,
velocity, acceleration)
6
(displacement,
velocity, acceleration)
6
(displacement,
velocity,acceleration)
Number of intermediate points
N-2
N-2
N-2
Number of continuity conditions
3*(N-2)
3*(N-2)
5*(N-2)
+ 3 and 4 derivative of
displacement
Assumed: velocities and accelerations
-
2*(N-2)
-
Number of coefficients
4N-2
6N-6
6N-6
Distribution of coefficients between
trajectory segments for N=4
4*4-2=14
14-3=11
4-3-4
3-5-3
6*4-6=18
18-3=15
5-5-5
6*4-6=18
18-3=15
5-5-5
Distribution of coefficients between
trajectory segments for N=5
4*5-2=18
18-4=14
4-3-3-4
6*5-6=24
24-4=20
5-5-5-5
6*5-6=24
24-4=20
5-5-5-5
Distribution of coefficients between
trajectory segments for N=6
4*6-2=22
22-5=17
4-3-3-3-4
3-3-3-3-3
6*6-6=30
30-5=25
5-5-5-5-5
6*6-6=30
30-5=25
5-5-5-5-5
Distribution of coefficients between
trajectory segments for N>6
(4*N-2)-(N-1)
4-3-3- ... -3-3-4
(6*N-6)-(N-1)
5-5-5- ... -5-5-5
(6*N-6)-(N-1)
5-5-5- ... -5-5-5
An algorithm of formulation of the joint polynomial trajectories:
KADOMS KRIM, WIMIR, AGH Kraków 21
h [rad]
v [rad/s]
a [rad/s2]
j [rad/s3]
5-5-5-5-5-5-5 trajectory example
KADOMS KRIM, WIMIR, AGH Kraków 22
h [rad] v [rad/s]
a [rad/s2]
j [rad/s3]
4-3-3-3-3-3-4 trajectory example
KADOMS KRIM, WIMIR, AGH Kraków 23
Trigonometric type trajectory example:
40
)4cos()sin()cos()(3
1
4,,,0,,
t
taktbktaatqk
ikikiiij
h [rad]
v [rad/s]
a [rad/s2]
j [rad/s3]
KADOMS KRIM, WIMIR, AGH Kraków 24
Scaling of a joint trajectory:
dt
tdh
ttv i
i
i
1
2
2
2
1
dt
thd
tta i
i
i
i
vi
vi
i
i
i
G
i
t
t
t
v
t
v
V
V
max,
max,
max,
2
2
2
max,
2
max,
max,
i
ai
ai
i
i
i
G
i
t
t
t
a
t
a
A
A
velocity
KADOMS KRIM, WIMIR, AGH Kraków 25
After the first scaling: Re-planning of the joint trajectory
G
i
iviV
Vtt
max,
G
i
iaiA
Att
max,2
KADOMS KRIM, WIMIR, AGH Kraków 26
Result of an iterative trajectory planning with concurrent use of
limits for the velocity and acceleration values.
),max( aivisi ttt
KADOMS KRIM, WIMIR, AGH Kraków 27
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
-40
-20
0
20
40
Parametry kinematyczne obrotowego złącza manipulatora
Prz
em
iesczenie
[sto
pnie
]
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
-400
-300
-200
-100
0
Prę
dkość [
sto
pnie
/s]
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
-4000
-2000
0
2000
4000
6000
Czas [s]
Prz
yspie
szenie
[sto
pnie
/s2]
Example:
Trajectory Type 4-(3)-4
Q=[45,30,-10,-50,-55,-60]
T=[0.1,0.1,0.1,0.1,0.1]
wmax=200
emax=300
KADOMS KRIM, WIMIR, AGH Kraków 28
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
-40
-20
0
20
40
Parametry kinematyczne obrotowego złącza manipulatora
Prz
em
iesczenie
[sto
pnie
]
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
-200
-100
0
100
200
Prę
dkość [
sto
pnie
/s]
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
-200
0
200
Czas [s]
Prz
yspie
szenie
[sto
pnie
/s2]
Q=[45,30,-10,-50,-55,-60]
T=[0.60 0.36 0.48 0.34 0.23]
KADOMS KRIM, WIMIR, AGH Kraków 29
Example of superposition of 4-3-3-3-4 joint trajectories for a SCARA
type manipulator
θ1 [0,0,1,2,3,3] [rad] θ2 [1,1,2,2,1,1] [rad]
d3 [0.3,0.1,0.1,0.1,0.1,0.3] [m] θ4 [0,0,-1,-2,-3,-3] [rad]
θ1 [rad] θ2 [rad]
d3 [m]
θ4 [rad]
KADOMS KRIM, WIMIR, AGH Kraków 30
x [m] y [m]
z [m] Φ [rad]
Time histories of the Cartesian trajectory components
KADOMS KRIM, WIMIR, AGH Kraków 31
y
x
Spatial result of composition of the 4 joint trajectories for the
SCARA manipulator:
KADOMS KRIM, WIMIR, AGH Kraków 32
x
y
z
KADOMS KRIM, WIMIR, AGH Kraków 33
11 points 6 points
a SCARA manipulator
Number of the path points
KADOMS KRIM, WIMIR, AGH Kraków 34
Motion of an end-effector in space (via positioning or trajectory
tracking) is a problem of motion control.
In a justified case trajectory planning and tracking can be carried out
concurrently.