Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control...

50
Joint-Space Control Optimization-based Robot Control Andrea Del Prete University of Trento

Transcript of Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control...

Page 1: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Joint-Space Control

Optimization-based Robot Control

Andrea Del Prete

University of Trento

Page 2: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Table of contents

1. Joint-Space Inverse Dynamics Control

2. Inverse Dynamics Control as Optimization Problem

1

Page 3: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Joint-Space Inverse Dynamics

Control

Page 4: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Robot Manipulator

Given (nonlinear) manipulator dynamics:

M(q)v + h(q, v) = τ (1)

Problem

Find τ(t) so that q(t) follows reference qr (t).

Assumption

We know dynamics and can measure q and v .

Solution

Set τ = M(q)vd + h(q, v) → closed-loop dynamics is v = vd .

Select vd so that q(t) follows qr (t):

vd = v r − Kd(v − v r )− Kp(q − qr ) (2)

where Kp,Kd are diagonal positive-definite gain matrices.

2

Page 5: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Robot Manipulator

Given (nonlinear) manipulator dynamics:

M(q)v + h(q, v) = τ (1)

Problem

Find τ(t) so that q(t) follows reference qr (t).

Assumption

We know dynamics and can measure q and v .

Solution

Set τ = M(q)vd + h(q, v) → closed-loop dynamics is v = vd .

Select vd so that q(t) follows qr (t):

vd = v r − Kd(v − v r )− Kp(q − qr ) (2)

where Kp,Kd are diagonal positive-definite gain matrices.

2

Page 6: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Robot Manipulator

Given (nonlinear) manipulator dynamics:

M(q)v + h(q, v) = τ (1)

Problem

Find τ(t) so that q(t) follows reference qr (t).

Assumption

We know dynamics and can measure q and v .

Solution

Set τ = M(q)vd + h(q, v) → closed-loop dynamics is v = vd .

Select vd so that q(t) follows qr (t):

vd = v r − Kd(v − v r )− Kp(q − qr ) (2)

where Kp,Kd are diagonal positive-definite gain matrices.

2

Page 7: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Robot Manipulator

Given (nonlinear) manipulator dynamics:

M(q)v + h(q, v) = τ (1)

Problem

Find τ(t) so that q(t) follows reference qr (t).

Assumption

We know dynamics and can measure q and v .

Solution

Set τ = M(q)vd + h(q, v) → closed-loop dynamics is v = vd .

Select vd so that q(t) follows qr (t):

vd = v r − Kd(v − v r )− Kp(q − qr ) (2)

where Kp,Kd are diagonal positive-definite gain matrices.

2

Page 8: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Robot Manipulator

Given (nonlinear) manipulator dynamics:

M(q)v + h(q, v) = τ (1)

Problem

Find τ(t) so that q(t) follows reference qr (t).

Assumption

We know dynamics and can measure q and v .

Solution

Set τ = M(q)vd + h(q, v) → closed-loop dynamics is v = vd .

Select vd so that q(t) follows qr (t):

vd = v r

− Kd(v − v r )− Kp(q − qr ) (2)

where Kp,Kd are diagonal positive-definite gain matrices.

2

Page 9: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Robot Manipulator

Given (nonlinear) manipulator dynamics:

M(q)v + h(q, v) = τ (1)

Problem

Find τ(t) so that q(t) follows reference qr (t).

Assumption

We know dynamics and can measure q and v .

Solution

Set τ = M(q)vd + h(q, v) → closed-loop dynamics is v = vd .

Select vd so that q(t) follows qr (t):

vd = v r − Kd(v − v r )− Kp(q − qr ) (2)

where Kp,Kd are diagonal positive-definite gain matrices.

2

Page 10: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Convergence

Show that q(t) converges to qr (t).

Closed-loop dynamics is

v = v r − Kd (v − v r )︸ ︷︷ ︸e

−Kp (q − qr )︸ ︷︷ ︸e

e = −Kd e − Kpe[e

e

]︸︷︷︸x

=

[0 I

−Kp −Kd

]︸ ︷︷ ︸

A

[e

e

]︸︷︷︸x

A is Hurwitz if Kp and Kd are diagonal and positive-definite →limt→∞ x(t) = 0 → limt→∞ q(t) = qr (t)

3

Page 11: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Convergence

Show that q(t) converges to qr (t).

Closed-loop dynamics is

v = v r − Kd (v − v r )︸ ︷︷ ︸e

−Kp (q − qr )︸ ︷︷ ︸e

e = −Kd e − Kpe[e

e

]︸︷︷︸x

