132
1 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen) Chapter 13 – Advanced Motion Control Systems 13.1 LinearQuadra/c Op/mal Control 13.2 State Feedback Lineariza/on 13.3 Integrator Backstepping 13.4 SlidingMode Control State-of-the-art motion control systems are usually designed using PID control methods as described in Chapter 12. This chapter presents more advanced methods for optimal and nonlinear control of marine craft. The main motivation for this is design simplicity and performance. Nonlinear control theory can often yield a more intuitive design than linear theory. Linearization destroys model properties and the results can be a more complicated design process with limited physical insight. Chapter 13 is written for the advanced user who want to exploit a more advanced model and use this model to improve the performance of the control system. Readers of this chapter need background in optimal and nonlinear control theory. x ! ! Ax " Bu " Ew ! " ! J ! !!"# M# " " C!#"# " D!#"# " g!!" ! $ " w

Chapter 13 – Advanced Motion Control Systems

Embed Size (px)

Citation preview

Page 1: Chapter 13 – Advanced Motion Control Systems

1 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Chapter 13 – Advanced Motion Control Systems 13.1    Linear-­‐Quadra/c  Op/mal  Control  13.2    State  Feedback  Lineariza/on  13.3    Integrator  Backstepping  13.4    Sliding-­‐Mode  Control  

State-of-the-art motion control systems are usually designed using PID control methods as described in Chapter 12. This chapter presents more advanced methods for optimal and nonlinear control of marine craft. The main motivation for this is design simplicity and performance. Nonlinear control theory can often yield a more intuitive design than linear theory. Linearization destroys model properties and the results can be a more complicated design process with limited physical insight. Chapter 13 is written for the advanced user who want to exploit a more advanced model and use this model to improve the performance of the control system. Readers of this chapter need background in optimal and nonlinear control theory.  

x! ! Ax " Bu " Ew #

!" ! J!!!"#M#" " C!#"# " D!#"# " g!!" ! $ " w

# #

Page 2: Chapter 13 – Advanced Motion Control Systems

2 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Chapter 13.1 Linear-Quadratic Optimal Control

xu B

G

A

Cyxd=0

full state feedback

u B

E

G1

G2

G3

y

w=constant

yd=constant

disturbance feedforward

reference feedforward

full state feedback

A

x C

Op/mal  set-­‐point  regula/on  

Op/mal  trajectory-­‐    tracking  control  

x! ! Ax " Bu " Ew #

Op/mal  mo/on  control  systems  are  designed  by  considering  the  linearized  equa/ons  of  mo/on  in  the  following  form:  

Page 3: Chapter 13 – Advanced Motion Control Systems

3 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

A linear-quadratic regulator (LQR) can be designed for the state-space model

x∈ℝⁿ, u∈ℝr, y∈ℝm In order to design a linear optimal control law the system (A,B,C) must be controllable.

13.1.1 Linear-Quadratic Optimal Regulator

Defini&on  13.1  (Controllability)  The  state  and  input  matrix  (A,B) must  sa/sfy  the  controllability  condi/on  to  ensure  that  

there  exists  a  control  u(t) which  can  drive  any  arbitrary  state  x(t0) to  another  arbitrary  state  x(t1) for t1 > t0.  The  controllability  condi/on  requires  that  the  matrix:  

     must  be  of  full  row  rank  such  that  a  least  a  right  inverse  exists.  

C ! !B | AB | . . . | "A#n!1B$ #

!x " Ax # Buy " Cx

# #

Page 4: Chapter 13 – Advanced Motion Control Systems

4 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.1 Linear-Quadratic Optimal Regulator Design  a  linear  op/mal  controller  for  set-­‐point  regula/on:  

!x " Ax # Buy " Cx

# #

J ! minu12 !0

T!y!Qy " u!Ru"dt

! 12 !0

T!x!C!QCx " u!Ru" dt #

Design  weights:    Q = QT ≥ 0 (output  weight)  R =  RT > 0 (input  weight)  

u ! !R!1B!P"x ! Gx

P!A ! A!P! " P!BR"1B!P! ! C!QC " 0 Algebraic  Ricca/  Equa/on  (ARE)  solve  for  P  =  PT > 0

Linear  Quadra/c  Regulator    

xu B

G

A

Cyxd=0

full state feedback

regulate y =  Cx to zero

Performance  index:              

Op/mal  solu/on  (Athans  and  Falb  1966):  

Page 5: Chapter 13 – Advanced Motion Control Systems

5 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.1 Linear Quadratic Optimal Regulator

Matlab  Example:  MSS  Toolbox  command  ExLQR.m  

Q ! diag([1]); % user editable tracking error weights (dim m x m)

R ! diag([1]); % user editable input weights (dim r x r)

% System matrices

A ! [0 1; -1 -2]; % user editable state matrix (dim n x n)

B ! [0; 1]; % user editable input matrix (dim n x r)

C ! [1 0]; % user editable output matrix (dim m x n)

% Compute the optimal feedback gain matrix G

[K,P,E] ! lqr(A,B,C’*Q*C,R);

G ! -K

Page 6: Chapter 13 – Advanced Motion Control Systems

6 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.2 LQR Design for Trajectory Tracking and Integral Action Transforma&on  of  the  LQ  Tracker  to  a  Set-­‐Point  Regula&on  Problem  

 The  LQR  can  be  redesigned  to  track  a  /me-­‐varying  reference  trajectory  xd  for  a  large  class  of  mechanical  systems  possessing  certain  structural  proper/es.    

Two  solu/ons  will  be  presented:  –  Simple  solu/on    

Transforma/on  of  the  trajectory  tracking  problem  to  a  LQ  set-­‐point  regula/on  problem  using  reference  feedforward.  Hence,  the  solu/on  can  be  found  by  solving  the  Algebraic  Ricca,  Equa0on  (ARE)  

–  General  solu/on  Compute  the  op/mal  reference  and  disturbance  feedforward  gains  by  solving  a  linear  quadra/c  performance  index.  This  solu/on  requires  that  a  set  of  Differen0al  Ricca0  Equa0ons  (DRE)  are  solved.  

Page 7: Chapter 13 – Advanced Motion Control Systems

7 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.2 LQR Design for Trajectory Tracking and Integral Action Example  13.2  (Mass-­‐Damper-­‐Spring  Trajectory-­‐Tracking  Problem)  

   

Original  model  is  transformed  to  an  Error  Dynamics  Model:  

x! " vmv! # dv # kx " !

! ! !FF " !LQ

!FF ! mv" d # dvd # kxdLQ  feedback+  reference  feedforward  

The  desired  states  are  computed  using  a  reference  model  with  r  as  input:    The  trajectory-­‐tracking  control  problem  has  now  been    transformed  to  a  LQ  set-­‐point  regula/on  problem:  

më ! de ! ke " !LQ

x! d " vd

v! d " !!vd, r" # #

x! "0 1

! dm ! k

mA

x #01m

B

u

e ! 1 0C

x

e ! x ! xd, ė ! v ! vd

Solve  this  as  a  standard  LQR  problem  where    u ! !LQ

x !!e, ė"!

Page 8: Chapter 13 – Advanced Motion Control Systems

8 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.2 LQR Design for Trajectory Tracking and Integral Action Integral  Ac&on  

An  integral  state  z:  

 is  augmented  to  the  state  vector  x  such  that:  

x! " Ax # Bu

ż! y ! Cx

y ! Cx

x! a ! Aaxa"Bau Aa !0 C0 A

, Ba !0B

xa ! !z!, x!"!Hence,  the  solu/on  of  the  LQR  set-­‐point  regula/on  problem  for  the  augmented  state-­‐space  model  is:    

u ! !R!1Ba!P"xa

! !R!1!0 B!"P11 P12

P21 P22

zx

! !R!1B!P12Kiz ! R!1B!P22

Kpx #

P!Aa ! Aa!P! " P!BaR"1Ba!P! !Qa " 0

Op/mal  LQ  controller  with  integral  ac/on  (feedback  from  the  state  z)  

z ! !0

t e!!" d!

J ! minu

12 !0

t!xa!Qaxa " u!Ru"d! #

Page 9: Chapter 13 – Advanced Motion Control Systems

9 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ TrajectoryTracking Problem

Model  Assump&on:  the  state  x  and  disturbance  w  are  measured  

!x " Ax # Bu ! Ewy " Cx

# #

Reference  Feedforward  Assump&ons:  

We  consider  a  /me-­‐varying  reference  system:  

x! d ! "!xd , r!yd ! Cxd

# #

!!xd,r! " Adxd ! Bdr

r  =  commanded  input  

If  x  and  w  are  es/mated  using  a  Kalman  filter,  stability  can  be  proven  by  applying  a  separa/on  principle  (LQG  control)    

 

Page 10: Chapter 13 – Advanced Motion Control Systems

10 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem Disturbance  Feedforward  Assump&ons:          Two  cases  of  disturbance  feedforward  are  considered:  

 1.  The  disturbance  vector  w  =  constant  for  all  t  >  Tp  where  Tp  is  the  present  /me.    

   

 An  example  of  this  is  a  ship  exposed  to  constant  (or  at  least  slowly  varying)  wind  forces.  This  is  a  reasonable  assump/on  since  the  average  wind  speed  and  direc/on  are  not  likely  to  change  in  minutes.    

2.  The  disturbance  w  =  w(t)  varies  as  a  func/on  of  /me  t  for  future  /me  t  >  Tp      This  is  the  case  for  most  physical  disturbances.  A  feedforward  solu/on  requires  that  w  is  known  (or  at  least  es/mated)  for  t  ≥  0.  In  many  cases  this  is  unrealis/c  so  the  best  we  can  do  is  to  assume  that  w(t)  =  w(Tp)  =  constant    e.g.  in  a  finite  future  /me  horizon  so  that  it  conforms  to  Case  1  above.  

Tp t w = constant

Page 11: Chapter 13 – Advanced Motion Control Systems

11 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem Control  Objec&ve  Design  a  LQ  op/mal  tracking  controller  using  a  /me-­‐varying  reference  trajectory yd

Assume  that  the  desired  output  yd = Cxd is  known  for  /me  t ∈ [0, T] where  T  is  the  final  /me  and  xd  is  the  desired  state  vector.  

The  goal  is  to  design  an  op/mal  tracking  controller  that  tracks  the  desired  output  

   

This  is  a  finite  /me-­‐horizon  op/mal  control  problem  which  can  be  solved  by  using  the  Differen/al  Ricca/  Equa/on  (DRE);    Athans  and  Falb  (1996),  pp.  793-­‐801.  

e ! y ! yd ! C!x ! xd!

J ! minu12 e

!!T"Qfe!T" " 12 !t0

T!e!Qe " u!Ru!dt

subject to x! " Ax # Bu # Ew, x!0" ! x0 #

Design  weights:  Qf  =  final  tracking  error  Q =  tracking  error  R  =  input  

Page 12: Chapter 13 – Advanced Motion Control Systems

12 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem Linear  reference  generator  

Performance  index:  

Solu/on  for  Linear  Time-­‐Varying  (LTV)  Systems    

x! d ! Adxd " Bdry ! Cxd

# #

e ! y ! yd

u ! !R!1B!!Px " h1 " h2"

P! "!PA ! A!P ! PBR!1B!P ! "Q#h1" ! !A ! BR!1B!P"!h1 ! "Qxd#h2" ! !A ! BR!1B!P"!h2!PEw

# # #

P!T" ! Q! fh1!T" ! !Q! fxd!T"

h2!T" ! 0

#

#

#

J ! minu12 e

!!T"Qfe!T" " 12 !t0

T!e!Qe " u!Ru!dt

subject to x! " Ax # Bu # Ew, x!0" ! x0 # state  feedback  reference  feedforward  disturbance  feedforward  

!Q " C!QC ! 0 #

Q! f ! C!QfC

Page 13: Chapter 13 – Advanced Motion Control Systems

13 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem Numerical  Solu&on  of  Differen&al  Equa&ons  No/ce  that  the  ini/al  condi/ons  for  P,  h1  and  h2  are  not  known,  but  the  final  condi/ons  at  

/me  t  =  T  are  known.    Consequently,  these  equa/ons  have  to  be  integrated  backward  in  /me  (a  priori)  to  find  the  

ini/al  condi/ons,  and  then  be  executed  forward  in  /me  again  with  the  closed-­‐loop  plant  from  [0,  T].  

x! " f!x, t! ! G!x, t!u t ! "T, 0#

! dx!T!!!d! ! f!x"T ! !!,T ! !! " G!x!T ! !",T ! !!u"T ! !!

dz!!!d! ! !f!z"!!,T ! !! ! G!z!!", T ! !!u"T ! !!

A  nonlinear  system  can  be  simulated  backwards  in  /me  by  the  following  change  of  integra/on  variable  t = T – τ with  dt = -dτ

z!!" ! x!T ! !"Finally,  let:  

integrate  forward  in  /me  

integrate  backward  in  /me  

Page 14: Chapter 13 – Advanced Motion Control Systems

14 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem Example  13.2  (Op&mal  Time-­‐Varying  LQ  Trajectory-­‐Tracking  Problem)  Mass-­‐damper-­‐spring  system:  

x! !0 1!1 !2

x "01

u "01

w

y ! 1 0 x

#

#

x! d !0 1!1 !1

xd "01

r

yd ! 1 0 xd

#

#

r ! sin!t"

w ! cos!t"disturbance  is  known  for  all  t  

Reference  model:  

See  Matlab  MSS  toolbox  script  ExLQFinHor.m  

Page 15: Chapter 13 – Advanced Motion Control Systems

15 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem

Op/mal  solu/ons  found  by  backward  integra/on.    Final  condi/ons  at  T  =  10  s:    P(T)  =    0  h1  =  0  h2  =  0    see  MSS  toolbox  ExLQFinHor.m  

Page 16: Chapter 13 – Advanced Motion Control Systems

16 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem

Perfect  tracking  with  reference  feedforward    r(t)  =  sin(t)  is  the  input  to  the  reference  model    w(t)  =  cos(t)  is  assumed  known  

Page 17: Chapter 13 – Advanced Motion Control Systems

17 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem Approximate  Solu&on  for  Linear  Time-­‐Invariant  Systems  For  the  case:  

