0% found this document useful (0 votes)
49 views6 pages

Robotics1 10.09.15

This document discusses motion profiles for a revolute robot joint with bounded jerk, acceleration, and velocity. It provides analytic expressions to determine: 1) The maximum feasible displacement given bounds on jerk, acceleration, velocity, and a time interval. 2) The minimum feasible motion time given bounds on displacement, velocity, acceleration, and jerk. Numerical examples are worked out for specific parameter values. Graphs of the resulting position, velocity, acceleration, and jerk profiles are presented.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views6 pages

Robotics1 10.09.15

This document discusses motion profiles for a revolute robot joint with bounded jerk, acceleration, and velocity. It provides analytic expressions to determine: 1) The maximum feasible displacement given bounds on jerk, acceleration, velocity, and a time interval. 2) The minimum feasible motion time given bounds on displacement, velocity, acceleration, and jerk. Numerical examples are worked out for specific parameter values. Graphs of the resulting position, velocity, acceleration, and jerk profiles are presented.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Robotics I

September 15, 2010

...
For a revolute robot joint, consider the rest-to-rest motion q = q(t) defined by the jerk profile q (t)
shown in Fig. 1, with given jmax > 0. The motion starts from q(0) = q0 at time t = 0, with zero
initial velocity (q̇(0) = 0) and zero initial acceleration (q̈(0) = 0).

Figure 1: Jerk profile

i) Let the bounds |q̇(t)| ≤ vmax , |q̈(t)| ≤ amax (with vmax > 0 and amax > 0) be assigned, as
well as the time interval Tv ≥ 0. Under the assumption
vmax amax
− ≥ 0,
amax jmax

determine the analytic expression of the maximum feasible displacement ∆q = q(T ) − q0 that
can be realized. Provide the numerical solution for

jmax = 12 [rad/s3 ] amax = 5 [rad/s2 ] vmax = 3 [rad/s3 ] Tv = 2 [s].

ii) Let the bounds |q̇(t)| ≤ vmax , |q̈(t)| ≤ amax (with vmax > 0 and amax > 0) be assigned, as
well as the total displacement ∆q > 0. Under the assumptions
 
vmax amax vmax amax
− ≥0 ∆q ≥ vmax + ,
amax jmax amax jmax

determine the analytic expression of the minimum feasible motion time T that can be realized.
Provide the numerical solution for

jmax = 10 [rad/s3 ] amax = 4 [rad/s2 ] vmax = 2 [rad/s3 ] ∆q = 3 [rad].

[90 minutes; open books]

1
Solution
September 15, 2010

The solution is obtained by integration of the jerk profile, using the given initial conditions at time
t = 0 and then the suitable boundary conditions at the instants of jerk switching. In addition, due
to the symmetry of the trajectory derivatives with respect to T /2, it is sufficient to analyze only the
first half of the motion. Without loss of generality, we set q0 = 0 (only the displacement w.r.t. the
initial position matters). We will also see that the assumptions made on the velocity, acceleration,
and jerk bounds, as well as on the total displacement assigned in problem ii), guarantee that none
of the motion segments will vanish.

...
• First segment: q (t) = jmax , for t ∈ [0, Ts )
amax
q̈(t) = jmax t q̈(Ts ) = jmax Ts = amax ⇒ Ts =
jmax
1 2 1
q̇(t) = 2 jmax t ⇒ q̇(Ts ) = 2 jmax Ts2
1 3 1
q(t) = 6 jmax t q(Ts ) = 6 jmax Ts3
...
• Second segment: q (t) = 0, for t ∈ [Ts , Ts + Ta )

q̈(t) = amax
1
q̇(t) = 2 jmax Ts2 + amax (t − Ts )
1 1 1
q(t) = 6 jmax Ts3 + 2 jmax Ts2 (t − Ts ) + 2 amax (t − Ts )2

q̈(Ts + Ta ) = amax
1
⇒ q̇(Ts + Ta ) = 2 jmax Ts2 + amax Ta
1 1 1
q(Ts + Ta ) = 6 jmax Ts3 + 2 jmax Ts2 Ta + 2 amax Ta2
...
• Third segment: q (t) = −jmax , for t ∈ [Ts + Ta , 2Ts + Ta )

q̈(t) = amax − jmax (t − (Ts + Ta ))


1 1
q̇(t) = 2 jmax Ts2 + amax Ta + amax (t − (Ts + Ta )) − 2 jmax (t − (Ts + Ta ))2
1 1 1
q(t) = 6 jmax Ts3 + 2 jmax Ts2 Ta + 2 amax Ta2 + ( 21 jmax Ts2 + amax Ta )(t − (Ts + Ta ))
+ 21 amax (t − (Ts + Ta ))2 − 1
6 jmax (t − (Ts + Ta ))3

