Professional Documents
Culture Documents
wind
loads
wind
feedforward
pilot yaw angle
input and rate
reference control control compass
model system allocation and gyro
observer and
wave filter
2
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1 Open-Loop Stability and
Maneuverability
Stability Maneuverability
Stability
of
the
uncontrolled
ship
can
be
dened
as
the
ability
to
return
to
an
equilibrium
point
aKer
a
disturbance,
without
any
correc>ve
ac>on
of
the
rudder.
Maneuverability,
on
the
other
hand,
is
dened
as
the
capability
of
the
ship
to
carry
out
specic
maneuvers.
Excessive
stability
implies
that
the
control
eort
will
be
excessive
in
a
maneuvering
situa>on
whereas
a
marginally
stable
ship
is
easy
to
maneuver.
Thus,
a
compromise
between
stability
and
maneuverability
must
be
made.
3
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.1 Straight-Line, Directional and
Positional Motion Stability
For
ships
it
is
common
to
dis>nguish
between
three
types
of
stability:
Straight-line
stability
Direc>onal
stability
Posi>onal
mo>on
stability
Consider
the
following
test
system:
Test system:
!1,2 !
!d" d 2!4km
, "n !
,
k
#
! d 1
2m m 2 km
5
Copyright Bjarne Stenberg/SINTEF
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.1 Straight-Line, Directional and
Positional Motion Stability
Straight-Line
Stability:
Consider
an
uncontrolled
ship
(Kp
=
Kd
=
0)
moving
on
a
straight-line
path.
If
the
new
path
is
straight
aKer
a
disturbance
w
in
yaw
the
ship
is
said
to
have
straight-line
stability.
-50
d ! !1 " 0
!1 ! ! m
-100
0 500 1000 1500 2000 2500 3000
T r (deg/s) (deg)
!2 ! 0 0.06 6
0.05 5
0.04 4
The
requirement
T
>
0
implies
0.03 3
straight-line
stability
for
the
0.02 2
uncontrolled
ship
( =
0)
0.01 1
0
0 200 400 600
0
0 200 400 600
sec sec
6
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.1 Straight-Line, Directional and
Positional Motion Stability
Direc+onal
Stability
(Stability
on
Course):
Direc>onal
stability
requires
the
nal
path
to
be
parallel
to
the
ini>al
path
which
is
obtained
for
Kp
>
0.
Addi>onal
damping
is
added
through
Kd
>
0,
that
is,
PD-control.
The
ship
is
said
to
be
direc>onally
stable
if
both
eigenvalues
have
nega>ve
real
parts,
that
is:
XY-Plot: Directional stability (critical damped)
10
Re!!1,2 " ! 0 5
0.04 0.5
2
0.03 0.4
0 0.1
sec
7
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.1 Straight-Line, Directional and
Positional Motion Stability
2.
Damped
Oscillator
(d
-
4km
<
0):
This
corresponds
to
two
imaginary
eigenvalues
with
nega>ve
real
parts
(
<
1),
that
is:
0
No>ce
the
oscilla>ons
in
both
posi>ons
and
yaw
angle.
-5
0 500 1000 1500 2000 2500 3000
Direc>onal
stability
requires
feedback
control
since
there
are
0.06
r (deg/s)
1.5
(deg)
9
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Ship
maneuvers
can
be
used
to
evaluate
the
robustness,
performance
and
limita>ons
of
a
ship.
This
is
usually
done
by
dening
a
criterion
in
terms
of
a
maneuvering
index
or
by
using
a
maneuvering
characteris>c.
T! !" ! # !$ ! % K ! " !
exp!!t /T " " 1 !
! ! t!
#
!t ! " 2
# O!3"
T! 2!T ! " 2
! ! !t ! "1" ! !t ! " 2 K! 1 K!
" ! !t ! "1"
!K 2T !
" 2T ! P! 2 T!
t ! "1
Norrbin
concludes
that
P
>
0.3
guarantees
a
reasonable
standard
of
course-change
quality
for
most
ships,
while
P
>
0.2
seems
to
be
sucient
for
large
oil-tankers.
10
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Maneuvering
Characteris+cs
A
maneuvering
characteris>c
can
be
obtained
by
changing
or
keeping
a
predened
course
and
speed
of
the
ship
in
a
systema>c
manner
by
means
of
ac>ve
controls.
A
guide
for
sea
trials
describing
how
these
maneuvers
should
be
performed
is
found
in
SNAME
(1989).
The
following
ship
maneuvers
have
been
proposed
by
ITTC:
Turning
Circle:
This
trial
is
mainly
used
to
calculate
the
ship's
steady
turning
radius
and
to
check
how
well
the
steering
machine
performs
under
course-changing
maneuvers.
Kempf's
Zigzag
Maneuver:
The
zigzag
test
is
a
standard
maneuver
used
to
compare
the
maneuvering
proper>es
and
control
characteris>c
of
a
ship
with
those
of
other
ships.
Experimental
results
of
the
test
can
be
used
to
calculate
the
K
and
T
values
of
Nomoto's
1st-order
model.
Pull-Out
Maneuver:
The
pull-out
maneuver
can
be
used
to
check
whether
the
ship
is
straight-line
stable
or
not.
Dieudonn's
Spiral
Maneuver:
The
spiral
maneuver
is
used
to
check
straight-line
stability.
The
maneuver
gives
an
indica>on
of
the
range
of
validity
of
the
linear
theory.
Bech's
Reverse
Spiral
Maneuver:
The
reverse
spiral
maneuver
can
be
used
for
unstable
ships
to
produce
a
nonlinear
maneuvering
characteris>c.
The
results
from
the
test
indicate
which
rudder
correc>ons
that
are
required
to
stabilize
an
unstable
ship.
Stopping
Trials:
Crash-stops
and
low-speed
stopping
trials
can
be
used
to
determine
the
ship's
head
reach
and
maneuverability
during
emergency
situa>ons.
11
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Turning
Circle
The
turning
circle
is
probably
the
oldest
maneuvering
test.
The
test
can
be
used
as
an
indica>on
on
how
well
the
steering
machine
and
rudder
control
performs
during
course-
changing
maneuvers.
It
is
also
used
to
calculate
standard
measures
of
maneuverability
such
as
tac>cal
diameter,
advance
and
transfer.
Matlab
MSS
toolbox
script
ExTurnCircle.m
12
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
The
steady
turning
radius
R
is
perhaps
the
most
interes>ng
quan>ty
obtained
from
the
turning
trials.
Steady-state
analysis
gives:
!"$0
M!" #N!u0 "! ! b! # ! ! N!1!u 0"b!
!Y v N!!Nv Y !"
r! Y v !Nr !mx g u 0"!Nv !Y r !mu 0"
!
13
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Example
12.2
(Determina+on
of
the
Nomoto
Gain
and
Time
Constants)
The
Nomoto
gain
and
>me
constants
can
be
computed
from
a
turning
test
by
using
nonlinear
least-squares
curve
gng.
For
a
step
input
=
0,
we
get:
Tr! " r # K! r!t" ! exp!!t/T"r!0" " #1 ! exp!!t/T"$K! 0
where
K
and
T
are
unknowns.
The
Matlab
MSS
toolbox
script
ExKT.m
ts
this
model
to
a
simulated
step
response
of
the
model
mariner.m
which
is
a
nonlinear
model
of
the
Mariner
class
vessel.
The
results
for
a
step
d0
=
5
deg
and
U
=
7.7
m/s
=
15
knots,
are
K
=
0.09
s-1
,
T
=
22.6
s
The
Norrbin
measure
of
maneuverability
becomes:
P
=
(K/T
)
=
0.87
which
guarantees
good
maneuverability
since
P
>
0.3.
14
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
% ExKT Script for computation of Nomoto gain and time constants % time-series
% using nonlinear least-squares.The rudder input is 5 deg at t!0. tdata ! xout(:,1);
rdata ! xout(:,2)*180/pi;
N ! 2000; % number of samples
h ! 0.1; % sample time
% nonlinear least-squares parametrization:
% x(1)!1/T and x(2)!K
xout ! zeros(N,2);
x ! zeros(7,1);
x0 ! [0.01 0.1]
delta_R ! 5*(pi/180); % rudder angle step input F ! inline(exp(-tdata*x(1))*0 "...
x(2)*(1-exp(-tdata*x(1)))*5,x,tdata)
for i!1:N, x ! lsqcurvefit(F,x0, tdata, rdata);
xout(i,:) ! [(i-1)*h ,x(3)];
xdot ! mariner(x,delta_R); % nonlinear Mariner model
r!t"
! exp!!t/T"r!0" " #1 ! exp!!t/T"$K!
x ! euler2(xdot,x,h); % Euler integration
end 0
15
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Kempf's
Zigzag
Maneuver
The
zigzag
test
was
rst
proposed
by
Kempf
(1932).
20o-20o
Maneuver
(1st
angle
=
rudder
command,
2nd
angle
=
change
of
heading
before
the
rudder
is
reversed)
The
zigzag
>me
response
is
obtained
by
moving
the
rudder
to
20o
starboard
from
an
ini>ally
straight
course.
The
rudder
segng
is
kept
constant
un>l
the
heading
is
changed
20o,
then
the
rudder
is
reversed
20o
to
port.
Again,
this
rudder
segng
is
maintained
un>l
the
ship's
heading
has
reached
20o
in
the
opposite
direc>on.
This
process
con>nues
un>l
a
total
of
5
rudder
step
responses
have
been
completed.
Standardized
by
the
Interna>onal
Towing
Tank
Conference
(ITTC)
in
1963.
For
larger
ships,
ITTC
has
recommended
the
use
of
a
10o-10o
or
a
20o-10o
maneuver
to
reduce
the
>me
and
water
space
required.
16
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
20o-20o Maneuver
17
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
20o-10o Maneuver
18
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Pull-Out
Maneuver
In
1969
Roy
Burcher
proposed
a
simple
test
procedure
to
determine
whether
a
ship
is
straight-line
stable
or
not.
This
test
is
referred
to
as
the
pull-out
maneuver
(12th
ITTC
).
The
pull-out
maneuver
involves
a
pair
of
maneuvers
in
which
a
rudder
angle
of
approximately
20o
is
applied
and
returned
to
zero
aKer
steady
turning
has
been
akained.
Both
a
port
and
starboard
turn
must
be
performed.
During
the
test
the
ship's
rate
of
turn
must
be
measured
or
at
least
calculated
by
numerical
deriva>on
of
the
measured
compass
heading.
Straight-line
stable:
the
rate
of
turn
will
decay
to
the
same
value
for
both
the
starboard
and
port
turn.
Unstable:
the
steady
rate
of
turn
from
the
port
and
starboard
turn
dier.
19
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Pullout
maneuver
for
the
Mariner
class
Pullout
maneuver
for
a
tanker.
No>ce
vessels.
No>ce
that
the
posi>ve
and
nega>ve
that
the
posi>ve
and
nega>ve
curves
do
curves
meet
for
the
stable
ship.
not
meet
for
the
unstable
ship.
20
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Dieudonn's
Spiral
Maneuver
The
direct
spiral
test
was
published
rst
in
1949-1950
by
the
French
scien>st
Jean
Dieudonn.
An
English
transla>on
was
available
in
1953.
The
direct
spiral
maneuver
is
used
to
check
straight-line
stability.
The
maneuver
also
gives
an
indica>on
of
the
degree
of
stability
and
validity
of
linear
theory.
To
perform
the
test
the
ship
should
ini>ally
be
held
on
a
straight
course.
The
rudder
angle
is
then
put
to
25o
starboard
and
held
un>l
steady
yawing
rate
is
obtained.
AKer
this
the
rudder
angle
is
decreased
in
steps
of
5o
and
again
held
un>l
constant
yawing
rates
are
obtained
for
all
the
rudder
angles.
The
procedure
is
performed
for
all
rudder
angles
between
25o
starboard
and
25o
port.
In
the
range
around
zero
rudder
angle
the
step
of
5o
rudder
should
be
reduced
to
obtain
more
precise
values.
The
results
are
ploked
in
an
r-d
diagram.
For
straight-line
unstable
ships
it
is
recommended
to
use
Bech's
reverse
spiral
maneuver
because
of
the
hysteresis
at
small
turning
rates.
21
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
r-d diagram
showing
the
Dieudonne
and
Bech
spirals
for
both
a
stable
and
unstable
ship.
No>ce
the
hysteresis
loop
in
the
Dieudonne
spiral
for
the
unstable
ship
22
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.1.2 Maneuverability
Bech's
Reverse
Spiral
Maneuver
For
unstable
ships
within
the
limits
indicated
by
the
pull-out
maneuver,
Bech's
reverse
spiral
should
be
applied.
The
reverse
spiral
test
was
published
in
1966.
The
ship
steering
characteris>c
is
nonlinear
outside
a
limited
area.
The
mean
value
of
the
required
rudder
deec>on
ss
to
steer
the
ship
at
a
constant
rate
of
turn
rss
is
a
nonlinear
func>on:
! ss ! H B !r ss "
where
HB(rss)
is
a
nonlinear
func>on
describing
the
maneuvering
characteris>c.
This
can
be
understood
by
considering
the
nonlinear
model:
T1 T2 r! " !T 1 " T 2 "r# " KH B !r" $ K!! " T 3 !# "
The
full-scale
test
is
performed
by
measuring
the
necessary
rudder
ac>on
required
to
bring
the
ship
into
a
desired
rate
of
turn.
For
an
unstable
ship
this
implies
that
the
rudder
angle
will
oscillate
about
a
mean
rudder
angle.
The
amplitude
of
the
rudder
oscilla>ons
should
be
kept
to
a
minimum.
AKer
some
>me
a
balance
condi>on
is
reached
and
both
the
mean
rudder
angle
and
rate
of
turn
can
be
calculated.
23
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2 PID Control and Acceleration
Feedback
This
sec>on
discusses
PID
control
design
for
SISO
and
MIMO
mo>on
control
systems
and
it
will
be
shown
how
PID
controllers
can
be
designed
to
exploit
accelera>on
feedback
in
marine
systems.
Accelera>on
feedback
can
be
implemented
in
conjuncture
with
PID-control
without
increasing
the
demand
for
control
energy.
It
is
also
possible
to
increase
(or
even
decrease)
the
mass/iner>a
of
the
closed-loop
system
using
accelera>on
feedback.
In
addi>on
accelera>on
feedback
can
be
used
to
shape
the
system
iner>a
matrix
e.g.
compensa>on
of
added
mass.
By
increasing
the
mass
of
the
system
and
thus
the
iner>a
the
closed-loop
system
will
be
more
robust
to
environmental
disturbances
to
the
price
of
less
maneuverability.
A
mass-damper-spring
system
will
be
used
to
demonstrate
the
main
concept.
Further
reading:
K.-P.
Lindegaard
(2003).
Accelera>on
Feedback
in
Dynamic
Posi>oning
Systems,
PhD
thesis,
Department
of
Engineering
Cyberne>cs,
NTNU
24
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.1 Linear Mass-Damper-Spring Systems
mx! " dx# " kx $ 0 #
d k
2!"n ! m , " 2n ! m
x! " 2!" nx# " "2n x $ 0 #
k
!n ! m natural frequency (undamped oscillator when d ! 0!
d
"! 2m! n
relative damping ratio
Damped
Oscillator
For
a
damped
system
d
>
0,
the
frequency
of
the
oscilla>on
will
be
smaller
than
the
natural
frequency
of
the
undamped
system:
a
a 2 ! ! 2 " ! 2n !! "n ! cos# Im
Undamped
oscillator:
a
=
0
25
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.1 Linear Mass-Damper-Spring Systems
The
upper
plot
shows
a
mass-damper-spring
system
for
dierent
rela>ve
damping
ra>os.
The
lower
plot
shows
the
undamped
oscillator
together
with
a
damped
oscillator.
Matlab
MSS
toolbox:
ExMDS.m
26
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.1 Linear Mass-Damper-Spring Systems
It
is
convenient
to
set:
! ! r !n
where
r
is
a
reduc>on
factor.
For
uncontrolled
marine
craK
a
reduc>on
of
0.5
%
percent
in
the
natural
frequency
is
quite
common
(Fal>nsen
1990):
r ! 1! 0.5
! 0. 995 z = 0.1
m
d! T
28
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.1 Linear Mass-Damper-Spring Systems
29
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.1 Linear Mass-Damper-Spring Systems
Example
12.6
(Linear
Damping
in
Yaw
for
Ships
and
Underwater
Vehicles)
Consider
the
linear
yaw
equa>on:
!I z ! N r! "r! ! N rr " N ! ! # mx! " !d " K d "x# " K p x $ 0 #
Assume
that
the
moment
of
iner>a
I
z
!
N
r!
is
known.
d " Kd
2!" n ! m #
The
linear
damping
coecient
Nr
can
be
es>mated
by
specifying
Kp
the
>me
constant.
"n ! m #
If
we
assume
that
the
closed-loop
yawing
mo>on
has
a
natural
2!" n ! 2! 2#
Tn
period
Tn
=
150
s
and
rela>ve
damping
ra>o
= 1.0,
we
can
d " Kd
compute
an
es>mate
of
the
>me
constant
in
yaw
using:
! m
! 2 #
T
T!
150 s
! 23. 8 s # T ! Tn #
2! ! 1. 0 2!"
Note that: Kd/m 1/T
corresponds to increasing
! N r ! I z ! N r" # 1/T to 2/T in closed loop
T
30
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.2 Acceleration Feedback
Consider
a
mass-damper-spring
system:
Feedback
mx! " dx# " kx $ ! " w ! ! ! PID ! K m x"
where
Km
>
0
is
the
accelera>on
feedback
gain
and
!
PID
represents
a
conven>onal
PID
controller.
This
yields:
x! " d
x# " k
x$
1
! " 1
w
m"Km m"Km m"Km PID m"Km
31
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.2 Acceleration Feedback
This
design
can
be
further
improved
by
introducing
a
frequency-dependent
virtual
mass
(Sagatun,
Fossen
and
Lindegaard,
2001),
that
is:
! ! ! PID ! h m !s"x" The
total
mass
is
m+Km
at
low
frequencies
If
hm(s)
is
chosen
as
a
low-pass
lter:
(s
=
0)
while
at
high
frequencies
(s = )
the
total
mass
m+Km
reduces
to
m.
Km
h m !s" ! 1"T ms
it
is
seen
that:
m ! Km
x" ! dx# ! kx $ ! PID ! w
1!T ms
m total!s"
The
total
mass
is
Km mT ms"!m"K m"
m total !s" ! m " 1"T ms ! T ms"1
32
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.2 Acceleration Feedback
The
lter
hm(s)
can
be
chosen
rather
arbitrarily
depending
on
the
applica>on.
1
x! " g!s"dx# " g!s"kx $ g!s"! PID " g!s"w g!s" ! m"hm!s"
For
instance,
a
low-pass
lter
will
remove
high-
frequency
accelera>on
feedback
components
while
a
notch
structure
can
be
used
to
remove
1st-order
wave-
induced
disturbances.
33
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.3 PID Control with Acceleration
Feedback
Consider
the
mass-damper-spring
system:
mx! " dx# " kx $ !
t
! ! k d x d ! K px" # K dx$ # K i " o x" !!"d! ! h m!s"x%
reference
PID
acceleration
feedforward
control
feedback
For
simplicity,
assume
that
hm(s)
=
Km
and
Ki
=
0.
This
gives
the
PD
controller:
! ! k d x d ! !K px" # K dx$" ! K mx%
The
closed-loop
system
becomes:
k " Kp
!n ! #
m " Km
!m ! Km "x" ! !d ! Kd"x# ! !k ! K p"x$ % w
" ! d " Kd #
2!m " K m "!n
34
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.3 PID Control with Acceleration
Feedback
Pole
placement
(PD
controller):
Let:
x! " 2!"n x# " "2n x $ 0
Solving
for
Kp
and
Kd
using:
!m ! Km "x" ! !d ! Kd"x# ! !k ! K p"x$ % w
yields
Kp ! !m " Km"! 2n ! k, Kd ! 2"!n !m " Km" ! d
The
disturbance
w
can
be
removed
by
adding
integral
ac>on.
35
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.3 PID Control with Acceleration
Feedback
Pole
placement
(PID
controller):
Consider:
1
! ! k d x d ! K p 1 " T d s " T is
x# ! Km x$
where
Td
=
Kd/Kp
and
Ti
=
Kp/Ki
are
the
deriva>ve
and
integral
>me
constants,
respec>vely.
A
rule-of-thumb
is
to
choose:
1 !n
!
Ti
10
which
states
that
the
integrator
is
10
>mes
slower
than
the
natural
frequency
!
n
.
This
yields:
!n !n 2
Ki ! 10 Kp ! 10 !"m " K m#! n ! k$
36
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.3 PID Control with Acceleration
Feedback
The
natural
frequency
!
n
can
be
related
to
the
system
bandwidth
!
b
by
using
the
following
deni>on:
Deni+on
12.1
(Control
Bandwidth)
The
control
bandwidth
of
a
system
y=h(s)u
with
nega>ve
unity
feedback
is
dened
as
the
frequency
!
b
rad/s
at
which
the
loop
transfer
func>on
l(s)=h(s)1
is:
2
|l!j!"|!!!b ! 2 u y
h (s )
or
equivalently,
20 log|l!j!"| !!! b ! !3 dB
From
this
deni>on
it
can
be
shown
that
the
control
bandwidth
of
a
2nd-order
system:
! 2n
h!s" ! s 2"2"! s"! 2 ! ! 1. 0
is
n n
! b ! ! n 1 ! 2" 2 " 4" 4 ! 4" 2 " 2
! b ! 0. 64 ! n
37
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.3 PID Control with Acceleration
Feedback
Main
Result
(PID
Controller
Tuning
Rule):
t
! ! k d x d ! K px" # K dx$ # K i " x" !!"d! ! h m!s"x%
o
38
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.3 PID Control with Acceleration
Feedback
Example
12.7
(Ship
Autopilot
Design)
Consider
the
rst-order
Nomoto
model:
T 1
T!! " !# $ K" m! K, d! K, k!0
Pole
placement
gives:
Km
=
0
(no
angular
accelera>on
feedback
in
yaw)
Km ! 0
!2n T
T " KK m 2 Kp ! "0
Kp ! !n # 0 K
K
2"! n T ! 1
K d ! T " KK m 2"!n " 1 # 0 Kd !
K
"0
K K
! 3T
K i ! T " KK m !3n # 0 Ki ! n " 0
10K
10K
39
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.4 MIMO Nonlinear PID Control with
Acceleration Feedback
The
PID
control
concept
can
be
generalized
to
nonlinear
mechanical
system
by
exploi>ng
the
kinema>c
equa>ons
of
mo>on
in
the
design.
!" ! J!!"# #
M#" # C!#"# # D!#"# # g!!" ! $ % w #
Consider
the
control
law:
! " g!#" ! Hm !s"$% ! J ! !#"! PID
with
accelera>on
feedback
Hm(s),
gravity
compensa>on
g,
and
PID
controller:
t
! PID ! K p"# $ K d"% " K i ! o "#!!"d!
For
simplicity,
assume
that
Ki
=
0
and
Hm(s)
=
Km
(PD
control
with
xed
gain
accelera>on
feedback).
This
yields
the
closed-loop
system:
H!! " !C"!# " D"!# " K !d ""#$! " J! !""K p "# # w K !d !!" ! J ! !!"K d J!!"
!" # ! ! !d H ! M ! Km
40
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.4 MIMO Nonlinear PID Control with
Acceleration Feedback
A
Lyapunov
func>on
candidate
(LFC)
for
this
system
is
1 ! 1 $! $ H ! H! ! 0
V! 2 ! H! " 2 # K p #
kine>c
poten>al
Kp ! K!p " 0
energy
energy
V! " ! ! H!" # $" ! K p$% " ! ! !H!" # J ! !$"K p$%"
Using:
H!! " !C"!# " D"!# " K !d ""#$! " J! !""K p "# # w ! ! C!!"! "0
41
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.4 MIMO Nonlinear PID Control with
Acceleration Feedback
If
w
=
0,
Krasovskii-LaSalle's
Theorem
in
Appendix
A
can
be
used
to
prove
that
the
system
with
nonlinear
PD
control
(Ki = 0)
is
globally
asympto>cally
stable
(GAS).
Moreover,
the
trajectories
will
converge
to
the
set
found
from:
!
V! !x! ! !" ! "D""! # K !d !$#$" " 0
which
is
true
for
!
=
0.
Therefore:
! " !"!", #! : # $ 0#$
Now,
!
0
implies
that
H
!
!
"
!J
!
!""K
p
"#
which
is
nonzero
as
long
as
!"
0.
Hence,
the
system
cannot
get
stuck
at
an
equilibrium
point
value
other
than
!
"
=
0
Since
the
equilibrium
point
(!
"
,
#!
!
"0,
is
the
largest
invariant
set
M
in
!
0!
,
the
equilibrium
point
is
GAS
if
J(h)
is
dened
for
all
h
(no
representa>on
singulari>es).
In
the
case
of
a
constant
disturbance
w
0,
the
system
trajectories
will
converge
to
a
ball
about
the
origin
(0,0).
The
radius
of
the
ball
depends
on
the
magnitude
of
the
disturbance
w.
This
is
referred
to
as
uniform
ul>mate
boundedness
(UUB).
42
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.5 Case Study: Heading Autopilot for
Ships and Underwater Vehicles
wind
loads
wind
feedforward
pilot
yaw angle
input and rate
reference control control compass
model system allocation and gyro
observer and
wave filter
43
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.5 Case Study: Heading Autopilot for
Ships and Underwater Vehicles
The
principal
blocks
of
a
heading
angle
autopilot
system
are:
PID
Feedback
Control:
The
control
system
provides
the
necessary
feedback
signal
to
track
the
desired
yaw
angle
d. The
output
is
the
yaw
moment
N.
Compass/Yaw
Gyro:
The
compass
measures
the
yaw
angle
which
is
needed
for
feedback.
In
some
cases
a
yaw
gyro
is
available
for
yaw
rate
feedbackthat
is,
feedback
from
r .
Observer/Wave
Filter:
In
its
simplest
form
the
1st-order
wave-induced
mo>on
components
w
and
rw are
ltered
out
from
the
measurements
y1= +w and
y2 = r+rw, and
consequently
prevented
from
entering
the
feedback
loop.
This
is
known
as
wave
ltering
where
the
output
of
the
lter
is
the
LF
mo>on
components
and
r.
This
is
necessary
to
avoid
excessive
rudder
ac>on.
In
cases
where
y2 is
not
measured
the
wave
lter
must
be
constructed
as
a
state
observer
so
that
r
can
be
es>mated
from
the
yaw
angle
measurement y1.
Wind
Feedforward:
In
cases
where
a
wind
sensor
is
available
for
wind
speed
and
direc>on,
a
wind
model
can
be
used
for
wind
feedforward.
This
is
oKen
advantageous
since
the
integral
ac>on
term
in
the
PID
controller
does
not
have
to
integrate
up
the
wind
disturbance
term.
However,
an
accurate
model
of
the
wind
force
and
moment
as
a
func>on
of
ship
speed
and
wind
direc>on
is
needed
to
implement
wind
feedforward.
Reference
Feedforward
using
a
reference
model
for
course-changing
maneuvers.
Course
keeping
is
obtained
by
using
a
constant
reference
signal.
Control
Alloca>on:
This
module
distributes
the
output
from
the
feedback
control
system,
usually
the
yaw
moment
N,
to
the
actuators
(rudders
and
in
some
cases
propellers
and
thrusters)
in
an
op>mal
manner.
44
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.5 Case Study: Heading Autopilot for
Ships and Underwater Vehicles
Course
keeping
Reference
model
for
course
changing
(turning)
r! " 1 r # m
T
1 !!
wind " ! N " # T ! m ! I z ! N r" # ! N ! !N " " #
d !N r
Control
System
(PID
Controller
with
Reference
and
Wind
Feedforward)
!! " ! ! ! d is the heading error
! N !s" ! !!" wind # ! FF !s"!K p 1 # Tds # 1 " $ !s" #
Tis
!PID !P ID
!n ! 1 !b #
1! 2" 2 " 4" 4 ! 4" 2 "2
Time
domain:
Kp t K p ! m! 2n
! N !t" ! !!" wind # ! FF $
! K p " ! K p T d r$ !
T " 0 "$ !!"d! #
K d ! m 2"! n ! 1
i T"0
Kd # Ki # 2"! n m
T
!
Ki ! n Kp
10
46
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.5 Case Study: Heading Autopilot for
Ships and Underwater Vehicles
Nomoto
Model:
! 1 " m
1 ! PID #
T
r! " 1 r # m
1 !!
wind " ! N " #
T
1/m
h!s" ! ! e !s" ! #
Reference
feedforward:
PID s!1 " Ts"
Loop
transfer
func>on:
! FF ! m r" d # 1 r d #
T K p !T i T d s 2"T d s"1"
l!s" ! h!s"hPID !s" !
PID
controller
Ti s 2!1"Ts"
1 T i T d s 2"T d s"1
hPID !s" ! Kp 1 " T ds " Ti s ! Kp Ti s
Control
Alloca+on
The
yaw
moment
can
be
generated
by
a
single
rudder:
! N ! !N " " #
or
several
actuators
ui
(i=1...r)
sa>sfying
! N ! b! u,
u !!u 1 ,...,u r" ! #
For
a
rudder
controlled
craK,
the
input
command
is
computed
! ! 1 "N #
!N !
In
the
case
of
several
actuators
we
can
use
the
generalized
inverse
to
compute
u
if
the
scalar
bTb
0
(see
Sec>on
12.3).
This
gives:
u ! b!b! b" !1 ! N #
49
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.6 Case Study: Heading Autopilot
with Acceleration Feedback for Ships and
Underwater Vehicles
The
autopilot
system
can
be
extended
to
include
accelera>on
feedback
by
dieren>a>ng
the
output
of
a
yaw-rate
gyro
rgyro
according
to:
s
r! ! !f"s rgyro Limited
dieren>ator
Yaw dynamics:
r! " 1 r # m
T
1 !!
wind " ! N " #
Control
law:
t
$ ! K d r$ ! K i " "
! N ! !!" wind # ! FF ! K p " $ !!"d! ! K m r% # accelera>on
feedback
0
! FF ! !m # K m " r% d # 1 r d #
T
h ! !s" ! e !s" ! 2 KU #
! s !1 " Ts"
y! p " U! #
h b !s" ! e !s" ! 2 U #
!! " r # b s !1 " Ts"
Tr! # r " K" # b # t
b! " 0 # ! ! !K p e ! K d ! K i " e!""d" #
0
wind
wind loads
feedforward
way-
points
North-East
positions
LOS control control
algorithm system allocation
Yaw rate
and angle
observer and
wave filter
autopilot
53
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.8 Case Study: LOS Path-Following
Control for Ships and Underwater Vehicles
A
marine
craK
can
move
along
the
LOS
vector
with
dierent
direc>ons
of
the
BODY
axes:
Body-Axes
Alignment:
If the sideslip angle is unknown, the body x-axis
of the craft can be aligned with the LOS vector to the price of a tracking offset
(see Section 10.3.2):
Enclosure-based
Steering
(Direct
Assignment
of
the
Course
Angle
d
)
! d ! " d ! atan2!y los ! y, x los ! x" #
!d ! " d ! # #
Autopilot
control
system:
t
! N ! !!" wind # ! FF ! K p "$ ! K d "$% ! K i " "$ !!"d! #
0
! FF ! m r% d # 1 r d #
T
54
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.8 Case Study: LOS Path-Following
Control for Ships and Underwater Vehicles
Body
x-axis
and
LOS
vector
aligned
LOS
guidance
principle
where
the
sideslip
angle
is
chosen
as
zero
!e!t"
! r !e" :! arctan
#
#
where
>
0
is
the
lookahead
(carrot)
distance.
56
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.8 Case Study: LOS Path-Following
Control for Ships and Underwater Vehicles
Lookahead-Based
Steering
with
Integral
Ac+on:
! d ! ! p " ! r !e" #
Path-tangen>al
angle:
!p ! "k #
Velocity-path
rela>ve
angle
(P-type
guidance
law):
! r !e" :! arctan
!e!t"
#
#
Heading
angle:
!d ! "d ! #
PI-type
guidance
law.
! "p " "r ! # # Integral
ac>on
compensates
If
the
sideslip
angle
is
unknown,
a
PI-type
guidance
law:
for
unknown
sideslip
t
! r ! arctan !K p e!t" ! K i " e!""d" # K p ! "1
0
together
with
the
approxima>on
d p+r can
be
used
to
compensate
for
sideslip
.
57
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.10 Case Study: Dynamic Positioning of
Ships and Floating Structures
Control
systems
for
sta>onkeeping
and
low-speed
maneuvering
are
commonly
known
as
dynamic
posi>oning
(DP)
systems.
The
are
designed
for
simultaneously
control
of
the
three
horizontal
mo>ons
(surge,
sway,
and
yaw)
and
they
are
used
in
a
wide
range
of
marine
opera>ons
such
as
sta>onkeeping,
drilling
and
ooading.
DNV
(1990)
denes
a
dynamically
posi>oned
vessel
as
a
free-oa>ng
vessel
which
maintains
its
posi>on
(xed
loca>on
or
predetermined
track)
exclusively
by
means
of
thruster.
It
is,
however,
possible
to
exploit
rudder
forces
in
DP
by
using
the
propeller
to
generate
rudder
liK
forces.
The
rst
DP
systems
were
designed
using
conven>onal
PID
controllers
in
cascade
with
LP
and/or
notch
lters
to
suppress
the
wave-induced
forces.
This
was
done
by
neglec>ng
coupling
terms
(Sargent
and
Cowgill
1976,
Morgan
1978).
From
the
middle
of
the
1970's
a
new
model-based
control
concept
u>lizing
stochas>c
op>mal
control
theory
and
Kalman
ltering
techniques
was
employed
with
the
DP
problem
by
Balchen
(1976).
58
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.10 Case Study: Dynamic Positioning of
Ships and Floating Structures
DP
Model
(VP
coordinates)
! ! !!"wind " R ! !!"!PID #
!" p ! # !" ! R!#"$ # ! ! R!!"! p #
t
M#" " D# ! bp " $ " $ wind " $ waves #b ! R!!" ! b !PID ! K p "# " K d "$ " K i ! "#!!"d! #
p o
t
! ! !!"wind ! R ! !!"K p #$ ! R ! !!"K d R!!" % ! R ! !!"K i # #$!""d" # K !d :! R ! !!"K d R!!" #
K"d 0
For
the
full
state
feedback
case,
asympto>c
stability
follows
using
Lyapunov
arguments.
However,
in
order
to
implement
the
nonlinear
PID
controller
a
state
es>mator
and
wave
lter
must
be
designed;
see
Chapter
11.
GAS
and
convergence
of
the
nonlinear
PID
controller
in
combina>on
with
a
Kalman
lter
cannot
be
guaranteed
but
the
solu>on
has
been
used
in
many
industrial
systems
with
excellent
performance
and
robustness.
Hence,
from
a
59
prac>cal
point
of
view
this
is
a
well
proven
concept.
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.10 Case Study: Dynamic Positioning of
Ships and Floating Structures
In
commercial
DP
systems
it
is
necessary
to
include
the
following
features:
v
Integral
ac+on
to
compensate
for
slowly
varying
disturbances
(bias
term
b)
due
to
ocean
currents
and
wave
driK
forces
(2nd-order
wave-
induced
forces).
v
Wind
feedforward
control
to
compensate
for
mean
wind
disturbances.
Wind
gust
cannot
be
compensated
for
since
the
actuators
do
not
the
have
the
capacity
of
moving
a
large
vessel
in
the
frequency
range
of
the
wind
gust.
v
Wave
ltering
to
avoid
that
1st-order
wave-induced
mo>ons
fed
back
to
the
control
system.
This
is
an
important
feature
since
the
actuators
cannot
move
a
large
vessel
fast
enough
to
suppress
the
disturbances.
v
State
es+mator
for
noise
ltering
and
es>ma>on
of
unmeasured
states,
for
instance
linear
and
angular
velocity.
The
main
tool
for
this
is
the
Kalman
lter,
alterna>vely
nonlinear
and
passive
observers.
v
Op+mal
control
alloca+on
of
thrust
where
the
main
goal
is
to
compute
op>mal
set-points
for
thrusters,
rudders
and
other
actuators
based
on
the
force/moment
commands
generated
by
the
DP
control
Copyright Bjarne Stenberg
60
system.
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.10 Case Study: Dynamic Positioning of
Ships and Floating Structures
Copyright Bjarne Stenberg
61
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.10 Case Study: Dynamic Positioning of
Ships and Floating Structures
Wind
Feedforward
CX
t
! ! !!"wind ! R ! !!"K p #$ ! R ! !!"K d R!!" % ! R ! !!"K i # #$!""d" #
K"d 0
u rw ! u ! u w ! u ! V w cos!! w ! "" # CN
v rw ! v ! v w ! v ! V w sin!! w ! "" #
grw
62
Copyright Bjarne Stenberg
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.10 Case Study: Dynamic Positioning of
Ships and Floating Structures
!" p ! # #
! ! !K d " #
M#" " D# " K p ! p ! bp " $ " $wind " $ waves #
The
addi>onal
spring
Kp
due
to
the
mooring
system
adds
spring
s>ness
in
surge,
sway
and
yaw
described
by
the
parameters
k
>
0,
k
>
0
and
k
0.
M ! M! !
m 11
0
0
m 22 m 23
0
#
0 m 32 m 33
d 11 0 0
D ! D! ! 0 d 22 d 23 #
0 d 32 d 33
K ! diag!k 11 , k 22 , k 33 " #
63
Copyright Bjarne Stenberg
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.11 Case Study: Position Mooring System
for Ships and Floating Structures
Turret
mooring
systems
have
cables
that
are
connected
to
the
turret
via
bearings.
This
allows
the
vessel
to
rotate
around
the
anchor
legs
and
the
rota>onal
spring
can
be
neglected
(k
=
0).
The
turret
can
be
mounted
either
internally
or
externally.
An
external
turret
is
xed,
with
appropriate
reinforcements,
to
bow
or
stern
of
the
ship.
In
the
internal
case
the
turret
is
placed
within
the
hull
in
a
moon
pool.
Turret
mooring
systems
allows
the
vessel
to
rotate
in
the
horizontal
plane
(yaw)
into
the
direc>on
where
environmental
loading
due
to
wind,
waves
and
currents
is
minimal.
This
is
referred
to
as
weathervaning.
Spread
mooring
systems
are
used
to
moor
Floa>ng
Produc>on,
Storage
and
Ooading
(FPSO)
units,
tankers
and
oa>ng
plaorms.
The
system
consists
of
mooring
lines
akached
somewhere
to
the
vessel.
The
drawback
with
a
spread
mooring
system
is
that
it
restrains
the
vessel
from
rota>ng
(k
>
0)
and
hence
weathervaning
is
impossible.
64
Copyright Bjarne Stenberg
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.2.11 Case Study: Position Mooring
System for Ships and Floating Structures
For
thruster
assisted
PM
systems
the
thrusters
are
complementary
to
the
mooring
system
and
the
main
idea
is
to
provide
the
system
with
addi>onal
damping
by
using
a
D-controller:
! ! !K d " #
Integral
ac>on
is
not
used
in
PM
systems,
since
the
ship
is
allowed
to
move
within
a
limited
radius
about
the
equilibrium
point
or
eld-zero
point
(FZP).
Copyright Bjarne Stenberg
If
the
vessel,
moves
outside
the
specied
radius
of
the
mooring
system,
a
stabilizing
control
system
of
PD-type
can
be
used
to
drive
the
vessel
inside
the
circle
again.
It
is
op>mal
to
use
addi>onal
thrust
to
stay
on
the
circle
rather
than
move
the
vessel
to
the
FZP.
In
good
weather,
no
control
ac>on
is
needed
since
the
vessel
is
free
to
move
within
the
circle.
65
Lecture Notes TTK 4190 Guidance and Control of Vehicles (T. I. Fossen)
12.3 Control Allocation
For
marine
craK
moving
in
n
DOF
it
is
necessary
to
distribute
the
generalized
control
forces
! !
!
n
given
by:
! " Bu
to
the
actuators
in
terms
of
control
inputs
u
!
!
r
From Section 9.4:
r
n
fully
actuated
control
r
<
n
underactuated
control
The
input
matrix
B
is
square
for
r
=
n,
that
is
the
number
of
actuators
is
equal
to
n
DOF.
Physical
limita>ons
like
input
amplitude
and
rate
satura>ons
imply
that
a
constrained
op>miza>on
problem
must
be
solved.
66
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Some
actuators
that
can
be
rotated
at
the
same
>me
as
they
produce
control
forces.
67
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Main
propellers:
the
main
propellers
of
the
vessel
are
mounted
aK
of
the
hull
usually
in
conjunc>on
with
rudders.
They
produce
the
necessary
force
Fxi
in
the
x-direc>on
needed
for
transit.
Tunnel
thrusters:
transverse
thrusters
going
through
the
hull
of
the
vessel.
The
propeller
unit
is
mounted
inside
a
transverse
tube
and
it
produces
a
force
Fyi
in
the
y-direc>on.
Tunnel
thrusters
are
only
eec>ve
at
low
speed
which
limits
their
use
to
low-speed
maneuvering
and
dynamic
posi>oning.
tunnel
thrusters
Fx5
main
Fy3
Fy2
Fy1
x
propellers
Fx4
68
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Azimuth
thrusters:
thruster
units
that
can
be
rotated
an
angle
about
the
z-axis
and
produce
two
force
components
(Fx1,
Fy1)
in
the
horizontal
plane
are
usually
referred
to
as
azimuth
thrusters.
Azimuth
thrusters
are
usually
mounted
under
the
hull
of
the
vessel
and
the
most
sophis>cated
units
are
retractable.
Azimuth
thrusters
are
frequently
used
in
DP
since
they
can
produce
forces
in
dierent
direc>ons
leading
to
an
overactuated
control
problem
that
can
be
op>mized
with
respect
to
power
and
possible
failure
situa>ons.
Fx1
x
Fy1
F1
y
69
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Stabilizing
ns:
stabilizing
ns
are
used
for
damping
of
ver>cal
vibra>ons
and
roll
mo>ons.
They
produce
a
force
Fzi
in
the
z-direc>on
which
is
a
func>on
of
the
n
deec>on.
For
small
angles
this
rela>onship
is
linear.
Fin
stabilizers
can
be
retractable
allowing
for
selec>ve
use
in
bad
weather.
The
liK
forces
are
small
at
low
speed
so
the
most
eec>ve
opera>ng
condi>on
is
in
transit.
Ad
rudders:
rudders
are
the
primary
steering
device
for
conven>onal
vessels.
They
are
located
aK
of
the
vessel
and
the
rudder
force
Fy1
will
be
a
func>on
of
the
rudder
deec>on.
A
rudder
force
in
the
y-direc>on
(liK
is
perpendicular
to
speed
U
while
drag
is
in
the
direc>on
of
the
speed)
will
produce
a
yaw
moment
which
can
be
used
for
steering
control.
Fy1
x
Rudder
force
1
Fy1 = CL ( ) ARU 2 sin( R ) k R y
70
2
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Control
surfaces:
control
surfaces
can
be
mounted
at
dierent
loca>ons
to
produce
liK
and
drag
forces.
For
underwater
vehicles
these
could
be
ns
for
diving,
rolling,
and
pitching,
rudders
for
steering,
etc.
Water
jets:
water
jets
is
an
alterna>ve
to
main
propellers
aK
of
the
ship.
They
are
usually
used
for
high-speed
craK.
71
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
The
control
force
due
to
a
propeller,
a
rudder,
or
a
n
is
(assuming
linearity):
72
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Example
(Linear
model
describing
nonlinear
monotonic
control
forces):
Consider
the
linear
model:
F! ku
This
model
can
also
be
used
to
describe
nonlinear
monotonic
control
forces.
For
instance,
if
the
rudder
force
F
is
quadra>c
in
rudder
angle
,
that
is:
F ! k !|!|
Choosing
u ! !|!| ! ! sign!u" |u|
73
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
The
linear
control
force
F
=
ku
for
the
dierent
actuators
can
be
represented
in
terms
of
a
force
vector
f
according
to
the
following
table:
74
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
The
control
forces
and
moments
f
=
[f,...,fn]T
are
conveniently
expressed
as:
f ! Ku #
The
actuator
forces
and
moments
relate
to
the
control
forces
and
moments
by:
! ! T!""f T() is
the
thrust
congura>on
matrix.
! T!""Ku #
where
u
and
are
control
inputs
dened
by
the
vectors:
!"!! 1 , . . . , ! p! ! , u""u 1, . . . , ur ! !
75
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Thrust
congura+on
matrix
for
nonrotatable
thrusters:
The
thrust
congura>on
matrix
is
dened
in
terms
of
a
set
of
column
vectors
t
.
n
i
!!
T ! !t 1 , . . . , t r" ! constant
In 4 DOF (surge, sway, roll, and yaw) the column vectors take the following form:
1 0
0
0 1 0
ti ! , ti ! , ti !
0 !l zi l yi
l yi l xi 0
tunnel thruster
main propeller stabilizing fin
and aft rudder
76
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Example:
3-DOF
mo+ons
(surge,
sway
and
yaw):
0 0 0 1 1
T! 1 1 1 0 0 # K ! diag!K 1 , K 2 , K 3 , K 4 , K 5 " #
l x1 l x2 l x3 l y4 l y5
l
x1
l x3
l x2
Fx5
l y5 Fy3
Fy2
Fy1
x
l y4
Fx4
main
y
tunnel
thrusters
propellers
77
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Thrust
congura+on
matrix
for
rotatable
thrusters:
For
marine
craK
equipped
with
azimuth
thrusters
in
combina>on
with
nonrotatable
thruster:
T!!!" "t 1, . . . , t r"
In 4 DOF (surge, sway, roll, and yaw) the column vectors take the following form:
cos !! i " 1 0 0
sin !! i " 0 1 0
ti ! , ti ! , ti ! , ti !
!l zi sin !! i " 0 ! l zi l yi
l xi sin !! i " ! l yi cos !! i " l yi l xi 0
azimuth main tunnel thruster stabilizing
thruster propeller and aft rudder fin
78
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Extended
thrust
congura+on
matrix
for
rotatable
actuators:
The
rotatable
thrusters
can
be
treated
as
two
forces.
Consider
a
rotatable
thruster
in
the
horizontal
plane
(the
same
methodology
can
be
used
for
thrusters
that
can
be
rotated
in
the
ver>cal
plane):
u ix ! u i cos!! i " #
u iy ! u i sin!! i " #
79
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Example
12.8
(Thrust
congura+on
matrix
for
an
underwater
vehicle):
The forces and moment in surge, sway and yaw, satisfy:
! ! T!""Ku #
"
K1 0 0 0 u1
X cos!! 1 " cos!! 2 " 1 1
0 K2 0 0 u2
Y ! sin!! 1 " sin!! 2 " 0 0 #
0 0 K3 0 u3
N l x1 sin!! 1 " l x2 sin!! 2 " !l y3 !l y4
0 0 0 K4 u4
NB!
This
expression
is
nonlinear
in
i
80
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.1 Actuator Models
Example
9.14
(Cont)
Extended thrust configuration representation:
! e ! Te K e u e #
"
K1 0 0 0 0 0 u 1x
0 K1 0 0 0 0 u 1y
X 1 0 1 0 1 1
0 0 K2 0 0 0 u 2x
Y ! 0 1 0 1 0 0 #
0 0 0 K2 0 0 u 2y
N 0 l x1 0 l x2 !l y3 !l y4
0 0 0 0 K3 0 u3
For
marine
craK
where
the
congura>on
matrix
T
is
square
(r
=
n)
or
nonsquare
(r
>
n),
that
is
there
are
equal
or
more
control
inputs
than
controllable
DOF,
it
is
possible
to
nd
an
op>mal
distribu>on
of
control
forces:
f = Ku
for
each
DOF
by
using
an
explicit
method.
Solu+on:
Unconstrained
least-squares
(LS)
op>miza>on
problem
82
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.2 Unconstrained Control Allocation
for Nonrotatable Actuators
Unconstrained
least-squares
(LS)
op+miza+on
problem
(Fossen
1991)
subject to: ! ! Tf ! 0
! ! 2!TW!1 T! ! !1 "
f! 1
2 W!1 T! !
Generalized
inverse:
f ! W!1 T! !TW!1 T! ! !1 ! #
" T!w ! # T!w ! W!1 T! !TW!1 T! ! !1
For
the
case
W
=
I,
that
is
equally
weighted
Control
alloca>on
control
forces,
reduces
to
the
Moore-Penrose
pseudoinverse:
f
=
Ku
u ! K !1 T!w "
T! ! T" !TT" "!1
84
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.3 Constrained Control Allocation for
Nonrotatable Actuators
In
industrial
systems
it
is
important
to
minimize
the
power
consump>on
by
taking
advantage
of
the
addi>onal
control
forces
in
an
overactuated
control
problem.
From
a
safety-cri>cal
point
of
view
it
is
also
important
to
take
into
account
actuator
limita>ons
like
satura>on,
wear
and
tear
as
well
as
other
constraints.
In
general,
this
leads
to
a
constrained
op>miza>on
problem.
This
problem
can
be
solved
explicit
(no
itera>ons)
using
Piece-Wise
Linear
Func>ons
P.
Tndel,
T.
A.
Johansen
and
A.
Bemporad.
An
algorithm
for
mul>-parametric
quadra>c
programming
and
explicit
MPC
solu>ons,
IEEE
Conf.
Decision
and
Control,
Orlando,
Vol.
2,
pp.
1199-1204,
2001
An
on-line
algorithm
is
presented
in:
P.
Tndel,
T.
A.
Johansen
and
A.
Bemporad.
An
algorithm
for
mul>-parametric
quadra>c
programming
and
explicit
MPC
solu>ons,
Automa)ca,
Vol.
39,
pp.
489-497,
2003
85
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.3 Constrained Control Allocation for
Nonrotatable Actuators
J !min !f ! Wf ! s ! Qs !!f"" Op+miza+on
criterion
f,s,f"
subject to:
min max
This
formula>on
ensures
that
the
constraints
f i ! f i ! f i (i ! 1,...,r!
are
sa>sed,
if
necessary
by
allowing
the
resul>ng
generalized
force
Tf
to
deviate
from
its
specica>on.
86
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.3 Constrained Control Allocation for
Nonrotatable Actuators
Global
Solu+on:
The
global
solu>on
can
be
computed
o-line
using
mul>-parametric
QP
algorithms;
see
Tndel
et
al.
(2001,
2003).
Local
Solu+ons:
Explicit
Solu+ons
based
on
Minimum
Norm
and
Null-Space
Methods:
In
ight
and
aerospace
control
systems,
the
problems
of
control
alloca>on
and
satura>ng
control
have
been
addressed
by
Durham
(1993,
1994a,
1994b).
They
also
propose
an
explicit
solu>on
to
avoid
satura>on
referred
to
as
the
direct
method.
By
no>cing
that
there
are
innite
combina>ons
of
admissible
controls
that
generates
control
forces
on
the
boundary
of
the
closed
subset
of
akainable
controls,
the
direct
method
calculates
admissible
controls
in
the
interior
of
the
akainable
forces
as
scaled
down
versions
of
the
unique
solu>ons
for
force
demands.
87
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Case Study: CyberShip I
Explicit optimal constrained least-squares solution (nonrotatable thrusters)
Supply
vessel
scale
1:70
equipped
with
4
azimuth
thruster.
The
controls
are:
RPM
controlled
Azimuth
angles
Azimuth
angles
are
xed
in
the
experiment
Problem:
compute
the
op>mal
controls
u
=
[u1,u2,u3,u4]T
when
u3
saturates
at
0.1
N.
Reference:
T.
A.
Johansen,
T.
I.
Fossen,
P.
Tndel,
Ecient
Op>mal
Constrained
Control
Alloca>on
via
Mul>-Parametric
Programming.
AIAA
Journal
of
Guidance,
Dynamics
and
Control,
2005.
88
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Case Study: CyberShip I
89
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Case Study: CyberShip I
90
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
DP Experiments: Slowly Increasing Wind Loads
The
increase
in
wind
forces
increases
the
demand
for
thrust
and
possible
satura>on
in
the
control
u
91
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
DP Experiments: Slowly Increasing Wind Loads
92
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
DP Experiments: Slowly Increasing Wind Loads
93
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
DP Experiments: Position Change
94
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
DP experiments: Position Change
95
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.4 Constrained Control Allocation for
Azimuth Thrusters
96
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.4 Constrained Control Allocation for
Azimuth Thrusters
The
control
alloca>on
problem
for
vessels
equipped
with
azimuth
thrusters
is
in
general
a
nonconvex
op>miza>on
problem
that
is
hard
to
solve.
The
primary
constraint
is:
The
azimuth
angles
a
must
be
computed
at
each
sample
together
with
the
control
inputs
u
Other
problems:
97
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.4 Constrained Control Allocation for
Azimuth Thrusters
r
!
J ! min
f,!,s
! P" i |f i |3/2 # s! Qs # !! " ! 0" !"!! " ! 0" # " # det!T!!"W "1 T! !!""
#
i!1
The
resul>ng
QP
criterion
is
(Johansen,
Fossen
and
Berge,
2004):
!
J ! min !f 0 # "f" ! P!f 0 # "f" # s ! Qs # "" ! #"" # ! "" #
"f,!",s !" " # det!T!""W"1 T! !""" "0
subject to:
!
s $ T!" 0 "!f $ !" !T!" 0 "f " " 0,f 0
!" ! % " T!" 0 "f 0
f min " f 0 # f # f max " f 0
" min " " 0 # !" ! " max " " 0
"" min # !" ! !" max
99
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.4 Constrained Control Allocation for
Azimuth Thrusters
Itera+ve
solu+ons
using
linear
programming:
Linear
approxima>ons
to
the
thrust
alloca>on
problem
has
been
discussed
by
Webster
(1999)
and
Lindfors
(1993).
100
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.4 Constrained Control Allocation for
Azimuth Thrusters
Explicit
solu+on
using
the
singular
value
decomposi+on
and
ltering
techniques:
An
alterna>ve
method
to
solve
the
constrained
control
alloca>on
problem
is
to
use
the
singular
value
decomposi>on
(SVD)
and
a
ltering
scheme
to
control
the
azimuth
direc>ons
such
that
they
are
aligned
with
the
direc>on
where
most
force
is
required,
paying
aken>on
to
singulari>es
(Srdalen
et
al.
1997).
Results
from
sea
trials
have
been
presented
in
(Srdalen
et
al.
1997).
A
similar
technique
using
the
damped-least
squares
algorithm
has
been
reported
in
Berge
and
Fossen
(1997)
where
the
results
are
documented
by
controlling
a
scale
model
of
a
supply
vessel
equipped
with
four
azimuth
thrusters.
101
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Case Study: Nonlinear Programming Approach:
Power Optimality and Singularity Avoidance
Constraints:
We
will
consider
a
marine
craK
with
four
azimuth
thrusters
(-25o
to
25o
azimuth,
1
deg/s
rate
constraints)
103
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Simulation Example
Blue
op>mal
Green
op>mal
without
singularity
avoidance
Red
pseudo-inverse
104
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Simulation Example
Blue
op>mal
Green
op>mal
without
singularity
avoidance
Red
pseudo
inverse
105
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Simulation Example
Blue
op>mal
Green
op>mal
without
singularity
avoidance
Red
pseudo
inverse
106
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
Simulation Example
Blue
op>mal
Green
op>mal
without
singularity
avoidance
Red
pseudo
inverse
107
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.5 Case Study: DP Control Allocation
System
Most
DP
ships
use
thrusters
to
maintain
their
posi>on
and
heading.
108
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.5 Case Study: DP Control Allocation
System
Most
DP
ships
use
thrusters
to
maintain
their
posi>on
and
heading.
main propeller
F!122, p" ! 370|p|p
F!236, p" ! 137|p|p
tunnel thruster F!160, p" ! 655|p|p
Measured
thrust
for
a
supply
vessel
equipped
with
main
and
tunnel
thrusters.
Asterisks
denote
the
measured
data
while
the
solid
lines
are
least-squares
ts
to
the
quadra>c
thrust
func>on
.
110
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.5 Case Study: DP Control Allocation
System
Example
12.10
(supply
vessel
thrust
congura+on
and
force
coecient
matrices)
Computa>on
of
T() can
be
illustrated
by
considering
a
supply
vessel
equipped
with
two
main
propellers
(aK
of
the
ship),
two
tunnel
thrusters
and
two
azimuth
thrusters
which
can
be
rotated
to
arbitrary
angles
and
,
and
therefore
produce
thrust
in
dierent
direc>ons
! ! T!""f # CP: u ! !|p 1 |p 1 , |p 2 |p 2 , . . . , |p r |p r " ! , (or u ! !p 1 , p 2 , . . . , p r " ! )
#
f ! Ku # FP: u ! !|n 1 |n 1 , |n 2 |n 2 , . . . , |n r |n r " !, (or u ! !n 1 , n 2 , . . . , n r " !)
We
have
8
control
variables
(6
rpm
set-points
and
2
azimuth
angles)
for
3
DOF.
111
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.5 Case Study: DP Control Allocation
System
u 1 , ! 1 fore azimuth thruster u 4 aft tunnel thruster
u2 fore tunnel thruster u 5 starboard main propeller
u 3 , ! 2 aft azimuth thruster u 6 port main propeller
K ! diag!K 1 , K 2 , K 3 , K 4 , K 5 , K 6 " #
cos#! 1 $ 0 cos#! 2 $ 0 1 1
T#!$ ! sin#! 1 $ 1 sin#! 2 $ 1 0 0 #
l 1 sin#! 1 $ l 2 l 3 sin#! 2 $ l 4 !l 5 !l 6
112
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.5 Case Study: DP Control Allocation
System
DP
Thrust
congura>on
matrices
for
supply
vessel:
! ! T!""Ku #
"
X cos!! 1 " 0 cos!! 2 " 0 1 1
Y ! sin!! 1 " 1 sin!! 2 " 1 0 0
N l 1 sin!! 1 " l 2 l 3 sin!! 2 " l 4 !l 5 !l 6
K 0
0
0 0 0 u1
1
0 K2 0 0 0 0 u2
0 0 K3 0 0 0 u3
# #
0 0 0 K4 0 0 u4
0 0 0 0 K5 0 u5
0 0 0 0 0 K6 u6
113
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)
12.3.5 Case Study: DP Control Allocation
System
Example
12.11
(supply
vessel
thrust
alloca+on)
In
order
to
implement
a
DP
control
system
for
the
supply
a
thrust
alloca>on
algorithm
is
needed.
The
simplest
algorithm
is
the
generalized
inverse:
u ! K !1 T! !!"" #
T! !!" ! W!1 T" !!"#T!!"W!1 T" !!"$ !1 # most
avoid
singular
combina>on
of
i
where
W
=
WT
>
0
is
a
posi>ve
denite
weigh>ng
matrix,
usually
chosen
to
be
diagonal.
W
should
be
selected
so
that
using
the
tunnel
and
azimuth
thrusters
is
less
expensive
(small
Ki-value)
than
using
the
main
propellers
(large
Ki-value).
This
solu>on
is
easy
to
use
for
constant
azimuth
angles
.
As
soon
as
is
allowed
to
vary
or
the
control
inputs
saturates,
an
strategy
for
this
must
be
developed.
This
signicantly
complicates
the
control
alloca>on
soKware.
For
system
with
quadra>c
thrust
characteris>cs,
the
computed
ui-values
must
be
mapped
to
pitch
or
rpm
commands.
If
ui = |pi|pi,
it
is
straighorward
to
verify
that:
p i ! sign!u i " u i #
114
Lecture Notes TTK 4190 Guidance and Control (T. I. Fossen)