=

[0 I

−Kp −Kd

]︸ ︷︷ ︸

A

[e

e

]︸︷︷︸x

A is Hurwitz if Kp and Kd are diagonal and positive-definite →limt→∞ x(t) = 0 → limt→∞ q(t) = qr (t)

3

Page 12: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Convergence

Show that q(t) converges to qr (t).

Closed-loop dynamics is

v = v r − Kd (v − v r )︸ ︷︷ ︸e

−Kp (q − qr )︸ ︷︷ ︸e

e = −Kd e − Kpe

[e

e

]︸︷︷︸x

=

[0 I

−Kp −Kd

]︸ ︷︷ ︸

A

[e

e

]︸︷︷︸x

A is Hurwitz if Kp and Kd are diagonal and positive-definite →limt→∞ x(t) = 0 → limt→∞ q(t) = qr (t)

3

Page 13: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Convergence

Show that q(t) converges to qr (t).

Closed-loop dynamics is

v = v r − Kd (v − v r )︸ ︷︷ ︸e

−Kp (q − qr )︸ ︷︷ ︸e

e = −Kd e − Kpe[e

e

]︸︷︷︸x

=

[0 I

−Kp −Kd

]︸ ︷︷ ︸

A

[e

e

]︸︷︷︸x

A is Hurwitz if Kp and Kd are diagonal and positive-definite →limt→∞ x(t) = 0 → limt→∞ q(t) = qr (t)

3

Page 14: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Convergence

Show that q(t) converges to qr (t).

Closed-loop dynamics is

v = v r − Kd (v − v r )︸ ︷︷ ︸e

−Kp (q − qr )︸ ︷︷ ︸e

e = −Kd e − Kpe[e

e

]︸︷︷︸x

=

[0 I

−Kp −Kd

]︸ ︷︷ ︸

A

[e

e

]︸︷︷︸x

A is Hurwitz if Kp and Kd are diagonal and positive-definite →limt→∞ x(t) = 0 → limt→∞ q(t) = qr (t)

3

Page 15: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Many names for the same approach

This control law:

τ = M(v r − Kd e − Kpe) + h (3)

is known as:

• Inverse-Dynamics (ID) Control: because based on inverse dynamics

computation.

• Computed Torque: because it computes torques needed to get

desired accelerations.

• Feedback Linearization (from control theory): because it uses state

feedback to linearize closed-loop dynamics.

Another variant (with similar properties) exists:

τ = Mv r − Kd e − Kpe + h (4)

4

Page 16: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Many names for the same approach

This control law:

τ = M(v r − Kd e − Kpe) + h (3)

is known as:

• Inverse-Dynamics (ID) Control: because based on inverse dynamics

computation.

• Computed Torque: because it computes torques needed to get

desired accelerations.

• Feedback Linearization (from control theory): because it uses state

feedback to linearize closed-loop dynamics.

Another variant (with similar properties) exists:

τ = Mv r − Kd e − Kpe + h (4)

4

Page 17: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Other Control Laws for Manipulators

Simpler control laws often used for manipulators.

A common option is PD+gravity compensation:

τ = −Kd e − Kpe︸ ︷︷ ︸PD

+ g(q)︸︷︷︸gravity compensation

(5)

Another (even simpler) option is PID control:

τ = −Kd e − Kpe −∫ t

0

Kie(s)ds (6)

where integral replaces gravity compensation.

Both control laws are stable (so q → qr ).

In theory “ID control“ outperforms “PD+gravity”, which outperforms

“PID”.

In practice the opposite could occur because of model errors.

5

Page 18: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Other Control Laws for Manipulators

Simpler control laws often used for manipulators.

A common option is PD+gravity compensation:

τ = −Kd e − Kpe︸ ︷︷ ︸PD

+ g(q)︸︷︷︸gravity compensation

(5)

Another (even simpler) option is PID control:

τ = −Kd e − Kpe −∫ t

0

Kie(s)ds (6)

where integral replaces gravity compensation.

Both control laws are stable (so q → qr ).

In theory “ID control“ outperforms “PD+gravity”, which outperforms

“PID”.

In practice the opposite could occur because of model errors.

5

Page 19: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Other Control Laws for Manipulators

Simpler control laws often used for manipulators.

A common option is PD+gravity compensation:

τ = −Kd e − Kpe︸ ︷︷ ︸PD

+ g(q)︸︷︷︸gravity compensation

(5)

Another (even simpler) option is PID control:

τ = −Kd e − Kpe −∫ t

0

Kie(s)ds (6)

where integral replaces gravity compensation.

