Professional Documents
Culture Documents
Spring 2018
• Point-to-Point Trajectories
• Time scaling: a function s : [0, T ] → [0, 1] that maps each time instant to a
value of the geometric path parameter.
dθ dθ d2 θ
θ̇ = ṡ; θ̈ = s̈ + 2 ṡ2
ds ds ds
• Due to time limit, we will not formally discuss path planning problems
(design path to avoid obstacles).
θstart
θ1 θθ22 (deg)
−90 90 180 θ1 (deg)
180 −90
θ
90 start
θend
• Let X(s) be the screw motion path with constant twist such that
X(0) = Tstart and X(1) = Tend .
−1
X(s) = Tstart exp log Tstart Tend s
T
p(s) = pstart + s(pend − pstart ), R(s) = Rstart exp log Rstart Rend s
• We often require zero velocity at the start and the end of a path. This leads
to the following constraint:
s(t) = a0 + a1 t + a2 t2 + a3 t3
s ṡ s̈
3 6
1 2T T2
0
T t
T t T t
• Assume straight-line
Figure 9.3: Plots of path in joint
s(t), ṡ(t), space
and s̈(t) for a (other cases
third-order are similar)
polynomial time scaling.
9.2.2.1 θ(s)
Polynomial Time = θstart
Scaling + s(θend − θstart )
Third-order
• Max Polynomials
joint velocities A convenient
are achieved form forpoint
at the halfway the time scaling
of the s(t) ista= T /2
motion
cubic polynomial of time,
s(t) = a0 + a1 t + a2 t2 + a3 t3 . (9.9)
• Max joint accelerations
A point-to-point and
motion in decelerations
time T imposes the are achieved
initial t = =0 ṡ(0)
at s(0)
constraints and=t 0= T :
and the terminal constraints s(T ) = 1 and ṡ(T ) = 0. Evaluating Equation (9.9)
and its derivative
ṡ(t) = a1 + 2a2 t + 3a3 t2 (9.10)
• Joint constraints θ̇limit and θ̈limit can be checked at these critical times to
at t = 0 and t = T and solving the four constraints for a0 , . . . , a3 , we find
ensure feasibility
3 2
a0 = 0, a1 = 0, a2 = ,
2
a3 = − .
Time Scaling T
Lecture 9 (ECE5463 Sp18) T3 Wei Zhang(OSU) 9 / 16
Time Scaling: Fifth-Order Polynomial
• We may also want to have zero accelerations at t = 0 and t = T , which leads
to the following constraints:
s(t) = a0 + a1 t + a2 t2 + a3 t3 + a4 t4 + a5 t5
• We canChapter
use the9. Trajectory Generation
6 constraints to solve uniquely for the coefficients. 331
s ṡ s̈
15 10
1 8T
√
T2 3
0
T t
T t T t
Figure 9.4: Plots of s(t), ṡ(t), and s̈(t) for a fifth-order polynomial time scaling.
Time Scaling
s Lecture 9 (ECE5463ṡSp18) Wei Zhang(OSU) 10 / 16
T t T t
Time Scaling: Trapezoidal Figure 9.4: Plots of s(t), ṡ(t), and s̈(t) for a fifth-order polynomial time scaling.
s ṡ
1 v
slo
e=
pe
p
=−
slo
a
T t ta T − ta T t
Figure 9.5: Plots of s(t) and ṡ(t) for a trapezoidal motion profile.
• Trapezoidal time scaling:
The point-to-point motion consists of a constant acceleration phase s̈ = a of
- t ∈ [0, ta ]: constant acceleration
time ta , followed by a constant phase s̈ =ṡ =a v of time tv = T − 2ta,
velocity phase
followed by a constant deceleration phase s̈ = −a of time ta . The resulting ṡ
- t ∈ (ta , T − 2tprofile
segment,
is a trapezoid and the s profile is the concatenation of a parabola, linear
a ]: constant velocity
and parabola as phase
a function of ṡ =9.5).v
time (Figure
The trapezoidal time scaling is not as smooth as the cubic time scaling, but it
- t ∈ (T − 2ta , has
T ]:the∈constant
θ̇
advantage that deceleration
if there are known constant
phase
Rn and on the joint accelerations θ̈
s̈ on=the−a
limits joint velocities
∈ Rn then the trapezoidal
limit limit
motion using the largest v and a satisfying
1 2 3 4 5 6 7
T t
Figure 9.6: Plot of ṡ(t) for an S-curve motion profile consisting of seven stages: (1)
• Trapezoidal scaling causes discontinuities in acceleration at
constant positive jerk, (2) constant acceleration, (3) constant negative jerk, (4) con-
t = stant , T − 2t
0, tavelocity, a ,constant
(5) T negative jerk, (6) constant deceleration, and (7) constant
positive jerk.
• Suppose that there are no strict specifications on the shape of the path
between consecutive points
• In this case, we can directly construct the trajectory θ(t) instead of finding a
path θ(s) and then a time scaling s(t),
• Since the trajectory for each joint can be designed individually, we focus on a
single joint variable and call it β(t) to simplify notation
• We can solve for all the coefficients for each segment (see page 286 of
textbook)