Joint Space Control Optimisation Based Robot Control
Joint Space Control Optimisation Based Robot Control
University of Trento
Introduction
1
Introduction
1
Introduction
1
Introduction
1
Schedule
2
Notation & Definitions
3
Notation & Definitions
3
Table of contents
4
Joint-Space Inverse Dynamics
Control
Robot Manipulator
Problem
Find τ (t) so that q(t) follows reference q r (t).
5
Robot Manipulator
Problem
Find τ (t) so that q(t) follows reference q r (t).
Assumption
We know dynamics and can measure q and v .
5
Robot Manipulator
Problem
Find τ (t) so that q(t) follows reference q r (t).
Assumption
We know dynamics and can measure q and v .
Solution
Set τ = M(q)v̇ d + h(q, v ) → closed-loop dynamics is v̇ = v̇ d .
5
Robot Manipulator
Problem
Find τ (t) so that q(t) follows reference q r (t).
Assumption
We know dynamics and can measure q and v .
Solution
Set τ = M(q)v̇ d + h(q, v ) → closed-loop dynamics is v̇ = v̇ d .
Select v̇ d so that q(t) follows q r (t):
5
Robot Manipulator
Problem
Find τ (t) so that q(t) follows reference q r (t).
Assumption
We know dynamics and can measure q and v .
Solution
Set τ = M(q)v̇ d + h(q, v ) → closed-loop dynamics is v̇ = v̇ d .
Select v̇ d so that q(t) follows q r (t):
v̇ d = v̇ r
5
Robot Manipulator
Problem
Find τ (t) so that q(t) follows reference q r (t).
Assumption
We know dynamics and can measure q and v .
Solution
Set τ = M(q)v̇ d + h(q, v ) → closed-loop dynamics is v̇ = v̇ d .
Select v̇ d so that q(t) follows q r (t):
v̇ d = v̇ r − Kd (v − v r ) − Kp (q − q r ) (2)
6
Convergence
v̇ = v̇ r − Kd (v − v r ) −Kp (q − q r )
| {z } | {z }
ė e
6
Convergence
v̇ = v̇ r − Kd (v − v r ) −Kp (q − q r )
| {z } | {z }
ė e
ë = −Kd ė − Kp e
6
Convergence
v̇ = v̇ r − Kd (v − v r ) −Kp (q − q r )
| {z } | {z }
ė e
ë = −Kd ė − Kp e
" # " #" #
ė 0 I e
=
ë −Kp −Kd ė
|{z} | {z } |{z}
ẋ A x
6
Convergence
v̇ = v̇ r − Kd (v − v r ) −Kp (q − q r )
| {z } | {z }
ė e
ë = −Kd ė − Kp e
" # " #" #
ė 0 I e
=
ë −Kp −Kd ė
|{z} | {z } |{z}
ẋ A x
6
Many names for the same approach
7
Many names for the same approach
τ = M v̇ r − Kd ė − Kp e + h (4)
7
Other Control Laws for Manipulators
τ = −Kd ė − Kp e + g (q)
| {z } |{z} (5)
PD gravity compensation
8
Other Control Laws for Manipulators
τ = −Kd ė − Kp e + g (q)
| {z } |{z} (5)
PD gravity compensation
8
Other Control Laws for Manipulators
τ = −Kd ė − Kp e + g (q)
| {z } |{z} (5)
PD gravity compensation
8
Other Control Laws for Manipulators
τ = −Kd ė − Kp e + g (q)
| {z } |{z} (5)
PD gravity compensation
8
Other Control Laws for Manipulators
τ = −Kd ė − Kp e + g (q)
| {z } |{z} (5)
PD gravity compensation
with v̇ d = v̇ r − Kd ė − Kp e
9
Inverse Dynamics (ID) Control as Least-Squares Problem
τ ∗ = M v̇ d + h, (8)
9
Inverse Dynamics (ID) Control as Least-Squares Problem
τ ∗ = M v̇ d + h, (8)
9
Inverse Dynamics (ID) Control as Least-Squares Problem
τ ∗ = M v̇ d + h, (8)
9
Taxonomy of Convex Optimization Problems
10
Taxonomy of Convex Optimization Problems
10
Taxonomy of Convex Optimization Problems
LSPs and convex QPs can be solved extremely fast with off-the-shelf
softwares
10
Taxonomy of Convex Optimization Problems
LSPs and convex QPs can be solved extremely fast with off-the-shelf
softwares
→ We can solve LSP/QPs inside 1 kHz control loops!
10
Adding Torque Limits to ID Control
11
Adding Torque Limits to ID Control
LSPs allow for linear inequality constraints → we can add torque limits:
subject to M v̇ + h = τ (10)
τ min ≤ τ ≤ τ max
11
Adding Torque Limits to ID Control
LSPs allow for linear inequality constraints → we can add torque limits:
subject to M v̇ + h = τ (10)
τ min ≤ τ ≤ τ max
11
Adding Current Limits for Electric Motors
i = kτ τ (11)
12
Adding Current Limits for Electric Motors
i = kτ τ (11)
subject to M v̇ + h = τ
(12)
τ min ≤ τ ≤ τ max
i min ≤ kτ τ ≤ i max
12
Adding Joint Velocity Limits
13
Adding Joint Velocity Limits
subject to M v̇ + h = τ
τ min ≤ τ ≤ τ max (14)
i min ≤ kτ τ ≤ i max
v min ≤ v + ∆t v̇ ≤ v max
13
Adding Joint Position Limits
14
Adding Joint Position Limits
14
Adding Joint Position Limits
14
Summary
15
Summary
15
Summary
15
Summary
15
Summary
ID Control as LSP:
minimize ||v̇ − v̇ d ||2
τ,v̇
subject to M v̇ + h = τ
15
Summary
ID Control as LSP:
minimize ||v̇ − v̇ d ||2
τ,v̇
subject to M v̇ + h = τ
τ min ≤ τ ≤ τ max
15
Summary
ID Control as LSP:
minimize ||v̇ − v̇ d ||2
τ,v̇
subject to M v̇ + h = τ
τ min ≤ τ ≤ τ max
i min ≤ kτ τ ≤ i max
15
Summary
ID Control as LSP:
minimize ||v̇ − v̇ d ||2
τ,v̇
subject to M v̇ + h = τ
τ min ≤ τ ≤ τ max
i min ≤ kτ τ ≤ i max
v min ≤ v + ∆t v̇ ≤ v max
15
References i
16
References ii
17
References iii
18
References iv
19