Both control laws are stable (so q → qr ).

In theory “ID control“ outperforms “PD+gravity”, which outperforms

“PID”.

In practice the opposite could occur because of model errors.

5

Page 20: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Other Control Laws for Manipulators

Simpler control laws often used for manipulators.

A common option is PD+gravity compensation:

τ = −Kd e − Kpe︸ ︷︷ ︸PD

+ g(q)︸︷︷︸gravity compensation

(5)

Another (even simpler) option is PID control:

τ = −Kd e − Kpe −∫ t

0

Kie(s)ds (6)

where integral replaces gravity compensation.

Both control laws are stable (so q → qr ).

In theory “ID control“ outperforms “PD+gravity”, which outperforms

“PID”.

In practice the opposite could occur because of model errors.

5

Page 21: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Other Control Laws for Manipulators

Simpler control laws often used for manipulators.

A common option is PD+gravity compensation:

τ = −Kd e − Kpe︸ ︷︷ ︸PD

+ g(q)︸︷︷︸gravity compensation

(5)

Another (even simpler) option is PID control:

τ = −Kd e − Kpe −∫ t

0

Kie(s)ds (6)

where integral replaces gravity compensation.

Both control laws are stable (so q → qr ).

In theory “ID control“ outperforms “PD+gravity”, which outperforms

“PID”.

In practice the opposite could occur because of model errors.

5

Page 22: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Inverse Dynamics Control as

Optimization Problem

Page 23: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Inverse Dynamics (ID) Control as Least-Squares Problem

Solution of optimization problem:

(τ∗, v∗) = argminτ,v

||v − vd ||2

subject to Mv + h = τ(7)

with vd = v r − Kd e − Kpe

, is exactly the ID control law:

τ∗ = Mvd + h, (8)

No advantage in solving (7) to compute (8), but (7) is starting point to

solve more complex problems.

Problem (7) is Least-Squares Program/Problem (LSP).

6

Page 24: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Inverse Dynamics (ID) Control as Least-Squares Problem

Solution of optimization problem:

(τ∗, v∗) = argminτ,v

||v − vd ||2

subject to Mv + h = τ(7)

with vd = v r − Kd e − Kpe, is exactly the ID control law:

τ∗ = Mvd + h, (8)

No advantage in solving (7) to compute (8), but (7) is starting point to

solve more complex problems.

Problem (7) is Least-Squares Program/Problem (LSP).

6

Page 25: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Inverse Dynamics (ID) Control as Least-Squares Problem

Solution of optimization problem:

(τ∗, v∗) = argminτ,v

||v − vd ||2

subject to Mv + h = τ(7)

with vd = v r − Kd e − Kpe, is exactly the ID control law:

τ∗ = Mvd + h, (8)

No advantage in solving (7) to compute (8), but (7) is starting point to

solve more complex problems.

Problem (7) is Least-Squares Program/Problem (LSP).

6

Page 26: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Inverse Dynamics (ID) Control as Least-Squares Problem

Solution of optimization problem:

(τ∗, v∗) = argminτ,v

||v − vd ||2

subject to Mv + h = τ(7)

with vd = v r − Kd e − Kpe, is exactly the ID control law:

τ∗ = Mvd + h, (8)

No advantage in solving (7) to compute (8), but (7) is starting point to

solve more complex problems.

Problem (7) is Least-Squares Program/Problem (LSP).

6

Page 27: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Taxonomy of Convex Optimization Problems

Least-Squares Programs (LSP) have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• 2-norm of linear cost function (||Ax − b||2)

LSPs are subclass of convex Quadratic Programs (QPs), which have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• convex quadratic cost function (x>Hx + h>x , with H ≥ 0)

LSPs and convex QPs can be solved extremely fast with off-the-shelf

softwares

→ We can solve LSP/QPs inside 1 kHz control loops!

7

Page 28: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Taxonomy of Convex Optimization Problems

Least-Squares Programs (LSP) have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• 2-norm of linear cost function (||Ax − b||2)

LSPs are subclass of convex Quadratic Programs (QPs), which have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• convex quadratic cost function (x>Hx + h>x , with H ≥ 0)

LSPs and convex QPs can be solved extremely fast with off-the-shelf

softwares

→ We can solve LSP/QPs inside 1 kHz control loops!

7

Page 29: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Taxonomy of Convex Optimization Problems

Least-Squares Programs (LSP) have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• 2-norm of linear cost function (||Ax − b||2)

LSPs are subclass of convex Quadratic Programs (QPs), which have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• convex quadratic cost function (x>Hx + h>x , with H ≥ 0)