q̈(2Ts + Ta ) = amax − jmax Ts = 0


1 vmax amax
q̇(2Ts + Ta ) = 2 jmax Ts2 + amax Ta + amax Ts − 12 jmax Ts2 = vmax ⇒ Ta = −
⇒ amax jmax
1 1 1
q(2Ts + Ta ) = 6 jmax Ts3 + 2 jmax Ts2 Ta + 2 amax Ta2 + ( 12 jmax Ts2 + amax Ta ) Ts
+ 21 amax Ts2 − 16 jmax Ts3

2
...
• First half of fourth segment: q (t) = 0, for t ∈ [2Ts + Ta , 2Ts + Ta + Tv /2).

q̈(t) = 0
q̇(t) = vmax
q(t) = q(2Ts + Ta ) + vmax (t − (2Ts + Ta ))
 
Tv
q̈ 2Ts + Ta + =0
2
 
Tv
⇒ q̇ 2Ts + Ta + = vmax
2
   
Tv Tv
q 2Ts + Ta + = q(2Ts + Ta ) + vmax
2 2

T Tv
Since we have that = 2Ts + Ta + , due to the symmetry of the trajectory, we have
2 2
 
T ∆q
q = ,
2 2
or
 
1 1 1 1 Tv ∆q
jmax Ts2 Ta + amax Ta2 + ( jmax Ts2 + amax Ta ) Ts + amax Ts2 + vmax = .
2 2 2 2 2 2

Substituting the expressions of Ts and Ta and simplifying, we obtain finally


∆q vmax amax
Tv = − − . (1)
vmax amax jmax

While
amax
Ts = >0
jmax
always hold, we note that the assumptions made on the relative amplitudes of the bounds vmax ,
amax , jmax and on ∆q simultaneously guarantee that

Ta ≥ 0, Tv ≥ 0.

As a result, the total motion time is given by


∆q vmax amax
T = Tv + 2Ta + 4Ts = + + , (2)
vmax amax jmax
which is the minimum feasible time under the made assumptions. For specific choices of data,
some of the motion segments may collapse, and the actual duration of each of them (and thus the
total motion time) should be computed accordingly.

If Tv is assigned, the maximum feasible displacement is obtained from (1) as


 
vmax amax
∆q = vmax Tv + + . (3)
amax jmax

3
Plugging the data of problem i) in eq. (3) yields ∆q = 9.05 [rad] (with a total time T = 4.033 [s]).
The obtained profiles of position, velocity, acceleration, and jerk are shown in Fig. 2. With the
data of problem ii), from eq. (2) we have T = 2.4 [s]. The associated profiles of position, velocity,
acceleration, and jerk are shown in Fig. 3. Matlab sources are available.

∗∗∗∗∗

4
displacem ent = 9.05 rad, tota l tim e = 4 .0 333 s
10

position (rad)
5

0
0 0.5 1 1 .5 2 2.5 3 3 .5 4 4.5
tim e (s)

vm a x = 3 rad/s, T v = 2 s
3

2.5

2
velocity (rad/s)

1.5

0.5

− 0.5
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
tim e (s)

am ax = 5 rad/s2 , T a = 0.18 333 s


6

2
acce le ration (rad/s2 )

−2

−4

−6
0 0.5 1 1.5 2 2 .5 3 3.5 4 4 .5
tim e (s)

jm a x = 1 2 rad/s2 , T s = 0.41 66 7 s
15

10

5
je rk (ra d/s3 )

−5

−10

−15
0 0.5 1 1.5 2 2 .5 3 3.5 4 4 .5
tim e (s)

Figure 2: Position, velocity, acceleration, and jerk profiles for the solution to problem i)

5
displacem ent = 3 rad, tota l tim e = 2 .4 s
3

2.5

position (rad)
1.5

0.5

0
0 0 .5 1 1.5 2 2 .5
tim e (s)

vm ax = 2 rad/s, T v = 0.6 s
2

1.5

1
ve locity (ra d/s)

0.5

− 0.5
0 0.5 1 1.5 2 2 .5
tim e (s)

2
a m ax = 4 rad/s , T a = 0 .1 s
4

1
acce le ration (rad/s2 )

−1

−2

−3

−4

−5
0 0.5 1 1 .5 2 2.5
tim e (s)
2
jm ax = 10 ra d/s , T s = 0 .4 s
10

2
je rk (ra d/s3 )

−2

−4

−6

−8

− 10
0 0 .5 1 1.5 2 2 .5
tim e (s)

Figure 3: Position, velocity, acceleration, and jerk profiles for the solution to problem ii)

You might also like