the  steady-­‐state  solu/ons  of  P,  h1  and  h2  can  be  used.    

xd ! constant, w ! constant, ! t " !0,T1".

u B

E

G1

G2

G3

y

w=constant

yd=constant

disturbance feedforward

reference feedforward

full state feedback

A

x C

u ! G1 x "G2 yd "G3w

G1 ! !R!1B!P"

G2 ! !R!1B!!A " BG1"!!C!QG3 ! R!1B!!A " BG1"!!P"E

# # #

can  be  relaxed  to    slowly  varying  

This  gives:  

Page 18: Chapter 13 – Advanced Motion Control Systems

18 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.3 General Solution of the LQ Trajectory-Tracking Problem

The function lqtracker.m is implemented in the MSS toolbox for computation of the matrices G₁,G₂ and G₃.

%Design matrices

Q ! diag([1]); % tracking error weights

R ! diag([1]); % input weights

% System matrices

A ! [0 1; -1 -2]; % state matrix

B ! [0; 1]; % input matrix

C ! [1 0]; % output matrix

% Optimal gain matrices

[G1,G2,G3] ! lqtracker(A,B,C,Q,R)

Matlab: The optimal trajectory tracking controller is computedusing ExLQtrack.m:

function [G1,G2,G3] ! lqtracker(A,B,C,Q,R)

[K,P,E] ! lqr(A,B,C’*Q*C,R);

G1 ! -inv(R)*B’*P;