LSPs and convex QPs can be solved extremely fast with off-the-shelf

softwares

→ We can solve LSP/QPs inside 1 kHz control loops!

7

Page 30: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Taxonomy of Convex Optimization Problems

Least-Squares Programs (LSP) have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• 2-norm of linear cost function (||Ax − b||2)

LSPs are subclass of convex Quadratic Programs (QPs), which have:

• linear equality/inequality constraints (Ax ≤ b, or Ax = b)

• convex quadratic cost function (x>Hx + h>x , with H ≥ 0)

LSPs and convex QPs can be solved extremely fast with off-the-shelf

softwares

→ We can solve LSP/QPs inside 1 kHz control loops!

7

Page 31: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Torque Limits to ID Control

Take the ID control LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ(9)

LSPs allow for linear inequality constraints → we can add torque limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

(10)

Main advantage of optimization: inequality constraints.

8

Page 32: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Torque Limits to ID Control

Take the ID control LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ(9)

LSPs allow for linear inequality constraints → we can add torque limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

(10)

Main advantage of optimization: inequality constraints.

8

Page 33: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Torque Limits to ID Control

Take the ID control LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ(9)

LSPs allow for linear inequality constraints → we can add torque limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

(10)

Main advantage of optimization: inequality constraints.

8

Page 34: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Current Limits for Electric Motors

In electric motors current i is proportional to torque τ :

i = kττ (11)

Add current limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

(12)

9

Page 35: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Current Limits for Electric Motors

In electric motors current i is proportional to torque τ :

i = kττ (11)

Add current limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

(12)

9

Page 36: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Joint Velocity Limits

Assuming constant accelerations v during time step ∆t:

v(t + ∆t) = v(t) + ∆t v (13)

Add joint velocity limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

(14)

10

Page 37: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Joint Velocity Limits

Assuming constant accelerations v during time step ∆t:

v(t + ∆t) = v(t) + ∆t v (13)

Add joint velocity limits:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

(14)

10

Page 38: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Joint Position Limits

Could use same trick for position limits:

q(t + ∆t) = q(t) + ∆t v(t) +1

2∆t2v (15)

However, this can result in high accelerations, typically incompatible with

torque/current limits → unfeasible LSP.

Better approaches exist [1, 3, 2], but we don’t discuss them here.

11

Page 39: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Joint Position Limits

Could use same trick for position limits:

q(t + ∆t) = q(t) + ∆t v(t) +1

2∆t2v (15)

However, this can result in high accelerations, typically incompatible with

torque/current limits → unfeasible LSP.

Better approaches exist [1, 3, 2], but we don’t discuss them here.

11

Page 40: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Adding Joint Position Limits

Could use same trick for position limits:

q(t + ∆t) = q(t) + ∆t v(t) +1

2∆t2v (15)

However, this can result in high accelerations, typically incompatible with

torque/current limits → unfeasible LSP.

Better approaches exist [1, 3, 2], but we don’t discuss them here.

11

Page 41: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 42: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 43: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 44: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 45: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 46: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 47: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 48: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

Summary

Inverse-Dynamics Control: τ = M(v r − Kd e − Kpe) + h

Other version: τ = Mv r − Kd e − Kpe + h

PD + gravity compensation: τ = −Kd e − Kpe + g(q)

PID: τ = −Kd e − Kpe −∫ t

0

Kie(s)ds

ID Control as LSP:

minimizeτ,v

||v − vd ||2

subject to Mv + h = τ

τmin ≤ τ ≤ τmax

imin ≤ kττ ≤ imax

vmin ≤ v + ∆tv ≤ vmax

12

Page 49: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

References i

W. Decre, R. Smits, H. Bruyninckx, and J. De Schutter.

Extending iTaSC to support inequality constraints and

non-instantaneous task specification.

In IEEE International Conference on Robotics and Automation

(ICRA), 2009.

A. Del Prete.

Joint Position and Velocity Bounds in Discrete-Time

Acceleration / Torque Control of Robot Manipulators.

IEEE Robotics and Automation Letters, 3(1), 2018.

S. Rubrecht, V. Padois, P. Bidaud, M. Broissia, and M. Da Silva

Simoes.

Motion safety and constraints compatibility for multibody

robots.

Autonomous Robots, 32(3):333–349, 2012.

13

Page 50: Joint-Space Control - Optimization-based Robot Control · Feedback Linearization(from control theory): because it uses state ... pe Z t 0 K ie(s)ds (6) where integral replaces gravity

References ii

14