Clutches and brkesSelect any 3 position random motion out of real world and d...
Control problems for floating-base manipulators
1. Control problems for floating-base manipulators
Gianluca Antonelli
Universit`a di Cassino e del Lazio Meridionale
antonelli@unicas.it
http://webuser.unicas.it/lai/robotica
http://www.eng.docente.unicas.it/gianluca antonelli
Trondheim, 23 April 2014
Gianluca Antonelli Trondheim, 23 april 2014
2. Outline
Introduction & variable definition
Inverse Kinematics
A possible kinematic solution: NSB behavioral control
A possible dynamic solution: Virtual decomposition
Simulation/experiments
Perspectives
Gianluca Antonelli Trondheim, 23 april 2014
3. Space, aerial and underwater vehicle-manipulators
DLR
Canadian Space Agency
ALIVE
normal robots but
floating base
kinematic coupling
dynamic coupling
unstructured environment
Gianluca Antonelli Trondheim, 23 april 2014
8. Marine Autonomous Robotics for InterventionS
Our task: cooperative control of the bar (and logo design. . . )
Gianluca Antonelli Trondheim, 23 april 2014
10. UVMS dynamics in matrix form
M(q)˙ζ + C(q, ζ)ζ + D(q, ζ)ζ + g(q, RI
B) = τ
formally equal to a ground-fixed industrial manipulator 1
however. . .
Model knowledge
Bandwidth of the sensor’s readings
Vehicle hovering control
Dynamic coupling between vehicle and manipulator
External disturbances (current)
Kinematic redundancy of the system
1
[Siciliano et al.(2009)Siciliano, Sciavicco, Villani, and Oriolo]
[Fossen(2002)] [Schjølberg and Fossen(1994)]
Gianluca Antonelli Trondheim, 23 april 2014
11. Dynamics
Movement of vehicle and manipulator coupled
movement of the vehicle carrying the manipulator
law of conservation of momentum
Need to coordinate
at velocity level ⇒ kinematic control
at torque level ⇒ dynamic control 2
2
[McLain et al.(1996b)McLain, Rock, and Lee]
[McLain et al.(1996a)McLain, Rock, and Lee]
Gianluca Antonelli Trondheim, 23 april 2014
12. Outline
Introduction & variable definition
Inverse Kinematics
A possible kinematic solution: NSB behavioral control
A possible dynamic solution: Virtual decomposition
Simulation/experiments
Perspectives
Gianluca Antonelli Trondheim, 23 april 2014
13. Kinematic control in pills -1-
✛
✚
✘
✙
ζ
❘
✛
✚
✘
✙
˙σ
Starting from a generic m-dimensional task (e.g., the e.e. position)
σ = f(η, q) ∈ Rm
˙σ = J(η, q)ζ
An inverse mapping is required
Gianluca Antonelli Trondheim, 23 april 2014
14. Kinematic control in pills -1-
✛
✚
✘
✙
ζ
❘
✛
✚
✘
✙
˙σ
✖✕
✗✔
■
Starting from a generic m-dimensional task (e.g., the e.e. position)
σ = f(η, q) ∈ Rm
˙σ = J(η, q)ζ
An inverse mapping is required
Gianluca Antonelli Trondheim, 23 april 2014
15. Kinematic control in pills -2-
˙σ = Jζ inverted by solving proper optimization problems
Pseudoinverse
ζ = J†
˙σ = JT
JJT −1
˙σ
Transpose-based
ζ = JT
˙σ
Weighted pseudoinverse
ζ = J†
W ˙σ = W −1
JT
JW −1
JT −1
˙σ
Damped Least-Squares
ζ = JT
JJT
+ λ2
Im
−1
˙σ
need for closed-loop also. . .
Gianluca Antonelli Trondheim, 23 april 2014
16. Kinematic control in pills -3-
A robotic system is kinematically redundant when it possesses more
degrees of freedom than those required to execute a given task
Gianluca Antonelli Trondheim, 23 april 2014
17. Kinematic control in pills -3-
A robotic system is kinematically redundant when it possesses more
degrees of freedom than those required to execute a given task
Redundancy may be used to add additional tasks
✛
✚
✘
✙
ζ
❘
✛
✚
✘
✙
˙σ
✖✕
✗✔
■
Gianluca Antonelli Trondheim, 23 april 2014
18. Kinematic control in pills -3-
A robotic system is kinematically redundant when it possesses more
degrees of freedom than those required to execute a given task
Redundancy may be used to add additional tasks
✛
✚
✘
✙
ζ
❘
✛
✚
✘
✙
˙σ
✖✕
✗✔
■ ˙σa
✚✙
✛✘
˙σb
✙
✖✕
✗✔
✶
Gianluca Antonelli Trondheim, 23 april 2014
19. Kinematic control scheme
second. tasks
ηd, qd τ η, q
IK
main task
Control
Output of kinematic control is the variable to be controlled by the
actuators (vehicle thrusters and joints’ torques)
Gianluca Antonelli Trondheim, 23 april 2014
20. A first kinematic solution
Assuming the vehicle in hovering is not the best strategy to e.e. fine
positioning3, better to kinematically compensate with the manipulator
3
[Hildebrandt et al.(2009)Hildebrandt, Christensen, Kerdels, Albiez, and Kirchner]
Gianluca Antonelli Trondheim, 23 april 2014
21. Handling several tasks
Extended Jacobian4
Add additional (6 + n) − m constraints
h(η, q) = 0 with associated Jh
such that the problem is squared with
˙σ
0
=
J
Jh
ζ
4
[Chiaverini et al.(2008)Chiaverini, Oriolo, and Walker]
Gianluca Antonelli Trondheim, 23 april 2014
22. Handling several tasks -2-
Augmented Jacobian
An additional task is given
σh = h(η, q) with associated Jh
such that the problem is squared with
˙σ
˙σh
=
J
Jh
ζ
Gianluca Antonelli Trondheim, 23 april 2014
23. Handling several tasks -3-
Task priority redundancy resolution
σh = h(η, q) with associated Jh
further projected on the the null space of the higher priority one
ζ = J†
˙σ + Jh I − J†
J
†
˙σh − JhJ†
˙σ
Gianluca Antonelli Trondheim, 23 april 2014
24. Handling several tasks -4-
Singularity robust task priority redundancy resolution 5
σh = h(η, q) with associated Jh
further projected on the the null space of the higher priority one
ζ = J†
˙σ + I − J†
J J†
h
˙σh
5
we are talking about algorithmic singularities
here. . . [Chiaverini(1997)]
Gianluca Antonelli Trondheim, 23 april 2014
25. Handling several tasks -5-
AMADEUS
Agility task priority6
Task priority framework to handle both precision and set tasks
Each task is the norm of the corresponding error (i.e., mi = 1)
Recursive constrained least-squares within the set satisfying
higher-priority tasks
6
[Casalino et al.(2012)Casalino, Zereik, Simetti, Sperind`e, and Turetta]
Gianluca Antonelli Trondheim, 23 april 2014
26. Handling several tasks -6-
Behavioral algorithms (behavior=task), bioinspired, artificial
potentials, neuro-fuzzy, cognitive approaches, etc.
btw. . . mood ?
Gianluca Antonelli Trondheim, 23 april 2014
27. But. . .
What are these tasks we are talking about ?
Gianluca Antonelli Trondheim, 23 april 2014
28. Tasks to be controlled
Given 6 + n DOFs and m-dimensional tasks: End-effector
position, m = 3
pos./orientation, m = 6
distance from a target, m = 1
alignment with the line of sight, m = 2
Gianluca Antonelli Trondheim, 23 april 2014
29. Tasks to be controlled
Manipulator joint-limits
several approaches proposed, m = 1 to n, e.g.
h(q) =
n
i=1
1
ci
qi,max − qi,min
(qi,max − qi)(qi − qi,min)
Gianluca Antonelli Trondheim, 23 april 2014
30. Tasks to be controlled
Drag minimization, m = 1 7
h(q) = DT
(q, ζ)W D(q, ζ)
within a second order solution
˙ζ = J†
¨σ − ˙Jζ − k I − J†
J
∂h
∂η
∂h
∂q
+
∂h
∂ζ
7
[Sarkar and Podder(2001)]
Gianluca Antonelli Trondheim, 23 april 2014
31. Tasks to be controlled
Manipulability/singularity, m = 1
h(q) = det JJT
(In 8 priorities dynamically swapped between singularity and e.e.)
joints
inhibited direction
singularity
singularity
setclose to
8
[Kim et al.(2002)Kim, Marani, Chung, and Yuh,
Casalino and Turetta(2003)] [Chiacchio et al.(1991)Chiacchio, Chiaverini, Sciavicco, and
Gianluca Antonelli Trondheim, 23 april 2014
32. Tasks to be controlled
Restoring moments:
m = 3 keep close gravity-buoyancy of the overall system 9
m = 2 align gravity and buoyancy (SAUVIM is 4 tons) 10
fb
fg
τ 2
9
[Han and Chung(2008)]
10
[Marani et al.(2010)Marani, Choi, and Yuh]
Gianluca Antonelli Trondheim, 23 april 2014
33. Tasks to be controlled
Obstacle avoidance m = 1
Gianluca Antonelli Trondheim, 23 april 2014
34. Tasks to be controlled
Workspace-related variables
Vehicle distance from the bottom, m = 1
Vehicle distance from the target, m = 1
Gianluca Antonelli Trondheim, 23 april 2014
35. Tasks to be controlled
Sensors configuration variables
Vehicle roll and pitch, m = 2
Misalignment between the camera optical axis and the target line
of sight, m = 2
Gianluca Antonelli Trondheim, 23 april 2014
36. Tasks to be controlled
Visual servoing variables
Features in the image plane 11
11
[Mebarki et al.(2013)Mebarki, Lippiello, and Siciliano,
Mebarki and Lippiello(in press, 2014)]
Gianluca Antonelli Trondheim, 23 april 2014
37. Outline
Introduction & variable definition
Inverse Kinematics
A possible kinematic solution: NSB behavioral control
A possible dynamic solution: Virtual decomposition
Simulation/experiments
Perspectives
Gianluca Antonelli Trondheim, 23 april 2014
38. Behavioral control in pills
Inspired from animal behavior
sensors
behavior a
actuators
behavior b
actuators
behavior c
actuators
How to combine them in one single behavior?
Gianluca Antonelli Trondheim, 23 april 2014
39. Behavioral control in pills
Inspired from animal behavior
sensors
behavior a
actuators
behavior b
actuators
behavior c
actuators
How to combine them in one single behavior?
Gianluca Antonelli Trondheim, 23 april 2014
40. Competitive behavioral control
Behaviors are in competitions and the higher priority can subsume the
lower ones12
sensors
behavior b
ζ2
behavior a
ζ1
behavior c
ζ3 ζd
12
[Brooks(1986)]
Gianluca Antonelli Trondheim, 23 april 2014
41. Cooperative behavioral control
Behaviors cooperate and the priority is embedded in the gains13
sensors
behavior b
ζ2
α2
behavior a
ζ1
supervisor
α1
behavior c
ζ3
α3
ζd
13
[Arkin(1989)]
Gianluca Antonelli Trondheim, 23 april 2014
42. NSB
Null Space-based Behavioral control
Each action is decomposed in elementary behaviors/tasks
motion reference command for each task
ζd = J†
˙σd + Λσ σ = σd−σ
Gianluca Antonelli Trondheim, 23 april 2014
43. NSB: Merging different tasks
NSB inherits the approach of the singularity-robust task priority
inverse kinematics technique
ζd = J†
a ˙σa,d + Λaσa + J†
b ˙σb,d + Λbσb
primary secondary
Thus, defining:
ζa = J†
a ˙σa,d + Λaσa Na = I − J†
aJa
ζb = J†
b ˙σb,d + Λbσb
Gianluca Antonelli Trondheim, 23 april 2014
44. NSB: Merging different tasks
NSB inherits the approach of the singularity-robust task priority
inverse kinematics technique
ζd = J†
a ˙σa,d + Λaσa + I − J†
aJa J†
b ˙σb,d + Λbσb
primary null space secondary
Thus, defining:
ζa = J†
a ˙σa,d + Λaσa Na = I − J†
aJa
ζb = J†
b ˙σb,d + Λbσb
Gianluca Antonelli Trondheim, 23 april 2014
45. NSB: Merging different tasks
NSB inherits the approach of the singularity-robust task priority
inverse kinematics technique
ζd = J†
a ˙σa,d + Λaσa + I − J†
aJa J†
b ˙σb,d + Λbσb
primary null space secondary
Thus, defining:
ζa = J†
a ˙σa,d + Λaσa Na = I − J†
aJa
ζb = J†
b ˙σb,d + Λbσb
Gianluca Antonelli Trondheim, 23 april 2014
46. NSB: Merging different tasks
NSB inherits the approach of the singularity-robust task priority
inverse kinematics technique
ζd = J†
a ˙σa,d + Λaσa + I − J†
aJa J†
b ˙σb,d + Λbσb
primary null space secondary
Thus, defining:
ζa = J†
a ˙σa,d + Λaσa Na = I − J†
aJa
ζb = J†
b ˙σb,d + Λbσb
ζd = ζa + Naζb
Gianluca Antonelli Trondheim, 23 april 2014
47. NSB: Three-task example
ζa = J†
a ˙σa,d + Λaσ1
ζb = J†
b ˙σb,d + Λbσ2
ζc = J†
c ˙σc,d + Λcσ3
Successive projection approach
Na = I − J†
aJa
Nb = I − J†
bJb
ζd = ζa + Naζb + NaNbζc
Augmented projection approach
Jab =
Ja
Jb
Nab = In − J†
abJab
ζd = ζa + Naζb+Nabζc
Gianluca Antonelli Trondheim, 23 april 2014
48. NSB: Three-task example
ζa = J†
a ˙σa,d + Λaσ1
ζb = J†
b ˙σb,d + Λbσ2
ζc = J†
c ˙σc,d + Λcσ3
Successive projection approach
Na = I − J†
aJa
Nb = I − J†
bJb
ζd = ζa + Naζb + NaNbζc
Augmented projection approach
Jab =
Ja
Jb
Nab = In − J†
abJab
ζd = ζa + Naζb+Nabζc
Gianluca Antonelli Trondheim, 23 april 2014
49. NSB: Three-task example
ζa = J†
a ˙σa,d + Λaσ1
ζb = J†
b ˙σb,d + Λbσ2
ζc = J†
c ˙σc,d + Λcσ3
Successive projection approach
Na = I − J†
aJa
Nb = I − J†
bJb
ζd = ζa + Naζb + NaNbζc
Augmented projection approach
Jab =
Ja
Jb
Nab = In − J†
abJab
ζd = ζa + Naζb+Nabζc
Gianluca Antonelli Trondheim, 23 april 2014
50. From behaviors to actions
sensing/perception
elementary behaviors actions
commands
supervisor
Gianluca Antonelli Trondheim, 23 april 2014
51. Simple comparison: move to goal with obstacle
avoidance
obstacle avoidance
σ1 = p − po ∈ R
σ1,d = d
J1 = ˆrT
∈ R1×2
ˆr =
p − po
p − po
ζ1 = J†
1λ1 (d − p−po )
N(J1) = I − J†
1J1 = I − ˆrˆrT
move to goal
σ2 = p ∈ R2
σ2,d = pg
J2 = I ∈ R2×2
ζ2 = Λ2 pg − p
Gianluca Antonelli Trondheim, 23 april 2014
64. Gain tuning
Cooperative
task a b c
situation 1 α1,1 α1,2 α1,3
sit. 2 α2,1 α2,2 α2,3
sit. 3 α3,1 α3,2 α3,3
sit. 4 α4,1 α4,2 α4,3
NSB
Each behavior tuned as if it was alone but
in each situation the priority needs to be designed
Gianluca Antonelli Trondheim, 23 april 2014
65. Gain tuning
Cooperative
task a b c d
situation 1 α1,1 α1,2 α1,3 α1,4
sit. 2 α2,1 α2,2 α2,3 α2,4
sit. 3 α3,1 α3,2 α3,3 α3,4
sit. 4 α4,1 α4,2 α4,3 α4,4
NSB
Each behavior tuned as if it was alone but
in each situation the priority needs to be designed
Gianluca Antonelli Trondheim, 23 april 2014
66. Gain tuning
Cooperative
task a b c
situation 1 α1,1 α1,2 α1,3
sit. 2 α2,1 α2,2 α2,3
sit. 3 α3,1 α3,2 α3,3
sit. 4 α4,1 α4,2 α4,3
NSB
Each behavior tuned as if it was alone but
in each situation the priority needs to be designed
Gianluca Antonelli Trondheim, 23 april 2014
67. Stability analysis
Lyapunov function14
V (˜σ) = 1
2 ˜σT
˜σ > 0 where ˜σ = ˜σT
a ˜σT
b ˜σT
c
T
˙V = −˜σT
Ja
Jb
Jc
v = −˜σT
M ˜σ = −˜σT
Λa Oma,mb Oma,mc
JbJ†
aΛa JbNaJ†
bΛb JbNJ†
cΛc
JcJ†
aΛa JcNaJ†
bΛb JcNJ†
cΛc
˜σ
14
[Antonelli(2009)]
Gianluca Antonelli Trondheim, 23 april 2014
68. Stability results
˙V < 0 depending on the mutual relationships among the Jacobians:
dependent
ρ(J†
x) + ρ(J†
y) > ρ J†
x J†
y
independent
ρ(J†
x) + ρ(J†
y) = ρ J†
x J†
y
orthogonal
JxJ†
y = Omx×my
Gianluca Antonelli Trondheim, 23 april 2014
69. (Dis)advantages
PROS
Priorities strictly satisfied
Analitical convergence results
Easiest gain tuning
Clear handling of the DOFs
Competitive and cooperative as particular cases
CONS
Couples all the behaviors
Impedance control not possible
Gianluca Antonelli Trondheim, 23 april 2014
70. However. . .
End effector going out of the workspace and one (eventually weighted)
task always leads to singularity
❅
❅
❅❘
manipulator stretched
Gianluca Antonelli Trondheim, 23 april 2014
71. Balance movement between vehicle and manipulator
Need to distribute the motion e.g.:
move mainly the manipulator when target in workspace
move the vehicle when approaching the workspace boundaries
move the vehicle for large displacement
Some solutions, among them dynamic programming or fuzzy logic
Gianluca Antonelli Trondheim, 23 april 2014
72. Fuzzy logic to balance the movement15
Within a weighted pseudoinverse framework
J†
W = W −1
JT
JW −1
JT −1
W −1
(β) =
(1 − β)I6 O6×n
On×6 βIn
with β ∈ [0, 1] output of a fuzzy inference engine
Secondary tasks activated by additional fuzzy variables αi ∈ [0, 1]
ζ = J†
W ( ˙σa + Λa ˜σa) + I − J†
W JW
i
αiJ†
s,iws,i
Only one αi active at once
Need to be complete, distinguishable, consistent and compact
Beyond the dichotomy fuzzy/probability theory very effective in
transferring ideas
15
[Antonelli and Chiaverini(2003)]
Gianluca Antonelli Trondheim, 23 april 2014
73. Fuzzy logic to balance the movement15
Within a weighted pseudoinverse framework
J†
W = W −1
JT
JW −1
JT −1
W −1
(β) =
(1 − β)I6 O6×n
On×6 βIn
with β ∈ [0, 1] output of a fuzzy inference engine
Secondary tasks activated by additional fuzzy variables αi ∈ [0, 1]
ζ = J†
W ( ˙σa + Λa ˜σa) + I − J†
W JW
i
αiJ†
s,iws,i
Only one αi active at once
Need to be complete, distinguishable, consistent and compact
Beyond the dichotomy fuzzy/probability theory very effective in
transferring ideas
15
[Antonelli and Chiaverini(2003)]
Gianluca Antonelli Trondheim, 23 april 2014
74. Fuzzy logic to balance the movement15
Within a weighted pseudoinverse framework
J†
W = W −1
JT
JW −1
JT −1
W −1
(β) =
(1 − β)I6 O6×n
On×6 βIn
with β ∈ [0, 1] output of a fuzzy inference engine
Secondary tasks activated by additional fuzzy variables αi ∈ [0, 1]
ζ = J†
W ( ˙σa + Λa ˜σa) + I − J†
W JW
i
αiJ†
s,iws,i
Only one αi active at once
Need to be complete, distinguishable, consistent and compact
Beyond the dichotomy fuzzy/probability theory very effective in
transferring ideas
15
[Antonelli and Chiaverini(2003)]
Gianluca Antonelli Trondheim, 23 april 2014
75. Dynamic programming to balance the movement16
Freeze, as a free parameter, the vehicle velocity ν and implement
the agility task priority to the sole manipulator ⇒ ˙qd
Freeze the manipulator velocity ˙qd and then find the vehicle
velocity νd needed for the remaining tasks components not
satisfied ⇒ ˙ζd
ν
νe
16
[Casalino et al.(2012)Casalino, Zereik, Simetti, Sperind`e, and Turetta]
Gianluca Antonelli Trondheim, 23 april 2014
76. Dynamic programming to balance the movement16
Freeze, as a free parameter, the vehicle velocity ν and implement
the agility task priority to the sole manipulator ⇒ ˙qd
Freeze the manipulator velocity ˙qd and then find the vehicle
velocity νd needed for the remaining tasks components not
satisfied ⇒ ˙ζd
ν
νe
16
[Casalino et al.(2012)Casalino, Zereik, Simetti, Sperind`e, and Turetta]
Gianluca Antonelli Trondheim, 23 april 2014
77. Outline
Introduction & variable definition
Inverse Kinematics
A possible kinematic solution: NSB behavioral control
A possible dynamic solution: Virtual decomposition
Simulation/experiments
Perspectives
Gianluca Antonelli Trondheim, 23 april 2014
78. Dynamic control
Classical vs modular approaches (both compatible with NSB)
second. tasks
ηd, qd τ η, q
IK
main task
Control
Classical model-based
natural extension of
well-known control laws
adaptive and robust
versions
Virtual decomposition
modular ⇒ same control
law for all rigid bodies
adaptive ⇒ integral-like
action
Gianluca Antonelli Trondheim, 23 april 2014
79. Dynamic control
Classical vs modular approaches (both compatible with NSB)
second. tasks
ηd, qd τ η, q
IK
main task
Control
Classical model-based
natural extension of
well-known control laws
adaptive and robust
versions
Virtual decomposition
modular ⇒ same control
law for all rigid bodies
adaptive ⇒ integral-like
action
Gianluca Antonelli Trondheim, 23 april 2014
80. Dynamic control
Classical vs modular approaches (both compatible with NSB)
second. tasks
ηd, qd τ η, q
IK
main task
Control
Classical model-based
natural extension of
well-known control laws
adaptive and robust
versions
Virtual decomposition
modular ⇒ same control
law for all rigid bodies
adaptive ⇒ integral-like
action
Gianluca Antonelli Trondheim, 23 april 2014
81. Virtual Decomposition in a nutshell
based on Newton-Euler formulation
forward propagation of kinematic
errors assuming 6 DOFs
˜ν1
˜ν2
backward computation and projection
of control forces/torques
Gianluca Antonelli Trondheim, 23 april 2014
82. VD: forward propagation, from base to e.e.
6-DOF kinematic
errors ˜νi ∈ R6
each link considered
as a 6 DOFs body
νi
νi+1
˙qi+1
propagation
forward
νi+1
i+1 = UiT
i+1νi
i + ˙qi+1zi+1
i
Gianluca Antonelli Trondheim, 23 april 2014
83. VD: forward propagation, from base to e.e.
6-DOF kinematic
errors ˜νi ∈ R6
each link considered
as a 6 DOFs body
νi
νi+1
˙qi+1
propagation
forward
νi+1
i+1 = UiT
i+1νi
i + ˙qi+1zi+1
i
velocity propagation
Gianluca Antonelli Trondheim, 23 april 2014
84. VD: forward propagation, from base to e.e.
6-DOF kinematic
errors ˜νi ∈ R6
each link considered
as a 6 DOFs body
νi
νi+1
˙qi+1
propagation
forward
νi+1
i+1 = UiT
i+1νi
i + ˙qi+1zi+1
i
joint contribution
Gianluca Antonelli Trondheim, 23 april 2014
85. VD: backward propagation, from e.e. to base
6-DOF generalized
control forces
hc ∈ R6 hi
hi+1
τi
propagation
backward
hi
c,i = Y Ri, νi
i, νi
r,i, ˙νi
r,i
ˆθi + Kv,isi
i + Ui
i+1hi+1
c,i+1
Gianluca Antonelli Trondheim, 23 april 2014
86. VD: backward propagation, from e.e. to base
6-DOF generalized
control forces
hc ∈ R6 hi
hi+1
τi
propagation
backward
hi
c,i = Y Ri, νi
i, νi
r,i, ˙νi
r,i
ˆθi + Kv,isi
i + Ui
i+1hi+1
c,i+1
model-based compensation
Gianluca Antonelli Trondheim, 23 april 2014
87. VD: backward propagation, from e.e. to base
6-DOF generalized
control forces
hc ∈ R6 hi
hi+1
τi
propagation
backward
hi
c,i = Y Ri, νi
i, νi
r,i, ˙νi
r,i
ˆθi + Kv,isi
i + Ui
i+1hi+1
c,i+1
feedback term
Gianluca Antonelli Trondheim, 23 april 2014
88. VD: backward propagation, from e.e. to base
6-DOF generalized
control forces
hc ∈ R6 hi
hi+1
τi
propagation
backward
hi
c,i = Y Ri, νi
i, νi
r,i, ˙νi
r,i
ˆθi + Kv,isi
i + Ui
i+1hi+1
c,i+1
force propagation
Gianluca Antonelli Trondheim, 23 april 2014
89. VD: cooperative control
1 Forward propagation until the object
2 Object control forces for the movement+internal
3 Forces projected to the link n of the two robots
4 Backward propagation
hc,o
hc,n+1 hc,n+1
Gianluca Antonelli Trondheim, 23 april 2014
90. Outline
Introduction & variable definition
Inverse Kinematics
A possible kinematic solution: NSB behavioral control
A possible dynamic solution: Virtual decomposition
Simulation/experiments
Perspectives
Gianluca Antonelli Trondheim, 23 april 2014
91. Numerical simulation: underwater
6-DOF vehicle + 6-DOF manipulator
Reach a pre-grasp configuration in terms of end-effector position and
orientation
initial configuration
priority-1 task: e.e. configuration
priority-2 task: vehicle roll+pitch
priority-3 task: position of joint 2
only e.e. ⇒
complete solution ⇒
Gianluca Antonelli Trondheim, 23 april 2014
92. Numerical simulation: underwater
6-DOF vehicle + 7-DOF manipulator
Cameraman action: keep the object in the field of view
initial configuration
priority-1 task: field of view
priority-2 task: vehicle roll+pitch
priority-3 task: mechanical joint
limits
animation ⇒
Gianluca Antonelli Trondheim, 23 april 2014
94. First HW tests
Tests made in Seville, November 2013
vehicle controller not implemented
task: e.e. position+orientation
simple e.e. hold
no priority yet
Gianluca Antonelli Trondheim, 23 april 2014
95. Additional HW tests
Tests made in Seville, February 2014
vehicle controller to be tuned/improved
vehicle obstacle avoidance
e.e. + arm reconfiguration
Gianluca Antonelli Trondheim, 23 april 2014
96. Outline
Introduction & variable definition
Inverse Kinematics
A possible kinematic solution: NSB behavioral control
A possible dynamic solution: Virtual decomposition
Simulation/experiments
Perspectives
Gianluca Antonelli Trondheim, 23 april 2014
97. Perspectives: the underactuated case
Motivated by quadrotors control
Roll and pitch functional to the horizontal
movement ⇒ kinematic disturbances!
pitch
end effector
Uncontrolled DOF affect the tasks
Possible to handle in a task-priority approach?
Gianluca Antonelli Trondheim, 23 april 2014
98. Perspectives: Null base reaction forces
Dynamic model
Mv M12
MT
12 Mq
˙ν
¨q
+
fc,v
fc,q
+
fg,v
fg,q
=
τv
τq
for the sole vehicle:
Mv ˙ν + M12¨q + fc,v
try to zeroing
+fg,v = τv,
achievable with:
¨q = −M†
12fc,v + N ¨qo
yet another null space. . .
Gianluca Antonelli Trondheim, 23 april 2014
99. Perspectives: arm’s motors not controllable in torque
Several manipulators on the market equipped with position/velocity
feedback control loops
Need to design a proper controller for the sole vehicle
Partially coupled model
Iterative formulation
Adaptive
Simplest version: only gravity
Mv ˙ν + M12¨q + fc,v + fg,v = τv,
compensate only for fg,v
h
0
0=Y (0)·θ0+U
0
1 Y (1) · θ1 + U
1
2h
2
2 +. . .= Y (0) U0
1Y (1) U0
1U1
2Y (2) . . . U0
1U1
2 . . . Un−1
n Y (n)
Y
θ0
θ1
θ2
.
.
.
θn
Gianluca Antonelli Trondheim, 23 april 2014
101. Thanks for the attention
The presented results are the outcome of the work of several
colleagues from the University of Cassino, the Consortium ISME
and PRISMA, the projects ARCAS and MARIS
Filippo Arrichiello, Khelifa Baizid, Elisabetta Cataldi, Stefano Chiaverini,
Amal Meddahi
Gianluca Antonelli Trondheim, 23 april 2014
102. Bibliography I
G. Antonelli.
Stability analysis for prioritized closed-loop inverse kinematic algorithms for
redundant robotic systems.
IEEE Transactions on Robotics, 25(5):985–994, October 2009.
G. Antonelli.
Underwater robots.
Springer Tracts in Advanced Robotics, Springer-Verlag, Heidelberg, D, 3rd
edition, January 2014.
G. Antonelli and S. Chiaverini.
Fuzzy redundancy resolution and motion coordination for underwater
vehicle-manipulator systems.
IEEE Transactions on Fuzzy Systems, 11(1):109–120, 2003.
R.C. Arkin.
Motor schema based mobile robot navigation.
The International Journal of Robotics Research, 8(4):92–112, 1989.
Gianluca Antonelli Trondheim, 23 april 2014
103. Bibliography II
R.A. Brooks.
A robust layered control system for a mobile robot.
IEEE Journal of Robotics and Automation, 2(1):14–23, 1986.
G. Casalino and A. Turetta.
Coordination and control of multiarm, nonholonomic mobile manipulators.
In Proceedings IEEE/RSJ International Conference on Intelligent Robots and
Systems, pages 2203–2210, Las Vegas, NE, Oct. 2003.
G. Casalino, E. Zereik, E. Simetti, S. Torelli A. Sperind`e, and A. Turetta.
Agility for underwater floating manipulation: Task & subsystem priority based
control strategy.
In 2012 IEEE/RSJ International Conference on Intelligent Robots and
Systems, Vilamoura, PT, october 2012.
Gianluca Antonelli Trondheim, 23 april 2014
104. Bibliography III
P. Chiacchio, S. Chiaverini, L. Sciavicco, and B. Siciliano.
Closed-loop inverse kinematics schemes for constrained redundant manipulators
with task space augmentation and task priority strategy.
The International Journal Robotics Research, 10(4):410–425, 1991.
S. Chiaverini.
Singularity-robust task-priority redundancy resolution for real-time kinematic
control of robot manipulators.
IEEE Transactions on Robotics and Automation, 13(3):398–410, 1997.
S. Chiaverini, G. Oriolo, and I. D. Walker.
Springer Handbook of Robotics, chapter Kinematically Redundant
Manipulators, pages 245–268.
B. Siciliano, O. Khatib, (Eds.), Springer-Verlag, Heidelberg, D, 2008.
Gianluca Antonelli Trondheim, 23 april 2014
105. Bibliography IV
T.I. Fossen.
Marine Control Systems: Guidance, Navigation and Control of Ships, Rigs and
Underwater Vehicles.
Marine Cybernetics, Trondheim, Norway, 2002.
J. Han and W.K. Chung.
Coordinated motion control of underwater vehicle-manipulator system with
minimizing restoring moments.
In Intelligent Robots and Systems, 2008. IROS 2008. IEEE/RSJ International
Conference on, pages 3158–3163. IEEE, 2008.
M. Hildebrandt, L. Christensen, J. Kerdels, J. Albiez, and F. Kirchner.
Realtime motion compensation for ROV-based tele-operated underwater
manipulators.
In IEEE OCEANS 2009-Europe, pages 1–6, 2009.
Gianluca Antonelli Trondheim, 23 april 2014
106. Bibliography V
J. Kim, G. Marani, WK Chung, and J. Yuh.
Kinematic singularity avoidance for autonomous manipulation in underwater.
Proceedings of PACOMS, 2002.
G. Marani, S.K. Choi, and J. Yuh.
Real-time center of buoyancy identification for optimal hovering in autonomous
underwater intervention.
Intelligent Service Robotics, 3(3):175–182, 2010.
T.W. McLain, S.M. Rock, and M.J. Lee.
Coordinated control of an underwater robotic system.
In Video Proceedings of the 1996 IEEE International Conference on Robotics
and Automation, pages 4606–4613, 1996a.
T.W. McLain, S.M. Rock, and M.J. Lee.
Experiments in the coordinated control of an underwater arm/vehicle system.
Autonomous robots, 3(2):213–232, 1996b.
Gianluca Antonelli Trondheim, 23 april 2014
107. Bibliography VI
R. Mebarki and V. Lippiello.
Image-based control for aerial manipulation.
Asian Journal of Control, in press, 2014.
R. Mebarki, V. Lippiello, and B. Siciliano.
Exploiting image moments for aerial manipulation control.
In ASME Dynamic Systems and Control Conference, Palo Alto, CA, USA,
2013.
N. Sarkar and T.K. Podder.
Coordinated motion planning and control of autonomous underwater
vehicle-manipulator systems subject to drag optimization.
Oceanic Engineering, IEEE Journal of, 26(2):228–239, 2001.
I. Schjølberg and T. Fossen.
Modelling and control of underwater vehicle-manipulator systems.
In in Proc. 3rd
Conf. on Marine Craft maneuvering and control, pages 45–57,
Southampton, UK, 1994.
Gianluca Antonelli Trondheim, 23 april 2014
108. Bibliography VII
B. Siciliano, L. Sciavicco, L. Villani, and G. Oriolo.
Robotics: modelling, planning and control.
Springer Verlag, 2009.
Gianluca Antonelli Trondheim, 23 april 2014