Temp ! inv((A"B*G1)’);

G2 ! -inv(R)*B’*Temp*C’*Q;

G3 ! inv(R)*B’*Temp*P*E;

Page 19: Chapter 13 – Advanced Motion Control Systems

19 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.4 Case Study: Optimal Heading Auto- pilot for Ships and Underwater Vehicles The  ship  autopilot  problem  can  be  defined  as  a  linear-­‐quadra/c  (LQ)  op/miza/on  problem:  

J ! min! "T !0

T!e2 " #1r2 " #2!2"d$

α  is  a  constant  to  be  interpreted  later  

e  = ψd -­‐ ψ is  the  heading  error  

δ  is  the  actual  rudder  angle  

λ1    and  λ2  are  two  factors  weigh/ng  the  cost  of  heading  errors  e  and  heading  rate  r  against  the  control  effort  δ

We  will  discuss  three  steering  criteria  for  control  weigh/ng:    

•   Koyama  (1967)  •   Norrbin  (1971)  •   Van  Amerongen  and  Van  Nauta  Lemke  (1978)  

Page 20: Chapter 13 – Advanced Motion Control Systems

20 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

The  Steering  Criterion  of  Koyama  (1967)  The  first  criterion  was  derived  by  Koyama  who  observed  that  the  ship's  swaying  mo/on  

e=y-yd  could  be  approximated  by  a  sinusoid  during  autopilot  control,  that  is:  

y ! sin!et" # y" ! ecos!et"The  length  of  one  arch  La  of  the  sinusoid  is:  

La y

t La ! !

0

!!1 " y# 2" d" ! !

0

!#1 " e2 cos2!e""$ d" " ! 1 " e2

4

Hence,  the  rela/ve  elonga/on  due  to  a  sinusoidal  course  error  is:  

!LL " La!L

L " !!1#e2/4"!!! " e2

4

Koyama  proposed  minimizing  the  speed  loss  term e²/4 against  the  increased  resistance  due  to  steering  given  by  the  term  δ²:  

J ! min! 100 "180

2 1T !0

T e24 " #2!2 d$ " 0.0076

T !0

T!e2 " #2!2"d$

α

where  J  is  the  loss  of  speed  (%)   No/ce  that  λ1  =  0  in  this  analysis    

13.1.4 Case Study: Optimal Heading Auto- pilot for Ships and Underwater Vehicles

Page 21: Chapter 13 – Advanced Motion Control Systems

21 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

The  Steering  Criterion  of  Norrbin  (1971)  Consider  the  surge  equa/on  in  the  form:  

!m ! Xu! "u! " X|u|u|u|u # !1 ! t"T # Tloss

Tloss ! !m " Xvr"vr " Xcc!!c2 !2 " !Xrr " mxg"r2 " Xext

Norrbin  minimizes  the  loss  term  Tloss  to  obtain  maximum  forward  speed  u.  Consequently,  the  controller  should  minimize  the  centripetal  term  vr,  the  square  rudder  angle  δ²  and  the  square  heading  rate  r²  while  the  unknown  disturbance  term  Xext  is  neglected  in  the  analysis.  The  assump/ons  are:  

1.  The  sway  velocity  v  is  approximately  propor/onal  to  r.  Recall  the  Nomoto  model  gives:    

   Hence,  the  centripetal  term  vr  will  be  approximately  propor/onal  to  the  square  of  the  heading  rate,  that  is  vr ≈ (Kv/K)r².  

2.  The  ship's  yawing  mo/on  is  periodic  (sinusoid)  under  autopilot  control  such  that                                                              

 where  ωr  is  the  frequency  of  the  sinusoidal  yawing.  

v!s" ! Kv!1"Tvs"K!1"Ts" r!s" ! Kv

K r!s" (assuming that  Tv ≈ T)

rmax ! !r emax

13.1.4 Case Study: Optimal Heading Auto- pilot for Ships and Underwater Vehicles

Page 22: Chapter 13 – Advanced Motion Control Systems

22 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

 These  two  assump/ons  suggest  that  the  loss  term:  

can  be  minimized  by  minimizing  e²  and  δ²  which  is  the  same  result  obtained  in  Koyama's  analysis.    

The  only  difference  between  the  criteria  of  Norrbin  and  Koyama  is  that  the  λ2 -­‐values  arising  from  Norrbin's  approach  will  be  different  when  computed  for  the  same  ship.  The  performance  of  the  controller  also  depends  on  the  sea  state.    

This  suggests  that  a  trade-­‐off  between  the  λ2  -­‐values  proposed  by  Koyama  and  Norrbin  could  be  made  according  to:          

                                                       (calm  sea)      0.1  ≤    λ2    ≤  1    (rough  sea)  

Tloss ! !m " Xvr"vr " Xcc!!c2 !2 " !Xrr " mxg"r2 " Xext

Koyama  Norrbin  

13.1.4 Case Study: Optimal Heading Auto- pilot for Ships and Underwater Vehicles

Page 23: Chapter 13 – Advanced Motion Control Systems

23 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

The  Steering  Criterion  of  Van  Amerongen  and  Van  Nauta  Lemke  (1978)      Experiments  with  the  steering  criteria  of  Koyama  and  Norrbin  showed  that  the  

performance  could  be  further  improved  by  considering  the  squared  yaw  rate  r²,  in  addi/on  to  e²  and  δ²  .  Consequently,  the  following  criterion  was  proposed:  

J ! min! 0.0076T !

0

T!e2 " "1r2 " "2!2"d#

For  a  tanker  and  a  cargo  ship,  Van  Amerongen  and  Van  Nauta  Lemke    (1978,  1980)  gave  the  following  values  for  the  weigh/ng  factors  λ1  and λ2  corresponding  to  the  data  set  of  Norrbin  (1972):  

tanker: L ! 300 m !1 ! 15.000 !2 ! 8.0cargo ship: L ! 200 m !1 ! 1.600 !2 ! 6.0

13.1.4 Case Study: Optimal Heading Auto- pilot for Ships and Underwater Vehicles

Page 24: Chapter 13 – Advanced Motion Control Systems

24 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

is  the  op/mal  solu/on  solving  

for  the  prime-­‐scaled  Nomoto  model  

! ! Kp!"d ! "" ! Kdr

!! " # r "

T"r! $ !U/L"r # !U/L"2K" "

# #

It  can  be  shown  that    the  PD  controller  (gain-­‐scheduled  with  respect  to  speed  U)    

Kp ! 1!2

Kd ! LU

1 " 2KpK#T# " K# 2!U/L"2 !!1/!2" ! 1K#

#

#

J ! min! 0.0076T !

0

T!e2 " "1r2 " "2!2"d#

13.1.4 Case Study: Optimal Heading Auto- pilot for Ships and Underwater Vehicles

Page 25: Chapter 13 – Advanced Motion Control Systems

25 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships  This  sec/on  discusses  methods  for  autopilot  roll  stabiliza/on  using  fins  alone  or  in  

combina/on  with  rudders.  The  main  mo/va/on  is:    §  Prevent  cargo  damage  and  to  increase  the  effec/veness  of  the  crew  by  avoiding  or  

reducing  seasickness.  This  is  also  important  from  a  safety  point  of  view.    §  For  naval  ships,  cri/cal  marine  opera/ons  like  landing  a  helicopter,  forma/on  

control,  underway  replenishment,  or  effec/veness  of  the  crew  during  combat  are  cri/cal  opera/ons.          

Several  passive  and  ac/ve  (feedback  control)  systems  have  been  proposed  to  accomplish  roll  reduc/on;  Burger  and  Corbet  (1967),  Lewis  (1989),  and  Bhanacharyya  (1978).    

Perez  (2005).  Ship  Mo0on  Control:  Course  Keeping  and  Roll  Stabiliza0on  using  Rudder  and  Fins,  Springer.  

 

Page 26: Chapter 13 – Advanced Motion Control Systems

26 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Passive  Roll  Damping    Bilge  keels  are  fins  in  planes  approximately  perpendicular  to  the  hull  or  near  the  turn  of  the  bilge.  The  longitudinal  extent  varies  from  about  25-­‐50  %  of  the  length  of  the  ship.  Bilge  keels  are  widely  used  and  inexpensive,  but  increase  the  hull  resistance.  In  addi/on  to  this,  they  are  effec/ve  mainly  around  the  natural  roll  frequency  of  the  ship.  This  effect  significantly  decreases  with  the  speed  of  the  ship.  Bilge  keels  were  first  demonstrated  in  about  1870.    

Hull  Modifica&ons:  The  shape  and  size  of  the  ship  hull  can  be  op/mized  for  minimum  rolling  using  hydrosta/c  and  hydrodynamic  criteria.  This  must,  however,  be  done  before  the  ship  is  built. ���

Page 27: Chapter 13 – Advanced Motion Control Systems

27 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Passive  and  Ac/ve  Roll  Damping  using  An/-­‐Rolling  Tanks  

 An&-­‐Rolling  Tanks:  The  most  common  an/-­‐rolling  tanks  in  use  are  free-­‐surface  tanks,  U-­‐tube  tanks  and  diversified  tanks.  These  systems  provide  damping  of  the  roll  mo/on  even  at  small  speeds.  The  disadvantages  of  course  are  the  reduc/on  in  metacenter  height  due  to  free  water  surface  effects  and  that  a  large  amount  of  space  is  required.  The  earliest  versions  were  installed  about  the  year  1874.    

Page 28: Chapter 13 – Advanced Motion Control Systems

28 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Ac/ve  Roll  Damping  

 Fin  Stabilizers:    

§  Considerable  damping  if  the  speed  is  not  too  low  §  Drawback:  increased  drag  and  underwater  noise    §  Retractable  fins  (inside  the  hull  when  not  in  use)  §  High  costs  associated  with  the  installa/on  §  Fin  stabilizers  were  patented  by  Thornycroq  in  1889  

 Rudder-­‐Roll  Damping  (RRD)  

§  RRD  by  means  of  the  rudder  is  rela/vely  inexpensive  compared  to  fin  stabilizers,  has  approximately  the  same  effec/veness,  and  causes  no  drag  or  underwater  noise  if  the  system  is  turned  off  

§  Drawback:  RRD  requires  a  rela/vely  fast  rudder  to  be  effec/ve,  typically  rudder  rates  5-­‐20  deg/s  are  needed.  RRD  will  not  be  effec/ve  at  low  ship  speeds  

 For  a  history  of  ship  stabiliza/on,  see  Bennen  (1991).  A  detailed  evalua/on  of  different  ship  roll  

stabiliza/on  systems  can  be  found  in  Sellars  and  Mar/n  (1992)  

Page 29: Chapter 13 – Advanced Motion Control Systems

29 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Transfer  Func/ons  for  Steering  and  Rudder-­‐Roll  Damping  The  transfer  func/ons  for  the  decoupled  models  are  (see  Sec/on  3.9):  

plot  showing  decoupled  models  and  total  model  

!" !s" !

b2s2"b1s"b0s4"a3s3"a2s2"a1s"a0

! Kroll #roll2 !1"T5s"

!1"T4s"!s2"2$#rolls"#roll

2 "

!" !s" !

c3s3"c2s2"c1s"c0s!s4"a3s3"a2s2"a1s"a0"

! Kyaw !1"T3s"s!1"T1s"!1"T2s"

This  is  a  rough  approxima/on  since    all  interac/ons  are  neglected.      In  par/cular,  the  roll  mode  is  inaccurate  as  seen  from  the  plots.  

Matlab  MSS  toolbox:  ExRRD1.m            Lcontainer.m  

Container  ship:  Son  and  Nomoto  (1981)  

Page 30: Chapter 13 – Advanced Motion Control Systems

30 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships

!"!s" ! 0. 0032!s ! 0. 036"!s " 0. 077"

!s " 0. 026"!s " 0. 116"!s2"0. 136s " 0. 036"

" 0. 083!1 " 49. 1s"!1 " 31. 5s"!s2"0. 134s " 0. 033"

#

!"!s" ! 0. 0024!s " 0. 0436"!s2"0. 162s " 0. 035"

s!s " 0. 0261"!s " 0. 116"!s2"0. 136s " 0. 036"

! 0. 032!1 " 16. 9s"s!1 " 24. 0s"!1 " 9. 2s" #

Length:  L  =  175  (m)    Displacement:  21,222  (m³)  Service  speed  u0  =  7.0  (m/s)  

!roll ! 0.189 (rad/s)

! ! 0. 36

right-­‐half-­‐plane  zero:   z ! 0. 036 (rad/s)

non-­‐minimum  phase  property  

Matlab  MSS  toolbox:  ExRRD3.m  

Page 31: Chapter 13 – Advanced Motion Control Systems

31 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Brief  History  on  Rudder-­‐Roll  Damping  

 •  Rudder-­‐roll  damping  (RRD)  was  first  suggested  in  the  late  seven/es;  see  Cowler  and  

Lambert  (1972,  1975),  Carley  (1975),  Lloyd  (1975),  and  Bai/s  (1980).    

•  Research  in  the  early  eigh/es  showed  that  it  was  indeed  feasible  to  control  the  heading  of  a  ship  with  at  least  one  rudder  while  simultaneously  using  the  rudder  for  roll  damping.  If  only  one  rudder  is  used,  this  is  an  underactuated  control  problem.  In  the  linear  case,  this  can  be  solved  by  frequency  separa/on  of  the  steering  and  roll  modes  since  course  control  can  be  assumed  to  be  a  low-­‐frequency  tracking  control  problem  while  roll  damping  can  be  achieved  at  higher  frequencies.    

•  For  a  large  number  of  ships  it  is  impossible  to  obtain  a  significant  roll  damping  effect  due  to  limita/ons  of  the  rudder  servo  and  the  rela/vely  large  iner/a  of  the  ship.      

•  Mo/vated  by  the  results  in  the  1970s,  RRD  was  tested  by  the  U.S.  Navy  by  Bai/s  et  al.  (1983,  1989),    in  Sweden  by  Kallstrom  and  co-­‐authors,  and  in  the  Netherlands  by  Amerongen  and  co-­‐authors.    

 LQG  control:  Van  der  Klugt  (1987),  Katebi  (1987)  Adap&ve  RRD:  Zhou  (1990)  

Page 32: Chapter 13 – Advanced Motion Control Systems

32 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships •  Blanke  et  al.  (1989)  has  developed  an  RRD  autopilot  that  has  been  implemented  by  the  

Danish  Navy  on  14  ships  (Munk  and  Blanke  1987)    

•  Sea  trials  show  that  some  of  the  ships  had  less  efficient  RRD  systems  than  others.  In  Blanke  and  Christensen  (1993)  it  was  shown  that  the  cross-­‐couplings  between  steering  and  roll  were  highly  sensi/ve  to  parametric  varia/ons  which  again  resulted  in  robustness  problems.  Reason:  different  loading  condi/ons  and  varying  rudder  shapes.    

•  In  Stoustrup  et  al.  (1995)  it  has  been  shown  that  a  robust  RRD  controller  can  be  designed  by  separa/ng  the  roll  and  steering  specifica/ons  and  then  op/mizing  the  two  controllers  independently.  The  coupling  effects  between  the  roll  and  yaw  modes  have  also  been  measured  in  model  scale  and  compared  with  full-­‐scale  trial  results  (Blanke  and  Jensen  1997),  while  a  new  approach  to  iden/fica/on  of  steering-­‐roll  models  have  been  presented  by  Tiano  and  Blanke  (1997).          

•  More  recently,  H∞  control  has  been  used  to  deal  with  model  uncertain/es.  This  allows  the  designer  to  specify  frequency-­‐dependent  weights  for  frequency  separa/on  between  the  steering  and  roll  modes  (Yang  and  Blanke  1997,  1998).    

•  Qualita/ve  feedback  theory  (QFT)  has  also  been  applied  to  solve  the  combined  RRD  heading  control  problem  under  model  uncertainty  (Hearns  and  Blanke  1998).    

Page 33: Chapter 13 – Advanced Motion Control Systems

33 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Consider  the  linear  model:  

x! " Ax # Bu

! ! crollT x, " ! cyawT x

x ! !v,p, r,!,""!

The  control  objec/ve  is  simultaneously:  

 -­‐  Heading  control  (ψ  =  ψd  =  constant)  

 -­‐  RRD  (ϕ  =  ϕd  =  0)    

There  will  be  a  trade-­‐off  between  accurate  heading  control  (minimizing                                                  )  and  control  ac/on  needed  to  increase:  

   -­‐  Natural  frequency  ωroll    

   -­‐  Rela/ve  damping  ra/o  ζroll    

 No/ce  that  it  is  impossible  to  regulate  φ  to  a  nonzero  value  while  simultaneously  controlling  the  heading  angle  ψ    to  a  nonzero  value  by  means  of  one  single  rudder.    

!! " ! ! !d

Page 34: Chapter 13 – Advanced Motion Control Systems

34 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Op/miza/on  problem  for  course  keeping,  roll  damping  and  minimum  fuel  consump/on:  

J ! minu 12 !0

T!y! !Qy! " u!Ru" d!

y ! !p,r,!,"!!, yd ! "0, 0,0,"d!!

C !

0 1 0 0 0

0 0 1 0 0

0 0 0 1 0

0 0 0 0 1

y ! Cx

x ! !v,p, r,!,""!

u ! G1x "G2yd

G1 ! !R!1B!P"

G2 ! !R!1B!!A " BG1"!!C!Q # #

P!A ! A!P! " P!BR"1B!P! ! C!QC " 0

LQ  Solu/on:

Page 35: Chapter 13 – Advanced Motion Control Systems

35 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Frequency  Separa&on  and  Bandwidth  Limita&ons  

If  one  rudder  is  used  to  control  both  φ  and  ψ,  frequency  separa/on  is  necessary.    

Assume  that  the  steering  dynamics  is  slower  than  the  frequency  1/Tl,  and  that  the  natural  frequency  in  roll  is  higher  than  1/Th.    

Then  the  VRU  and  compass  measurements  can  be  low-­‐pass  and  high-­‐pass  filtered:  

!!vru

!s" ! hh!s" ! Ths1 " Ths

""compass

!s" ! hl!s" ! 11 " Tls

#

#

!yaw ! !b ! 1/Tl ! 1/Th ! !roll

!roll!yaw

frequency  separa/on  

Frequency  separa/on  criterion:  

cross-­‐over  frequency  

bandwidth  in  yaw  

natural  frequency  in  roll  

f

y

Page 36: Chapter 13 – Advanced Motion Control Systems

36 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships

Matlab  MSS  toolbox:  ExRRD2.m  

RRD  on   RRD  off  RRD  off  

Page 37: Chapter 13 – Advanced Motion Control Systems

37 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships The  percentage  roll  reduc/on  of  RRD  system  can  be  computed  by  using  the  following  criterion  of  Oda  et  el.  (1992):  

Roll reduction !!AP!!RRD

!AP" 100!%"

σAP =  standard  devia/on  of  roll  rate  during  course  keeping  (RRD  off)  σRRD  =  standard  devia/on  of  roll  rate  during  course  keeping  (RRD  on)  

For  the  case  study  with  Lcontainer.m,  we  obtained:  

σAP = 0.0105  

σRRD = 0.0068.

This  resulted  in  a  roll  reduc/on  of  approximately  35  %  during  course  keeping.  

For  small  high-­‐speed  vessels,  a  roll  reduc/on  as  high  as  50-­‐75  %  can  be  obtained.    

Page 38: Chapter 13 – Advanced Motion Control Systems

38 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Brief  History  on  Combined  Fin  and  Rudder-­‐Roll  Damping  

 •   The  most  effec/ve  roll  damping  systems  are  those  which  combine  stabilizing  fins  

and  rudders;  see  Kallstrom  (1981),  and  Roberts  and  Braham  (1990).    •  Warship  stabiliza/on  using  integrated  rudder  and  fins  are  discussed  by  Roberts  

(1992).  More  recently,  robust  fin  stabilizer  controller  design  using  the  QFT  and  H∞  design  techniques  have  been  presented  by  Hearns  et  al.    (2000),  while  the  performance  of  classical  PID,  op/mized  PID  (Hickey  et  al.  2000),  and  H∞  controllers  are  compared  in  Katebi  et  al.  (2000).    

 •  Fin  stabilizers  are  anrac/ve  for  roll  reduc/on  since  they  are  highly  effec/ve,  works  

on  a  large  number  of  ships,  and  are  much  more  easier  to  control,  even  for  varying  load  condi/ons  and  actuator  configura/ons.  Fins  stabilizers  are  effec/ve  at  high  speed,  but  at  the  price  of  addi/onal  drag  and  added  noise.  The  most  economical  systems  are  retractable  fins,  where  addi/onal  drag  is  avoided  during  normal  opera/on,  since  fin  stabilizers  are  not  needed  in  moderate  weather.    

•  Fin  stabilizing  systems  can  be  used  to  control  to  a  nonzero  value  (heel  control).    This  is  impossible  with  a  RRD  control  system.  

Page 39: Chapter 13 – Advanced Motion Control Systems

39 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships

M!" # D!$% !" Tf where f ! Ku

In  Representa/on  1,  the  generalized  force  vector  t  is  used  as  control  input,  while  the  last  representa/on  use  u  (propeller  rpm,  rudder  angles,  fin  angles,  etc.)    

In  prac/ce,  it  is  advantageous  to  use  Representa/on  1  instead  of  Representa/on  2,  since  actuator  failures  can  be  handled  independently  by  the  control  alloca/on  algorithm  without  redesigning  the  control  law.  No/ce  that  the  B  matrix  depends  on  T  and  K,  while  these  matrices  are  not  used  in  Representa/on  1.  

Model  representa/on  1:  

Model  representa/on  2:  

Op&mal  Fin  and  Rudder-­‐Roll  Damping  Systems  No/ce  that  a  stand-­‐alone  fin  stabiliza/on  system  can  be  constructed  by  simply  removing  the  rudder  inputs  from  the  input  matrix.  When  designing  an  LQ  op/mal  fin/RRD  system  the  following  model  representa/ons  can  be  used:  

!" ! !M!1DA! " !M

!1B!TKu

#

! A! " B#

#

#

Page 40: Chapter 13 – Advanced Motion Control Systems

40 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Energy-­‐Op&mal  Criterion  for  Combined  Fin  and  RRD  Stabiliza&on  It  is  possible  to  relate  the  LQ  controllers  for  Model  Representa/ons  1  and  2.    

R! ! !Tw! "!RfTw!

Ru ! K!RfK

e ! y ! yd

The  rudder  and  fin  forces  are  weighted  against  each  other  by  specifying  the  elements  in  Rf  (1st  criterion).  The  op/mal  controller  t  can  be  solved  using  the  3rd  criterion  and  u  is  computed  using  the  standard  control  alloca/on  method.  

J ! minf

12 !0

T!e!Qe " f!Rf f" d!

! minu

12 !0

T!e!Qe " u!K!RfK

Ruu" d!

! min!

12 !0

T!e!Qe " !!!Tw" "!RuTw

R!

!" d! #

u ! K!1Tw! ! # ! ! Tf! TKu #

Page 41: Chapter 13 – Advanced Motion Control Systems

41 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships The  solu/on  to  the  LQ  problem  is:  

! ! G1x "G2yd

G1 ! !!!Tw! "!RfTw

! "!1B!P"

G2 ! !#!Tw! "!RfTw

! $!1B"#A " BG1$!"C!Q

#

#

P!A !A!P! " P!B!"Tw! #!RfTw! $"1B!P! !C!QC " 0

Control  alloca/on:  

u ! K!1T" !#" u B

E

G1

G2

G3

y

w=constant

yd=constant

disturbance feedforward

reference feedforward

full state feedback

A

x C

Page 42: Chapter 13 – Advanced Motion Control Systems

42 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships Operability  and  Mo&on  Sickness  Incidence  Criteria  

§  Operability  criteria  for  manual  and  intellectual  work  as  well  as  mo/on  sickness  are  important  design  criteria  for  evalua/on  of  autopilot  and  roll  damping  systems.    

§  Sea  sickness  is  especially  important  in  high-­‐speed  craq  and  ships  with  high  ver/cal  accelera/ons.  

Standard Deviation (Root Mean Square) CriteriaVertical Lateralacceleration (w! ! acceleration (v! ! Roll angle (!! Description of work

0.20 g 0.10 g 6.0 deg Light manual work0.15 g 0.07 g 4.0 deg Heavy manual work0.10 g 0.05 g 3.0 deg Intellectual work0.05 g 0.04 g 2.5 deg Transit passengers0.02 g 0.03 g 2.0 deg Cruise liner

This  table  gives  an  indica/on  on  what  type  of  work  that  can  be  expected  to  be  carried  out  for  different  roll  angles/sea  states.  

Page 43: Chapter 13 – Advanced Motion Control Systems

43 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships The  ISO  2631-­‐3:1985  Criterion  for  MSI    The  Interna/onal  Standardiza/on  Organiza/on  (ISO)  mo/on  seasickness  incidence  criterion  

is  reported  in  ISO  2631-­‐3  (9185);  see  hnp://www.iso.ch.    The  most  important  factors  for  seasickness  are:  

 §  ver/cal  (heave)  accelera/ons  az  (m/s²)  §  exposure  /me  t  (hours)  §  encounter  frequency  ωe  (rad/s)      

The  ISO  standard  proposes  an  MSI  of  10  %  which  means  that  10  %  of  the  passengers  become  seasick  during  t  hours.    

 The  MSI  curves  are  given  by:  

az!t,!e" !0. 5 2/t for 0. 1 Hz " !e

2" ! 0. 315 Hz

0. 5 2/t # 6. 8837 !e2"

1.67 for 0. 315 Hz ! !e2" ! 0. 63 Hz

Page 44: Chapter 13 – Advanced Motion Control Systems

44 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships

Matlab  MSS  toolbox:  ExMSI.m      [a_z,w_e]  =  ISOmsi(t)  

MSI-­‐curves  of  10  %:    This  means  that  10  %  of  the  passengers  get  seasick.  

Page 45: Chapter 13 – Advanced Motion Control Systems

45 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships The  O'Hanlon  and  McCauley  (1974)  Criterion  for  MSI  This  method  (the  probability  integral  method)  is  frequently  used  since  it  produces  a  MSI  criterion  in  percent  for  combina/ons  of  heave  accelera/on  az  (m/s²)  and  frequency  of  encounter  ωe  (rad/s).    

The  criterion  is  given  by:  

MSI ! 100 0.5 " erf "log10!az/g"!!MSI0.4 (%)

!MSI ! !0.819 " 2. 32!log10"e"2

erf!x" ! erf!!x" ! 12!"0

x exp ! z22 dz

The  major  drawback  of  the  O'Hanlon  and  McCauley  method  is  that  it  only  applies  to  a  two-­‐hour  exposure  /me.    

Another  effect  to  take  into  account  is  that  the  O'Hanlon  and  McCauley  MSI  criterion  is  derived  from  tests  with  young  men  seated  separately  in  insulated  cabins.    

Page 46: Chapter 13 – Advanced Motion Control Systems

46 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.5 Case Study: Optimal Fin and Rudder-Roll Damping Systems for Ships

The  MSI  index  is  defined  as  the  number  of  sea  sick  people  in  percentage  for  an  exposure  /me  of  two  hours.  

Matlab  MSS  toolbox:      ExMSI.m  msi  =  HMmsi(a_z,w_e)  

Page 47: Chapter 13 – Advanced Motion Control Systems

47 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.6 Case Study: Optimal Dynamic Positioning System for Ships and Floating Structures

!" p ! #

M#" " D# ! bp " $ " $wind " $waves

#

# ! ! R!!"!p #

In order to incorporate the limitations of the propellers, the model is augmented by actuator dynamics:

!! " Athr!! ! !com" # Athr ! !diag!1/Tsurge,1/Tsway,1/Tyaw"

!xc " Axc # B!com # A !

0 I 00 !M!1D M!1

0 0 Athr

, B !

00

!Athr

#

An  alterna/ve  to  the  nonlinear  PID  controller  is  to  formulate  the  problem  as  a  linear  op/mal  control  problem  using  vessel  parallel  coordinates.  The  LQ  controller  will  be  designed  under  the  assump/on  that  all  states  can  be  measured.  This  assump/on  can,  however,  be  relaxed  by  combining  the  LQ  controller  with  a  linear  Kalman  filter  for  op/mal  state  es/ma/on  (LQG  control).    

Augmented controller model:

xc ! !!p!,"!,#!"!

Page 48: Chapter 13 – Advanced Motion Control Systems

48 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.6 Case Study: Optimal Dynamic Positioning System for Ships and Floating Structures Op/mal  control  law  with  wind  feedforward  and  integral  ac/on        τLQ  is  the  op/mal  feedback  and  τwind  is  an  es/mate  of  the  wind  forces.    The  LQ  control  objec/ve  is  to  obtain  x  =  0  such  that  ηp  =  ν  =  τ  =  0.    Hence,  we  can  compute  τLQ    by  minimizing  the  performance  index:          where  R  =  RT>  0  and  Q  =  QT  ≥  0  are  two  cost  matrices  to  be  specified  by  the  user.  The  Q-­‐matrix  is  defined  as  Q  =  diag{Q₁,Q₂,Q₃}  where  the  weights  Q₁,Q₂  and  Q₃  put  penalty  on    posi/on/heading  ηp,  velocity  ν  and  actuator  dynamics  τ,  respec/vely.  

!com ! !LQ ! !"wind #

J ! min!LQ

12 !0

T!x!Qx " !LQ

! R!LQ" d! #

!LQ ! !R!1B!P"Gx #

P!A ! A!P! " P!BR"1BTP! ! Q " 0 #

Page 49: Chapter 13 – Advanced Motion Control Systems

49 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.6 Case Study: Optimal Dynamic Positioning System for Ships and Floating Structures Integral  Ac/on          In  order  to  obtain  zero  steady-­‐state  errors  in  surge,  sway  and  yaw,  we  must  include  integral  ac/on  in  the  control  law.  Integral  ac/on  can  be  included  by  using  state  augmenta/on.      Since  we  want  the  three  outputs  (N,E,ψ)  to  be  regulated  to  zero,  we  can  augment  no  more  than  3  integral  states  to  the  system:  

z :! !0

ty!!"d! # "z ! y #

y ! Cx # C ! I3!3 03!3 03!3 #

x! a ! Aaxa " Ba"com #

Aa !03!3 C09!3 A

, Ba !03!3

B #

xa ! !z!,x!"!

Page 50: Chapter 13 – Advanced Motion Control Systems

50 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.6 Case Study: Optimal Dynamic Positioning System for Ships and Floating Structures The  performance  index  for  the  integral  controller  becomes:          where  R  =  RT  >  0.  The  matrix  QI =  QI  >  0  is  used  to  specify  the  integral  /mes  in  surge,  sway  and  yaw.      The  op/mal  PID-­‐controller  is:  

J ! min!LQ

12 !0

T!xa!Qaxa " !LQ

! R!LQ" d! # Qa !QI 00 Q

! 0 #

!LQ ! Gaxa ! Gx " GI!0

ty!!"d!

z

# Ga ! !R!1Ba!P" #

P!Aa ! Aa!P! " P!BaR"1Ba!P! ! Qa " 0 #

Controllability  of  the  augmented  system  (Aa,  Ba)  is  checked  in  Matlab  by  using  the  command:     > n_ctr = rank(ctrb(Aa,Ba)) = 12 Hence,  a  marine  craq  with  addi/onal  states  for  integral  ac/on  is  controllable.  

Page 51: Chapter 13 – Advanced Motion Control Systems

51 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.1.6 Case Study: Optimal Dynamic Positioning System for Ships and Floating Structures LQG  Control  -­‐  Linear  Separa&on  Principle  In  prac/ce  only  some  of  the  states  are  measured.  A  minimum  requirement  is  that  the  posi/on  and  heading  of  the  ship  is  measured  such  that  veloci/es  and  bias  terms  can  be  es/mated  by  an  observer.  This  is  done  under  the  assump/on  that  the  states  x  can  be  replaced  with  the  es/mated  states:  

!LQ ! Gx" " GIC !0

tx"!!"d! #

where  the  state  es/mate  can  be  computed  using  a:      

•   Kalman  filter  (Sec&on  11.3.6)    •   Nonlinear  passive  observer  (Sec&on  11.4.1)          

 For  the  Kalman  filter  in  cascade  with  the  LQ  controller  there  exists  a  linear  separa/on  principle  guaranteeing  that  the  es/ma/on  and  regula/on  errors  go  to  zero.      This  is  referred  to  as  LQG  control  and  it  was  first  applied  to  design  DP  systems  by  Balchen  et  al.  (1976,  1980a,  1980b),  and  Grimble  et  al.  (1980a,  1980b).  

Page 52: Chapter 13 – Advanced Motion Control Systems

52 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Chapter 13 – Advanced Motion Control Systems

13.1    Linear-­‐Quadra/c  Op/mal  Control  13.2    State  Feedback  Lineariza/on  13.3    Integrator  Backstepping  13.4    Sliding-­‐Mode  Control  

Page 53: Chapter 13 – Advanced Motion Control Systems

53 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.2 State Feedback Linearization The  basic  idea  with  feedback  lineariza/on  is  to  transform  the  nonlinear  system  dynamics  

into  a  linear  system  (Freund  1973)  and  use  linear  pole  placement.    

Conven/onal  control  techniques  like  pole  placement  and  linear-­‐quadra/c  op/mal  control  theory  can  then  be  applied  to  the  linear  system.  In  robo/cs,  this  technique  is  commonly  referred  to  as    computed  torque  control.  

Transforma/ons  that  can  be  used  both  for  BODY  and  NED  applica/ons  will  be  presented:  

ü  Decoupling  in  the  BODY  frame:  velocity  control  ü  Decoupling  in  the  NED  frame:  posi/on  and  a�tude  control  

Page 54: Chapter 13 – Advanced Motion Control Systems

54 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.2.1 Decoupling in the BODY Frame (Velocity Control) The  control  objec/ve  is  to  transform  the  marine  craq  dynamics    

into  a  linear  system  expressed  in  {b}:  

Solu&on:  choose  the  control  law  as:  

where  the  commanded  accelera/on  vector  ab  can  be  chosen  by  e.g.  pole  placement  or  linear-­‐quadra/c  op/mal  control  theory.    

!! " ab

M !! " n!!,"" # # n!!,"" ! C!!"! " D!!"! " g!""

! ! Mab " n!",#"

Page 55: Chapter 13 – Advanced Motion Control Systems

55 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.2.1 Decoupling in the BODY Frame (Velocity Control) Pole  Placement  

ab ! "!d ! Kp #! ! K i "0t#!!!"d!

Kp ! 2!, K i ! !2 ! "diag!!1, !2,! , !n"

M! !! ! ab" " M! !#! $ 2"#! $ "2 "0

t#!!!"d!" " 0

M !! " n!!,"" # #

Error  dynamics:  

! ! Mab " n!",#"

pole  loca/ons    

!s ! !i"2 !0t"!!""d" # 0, !i # 1,$ ,n"

Page 56: Chapter 13 – Advanced Motion Control Systems

56 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

The  control  objec/ve  is  to  transform  the  marine  craq  dynamics:  

into  a  linear  system  expressed  in  {n}:  

Solu&on:  choose  the  control  law  as:  

13.2.2 Decoupling in the NED Frame (Position and Attitude Control)

n!!,"" ! C!!"! " D!!"! " g!""

! ! Mab " n!",#"

!! " an

M !! " n!!, "" # #

!" # J!"" !

# #

!! " J!1!""##" ! !J!""!$Error  dynamics:  

an ! "J!!"" # J!!"abChoosing:  

ab ! J!1!!"#an ! "J!!""$

J!!!!"MJ!1!!"! !! ! an" " 0gives  

!

M! !! ! ab" " MJ!1!""##" ! !J!""! ! J!""ab$ " 0 #

Page 57: Chapter 13 – Advanced Motion Control Systems

57 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.2.2 Decoupling in the NED Frame (Position and Attitude Control)

Error  dynamics  (pole  placement):  ! ! Mab " n!",#"

ab ! J!1!!"#an ! "J!!""$

an ! "!d ! Kd #$! ! Kp $! ! K i "0t!" !!"d!

!"! # Kd $"! # Kp "! # K i !0t!"!!"d! % 0

Kd ! 3! ! 3diag!!1,!2," ,!n"Kp ! 3!2 ! 3diag!!12, !22," ,!n2"K i ! !3 ! diag!!13, !23," ,!n3"

Page 58: Chapter 13 – Advanced Motion Control Systems

58 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Consider  a  simplified  model  of  a  ship  in  surge:  

The  commanded  accelera/on  is  calculated  as:    

This  suggests  that  the  speed  controller  should  be  computed  as:  

with  reference  model:  

where  rb  is  the  commanded  input  (desired  surge  speed).  

! ! m!u" d ! Kp"u ! ud# ! Ki "0t"u ! ud#d!$ # d1u # d2|u|u

13.2.3 Case Study: Feedback Linearizing Speed Controller for Ships and Underwater Vehicles

mu! " d1u " d2|u|u # !

üd ! 2!"u" d ! "2ud # "2rb

mab compensa/on  of  nonlinear    elements  

PI  controller  with    reference  feedforward  

ab ! u" d ! Kp!u ! ud" ! Ki "0t!u ! ud"d!

Page 59: Chapter 13 – Advanced Motion Control Systems

59 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.2.4 Case Study: Feedback Linearizing Ship and Underwater Autopilot

compassand gyro

yaw angleand rate

pilotinput

controlsystem

controlallocation

referencemodel

observer andwave filter

wind feedforward

windloads

!d!3" ! !2" ! 1"#!" d ! !2" ! 1"#2$# d ! #3$d $ #3rn #

Reference  model    

Page 60: Chapter 13 – Advanced Motion Control Systems

60 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

9.4.4 Case Study: Feedback Linearizing Ship and Underwater Autopilot Consider  the  nonlinear  autopilot  model  of  Norrbin  (1963):    

The  commanded  accelera/on  can  be  calculated  as  (Fossen  and  Paulsen  1992):        where rd  is  the  desired  angular  velocity  and  ψd is  the  desired  heading  angle.  This  implies  that  aⁿ =  ab.  Choosing  the  decoupling  control  law  as:  

The  resul/ng  error  dynamics  become:  

!! " rmr! # d1r # d2|r|r " "

# #

! ! m r" d ! Kd!r ! rd" ! Kp!" ! "d" ! Ki "0

t!" ! "d"d! # d1r # d2|r|r #

!!" # r!r!" $ Kdr! $ Kp!! # 0

# #

an ! r" d ! Kd!r ! rd" ! Kp!! ! !d" ! Ki "0

t!! ! !d"d" #

Page 61: Chapter 13 – Advanced Motion Control Systems

61 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Chapter 13 – Advanced Motion Control Systems

13.1    Linear-­‐Quadra/c  Op/mal  Control  13.2    State  Feedback  Lineariza/on  13.3    Integrator  Backstepping  13.4    Sliding-­‐Mode  Control  

Page 62: Chapter 13 – Advanced Motion Control Systems

62 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.1 A Brief History of Backstepping

Integrator  backstepping  appeared  as  a  recursive  design  technique  in  Saberi  et  al.  (1990)  and  it  was  further  developed  by  Kanellakopoulos  et  al.  (1992).      The  rela/onship  between  backstepping  and  passivity  has  been  established  by  Lozano  et  al.  (1992).    A  tutorial  overview  of  backstepping  is  given  by  Kokotovic  (1991).    

Adap/ve  and  nonlinear  backstepping  designs  are  described  in  detail  by  Krs&c  et  al.  (1995).  This  includes  methods  for  parameter  adapta/on,  tuning  func/ons,  and  modular  designs  for  both  full  state  feedback  and  output  feedback  (observer  backstepping).   The  concept  of  vectorial  backstepping  was  first  introduced  by  Fossen  and  Berge  (1997).  Vectorial  backstepping  exploits  the  structural  proper/es  of  nonlinear  MIMO  systems.      Techniques  for  integral  ac/on  in  nonlinear  systems  using  backstepping  designs  were  first  addressed  by  Loria,  Fossen  and  Teel  (1999).    

The  idea  of  integrator  backstepping  seems  to  have  appeared  simultaneously,  oqen  implicit,  in  the  works  of  Koditschek  (1987),    Sonntag  and  Sussmann  (1988),  Tsinias  (1988)  and    Byrnes  and  Isidori  (1989).    

Page 63: Chapter 13 – Advanced Motion Control Systems

63 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping

Backstepping  is  a  design  methodology  for  construc/on  of  a  feedback  control  law  through  a  recursive  construc/on  of  a  control  Lyapunov  func/on  (CLF).    

 A  smooth  posi/ve  definite  and  radially  unbounded  func/on  V:ℝⁿ→ℝ₊  is  called  a  Control  

Lyapunov  Func/on  (CLF)  for:  

if  

Nonlinear  backstepping  designs  are  strongly  related  to  feedback  lineariza/on.  Feedback  lineariza/on  methods  cancel  all  nonlineari/es  in  the  system  while  backstepping  

gives  more  design  flexibility.    

In  par/cular,  the  designer  is  given  the  possibility  to  exploit  “good”  nonlineari/es  while  “bad”  nonlineari/es  can  be  dominated  e.g.  by  adding  nonlinear  damping.  Hence,  addi/onal  robustness  is  obtained,  which  is  important  in  industrial  control  systems  since  cancella/on  of  all  nonlineari/es  require  precise  models  that  are  difficult  to  obtain  in  prac/ce.  

x! ! f!x,u"

infu!!r !V!x !x"f!x,u" ! 0, "x # 0

Page 64: Chapter 13 – Advanced Motion Control Systems

64 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Considering  the  nonlinear  system:  

x! 1 " f!x1" # x2

x! 2 " uy " x1

# # #

Let  the  design  objec/ve  be  regula/on  of  y(t) → 0 as  t → ∞.  

The  recursive  design  starts  with  the  system  x1  and  con/nues  with  x2.    Two  steps  are  needed,  one  for  each  integrator.  

z ! "!x" x ! "!1!z"

A  change  of  coordinates  will  be  introduced:  

Global  diffeomorphism  -­‐    that  is,  a  mapping  with  smooth  func/ons  

x !!x1, x2"!

z !!z1, z2"!!

Page 65: Chapter 13 – Advanced Motion Control Systems

65 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Step  1          For  the  first  system,  the  state  x2  is  chosen  as  a  virtual  control  input    The  first  backstepping  variable  is  chosen  as  (wants  to  regulate  y  to  zero):  

z1 ! y ! x1

The  virtual  control  is  defined  as:  

x2 :! !1 " z2

x! 1 " f!x1" # x2

x! 2 " uy " x1

# # #

second  backstepping  variable  

stabilizing  func/on  to  be  specified  later  

Hence,  the  z1-­‐system  can  be  wrinen:  

ż1 ! f!z1" " !1 " z2

The  new  state  variable  z2  will  not  be  used  in  the  first  step,  but  its  presence  is  important  since  z2  is  needed  to  couple  the  z1-­‐system  to  the  next  system,  that  is  the  z2-­‐system  to  be  considered  in  the  next  step.  

Page 66: Chapter 13 – Advanced Motion Control Systems

66 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping

A  CLF  for  this  system  is:  

ż1 ! f!z1" " !1 " z2

V1 ! 12 z1

2

V" 1 ! z1ż1

! z1!f!z1" # !1" # z1z2

#

#

Choose  the  stabilizing  func/on  such  that  it  stabilizes  the  z1-­‐system:  

!1 ! !f!z1" ! k1z1gives  

ż1 ! !k1z1 " z2

V! 1 " !k1z12 # z1z2

 leave  this  term  to  Step  2  (stabilizing  of  the  z2-­‐dynamics)  

If  z2  =  0,  then  the  z1-­‐system  is  stable:  

these  terms  cancel  

Page 67: Chapter 13 – Advanced Motion Control Systems

67 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Step  2  Time  differen/a/on  of                                                        gives:  z2 ! x2 ! !1

ż2 ! x" 2 ! !" 1

! u ! !" 1 #

x! 1 " f!x1" # x2

x! 2 " uy " x1

# # #

A  CLF  for  the  z2-­‐system  is:  

V2 ! V1 " 12 z2

2

V# 2 ! V# 1 " ż2z2

! !!k1z12 " z1z2" " ż2z2

! !k1z12 " z2!z1 " ż2"

! !k1z12 " z2!u ! !# 1 " z1"

#

#

Since  the  system  has  rela/ve  degree  2,  the  control  input  u  appears  in  the  second  step.    Hence,  choosing  the  control  law  as:  

u ! !" 1 ! z1 ! k2z2 V! 2 " !k1z12 ! k2z22 # 0, "z1 # 0, z2 # 0!

Page 68: Chapter 13 – Advanced Motion Control Systems

68 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Implementa&on  Aspects  When  implemen/ng  the  control  law  it  is  important  to  avoid  expressions  involving  the  /me  

deriva/ves  of  the  states.  For  this  simple  system  only                must  be  evaluated.    

This  can  be  done  by  /me  differen/a/on  of  α1(x1)    along  the  trajectory  of  x1:  

!! 1

!! 1 " ! "f!x1""x1

x! 1 ! k1x! 1

" ! "f!x1""x1

# k1 !f!x1" # x2" #

!1 ! !f!z1" ! k1z1

z1 ! y ! x1

Page 69: Chapter 13 – Advanced Motion Control Systems

69 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Backstepping  Coordinate  Transforma&on  

z1z2

!x1x2 ! f!x1" ! k1x1

x1x2

!z1z2 ! f!z1" ! k1z1

z ! "!x"

x ! "!1!z!

Page 70: Chapter 13 – Advanced Motion Control Systems

70 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

9.5.2 The Main Idea of Integrator Backstepping

Theorem  A.3  (Global  Exponen&al  Stability)  Let  xe  be  the  equilibrium  point  and  assume  that  f(x)  is  locally  Lipschitz  in  x.    Let  V: ℝⁿ→ℝ₊ be  a  con/nuously  differen/able  and  radially  unbounded  func/on  sa/sfying          constant  matrices  P  =  PT  >  0  and  Q  =  QT  >  0,  then  the  equilibrium  point  xe  is  GES  and  the  state  vector  sa/sfies:          is  a  bound  on  the  convergence  rate.          Proof:  see  Appendix  A.1.4.  

V!x" ! x!Px "0, !x " 0V# !x" # $x!Qx $0, !x " 0

# #

!x!t"!2 !!max!P"!min!P"

exp!""t"!x!0"!2 #

! !"min!Q"2"max!P"

" 0 #

Page 71: Chapter 13 – Advanced Motion Control Systems

71 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

The  equilibrium  point                                                                                          is  globally  exponen/ally  stable  (GES).  

13.3.2 The Main Idea of Integrator Backstepping The  Final  Check  

ż1ż2

! !k1 00 k2

z1z2

"0 1!1 0

z1z2

ż ! !Kz " Sz

V2 ! 12 z

!z

V" 2 ! z!!!Kz # Sz"! !z!Kz

#

#

skew-­‐symmetric  matrix  

diagonal  matrix  

z ! !z1, z2"! ! !0,0"!

Page 72: Chapter 13 – Advanced Motion Control Systems

72 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping

The  resul/ng  backstepping  control  law  can  be  wrinen:  

If  f(x1)  =  -­‐x1  (linear  system),  it  is  seen  that:  

u ! ! "f!x1""x1

" k1 !f!x1" " x2" ! x1 ! k2!x2 " f!x1" " k1x1"

u ! !!!1 " k1"!!x1 " x2" ! x1 ! k2!x2 ! x1 " k1x1"

! !!2 " k1k2 ! k1 ! k2"Kpx1 ! !k1 " k2 ! 1"

Kdx2 #

This  confirms  that  backstepping  applied  to  a  2nd-­‐order  linear  system    gives  PD  control  

Rela&onship  between  Backstepping  and  Conven&onal  PD  Control  

Page 73: Chapter 13 – Advanced Motion Control Systems

73 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping

The  backstepping  control  law  is  in  fact  equal  to  a  feedback  linearizing  controller  since  the  nonlinear  func/on  f(x1)  is  perfectly  compensated  for  by  choosing  the  stabilizing  func/on  as:  

One  of  the  nice  features  of  backstepping  is  that  the  stabilizing  func/ons  can  be  modified  to  exploit  so-­‐called  "good"  nonlineari/es.  For  instance,  assume  that:  

Backstepping  versus  Feedback  Lineariza&on  

!1 ! !f!x1" ! k1z1

f!x1" ! !a0x1 ! a1x12 ! a2|x1 |x1

where  a0,  a1  and  a2  are  assumed  to  be  unknown  posi/ve  constants.    

Good  damping  should  be  exploited  in  the  control  design  and  not  cancelled  out.    

The  destabilizing  term  a1x²1  must  be  perfectly  compensated  for  or  dominated  by  adding  a  nonlinear  damping  term  propor/onal  to  x1³  .  

good  damping  

Page 74: Chapter 13 – Advanced Motion Control Systems

74 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Nonlinear  damping  suggests  the  following  candidate  for  the  stabilizing  func/on:  

k1 ! 0 and !1 ! 0

ż1 ! f!z1" " !!1 " z2"

! !a0z1 ! a1z12 ! a2|z1 |z1 ! !k1 " "1z1

2"z1 " z2

! !!a0 " a2|z1 | " k1"z1 ! a1z12 ! "1z1

3 " z2 #

!1 ! !k1z1 ! "1z13

linear    damping  

nonlinear    damping  

good  damping  

bad  damping  

A  CLF  will  now  be  constructed  to  dominate  bad  damping  and  exploit  good  damping  

Page 75: Chapter 13 – Advanced Motion Control Systems

75 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping Consider  the  CLF:  

V1 ! 12 z1

2

V" 1 ! !!a0 # a2|z1 | # k1"z12 ! a1z1

3 ! !1z14 # z1z2

#

#

V2 ! V1 " 12 z22

V# 2 ! !!a0 " a2|z1 | " k1"z12 ! a1z13 ! !1z14 " z2!z1 " u ! "# 1"

Step  1  

Step  2  

energy  dissipa/on  

energy  dissipa/on  or  genera/on  

u ! !" 1 ! k2z2 ! z1

V! 2 " !!a0 # a2|z1 | # k1"z12 ! a1z13 ! !1z14 ! k2z22

Control  law  

nega/ve  term   can  be  rewrinen  by  comple0ng  the  squares  

Page 76: Chapter 13 – Advanced Motion Control Systems

76 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.2 The Main Idea of Integrator Backstepping

12 !1

x ! !1 y2

" 14!1

x2 ! xy ! !1y2 ! 0

#

" xy " !1y2 " " 12 !1

x ! !1 y2

! 14!1

x2

#

#

Comple/ng  the  squares:  

V! 2 " !!a0 # a2|z1 | # k1"z12 ! a1z13 ! !1z14 ! k2z22

x ! a1z1 and y ! z12, yields:

V! 2 " ! a12 !1

z1 # !1 z122# a12

4!1z12 ! !a0 # a2|z1 | # k1"z12 ! k2z22

! 0 ! 0

V! 2 ! " a0 " k1 "a12

4!1z12 " k2z22

!1 ! 0, k1 !a12

4!1! a0, k2 ! 0V! 2 " 0 if

bad  damping  is  dominated  by  nonlinear  damping    

Controller  is  implemented  without  using  the  unknown  parameters  a0,  a1,  a2    ROBUST  CONTROL  

!1 ! !k1z1 ! "1z13

u ! !" 1 ! k2z2 ! z1

Page 77: Chapter 13 – Advanced Motion Control Systems

77 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.3 Backstepping of SISO Mass-Damper-Spring System

x! " vmv! # d!v"v # k!x"x " !

y " x

# # #

m ! mass (positive)d!v" ! nonlinear damping force (non-negative)k!x" ! nonlinear spring force (non-negative)

m τ

d v v( ) x

k x x( )

Backstepping  of  the  mass-­‐damper-­‐spring  can  be  performed  by  choosing  the  output:  

e ! y ! yd

ė ! v ! y" dmv" ! ! ! d!v"v ! k!x"x

# #

Change  of  coordinates:  

Page 78: Chapter 13 – Advanced Motion Control Systems

78 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

ż1 ! !1 " z2 ! y# d

13.3.3 Backstepping of SISO Mass-Damper-Spring System

Step  1:  Let  z1 = e = y - yd,  such  that:  

ż1 ! v ! y" d choosing  the  virtual  control  as   v ! !1 " z2

where  z2  is  a  new  state  variable  to  be  interpreted  later.  This  yields:  

Next,  the  stabilizing  func/on  is  chosen  as  linear  +  nonlinear  damping:  

!1 ! y" d ! !k1 # n1"z1#$z1

ż1 ! !!k1 " n1"z1#$z1 " z2 V1 ! 12 z1

2

V" 1 ! z1ż1

! !!k1 # n1"z1#$z12 # z1z2

#

#

CLF:  Resul/ng  dynamics  Step  1:  

(leave  z2-­‐term  to  Step  2)  

Page 79: Chapter 13 – Advanced Motion Control Systems

79 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.3 Backstepping of SISO Mass-Damper-Spring System Step  2:          The  second  step  stabilizes  the  z2-­‐dynamics:    

mz2 ! mv" ! m!" 1

! " ! d!v"v ! k!x"x ! m!" 1 # v ! !1 " z2mv! " ! ! d!v"v ! k!x"x

V2 ! V1 " 12 mz2

2, m # 0

V$ 2 ! V$ 1 " mz2ż2

! !!k1 " n1"z1#$z12 " z1z2 " z2!! ! d"v#v ! k"x#x ! m"$ 1$

#

#

CLF  mo/vated  by  “pseudo  kine/c  energy”  

The  control  appears  in  the  second  step  (system  with  2  integrators).  Hence:  

! ! m"" 1 # d!v"v # k!x"x ! z1 ! k2z2 ! n2!z2"z2 -­‐  includes  nonlinear  damping  -­‐  cancel  all  nonlineari/es  

V! 2 " !!k1 # n1"z1#$z12 ! !k2 # n2"z2#$z22This  yields:  

Page 80: Chapter 13 – Advanced Motion Control Systems

80 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.3 Backstepping of SISO Mass-Damper-Spring System

When  implemen/ng  the  control  law,            is  computed  by  taking  the  /me  deriva/ve  of  a1            along  the  trajectories  of  yd  and  z1:  

!! 1

!1 ! y" d ! !k1 # n1"z1#$z1

!! 1 " !!1!y! dÿd " !!1

!z1ż1 " ÿd " !!1

!z1!v " y! d"

does  not  depend  on  the  deriva/ve  of  the  system  states  (only  deriva/ves  of  smooth  reference  signals)  

Resul&ng  Error  Dynamics  (use  this  to  verify  your  design)  

1 00 m

ż1

ż2! !

k1 " n1!z1" 00 k2 " n2!z2"

z1

z2"

0 1!1 0

z1

z2

#

Mz ! !K!z"z ! Sz #

skew-­‐  symmetric  

diagonal  

Page 81: Chapter 13 – Advanced Motion Control Systems

81 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Reference:  Fossen,  Loria  and  Teel  (2001).  A  Theorem  for  UGAS  and  ULES  of  (Passive)  Nonautonomous  Systems:  Robust  Control  of  Mechanical  Systems  and  Ships.  Int.  Journal  of  Robust  and  Nonlinear  Control,  JRNC-­‐11:95-­‐108  

13.3.4 Integral Action by Constant Parameter Adaptation The  integral  state  can  be  treated  as  a  constant  parameter  and  es/mated  online  using  adap/ve  control  techniques.        

x! " vmv! # d!v"v # k!x"x " ! # w

w! " 0

# # #

Integral  ac/on  based  on  “direct  matching”  between  the  disturbance  and  the  control  input:  

V1 ! 12 z12 " 1

2p w#2, p $ 0 V2 ! V1 " 1

2 mz22

!1 ! x" d ! k1z1

! ! d!v""1 " k!x"x ! w " mx# d ! mk1!v ! x$ d" ! z1 ! k2z2w! " pz2 parameter  update  law  

w•w

z1 ! x ! xd

z2 ! v ! !1

Page 82: Chapter 13 – Advanced Motion Control Systems

82 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.5 Integrator Augmentation Technique Consider  the  2nd-­‐order  mass-­‐damper-­‐spring  system:  

x! " vmv! # d!v"v # k!x"x " ! # w

y " x

# # #

where  w  is  a  constant  unknown  disturbance.  Let  e  denote  the  tracking  error:  

e ! y ! yd

ė I ! eė ! v ! y" d

mv" # d!v"v # k!x"x ! ! # w

# # #

Hence,  backstepping  applied  to  the  augmented  model:  

gives  integral  ac/on.  

integral  state  eτ

-

k x( )

d v( )

1/meI

-v x

ydw

m τ

d v v( ) x

k x x( )

Page 83: Chapter 13 – Advanced Motion Control Systems

83 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Control objective: regulate the tracking errorsv! " v ! vd and x! " x ! xd to zero.

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems

Introduce  the  concept  of    “Vectorial  Backstepping”  to  solve  this  MIMO  control  problem.    

Reference:  Fossen  and  Berge  (1997).  Nonlinear  Vectorial  Backstepping  Design  for  Global  Exponen/al  Tracking  of  Marine  Vessels  in  the  Presence  of  Actuator  Dynamics.  Proc.  IEEE  Conf.  on  Decision  and  Control  (CDC'97),    San  Diego,  CA.  pp.  4237-­‐4242.  

x! ! vMv! " D!v"v " K!x"x ! Bu

# #

For  the  mass-­‐damper-­‐spring,  two  vectorial  steps  are  required.  

Page 84: Chapter 13 – Advanced Motion Control Systems

84 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

!"x # v ! vd# s ! "1!vd !"1 # vr # vd!#x$"# !#x$ ! s #

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems

Step  1  (Vectorial  Backstepping):  Consider:  

virtual  control    

where  

The  stabilizing  vector  field  is  chosen  such  that:   CLF:

x! ! v v ! s " #1

s ! v" # $x" New state vector used for tracking control%1 Stabilizing vector field to be defined later

V1 ! 12 x!

!Kpx!

V" 1 ! x! !Kp "#x! !x! !Kp"x! # s!Kpx!

# # (leave  s  to  Step  2)  

vr ! v ! s ! vd ! !x"

Next,  let  us  define:  

Page 85: Chapter 13 – Advanced Motion Control Systems

85 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems

The  defini/on  of  the  s-­‐vector  is  mo/vated  by  Slo/ne  &  Li  (1987)  who  introduced  s  as  a  measure  of  tracking  when  designing  their  adap/ve  robot  controller.    

In  Fossen  and  Berge  (1997)  the  following  transforma/on  is  applied:  

Ms! " D!v"s ! Mv! " D!v"v !Mv! r ! D!v"vr! Bu !Mv! r ! D!v"vr ! K!x"x #

s ! v" # $x"

s ! v ! vrMv! " D!v"v "K!x"x ! Bu

Step  2  (Vectorial  Backstepping)  Consider  a  CLF  based  on  “pseudo  kine/c  energy”:  

V2! 12 s!Ms "V1

V! 2 " s!Ms! "V! 1

" s!!Bu !Mv! r ! D!v"vr ! K!x"x ! D!v"s" ! x#!Kp$x# " s!Kpx#

" s!!Bu !Mv! r ! D!v"vr ! K!x"x ! D!v"s # Kpx#" ! x#!Kp$x# #

Page 86: Chapter 13 – Advanced Motion Control Systems

86 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems

Bu ! Mv" r ! D!v"vr !K!x"x !Kpx# !Kds

V! 2 " s!!Bu !Mv! r ! D!v"vr ! K!x"x ! D!v"s # Kpx"" ! x" !Kp#x"

Control  law:  

V! 2! !s!!D!v" " Kd"s ! x#!Kp$x#

Since  V2  is  posi/ve  definite  and            is  nega/ve  definite  it  follows  from  Theorem  A.3  that  the  equilibrium  point:                                                      

 

is  GES.  !x! , s! " "0, 0!

V! 2

Page 87: Chapter 13 – Advanced Motion Control Systems

87 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems Nonlinear  Mass-­‐Damper-­‐Spring  System  with  Actuator  Dynamics  

x! ! "

Mv! # D!v"v # K!x"x ! BuTu! # u ! uc

# # #

Three  vector  differen/al  equa/ons  suggests  that  we  can  solve  this  problem  in  3  vectorial  steps  

Instead  of  choosing  the  controller  Bu  in  Step  2,  uc  is  treated  as  the  control  input  to  be  specified  in  Step  3.    

V! 2! s!!Bu !Mv" r ! D!v"vr ! K!x"x ! D!v"s " Kpx#" ! x#!Kp$x#

Let  Bu  be  the  virtual  control:   Bu ! z ! "2 Second  stabilizing  vector  field  

new  state  variable  

Recall  that  Step  2  was  given  by:  

Page 88: Chapter 13 – Advanced Motion Control Systems

88 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

V! 2! s!! Bu !Mv" r ! D!v"vr ! K!x"x ! D!v"s " Kpx#" ! x#!Kp$x#

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems Step  2  (Vectorial  Backstepping):  

Bu ! z ! "2

!2 ! Mv" r " D!v"vr "K!x"x !Kpx# !Kds

z ! "2

Choosing  the  stabilizing  vector  field  as:  

V! 2! s!z ! s!!D!v" "Kd"s ! x#!Kp$x#

V3! 12 z!z "V2

V! 3 " z!Kz !V! 2

" z!!Bu" ! #" 2" # s!z ! s!!D!v" ! Kd"s ! x$!Kp%x$

" z!!BT!1!uc ! u" ! #" 2 # s" ! s!!D!v" ! Kd"s ! x$

!Kp%x$ #

Step  3  (Vectorial  Backstepping):  Tu! " u ! ucactuator  model  

Page 89: Chapter 13 – Advanced Motion Control Systems

89 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems

V! 3 " z!!BT!1!uc ! u! ! !" 2 # s! ! s!!D"v! # Kd"s ! x$

!Kp%x$

Control  law:  

uc ! u ! TB!!"# 2 ! s ! K zz"

V! 3 " !z!Kzz ! s!!D!v" !Kd"s ! x"!Kp#x"

gives:  

Consequently,  GES  is  proven  for  a  MIMO  mechanical  system  with    actuator  dynamics  using  3  vectorial  steps.  

x! ! "

Mv! # D!v"v # K!x"x ! BuTu! # u ! uc

# # #

Page 90: Chapter 13 – Advanced Motion Control Systems

90 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.6 Backstepping of MIMO Mass-Damper-Spring Systems Example  13.5  (MIMO  Backstepping  of  Robots)  

q! ! vM!q"v! " C!q,v"v " g!q" ! #

# #

! " M!q"v# r ! C!q,v"vr ! g!q" !Kds !Kqq$

V! " !s!Kds ! q! !Kq"q! #0 "s " 0,q! " 0

V ! 12 !s

!M!q"s ! q" !Kqq" "#0, !s ! 0, q" ! 0

!1" vr, vr ! #d!$q%

CLF:  

s ! v" # $q"

Page 91: Chapter 13 – Advanced Motion Control Systems

91 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.7 Case Study: MIMO Backstepping of Fully Actuated Ships

!" ! J!!"#M#" $ C!#"# $ D!#"# $ g!!" ! %

% ! Bu

# # #

!" r ! !" d ! #!$

% r ! J!1!!"!" r

# #

s ! !"" # #"$! ! M"# r " C!"""r " D!"""r " g!$" ! J!!$"Kp$% ! J

!!$"Kds

u ! B!!

#

#

V! 2! !s!!D"!",#" $Kd"s ! #% !Kp&#%

V2! 12 s!M!!"!s #V1

CLF:  

Page 92: Chapter 13 – Advanced Motion Control Systems

92 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.8 Case Study: MIMO Backstepping Design with Acceleration Feedback for Fully Actuated Ships 3  DOF  maneuvering  model  (surge,  sway  and  yaw):  

!" ! R!!"#M#" " C!#"# " D!#"# ! $

# # M !

m ! Xu" 0 0

0 m ! Yv" mxg!Yr"

0 mxg!Nv" Iz!Nr"

#

! ! !PD ! Km"# ! Cm!""" #

PD  controller  with  accelera/on  feedback:  

Km !K11 K12 0

K21 K22 0

K31 K32 0

Cm!!" !0 0 !K21u ! K22v0 0 K11u " K12v

K21u " K22v !K11u ! K12v 0

#

#

No  feedback  from  yaw  accelera/on,  only  linear  accelera/ons  in  surge  and  sway  

Page 93: Chapter 13 – Advanced Motion Control Systems

93 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.8 Case Study: MIMO Backstepping Design with Acceleration Feedback for Fully Actuated Ships A  symmetric  iner/a  matrix  with  two  tunable  gains  is  obtained  by  choosing:  

Km !

K11 K12 0

K21 K22 0

K31 K32 0

!

Xu" # $K11 0 0

0 Yv" # $K22 0

0 Nv" ! Yr" 0

#

H !

m " #K11 0 00 m " #K22 mxg!Yr$0 mxg!Yr$ Iz!Nr$

# H!" ! CH!!"! ! D!!"! " #PD #

CH!!" ! C!!" " Cm!!" #

s!!H! !"!# " 2CH! "",!#$s ! 0, s # 0 # H!!!" ! R!!"HR!!!"

CH! !!,!" ! R!!"#CH!!" " HR!!!"R" !!"$R!!!"

# #

Skew-­‐symmetric  property:  

Page 94: Chapter 13 – Advanced Motion Control Systems

94 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.8 Case Study: MIMO Backstepping Design with Acceleration Feedback for Fully Actuated Ships

s ! !"" # #"$

CLF:  

!" r ! !" d ! #!$

%r ! R!!!"!" r

# #

V1 ! 12 z1

!Kpz1, z1 ! !d ! !

V2 ! V1 " 12 "!H"

#

#

V! 2 " !s!!D"!!,!" #Kd"s ! "# !Kp$"#

!PD ! H"# r " CH!"""r " D!"""r ! R!!!"#Kp$% " Kds$ #

H!!!"!" ! CH! !#,!"!$ ! D!!#,!"!$ " R!!"%PD

H!" ! CH!!"! ! D!!"! " #PD # !" ! R!!"#M#" " C!#"# " D!#"# ! $

# #

! ! !PD ! Km"# ! Cm!""" #

Ship  model:  

Page 95: Chapter 13 – Advanced Motion Control Systems

95 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.11 Case Study: Heading Autopilot for Ships and Underwater Vehicles The  linear  Nomoto  models  can  be  extended  to  include  nonlinear  effects  by  adding  sta/c  nonlineari/es  referred  to  as  maneuvering  characteris/cs.    

Nonlinear  Extension  of  Nomoto's  1st-­‐Order  Model  (Norrbin  1963)  

Tr! " HN!r" # K!

HN!r" ! n3r3 " n2r2 " n1r " n0

where  HN(r)  is  a  nonlinear  func/on  describing  the  maneuvering  characteris/cs.    For  HN(r)  =  r,  the  linear  model  is  obtained.  

r!!s" ! K

!1 " Ts" #

Page 96: Chapter 13 – Advanced Motion Control Systems

96 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

A  nonlinear  backstepping  controller  can  be  designed  by  wri/ng  the  autopilot  model    in  SISO  strict  feedback  form:  

13.3.11 Case Study: Heading Autopilot for Ships and Underwater Vehicles

! ! m"" 1 # d!r"r ! z1 ! k2z2 ! n2!z2"z2

"1 ! rd ! #k1 # n1!z1"$z1

# #

z1 ! ! ! !dz2 ! r ! "1

# #

m ! TK

d!r" ! 1K HN!r"

!! " rmr! # d!r"r " "

# #

! ! m"" 1 # d!v"v # k!x"x ! z1 ! k2z2 ! n2!z2"z2

!1 ! y" d ! !k1 # n1"z1#$z1

V2 ! V1 " 12 mz2

2, m # 0

V$ 2 ! V$ 1 " mz2ż2

! !!k1 " n1"z1#$z12 " z1z2 " z2!! ! d"v#v ! k"x#x ! m"$ 1$

#

#

SISO  Backstepping  Controller  (Sec&on  13.3.3)  

SISO  mass-­‐damper  system  that  follows  the  standard  procedure  in  Sec/on  13.3.3.  strict  feedback  form:  

Page 97: Chapter 13 – Advanced Motion Control Systems

97 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft For  floa/ng  rigs  and  supply  vessels,  trajectory  tracking  in  surge,  sway  and  yaw  (3  DOF)  is  easily  achieved  since  independent  control  forces  and  moments  are  simultaneously  available  in  all  degrees  of  freedom.  For  slow  speed,  this  is  referred  to  as  dynamic  posi/oning  (DP)  where  the  ship  is  controlled  by  means  of  tunnel  thrusters,  azimuths  and  main  propellers.  Conven/onal  craq,  on  the  other  hand,  are  usually  equipped  with  one  or  two  main  propellers  for  forward  speed  control  and  rudders  for  turning  control.      The  minimum  configura/on  for  waypoint  tracking  control  is  one  main  propeller  and  a  single  rudder.  This  means  that  only  two  controls  are  available,  thus  rendering  the  ship  underactuated  for  the  task  of  3  DOF  tracking  control.      LOS  Guidance  Algorithm    ü  The  desired  output  is  reduced  from  (xd, yd,ψd)  to  ψd and  ud  using  a  LOS  projec/on  

algorithm.    ü  The  tracking  task  ψ(t)→ψd(t)  is  then  achieved  using  only  one  control  (normally  the  

rudder),  while  tracking  of  the  speed  assignment  ud is  performed  by  the  remaining  control  (the  main  propeller).    

Fossen,  T.  I.,  M.  Breivik  and  R.  Skjetne  (2003).  Line-­‐of-­‐Sight  Path  Following  of  Underactuated  Marine  Craq,  IFAC  MCMC'03,Proc.  of  the  IFAC  MCMC'03,  Girona,  Spain  

Page 98: Chapter 13 – Advanced Motion Control Systems

98 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

Adding  an  outer  LOS-­‐loop  to  obtain  path-­‐following.  No/ce  that  a  conven/onal  autopilot  system  can  be  used  in  the  inner  loop.  

Page 99: Chapter 13 – Advanced Motion Control Systems

99 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

Problem  Statement  The  problem  statement  is  stated  as  a  maneuvering  problem  with  the  following  two  objec/ves:      1)  LOS  Geometric  Task:  Force  the  vessel  posi/on  p = [x,y]T  to  converge  to  a  desired  path  by  forcing  the  course  angle  χ  to  converge  to:        where  the  LOS  posi/on  plos = [xlos,ylos]T  is  the  point  along  the  path  which  the  vehicle  should  be  pointed  at.          2)  Dynamic  Task:  Force  the  speed  u  to  converge  to  a  desired  speed  assignment  ud,  that  is:  

!d ! atan2!ylos ! y,xlos ! x" #

limt!!

!u"t# " ud"t#$ " 0 #

Page 100: Chapter 13 – Advanced Motion Control Systems

100 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

! ! !u,v,r"!

! ! !x,y,!"!

M !m11 0 0

0 m22 m23

0 m32 m33

!m ! Xu" 0 0

0 m ! Yv" mxg!Yr"

0 mxg!Nv" Iz!Nr"

N!!" !n11 0 0

0 n22 n23

0 n32 n33

!

!Xu 0 0

0 !Yv mu ! Yr

0 !Nv mxgu ! Nr

R!!" !cos !!" ! sin!!" 0

sin!!" cos !!" 0

0 0 1

#

Sway  is  leq  uncontrolled  

!" ! R!!"#

M#" " N!#"# !

!1 ! t"TY""N""

:!#1

Y""#3

#

#

Page 101: Chapter 13 – Advanced Motion Control Systems

101 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

! ! !!1,!2,!3"! ! "3

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft Backstepping  Design  Define  the  error  signals  according  to:          Next                    CLF:  

z1 :! ! ! !d ! " ! "dz2 :! !z2,1,z2,2,z2,3"! ! ! ! "

# #

ż1 ! r ! rd ! h!! ! rd! !3 " h!z2 ! rd #

h ! !0,0,1"! #

Mż2 ! M!" !M#"

! $ ! N! !M#" #

yaw  selec/on  vector  used  in  LOS  objec/ve  

Three  stabilizing  func/ons  but  only  two  can  be  specified  since  we  are  limited  to  two  controls:  

rd ! !" d

V ! 12 z1

2 " 12 z2

!Mz2, M ! M! # 0 #

LOS  heading  error  

kine/c  energy  

Page 102: Chapter 13 – Advanced Motion Control Systems

102 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

!1 ! m11"" 1 # n11u ! k1!u ! "1"

!3 ! m32"" 2 # m33"" 3 # n32v # n33r ! k3!r ! "3" ! z1

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

V! " z1ż1 # z2!Mż2" z1!!3 # h!z2 ! rd" # z2!!! ! N" !M#$ " !3 ! !cz1 " rd #

V! " !cz12 # z1h!z2 # z2

!!! ! N" !M#$ "

" !cz12 # z2

!!hz1 # ! ! N" !M#$ " #

V! " !cz12 ! z2

!Kz2 # 0, "z1 # 0,z2 # 0 #

By  standard  Lyapunov  arguments,  this  guarantees  that  (z₁,z₂)  is  bounded  and  converges  to  zero.    However,  no/ce  that  we  can  only  prescribe  values  for  τ₁ and τ₃  while  sway  is  leq  uncontrolled.  Moreover,  

! !!1

Y""!3

! M"# " N$ ! Kz2 ! hz1 #

Page 103: Chapter 13 – Advanced Motion Control Systems

103 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft Choosing  α₁ = ud solves  the  dynamic  task.  The  closed-­‐loop  surge  dynamics  becomes          The  remaining  equa/on  (τ₂  =  0)  results  in  a  dynamic  equality  constraint  (sway  dynamics):        This  equa/on  is  recognized  as  the  internal  dynamics  and  we  need  to  check  if  the  closed-­‐loop  system  in  3  DOF  based  on  only  two  controls  is  stable.      It  can  be  shown  that:    

m11!u! ! u! d" " k1!u ! ud" # 0 #

m22!! 2 " m23!! 3 " n22v " n23r ! k2!v ! !2" #Y"N"

#3 #

m22 !Y!N!m32 "! 2 " ! n22 !

Y!N!n32 "2 # #!z1,z2,rd,r! d" #

!!z1,z2,rd,r! d" " ! m23 !Y"N"m33 !c2z1 ! cz2,3 # r! d" ! n22 !

Y"N"n32 z2,2

! n23 !Y"N"n33 !!cz1 # rd # z2,3" # k2z2,2 !

Y"N"

!k3z2,3 # z1" #

Page 104: Chapter 13 – Advanced Motion Control Systems

104 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

From  the  Lyapunov  arguments  the  equilibrium  (z₁,z₂) = (0,0) of  the  z-­‐subsystem  is  UGAS.      Moreover,  the  unforced  α₂-­‐subsystem  (γ =  0)  is  clearly  exponen/ally  stable.    Since  (z₁,z₂) ∈ L∞ and  (rd, rd) ∈ L∞,  then  γ ∈ L∞.  This  implies  that  the  α₂-­‐subsystem  is  input-­‐to-­‐state  stable  from  γ  to α₂.      By  standard  comparison  func/ons,  it  is  straigh�orward  to  show  that:        

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

 .

limt!!|!2!t" " v!t"|" 0 #

z1 :! ! ! !d

z2 :! !u ! ud,v ! !2,r ! !3"!ż1

ż2!

!c h!

!M!1h !M!1Kz1

z2

m" !# 2 ! !n"!2 $ "!z1,z2,rd,r# d"

#

#

|!2!t"| ! |!2!0"|e"n!2t #

Page 105: Chapter 13 – Advanced Motion Control Systems

105 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

Case  Study:  Experiment  Performed  with  the  CS2  Model  Ship            In  the  experiment,  CyberShip  2  (CS2)  was  used.  It  is  a  1:70  scale  model  of  an  offshore  supply  vessel  with  a  mass  of  15  kg  and  a  length  of  1.255  m.      The  maximum  surge  force  is  approximately  2.0  N,  while  the  maximum  yaw  moment  is  about  1.5  Nm.      The  MCLab  tank  is:    L  ×  B  ×  D  =  40  m  ×  6.5  m  ×  1.5  m.  

M !

25. 8 0 0

0 33. 8 1. 0115

0 1. 0115 2. 76

, N!!" !2 0 0

0 7 0. 1

0 0. 1 0. 5

c ! 0.75, k1 ! 25, k2 ! 10, k3 ! 2.5

Page 106: Chapter 13 – Advanced Motion Control Systems

106 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

xy-­‐plot  of  the  measured  and  desired  geometrical  path  during  the  experiment.  

wpt1! !0. 372, !0. 181" wpt5! !6. 872, !0. 681"

wpt2! !!0. 628, 1. 320" wpt6! !8. 372, !0. 181"

wpt3! !0. 372, 2. 820" wpt7! !9. 372, 1. 320"

wpt4! !1. 872, 3. 320" wpt8! !8. 372, 2. 820"

!x0,y0,!0" ! !!0.69 m,!1.25 m, 1.78 rad"!u0,v0,r0" ! !0.1 m/s, 0 m/s, 0 rad/s"

Page 107: Chapter 13 – Advanced Motion Control Systems

107 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.3.12 Case Study: Path-Following Controller for Underactuated Marine Craft

The  actual  yaw  angle  of  the  ship  tracks  the  desired  LOS  angle  well.  

The  discon/nui/es  in  the  actual  heading  angle  is  due  to  the  camera  measurements  dropping  out.    

Page 108: Chapter 13 – Advanced Motion Control Systems

108 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Chapter 13 – Advanced Motion Control Systems 13.1  Linear-­‐Quadra/c  Op/mal  Control  13.2  State  Feedback  Lineariza/on  13.3  Integrator  Backstepping  13.4    Sliding-­‐Mode  Control  

Page 109: Chapter 13 – Advanced Motion Control Systems

109 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

Chapter 13 – Advanced Motion Control Systems

Autopilot  design  for  underwater  vehicles  (submersibles)  can  be  classified  according  to  the  applica/on:  

•   ROV:  remotely  operated  vehicles  

•   AUV:  autonomous  underwater  vehicles    

•   UUV:  unmanned  underwater  vehicles    

•   URV:  underwater  robo/c  vehicles  

A  naval  vessel  or  warship  that  is  capable  of  propelling  itself  beneath  the  water,  as  well  as  on  the  surface,  is  referred  to  as  a  submarine.  

Page 110: Chapter 13 – Advanced Motion Control Systems

110 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control VSC where a sigmoid function (S-shaped functions like��� sgn, tanh, etc.) dominates model uncertainty by increasing��� the gain Ks for instance by using 13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition VSC where the sigmoid function gain Ks is computed using an eigenvalue decomposition.

Chapter 13.4 Sliding-Mode Control Sliding-­‐mode  control  (Utkin  1977)  can  be  used  to  handle  model  uncertainty.    Sliding-­‐mode  techniques  have  been  applied  to  marine  craq  by  Yoerger  and  Slo/ne  (1985),  

Slo/ne  and  Li  (1991),  Healey  and  Lienard  (1993),  McGookin  et  al.  (2000a,  2000b).            Sliding-­‐mode  control  is  a  form  of  variable  structure  control  (VSC).  It  is  a  nonlinear  control  

method  that  alters  the  dynamics  of  a  nonlinear  system  by  applica/on  of  a  high-­‐frequency  switching  control.    

The  state-­‐feedback  control  law  is  not  a  con/nuous  func/on  of  /me.  Instead,  it  switches  from  one  con/nuous  structure  to  another  based  on  the  current  posi/on  in  the  state  space.  Hence,  sliding-­‐mode  control  is  a  VSC  method.    

 

Ks sgn(s)

Page 111: Chapter 13 – Advanced Motion Control Systems

111 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control Sliding  Surface  The  feedback  control  law  is  modified  to  use  a  sliding  surface  s  instead  of  the  state  variables.      Define  a  scalar  measure  of  tracking:  

s ! !"# $ 2"!" $ "2 !0

t!" !#"d#

λ > 0 is  a  design  parameter  reflec/ng  the  bandwidth  of  the  controller    

!! " ! ! !d is the yaw angle tracking error

For  s  =  0  this  expression  describes  a  sliding  surface  (manifold)  with  exponen/ally  stable  dynamics.  No/ce  that:      if  s  =  0.    This  means  that  the  control  problem  can  be  solved  by  regula/ng  s  to  0  instead  of  regula/ng  the  tracking  error  to  0.    

!! converges  exponen/ally  to  zero  

Page 112: Chapter 13 – Advanced Motion Control Systems

112 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control Define  a  second  sliding  surface:  

s0 ! !" # " !0

t!" !#"d#

such  that  the  manifold  s  =  0,  i.e.:      can  be  rewrinen  as:  

s ! s" 0 # !s0 ! 0

s ! !"# $ 2"!" $ "2 !0

t!" !#"d# ! 0

!!"

s" 0#

!" 10 !"

!!

s0

Hence:  

The  control  objec/ve  is  reduced  to  finding  a  nonlinear  control  law  which  ensures  that:  

limt!! s " 0

λ

1

s0.

φφ

s0

!

! s0 and !! converge exponential to zero

s0 and !! converge exponential to zero

Page 113: Chapter 13 – Advanced Motion Control Systems

113 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control When  deriving  the  control  law,  a  stable  ship  model  with  nonlinear  damping  is  considered:  

Tr! " n3r3 " n1r # K! " "windDefine  a  new  signal  v  according  to:  

v ! r ! s ! s ! r ! vsuch  that  

Ts! " Tr! ! Tv!" K! # "wind ! !n3r2 # n1"r ! Tv!

" K! # "wind ! !n3r2 # n1"!v # s" ! Tv! #

Consider  the  CLF:  

V!s" ! 12 Ts

2, T " 0

V! !s" " sTs!

Page 114: Chapter 13 – Advanced Motion Control Systems

114 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control

V! !s" " s#K! # "wind ! !n3r2 # n1"!v # s" ! Tv! $" !#n3r2 # n1$s2 # s#K! # "wind ! #n3r2 # n1$v ! Tv! $ #

Let  the  control  law  be  chosen  as:  

! ! T"K"v# $ 1

K"!n" 3r2 $ n1"v ! 1

K""wind ! Kds ! Kssgn#s$

where Kd ! 0 and Ks ! 0, while T" ,K" , and n" 3 are estimates of T,K, and n3, respectively.

sgn!s" !

1 if s " 00 if s ! 0!1 otherwise

signum  func/on  

This  gives:  

V! !s" " !#n3r2 # n1 # Kd$s2 ! Ks|s |

# T$K$

! TK v! # 1

K$! 1K #n1v ! !wind$

# n$ 3

K$! n3K r2v s #

nega/ve  terms  

we  must  choose  Ks  >  0  such  that  V  become  nega/ve  

.  

Page 115: Chapter 13 – Advanced Motion Control Systems

115 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control Moreover,  we  choose  the  gain  Ks  >  0  so  large  that  the  parameter  errors  are  dominated.  

Consequently:  

Ks ! T!K!

" TK v" # 1K!

" 1K !n1v " !wind"

# n! 3

K!" n3K r2v #

implies  that:  

V! !s" ! "!n3r2 " n1 " Kd"s2 ! 0 Consequently, s ! 0 and thus !" ! 0.

One  way  to  find  an  es/mate  of  Ks  is  to  assume  e.g.  20  %  uncertainty  in  all  elements  such  that:  

Ks ! 1.2 T!

K!|v" | # 1.2 1

K!n1v " !wind # 1.2 n!3

K!|r2v |

Page 116: Chapter 13 – Advanced Motion Control Systems

116 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.1 SISO Sliding-Mode Control  It  is  well  known  that  the  switching  term  Ks  sgn(s)  can  lead  to  chanering  for  large  values  of  Ks.  

Hence,  Ks  >  0  should  be  treated  as  a  design  parameter  with  

 as  a  guideline  (Lyapunov  stability  analysis  is  conserva/ve).            Chanering  in  the  controller  can  be  eliminated  by  replacing  the  signum  func/on  with  a  

satura/ng  func/on.  Slo/ne  and  Li  (1991)  suggest  smoothing  out  the  control  discon/nuity  inside  a  boundary  layer  according  to:  

Ks ! T!K!

" TK v" # 1K!

" 1K !n1v " !wind"

# n! 3

K!" n3K r2v #

sat!s" !sgn!s" if |s/! | " 1s/! otherwise

where  φ  >  0  can  be  interpreted  as  the  boundary  layer  thickness.  This  subs/tu/on  will  assign  a  LP  filter  structure  to  the  dynamics  inside  the  boundary  layer.    

Another  possibility  is  to  replace  Ks  sgn(s)  with  the  smooth  func/on  Ks  tanh(s/φ)  

Page 117: Chapter 13 – Advanced Motion Control Systems

117 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition Healey and Lienhard (1993) have applied the theory of sliding-mode control to control the NPS AUV II. A related work discussing the problems of adaptive sliding mode control in the dive plane is found in Cristi et al. (1990).

The state-space representation for the lateral modes (neglecting roll):

!x " Ax # bu # f!x, t"where f(x,t) is a a nonlinear function describing the deviation from linearity in terms of disturbances and unmodelled dynamics

A !

a11 a12 0a21 a22 00 1 0

, b !

b1b20

x ! !v, r,!!!

u ! !R

(single input, multiple states)

Page 118: Chapter 13 – Advanced Motion Control Systems

118 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition

The feedback control law is composed of two parts (inner and outer loops):

u ! !k!x " uo k ! !3 feedback gain vector

Closed-loop dynamics:

!x " !A ! bk!"Acx # buo # f!x, t"

In order to determine the nonlinear part uo of the feedback control law, consider the output mapping: where h ∈ ℝ³ is a design vector to be chosen such that s → 0, implying convergence of the state tracking error x = x - xd → 0.

(sliding surface)

found from pole placement of Ac

s ! h! "x #

Page 119: Chapter 13 – Advanced Motion Control Systems

119 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

s! " h!Acx # h!buo # h!f!x, t" ! h! !xd #

13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition

!x " Acx # buo # f!x, t"

Assume that hTb ≠ 0 and let the nonlinear control law be chosen as:

where !f!x, t" is an estimate of f!x, t".

!f!x, t" " f!x, t" ! #f!x, t"

Sliding surface dynamics

uo ! !h!b"!1#h! "xd ! h!#f!x, t" ! !sgn!s"$, ! $ 0 #

s! " h!!x! ! x! d" #

s ! h! "x #

s! " h!Acx ! !sgn!s" # h!$f!x, t" #

Page 120: Chapter 13 – Advanced Motion Control Systems

120 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

s! " !x!h ! "sgn!s" # h!$f!x, t" #

s! " h!Acx ! !sgn!s" # h!$f!x, t" #

13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition

The first term in the sliding surface dynamics can then be rewritten as:

h!Acx ! x!Ac!h !!x!h

Assume that h is a right eigenvector of AcT such that:

! ! !!Ac!"!Ac!"h ! !h where is the corresponding eigenvalue of AcT

such that

cont..

Page 121: Chapter 13 – Advanced Motion Control Systems

121 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition Computation of h and k

The eigenvalue l can be made zero by noticing that the system model has one pure integrator in yaw. Let:

k !!k1, k2, 0"!

The linear part of the controller only stabilizes the sway velocity v and yaw rate r.

yaw y is left uncontrolled in the inner loop

Ac ! A ! bk!!a11 ! b1k1 a12 ! b1k2 0a21 ! b2k1 a22 ! b2k2 0

0 1 0

x !

vr!

For this matrix one of the eigenvalues are zero. Consequently:

!x!h ! 0 if h is a right eigenvector of Ac! for ! ! 0

Page 122: Chapter 13 – Advanced Motion Control Systems

122 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

s! " !x!h ! "sgn!s" # h!$f!x, t" #

If , this reduces to:

13.4.2 Sliding-Mode Control using the Eigenvalue Decomposition With  this  choice  of  h,  the  s-­‐dynamics:  

Lyapunov analysis:

Selectingh as:

! !! h ! ! ! "f"x, t# ! V! ! 0!

! ! 0

s! " !!sgn!s" # hT$f!x, t" #

V ! 12 s

2 # V! " ss!" !!sgn!s"s # sh!$f!x, t"" !!|s|#sh!$f!x, t" #

By  applica/on  of  Barbălat's  lemma,  s  converges  to  zero  in  finite  /me  if  η  is  chosen  to  be  large  enough  to  overcome  the  destabilizing  effects  of  the  unmodeled  dynamics  Δf(x,t)

Page 123: Chapter 13 – Advanced Motion Control Systems

123 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.3 Case Study: Heading Autopilot for Ships and Underwater Vehicles

Station Keeping

[Speed] Low-Speed Positioning High-Speed Maneuvering

Autonomous  Underwater  Vehicles  (AUVs):  High-­‐speed  fliging  vehicles;  decoupled  dynamics;  gain-­‐scheduled  linear  controllers  (autopilots);  underactuated  

Remotely  Operated  Vehicles  (ROVs):  Low-­‐speed  box  vehicles;  strongly  coupled  dynamics;  nonlinear,  model-­‐based  control  (dynamic  posi/oning);  fully  actuated  

Page 124: Chapter 13 – Advanced Motion Control Systems

124 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

The  6  DOF  underwater  vehicle  equa/ons  of  mo/on  can  be  divided  into  three  non-­‐interac/ng  or  lightly  interac/ng  subsystems  for  speed  control,  steering  and  diving:  

Each  system  is  described  by  the  state  variables:  

1)  Speed  system  state:  u(t)  

2)  Steering  system  states:  v(t),  r(t)  and  ψ(t)

3)  Diving  system  states:  w(t),  z(t),  q(t),  and  θ(t)

The  rolling  mode,  that  is  p(t)  and  f(t), is  leq  passive  in  this  approach.    

Example:  Slender  formed  vehicles  like  the  Naval  Postgraduate  School  (NPS)  AUV  

13.4.3 Case Study: Heading Autopilot for Ships and Underwater Vehicles

Page 125: Chapter 13 – Advanced Motion Control Systems

125 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.3 Case Study: Heading Autopilot for Ships and Underwater Vehicles

The magnitude of η will be a trade-off between robustness and performance

sat!s" !sgn!s" if |s/! | " 1s/! otherwise

Chattering should be removed by replacing sgn(s) with:

Inner-outer loop designs:

Page 126: Chapter 13 – Advanced Motion Control Systems

126 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.3 Case Study: Heading Autopilot for Ships and Underwater Vehicles Consider the ROV model:

v!r!!!

"

a11 a12 0a21 a22 00 1 0

v ! vcr!

#

b1b20

"

!! dr! d

"0 1

!"n2 !2#"n

!drd

#0"n2

!ref

|vc | ! vcmax

unknown bounded currents:

Reference model:

Sliding surface for heading control / zero sway velocity

s ! h!!x ! xd" ! h1v " h2!r ! rd" " h3!! ! !d" #

Page 127: Chapter 13 – Advanced Motion Control Systems

127 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.3 Case Study: Heading Autopilot for Ships and Underwater Vehicles

Ac ! A ! bkT !

a11 ! b1k1 a12 ! b1k2 0a21 ! b2k1 a22 ! b2k2 00 1 0

Feedback  from  the  sway  velocity  v  and  yaw  rate  r,  that  is:  

k ! !k1, k2, 0"T

Hence:  

where  the  yaw  dynamics  is  leq  unchanged.  

A  pure  integrator  in  yaw  corresponding  to  the  eigenvalue  l  =  0  is  necessary  in  order  to  sa/sfy:  

!x!h ! 0

Page 128: Chapter 13 – Advanced Motion Control Systems

128 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.3 Case Study: Heading Autopilot for Ships and Underwater Vehicles The  eigenvector  h  is  computed  in  Matlab  as  

p ! [-1 -1 0] % desired poles for Ac

k ! place(A,b,p) % pole placement

Ac ! A-b*k’

[V,D]!eig(Ac’) % eigenvalue decomposition

for i ! 1:3 % extract the eigenvector h from V

hi ! V(:,i);

if norm(hi.’*Ac) " 1e-10; h ! hi; end

end

The  resul/ng  trajector-­‐tracking  controller  is:  

! ! !k1v ! k2r " 1h1b1"h2b2

!h2r# d " h3rd ! "sat"s#$

! !! h ! ! ! ""a11,a12, 0#!vcmax !

Since  the  disturbance  vc  is  unknown  our  best  guess  for  f(x,t)  is     f!x! , t" ! 0

! !! h ! ! ! "f"x, t# !

Page 129: Chapter 13 – Advanced Motion Control Systems

129 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.4 Case Study: Pitch and Depth Autopilot for Underwater Vehicles Pitch  and  depth  control  of  underwater  vehicles  is  usually  done  by  using  control  surfaces,  thrusters  and  ballast  systems.      For  a  neutrally  buoyant  vehicle,  stern  rudders  are  anrac/ve  for  diving  and  depth  changing  maneuvers,  since  they  require  rela/vely  linle  control  energy  compared  to  thrusters.  

NPS  AUV  II  A.  J.  Healey  and  D.  Lienard  (1993).  Mul/variable  Sliding-­‐Mode  Control  for  Autonomous  Diving  and  Steering  of  Unmanned  Underwater  Vehicles.  IEEE  Journal  of  Oceanic  Engineering,  Vol.  18,  No.  3.  

Page 130: Chapter 13 – Advanced Motion Control Systems

130 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.4 Case Study: Pitch and Depth Autopilot for Underwater Vehicles

m ! Xu! !Xw! mzg ! Xq!!Xw! m ! Zw! !mxg ! Zq!

mzg ! Xq! !mxg ! Zq! Iy ! Mq!

u!w!q!

"

!Xu !Xw !Xq!Zu !Zw !Zq!Mu !Mw !Mq

uwq

"

0 0 00 0 !!m ! Xu! "u0 !Zw! ! Xu! "u mxgu

uwq

"

00

WBGz sin!#

"1"3"5

Longitudinal underwater vehicle dynamics (linear damping, no Coriolis-centripetal terms):

The speed dynamics can be removed from this model by assuming that the speed controller stabilizes the forward speed such that:

m ! Zw! !mxg!Zq!

!mxg!Zq! Iy!Mq!

w!

q!"

!Zw !Zq

!Mw !Mq

w

q

"0 !!m ! Xu! "uo

!Zw! !Xu! "uo mxguo

w

q"

0

BGzWsin !#

"3

"5 #

u ! uo ! constant

Page 131: Chapter 13 – Advanced Motion Control Systems

131 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.4 Case Study: Pitch and Depth Autopilot for Underwater Vehicles A  state-­‐space  representa/on  of  this  model  is:  

!x " Ax # bu$

w!q!!!

d!

"

a11 a12 0 0a21 a22 a23 00 1 0 01 0 !u0 0

wq!

d

#

b1

b2

00

"S

#

#

!! " p cos" ! sin" " qd! " !u0 sin! # v cos! sin# # wcos! cos# " w ! u0!

# #

Kinema/c  approxima/ons:  

stern  rudder  for  depth  control  

d  =  depth  

Page 132: Chapter 13 – Advanced Motion Control Systems

132 Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)

13.4.4 Case Study: Pitch and Depth Autopilot for Underwater Vehicles A  combined  pitch  and  diving  autopilot  can  be  designed  for  the  model:  

!x " Ax # bu # f!x, t"

where  f(x,t)  is  a  nonlinear  func/on  describing  the  devia/on  from  linearity  in  terms  of  disturbances  and  unmodelled  dynamics  

The  sliding  surface  for  pitch  and  diving  control  can  be  constructed  as:  

x = [w, q,q, d]T (longitudinal states) u = dS (stern angle)

k ! !k1, k2, 0, k4"T

Ac!h ! 0 for !3 ! 0pure  integrator  in  the  pitch  channel  

gives  

s ! h!x! ! h1!w ! wd" " h2!q ! qd" " h3!! ! !d" " h4!d ! dd" #

u ! !k!x "uouo ! !h!b"!1#h! #xd ! h!$f!x, t" ! !sgn!s"$, ! % 0

# #

!S ! !k1w ! k2q ! k4d " 1h1b1 " h2b2

!h1w# d " h2q# d " h3"d " h4dd ! #sgn"s#$ #