Professional Documents
Culture Documents
Ok Underwater
Ok Underwater
Diving underwater
Olivier Kermorgant
Introductionyi −1
• History
• Applications
• Technology
• Modeling
• Control
A short history of manned submarinesyi −1
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
1690 – 1850: Research for military applications (Fr, En, Ru, USA)
Military (again)
• Mine hunting and mine neutralization
• Search and rescue
• Recovery
Other
• Object recovery
• And even leisure
Applications of ROV’syi −1
Military (again)
• Mine hunting and mine neutralization
• Search and rescue
• Recovery
Other
• Object recovery
• And even leisure
Applications of ROV’syi −1
Military (again)
• Mine hunting and mine neutralization
• Search and rescue
• Recovery
Other
• Object recovery
• And even leisure
Applications of ROV’syi −1
Military (again)
• Mine hunting and mine neutralization
• Search and rescue
• Recovery
Other
• Object recovery
• And even leisure
Applications of AUV’syi −1
Structure inspection
• Offshore structures
• Underwater cables
Object detection
• Military (mines)
• Air crash investigations
• Archeology
Object delivery
• Military
• Drug traffic (!)
Applications of AUV’syi −1
Structure inspection
• Offshore structures
• Underwater cables
Object detection
• Military (mines)
• Air crash investigations
• Archeology
Object delivery
• Military
• Drug traffic (!)
Applications of AUV’syi −1
Structure inspection
• Offshore structures
• Underwater cables
Object detection
• Military (mines)
• Air crash investigations
• Archeology
Object delivery
• Military
• Drug traffic (!)
Applications of AUV’syi −1
Structure inspection
• Offshore structures
• Underwater cables
Object detection
• Military (mines)
• Air crash investigations
• Archeology
Object delivery
• Military
• Drug traffic (!)
Companies and laboratoriesyi −1
Companies
• Ifremer, Seebyte, ECA Robotics, WHOI
Companies and laboratoriesyi −1
Companies
• Ifremer, Seebyte, ECA Robotics, WHOI
Application vs robot typeyi −1
Box
• No privileged direction
• Easy to add sensors / actuators
• Very bad hydrodynamic properties
• Used for static tasks
• May be a bit more than a box
Torpedo shaped
• Optimized hydrodynamics in a given direction
• Used for survey or mapping on large distances
• May use thrusters, fins or other technology
Bio-inspired
• Study of swimming animals
• No thrusters...
Robot designyi −1
Box
• No privileged direction
• Easy to add sensors / actuators
• Very bad hydrodynamic properties
• Used for static tasks
• May be a bit more than a box
Torpedo shaped
• Optimized hydrodynamics in a given direction
• Used for survey or mapping on large distances
• May use thrusters, fins or other technology
Bio-inspired
• Study of swimming animals
• No thrusters...
Robot designyi −1
Box
• No privileged direction
• Easy to add sensors / actuators
• Very bad hydrodynamic properties
• Used for static tasks
• May be a bit more than a box
Torpedo shaped
• Optimized hydrodynamics in a given direction
• Used for survey or mapping on large distances
• May use thrusters, fins or other technology
Bio-inspired
• Study of swimming animals
• No thrusters...
Robot designyi −1
Box
• No privileged direction
• Easy to add sensors / actuators
• Very bad hydrodynamic properties
• Used for static tasks
• May be a bit more than a box
Torpedo shaped
• Optimized hydrodynamics in a given direction
• Used for survey or mapping on large distances
• May use thrusters, fins or other technology
Bio-inspired
• Study of swimming animals
• No thrusters...
Sometimes just a ground robot put underwateryi −1
IRCCyN RAAMO eel-like robotyi −1
Tallin University of Technology turtle robotyi −1
Overview of AUV technologyyi −1
GPS
wifi
2 PC104 (nav / sensor processing)
2 vertical thrusters (heave and pitch)
up camera
pressure sensor
forward sonar 2 front cameras
Actuatorsyi −1
Glider design
• Moving masses to change pitch and buoyancy
• Low energy consumption
Actuatorsyi −1
Glider design
• Moving masses to change pitch and buoyancy
• Low energy consumption
Actuatorsyi −1
Glider design
• Moving masses to change pitch and buoyancy
• Low energy consumption
Exteroceptive Sensorsyi −1
Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
Underwater cameras
Exteroceptive Sensorsyi −1
Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
Underwater cameras
Sensorsyi −1
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Proprioceptive
• Depth sensor
• Inertial measurement unit (gyro)
• Doppler Velocity Log (DVL)
• Class of sonar
• Linear velocity by sonar variation
• GPS (when surfacing)
• Compass
Exteroceptive
• Sonars
• Single beam
• Multi-beam sonar
• Acoustic camera
• Underwater cameras
Communication
• No GPS, no wifi
• Acoustic modem
• Water depth and composition
• Vehicle velocity...
• (Very) low bandwidth
Other underwater technologiesyi −1
Communication
• No GPS, no wifi
• Acoustic modem
• Water depth and composition
• Vehicle velocity...
• (Very) low bandwidth
Other underwater technologiesyi −1
Communication
• No GPS, no wifi
• Acoustic modem
• Water depth and composition
• Vehicle velocity...
• (Very) low bandwidth
And alsoyi −1
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
• M = inertia matrix
• τg gravity
• τe external forces
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Modeling and assumptions - hydrodynamicsyi −1
ṗ = Rv
T
• vr = v − R vc relative velocity between body and fluid
• Ma added mass
::
• Ca added Coriolis
::
• External forces
• τg : gravity and buoyancy (keel effect)
• τu : added forces (ie thrusters)
• τe : other forces (collisions / link interactions)
Added matricesyi −1
Ma = −Diag(X , Y , Z , K , M, N)
03×3 − [p1 ]×
Ca =
− [p1 ]× − [p2 ]×
with (p1 , p2 ) = Ma vr
Ma = −Diag(X , Y , Z , K , M, N)
03×3 − [p1 ]×
Ca =
− [p1 ]× − [p2 ]×
with (p1 , p2 ) = Ma vr
Ma = −Diag(X , Y , Z , K , M, N)
03×3 − [p1 ]×
Ca =
− [p1 ]× − [p2 ]×
with (p1 , p2 ) = Ma vr
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
T
Hydrodynamics with relative velocities vr = v − R vc
• v link velocity in its own frame
• vc water velocity in earth frame
Initial equation
Mv̇ + Ma v̇r + C(v)v + Ca (vr )vr + d(vr )vr + τg = τu + τe
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Hydrodynamic drag modelingyi −1
In practice
• Identification of kl and kq
• Computation from CFD (Computational Fluid Dynamics)
• Speed tests in pool
• And a robust controller
Thruster modelingyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Thruster control matrix from poseyi −1
Then:
0
Ri
Ti = 0
[ti ]× Ri
−1
And τi = (fx , fy , fz , γx , γy , γz ) = Ti fi
Fin modelingyi −1
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
Reactive control
• Manual control (position / velocity / force)
• Waypoint tracking
• Velocity tracking
⇒ In all cases, output is the desired wrench τu∗ to apply to the AUV
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
General assumptions
• Current p and desired p∗ pose in world frame
• Current v and desired v∗ velocity in world frame
Control frame
• Fixed frame: easier to express disturbances (current)
• Vehicle-frame: easier for almost everything else
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
From G. Antonelli et al. (2003). “A novel adaptive control law for underwater
vehicles”. In: IEEE Trans. on Control Systems Technology
PID's
From position to force control
• Position setpoint (world frame) +
- velocity
• Velocity setpoint (vehicle frame) estim.
• Wrench setpoint
PID's
thrusters
intensities
PID's
Reactive control (no trajectory)yi −1
PID's
From position to force control
• Position setpoint (world frame) Mission navigation +
Sensor-based control
- velocity
• Velocity setpoint (vehicle frame) Manual setpoint estim.
• Wrench setpoint
PID's
thrusters
intensities
PID's
Reactive control (no trajectory)yi −1
PID's
From position to force control
• Position setpoint (world frame) Mission navigation +
Sensor-based control
- velocity
• Velocity setpoint (vehicle frame) Manual setpoint estim.
• Wrench setpoint
PID's
thrusters
intensities
PID's
Reactive control (no trajectory)yi −1
PID's
From position to force control
• Position setpoint (world frame) Mission navigation +
Sensor-based control
- velocity
• Velocity setpoint (vehicle frame) Manual setpoint estim.
• Wrench setpoint
PID's
thrusters
intensities
PID's
AUV controlyi −1
Seabed mapping
Now AUV localization
Sonar odometry
Pose registration
USBL / LBL underwater positioning systemsyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF for AUVyi −1
State: x = (x, y, z, R, P, Y , v, ω)
• Sometimes also accelerations
• State evolution ẋ = f̃ (x, u) ⇔ xk−1 = f (xk−1 , uk−1 )
• Uncertainties in thruster modeling u ≈ 0
Measurements
• Depth: h(xk ) = zsurf − zk
• USBL / LBL: h(xk ) = (xk , yk )
• IMU: h(xk ) = (v̇k , ωk , (Rk , Pk , Yk ))
• Visual Odometry (DVL): h(xk ) = (vk , ωk )
• Pre-dive GPS gives initial (x, y, z)
EKF with disturbancesyi −1