Introduction to modeling and control of underwater vehicle-manipulator systems Gianluca Antonelli Universit`a di Cassino e del Lazio Meridionale [email protected]http://webuser.unicas.it/lai/robotica http://www.eng.docente.unicas.it/gianluca antonelli TRIDENT school Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Introduction to modeling and controlof underwater vehicle-manipulator systems
50 minutes talk about the mathematical foundations ofUnderwater Vehicle Manipulator Systems (UVMS)
Educational shape (entry level)
knowledge of
mathematics, physicscontrolbasic robotics
equations, equations still equations. . .
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Outline
ALIVE
UVMSs
Introduction
Mathematical modeling
Two words about dynamic control
Kinematic control
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
(semi)autonomus UVMSs
PETASUS
Use of a manipulator is common for ROV, mainly in remotelycontrolled or in a master-slave configuration
Among the first autonomus modes:
AMADEUS I & II before 2000, EU
SAUVIM 1997–, USA
PETASUS, Korea
ALIVE 2000-2003, EU
Twin Burger + manipulator, Japan
TRIDENT 2010-2012, EU
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Notation1
yzb
η1
x
z
θ (pitch)
φ (roll)
ψ (yaw)
ω (heave)
υ (sway)yb
υ (surge)
xb
Forces and ν1,ν2 η1,η
2
momentsMotion along x Surge X u x
Motion along y Sway Y v y
Motion along z Heave Z w z
Rotation about x Roll K p φ
Rotation about y Pitch M q θ
Rotation about z Yaw N r ψ
1[Fossen(1994)]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Rigid body attitude
Euler angles commonly used
roll
pitch
yaw
ok for the vehicle, designed stable in roll and pitch
For the end-effector possible issues of representation singularities→ non-minimal representations (quaternions)
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Rigid body kinematics
η =
[
η1
η2
]
∈ R6 ν =
[
ν1
ν2
]
∈ R6
and by defining the matrix Je(RIB) ∈ R
6×6
Je(RIB) =
[
RBI O3×3
O3×3 Jk,o(RIB)
]
it isν = Je(R
IB)η
��
��
��✠
bodyfixed velocities
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Rigid body dynamics
moving in the free space
MRBν +CRB(ν)ν = τ v
��
��
��✠
MRB =
[
mI3 −mS(rbC)mS(rbC) IOb
]
∈ R6×6
��✒
bodyfixed acceleration
❅❅❅❘
6dof force/moment at the body
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Added mass and inertia
A body moving in a fluid accelerates it (ρ ≈ 1000 kg/m3)Need to account for an additional inertia(the added mass is not a quantity to be added to the body such that
it has an increased mass)
For submerged bodies, with common AUV shape at low velocities:
MA = − diag {Xu, Yv, Zw,Kp,Mq, Nr}
CA =
0 0 0 0 −Zww Yvv
0 0 0 Zww 0 −Xuu
0 0 0 −Yvv Xuu 00 −Zww Yvv 0 −Nrr Mqq
Zww 0 −Xuu Nrr 0 −Kpp
−Yvv Xuu 0 −Mqq Kpp 0
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Damping
Viscosity of the fluid causes dissipative drag and lift forces to the body
lift
drag
relative flow
The simplest model is drag-only, diagonal, linear/quadratic in velocity
further projected on the the null space of the higher priority one
ζ = J †σ +(
I − J†J)
J†
hσh
8we are talking about algorithmic singularities here. . .Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Kinematic control in pills -4-
AMADEUS
Agility task priority9
Task priority framework to handle both precision and set tasksEach task is the norm of the corresponding error (i.e., mi = 1)Recursive constrained least-squares within the set satisfyinghigher-priority tasks
9[Casalino et al.(2012)Casalino, Zereik, Simetti, Sperinde, and Turetta]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
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 TRIDENT school, Mallorca, 1 october 2012
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 TRIDENT school, Mallorca, 1 october 2012
Tasks to be controlled
Drag minimization, m = 1 10
h(q) = DT(q, ζ)WD(q, ζ)
within a second order solution
ζ = J †(
σ − Jζ)
− k(
I − J†J)
([
∂h∂η∂h∂q
]
+∂h
∂ζ
)
10[Sarkar and Podder(2001)]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Tasks to be controlled
Manipulability/singularity, m = 1
h(q) =∣
∣det(
JJT)∣
∣
(In 11 priorities dynamically swapped between singularity and e.e.)
joints
inhibited direction
singularitysingularity
setclose to
11[Kim et al.(2002)Kim, Marani, Chung, and Yuh]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Tasks to be controlled
Restoring moments:
m = 3 keep close gravity-buoyancy of the overall system 12
m = 2 align gravity and buoyancy (SAUVIM is 4 tons) 13
f b
f g
τ 2
12[Han and Chung(2008)]13[Marani et al.(2010)Marani, Choi, and Yuh]
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Tasks to be controlled
Obstacle avoidance m = 1
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Tasks to be controlled
Workspace-related variablesVehicle distance from the bottom, m = 1Vehicle distance from the target, m = 1
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Tasks to be controlled
Sensors configuration variables
Vehicle roll and pitch, m = 2Misalignment between the camera optical axis and the target lineof sight, m = 2
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
However. . .
End effector going out of the workspace and one (eventually weighted)task always leads to singularity
❅❅❅❘
manipulator stretched
Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
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 TRIDENT school, Mallorca, 1 october 2012
Fuzzy logic to balance the movement14
Within a weighted pseudoinverse framework
J†W
= W−1JT(
JW−1JT)−1
W−1(β) =
[
(1− β)I6 O6×n
On×6 βIn
]
with β ∈ [0, 1] output of a fuzzy inference engineSecondary tasks activated by additional fuzzy variables αi ∈ [0, 1]
ζ = J†W
(xE,d +KEeE) +(
I − J†W
JW
)
(
∑
i
αiJ†s,iws,i
)
Only one αi active at onceNeed to be complete, distinguishable, consistent and compactBeyond the dicotomy fuzzy/probability theory very effective intransferring ideas
14[Antonelli and Chiaverini(2003)]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Dynamic programming to balance the movement15
Freeze the vehicle velocity and implement the agility task priorityto the sole manipulator
Freeze the manipulator velocity and find the vehicle velocityneeded for the remaining tasks components not satisfied
ν
νe
15[Casalino et al.(2012)Casalino, Zereik, Simetti, Sperinde, and Turetta]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Dynamic programming to balance the movement15
Freeze the vehicle velocity and implement the agility task priorityto the sole manipulator
Freeze the manipulator velocity and find the vehicle velocityneeded for the remaining tasks components not satisfied
ν
νe
15[Casalino et al.(2012)Casalino, Zereik, Simetti, Sperinde, and Turetta]Gianluca Antonelli TRIDENT school, Mallorca, 1 october 2012
Acknowledge
Several researchers kindly provided the materials/video (or theexplications...) for this talkIn casual order: