P. 1
Auv Dynamics Presentation

# Auv Dynamics Presentation

|Views: 16|Likes:

See more
See less

11/18/2014

pdf

text

original

# AUV Dynamics

Autonomous Underwater Vehicle (AUV) Dynamics
Georgia Tech VIP Maritime Robotics Fall 2012
Kevin DeMarco

09/27/12

demarco@gatech.edu

1

Motivation

09/27/12

demarco@gatech.edu

2

Unit Step Input

09/27/12

demarco@gatech.edu

3

Feedback Control 09/27/12 demarco@gatech.edu 4 .

Coordinate Frame (1) 09/27/12 demarco@gatech.edu 5 .

edu 6 .Coordinate Frame (2) 09/27/12 demarco@gatech.

edu 7 .Rotation Matrices ● 2D Rotation Matrix ● 3D Rotation Matrix 09/27/12 demarco@gatech.

edu 8 .Rigid Body Dynamics (1) 09/27/12 demarco@gatech.

09/27/12 demarco@gatech.edu 9 .Rigid Body Dynamics (2) Angular acceleration in earth-fixed frame is equal to angular acceleration in body-fixed frame.

edu 10 .Translational Motion (1) 09/27/12 demarco@gatech.

Translational Motion (2) 09/27/12 demarco@gatech.edu 11 .

Rotational Motion 09/27/12 demarco@gatech.edu 12 .

Six DOF Equations of Motion 09/27/12 demarco@gatech.edu 13 .

edu 14 .Vectorial Representation 09/27/12 demarco@gatech.

Restoring forces due to weight and buoyancy Skin friction Wave drift damping Damping due to vortex shedding 09/27/12 demarco@gatech.edu 15 .Hydrodynamic Forces & Moments ● Radiation Induced Forces – – – – – – Added mass due to inertia of surrounding fluid Radiation-induced potential damping due to energy carried away by generated surface waves.

edu 16 .Hydrodynamic Forces & Moments ● Environmental Forces: – – – Ocean currents Waves Wind Thrust / propeller forces Control surfaces / rudder forces ● Propulsion Forces: – – 09/27/12 demarco@gatech.

but most often are determined empirically in a tow tank.edu 17 . 09/27/12 demarco@gatech.Added Mass for AUV Values can be found through strip theory.

Strip Theory 09/27/12 demarco@gatech.edu 18 .

Restoring Forces and Moments 09/27/12 demarco@gatech.edu 19 .

Simulations ● In order to simulate our AUV we need: – – – – – Model of our vehicle Initial state Input vector (reference signal) Controller (optional?!) Ordinary Differential Equation (ODE) Solver ● ● ● Euler's Method Improved Euler's Method The Runge-Kutta Method 09/27/12 demarco@gatech.edu 20 .

Matlab – – Implementations: ● ode45 lsode ode ● Octave – ● Scilab – 09/27/12 demarco@gatech.ODE Solvers ● Ordinary Differential Equation (ODE) Solvers – Usually use ODE solver options to set ● ● ● ODE solver type Max / min step sizes Notify solver of stiffness of A matrix.edu 21 .

0 .edu 22 . 0 .Simulating Vehicle Dynamics t_init = 0. 0 . 0 .x) // // States: // 1: u : surge velocity // 2: v : sway velocity // 3: w : heave velocity // 4: p : roll rate // 5: q : pitch rate // 6: r : yaw rate // 7: xpos : earth x-pos // 8: ypos : earth y-pos // 9: zpos : earth z-pos // 10: phi : roll angle // 11: theta : pitch angle // 12: psi : yaw angle 09/27/12 demarco@gatech. 0]. 0 . t_init. x0 = [0 . 0 . tt = t_init:t_step:t_final. t_final = 5000. 0 . 0 . yy = ode(x0. 0 . tt. 0 . Where auv_model is a function with prototype: function [xdot] = auv_model(t. 0 . 0 . auv_model). 0 . t_step = 0.1.

edu 23 .Control of AUV ● Types of control needed: – – – Speed control Heading control Depth control 09/27/12 demarco@gatech.

edu 24 .Affine Thruster Model 09/27/12 demarco@gatech.

edu 25 .Stability ● Controls-fixed stability – Fixed control surfaces and constant thrust Control surfaces and thrust allowed to vary ● Controls-free stability – ● ● ● Lyapunov methods (nonlinear) can be used to determine stability of system Open-loop stability Closed-loop stability 09/27/12 demarco@gatech.

edu 26 .AUV Control Examples 09/27/12 demarco@gatech.

edu 27 .AUV Control Examples 09/27/12 demarco@gatech.

Speed Control 09/27/12 demarco@gatech.edu 28 .

.Heading Control ● Coming soon.. 09/27/12 demarco@gatech.edu 29 .

edu 30 .Decoupled Pitch & Depth Control ● Coming soon... 09/27/12 demarco@gatech.

Questions? Kevin DeMarco demarco@gatech.edu 31 .edu 09/27/12 demarco@gatech.

scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->