development and implementation of an adaptive …
TRANSCRIPT
Florida Atlantic University
Boca Raton, Florida
December 2010
DEVELOPMENT AND IMPLEMENTATION OF AN ADAPTIVE CONTR OLLER FOR
STATION KEEPING OF SMALL OUTBOARD-POWERED VESSELS
by
Aaron D. Fisher
A Thesis Submitted to the Faculty of
The College of Engineering and Computer Science
in Partial Fulfillment of the Requirements for the Degree of
Master of Science
ii
Copyright © 2010 by Aaron D. Fisher
iv
ACKNOWLEDGEMENTS
I would like to thank my thesis advisor, Dr. James VanZwieten, for his patience and
guidance in the process of this work (And allowing me to extend my trip to Australia), as
well as the other members of my committee for taking time out of their schedules to help
me in my research.
I am truly grateful for my family; your support has been such a help through the years
I’ve been in school.
I would like to thank John Kielbasa and Ed Henderson from the Electronics Lab for
their excellent advice and help in getting the systems installed on the boats. I also would
like to thank Patrick Bordner for his help with wiring and assembling electronics;
Brenton Mallen for help in machining parts; and Tom Furfaro for helping solve any
LabVIEW problem I could come up with.
Finally, I have to thank the Office for Naval Research and the Center for Ocean
Energy Technology at Florida Atlantic University for funding this work and for use of
resources for installation and validation testing of this system.
v
ABSTRACT
Author: Aaron Fisher Title: Development and Implementation of an Adaptive Controller for
Station Keeping of Small Outboard-Powered Vessels Institution: Florida Atlantic University Thesis Advisors: Dr. Nikolaos Xiros, Dr. James VanZwieten Degree: Master of Science Year: 2010
In this thesis multiple controllers are developed which command a small boat with
twin tied outboard motors to hold a desired position. In the process of developing a
controller to hold a position, controllers were first developed which follow a desired
heading or path over ground with the motors outputting constant thrust. These heading
and path following controllers were tuned and tested in a numerical simulation, then
validated on the R/V Lee and Ocean Power vessels through sea trials in the Atlantic
Ocean. After successful path following trials were performed, station keeping algorithms
were developed and tuned in the numerical simulation, now with heading and thrust of
the vessel both being variables to be controlled. After tuning in the numerical simulation,
the Ocean power vessel was outfitted with systems for controlling throttle and steering
with sea trials conducted in the Atlantic Ocean for station keeping.
vi
TABLE OF CONTENTS
LIST OF TABLES ...............................................................................................................x
LIST OF FIGURES ......................................................................................................... xiii
NOMENCLATURE ..........................................................................................................xx
1 INTRODUCTION ............................................................................................................1
1.1 Applications for Station Keeping on Small Vessels ............................................1
1.2 Previous Work in Station Keeping ......................................................................3
1.3 Contributions of Thesis ........................................................................................4
1.4 Contents of Thesis................................................................................................5
2 DEVELOPMENT AND TESTING PLATFORMS .........................................................6
2.1 Comprehensive General Simulation ....................................................................6
2.1.1 Overview of Simulation ...................................................................................7
2.1.2 Modifications to Simulation ............................................................................8
2.2 R/V Lee ................................................................................................................8
2.3 Ocean Power ......................................................................................................10
3 DEVELOPMENT OF HEADING AND PATH FOLLOWING
CONTROLLERS ............................................................................................................11
3.1 Constant Heading Following Controllers ..........................................................11
vii
3.1.1 Heading Following Control Algorithms ........................................................12
3.1.1.1 Fixed Gain PID Controller .....................................................................12
3.1.1.2 Adaptive PID Heading Following Controller ........................................13
3.1.1.3 Single Layer Neuro-Adaptive Heading Following Controller...............14
3.1.1.4 Fixed Gain PID Controller with Adaptive Augmentation .....................15
3.1.2 Simulation Results for Heading Following Controllers.................................16
3.2 Path Following Control Algorithms ..................................................................21
3.2.1 Changes to Heading Following Controller ....................................................22
3.2.2 Simulation Results for Path Following Controllers .......................................22
3.2.2.1 Path Following with 2000 Newtons Thrust per Engine .........................23
3.2.2.2 Path Following with 1200 Newtons Thrust per Engine .........................27
3.2.2.3 Path Following Conclusions ..................................................................30
4 SEA TRIALS OF HEADING AND PATH FOLLOWING ...........................................32
4.1 Control System for Steering...............................................................................33
4.1.1 Overview of Vessel Steering Systems ...........................................................33
4.1.2 Engine Angle Measurement ...........................................................................35
4.1.3 Hardware and Software for System Implementation .....................................37
4.1.4 Measuring and Controlling Engine Angle .....................................................38
4.1.4.1 R/V Lee ..................................................................................................38
4.1.4.2 Ocean Power ..........................................................................................44
4.2 RV Lee Heading- and Path-Following Trials ....................................................48
4.2.1 R/V Lee Heading Following Results .............................................................49
4.2.1.1 Fixed Gain PID Controller .....................................................................49
viii
4.2.1.2 Adaptive PID Controller ........................................................................52
4.2.1.3 Fixed Gain PID Controller with Adaptive Augmentation .....................57
4.2.1.4 Heading Following Conclusions ............................................................61
4.2.2 R/V Lee Path Following Results ...................................................................62
4.2.2.1 Fixed Gain PID Controller .....................................................................63
4.2.2.2 Adaptive PID Controller ........................................................................66
4.2.2.3 Fixed Gain PID with Adaptive Augmenting Controller ........................70
4.2.2.4 Path Following Conclusions ..................................................................74
4.3 Ocean Power Heading and Path Following Trials .............................................75
4.3.1 Ocean Power Heading Following ..................................................................76
4.3.1.1 Fixed Gain PID Controller .....................................................................76
4.3.1.2 Adaptive PID Heading Following .........................................................78
4.3.1.3 Augmenting PID Heading Following Trial ...........................................81
4.3.2 Ocean Power Path Following.........................................................................85
4.3.2.1 Fixed Gain PID Path Following Trial ....................................................85
4.3.2.2 Augmenting PID Path Following Trial ..................................................87
4.3.2.3 Adaptive PID Path Following Trial .......................................................91
4.3.3 Heading and Path Following Conclusions .....................................................98
5 STATION KEEPING CONTROLLER DEVELOPMENT ...........................................99
5.1 Station Keeping Controller Development ..........................................................99
5.1.1 Calculation of Desired Heading ...................................................................101
5.1.2 Fixed Gain PID Throttle Controller .............................................................101
5.1.3 PID Throttle Controller with Adaptive Differential Thrust .........................102
ix
5.1.4 Fixed Gain PID Engine Angle Controller ....................................................103
5.1.5 PID Steering Controller with Adaptive Augmenting Gains ........................104
5.2 Station Keeping Controller Simulation Results ...............................................105
5.2.1 Two Meters per Second Wind .....................................................................106
5.2.2 5 Meters per Second Wind Case ..................................................................111
5.2.3 Ten Meters per Second Wind ......................................................................115
5.2.4 Station Keeping Simulation Results Summary ............................................119
6 STATION KEEPING SEA TRIALS ............................................................................121
6.1 Control System for Throttle .............................................................................121
6.2 Station Keeping Results on Ocean Power .......................................................128
6.2.1 PID-PID Controller Station Keeping Trial ..................................................128
6.2.2 PID-Adaptive Controller Station Keeping Trial ..........................................133
6.2.3 Augmenting-Adaptive Controller Station Keeping Trial ............................139
6.2.4 Station Keeping Conclusions .......................................................................146
7 CONCLUSION AND FUTURE WORK .....................................................................148
8 REFERENCES .............................................................................................................151
x
LIST OF TABLES
Table 3.1: Fixed gain PID heading following controller gains ..........................................12
Table 3.2: Adaptive controller gains and leakage terms ....................................................13
Table 3.3: Adaptive controller gains and leakage terms ....................................................14
Table 3.4: PID with augmentation controller gains and leakage terms .............................16
Table 3.5: Quantification of Errors and Control Signal over Final 300 Seconds of
Simulation .......................................................................................................................21
Table 3.6: First layer PID controller gains.........................................................................22
Table 3.7: Quantification of Errors in vessel simulations over the final 300 seconds.......31
Table 4.1: Standard Deviation of Engine Angle Error ......................................................44
Table 4.2: Standard Deviation of Engine Angle Error ......................................................47
Table 4.3: List of PID Gains used for each run .................................................................49
Table 4.4: Quantification of Engine Angle and Heading Errors .......................................51
Table 4.5: Adaptation Rates and Sigma Terms for Adaptive PID Controller Runs ..........53
Table 4.6: Quantification of Engine Angle and Heading Errors .......................................56
Table 4.7: Fixed Gains and Adaptation Rates for Augmenting Controller Trial ...............57
Table 4.8: Quantization of Engine Angle and Heading Errors ..........................................60
Table 4.9: Quantification of Errors from each Controller’s Best Run ...............................61
xi
Table 4.10: P,I,D Gains for Path Following Trial..............................................................63
Table 4.11: Standard Deviation of Heading and Cross-Track Errors, and Average
Heading ...........................................................................................................................65
Table 4.12: Adaptation Rates and Sigma Terms for Adaptive PID Controller Trial ........66
Table 4.13: Standard Deviation of Heading and Cross-Track Errors, and Average
Heading ...........................................................................................................................69
Table 4.14: Fixed Gains and Adaptation Rates for Augmenting Controller Trials ...........70
Table 4.15: Standard Deviation of Heading and Cross-Track Errors, and Average
Heading ...........................................................................................................................73
Table 4.16: Standard Deviation of Heading and Cross-Track Errors, and Average
Heading from the Best Trials, Each Controller ..............................................................75
Table 4.17: PID Heading Following Control Gains ..........................................................77
Table 4.18: Quantification of Error, Fixed Gain PID Heading Following ........................78
Table 4.19: Adaptive PID Heading Following Gains ........................................................79
Table 4.20: Quantification of errors, Adaptive PID Heading Following ..........................80
Table 4.21: Augmenting PID Heading Following Gains ...................................................82
Table 4.22: Quantification of errors, Adaptive PID Heading Following ..........................84
Table 4.23: Fixed gain PID Path following gains ..............................................................85
xii
Table 4.24: Quantification of Errors for PID Path Following ...........................................87
Table 4.25: Augmenting Controller Gains for Path Following Trials ...............................88
Table 4.26: Quantification of Errors, Augmenting PID Path Following ...........................88
Table 4.27: Adaptive Gains used for Path Following Trials .............................................92
Table 4.28: Quantification of Errors, Adaptive PID Path Following Trials ......................95
Table 5.1: PID Throttle Control Gains ............................................................................102
Table 5.2: Adaptive PID Throttle Controller Gains.........................................................103
Table 5.3: PID Steering Controller Gains ........................................................................104
Table 5.4: PID with Adaptive Augmentation Controller Gains and Leakage Terms ......105
Table 5.5: Quantification of Errors Over Final 300 Seconds of Simulation ...................120
Table 6.1: Tested Relations between Throttle Positions and Voltages on RV Ocean
Power ............................................................................................................................123
Table 6.2: Tested relations between Main and Sub Voltages and RPM from Idle to
2000 RPM .....................................................................................................................123
Table 6.3: Gains for PID-PID Station Keeping Controller ..............................................129
Table 6.4: Gains for PID-Adaptive Station Keeping .......................................................134
Table 6.5: Gains used for Augmenting-Adaptive Station Keeping Trial ........................140
Table 6.6: Quantification of Errors for all Station Keeping Trials ..................................147
xiii
LIST OF FIGURES
Figure 2.1: Photo of RV Lee ................................................................................................9
Figure 2.2: Photo of Ocean Power Vessel .........................................................................10
Figure 3.1: Plots of Heading and Desired Heading over Time following Constant
Heading ...........................................................................................................................18
Figure 3.2: Plots of P, I, and D gains over time .................................................................19
Figure 3.3: Plots of Control Signal (Engine Angle) for each controller following
constant heading..............................................................................................................19
Figure 3.4: Plot of Heading and Desired Heading, 2nd Layer, 2000 N Thrust .................24
Figure 3.5: Plot of Gains for 2nd Layer Controller, 2000N Thrust ...............................25
Figure 3.6: Plot of Engine Angle over Time, 2000 N Thrust ............................................26
Figure 3.7: Plot of North Displacement over Time, 2nd Layer, 2000 N Thrust ...............26
Figure 3.8: Plot of actual and desired heading, for 1200 N ...............................................28
Figure 3.9: Plot of control signal over time, 1200 N Constant Thrust...............................29
Figure 3.10: Plot of Gains over time, 1200 N Constant Thrust .........................................29
Figure 3.11: Plot of North Displacement over time, 1200 N Constant Thrust ..................30
Figure 4.1: Schematic of Hydraulic Steering System on R/V Lee and Ocean Power .......34
Figure 4.2: Photo of Potentiometer Setup on Outboard Motor ..........................................37
xiv
Figure 4.3: Electronics Box for Path-Following Controller (On R/V Lee) .......................38
Figure 4.3: Plot of Engine Angle versus Binary Values and Linearly Fitted
Trendline, R/V Lee .........................................................................................................40
Figure 4.4: Plots of Desired and Actual Engine Angle, for Square Wave.........................42
Figure 4.5: Plots of Desired and Actual Engine Angle, for Sine Function ........................43
Figure 4.6: Plot of Engine Angle versus Binary Values and Linearly Fitted Trendline ....45
Figure 4.7: Plots of Desired and Actual Engine Angle, for Square Wave.........................46
Figure 4.8: Plots of Desired and Actual Engine Angle, for Sine Function ........................48
Figure 4.9: Plot of Desired and Actual Engine Angle over Time for PID Controller
(a) Run 1, (b) Run 2, (c) Run 3 .......................................................................................50
Figure 4.10: Plot of Heading and Desired Heading over Time for PID Controller
(a) Run 1, (b) Run 2, (c) Run 3 .......................................................................................51
Figure 4.11: Plot of Desired and Actual Engine Angle over Time for Adaptive PID
Controller (a) Run 1, (b) Run 2, (c) Run 3 ......................................................................54
Figure 4.12: Plot of Heading and Desired Heading over Time for Adaptive PID
Controller (a) Run 1, (b) Run 2, (c) Run 3 ......................................................................55
Figure 4.13: Adaptive Gains over Time for Adaptive PID Controller (a) Run 1,
(b) Run 2, (c) Run 3. Note that the I gain is multiplied by a factor of 10,000. ..............56
Figure 4.14: Plot of Desired and Actual Engine Angle over Time for Augmenting
Controller (a) Run 1, (b) Run 2, (c) Run 3 ......................................................................58
xv
Figure 4.15: Plot of Heading and Desired Heading over Time for Augmenting
Controller (a) Run 1, (b) Run 2, (c) Run 3 ......................................................................59
Figure 4.16: Total (Adaptive + Fixed) Gains over Time for Augmenting Controller
(a) Run 1, (b) Run 2, (c) Run 3 .......................................................................................60
Figure 4.17: Actual and Desired Heading, PID Path Following (a) Run 1, (b) Run 2 ......64
Figure 4.18: North and East Displacement, PID Path Following (a) Run 1, (b)Run 2......65
Figure 4.19: Actual and Desired Heading, Adaptive PID Path Following (a) Run 1, (b)
Run 2, (c) Run 3 ..............................................................................................................67
Figure 4.20: North and East Displacement, Adaptive PID Path Following (a) Run 1,(b)
Run 2, (c) Run 3 .................................................................................................................68
Figure 4.21: Adaptive Gains over Time for Adaptive PID Controller (a) Run 1, (b)
Run 2, (c) Run 3 ..............................................................................................................69
Figure 4.22: Actual and Desired Heading, Augmenting PID Path Following (a) Run 1,
(b) Run 2, (c) Run 3 ........................................................................................................71
Figure 4.23: North and East Displacement, Augmenting PID Path Following (a)
Run 1, (b) Run 2, (c) Run 3 ............................................................................................72
Figure 4.24: Adaptive Gains over Time, Augmenting PID Path Following (a) Run 1,
(b) Run 2, (c) Run 3 ........................................................................................................73
Figure 4.25: Plot of Engine Angle and Desired Engine Angle over Time, PID Heading
Following ........................................................................................................................77
xvi
Figure 4.26: Plot of Heading and Desired Heading over Time, PID Heading
Following ........................................................................................................................78
Figure 4.27: Actual and Desired Engine Angle, Adaptive PID Heading Following
Trial .................................................................................................................................79
Figure 4.28: Plot of Actual and Desired Heading over Time, Adaptive PID Heading
Following ........................................................................................................................80
Figure 4.29: Adaptive Gains over Time, Adaptive PID Heading Following ....................81
Figure 4.30: Plot of Actual and Desired Heading over Time, Augmenting Heading
Following Trial ...............................................................................................................83
Figure 4.31: Plot of Actual and Desired Heading over Time, Augmenting Heading
Trial .................................................................................................................................83
Figure 4.32: Plot of Gains over Time, Augmenting Heading Following Trial..................84
Figure 4.33: Plot of Heading and Desired Heading over Time, Fixed Gain PID Path
Following (a) Run 1, (b) Run 2 .......................................................................................86
Figure 4.34: Plot of Cross Track Error over Time, Fixed Gain PID Path Following
(a) Run 1, (b) Run 2 ........................................................................................................86
Figure 4.35: Heading and Desired Heading over Time, Augmenting Path Following
(a) Run 1, (b) Run 2, (c) Run 3, (d) Run 4 ......................................................................89
Figure 4.36: Plot of Cross Track Error over Time, Fixed Gain PID Path Following (a)
Run 1, (b) Run 2, (c) Run 3, (d) Run 4 ...........................................................................90
xvii
Figure 4.37: Plot of Total Gains, Augmenting Path Following Trial (a) Run 1,
(b) Run 2, (c) Run 3, (d) Run 4 .......................................................................................91
Figure 4.38: Heading and Desired Heading over Time, Adaptive PID Path Following
(a) Run 1, (b) Run 2, (c) Run 3, (d) Run 4 ......................................................................92
Figure 4.39: Cross Track Error over Time, Adaptive PID Path Following (a) Run 1,
(b) Run 2, (c) Run 3, (d) Run 4 .......................................................................................93
Figure 4.40: Plot of Total Gains, Adaptive PID Path Following Trial ..............................95
Figure 4.41: Plot of North and East Displacement for runs into Strong Environmental
Conditions .......................................................................................................................97
Figure 5.1: Plot of North and East Displacement for 2 m/s West Wind ..........................108
Figure 5.2: Plot of Actual and Desired Heading, 2 m/s West Wind ................................109
Figure 5.3: Plot of Port and Starboard Thrust, 2m/s West Wind .....................................111
Figure 5.4: Plot of North and East Displacement, 5 m/s West Wind ..............................112
Figure 5.5: Plot of Actual and Desired Heading, 5 m/s West Wind ...............................113
Figure 5.6: Plot of Port and Starboard Thrust, 5 m/s West Wind ....................................114
Figure 5.7: Plot of North and East Displacement, 10 m/s West Wind ............................116
Figure 5.8: Plot of Actual and Desired Heading, 10 m/s West Wind ............................117
Figure 5.9: Plot of Port and Starboard Thrust, 10 m/s West Wind ...............................118
Figure 6.1: Diagram of Suzuki DF300 Throttle Control System.....................................122
Figure 6.2: Motor RPM vs. Main Voltage Plot ...............................................................125
xviii
Figure 6.3: Wiring Diagram of Station Keeping Control System .................................127
Figure 6.4: Plot of Actual and Desired Heading, PID-PID Station Keeping ...................130
Figure 6.5: Plot of North, East, and Total Displacement, PID-PID ................................131
Figure 6.6: Plot of North and East Displacement, PID-PID Station Keeping .................132
Figure 6.7: Plot of Estimated Port and Starboard RPM over Time, PID-PID .................133
Figure 6.8: Plot of Actual and Desired Heading over Time, PID-Adaptive Station
Keeping .........................................................................................................................135
Figure 6.9: Plot of Displacement over Time, PID-Adaptive Station Keeping ................136
Figure 6.10: Plot of North and East Position, PID-Adaptive Station Keeping ................137
Figure 6.11: Plot of Port and Starboard RPM over Time, PID-Adaptive Station
Keeping .........................................................................................................................138
Figure 6.12: Plot of Adaptive Differential Throttle Gains over Time, PID-Adaptive
Station Keeping .............................................................................................................139
Figure 6.13: Plot of Actual and Desired Heading Over Time, Augmenting-Adaptive
Station Keeping .............................................................................................................141
Figure 6.14: Plot of North and East Displacement, Adaptive-Augmenting Station
Keeping .........................................................................................................................142
Figure 6.15: Plot of North, East, and Overall Displacement over Time, Adaptive-
Augmenting...................................................................................................................142
Figure 6.16: Plot of Estimated Motor RPM over Time, Augmenting-Adaptive Station
Keeping .........................................................................................................................144
xix
Figure 6.17: Plot of Adaptive P, I, D Differential Throttle Gains, Augmenting-
Adaptive ........................................................................................................................144
Figure 6.18: Plot of Augmenting P and D Steering Gains over Time, Augmenting-
Adaptive ........................................................................................................................146
xx
NOMENCLATURE
1a Shared Thrust Proportional Gain
2a Shared Thrust Integral Gain
3a Shared Thrust Derivative Gain
4a Differential Thrust Proportional Gain
5a Differential Thrust Integral Gain
6a Differential Thrust Derivative Gain
ha Integral Gain for calculating Desired Heading
nC Location of RBF Center
eE East Error in NED Frame
XTE Cross-track error in NED Frame
XTE& Cross-track Velocity in NED Frame
Dg Adaptive Derivative Gain
ADDg Adaptive derivative gain component in augmenting controller
TDg Adaptive Differential thrust derivative gain
Dg& Rate of change of adaptive derivative gain
ADDg& Rate of change of adaptive derivative gain in augmenting controller
xxi
Ig Adaptive Integral Gain
TIg Adaptive differential thrust integral gain
Ig& Rate of change of adaptive integral gain
Pg Adaptive Proportional Gain
ADDg Adaptive P gain component in augmenting controller
TPg Adaptive differential thrust proportional gain
Pg& Rate of change of adaptive proportional gain
ADPg& Rate of change of adaptive proportional gain in augmenting controller
TeK Estimated neuro-adaptive error
aDK First layer derivative gain
aIK First layer integral gain
aPK First layer proportional gain
bDK Second layer derivative gain
bIK Second layer integral gain
bPK Second layer proportional gain
eN North error in NED frame
r Vessel rate of turn in body-fixed frame
u Vessel forward speed in body-fixed frame
ex Positional error in x-direction in body-fixed frame
ψu Desired engine angle sent to outboard motors
xxii
1Γ Adaptive P rate of change parameter
2Γ Adaptive I rate of change parameter
3Γ Adaptive D rate of change parameter
σ Parameter to enforce RBF’s cross at midpoints
1σ Adaptive P anti wind-up term
2σ Adaptive I anti wind-up term
3σ Adaptive D anti wind-up term
Θ Vector of estimated parameters by RBF
dθ Desired path over ground for path following
Φ Vector of signal weights
actualψ Actual vessel heading
desiredψ Desired vessel heading
eψ Vessel heading error
actualψ& Actual vessel heading rate, NED frame
desiredψ& Desired vessel heading rate, NED frame
eψ& Vessel heading rate error, NED frame
1
1.1 Applications for Station Keeping on Small Vessels
There are many areas in which station keeping can be of great benefit for small boat
operators. Small boats are being more widely used as technology advances to allow for
smaller and more portable instrumentation and gear, bringing down the necessary size of
vessels, and ultimately reducing the cost. However, smaller vessels find themselves more
adversely affected by sea conditions and have limited thrusting capabilities. Currently a
skilled captain is needed on these small vessels to hold position over the area of interest in
the presence of wind, wave, and current disturbances. Implementation of a station-keeping
controller would free the captain from constantly monitoring the navigational instruments
to more closely supervise onboard operations and keep watch for other vessels in the area.
The many uses for this technology extend to applications for the military, commercial
sector, recreational boaters, and researchers.
Station keeping is a pivotal part of the larger goal of sea basing currently being pursued
by the military under Sea Power 21 [1], which would allow vessels to stay in close but
acceptable proximity to one another. Additionally, a station keeping system would be of
great value as a staging vessel to launch and retrieve autonomous vehicles for
reconnaissance and missions such as underwater explosive ordinance searches.
The ability to hold position over a desired location can have many uses in the
commercial and recreational sectors as well. Fishermen will be able to hover over fertile
fishing grounds and more easily deploy and recover traps, nets, and lines. Likewise,
1 INTRODUCTION
2
vessels in the oil and gas industries can more easily survey a potential resource underwater
and monitor subsea operations, and this technology can also help in the offshore offloading
of petroleum and in the transfer of cargo and personnel to oil rigs.
Lastly, ocean researchers could also benefit from small vessel station keeping. There
exist numerous applications in which station keeping could directly benefit the Center of
Excellence for Ocean Energy Technology (COET) at Florida Atlantic University, including
holding position while deploying a CTD instrument in the Gulf Stream; remaining within
range of acoustic modems mounted on underwater instruments; and for monitoring the
prototype ocean current test turbine when it is deployed for initial testing. Other
applications of station keeping for oceanic researchers include monitoring a desired area
for changes over time, and for the launch and retrieval of AUVs and ASVs.
Due to the limited directional control of thrust, it can not be expected that the boat will
hold station directly over the desired location. Effects such as wind gusts and waves will
constantly move the boat away from the desired position. Thus, it is needed to quantify
what “good” station keeping performance is. For this project, which is the initial
development and testing of the station keeping controller, a 5 meter radius is considered to
be good performance, as this can allow for the boat to get pushed by waves and wind, and
get back to a desired point.
A step towards the creation of these station keeping controllers has been the creation of
controllers for following a prescribed path or heading. These path-following controllers
can also be of benefit to COET and other researchers, for doing straight-line surveys of a
desired area, or they can be easily modified to follow any desired trajectory as a given
mission requires.
3
This thesis presents a novel approach for doing station keeping, as thus far a system for
station keeping on small vessels using only tied twin outboard motors has not been
developed in industry or academia. Multiple fixed-gain and adaptive control algorithms
have been developed. The performance of each of these controllers has been quantified
and compared with each other to show the advantages or disadvantages of adaptive control
over fixed-gain control algorithms.
1.2 Previous Work in Station Keeping
Dynamic positioning systems for large ships with many thrusters have been
commercially available for over 40 years. These vessels are commonly used commercially
by the oil industry, cable- and pipe-laying companies, dredging outfits, and cruise lines.
These systems are also used on large research vessels.
While these systems are very robust and have proven effectiveness, they are very
costly. In addition, these large scale systems require redundant thrusters and sensors for
control over the vessel’s lateral (sway) motion, which the vessels operated by FAU’s
COET do not have. So while the technology for dynamically positioning large
overactuated vessels has existed for some time, there has been little done for station
keeping of small boats using only outboard motors.
In research, there has been work done for station keeping of 2 types of vehicles: Large,
overactuated vessels such as those listed above, and small autonomous surface vehicles
(ASVs)[2,3]. The small ASV in [2] is a monohull vessel with twin screw propellers and
tied rudders, while that in [3] is a catamaran hull design; previous work outlining station
keeping on a small monohull vessel whose source of propulsion itself is directly used in the
control of yaw (i.e. no rudders) has not been found in industry or in literature.
4
1.3 Contributions of Thesis
This thesis provides the following end products:
• Four heading and path following algorithms using various adaptive and fixed-
gain control methods;
• three installed and sea trial-verified path-following controllers which have been
evaluated on both the Ocean Power and Lee;
• three station keeping control algorithms, using adaptive and fixed-gain control
methodologies; and
• three sea trial-verified station keeping controllers which have been installed and
tested on the Ocean Power vessel.
The first contribution has been evaluated in the simulation developed in [4]. Within
this simulation, the user enters the physical parameters of the vessel as well as the
magnitude and direction of the environmental forces acting on the vessel (See Section 2.1
for more information). Controllers have been developed in this simulation to minimize
vessel cross-track error while mitigating environmental forces. Note that in these
simulations, the vessel is simulated as doing surveys at constant speed, so thrust from each
motor is set to an equal, constant value.
The second contribution evaluates the algorithms developed in the previous step on the
actual vessels through use of the heading control system. This is a feedback control system
which uses DGPS and outboard engine angle as inputs, and uses programs developed in
LabVIEW software to command outboard engine angle through the hydraulic steering
system on the Ocean Power and Lee vessels. More information on this system can be
found in Section 4.1.
5
Similar to the first contribution, the third contribution is verified and tuned in the
simulation from [4]. In this step, the path-following controllers are modified to calculate
the vessel’s desired heading as being the direction of the dominant environmental forces
acting upon the vessel. Additionally, vessel thrust is now a variable, which is calculated to
match the speed at which the vessel is being pushed away from the desired location, as well
activating differential thrust to aid in steering in high wind conditions.
The forth contribution is achieved using the heading control system as well as a throttle
control system to implement the algorithms developed in Contribution 3 on the Ocean
Power vessel. Details on how the throttle system works can be found in Section 6.1. Note
that this system can only be implemented on the Ocean Power vessel because the Lee has
one outboard motor which does not allow for differential thrust, and does not have the
electronically controlled fly-by-wire throttle system that the Ocean Power uses.
1.4 Contents of Thesis
In Section 2, this thesis presents the platforms upon which these algorithms are tested:
the numerical simulation, the R/V Lee, and the Ocean Power. The development of the
path-and heading-following controllers is presented in Section 3, while integration of the
steering control system on the boats and results of sea trial testing of these systems can be
found in Section 4. The station keeping algorithms will then follow similarly, with Section
5 presenting the controller design and simulation, and Section 6 outlining the
implementation of the physical heading and throttle control systems, as well as results from
station keeping sea trials. Conclusions drawn from this work and future work in this
subject are in Section 7.
6
Presented in this section are the three main platforms upon which these control systems
were developed. First is the comprehensive general simulation covered in detail in [4].
This simulation was used for initial controller development and algorithm tuning before
physical testing at sea. The other two platforms presented are the boats upon which these
algorithms were tested on, the R/V Lee and Ocean Power. The physical controllers were
installed on these boats based on initial gains from the simulation and then tested at sea for
validation and final controller tuning. This section will give an overview of the vessels and
the hardware components on them which are controlled, while the control algorithms
themselves will be outlined in Sections 4 and 6.
2.1 Comprehensive General Simulation
The 6 degree of freedom general simulation presented in [4] was made as a resource to
do initial development and tuning of control algorithms in a manner which avoids costly
and time-consuming sea trials and is computationally efficient. While originally developed
for the R/V Stephan, a 65-foot research vessel no longer operated by FAU, the simulation
can be modified to model a large variety of vessels, as well as many weather conditions.
This simulation is programmed in Matlab/Simulink, which allows for an easy-to-follow
graphical user interface and easy modification from the parameters of the Stephan to those
of the Ocean Power.
2 DEVELOPMENT AND TESTING PLATFORMS
7
2.1.1 Overview of Simulation
The physical parameters of the vessel are defined by the user in 17 inputs which are
used by the program to model the ship’s dynamics. These inputs are: length between
perpendiculars; length of waterline; beam; molded amidships draft; average molded draft;
average keel draft; propeller diameter; rudder cord; rudder length; distance between center
line and propellers; total length; lateral side area; frontal area; side area of SS; vessel
perimeter; distance from bow to center of projected area; submerged area of transom;
horsepower per engine; and vessel mass. These inputs are used to define the hydrodynamic
and aerodynamic features of the vessel and approximate the movement of the vessel in the
water when subject to environmental forces. Note that for all simulations, a discrete time
step of 0.1 seconds is used.
The wind, wave, and current environmental conditions are calculated to find the forces
each exerts on the simulated vessel, with the direction and magnitude input by the user.
Wind is modeled using a Davenport spectrum based on the findings of [5]. Within the
simulation, the user defines the direction and mean speed of the wind acting on the vessel.
The simulation models the wind as a spectrum rather than a constant value, so the
simulation includes effects such as gusting in the wind calculation.
The current is considered to be a constant value due to the small size of the vessel in
relation to large oceanic currents and the slow rate at which currents change speed and
direction. Within the simulation, the user defines the velocity of the current acting in the
North and East directions.
The waves are modeled using a spreading function which is a function of frequency and
direction. It should be noted that the wave forces modeled in this simulation only include
those induced by the horizontal orbital velocities from the waves [4]. The user inputs the
8
wind speed in the direction of the waves and the range of directions being considered into
the simulation. Then, the sum of the wave and current velocities are used to calculate the
relative velocities of the boat with respect to the water, which are used to calculate the drag
and control forces on the vessel [4].
2.1.2 Modifications to Simulation
The original simulation outlined in [4] was made to simulate a 65-foot vessel with twin
screw propellers and tied rudders, while the Ocean Power is a 33-foot boat with twin
outboard motors. Thus, the simulation had to change from its original incarnation.
The modifications made to the simulation included replacing the 17 physical
parameters of the Stephan with those measured on the Ocean Power and changing the
thrust model to remove the rudders and allow the propellers themselves to turn. The first
modification was done by measuring the 17 relevant parameters on the Ocean Power. After
getting the numbers, they were entered into the simulation. The second modification
involved going into the section of the simulation which models the boat’s thrust system and
removing the interface between the rudders and the wake of the propellers. Then, the
simulation was modified to allow the propellers to turn to a desired angle. After these
modifications, the simulation was ready to begin controller development.
2.2 R/V Lee
The R/V Lee is a 21-foot center console, rigid-hull inflatable boat operated by Florida
Atlantic University. This vessel is pictured in Figure 2.1. This boat is outfitted with a
single Suzuki DF225 outboard motor, which generates 225 hp. It is also equipped with a
SeaStar hydraulic steering system and a Nautimatic (Garmin) autopilot, which is integrated
9
into the hydraulic steering circuit. Please note that as R/V Lee only has one outboard
motor, it is unable to use differential thrust and will not be tested for station keeping.
Figure 2.1: Photo of RV Lee
R/V Lee is used in this work as an initial testing platform for the steering control
system. This vessel is used because it and the Ocean Power have identical SeaStar
hydraulic steering systems and Nautimatic autopilots (the only difference between the two
steering systems is the bracket on which the motors are mounted is different on the Ocean
Power as it has larger motors and 2 of them). R/V Lee is used less frequently than the
Ocean Power, so it had more availability for dockside and initial offshore testing than the
Ocean Power, without having to remove the systems multiple times when Ocean Power
had to do missions such as CTD casts. The benefit is after system validation on R/V Lee,
the heading control system can be easily transferred to Ocean Power with minimized
necessary testing or modification. More information on the steering system can be found in
Section 4.1.1.
10
2.3 Ocean Power
The Ocean Power is a 33-foot center console vessel operated by the COET at FAU
(Figure 2.2). This vessel is powered by two Suzuki DF300 outboard motors, each
outputting 300 hp. As stated previously, this boat has the same SeaStar hydraulic steering
system and Nautimatic autopilot as the R/V Lee.
The Ocean Power is commonly used for surveys such as CTD and ADCP
measurements off the Southeast coast of Florida. In this thesis, the Ocean Power is used as
the platform for final testing of the path and heading following controllers, as well as for
the station keeping controllers. As stated above, after initial validation of the heading
following controller on the Lee, the common control system was installed to the Ocean
Power for final validation and integration into the station keeping controller.
Figure 2.2: Photo of Ocean Power Vessel
11
The Ocean Power is used as the platform for station keeping because it has two motors
(allowing for the use of differential thrust) and because of the fly-by-wire system used to
control throttle and gearing of the DF300 motors. More information on how the fly-by-
wire system works, and how it is controlled by the algorithms in this thesis can be found in
Section 6.1.
The first step in the creation of station keeping controllers is to be able to control the
heading of the vessel. Vessel heading is the most challenging variable to control in station
keeping, so it is important to first learn how to control vessel heading when operating at
slow forward speeds and ensure that the vessel can be commanded to follow a variable
desired heading, as this will be needed for station keeping.
Section 3.1 will first describe the control algorithms for following a constant heading,
and Section 3.1.2 will present the results of these controllers from tuning and testing in the
numerical simulation. Section 3.2 will cover the path following controllers, with Section
3.2.1 outlining the changes made to the control algorithms to go from heading to path
following, and Section 3.2.2 presenting the results from running each path-following
algorithm in simulation.
3.1 Constant Heading Following Controllers
The first controllers developed force the vessel to follow a constant heading. For this
controller, the user inputs the desired heading as well as the constant thrust value, and it is
3 DEVELOPMENT OF HEADING AND PATH FOLLOWING CONTROLLE RS
12
the goal of the control algorithms to minimize heading error, which is defined as
desiredactuale ψψψ −= . Four controllers are developed in this section for heading and path
following: Fixed Gain PID, Adaptive PID, Neuro-Adaptive, and PID with Adaptively
Augmented Gains. Note that for all of the simulation results presented in this section, the
desired heading is 90° from north, which is due east.
3.1.1 Heading Following Control Algorithms
3.1.1.1 Fixed Gain PID Controller
A fixed gain PID controller is used as one of the heading-following controllers because
this is a well-known algorithm that is standard for many applications. It will be used here as
a baseline controller for the adaptive control algorithms to be compared against. The
desired heading is given by the user (90° in this test case) and desired rotation rate is set to
0, while the actual heading and rotation rate are inputs to the controller. The output of the
heading-following controller is the commanded engine angle that is designed to minimize
both the heading and rate errors. The commanded engine angle is given by:
ebDe
bIe
bP KdtKKu ψψψψ &++= ∫ , (1)
where desiredactuale ψψψ −= is the heading error and its derivative is dactuale ψψψ &&& −= , with
the desired heading and rotation rate as given above. For this controller, the gains used for
the simulation are shown in Table 3.1. These gains were found using iterative tuning that
balanced the minimization of the initial heading overshoot with fast convergence, and a
desire to keep the commanded engine angle well within its achievable range.
Table 3.1: Fixed gain PID heading following controller gains bPK
bIK
bDK
0.5 0.006 (s^-1) 2 (s)
13
3.1.1.2 Adaptive PID Heading Following Controller
This second control algorithm is similar to its fixed gain counterpart given by equation
(1), but this controller’s gains will adapt on-line. The structure of the adaptive PID
controller is the same as the fixed gain PID with separate proportional, integral, and
derivative terms that sum up to make the control signal. The derivatives of the three
adaptive PID gains are calculated by
PeP gg 12
1 σψ −Γ−=& IeeI gdtg 22 σψψ −∫Γ−=& DeeD gg 33 σψψ −Γ−= && , (2)
where 3,2,1Γ are parameters chosen by the designer to control the rate of adaptation for each
term. The second term in the adaptive update law which contains 3,2,1σ , is called the sigma
modification term and is used to prevent wind-up. The adaptive PID gains are calculated
by integrating (2) in real time, and each gain is given an initial value of 0, although other
initial values can be chosen. The engine angle is then calculated as
eDeIeP gdtggu ψψψψ &+∫+= . (3)
The gains that control the adaptation rate, 3,2,1Γ , and values for 3,2,1σ used in the
simulation are found in Table 3.2. These values were determined iteratively for fast
adaptation and good tracking of the desired trajectory over time, while keeping gains low
enough to minimize actuator saturation.
Table 3.2: Adaptive controller gains and leakage terms Proportional Integral Derivative Γ -0.2 -0.003 -12 σ 0.01 0.01 0.02
14
)ˆ(ˆeee
Te KxeK σ−Γ−=&
3.1.1.3 Single Layer Neuro-Adaptive Heading Following Controller
The second adaptive methodology utilizes a single layer neural network controller
which uses radial basis functions. As before, the goal is to minimize heading error. To
create the neural network, a regressor vector Φ is selected to be
TCx n
Cx
ee
=Φ
−−−−
2
2
22
21
2σσL , which is the set of Radial Basis Functions (RBF’s) used to
counteract unknown, nonlinear aspects of the plant. Radial Basis Functions are chosen
because they act as universal approximators [6]. The values of function centers nCC ...1
andσ are design parameters. Here, the values of the nCC ...1 centers were set to ensure
constant spacing between functions and the value of σ was found using the difference
between RBF centers divided by )2log(2 to ensure the Gaussian functions (RBFs) cross at
their vertical midpoints.
In this controls layer, 22 neurons are used (22=n ). Following the architecture
suggested by [7], the commanded engine angle is calculated by
)(ˆˆe
Te
TeKu ψψψ ΦΘ−= , (4)
and θθθ σ Kex ˆ)((ˆ −ΦΓ−=Θ& . with the update laws given by
Table 3.3 shows the values of θ,eΓ and θσ ,e chosen for this controller. These values
were found through iteration, with emphasis on enhancing long-term tracking of the desired
heading.
Table 3.3: Adaptive controller gains and leakage terms
e Θ 0.15 0.22 0.05 0.02
Γσ
15
3.1.1.4 Fixed Gain PID Controller with Adaptive Augmentation
This controller is a hybrid between the fixed-gain PID controller (Section 3.1.1.1) and
the adaptive PID controller (Section 3.1.1.2). This scheme uses the fixed-gain PID
controller as a baseline control and has the adaptive PID component to augment the fixed
gains for enhanced robustness. An application of a system with baseline control
augmented by adaptive gains is found in [8] to improve target tracking of laser-guided
munitions. The baseline PID control is as described in Section 3.1.1.1, with the same
following control equations:
ebDe
bIe
bP
PID KKKu ψψψψ &+∫+= , (5)
where desiredactuale ψψψ −= and dactuale ψψψ &&& −= .
This PID controller is augmented with an adaptive component. Adaptive augmentation
adds adaptive gains to the fixed gains of the PID mentioned above with the goal of
improving tracking of the desired trajectory [8] and making the closed loop system more
robust. Note that in this application, only proportional and derivative terms feature
augmentation; the integral term is still a fixed gain. This is done to avoid instability due to
ramping up of the integrator term. The adaptive portion of the control law that is used to
augment the fixed gain PID controller is:
ψψψ egegu ADD
ADP
AD&+= (6)
with the derivative of the adaptive control gains calculated by PePADP gg 1
2 σψ −Γ−=& and
DeeDADD gg 3σψψ −Γ−= && .
Summing the adaptive and fixed gain control signals gives the total control command:
)()()()( tegdttegtegtu TOTD
TOTI
TOTP
TOTALψψψ &+∫+= , (7)
16
with the total gains defined by )( ADP
bP
TOTP gKg += , b
ITOTI Kg = and )( AD
DbD
TOTD gKg += .
Each of the values represented by bDIPK ,, is given the same value as the fixed-gain value
used for the baseline PID controller. The 3,1Γ parameters adjust the adaptation rate
parameters, while each 3,1σ determines the emphasis on the sigma modification term used
to prevent wind-up. A saturation limiter was also used on the adaptive gains so that they
did not rise too high, setting the maximum adaptive gains to %50± of the value of the
fixed gains. The values for DP,Γ , DIPK ,, , and DP,σ can be found in Table 3.4.
Table 3.4: PID with augmentation controller gains and leakage terms Proportional Integral Derivative Γ -.0.2 -- 12 K 0.5 0.006 2 σ -0.035 -- -0.06
3.1.2 Simulation Results for Heading Following Controllers
This set of simulations is run with a constant desired heading of 90°, due East. The
performance of the four heading-following controllers is evaluated in this section, which
are designed to follow a constant desired heading. This simulation is performed at the
input thrust of 2000 N per engine, which gives a forward vessel speed of 8 knots in calm
conditions.
Thrust is not taken as a control variable in this section; this is configured to replicate a
survey where a captain could set the motors to a constant RPM and then engage the
autopilot to steer along a desired path. Additionally, a limit was put on the engines to turn a
maximum of ±35°, as this was the physical limit of the boat’s engines; and an engine
turning rate limit of 10° per second was also put on the simulated vessel to estimate the
actual maximum rate.
17
Environmental conditions for this simulation are modeled after average conditions a
small vessel may experience in the Gulf Stream off the coast of Fort Lauderdale. These
conditions are: the wind is modeled as a Davenport spectrum [5] with mean wind speed of
10 m/s at 10 m above sea level, the current is a constant 1.5 m/s which is the approximate
mean near surface water velocity of the Gulf Stream [9], and the significant wave height is
0.5 m modeled using a spreading spectrum suggested by [10]. All of these disturbances act
in the northward direction, i.e. wind out of the South, and current and waves acting in the
North direction.
The initial vessel heading is 120° for each of these trials. Figure 3.1 shows how each
controller follows a constant desired heading, while Figure 3.2 presents P, I, and D gains
for the controllers and Figure 3.3 shows the control command for each controller. Note that
each trial is run for a simulated time of 10 minutes.
18
Figure 3.1: Plots of Heading and Desired Heading over Time following Constant Heading
19
Figure 3.2: Plots of P, I, and D gains over time
Figure 3.3: Plots of Control Signal (Engine Angle) for each controller following constant heading
20
During the initial tuning phase where the vessel starts with an initial heading error of
30°, all four controllers force the vessel to reach the desired heading in less than 11 s,
before overshooting the desired heading (Figure 3.1). The three PID controllers then
converge towards the desired heading smoothly with the adaptive augmenting controller
having the smallest overshoot and fastest convergence rate. Conversely, the neuro-adaptive
controller oscillates about the desired heading several times with oscillation amplitudes of
up to 24° before converging on the desired heading after about 90 s. During this initial
phase the neuro-adaptive controller varies the engine angle by up to 30°, while the fixed
gain PID and adaptive augmenting PID use engine angles of up to 15° and the adaptive PID
uses a maximum engine angle of only 5°.
After the initial transient tuning phase of approximately 100 s, each controller is able to
achieve a nearly constant heading with all controllers holding the magnitude of the heading
error below 2° after the first 100 s and 0.5° after the first 300 s. The neuro-adaptive
controller has the smallest heading error standard deviation of only 0.0672° after the first
300 s while the adaptive PID controller has the largest heading error for the last 300 s of
0.2166°. This performance is achieved for the last 300 s using engine angles with a
standard deviation of 0.085° for the fixed gain PID, 0.092° for the adaptive augmenting
PID, 0.097° for the adaptive PID, and 0.269° for the neuro-adaptive controllers. During
these simulations the adaptive PID gains are the lowest set of PID gains with the exception
of the integral term near the beginning of the simulation. The adaptive augmenting integral
and derivative gains are very near those of the fixed gain PID controller during the entire
simulation while the proportional gain for the adaptive augmenting controller is
significantly larger than the equivalent fixed PID gain for the entire simulation. All of the
adaptive gains converge to nearly-constant values long before the end of this 600 s
21
simulation. Table 3.5 gives a side-by-side comparison of the standard deviation of the
heading error and control signal during the last 300 s of the simulation.
Table 3.5: Quantification of Errors and Control Signal over Final 300 Seconds of Simulation Standard Deviations of Error and Control Signal
Heading Error Control Signal (Degrees) (Degrees)
PID 0.1371 0.0859 Adaptive PID 0.2166 0.0974
Neuro-adaptive 0.0672 0.2693 Augmenting 0.1312 0.0917
3.2 Path Following Control Algorithms
The next step in the progression to create a station keeping controller is to develop
controllers which follow a desired path over ground. This is done by implementing a
“first-layer” controller which calculates the desired heading based on the across-track error
and sends this desired heading to the controllers outlined in Section 3.1, which will be
called the “Second-layer” controllers.
This type of controller will be very useful in station keeping, where the desired heading
will change with the vehicle’s orientation relative to the desired location, and as a result of
varied environmental conditions. As stated before, this is important as heading is the most
difficult variable to control in the process of station keeping.
Additionally, the path following controller itself can be of use for researchers at COET.
In doing research operations such as ADCP transects, this controller will ease the burden
on the captain driving the boat, since it will follow a path itself. This would allow the
captain to monitor other things, such as keeping watch for other vessels in the path and
overseeing operations on deck.
22
3.2.1 Changes to Heading Following Controller
To follow a prescribed path, a change is made to the heading following controllers
developed in Section 3.1. This change is an algorithm that calculates the desired heading
based on the across-track error, called the “first layer”, which sends the desired heading to
the “second layer”, which is the heading following controller described in Section 3.1. The
gains for the first-layer controller can be found in Table 3.6.
The desired heading is then calculated as
0=++∫+=
d
dXTaDXT
aIXT
aPd EKEKEK
ψθψ
&
&
, (8)
where dψ is the desired heading, dψ& is the desired rotation rate, a DIPK ,, are the gains
chosen by the user, XTE is the across-track error, XTE& is the across-track error rate, and dθ
is the constant desired path over ground. XTE and XTE& are calculated by
)sin()cos(
)sin()cos(
dedeXT
dedeXT
NEE
NEE
θθθθ
&&& +−=
+−=, (9)
where eN and eE are the north and east displacements, respectively; eN& and eE& are the
north and east velocities, respectively; and dθ is the desired path over ground. The desired
heading dψ is then passed to the heading-following controller, which the second layer then
controls the vessel in attempt to match the actual heading to it.
Table 3.6: First layer PID controller gains aPK a
IK aDK
0.03 (rad/m) 0.0007 (rad/(m-s)) 0.02 (rad-s/m)
3.2.2 Simulation Results for Path Following Controllers
Similar to Section 3.1.2, this section presents results for path-following trials run in the
numerical simulation. In this case, each controller is run through 2 scenarios. The first test
23
is to follow a due east path in the presence of northward environmental forces, as can be
expected to be encountered in the Gulf Stream, with constant thrust of 2000 N output from
each motor. This is the operating condition for which each controller is tuned, and gives
forward vessel velocity of 3.9 m/s (about 8 knots) in still conditions. The second trial has
the same goal of following a due east path in the same environmental conditions as before,
but with thrust from each motor reduced to 1200 N. This second test is to investigate the
ability of each of the controllers to perform in operating conditions different than those for
which it was tuned, in this case, vessel forward speed reduced to 3.6 m/s (7 knots) in still
conditions.
The environmental conditions modeled in these trials are the same as those used in the
heading-following controller trials presented in Section 3.1.2. These include wind modeled
as a Davenport spectrum [5] with mean wind speed of 10 m/s at 10 m above sea level, the
current is a constant 1.5 m/s which is the approximate mean current of the Gulf Stream
measured by [9], and the significant wave height is 0.5 m modeled using a spreading
spectrum suggested by [10]. All of these disturbances act in the northward direction, i.e.
wind out of the south, and current and waves acting in the north direction, to model average
conditions seen by a small vessel in the Gulf Stream.
These trials are run similarly to those in Section 3.1.2, with engine angle limited to
±35°, and engine angle turning rate limited to 10° per second.
3.2.2.1 Path Following with 2000 Newtons Thrust per Engine
Each controller was tasked to follow the desired due east course in the presence of the
environmental disturbances described in Section 3.2.2. Figure 3.4 presents actual and
desired heading, Figure 3.5 shows the controller gains, Engine Angle can be found in
24
Figure 3.6, and Figure 3.7 shows north displacement. As before, each simulation is run
with initial heading of 120°.
0 100 200 300 400 500 60060
80
100
120
140
Time (Seconds)
Hea
ding
ψ (
o )PID
Actual
Desired
0 100 200 300 400 500 60080
100
120
140
160
Time (Seconds)
Hea
ding
ψ (
o )
Adaptive PID
0 100 200 300 400 500 60060
80
100
120
140
160
Time (Seconds)
Hea
ding
ψ (
o )
Neuro-Adaptive
0 100 200 300 400 500 60080
100
120
140
160
Time (Seconds)
Hea
ding
ψ (
o )
Augmenting
Figure 3.4: Plot of Heading and Desired Heading, 2nd Layer, 2000 N Thrust
The fixed gain PID Controller had good tracking of the variable desired heading during
this simulation. However, it was out-performed by all of the adaptive controllers for
minimizing heading error during the second 300 s of the simulation with heading error
standard deviation of 4.99°. It also had the largest across- track error with a standard
deviation of 3.09 m. This can be attributed to the adaptive gains changing to minimize
error. The adaptive PID controller did the best job of minimizing the across-track error
during the second 300 s of the simulation with a standard deviation of only 2.07 m. The
neuro-adaptive had slightly greater across track error during the second 300 s (2.28 m
standard deviation) but had multiple heading oscillations not seen when the other three
controllers are used, which converge after about 60 s.
25
0 100 200 300 400 500 600-1.5
-1
-0.5
0
Time (Seconds)
Gai
n
Plot of P Gains over Time
0 100 200 300 400 500 600-6
-4
-2
0
2x 10
-3
Time (Seconds)
Gai
n
Plot of I Gains over Time
0 100 200 300 400 500 600-4
-2
0
2
Time (Seconds)
Gai
n
Plot of D Gains over Time
Adaptive
AugmentingFixed Gain
Figure 3.5: Plot of Gains for 2nd Layer Controller, 2000N Thrust
This is also seen in the control signal, where the neuro-adaptive has signals of about
±30°, while the other 3 controllers had control signals in the range of ±5° over the entire
simulation. The augmenting controller had a slightly larger across-track error than the
other two adaptive controllers during the second 300 s of the simulation (2.87 m standard
deviation) but during the same time period performed the best in following the desired
heading (2.98° standard deviation). The augmenting controller also had the lowest gains of
the 3 PID-based controllers, while the adaptive and fixed-gain controllers were larger, but
the controllers had gains that were close in relation to one another. Further quantification of
these values over the final 300 s is also found in Table 3.7.
26
0 200 400 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
PID
0 200 400 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
Adaptive PID
0 200 400 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
Neuro-Adaptive
0 200 400 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
Augmenting
Figure 3.6: Plot of Engine Angle over Time, 2000 N Thrust
0 100 200 300 400 500 600-10
-5
0
5
10
15
20
Time (Seconds)
Nor
th D
ispl
acem
ent (M
eter
s)
PID
0 100 200 300 400 500 600-5
0
5
10
15
20
25
Time (Seconds)
Nor
th D
ispl
acem
ent (M
eter
s)
Adaptive
0 100 200 300 400 500 600-5
0
5
10
15
Time (Seconds)
Nor
th D
ispl
acem
ent (M
eter
s)
Neuro-Adaptive
0 100 200 300 400 500 600-10
0
10
20
30
Time (Seconds)
Nor
th D
ispl
acem
ent (M
eter
s)
Augmenting
Figure 3.7: Plot of North Displacement over Time, 2nd Layer, 2000 N Thrust
27
3.2.2.2 Path Following with 1200 Newtons Thrust per Engine
Operating conditions are never constant and survey speeds often vary for different
operations. With this in mind, another comparison of the controllers was performed. In
this test, the same environmental conditions were used as for the previous tests, but the
thrust for each motor was reduced from 2000 N to 1200 N. After making this change, one
can see the PID controller performance degraded significantly in an environment separate
from the one in which it was tuned, while the adaptive controllers adjusted to the new
operating conditions.
As in Section 3.1.2, the initial heading for each test is 120° with a desired path being an
eastward trajectory. With this deviation from the conditions for which it was tuned, the
performance of the fixed-gain PID controller deteriorates. As Table 3.7 shows, the fixed-
gain PID controller now has the worst performance in standard deviation of North error
(4.8379 m) and heading error (10.2831°). This gives an increase in heading error of almost
6° for the PID. Meanwhile, the performance of the adaptive controllers stayed relatively
consistent with each adaptive controller having an increase in North error standard
deviation of no more than 0.4 m and increase in heading error of no more than 0.4°. In
addition, the augmenting controller’s North error improved from the test in Section 3.2.2.2.
The fixed gain PID also had the largest increase in control signal, yet still has the lowest
control signal standard deviation at 2.1695°. The neuro-adaptive controller still has the
transient period in the beginning with large oscillations and control signal on the order of
±30°, but ends up having the best performance in minimizing North error, although its
heading error is higher than that of the adaptive PID and augmenting controller.
28
The PID controller is sluggish in following the desired heading. This is most likely
caused by the decreased thrust providing less turning moment than what the controller is
tuned for, giving slower response (change in heading) to a given input (Engine angle). In
this case, the vessel only outputs 60% of the thrust for which the controller was tuned for,
and can not adapt to this change in thrust. Thus, as shown in Figure 3.8, there is a lag of
about 15 s between the vessel’s actual heading reaching the desired heading.
0 100 200 300 400 500 60080
100
120
140
160
180
Time (Seconds)
Hea
ding
ψ (
o )
PID
Actual
Desired
0 100 200 300 400 500 60080
100
120
140
160
Time (Seconds)
Hea
ding
ψ (
o )
Adaptive PID
0 100 200 300 400 500 60060
80
100
120
140
160
Time (Seconds)
Hea
ding
ψ (
o )
Neuro-Adaptive
0 100 200 300 400 500 60090
100
110
120
130
140
150
Time (Seconds)
Hea
ding
ψ (
o )
Augmenting
Figure 3.8: Plot of Heading and Desired Heading, for 1200 N Constant Thrust
29
Figure 3.9: Plot of Control Signal over Time, 1200 N Constant Thrust
0 100 200 300 400 500 600-1.5
-1
-0.5
0
Time (Seconds)
Gai
n
Plot of P Gains over Time
0 100 200 300 400 500 600-6
-4
-2
0x 10
-3
Time (Seconds)
Gai
n
Plot of I Gains over Time
0 100 200 300 400 500 600-3
-2
-1
0
1
Time (Seconds)
Gai
n
Plot of D Gains over Time
Adaptive
AugmentingFixed Gain
Figure 3.10: Plot of Gains over time, 1200 N Constant Thrust
0 100 200 300 400 500 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
PID
0 100 200 300 400 500 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
Adaptive PID
0 100 200 300 400 500 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
Neuro-Adaptive
0 100 200 300 400 500 600-40
-20
0
20
40
Time (Seconds)
Eng
ine
Ang
le u
(o )
Augmenting
30
0 100 200 300 400 500 600-20
0
20
40
Time (Seconds)
Nor
th D
ispl
acem
ent
(Met
ers)
Plot of North Displacement Over Time, PID
0 100 200 300 400 500 600-10
0
10
20
Time (Seconds)
Nor
th D
ispl
acem
ent
(Met
ers)
Plot of North Displacement Over Time, Adaptive
0 100 200 300 400 500 600-10
-5
0
5
10
15
Time (Seconds)
Nor
th D
ispl
acem
ent
(Met
ers)
Plot of North Displacement Over Time, RBF
0 100 200 300 400 500 600-10
0
10
20
30
Time (Seconds)N
orth
Dis
plac
emen
t (M
eter
s)
Plot of North Displacement Over Time, Augmenting
Figure 3.11: Plot of North Displacement over time, 1200 N Constant Thrust
3.2.2.3 Path Following Conclusions
As can be seen in Table 3.7, the adaptive controllers out-perform their fixed-gain
counterpart. The PID controller performs comparably to the adaptive controllers when
following a fixed heading in the presence of environmental disturbances for which it has
been tuned, even outperforming the adaptive PID in this test. However, its performance
diminishes when following a variable heading as seen in Sections 3.2.2.1 and 3.2.2.2. In
Section 3.2.2.1 the PID controller has the worst performance but its North error is relatively
close to that of the augmenting controller’s. Meanwhile, the adaptive PID has the best
performance in terms of North error, while the augmenting controller minimizes heading
error the best.
31
Table 3.7: Quantification of Errors in vessel simulations over the final 300 seconds
When thrust is reduced down to 1200 N, it can be seen that the performance of the PID
controller is by far the worst. Meanwhile, the adaptive controllers have relatively similar
performance to that of Section 3.2.2.1. The augmenting controller’s North error even
decreases by almost 0.4 m. The heading error for each adapting controller increases,
although not as much as with the fixed-gain PID. The control signal also increased for the
adaptive PID and the neuro-adaptive controllers, although these values remain small
relative to the range (±35°) of control signals that the steering system can accept.
Standard Deviation of North and Heading Errors and Control Signal over
Final 300 Seconds Constant Heading 2-layer, 2000 N 2-Layer, 1200 N
Heading
Error Control Signal
North Error
Heading Error
Control Signal
North Error
Heading Error
Control Signal
Degrees Degrees Meters Degrees Degrees Meters Degrees Degrees PID 0.1371 0.0859 3.0902 4.4859 1.6159 4.8379 10.2831 2.1695
Adaptive PID 0.2166 0.0974 2.0738 3.1761 3.2945 2.5638 3.7311 3.4077
Neuro-adaptive 0.0672 0.2693 2.2853 3.9406 4.1826 2.3284 4.2975 4.5511
Augmenting 0.1312 0.0917 2.8702 2.9821 2.7330 2.4877 3.3791 2.6379
32
After the initial development and testing of the heading- and path-following controllers
using a numerical simulation, the next step is to test the algorithms at sea. These
algorithms are tested at sea in a manner very similar to how the trials were conducted in the
simulation: the motors output a constant thrust and the control goal is to follow the desired
heading or path.
To evaluate the control algorithms on the test vessel, the angle of the outboard motor(s)
with respect to the longitudinal axis of the boat needs to be commanded by the control
system. The methods used for implementation of the engine angle control system are
explained in Section 4.1. This includes overview of the steering system on the Ocean
Power and Lee vessels, method for dictating engine angle, navigational data importation,
all hardware used, and method for tuning and calibrating the engine angle controller.
After development and dockside testing of the system, the controllers for heading and
path following were tested at sea. The controllers were initially tested on RV Lee, as this
boat was available more often than the Ocean Power. Three days were used for at sea
testing with the R/V Lee: Heading following trials were conducted February 19, 2010;
Initial path following trials were conducted March 1, 2010; Secondary path following trials
were conducted April 20, 2010. The results from the heading and path following trials on
R/V Lee are presented in Section 4.2.
4 SEA TRIALS OF HEADING AND PATH FOLLOWING
33
Once the heading- and path-following controllers were developed and tested on RV
Lee, the control system was transferred to the Ocean Power. The hardware was moved
over to Ocean Power for initial dockside testing which is outlined in Section 4.1, and sea
trials for heading and path following were conducted on June 30, 2010. The results from
these trials on Ocean Power are presented in Section 4.3.
4.1 Control System for Steering
This section outlines the development and methods for controlling the steering on RV
Lee and Ocean Power, and is organized as follows: Section 4.1.1 explains how the steering
systems work and how the engine angle is commanded by the control system; Section 4.1.2
describes the method for measuring engine angle; Section 4.1.3 goes over all hardware and
software used for this control system; and in Section 4.1.4 the method for matching desired
and actual engine angle is outlined.
4.1.1 Overview of Vessel Steering Systems
As briefly mentioned in Section 2.2, RV Lee and Ocean Power have identical hydraulic
steering systems and Nautimatic autopilots, with the hydraulic steering circuit on each boat
shown in Figure 4.1. Because the boats have the same hydraulic systems and autopilots,
the same system can be used on both RV Lee and Ocean Power. In this work, the system is
initially installed and debugged on RV Lee before being installed on Ocean Power.
34
Figure 4.1: Schematic of Hydraulic Steering System on R/V Lee and Ocean Power
The electric pump from the Nautimatic autopilot is used by this steering control system
by disconnecting its power cables from the autopilot and connecting to a power output
source that is controlled using the system presented in this work. Using this electric pump,
the heading control system can automatically turn the outboard motor to a desired angle
with respect to the fore-aft axis of the vessel by supplying a specified voltage and current to
the pump. The power is supplied to the pump by a motor controller, which is commanded
35
by the control software. The method for tuning the voltage output of the motor controller is
presented in Section 4.4.
Note that the steering wheel at the helm is a manual pump in the hydraulic circuit, so
the control of the automated system can be overridden by the captain at any time to avoid
an obstacle by manually turning the steering wheel. The power to the physical system is
supplied through a breaker with a switch, so power can be cut off by flipping the switch if
necessary.
4.1.2 Engine Angle Measurement
In having the vessel follow to a desired heading, it is necessary to rotate the outboard
motors, which in turn will change the boat’s heading at a rate dependant upon the angle of
the engines and the thrust produced by the engines. Thus, the signal output by the control
algorithms specifies desired engine angle in attempt to match the actual heading to the
desired heading, as shown in Section 3.
To match actual and desired engine angle requires a measurement of the engine’s
angle sent to the control system. A number of options were explored for measuring the
angle of the motors with respect to the boat’s fore-aft axis. The first idea was a linear
position sensor which could be attached to the hydraulic ram at the boat’s transom. This
would prove to be a very accurate system, although difficult to implement. This solution
would have been by far the most expensive option, and had a long lead time to
manufacture. Modification of the boat’s hydraulic ram was also necessary, and there was
question of whether it would physically fit in the tight spaces between the hydraulic ram
and the outboard motors. However, this option was the most rugged, as the sensor was
36
designed for the marine environment. Because of long lead time and high cost and
complexity, it was decided not to use this option.
The second option explored was to mount a TCM2 compass onto the engine. The
engine angle could be calculated by subtracting the boat’s actual heading from the reading
of the engine-mounted TCM2. This would provide very accurate data in degrees, without
need for correlation from length to degrees. However, calibration is needed each time the
compass is removed. There also was not a good way to mount the compass without
modifying the outboards, so the TCM2 would have to be used only at low speeds and calm
sea states. Additionally, to use this option would have required magnetically shielding the
TCM2, as the compass would be mounted directly above the motor’s alternator, causing a
great deal of magnetic interference. This option would also require the magnetically
shielded housing to be waterproof and to hold the compass very firmly in place. After
these considerations, this option also was not used.
The third option, which was the one that was chosen, was to use a potentiometer.
Potentiometers are cheap and plentiful, and have high precision. They operate under a
simple methodology: as the potentiometer rotates its electrical resistance changes. By
supplying a constant 5V to the potentiometer, one can determine engine angle based on the
return voltage once the system has been calibrated. The potentiometer has resistance of up
to 5 KΩ and is mounted on a custom bracket where the rotation is provided by a nut on the
bracket connecting the hydraulic ram to the outboards. Figure 4.2 shows a photograph of
this system. The return voltage is run through a 12-bit analog-to-digital converter, which is
then used with a correlation function to determine engine angle. High linearity and
repeatable results were found with this method and this is shown in Section 4.1.4. To
ensure seaworthiness, the potentiometer and all connections to it were potted. This
37
configuration had been installed on R/V Lee from July 2009 to June 22, 2010, and had
worked extremely well during its nearly year-long exposure to the marine environment.
Figure 4.2: Photo of Potentiometer Setup on Outboard Motor
4.1.3 Hardware and Software for System Implementation
Most of the instrumentation for the system is self-contained within the electronics box
shown in Figure 4.3. The potentiometer is engine mounted, and the control algorithms are
run using LabVIEW software on a laptop or the panel mounted PCs on the RV Ocean
Power. The power for the system will be provided by the boat’s battery bank, coming in at
approximately 12 VDC. Within the box are power distribution for the control system, 12-
bit analog-to-digital card, DGPS, and the motor controller for the 12 V hydraulic pump.
The control box communicates with the computer via 2x RS232 com ports (1 for DGPS
signal, 1 for motor controller) and the A-D card for reading engine angle communicates via
USB. This system will be housed in the center console of the vessel, safe from
precipitation and rough seas so waterproofing the box is not a priority. As the boats have
Potted Potentiometer Custom Bracket
With Spacers
Point of Rotation
Hydraulic Ram
38
the same steering systems, the system is usable on either vessel and can be easily
transferred from one boat to the other.
Figure 4.3: Electronics Box for Path-Following Controller (On R/V Lee)
The vector sensor differential GPS system provides all vessel heading and position
information. Heading data is provided at 10 Hz and has published error of <0.15°, while
position data is provided at 2 Hz and has published accuracy of <0.6 m error with 95%
confidence interval.
4.1.4 Measuring and Controlling Engine Angle
4.1.4.1 R/V Lee
As explained in Section 3, the heading error is used to calculate the desired angle of the
outboard motor relative to the longitudinal axis of the boat. To control the angle of the
DGPS
Power Distribution
Motor Controller
39
outboard motor, this angle has to be measured by the potentiometer and controlled by use
of the electric pump under command of the control algorithm.
The motor controller in the control unit box provides a constant 5V to the 5KΩ
potentiometer mounted on the vessel’s transom as shown in Figure 4.2. The turning of the
outboard engine also turns the potentiometer. This rotation causes a change in the
resistance over the potentiometer, thus changing the return voltage. A linear correlation
can then be found between return voltage and the boat’s engine angle. This return voltage
is fed into the 12-bit A-D card, which returns a value of 1 to 4096 corresponding to the
voltage value.
For dockside calibration, a TCM2 compass was mounted on the engine and the dock
lines were tightened as much as possible so that turning due to wind and other
environmental factors is minimized in TCM2 output. The outboard motor was turned hard
over to one side, where the compass and A-D card output are recorded. The motor was
then turned 5°, and compass and A-D output were again recorded. This was repeated until
the motor was turned hard over to the other side.
The mean of the engine angle measurements is subtracted from the TCM2 output to
normalize engine angle. Then a plot is made which gives the relationship between A-D
values and engine angle. A linear trendline is calculated and 2r error analysis is done to
determine how well the trendline fits the data; in this case 9994.02 =r , which shows that
the linear trendline is a very good fit to the measured values. Figure 4.3 shows the plotted
results along with the trendline. Note that each time the potentiometer is removed from the
engine, the system is to be recalibrated.
40
12 Bit A-D Output to Engine Angle Correlation
y = 0.1105x - 307.33
R2 = 0.9994
-40
-30
-20
-10
0
10
20
30
40
2400 2500 2600 2700 2800 2900 3000 3100 3200
A-D Output
En
gin
e A
ng
le
Trial 2
Linear Trendline
Figure 4.3: Plot of Engine Angle versus Binary Values and Linearly Fitted Trendline, R/V Lee
Now that accurate engine angle measurement has been achieved, it is necessary to
control the angle of the outboard motor. To do this, a PI controller has been developed
which converts engine angle error into output voltage from the motor controller. Note that
a PI controller is used (no derivative term), because the sensors do not currently measure
the rate of change of engine angle, and taking the derivative numerically has a de-
stabilizing effect on the signal. Thus no derivative term is used in the controller.
The developed steering system is tested and tuned based on its ability to follow 2 types
of desired engine angle signals. The first desired engine angle signal is a square wave that
varies between 15° and -15° with a time period of 11 seconds. The square wave is used to
test the ability of the controller to converge to a stationary value quickly and stay at that
value while minimizing overshoot. The second desired engine angle signal is a sine wave
41
which travels between 15° and -15° with a period of 16 seconds. This sine function is used
to test the ability of the controller to follow a continuously changing wave.
The test was set up as such: 5 different P gains were used (12, 15, 20, 30, 40; units
Degree
Volts) as well as 2 different I gains (0.01, 0.002; units
ondDegree
Volts
sec*). Each
combination of P and I gains was run with both the step and sine signal to give a total of 20
data sets for this trial. The standardized test length used was 3 full cycles of the step
function and 4 full cycles of the sine function. The desired and actual engine angles are
presented in Figures 4.4 and 4.5. The standard deviation of engine angle error resulting
from these tests is given in Table 4.1.
Note that while the pump accepts ±12VDC, the voltage output is limited to ±9VDC to
ensure that the pump can be manually overridden if necessary for obstacle avoidance. The
controller also has a “dead zone” of ±0.4° from the desired engine angle to avoid chatter.
When the engine angle is within the dead zone, the controller is taken off-line, so that the
integrator term does not build up while the motor angle is not changing.
42
Figure 4.4: Plots of Desired and Actual Engine Angle, for Square Wave
Figure 4.4 shows how each controller performed in following the square wave. The
first number in each graph’s title is the P gain, while the second number is the I gain. This
figure shows that the lower P gains, 12 and 15, have good convergence, but sometimes
stops the engine short of reaching its desired angle. Conversely, the P gain of 40 yields an
engine overshoot that is significantly larger than for the other gains. Thus, using a P gain of
20 or 30 with either I gain works well for following a square wave.
43
Figure 4.5: Plots of Desired and Actual Engine Angle, for Sine Function
Figure 4.5 shows the plots of the separate gain combinations for following the sine
wave. As before, the first number in the title shows the P gain and the second number is
the I gain. In these plots, it is evident that for P gains of 12 and 15, and even somewhat at
20, the controller is too slow in trying to match desired and actual heading, and this gives a
significant engine angle lag. There is again some noticeable overshoot in the controllers
with P gain of 40, and using the I gain of 0.01 appears to give more overshoot. From these
44
plots, it appears that using the P and I gains of 40 and 0.002 is the best fit for following a
sine wave.
Table 4.1: Standard Deviation of Engine Angle Error Step Pattern Sine Pattern I Gain I Gain
P Gains: 0.01 0.002 0.01 0.002 12 13.0486 12.3025 4.0437 3.9954 15 13.5339 12.6463 3.2 3.2075 20 14.1877 12.7179 2.5062 2.4132 30 12.0649 12.0893 2.0756 1.9743 40 12.8447 12.466 1.9307 1.9061
Table 4.1 presents quantification of the engine angle error. For the step pattern, using P
gain of 30 with I gain of 0.01 was best, followed closely by P 30, I 0.002. For the sine
wave, using P gain of 40 with I gain of 0.02 performed best. From the results of these
trials, using P gain of 30 with I gain of 0.002 appears to be the best choice of gains, as it
has the best overall performance when following both the square and sine waves. Note that
these findings were achieved on R/V Lee, and different results will be found on the Ocean
Power, as this vessel has 2 larger motors to rotate, requiring more power.
4.1.4.2 Ocean Power
Similar to Section 4.1.4.1, dockside testing was done for the engine angle control
system on the Ocean Power vessel. As before, the engine angle sensor was first calibrated,
then the PI controller was tuned. Calibration and controller tuning are done in the same
process as they were done for the Lee.
The calibration of the engine angle sensor was again done with the dock lines tightened
to minimize change in the vessel heading and with the TCM2 compass and engine angle
sensor mounted on the starboard motor. Figure 4.6 shows the plot of engine angle and A-D
45
output along with the trendline which was found. Note that the Ocean Power’s motors turn
to angles of ±20° with respect to the boat’s centerline.
Plot of 12-Bit A-d Output and Engine Angle, Ocean Power
y = 0.0763x - 203.05
R2 = 0.9988
-25
-20
-15
-10
-5
0
5
10
15
20
25
2400 2500 2600 2700 2800 2900 3000
12-Bit A-d Output
En
gin
e A
ngle
Engine Angle DataLinear Trendline
Figure 4.6: Plot of Engine Angle versus Binary Values and Linearly Fitted Trendline
As shown in Figure 4.6, once again the trendline is a very good fit to the data, as the 2r
value of 0.9988 shows. After getting good engine angle measurement, next was
determining gains of the PI controller for controlling engine angle. Again, this was done
using the square and sine wave signals. Note that as the Ocean Power has two larger
motors and these motors turn slower than the Lee’s, the waveforms to be followed were
slowed down– in this case, the time period of the square wave was 12.5 seconds, while the
sine wave’s time period was 32 seconds to complete a full wavelength. The 4 P gains for
these tests were (20, 30, 35, 40; units Degree
Volts) and 2 I gains (0.01, 0.002; units
ondDegree
Volts
sec*).
46
Figure 4.7 shows the results from the test for following a square wave. From the plots
in Figure 4.7, it can be seen that when the P gain is 20 and 30, the actual engine angle does
not reach the desired angle. The plots of when the P gain is higher, such as the cases when
P gain is 35 or 40, show better convergence to the desired angle without much overshoot.
0 20 40 60 80 100 120-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 35, .01
Time
Deg
rees
0 20 40 60 80 100 120-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 35, .002
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 20, .01
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 20, .002
Time
Deg
rees
0 20 40 60 80 100 120-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 30, .01
Time
Deg
rees
0 20 40 60 80 100 120-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 30, .002
Time
Deg
rees
0 20 40 60 80 100 120-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 40, .01
Time
Deg
rees
0 20 40 60 80 100 120-20
-10
0
10
20Plot of Engine Angle going to desired Angle, square, 40, .002
Time
Deg
rees
Figure 4.7: Plots of Desired and Actual Engine Angle, for Square Wave
Table 4.2 shows quantification of engine angle errors for the two trials, and actually
shows the case of P gain 20, I gain 0.002 as having the least standard deviation of error for
47
the square wave test, with 15.5138° error, while many of the other cases have slightly
higher error, typically between 16.3° – 16.7° engine error.
Table 4.2: Standard Deviation of Engine Angle Error Square Wave Sine Wave I Gain I Gain
P Gains: 0.01 0.002 0.01 0.002 20 16.3319 15.5138 3.3137 3.1853 30 16.4174 15.9528 2.2265 2.0368 35 16.6007 16.4017 1.9790 2.0483 40 16.3118 16.6890 1.6990 1.7872
Figure 4.8 shows the engine angle following a sine wave from -15° to 15°. Similar to
the previous test on RV Lee, it can be seen in Figure 4.8 that the lower gain settings have
difficulty following the desired angle and there is a noticeable lag in the actual engine angle
following the desired engine angle. This is definitely noticeable in the cases of P gains of
20 and 30, and diminishes with P gain of 35. This is evidenced in Table 4.2, where as P
and I gain increase, the engine angle error tends to decrease with the P gain of 40 giving the
lowest error standard deviation.
From these tests, using P gain of 40 with I gain of 0.01 is chosen as the gain set for
following a desired angle. This gain set has the best performance in following the sine
wave, and third-best performance in following the square wave.
This section has outlined the successful development, implementation, and dockside
testing of a physical system for performing sea trials of the heading and path following
controllers. Now that the system for providing data to the control algorithm and
performing actuation has been installed and tested, the next step is to use the system in
testing the heading and path following controllers, the data from which is presented in the
next sections.
48
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 35, .01
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 35, .002
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 20, .01
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 20, .002
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 30, .01
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 30, .002
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 40, .01
Time
Deg
rees
0 20 40 60 80 100-20
-10
0
10
20Plot of Engine Angle going to desired Angle, sin, 40, .002
Time
Deg
rees
Figure 4.8: Plots of Desired and Actual Engine Angle, for Sine Function
4.2 RV Lee Heading- and Path-Following Trials
Three days of sea trials using the RV Lee were used to provide the data for this section.
On February 19, 2010 the heading-following controller was tested and tuned, while initial
testing and debugging of the path-following controller was carried out March 1. More
extensive path-following testing was conducted April 20, 2010. In this section, heading-
following results are presented in Section 4.2.1, while path-following results are found in
Section 4.2.2.
49
4.2.1 R/V Lee Heading Following Results
On February 19, 2010 3 control algorithms were tested at sea on R/V Lee for their
ability to follow a fixed heading. The 3 control methodologies tested were fixed-gain PID,
adaptive PID, and fixed-gain PID with adaptive augmentation, which were presented in
Section 3.1. Each controller was tested with the motor producing forward speed of roughly
4 knots. The testing was conducted from 1000 until 1410 that day. The sea conditions
included waves that began at 1 foot and increased to 2 ft through testing, and the wind
began from the West at 1.5 m/s, and shifted to 3.5 m/s from North at 1100, 1.4 m/s from
North at 1300, and 2 m/s from North at 1400.
The way in which these controllers operate is that the gains analyzed in this trial are
used to map the PID of heading error (in degrees) to the desired engine angle (also in
degrees). The PI controller described in Section 4.1.4 then matches actual to desired
engine angle.
4.2.1.1 Fixed Gain PID Controller
Three 10-minute trials were conducted for the PID fixed gain controller, each testing
different sets of gains. Table 4.3 shows the gains used for each trial, Figure 4.9 plots the
desired and actual engine angle, Figure 4.10 plots the desired and actual heading, and Table
4.4 quantifies the performance of each set of gains.
The gains used in Run 1 are the same gains used in the numerical simulation, Run 2
gains doubled the gains used in Run 1, and Run 3 gains are 1.5x the gains in Run 1. It
should be noted that Runs 1 and 2 followed a Westward heading (270°), while Trial 3
followed a due east heading (90°).
Table 4.3: List of PID Gains used for each run
50
Run 1 Run 2 Run 3 P Gain 0.5 1 0.75 I Gain 0.0006 0.0012 0.0009 D Gain 2 4 3
0 100 200 300 400 500 600
-40
-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)Engine Angle and Desired Engine Angle over Time
0 100 200 300 400 500 600
-40
-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
0 100 200 300 400 500 600
-40
-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
Actual
Desired
Actual
Desired
Actual
Desired
Figure 4.9: Plot of Desired and Actual Engine Angle over Time for PID Controller (a) Run 1, (b) Run
2, (c) Run 3
51
0 100 200 300 400 500 600
240
260
280
300
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
0 100 200 300 400 500 600
240
260
280
300
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
0 100 200 300 400 500 600
60
80
100
120
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Actual
Desired
Actual
Desired
Figure 4.10: Plot of Heading and Desired Heading over Time for PID Controller (a) Run 1, (b) Run 2,
(c) Run 3
Table 4.4: Quantification of Engine Angle and Heading Errors Standard Deviation of:
Engine Angle Error Heading Error Engine Angle Error Final 5 min Heading Error Final 5 min
Run 1 0.9491 1.9907 0.9232 1.6008
Run 2 3.1416 4.0011 1.458 2.0825
Run 3 1.0701 1.6943 1.0003 1.4244
52
Run 1 follows the desired heading well, while it is evident in the plots that there is a
large amount of oscillation at the beginning of Run 2. For this reason, and because the
engine angle was being actuated too much, the gains were reduced in Run 3. This is also
shown in Table 4.4, where both the heading error and engine angle error standard
deviations for Run 2 (4.0011°, 3.1416°) are more than double those for Runs 1 (1.9907°,
0.9491°)and 3 (1.6943°, 1.0701°). This error reduced over the final 5 minutes, but it can be
seen that the higher gains produced higher engine angle error, which caused the higher
heading error.
The performance of gains in Runs 1 and 3 are similar, with the Run 3 gains having
slightly more engine angle error (1.0701° to 0.9491°), but slightly less heading error
(1.6943° to 1.9907°). The data from the final 5 minutes also backs up these conclusions.
From the data gathered in these trials, the gains from Run 3 are those that work best for
heading following in these weather conditions.
4.2.1.2 Adaptive PID Controller
The second controller algorithm tested is the adaptive PID controller. Similar to
Section 4.2.1.1, three runs, each 10 minutes, were conducted for the adaptive PID
controller. Note that Run 3 is shorter than the previous 2; this is because another boat was
directly in the path of R/V Lee and maneuvering had to be done to avoid this boat. This
maneuver skewed the results from the run, and thus only the data from before this
maneuver is included. Run 3 proved that the manual override safety feature works and safe
maneuvering was accomplished to avoid the other vessel.
Table 4.5 shows the gain adaptation rate Γ and sigma modification value σ used to
prevent wind-up. Run 1 only used adaptive P gains; I and D gain adaptation rates and
53
sigma were set to zero. Runs 2 and 3 used adaptive P, I, and D gains. Run 3 was done
with Γ and σ terms one-tenth of the corresponding value in Run 2. In these trials, Runs 2
and 3 followed Westward direction (270°), while Run 1 followed East direction (90°).
Table 4.5: Adaptation Rates and Sigma Terms for Adaptive PID Controller Runs
Run 1 Run 2 Run 3 Γ σ Γ σ Γ σ P 0.2 -0.001 0.02 -0.001 0.002 -0.0001 I 0 0 0.00000002 -0.000005 0.00000002 -0.0000005 D 0 0 0.5 -0.0001 0.05 -0.0001
Similar to previous section, Figure 4.11 shows actual and desired engine angle, Figure
4.9 shows actual and desired heading, Figure 4.12 shows adaptive gains, and Table 4.6
contains analysis of errors.
54
0 100 200 300 400 500 600-20
-10
0
10
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
0 100 200 300 400 500 600-20
-10
0
10
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
0 100 200 300 400 500 600-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
) Engine Angle and Desired Engine Angle over Time
Actual
Desired
Actual
Desired
Actual
Desired
Figure 4.11: Plot of Desired and Actual Engine Angle over Time for Adaptive PID Controller (a) Run 1, (b) Run 2, (c) Run 3
a
b
c
55
0 100 200 300 400 500 60080
90
100
110
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
0 100 200 300 400 500 600
260
270
280
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
0 100 200 300 400 500 600
260
270
280
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Actual
Desired
Actual
Desired
Figure 4.12: Plot of Heading and Desired Heading over Time for Adaptive PID Controller (a) Run 1,
(b) Run 2, (c) Run 3
a
b
c
56
0 100 200 300 400 500 6000
1
2
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
0 100 200 300 400 500 6000
1
2
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
0 100 200 300 400 500 6000
1
2
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
ID
P
ID
P
ID
Figure 4.13: Adaptive Gains over Time for Adaptive PID Controller (a) Run 1, (b) Run 2, (c) Run 3.
Note that the I gain is multiplied by a factor of 10,000.
Table 4.6: Quantification of Engine Angle and Heading Errors Standard Deviation of: Engine Angle Error Heading Error Engine Angle Error Final 5 min Heading Error Final 5 min Run 1 1.5187 1.9144 1.013 1.3136 Run 2 0.9073 1.5296 0.9954 1.2464 Run 3 0.7143 2.2255 0.7337 1.7036
a
b
c
57
The results from Run 1 show that the P controller had the worst engine angle error of
the 3 adaptive controllers, although it still had good performance. Run 2 had the least
heading error as seen in Table 4.6, and these values are roughly 10% less than the best
performance of the fixed-gain controller in Section 4.2.1.1. Run 3 had the least engine
angle error, although it had the most heading error. This can suggest that the adaptation
rates are too small in this case, and the controller does not respond robustly enough to
correct course. Thus, the gains from Run 2 are used for the adaptive PID controller.
4.2.1.3 Fixed Gain PID Controller with Adaptive Augmentation
The final control methodology tested is the fixed-gain PID controller with adaptive
augmentation. As before, three runs are compared, each one being run for 10 minutes.
This controller is a hybrid between the fixed-gain and adaptive controllers, with the P and
D components having adaptive gains augmenting the fixed gains, while a fixed I gain is
used. This controller uses gains determined from the PID controller tests, and adds
adaptive P and D gains to their corresponding fixed gains.
For each trial, the fixed PID gains are the same; only the adaptive terms are modified
between trials. Table 4.7 shows the fixed gains and adaptive parameters for each run.
Figure 4.14 shows desired and actual engine angle, Figure 4.15 shows desired and actual
heading, and Figure 4.16 presents plots of the adaptive P and D gains. Table 4.8 has
standard deviations of error.
Table 4.7: Fixed Gains and Adaptation Rates for Augmenting Controller Trial Fixed Gain Run 1 Run 2 Run 3 Γ Σ Γ σ Γ σ
0.5 P 0.01 -0.001 0.02 -0.001 0.002 -0.0001 0.0009 I - - - - - -
2 D 0.1 -0.0001 0.2 -0.0001 0.02 -0.00001
58
0 100 200 300 400 500 600
-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
Actual
Desired
0 100 200 300 400 500 600
-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
Actual
Desired
0 100 200 300 400 500 600
-20
0
20
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
Actual
Desired
Figure 4.14: Plot of Desired and Actual Engine Angle over Time for Augmenting Controller (a) Run 1,
(b) Run 2, (c) Run 3
a
b
c
59
0 100 200 300 400 500 600
260
270
280
290
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600
260
270
280
290
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600
80
90
100
110
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.15: Plot of Heading and Desired Heading over Time for Augmenting Controller (a) Run 1, (b)
Run 2, (c) Run 3
a
b
c
60
0 100 200 300 400 500 6000
1
2
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
D
0 100 200 300 400 500 6000
1
2
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
D
0 100 200 300 400 500 6000
1
2
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
D
Figure 4.16: Total (Adaptive + Fixed) Gains over Time for Augmenting Controller (a) Run 1, (b) Run
2, (c) Run 3
Table 4.8: Quantization of Engine Angle and Heading Errors
Standard Deviation of:
Engine Angle
Error Heading
Error Engine Angle Error
Final 5 min Heading Error Final 5
min
Run 1 1.1074 1.2033 1.1012 1.2057
Run 2 2.7051 2.2196 1.561 1.1024
Run 3 1.3489 2.3753 1.211 1.0648
a
b
c
61
In these tests, the gains of Run 1 appear to give the best quantified performance both in
terms of engine angle error and heading error over the entire simulation. A possible
contributor to the larger error in heading seen by Runs 2 and 3 could be that these runs
started at angles roughly 20° from the desired angle, while Run 1 started much closer to the
desired angle. This initial error (as well as some overshoot in Run 2) in the latter runs
affects the standard deviation of the heading. This is shown when only the data from the
final 5 minutes of the trials are analyzed. In this case, the relative performance of each
controller changes greatly, as Run 3 has the best performance over the final 5 minutes,
followed closely by Run 2, and Run 1 shows the worst performance over this time. The
data then shows that the gains used in Run 3 provide the best performance of the
augmenting controllers. This is also seen in the gains themselves, as they are the most
constant over the course of the simulation.
4.2.1.4 Heading Following Conclusions
Each controller has been validated for its ability to follow a constant heading through
sea trials. Table 4.9 contains quantification of errors for each controller’s best trial.
Table 4.9: Quantification of Errors from each Controller’s Best Run Standard Deviation of Errors from Each Controller's Best Trial
Engine Angle
Error Heading
Error Engine Angle Error
Final 5 min Heading Error
Final 5 min Fixed Gain PID 1.0701° 1.6943° 1.0003° 1.4244° Adaptive PID 0.9073° 1.5296° 0.9954° 1.2464° Augmenting 1.3489° 2.3753° 1.211° 1.0648°
Over the final 5 minutes of the trials, each controller works well to follow the desired
heading. The adaptive and fixed gain PID controllers (0.9954° and 1.0003°) have less
engine angle error than the augmenting controller (1.211°), but the augmenting has the least
heading error standard deviation (1.0648°), while the fixed-gain PID controller has the
62
most heading error (1.4244°). These gains are then used as a basis for tuning of the path
following controllers.
Now that the controllers for following a constant heading have been tested and
compared, the next step is to test the path-following controller algorithms. The goal of path
following is to follow a straight line in the presence of environmental disturbances, which
means following a changing desired heading, not a constant heading.
4.2.2 R/V Lee Path Following Results
On April 20, 2010, sea trials were conducted aboard R/V Lee to test the path-following
controllers. These trials conducted tests on the path-following control algorithms
developed in Section 3.2 in a manner similar to the sea trials in Section 4.2.1. This set of
trials includes 2 sets of data for PID path following, and 3 sets of data for the adaptive and
augmenting controllers. Each is described below, as well as conclusions and
recommendations for future work.
On this day, the trials were conducted in the Atlantic Ocean, east of the SeaTech
campus. The environmental conditions encountered on April 20, 2010 were initially calm
conditions at 10:00 am, 6-8 knots wind from Northeast around 12:00, turning to Easterly
wind at speeds of 8-10 knots at 3:00 pm. The sea was initially still at the beginning, and
waves gradually built to 1-2 foot in size. Of note is the fact because this was a nice day,
there were many boats out and vessel wakes were encountered; these instances are noted in
the data.
Similar to the testing done for the heading following controller, each of these
controllers is tested for its ability to follow a desired track. In this case, the vessel follows
a desired path over ground, meaning it must mitigate environmental disturbances such as
63
waves, wind, and current to continue going in the desired path. This also means that the
desired heading changes with the magnitude and direction of the environmental forces. In
this trial, the desired heading is calculated by setting the desired path, and then adding in
the PID of the cross-track displacement to compensate for environmental forces pushing
the vessel off the desired path.
In this case, the algorithm used to calculate the desired heading is referred to as the first
layer controller, while the algorithm for matching desired and actual heading is referred to
as the second layer controller. The first layer controller used for calculating desired
heading is the same for each methodology; the second layer is the one in which different
algorithms (PID, Adaptive PID, Augmenting) are implemented.
The gains for the first layer controller are 02.0,00002.0,03.0 === DIP KKK .
4.2.2.1 Fixed Gain PID Controller
The gains used for Run 1 by the second layer controller are the same as those used in
Trial 3 in the PID Heading following controller, while the second set of gains were those
recommended after the initial path-following trial. These gains are presented in Table 4.10,
and use heading error to set the corresponding desired engine angle. For these trials, the
vessel is run at a constant speed of 4.5 knots
Table 4.10: P,I,D Gains for Path Following Trial P I D
Run1 0.75 0.0009 3 Run 2 1 0.001 3
The following plots show the performance of this control methodology when tested at
sea. Figure 4.17 shows desired and actual heading over time, and Figure 4.18 presents
North and East displacement over time, while errors are quantified in Table 4.11.
64
The gains used in Run 1 are those found to be the best in the trial in Section 4.2.1.1,
while those in Run 2 are those suggested to try in the initial analysis of the heading
following controller. These results show that the gains used in Run 1 help the system have
better performance than when the gains in Run 2 are applied.
0 100 200 300 400 500 6000
20
40
60
80
100
120
140
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 6000
20
40
60
80
100
120
140
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.17: Actual and Desired Heading, PID Path Following (a) Run 1, (b) Run 2
Wake hit here
a
b
65
0 200 400 600 800 1000 1200-12
-10
-8
-6
-4
-2
0
2
4
6
8
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement, PID Path Following
0 200 400 600 800 1000 1200-12
-10
-8
-6
-4
-2
0
2
4
6
8
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement, PID Path Following
Figure 4.18: North and East Displacement, PID Path Following (a) Run 1, (b)Run 2
Table 4.11: Standard Deviation of Heading and Cross-Track Errors, and Average Heading
Heading
Error Cross-Track
Error Heading Error
Final 5 min Cross-Track Error
Final 5 min Avg Heading Final 5 min
Run 1 2.5699 1.1041 1.8012 0.2751 80.3176 Run 2 7.6266 1.8164 2.4468 0.3292 97.6005
As Figure 4.17 shows, the higher gains in Run 2 produce considerably more overshoot
than those in Run 1. Note that another vessel’s wake was encountered about 500 seconds
into Run 2. Even without this anomaly, the performance of the controller from Run 2 is
considerably worse than Run 1, as shown in the heading error (300% more) in Table 2.
a
b
66
Because of the excellent performance in Run 1, it is recommended to use the gains from
this run as beginning sets of gains for path following testing on RV Ocean Power.
4.2.2.2 Adaptive PID Controller The second of the path-following controllers examined is the adaptive PID
configuration. The adaptive parameters for this trial are shown in Table 4.12. Similar to
the preceding section, these parameters control the adaptation rate of the gains, which use
heading error to command outboard engine angle. Changes to the rates between runs are in
red font. Note that for Runs 2 and 3, the I gain for the first-level controller is reduced from
0.00002 (As it was for the fixed-gain PID trials) to 0.00001. The only difference between
Runs 1 and 2 is this reduced I gain in the first layer; the second layer is unchanged.
Table 4.12: Adaptation Rates and Sigma Terms for Adaptive PID Controller Trial Trial 1 Trial 2 Trial 3 Γ σ Γ σ Γ σ P 0.001 -0.00002 0.001 -0.00002 0.001 -0.0002 I 1E-08 -5E-05 1E-08 -5E-05 1E-09 -5E-05 D 0.08 -0.00002 0.08 -0.00002 0.08 -0.00002
Similar to the above section, the performance for the controller is shown in the
following plots. Figure 4.19 presents actual and desired heading; Figure 4.20 contains East
and North displacement; Figure 4.21 shows the adaptive controller gains; and Table 4.13
quantifies error. Note that Trials 1 and 2 are run to follow a due east path, while Trial 3
follows a due west path.
67
0 100 200 300 400 500 60050
100
150
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 60050
100
150
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600200
250
300
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.19: Actual and Desired Heading, Adaptive PID Path Following (a) Run 1, (b) Run 2, (c) Run 3
a
b
c
68
0 200 400 600 800 1000 1200-10
-5
0
5
10
15
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement, Adaptive PID
0 200 400 600 800 1000 1200-10
-5
0
5
10
15
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement, Adaptive PID
-1200 -1000 -800 -600 -400 -200 0-10
-5
0
5
10
15
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement, Adaptive PID
Figure 4.20: North and East Displacement, Adaptive PID Path Following (a) Run 1, (b) Run 2, (c) Run
3
a
b
c
69
0 100 200 300 400 500 600-1
0
1
2
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
0 100 200 300 400 500 600-1
0
1
2
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
0 100 200 300 400 500 600-1
0
1
2
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
Figure 4.21: Adaptive Gains over Time for Adaptive PID Controller (a) Run 1, (b) Run 2, (c) Run 3
Table 4.13: Standard Deviation of Heading and Cross-Track Errors, and Average Heading
Heading
Error North Error
Heading Error Final 5 min
North Error Final 5 min
Avg Heading Final 5 min
Trial 1 6.457 1.5900 1.5479 0.1999 80.9572 Trial 2 5.6268 1.4725 1.8783 0.4056 103.1976 Trial 3 4.6320 3.0576 2.3260 0.3357 240.9400
Figure 4.19 shows that Run 2 converges the fastest and with the least overshoot, while
Runs 1 and 3 take well over a minute to converge. However, after the initial tuning phase
of about 100 seconds, Run 1 has a slightly smaller heading error than Run 2, while Run 3
a
b
c
70
has the most long term heading error. This is shown in Table 4.13, where Run 1 has the
most overall heading error, but the least heading error over the final 5 minutes, which also
is better than the performance of the PID controller.
Similarly, the cross track error averaged over the entire test during Run 2 is the
smallest, but Run 1 is best in following the desired path over the final 5 minutes. In fact,
Run 2 has over twice the cross-track (North) error of Run 1 during the last 5 minutes, while
Run 3 has the largest error averaged over the entire test, but better North Error mitigation
over the final 5 minutes than Run 2. It is interesting to note that the average headings for
Runs 1 and 2, although run within 6 minutes of each other and following the same path, are
23° apart from each other. A similar phenomenon occurred in Section 4.2.2.1. This can
most likely be attributed to encountering the current of the Gulf Stream as the boat traveled
further east during trials.
Because of the good long-term performance of Run 1, these gains were chosen to be
used as a beginning point for tuning this controller on Ocean Power.
4.2.2.3 Fixed Gain PID with Adaptive Augmenting Controller
The final controller tested for its path following abilities on the RV Lee is the PID with
adaptively augmented gains. For this controller, 3 runs are conducted with slightly
different gains. Table 4.14 lists the fixed gains and adaptation rates for these trials. Again,
the changes made for each successive trial is shown in red font.
Table 4.14: Fixed Gains and Adaptation Rates for Augmenting Controller Trials Fixed Gain Run 1 Run 2 Run 3
Γ σ Γ σ Γ σ 0.5 P 0.002 -0.0001 0.001 -0.0001 0.002 -0.001
0.0009 I - - - - - - 2 D 0.02 -0.00001 0.02 -0.00001 0.02 -0.001
71
Note that for these trials, Runs 1 and 2 are done going in west direction, while Run 3 is
conducted following a northward path. In these runs, the fixed PID gains are the same as
those found to be best in the fixed-gain PID trials. Figure 4.22 shows heading and desired
heading; Figure 4.23 shows North and East Displacement, and Figure 4.24 shows how the
adaptive gains vary over time.
0 100 200 300 400 500 600220
240
260
280
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600220
240
260
280
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600-20
0
20
40
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.22: Actual and Desired Heading, Augmenting PID Path Following (a) Run 1, (b) Run 2, (c)
Run 3
a
b
c
72
-1400 -1200 -1000 -800 -600 -400 -200 0-5
0
5
10
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement Over Time
-1400 -1200 -1000 -800 -600 -400 -200 0-5
0
5
10
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement Over Time
0 100 200 300 400 500 600 700 800
-10
-5
0
Eas
t D
ispl
acem
ent
(m)
North Displacement (m)
North and East Displacement Over Time
Figure 4.23: North and East Displacement, Augmenting PID Path Following (a) Run 1, (b) Run 2, (c)
Run 3
a
b
c
73
0 100 200 300 400 500 600
0
1
2
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
0 100 200 300 400 500 600
0
1
2
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
0 100 200 300 400 500 600
0
1
2
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
Figure 4.24: Adaptive Gains over Time, Augmenting PID Path Following (a) Run 1, (b) Run 2, (c) Run
3
Table 4.15: Standard Deviation of Heading and Cross-Track Errors, and Average Heading
Heading
Error Cross-Track
Error Heading Error
Final 5 min Cross-Track Error
Final 5 min Avg Heading Final 5 min
Run 1 2.1284 0.9068 2.1148 0.3232 259.8596 Run 2 4.0814 1.236 1.8074 0.2043 259.1852 Run 3 2.7666 2.3317 1.6059 0.3062 21.9506
Although Run 1 has the lowest overall standard deviation of heading error, this run also
has the highest heading error over the final 5 minutes, while that of Run 3 is the lowest
a
b
c
74
over the final 5 minutes. It was observed during Trial 1 that the controller was too touchy
and was oscillating around the desired heading more than the other runs. This was a
contributor to the large heading error over the final 5 minutes. This oscillation was the
reason for the reduction in P adaptation rate for Run 2, and the increase in sigma
modification rates in Run 3.
Although Run 3 did have a fair amount of heading and cross-track error, note that as
mentioned above in the environmental conditions, the wind at this time was 8-10 knots
from the East, and the vessel was following a northward track for Run 3 compared to a
westward track for Runs 1 and 2. Taking wind across the beam makes it difficult to
maintain a desired heading, but this controller worked very well.
Because of its good performance in maintaining a desired path in difficult conditions,
the gains from Run 3 were used as the initial gains for sea trials on the Ocean Power.
4.2.2.4 Path Following Conclusions
Three path-following controllers have been tested and validated on R/V Lee. Each
controller works exhibits good performance in keeping the vessel on a desired path over
ground, mitigating environmental conditions. The control algorithms performed well on
the RV Lee and initial gains have been obtained for path following testing on Ocean
Power. Table 4.16 compares the best results of the fixed-gain PID, Adaptive PID, and
Augmenting controllers.
Table 4.16 shows that while the adaptive PID controller had the most overall heading
error, it had less heading error over the final 5 minutes than the other two algorithms. The
adaptive PID also had the least cross track error over the final 5 minutes, while the
augmenting controller had the most. While this testing has proven each controller works,
75
they are not conclusive to prove any one controller is best, as the results from each are
relatively similar, and the controllers were tested in differing environmental and operating
conditions.
Table 4.16: Standard Deviation of Heading and Cross-Track Errors, and Average Heading from the
Best Trials, Each Controller
Heading
Error Cross-
Track Error Heading Error
Final 5 min Cross-Track Error
Final 5 min Avg Heading Final 5 min
Fixed-Gain PID 2.5699 1.1041 1.8012 0.2751 80.3176
Adaptive PID 6.457 1.5900 1.5479 0.1999 80.9572 Augmenting 2.7666 2.3317 1.6059 0.3062 21.9506
4.3 Ocean Power Heading and Path Following Trials
On June 30 2010, testing of the heading and path following controllers was done
onboard the Ocean Power. In these trials, tests of the heading following controller were
conducted first, using each of the three control algorithms (Fixed gain PID, Adaptive PID,
and Fixed gain PID with adaptive augmentation). Each was validated for its ability to
follow a fixed heading, after which each controller was used in algorithms to follow a
desired path. Again, each controller was found to get good following of the desired path,
with cross-track error kept to minimum while operating the vessel at slow speeds.
The operating condition of the vessel kept each motor outputting a constant 1100 RPM,
which gave a forward speed of about 4 knots in calm conditions. The heading following
controllers were tested to follow a southward (90°) heading, while the path following
controllers were tested to follow paths going in both northeast (45°) and southeast (135°)
directions. These paths were chosen due to the environmental conditions of the day –
during the trials, waves began at 2 feet and grew to 2-3 feet, while wind at the beginning
76
averaged 8 knots from southeast, and increased to 12 knot average from southeast during
the time from 10:00 am until 2:45 pm.
The directions for path following were chosen to give two difficult conditions for
following a path: driving directly into the wind, and taking the wind from off the beam of
the boat. This choice also provided some more interesting data: in two of the trials, the
forward speed of the boat nearly matched the environmental conditions, and the boat made
very slow forward progress, very nearly station keeping. As it is the goal of this thesis to
present a station keeping controller, these trials were run for extended time, and these
results are presented as well. This section will first present the results for heading
following, then path following, with additional results from the near station keeping cases,
then finish with conclusion.
4.3.1 Ocean Power Heading Following
Each heading following controller was tested once with gains recommended from
previous testing onboard R/V Lee. One trial was deemed necessary in order to verify that
the controller worked, and to allow for finer tuning in path following trials.
4.3.1.1 Fixed Gain PID Controller
The first controller tested was the fixed-gain PID controller. The trial was conducted to
follow a southerly heading, a constant 180°. The heading following trials were the first
ones conducted, and had weather conditions of 2 foot waves, with wind averaging 8 knots
out of the southeast. The gains used for these runs were based on gains found during trials
on R/V Lee and can be seen in Table 4.17.
77
Table 4.17: PID Heading Following Control Gains Fixed Gain PID Gains
Gain P 0.75 I 0.0009 D 3
One thing noticed during the run was that there was some inaccuracy in the calibration
of the engine angle sensor. This can be seen in Figure 4.25, where there is a bias between
the actual and desired engine angles. However, even through this bad calibration, the
controller did follow the desired heading, as shown in Figure 4.26. There is overshoot in
the initial phase, partially due to the difference between initial actual and desired heading.
0 100 200 300 400 500 600-40
-30
-20
-10
0
10
20
30
40
50
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time
Actual
Desired
Figure 4.25: Plot of Engine Angle and Desired Engine Angle over Time, PID Heading Following
The result of this engine angle miscalibration can be seen in Table 4.18, which provides
quantification of errors in the heading following trial. As expected, there is large standard
78
deviation of engine angle error; however heading error is still kept low in the second half of
the run with 1.8548° heading angle error standard deviation over the final 5 minutes.
Table 4.18: Quantification of Error, Fixed Gain PID Heading Following Standard Deviation of Error, Heading Following Trial, Fixed gain PID
Heading Engine Angle Heading Final 5 min Engine Angle Final 5 min 8.2272° 2.3204° 1.8548° 3.0440°
0 100 200 300 400 500 600140
150
160
170
180
190
200
210
220
230
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.26: Plot of Heading and Desired Heading over Time, PID Heading Following
This run shows the PID controller works well to follow the desired heading, even with
one sensor not working as it should. After this run, the engine angle sensor was
recalibrated, and it was decided that this trial worked well enough to test the next
controller.
4.3.1.2 Adaptive PID Heading Following
79
The next heading following algorithm tested was Adaptive PID. This trial was
conducted after the fixed-gain PID heading following controller, and was also to follow a
southerly heading. The control gains for this controller can be found in Table 4.17.
Table 4.19: Adaptive PID Heading Following Gains Adaptive PID Gains
Γ σ P 0.001 -0.00002 I 0.00000001 -0.00005 D 0.008 -0.001
0 100 200 300 400 500 600 700-8
-6
-4
-2
0
2
4
6
8
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time, Ad PID
Actual
Desired
Figure 4.27: Actual and Desired Engine Angle, Adaptive PID Heading Following Trial
Figure 4.27 shows the desired and actual engine angle for this run, and the recalibration
has worked well. The actual heading follows very well to the desired, and the engine angle
error is minimized. This is seen in Figure 4.28, which shows actual and desired heading
over time, and has very good tracking of the desired heading.
80
Table 4.20 presents quantification of errors for this run. As Figure 4.27 shows, there is
an overshoot of desired engine angle near the beginning of the run, and this is also seen in
the plot of heading in Figure 4.28. As Table 4.20 shows, this initial overshoot can be seen
as both engine angle and heading error reduce over the final 5 minutes of the trial. The
engine angle error is now reduced, with a standard deviation of 1.1551° over the final 5
minutes, although the heading error for the adaptive PID is actually higher than that of the
fixed-gain PID tested in the preceding section. The oscillation about the desired heading in
Figure 4.28 shows evidence of this.
0 100 200 300 400 500 600 700160
165
170
175
180
185
190
195
200
205
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time, Ad PID
Actual
Desired
Figure 4.28: Plot of Actual and Desired Heading over Time, Adaptive PID Heading Following
Table 4.20: Quantification of errors, Adaptive PID Heading Following
Standard Deviation of Heading Trial Error, Adaptive PID Heading Engine Angle Heading Final 5 min Engine Angle Final 5 min 4.5313° 1.4963° 2.849° 1.1551°
81
The adaptive gains for the run are presented in Figure 4.29. From Figure 4.29, the
adaptive gains have large increases in the first 100 seconds of the trial, then the P and D
gains have nearly constant slopes and increase gradually, while the I gain has small
increases and decreases. The constantly increasing P gain and the very small D gain (ends
trial at value of 0.1, while fixed-gain PID trial had D gain of 3) could have contributed to
the increased oscillation about the desired heading. For the path following trials it was
decided to decrease the PΓ term’s magnitude to eliminate the long-term gain increase and
reduce oscillation about the desired heading.
0 100 200 300 400 500 600 700-0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I(x1000)D
Figure 4.29: Adaptive Gains over Time, Adaptive PID Heading Following
4.3.1.3 Augmenting PID Heading Following Trial
82
The final heading following controller tested was the PID with adaptive augmenting
gains controller. This trial was run after the adaptive PID trial and like the previous runs,
was to follow a southerly heading. Table 4.21 presents the gains used for this run.
Table 4.21: Augmenting PID Heading Following Gains Augmenting Controller Gains
Fixed Gains Adaptive PID Gains Γ σ
0.5 P 0.002 -0.001 0.0009 I - -
2 D 0.002 -0.001
Figure 4.30 shows the desired and actual engine angle. Like the previous run, there is
very close following of the desired engine angle. This is evidenced in Table 4.22, with
again low standard deviation of engine angle error over the course of the run and even
lower engine angle error over the final 5 minutes of the run. Additionally, Table 4.22 also
shows there is very low heading error, with only 2.3136° heading error standard deviation
over the course of the run, which reduces to 1.4312° over the final 5 minutes of the run. A
plot of the desired and actual heading can be seen in Figure 4.31. When compared with
Figure 4.28, it can be seen that there is noticeably smaller oscillation about the desired
heading with the augmenting controller.
83
0 100 200 300 400 500 600 700-15
-10
-5
0
5
10
15
Time (s)
Eng
ine
Ang
le (
Deg
rees
)
Engine Angle and Desired Engine Angle over Time, Augment
Actual
Desired
Figure 4.30: Plot of Actual and Desired Heading over Time, Augmenting Heading Following Trial
0 100 200 300 400 500 600 700170
175
180
185
190
195
200
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time, Augmenting
Actual
Desired
Figure 4.31: Plot of Actual and Desired Heading over Time, Augmenting Heading Trial
84
0 100 200 300 400 500 600 7000.5
1
1.5
2
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time, Augmenting
P
D
Figure 4.32: Plot of Gains over Time, Augmenting Heading Following Trial
Table 4.22: Quantification of errors, Adaptive PID Heading Following
Standard Deviation of Heading Trial Error, Adaptive PID Heading Engine Angle Heading Final 5 min Engine Angle Final 5 min 2.3136° 1.7608° 1.4312° 1.4185°
The total P and D gains can be seen in Figure 4.31. The D gain constantly reduces,
while the P gain increases sharply in the beginning, then slowly increases with a near
constant slope for the duration of the trial. For the path following trials of this controller,
these results recommended decreasing the magnitude of PΓ in order to minimize the long-
term constant increase in gain and to increase DΓ to allow the D term to more quickly
converge to a near-constant value.
While the heading following runs were not comprehensive, they proved that the
heading following controllers did work as they were supposed to, and these controllers
85
were used as a basis for the next section, which outlines the step in going from following a
fixed heading to following a desired path over ground with variable heading.
4.3.2 Ocean Power Path Following
After validation of the heading following controllers, next was testing of the controllers
to follow a desired path over ground. The same three control methodologies as those used
in Section 4.3.1 are used for path following, while the first-layer controller to calculate
desired heading is the same fixed-gain PID controller as that used in Section 4.2.2, with
gains of 02.0,00002.0,03.0 === DIP KKK .
In this section, the PID path-following controller is presented with one set of gains for
its ability to follow paths of 45° and 135°. The adaptive PID and augmenting controllers
each have 2 sets of gains shown, each for its ability to follow 45° and 135°.
4.3.2.1 Fixed Gain PID Path Following Trial
Two runs were conducted with the PID path following controller: one following a 45°
(NE) path, and one following a 135° (SE) path, both controllers using the same set of gains.
When this trial was run, the wind had increased to average speed of 9 knots out of the
southeast, and waves were 2 feet. Table 4.23 presents gains used in this trial.
Table 4.23: Fixed gain PID path following gains Fixed Gain PID Gains Gain
P 0.75 I 0.0009 D 3
Figure 4.33 shows the actual and desired heading for each run. There is some
overshoot in the initial convergence period, but then each follows the desired heading well.
The cross track error is found in Figure 4.34, and shows overshoot in the beginning of trial,
86
then stays very close to the desired path. Table 4.24 contains quantification of errors for
these trials
0 200 400 60020
30
40
50
60
70
80
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 200 400 600120
130
140
150
160
170
180
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.33: Plot of Heading and Desired Heading over Time, Fixed Gain PID Path Following (a) Run
1, (b) Run 2
0 100 200 300 400 500 600-8
-6
-4
-2
0
2
4
6
8
Time (s)
Cro
ss-T
rack
Err
or (
m)
Cross-Track Error Over Time, PID Path Following
0 100 200 300 400 500 600-8
-7
-6
-5
-4
-3
-2
-1
0
1
2
Time (s)
Cro
ss-T
rack
Err
or (
m)
Cross-Track Error Over Time, PID Path Following
Figure 4.34: Plot of Cross Track Error over Time, Fixed Gain PID Path Following (a) Run 1, (b) Run 2
(a) (b)
(a) (b)
87
Table 4.24: Quantification of Errors for PID Path Following Standard Deviation of Error, Path Following Trial, Fixed Gain PID
Run Heading Cross Track Heading Final 5 min Cross track Final 5 min 1 4.7311° 1.7071 m 2.2325° 0.7828 m 2 3.7083° 1.1561 m 1.3381° 0.4131 m
As shown in Table 4.24, heading error is mitigated well, especially in the final 5
minutes. There is better overall performance in the second run, which went southeast as
opposed to the northeast. This could be due to the wind being taken on the beam in the
first trial, which can push the vessel off track more than going into the wind. The second
run shows very good performance, keeping standard deviation of cross track error at about
0.4 m over the final 5 minutes, and has heading error standard deviation of 1.3381° over
that same time period. The first run also performs well over the final 5 minutes considering
the wind direction, with cross track standard deviation under 0.8 m, and heading error
standard deviation of 2.2325° in that time period. After seeing good PID controller
performance from these runs, the next controller was tested.
4.3.2.2 Augmenting PID Path Following Trial
The next controller tested was the fixed gain PID controller with adaptively augmented
gains. For this controller, two sets of gains were tested, with each set of gains used to
follow paths of 45° and 135° for a total of four trials of this controller.
For these trials the wind speed had increased to an average of 11 knots out of the
southeast, with wave height of 2-3 feet. Table 4.25 presents the gains used for these trials.
Actual and desired heading over time are presented in Figure 4.35, Figure 4.36 shows cross
track error, and the augmenting gains can be found in Figure 4.37. Note that Run 1 is gain
set 1 SE path, Run 2 is gain set 1 NE path, Run 3 is gain set 2 SE path, and Run 4 is gain
set 2 NE path.
88
Table 4.25: Augmenting Controller Gains for Path Following Trials Augmenting Controller Gains
Fixed Gains Adaptive Parameters Gain set 1 and 2 Gain set 1 Gain Set 2
Γ σ Γ σ 0.5 P 0.0002 -0.0002 0.0005 -0.00001
0.0009 I - - - - 2 D 0.002 -0.001 0.004 -0.001
As shown in Figure 4.35, the plots of gain set 1 (Runs 1 and 2) have noticeably more
heading error oscillation than those of gain set 2 (Runs 3 and 4). This can be because of
the increased D adaptation rate in the second gain set, which works to reduce overshoot.
Table 4.26 shows quantification of error, where it can be seen that the errors are greatly
reduced in Runs 3 and 4.
Table 4.26: Quantification of Errors, Augmenting PID Path Following Standard Deviation of Error, Path Following Trial, Augmenting
Run Heading Cross Track Heading Final 5 min Cross track Final 5 min 1 3.968 1.5883 3.563 0.614 2 6.3174 2.2408 4.1151 1.2233 3 1.9024 2.8421 1.5357 0.2464 4 2.6057 1.1515 1.8153 0.6472
89
0 100 200 300 400 500 600120
130
140
150
160
170
180
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 40010
20
30
40
50
60
70
80
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600 700130
140
150
160
170
180
190
200
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600 70030
40
50
60
70
80
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.35: Heading and Desired Heading over Time, Augmenting Path Following (a) Run 1, (b) Run 2, (c) Run 3, (d) Run 4
In Figure 4.36, there can be seen some overshoot in Runs 1 and 2, whereas there
appears to be less in Run 4. Note that the current encountered in Run 3 was nearly the
forward speed of the vessel, which meant it nearly held station during this trial. In this
plot, it can be seen in Run 3 that there is very small oscillation about the desired path after
initial convergence. Table 4.26 shows that cross track error is reduced by at least 50% in
Runs c and d over the final 5 minutes. Run 3 had large overall cross track error because of
the strong environmental conditions it was operating in, and the vessel got pushed around a
lot during the initial convergence period. However, in the final 5 minutes, Run 3’s cross-
track error standard deviation was only 0.2464 m.
(a)
(c)
(b)
(d)
90
0 100 200 300 400 500 600-15
-10
-5
0
5
10
Tim
e (s
)
Cross Track Error (m)
Cross track Error over Time, Augmenting
0 100 200 300 400 500 600-15
-10
-5
0
5
10
Tim
e (s
)
Cross Track Error (m)
Cross track Error over Time, Augmenting
0 100 200 300 400 500 600-15
-10
-5
0
5
10
Tim
e (s
)
Cross Track Error (m)
Cross track Error over Time, Augmenting
0 100 200 300 400 500 600-15
-10
-5
0
5
10
Tim
e (s
)
Cross Track Error (m)
Cross track Error over Time, Augmenting
Figure 4.36: Plot of Cross Track Error over Time, Fixed Gain PID Path Following (a) Run 1, (b) Run 2, (c) Run 3, (d) Run 4
The total gains (Fixed + adaptive) are plotted in Figure 4.37. The gains for each run
look to do very similar things: The P gain increases slightly and the D gain decreases. It
can be seen that the D gains in Runs 3 and 4 decrease faster, because of the increased D
adaptation rate. In each run, the P gains are very similar over the course of the trials. The
gains used for Runs 3 and 4 are chosen as the gains to use in the station keeping controller
because of their robust performance in following two different paths.
(a)
(c)
(b)
(d)
91
0 100 200 300 400 500 6000.5
1
1.5
2
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
0 100 200 300 4000.5
1
1.5
2
2.5
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
0 100 200 300 400 500 600 7000.5
1
1.5
2
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
0 100 200 300 400 500 600 7000.5
1
1.5
2
Time (s)
Ada
ptiv
e G
ain
Total Gains over Time
P
D
Figure 4.37: Plot of Total Gains, Augmenting Path Following Trial (a) Run 1, (b) Run 2, (c) Run 3, (d)
Run 4
4.3.2.3 Adaptive PID Path Following Trial
The last controllers tested were the adaptive PID controllers. These trials were run in
the same manner as the augmenting trial in Section 4.3.2.2: Two sets of gains were used,
and each set of gains was tested to follow paths of 45° (Northeast) and 135° (Southeast).
For these trials, the average wind speed was 11 knots, coming out of the southeast and
wave height was 2-3 feet. Table 4.27 has the gains used for the trials; Note that the
adaptation rates were the same for all trials, but for gain set 2 (Runs 3 and 4) there were
constant gains added to the adaptive gains.
(a)
(c)
(b)
(d)
92
Figure 4.38 presents actual and desired heading, cross track error can be found in
Figure 4.39, and the adaptive gains are shown in Figure 4.40.
Table 4.27: Adaptive Gains used for Path Following Trials Adaptive Parameters Gain Set 1 Gain Set 2
Γ σ Γ σ + Constant P 0.00005 -0.00002 0.00005 -0.00002 0.75
I 1E-10 -
0.000001 1E-10 -0.000001 0.0009 D 0.0008 -0.001 0.0008 -0.001 3
0 100 200 300 400 500 6000
100
200
300
400
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600-50
0
50
100
150
200
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600100
150
200
250
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
0 100 200 300 400 500 600 70030
35
40
45
50
55
Time (s)
Hea
ding
(D
egre
es)
Heading and Desired Heading over Time
Actual
Desired
Figure 4.38: Heading and Desired Heading over Time, Adaptive PID Path Following (a) Run 1, (b) Run 2, (c) Run 3, (d) Run 4
As shown in Figure 4.38, there is noticeable heading error in Runs 1 and 2, and a lag
between desired and actual heading for about the first 3 minutes. This can be attributed to
the gains starting at zero and needing to converge to values which have the boat follow the
correct heading. It should be noted that after the convergence period the heading does
(a)
(c)
(b)
(d)
93
follow the desired, but not very well. This can be seen in Table 4.28, where the overall
heading error for Runs 1 and 2 are 27.8659° and 19.4035° respectively, but are reduced to
2.5883° and 3.9084° over the final 5 minutes. Comparatively, the heading error for Runs 3
and 4 is less than 33% of that for Runs 1 and 2 over the final 5 minutes.
0 100 200 300 400 500 600
-30
-20
-10
0
10
20
Time (s)
Cro
ss T
rack
Err
or (
m)
Cross Track Error over Time, Adaptive PID
0 100 200 300 400 500 600
-30
-20
-10
0
10
20
Time (s)
Cro
ss T
rack
Err
or (
m)
Cross Track Error over Time, Adaptive PID
0 100 200 300 400 500 600
-30
-20
-10
0
10
20
Time (s)
Cro
ss T
rack
Err
or (
m)
Cross Track Error over Time, Adaptive PID
0 100 200 300 400 500 600
-30
-20
-10
0
10
20
Time (s)
Cro
ss T
rack
Err
or (
m)
Cross Track Error over Time, Adaptive PID
Figure 4.39: Cross Track Error over Time, Adaptive PID Path Following (a) Run 1, (b) Run 2, (c) Run 3, (d) Run 4
The cross track error can be seen in Figure 4.39. Following from the high heading error
in Runs 1 and 2, there is also a lot of position error in the initial phase of Runs 1 and 2 – in
Run 1, the vessel does a small figure-8 before it follows the desired path, and follow the
path with noticeable overshoot for some time. Similarly, in Run 2, there is a lot of
overshoot before the vessel converges on the desired path, and it does not follow the path
very well. This is reflected in the quantitative analysis, where Runs 1 and 2 have high
overall standard deviation of heading error – more than 9 and 7 meters, respectively. The
(a)
(c)
(b)
(d)
94
cross track error does reduce greatly over the final 5 minutes however, with Runs 1 and 2
reducing to cross track error 0.7143 m and 1.1185 m.
Conversely, in Runs 3 and 4, the vessel follows the path well. Similar to Run 3 in
Section 4.3.2.2, Run (c) in Figure 4.39 is another which is very comparable to station
keeping with the vessel initially getting pushed back, then making slow headway along the
desired path.
After getting initially pushed back by the environmental conditions, Run 3 has
extremely good tracking of desired heading (1.2762° standard deviation of heading error
over final 5 minutes) and minimal cross track error, with only 0.2336 m standard deviation
in final 5 minutes. Run 4 also has very good tracking of the desired path, with minimal
overshoot in the initial convergence phase. This gain set has much less error than Runs 1
and 2, having heading error standard deviation of 1.6082° and cross track error of 0.4513 m
over the final 5 minutes.
95
0 100 200 300 400 500 600-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
0 100 200 300 400 500 600-0.2
-0.15
-0.1
-0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
0 100 200 300 400 500 6000.5
1
1.5
2
2.5
3
3.5
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
0 100 200 300 400 500 600 7000.5
1
1.5
2
2.5
3
Time (s)
Ada
ptiv
e G
ain
Adaptive Gains over Time
P
I (Scaled 1000x)D
Figure 4.40: Plot of Total Gains, Adaptive PID Path Following Trial
Table 4.28: Quantification of Errors, Adaptive PID Path Following Trials
Standard Deviation of Error, Path Following Trial, Adaptive PID Run Heading Cross Track Heading Final 5 min Cross track Final 5 min
1 27.8659 9.2457 2.5883 0.7143 2 19.4035 7.4453 3.9084 1.1185
3 4.9042 4.2304 1.2762 0.2336 4 1.9953 0.7287 1.6082 0.4513
The adapting gains are found in Figure 4.40. In runs 1 and 2, the gains all start at zero
and take about 2 minutes to converge to nearly constant values. This is about the amount
of time that it took for the actual and desired heading to converge, and it was in this initial
period when the vessel did the unintentional figure 8 in Run 1. It is promising to see the
adaptive gains in Runs 1 and 2 get to nearly constant values and stay there for the last 400
seconds of the trial. In Runs 3 and 4, the P and I gains stayed nearly constant, while the D
(a)
(c)
(b)
(d)
96
gain decreased constantly from the initial value of 3. It is of interest to see that the
performance of Runs 3 and 4 is similar to that of Runs 3 and 4 of the augmenting controller
in Section 4.3.2.2. The adaptive parameters from Gain Set 2 are chosen as those which will
be used for the adaptive steering control in the station keeping controller.
Two trials were run directly into strong environmental conditions: Run 3 of the
augmenting controller, and Run 3 of the Adaptive PID controller. Both of these runs,
following a southeast path, made very slow headway and were very nearly station keeping.
Figure 4.41 shows zoomed in plots of the North and East displacement for these two
controllers over the first 10 minutes of their runs. The paths that these controllers take in
getting pushed back by the environmental conditions are similar to those taken by the
vessel in the numerical simulation for station keeping, and these results show a good bridge
between path following and the ultimate goal of this work, station keeping.
97
-20 0 20 40-50
-40
-30
-20
-10
0
10
20
30
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement zoomed in, Augmenting
-20 0 20 40-50
-40
-30
-20
-10
0
10
20
30
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
North and East Displacement zoomed in, Adaptive PID
Figure 4.41: Plot of North and East Displacement for runs into Strong Environmental Conditions
98
4.3.3 Heading and Path Following Conclusions
The data presented in this section provides good evidence that the developed path-
following controllers work well to force the Ocean Power vessel to follow a desired path
over ground while minimizing heading error and cross track error. Each path following
controller methodology tested was able to keep standard deviation of cross track error
under 1 meter, and heading error under 2°. These controllers will be used to control engine
angle as the LabVIEW programs are modified to follow the desired heading for station
keeping and the thrust is controlled to complete the final step of automatic station keeping.
99
After the successful development and testing of the heading- and path-following
controllers, the next step was to modify these algorithms for holding station. The
modifications to the path-following algorithms are discussed in this section, as well as
results from tuning the algorithms in the numerical simulation. The controller development
and tuning in simulation in this section has also been presented in [11].
These algorithms for station keeping differ from the path-following algorithms in that
now thrust is a variable, whereas it was a constant previously. The net thrust dictated by
the controllers is used to minimize along-track error, while differential thrust is used in
these station keeping algorithms to increase control authority over the vessel’s heading.
Because of this, the R/V Lee can not be used as a station keeping test platform for these
algorithms, as it has a single outboard motor.
5.1 Station Keeping Controller Development
The station keeping goal in this thesis is to minimize both position error and control
effort. For twin outboard vessels, three control variables exist: the angle of the outboard
motors with respect to the fore-aft plane of the vessel, and the thrust output from each of
the two motors. A two-layer control methodology is used to command these control
variables, in which the desired heading is calculated in the first layer, while the net forward
thrust, differential thrust, and outboard motor angle are determined in the second layer.
Coupling exists between the engine angle control system and thrust system, as the heading
5 STATION KEEPING CONTROLLER DEVELOPMENT
100
of the vessel is controlled using both the steering angle of the outboard motors and
differential thrust.
In this work, two methods for controlling the angle of outboard motors are utilized:
fixed-gain PID, and PID with adaptively augmented gains. Similarly, two algorithms for
throttle control are used: fixed-gain PID, and PID with adaptive differential throttle. This
section develops and compares 3 combinations of the above controllers in the second layer:
PID Fixed-gain engine angle controller and PID throttle control (PID-PID); PID Fixed-gain
engine angle controller and PID with adaptive differential throttle (PID-Adaptive); and
finally PID with adaptively augmented gains used for engine angle control and the PID
with adaptive differential gains used for throttle control (Augmenting-Adaptive).
The engine angle controllers used in this paper are developed in Section 4. These
controllers use the difference between actual and desired vessel heading (described in
further detail in Section 5.1.1) to command the angle of the boat’s outboard engines.
The fixed-gain PID throttle control law used in this paper was previously presented in
[19]. To create the PID controller with adaptive differential thrust, the throttle laws in [19]
are modified to include adaptive algorithms for calculating the differential thrust control
gains. This controller is developed such that when the difference between desired and
actual heading is consistently large, such as in weather with strong wind and low current,
the adaptive gains increase and enable a significant amount of differential thrust.
Conversely, when desired and actual heading are consistently close to one another, the
adaptive gains become small and differential thrust is minimal, leaving heading control
primarily to the vessel’s steering system.
Section 5.1.1 explains the calculation of the desired heading in the first layer used by all
of the controllers presented in this paper, Sections 5.1.2 and 5.1.3 present the two throttle
101
controllers (fixed-gain PID and PID with adaptive differential thrust), and Sections 5.1.4
and 5.1.5 outline the two steering controllers used (PID and PID with adaptively
augmented gains).
5.1.1 Calculation of Desired Heading
The desired heading is calculated for all three of the developed controllers as previously
presented in [12]. This method of calculating the desired heading uses the position error of
the vessel in the NED frame and its integral to drive the bow of the vessel into the
prevailing environmental conditions. The bow is driven into the environmental conditions
because this controller will be frequently used to hold station during instrument
deployments in the Gulf Stream, with the sensor packages deployed off the stern of the
vessel. The desired heading is calculated in radians as
πψ +++= ∫∫− ),(tan
00
12
t
ehe
t
ehed dtXaXdtYaY . (8)
In this formula dactuale YYY −= and dactuale XXX −= , where dX and dY are the desired X
and Y locations respectively, all expressed in meters; ha is a fixed integral gain; and
12tan−
is the four-quadrant inverse tangent function, commonly known as atan2.
5.1.2 Fixed Gain PID Throttle Controller
For the fixed gain PID throttle controller, the thrust generated by each engine is
controlled using the PID of position error in meters and the PID of heading error in radians.
These equations use only feedback which is easily measured by navigational instruments
common to many vessels, such as GPS and heading sensors. This eliminates the need for
102
costly and potentially cumbersome instruments such as a wind sensor and acoustic Doppler
current profiler. The thrust equations for the port and starboard engines respectively are
radtaauadtxaxaT
radtaauadtxaxaT
t
eee
t
ees
d
t
eee
t
eep
d
6
0
543
0
21
6
0
543
0
21
)cos(
)cos(
+++++=
−−−++=
∫∫
∫∫
ψψψ
ψψψ, (9)
where P)(• represents the port engine and S)(• indicates the starboard engine; ex is the x-
component of the distance from the center of gravity of the vessel to the desired location,
expressed in body-fixed frame; dactuale ψψψ −= is the heading error, with dψ as described
in (8); r is the angular rotation rate in body-fixed z-axis; and 61−a are constant
proportional, integral, and derivative gains. The output of (9) is thrust from each motor
given in Newtons.
In this controller, the gains used during the simulations are shown in Table 5.1. These
gains were found through iteratively tuning the controller to balance minimal position error
with smooth operation and minimized thrust magnitudes for efficient boat operation.
Table 5.1: PID Throttle Control Gains
1a 2a 3a 4a 5a 6a
8 (kg/ s2) 0.02 (kg/ s3) 12 (kg/s) 14(kg-m/rad- s2) 0.005(kg-m/rad- s3) 10(kg-m/rad- s)
5.1.3 PID Throttle Controller with Adaptive Differential Thrust
The PID Controller with adaptive differential thrust is similar to the controller
presented in Section 5.1.2. The difference is that gains 64−a in Section 5.1.2 have been
replaced with adapting PID gains instead of fixed gains. This is done so that when the
heading error is consistently large, the gains for differential thrust will increase; similarly
when heading error is consistently small, the adaptive gains will decrease to near zero.
103
Note that the fixed gains 31−a are the same values as in Section 5.1.2. The new equation for
thrust is:
rgdtgguadtxaxaT
rgdtgguadtxaxaT
TD
t
eTIe
TPe
t
ees
d
TD
t
eTIe
TPe
t
eep
d
+++++=
−−−++=
∫∫
∫∫
0
3
0
21
0
3
0
21
)cos(
)cos(
ψψψ
ψψψ, (10)
where 112
11 geg σψ −Γ−=&, 2222 geeg σψψ −∫Γ−=&
, and 3333 geeg σψψ −Γ−= &&. 3,2,1Γ
are
adaptation rates that are to be chosen by the designer, and 3,2,1σ is the sigma modification
term, used to prevent wind-up by reducing the value of 3,2,1g . The values selected for
3,2,1a, 3,2,1Γ
, and 3,2,1σ used to generate the results in this section are presented in Table 5.2.
Once again, these values were found through iterative tuning to find a good balance
between minimizing control input, maximizing station keeping performance and providing
smooth, slow-changing vessel operation.
Table 5.2: Adaptive PID Throttle Controller Gains
1)(• 2)(• 3)(•
a 8 0.015 12 Γ 5 .0005 -2 σ 0.02 0.02 0.02
5.1.4 Fixed Gain PID Engine Angle Controller
A fixed-gain PID controller is used as a baseline controller for engine angle control
because PID is a well-known algorithm and its performance can be easily compared to that
of the adaptive algorithm. The desired heading, actual heading, and rotation rate are the
inputs used by this controller. The output of the PID steering controller is the commanded
104
engine angle which is calculated to minimize heading error. The commanded engine angle
is calculated by:
rKKKu bDe
bIe
bP +∫+= ψψψ , (11)
where dactuale ψψψ −= is the heading error and its derivative is dactuale rrr −= , with the
desired heading calculated as in Section 5.1.1 (8) and the desired rotation rate is set equal
to zero. For this controller, the gains used for the simulation are shown in Table 5.3.
These gains were found using iterative tuning that minimized the initial heading overshoot
with fast convergence, while balancing this with the desire to keep the commanded engine
angle well within its achievable range. Please note that this controller converts heading
error in radians to engine angle in radians, canceling the units.
Table 5.3: PID Steering Controller Gains bPK b
IK bDK
5 0.0006 (s-1) 2 (s)
5.1.5 PID Steering Controller with Adaptive Augmenting Gains
This controller is a combination of methodologies used for the fixed-gain PID steering
controller (Section 5.1.1) and the adaptive differential thrust algorithm from Section 5.1.3.
This scheme uses the fixed-gain PID controller as a baseline control and has the adaptive
PID element augment it for enhanced robustness, similar to the application in [8]. The
baseline fixed-gain PID control is the same as was described in Section 5.1.4, with the
control equation given by (11),
rKKKu bDe
bIe
bP
PID +∫+= ψψψ . (12)
This PID controller is augmented with an adaptive component. Adaptive augmentation
adds adaptive gains to the fixed gains of the PID mentioned above with the goal of
105
improving tracking of the desired trajectory [8] and making the closed loop system more
robust. Note that in this application, only proportional and derivative terms are augmented;
the integral term is still a fixed gain. The adaptive portion of the control law that is used to
augment the fixed-gain PID controller is:
eADDe
ADP
AD rggu += ψψ , (13)
with the derivative of the adaptive control gains calculated by PePADP gg 1
2 σψ −Γ−=& and
DeeDADD grg 3σψ −Γ−=& .
Summation of the adaptive and fixed-gain control signals gives the total control command,
)()()( trgdtgtgtu eTOTDe
TOTIe
TOTP
TOTAL +∫+= ψψψ , (14)
where the total gains are defined by )( ADP
bP
TOTP gKg += , b
ITOTI Kg = and
)( ADD
bD
TOTD gKg += .
Each of the values represented by bDIPK ,, is the fixed-gain value used for the baseline
PID controller. Each 3,1Γ value represents adaptive gain multipliers, while each 3,1σ
determines the emphasis on the sigma modification term used to prevent wind-up. Also, a
saturation limiter is used on the adaptive gains so that they did not rise too high, where the
maximum adaptive gains are set to ±50% of the value of the fixed gains. The values for
DP,Γ , DIPK ,, , and DP,σ can be found in Table 5.4.
Table 5.4: PID with Adaptive Augmentation Controller Gains and Leakage Terms Proportional Integral Derivative Γ 1 -- 8 K 5 0.006 2 σ 0.035 -- 0.06
5.2 Station Keeping Controller Simulation Results
106
Three sets of simulations were analyzed to evaluate performance of the controllers.
These simulations were run to quantify how each control algorithm holds position in the
face of differing wind conditions with a constant northwardly flowing current of 1.5 m/s.
Wind conditions are varied for these simulations because wind is the most difficult
environmental force to deal with in station keeping, as it affects both heading and position
of the vessel. Current can be dealt with rather easily by stern-powered vessels, as current
primarily moves a vessel in the direction of flow. Without direct control over the sway
motion of the vessel and limited heading control, it is difficult for vessels with direct
control only over surge motion to mitigate heading or sway error while remaining in close
proximity to a location. Differential thrust helps control yaw, and both fixed-gain and
adaptive algorithms for differential thrust are used in these controllers.
For this set of simulations, the current for every trial is 1.5 m/s second in the Northward
direction (the mean surface water velocity measured near the core of the Gulf Stream off
Southeast Florida by [9]) and the significant wave height is 0.5 meters, with the mean wave
propagation direction in the same direction as the wind. The evaluated mean wind speeds
are 2, 5, and 10 m/s, blowing from west to east. These conditions are used because they are
conditions which a small vessel would be likely to face in the Gulf Stream off the coast of
Fort Lauderdale, where FAU conducts many operations on the Ocean Power. As the
Ocean Power is a small vessel (33 feet), it is unlikely that experiments would be carried out
in wind speeds higher than 10 m/s. Note that for each simulation, [0, 0] in the NED Frame
is used as both the starting point and the desired position and the initial heading of the
vessel is 170°.
5.2.1 Two Meters per Second Wind
107
The three developed station keeping control methodologies are first evaluated for a
wind speed of 2 m/s, corresponding to a Beaufort number 2, or Light Breeze. This is the
weakest wind force that these controllers are evaluated in, and each controller shows good
performance over the duration of the 600 second simulation. Figure 5.1 shows the North
and East displacement for each controller, Figure 5.2 presents the actual and desired
heading for each controller, and Figure 5.3 shows the port and starboard thrust.
In this case, each controller shows very similar performance for minimizing
displacement from the desired position. Each drifts between 20 and 25 meters north of
(0,0) and over the second 300 seconds of the simulation holds position within ±1 meter
east-west and within 5 meters north of the desired position while slowly converging
towards the desired location. In Figure 5.2, it can be seen that the augmenting steering cuts
down on overshoot and oscillation around the desired heading, as the two fixed-gain PID
steering controllers take longer to converge to equilibrium heading.
108
-4 -3 -2 -1 0 1 2 3 4-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
PID Steering with PID Differential Thrust
-4 -3 -2 -1 0 1 2 3 4-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
PID Steering with Adaptive Differential Thrust
-4 -3 -2 -1 0 1 2 3 4-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
Augmented PID Steering with Adaptive Differential Thrust
Figure 5.1: Plot of North and East Displacement for 2 m/s West Wind
Figure 5.3 shows the thrust profiles for each trial. The PID-PID controller uses the
least differential thrust at the beginning, but uses about 10N average differential thrust over
the first 100 seconds. Conversely, the adaptive differential thrust controllers use up to 90 N
of differential thrust for about the first 15 seconds, and then the vessel uses steering to
match the actual heading to the desired heading. After the initial convergence periods, the
fixed gain and adaptive controllers use only the steering angle of the outboards for
109
controlling heading, as shown in Table 5.5 where the mean and standard deviation of
differential thrust is less than 1 N.
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
PID Steering with PID Differential Thrust
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
PID Steering with Adaptive Differential Thrust
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
Augmented PID Steering with Adaptive Differential Thrust
Actual Heading
Desired Heading
Actual Heading
Desired Heading
Actual Heading
Desired Heading
Figure 5.2: Plot of Actual and Desired Heading, 2 m/s West Wind
As can be seen in Table 5.5, the controllers have very similar performance in terms of
position error. There is only 0.12 m difference between the controller with the least
average position error (Augmenting-Adaptive) and that with the most average position
error (PID-Adaptive). Note that the position error was found by finding the straight-line
distance between the center of gravity of the vessel and the desired location, or
110
22eep YXe += . It is good to see that the Augmenting-Adaptive controller has the least
average and RMS position error.
The three controllers had very similar results for average heading error and performed
well, each keeping average heading error under 0.12°. There becomes a slightly larger
discrepancy in the standard deviation of heading error, however. The Augmenting-
Adaptive controller had heading error standard deviation of 0.248, compared to 0.2882 for
the PID-Adaptive and 0.2901 for the PID-PID, representing 15% more heading error
variation than the Augmenting-Adaptive controller. This is important to watch, because as
there becomes more error variation, the magnitude of error increases, and with this the
ability of the vessel to hold station significantly decreases.
111
0 100 200 300 400 500 600-50
0
50
100
150
200
Time, Seconds
Thr
ust,
N
PID Steering with PID Differential Thrust
0 100 200 300 400 500 600-50
0
50
100
150
200
Time, Seconds
Thr
ust,
NPID Steering with Adaptive Differential Thrust
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
N
Augmented PID Steering with Adaptive Differential Thrust
Port
Starboard
Port
Starboard
Port
Starboard
Figure 5.3: Plot of Port and Starboard Thrust, 2m/s West Wind
5.2.2 5 Meters per Second Wind Case
The three developed station keeping control methodologies are tested for an increased
wind speed of 5 m/s, blowing towards the east. The simulations are run the same way as
for the previous wind speed, with a simulation run time of 10 minutes and a 1.5 m/s
northward current. Similar to Section 5.2.1, Figure 5.4 shows the North and East
displacement, the desired and actual heading are in Figure 5.5, and the throttles for each
controller are in Figure 5.6.
112
-5 -4 -3 -2 -1 0 1 2 3 4 5-5
0
5
10
15
20
25
East Diaplacement, MetersN
orth
Dia
plac
emen
t, M
eter
s
PID Steering with PID Differential Thrust
-5 -4 -3 -2 -1 0 1 2 3 4 5-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
PID Steering with Adaptive Differential Thrust
-5 -4 -3 -2 -1 0 1 2 3 4 5-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
Augmented PID Steering with Adaptive Differential Thrust
Figure 5.4: Plot of North and East Displacement, 5 m/s West Wind
Figure 5.4 shows that the augmenting PID steering with adaptive differential thrust has
the most East-West error during the initial portion of the simulation while the gains are
initializing, while the performance of the PID-PID and PID-Adaptive are similar to one
another. After the initial tuning phase, each controller holds position well similarly to one
another, as can be seen in the error quantification found in Table 5.5. Again, the Adaptive-
Augmenting controller has the lowest RMS position error (3.4071 m) and lowest average
113
position error (3.2839 m) of the three controllers. Again, because this is a relatively easy
test case, the performance of the three controllers are similar to one another.
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
PID Steering with PID Differential Thrust
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
PID Steering with Adaptive Differential Thrust
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
Augmented PID Steering with Adaptive Differential Thrust
Actual Heading
Desired Heading
Actual Heading
Desired Heading
Actual Heading
Desired Heading
Figure 5.5: Plot of Actual and Desired Heading, 5 m/s West Wind
Figure 5.5 shows that the Augmenting-Adaptive controller has the least average and
standard deviation of heading error of the three controllers over the last 5 minutes of
simulation. The Augmenting-Adaptive controller has 20% less standard deviation of
heading error than the PID-PID and PID-Adaptive controllers, as well as slightly less
average error (Table 5.5). It should be noted that each controller does successfully
converge towards the desired heading and stays within 2 degrees of the desired heading
114
during the last 5 minutes of the simulation. This is seen in finding the mean and standard
deviation of heading error, where the mean heading error is less than 0.5° and standard
deviation of heading error is under 0.35° for each controller in this trial.
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
N
PID Steering with PID Differential Thrust
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
N
PID Steering with Adaptive Differential Thrust
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
N
Augmented PID Steering with Adaptive Differential Thrust
Port
Starboard
Port
Starboard
Port
Starboard
Figure 5.6: Plot of Port and Starboard Thrust, 5 m/s West Wind
Differential thrust is not used much in this case, as shown in Figure 5.6. The PID-
Adaptive controller uses more differential thrust at the beginning than the other controllers;
at the beginning, the difference between port and starboard thrusts approaches 100
Newtons. Each controller has a smooth and controlled thrust profile, which is good for
crew working onboard. Each controller uses strong differential thrust for the first 15
seconds, then the port and starboard thrusts stay at about the same value for the remainder
115
of the simulation. Again, mean and standard deviation of differential thrust are all well
below 1 N for each controller. This shows that in windspeed of 5 m/s blowing across the
beam, the boat can still station keep using only steering, not yet needing differential thrust.
5.2.3 Ten Meters per Second Wind
Lastly, each controller is tested in a 10 m/s wind blowing from east to west and a 1.5
m/s northward current. This is the most difficult set of environmental conditions evaluated
in this thesis, as maintaining a desired heading gets more difficult as wind speed increases
and this represents the maximum wind speed in which the Ocean Power would most likely
be operated. Because of this strong beam wind, it can be expected that the use of
differential thrust will increase disproportionally for the adaptive differential thrust when
compared to the fixed-gain controller to better hold the heading while staying close to a
desired position. This is shown in Table 5.5, where the average differential thrust increases
about 5 fold (0.236 N to 1.086 N) for the PID-PID controller, while it increases over 1000
times (0.0040 N to 11.04 N) for the PID-Adaptive controller in going from the 5 m/s wind
case to 10 m/s wind.
As Figure 5.7 shows, the vessel gets blown almost 10 meters East in each test case, far
more East-West error than either of the two previous test cases. This can be attributed to
the stronger wind blowing from West to East. After the initial Eastward and Northward
movement, each controller moves the vessel towards the desired location, with each
controller actually having less average position error over the final 5 minutes than the
previous two cases. In this case, the PID-Adaptive and Augmenting Adaptive controllers
had almost identical performance in position error standard deviation, while the variation of
the PID-PID controller is slightly higher.
116
-2 0 2 4 6 8 10-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
PID Steering with PID Differential Thrust
-2 0 2 4 6 8 10-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
PID Steering with Adaptive Differential Thrust
-2 0 2 4 6 8 10-5
0
5
10
15
20
25
East Diaplacement, Meters
Nor
th D
iapl
acem
ent,
Met
ers
Augmented PID Steering with Adaptive Differential Thrust
Figure 5.7: Plot of North and East Displacement, 10 m/s West Wind
117
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
PID Steering with PID Differential Thrust
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
esPID Steering with Adaptive Differential Thrust
0 100 200 300 400 500 60050
100
150
200
250
Time, Seconds
Hea
ding
, D
egre
es
Augmented PID Steering with Adaptive Differential Thrust
Actual Heading
Desired Heading
Actual Heading
Desired Heading
Actual Heading
Desired Heading
Figure 5.8: Plot of actual and desired heading, 10 m/s West Wind
Figure 5.8 shows that both of the PID engine angle controllers did not hold the desired
heading as well as the augmenting-adaptive controller. As seen in Figure 5.9, the
Augmenting-Adaptive controller does not use much differential thrust, meaning that the
performance increase comes from the use of the augmenting steering controller over fixed
gain PID. While the adaptive-augmenting controller nearly matched the desired heading,
the PID steering controllers had more difficulty matching the desired heading, and even
had oscillation in heading towards the end of the simulation. This is shown in Table 5.5,
where the standard deviation of heading error over the final 300 seconds is 0.5934° for the
118
Augmenting-Adaptive controller, while the other controllers have greater than 20% more
heading error. Additionally, the Augmenting-Adaptive controller has the lowest average
position error over this time frame at -1.5593 m while the PID-Adaptive has the most at -
1.7045 m.
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
NPID Steering with PID Differential Thrust
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
N
PID Steering with Adaptive Differential Thrust
0 100 200 300 400 500 600-50
0
50
100
150
200
250
Time, Seconds
Thr
ust,
N
Augmented PID Steering with Adaptive Differential Thrust
Port
Starboard
Port
Starboard
Port
Starboard
Figure 5.9: Plot of Port and Starboard Thrust, 10 m/s West Wind
Figure 5.9 shows more differential thrust is being used by the controllers, especially the
adaptive differential thrust controllers. Once again, the PID-adaptive controller had the
largest difference between port and starboard thrust at the beginning of simulation and also
has the most at the end, with an average difference between port and starboard thrust of
119
11.04 N. The PID-PID controller does not use much differential thrust after the first
minute, while the PID-Adaptive and Augmenting-Adaptive controllers increase their use of
differential thrust through the simulation, with the Augmenting-Adaptive controller having
average differential thrust of 5.1046 N compared to 1.0860 N for the PID-PID controller
over the final 300 seconds.
5.2.4 Station Keeping Simulation Results Summary
All of the developed controllers successfully hold the simulated vessel near the desired
location over a variety of weather conditions. While all controllers have similar
performance in the light wind conditions, it can be seen that the fixed-gain steering
methodology has a more difficult time holding a desired heading than does the adaptive
methodology.
For each controller the average position error decreases as wind speeds increase. Table
5.5 shows that as the average position error decreases, the standard deviation of position
error tends to increase.
Advantages of adaptive control can be seen in the higher wind cases. In the 5 m/s and
10 m/s wind cases, the position performance of the PID-PID and PID-Adaptive controllers
continually degrades. However, the Augmenting-Adaptive controller has less position
error standard deviation in 10 m/s wind than 5 m/s wind (0.8923 m in 10 m/s wind as
opposed to 0.9082 m error in the 5 m/s case), and shows consistent performance over the
three tested environmental conditions.
In controlling vessel heading, the Augmenting-Adaptive controller significantly
outperforms the PID-PID and PID-Adaptive. In each case, the PID-PID and PID-Adaptive
have at least 15% more heading error than the Augmenting-Adaptive controller and as the
120
wind speed increases, so does the difference between these controllers and the
Augmenting-Adaptive, as the Augmenting-Adaptive controller has more than 20% less
heading error than the other controllers in 10m/s wind.
The use of adaptive control for differential thrust can also be seen in Table 5.5. In the
PID-Adaptive and Augmenting-Adaptive controllers, minimal differential thrust is utilized
in the 2 m/s and 5 m/s cases. However, the differential thrust standard deviation increases
by a factor of about 1000 in the 10 m/s case, showing the differential thrust activated when
it is needed. The standard deviation of differential thrust for the PID-PID controller steady
increases as the wind speed increases. Conversely, the standard deviation of differential
thrust is near zero (< 0.013N) for the PID-Adaptive and Augmenting-Adaptive controllers
in the 2 and 5 m/s cases, and then increases significantly in the 10 m/s wind case.
Comparatively, the differential thrust for the PID-PID controller lacks the ability to respond
as robustly to heading error as the adaptive controllers, as can be seen in Table 5.5, where
the PID-PID had the most differential thrust in the 2 and 5 m/s wind cases, then had the
least differential thrust in the 10 m/s wind case, when it was most needed. This shows that
the adaptive differential thrust has increased authority to activate when necessary to hold
heading, and as an extension, position better.
Table 5.5: Quantification of Errors Over Final 300 Seconds of Simulation RMS Position Error Heading Error Standard Deviation Differential Thrust Standard Deviation
2m/s Wind
5m/s Wind
10m/s Wind
2m/s Wind
5m/s Wind
10m/s Wind 2m/s Wind 5m/s Wind
10m/s Wind
PID-PID 3.5382 3.4655 3.2873 0.2901 0.3459 0.7811 0.1413 N 0.1682 N 0.3786 N
PID-Adaptive 3.5872 3.5301 3.3564 0.2882 0.3416 0.7745 0.0041 N 0.0045 N 2.5473 N Augmenting-
Adaptive 3.4792 3.4071 3.2960 0.248 0.268 0.5934 0.0010 N 0.0129 N 1.1852 N
Mean Position Error Mean Heading Error Mean Differential Thrust
2m/s Wind
5m/s Wind
10m/s Wind
2m/s Wind
5m/s Wind
10m/s Wind 2m/s Wind 5m/s Wind
10m/s Wind
PID-PID 3.4305 3.3484 3.1586 -0.1122 -0.4398 -1.16511 0.0065 0.236 1.086
PID-Adaptive 3.4854 3.4213 3.2357 -0.1189 -0.4455 -1.7045 0.0343 0.004 11.04 Augmenting-
Adaptive 3.3632 3.2839 3.1729 -0.1188 -0.4293 -1.5593 0.0035 0.0385 5.1046
121
The final goal of holding station in the open ocean using the Ocean Power is covered in
this section. This section presents the work done to implement the throttle control system
on the Ocean Power, and then present results of station keeping sea trials. Note that the
system for controlling steering presented in Section 4.1 and tested in Section 4.3 is used on
Ocean Power for steering.
6.1 Control System for Throttle
The motors on Ocean Power are Suzuki model DF300’s, each having 300 horsepower.
These motors use a completely electronic fly-by-wire system for gear shifting and throttle
control; no mechanical cables are used. Instead, communication is done via digital and
analog signals between computers in the boat’s helm and in the engines themselves to drive
actuators which do the actions of shifting and opening the throttle. The input to this system
are 2x 0-5VDC signals (Main and Sub) from the control lever, which are translated to
command gearing and throttle level by the Boat Control Module (BCM), the computer in
the boat’s helm. Figure 6.1 shows a diagram of the system, taken from the Suzuki owner’s
manual.
As shown in Figure 6.1, the Lever Position Sensor (LPS) provides 2x 0-5VDC signals,
the Main and Sub signals, to the BCM. From these signals the BCM communicates via a
proprietary Controller Area Network (CAN) with the Engine Control Module (ECM),
6 STATION KEEPING SEA TRIALS
122
which is housed in the engine itself. The signal from the BCM to the ECM commands both
gearing and throttle opening.
Figure 6.1: Diagram of Suzuki DF300 Throttle Control System
Because the CAN protocols are proprietary, and for ease of use, it has been decided to
replace the 0-5VDC signals from the LPS with voltage signals commanded by the throttle
control algorithms. By doing this, both the gear shifting and throttle can be commanded by
a single voltage signal. Note that this has to be done for each motor, so there will be 2
main signals and 2 sub signals, each of which will be controlled independently by a 4-
channel digital-to-analog signal converter.
For safety, switches will be used to choose which voltages will be sent to the BCM,
either those from the LPS or those from the algorithm as shown in Figure 6.1. The
switches are 4-pole, 3-position On-Off-On switches. Note that the switches can be flipped
while the motors are running to quickly give engine control to the LPS or to the computer.
16 Bit Analog Output
123
Dockside testing has been done to obtain relations between position of the LPS and
voltage output. Note that extensive dockside throttle testing is possible thanks to the
“Throttle Only” switch on the console, which allows the engines to increase RPM while
remaining in neutral gear, producing no thrust.
Data from dockside testing are presented in Tables 6.1 and 6.2. Table 6.1 shows the
voltages at which each motor is in neutral, wide open throttle (Forward and Reverse), and
the voltages at which each motor shifts from neutral into forward and reverse gear. Table
6.2 presents voltage and RPM data from dockside testing for main and sub signals in both
forward and reverse from 600 RPM (idle speed) to 2000 RPM. 2000 RPM was chosen as a
max value because station keeping is to be done at slow speeds, and the software will not
allow voltage to command RPM above 2000.
Table 6.1: Tested Relations between Throttle Positions and Voltages on RV Ocean Power Correlation of LPS Output Voltages to Lever Positions
Neutral WOT Forward WOT Reverse Shift into F Gear Shift into R Gear Port Main 2.18 4.52 0.54 2.5 2.86 Sub 2.7 0.55 4.5 2.37 3.03 Starboard Main 2.7 0.44 4.47 2.3 3.13 Sub 2.26 4.48 0.46 2.6 1.7
Table 6.2: Tested relations between Main and Sub Voltages and RPM from Idle to 2000 RPM Port motor Forward STBD Motor Forward
main V RPM Sub V RPM main V RPM Sub V RPM 2.21 650 2.65 650 2.77 650 2.27 650 3.02 700 1.87 700 1.92 700 3.05 700 3.09 750 1.81 750 1.89 750 3.15 750 3.11 825 1.77 825 1.84 800 3.17 800 3.17 900 1.73 900 1.82 850 3.19 850 3.18 950 1.78 950 1.78 900 3.22 900 3.2 1200 1.71 1200 1.81 1000 3.24 1150 3.22 1350 1.7 1350 1.78 1150 3.26 1200 3.24 1475 1.67 1475 1.75 1250 3.28 1350 3.25 1600 1.66 1600 1.75 1350 3.3 1600 3.28 1750 1.63 1750 1.71 1450 3.33 1700 3.29 1875 1.62 1875 1.68 1600 3.35 1800 3.32 2025 1.59 2025 1.66 1700 3.37 2000
1.63 1900 1.6 2100
124
Port Motor Reverse STBD Motor Reverse Main V RPM Sub V RPM Main V RPM Sub V RPM
2.2 650 2.71 650 2.76 650 2.22 650 1.3 725 3.6 700 3.6 700 1.4 700 1.28 750 3.64 750 3.62 750 1.37 750 1.24 850 3.67 800 3.68 800 1.29 800 1.21 900 3.7 875 3.72 850 1.26 850 1.18 1200 3.73 1100 3.74 900 1.24 900 1.17 1325 3.77 1175 3.77 1150 1.21 1150 1.13 1500 3.79 1350 3.79 1350 1.2 1250 1.11 1650 3.81 1475 3.82 1500 1.19 1350 1.1 1700 3.83 1600 3.83 1625 1.18 1400 1.08 1850 3.85 1750 3.85 1700 1.15 1600 1.06 2000 3.87 1900 3.87 1850 1.12 1700
3.89 2000 3.89 2000 1.1 1850 1.08 1900 1.06 2000
Each set of main and sub voltages add up to about 5V. Note that each signal was tested
individually with an oscilloscope, and the results could not be precisely repeated for each
trial. Also note that as the Port motor main voltages go up, the Starboard motor main
voltages go down, and vice versa. This is because the propellers are counter rotating, so
the starboard motor operating in forward gear spins the propeller in the opposite direction
of the port motor in forward gear.
For formulating an algorithm to calculate RPM from voltages, a linear correlation
between main voltage and RPM can be obtained, and sub voltage is easily calculated as sub
voltage equals 5V - main voltage. Figure 6.2 presents the motor RPM vs. main voltage
found through dockside trials.
125
Plot of Motor RPM vs LPS Main Voltage
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
0 500 1000 1500 2000 2500Motor RPM
LP
S V
olt
age Starboard Motor Forward
Starboard Motor Reverse
Port Motor Forward
Port Motor Reverse
Figure 6.2: Motor RPM vs. Main Voltage Plot
For switching throttle control from the LPS to the algorithm (and vice versa), the boat
will be first shifted to neutral gear. The station keeping software will be initiated and then
the switches will be flipped to supply voltage specified by the algorithm. The controller is
programmed so that when it is initiated, it will send out voltages which will keep the
motors in neutral, until told to begin station keeping. After the motors are running in
neutral and the controller is sending out voltage corresponding to neutral LPS position,
then the button in the LabVIEW Front Panel will be pressed to give the computer authority
to control gear shifting and increasing throttle. The motors can easily be returned to neutral
by pressing the button which activated station keeping again, which will disable station
keeping and return motors to neutral.
Similarly, when switching control back to the motors, the station keeping component is
to be disabled to keep the motors in neutral and the LPS level is also to be put into neutral
position, then the switches flipped to give throttle control back to the LPS. The boat can be
driven as normal again, with the LPS having full control over throttle and the computer
126
system having no influence. Figure 6.3 has a wiring diagram of this station keeping
system.
The “Off” switch position will be used so that if necessary, the signals from the
controller can be switched off, which will kill motor power. This is to be used only when
absolutely necessary, as there are other, less drastic measures to regain control, such as
deactivating the station keeping part of the LabVIEW program, which will put the vessel
back into neutral or by using the kill power switch on the center console.
By using this unique fly-by-wire system, it is possible to implement automatic control
of the throttle and shifting without worrying about dealing with complex mechanical
systems for throttle or how to shift gears. By harnessing the technology developed by
Suzuki and replacing the LPS-generated signals with those created by the computer, the
thrust and gearing are both commanded using one signal.
127
Figure 6.3: Wiring Diagram of Station Keeping Control System
128
6.2 Station Keeping Results on Ocean Power
Station keeping sea trials were conducted July 26, 2010 on the 33 ft Ocean Power
vessel operated by FAU’s COET. The three station keeping controllers (PID-PID, PID-
Adaptive, and Augmenting-Adaptive) were implemented and tested for their ability to hold
position in the Gulf Stream.
The trials were conducted from 10:00 am until 4:00 pm that day. The weather
conditions remained relatively constant during this time with the wind out of the East at 8
knots, an approximately 2 foot significant wave height; and the net environmental
conditions causing the boat to drift northward at a speed of 3 knots.
Each controller was tested for its ability to drive the boat to a fixed desired location and
remain near this location while mitigating the environmental forces. Upon controller
initialization, the desired location was chosen to be a distance ahead of the boat’s actual
location. This was done because if the desired position was the boat’s actual position at
initialization, the boat initially would try to shift gears constantly to make up for small
errors before the vessel drifted northward. By setting the desired location away from the
boat’s initial location, the motors shifted into gear once and then smoothly converged
towards the desired position.
Section 6.2.1 presents results from the PID-PID controller, Section 6.2.2 contains
results from the PID-Adaptive controller trial, while the Augmenting-Adaptive trial is
presented in Section 6.2.3.
6.2.1 PID-PID Controller Station Keeping Trial
The first controller tested is the PID-PID controller that is presented in Section 5.1.2 - a
fixed-gain PID heading control algorithm is used to calculate engine angle and a separate
129
fixed-gain PID control algorithm is used for calculating differential thrust. This controller
is used as a baseline controller for comparison with the performance of the adaptive
algorithms. The PID control gains used to calculate engine angle are those recommended
from the path-following results presented in Section 4.3.2.1, while the gains for differential
thrust are those used in the station keeping simulations presented in Section 5.2. Table 6.3
lists all gains used for this controller that are used in equations (1), (8) and (9).
Table 6.3: Gains for PID-PID Station Keeping Controller Gains used for PID-PID Station Keeping
Heading Thrust Diff Thrust Heading P 0.75 -4 -14 - I 0.0009 -0.001 0.12 0.002 D 3 -12 -10 -
Figure 6.4 presents plots of heading and desired heading obtained using this controller,
while the corresponding vessel displacement can be found in Figures 6.5 and 6.6, and the
throttle data is shown in Figure 6.7.
130
0 500 1000 1500 2000 2500155
160
165
170
175
180
185
190
195Plot of Actual and Desired Heading, PID-PID Station Keeping
Time (Seconds)
Boa
t H
eadi
ng (
Deg
rees
)
Actual
Desired
Figure 6.4: Plot of Actual and Desired Heading, PID-PID Station Keeping
As shown in Figure 6.4, there is a considerable initial heading error that is nearly
eliminated within the first 25 seconds of the trial. After this the actual heading follows the
desired heading for most of the simulation besides the relative high frequency error
component of the actual heading caused by the wind and wave disturbances. This can be
seen in Table 6.6, where the standard deviation of heading error over the entire run is
2.9912°, and reduces to 2.2408° over the final half of the trial. The two spikes in low
frequency heading error occur at roughly 1100 and 1600 seconds into the test run which are
the same times that the spikes in displacement presented in Figure 6.5 occur, with the
desired heading being greatly influenced by the East displacement. The spikes in heading
error are where the East displacement is highest, and Figure 6.7 shows that the differential
thrust also works to fix this heading error at time 1100 s.
131
0 500 1000 1500 2000 2500-15
-10
-5
0
5
10
15
20
25
30
35Plot of Displacement over Time, PID-PID Station Keeping
Time (s)
Dis
plac
emen
t (m
)
NorthEast
Total (sqrt(N2+E2))
Figure 6.5: Plot of North, East, and Total Displacement, PID-PID
Figure 6.6 shows the plot of North and East displacement over the course of the trial as
well as the magnitude of the position error. The vessel starts 22 m north and 9.5 m west of
the desired location and drifts back to a max north displacement of 34.14 m, approximately
three boat lengths, before the thrust overcomes the northward current and brings the vessel
back towards the desired location. The vessel then makes its way to the desired position
well, but once within 5 m of north error significant sway (East-West) error becomes
prevalent. This is where the large changes in desired heading take place. A situation like
this is one in which adaptive control over differential thrust can be of benefit, as the
differential thrust would activate fast in response to heading error and then return to near
zero value after actual and desired heading are close to one another.
132
However, as shown in Table 6.6, performance in minimizing positional error is still
better than what is needed for most offshore applications. Over the course of the trial, the
vessel had a mean position error of 8.4642 m and an RMS position error of 12.3427 m,
while these values reduce to 5.2878 m and 4.6117 m respectively over the final half of the
trial. Note that the position error is calculated as 22ENP EEE += .
-15 -10 -5 0 5 10 15-5
0
5
10
15
20
25
30
35Plot of North and East Displacement, PID-PID Station Keeping
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
Figure 6.6: Plot of North and East Displacement, PID-PID Station Keeping
The approximated RPM of the motors over time are shown in Figure 6.7. Please note
that motor RPM was not directly measured. Rather, the lever position sensor (LPS) voltage
to each motor was recorded and the linear relationship found dockside between LPS
voltage and neutral RPM is used to approximate RPM. However, because of the increased
loading on the engine when running in gear (Turning the propeller, overcoming the current,
etc) the actual RPM seen while running the trials were significantly lower than those
133
measured dockside. The highest RPM seen during trials was 1400, at voltage
corresponding to outputting 2000 RPM dockside.
The desired (approximate) starboard RPM rose above the port around 1100 s, right
when there was large heading error as shown in Figure 6.4. This shows good reaction to
the spike in heading error, but the differential thrust magnitude remains large for the
remainder of the trial, although the heading error is relatively small for the remainder of the
trial. Reducing the integral term while increasing the proportional gain will help eliminate
this long-term thrust difference after the actual and desired heading converge.
0 500 1000 1500 2000 25000
500
1000
1500
2000
2500Port and Starboard RPM Estimate Over Time, PID-PID
Time (s)
RP
M
Port
Starboard
Figure 6.7: Plot of Estimated Port and Starboard RPM over Time, PID-PID
6.2.2 PID-Adaptive Controller Station Keeping Trial
134
The second controller tested was the PID-Adaptive controller presented in Section
5.1.3- a fixed-gain PID algorithm used to calculate the engine angle and an PID controller
with adaptive gains used for calculating differential thrust instead of fixed gains tested in
the previous section. The PID algorithm which calculates the desired engine angle uses the
same gains as those used in Section 6.2.1, while the adaptive algorithm used for differential
thrust is the same as that used in the simulated results presented in Section 5.1.3. Table 6.4
contains all gains used for this trial.
Table 6.4: Gains for PID-Adaptive Station Keeping Gains used for PID-Adaptive Station Keeping
Heading Thrust DT Γ DT σ Heading P 0.75 -4 0.1 -0.005 - I 0.0009 -0.001 0.00001 -0.04 0.002 D 3 -12 -0.1 0.02 -
Figure 6.8 presents the heading and desired heading from sea trials, Figures 6.9 and
6.10 show displacement data, RPM data is found in Figure 6.11, and the adaptive gains for
differential throttle are presented in Figure 6.12.
As can be seen in Figure 6.8, there is initially about 20° of heading error, which is
mitigated quickly although the boat initially has a slowly decreasing offset between actual
and desired heading most likely caused by the integral terms used by the differential
throttle and steering algorithms. Table 6.6 shows that the standard deviation of heading
error over the entire trial is 3.0193°, which reduces to 1.2228° over the final half of the
trial, exhibiting excellent heading following capabilities.
In this trial there is less initial position error than the PID-PID controller examined in
the previous section. The initial position error is 10.5 m north, -0.2 m east. Compared to
the previous controller, the PID-Adaptive controller has very little positional error in the
sway direction (1.3672 m standard deviation over the second half of the run), as the boat
135
keeps within 9 meters east-west over the duration of the trial while drifting almost 40
meters north. Possibly contributing to the high North error is the fact that this trial was
paused twice during the trial, and each pause reset the integrators to zero. Note that this
trial was paused at run times of 170 and 298 seconds, with the motors were brought to
neutral gear. This is seen in Figure 6.11 where the RPM drops to zero twice. The pause
around 300 seconds is the cause for the large heading error spike seen around that time.
0 100 200 300 400 500 600 700 800 900155
160
165
170
175
180
185
190
195Plot of Actual and Desired Heading, PID-Adaptive Station Keeping
Time (Seconds)
Boa
t H
eadi
ng (
Deg
rees
)
Actual
Desired
Figure 6.8: Plot of Actual and Desired Heading over Time, PID-Adaptive Station Keeping
The north and east displacements can be seen in Figures 6.9 and 6.10 as well as the
magnitude of the position error. As seen in Figure 6.9, most of the magnitude of positional
error comes from the north error, as east error is kept low, partially due to the excellent
tracking of desired heading even with two pauses in the trial. The positional error overall is
the highest of the three controllers, with average displacement of 17.8824 m and an RMS
136
value of 12.5961. These values come down drastically over the last half of the trial, with
average displacement of 7.5976 m and an RMS value of 4.0039 m. It should be noted that
this is also the shortest of the trials, and more time spent holding position will also reduce
these error numbers.
0 100 200 300 400 500 600 700 800 900-10
-5
0
5
10
15
20
25
30
35
40Plot of Displacement over Time, PID-Adaptive Station Keeping
Time (s)
Dis
plac
emen
t (m
)
NorthEast
sqrt(N2+E2))
Figure 6.9: Plot of Displacement over Time, PID-Adaptive Station Keeping
137
-7 -6 -5 -4 -3 -2 -1 0 1 20
5
10
15
20
25
30
35
40Plot of North and East Displacement, PID-Adaptive Station Keeping
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
Figure 6.10: Plot of North and East Position, PID-Adaptive Station Keeping
It can be seen in Figure 6.10 that after the northward drift the vessel stays close to the
desired location, although the north error doesn’t get much below 5 meters over the trial. If
ran longer however, the vessel would converge to the location, as it can be seen that it does
towards the end of the trial.
The port and starboard RPM approximations are found in Figure 6.11. Again, the RPM
values shown are those achieved dockside with the linear correlation, and not what was
seen offshore. Like the previous trial, the highest RPM seen was 1400.
138
0 100 200 300 400 500 600 700 800 9000
500
1000
1500
2000
2500Plot of Port and Starboard RPM, PID-Ad Station Keeping
Time (s)
RP
M
Port
Starboard
Figure 6.11: Plot of Port and Starboard RPM over Time, PID-Adaptive Station Keeping
As can be seen in Figure 6.11, there are definitely two pauses in the program where the
RPM went to zero. As there was not very large heading error in the beginning of the trial,
differential thrust was not used to initially get to the desired heading. However, it can be
seen that as time goes on more and more differential thrust is used. This is likely due to
build-up of the integrator term and can be negated by increasing the sigma modification
term. At the end of the trial, the difference between the port and starboard RPM is about
100 RPM.
Figure 6.12 presents the adaptive P, I, and D gains for this trial. It can be seen that the
P gain ramps up fast to work against the initial heading error, and also has a bump around
300 seconds when the program was paused. The gains have little slope over the final 5
minutes of the trial, which shows good following of the desired heading.
139
0 100 200 300 400 500 600 700 800 900-0.5
0
0.5
1
1.5
2Plot of Adaptive P, I, D Differential Throttle Gains, PID-Ad Station Keeping
Time (s)
Gai
ns
P
ID
Figure 6.12: Plot of Adaptive Differential Throttle Gains over Time, PID-Adaptive Station Keeping
6.2.3 Augmenting-Adaptive Controller Station Keeping Trial
The final station keeping controller tested used a fixed gain PID algorithm with
adaptively augmented gains for controlling steering, along with an adaptive PID controller
for differential thrust. This control scheme was created to increase station keeping
performance over a wider range of operating conditions by using adaptive control theory
compared to its fixed-gain counterpart. The gains used for this controller are presented in
Table 6.5. The augmenting controller for heading following used the adaptive gains found
in Section 4.3.2.2 from path following trials on Ocean Power along with the fixed gains in
Section 6.2.1, while the differential thrust gains are those used in Section 6.2.2.
140
Table 6.5: Gains used for Augmenting-Adaptive Station Keeping Trial Gains used for Augmenting-Adaptive Station Keeping
Heading Gains Thrust Fixed Gains Γ σ Common Diff Thrust Γ Diff Thrust σ Heading P 0.75 0.0005 -0.00001 -4 0.1 -0.005 - I 0.0009 - - -0.001 0.00001 -0.04 0.002 D 3 0.004 -0.001 -12 -0.1 0.02 -
The heading and desired heading from this offshore test are presented in Figure 6.13,
Figures 6.14 and 6.15 contain data on the vessel’s position, Figure 6.16 presents data on
each motor’s RPM, the adaptive differential gains are presented in Figure 6.17, and the
steering gains are found in Figure 6.18.
During this at sea test the controller was activated when there was a large initial
heading error, about 70° (Figure 6.13). The vessel is able to quickly eliminate this heading
error due partly to the differential thrust activating. As can be seen in Figure 6.18, the
RPM of the starboard motor does go into reverse while the port motor’s RPM reaches its
maximum forward gear RPM limit in the first 30 seconds of the trial before returning to
normal operation with both motors operating in forward gear. There is some overshoot of
the desired heading as seen in Figure 6.13, but this error is quickly mitigated and the
controller follows the desired heading with minimal error for the remainder of the trial. As
shown in Table 6.6, the heading errors are minimal, as this trial had overall standard
deviation of heading error of 7.2341° with this number decreasing to 1.2673° over the final
half of the test. This low heading error over the final half of the trial shows that this
controller has very good long-term tracking of the desired heading.
141
0 200 400 600 800 1000 1200 1400 1600 1800110
120
130
140
150
160
170
180
190
200
210Plot of Actual and Desired Heading, Aug-Ad Station Keeping
Time (Seconds)
Boa
t H
eadi
ng (
Deg
rees
)
Actual
Desired
Figure 6.13: Plot of Actual and Desired Heading Over Time, Augmenting-Adaptive Station Keeping
Figure 6.14 shows the path that the vessel traveled during this trial, while a time series
of north error, east error, and displacement can be found in Figure 6.15. Like the two
previous trials, this run begins with a northward drift (About 30 m for this trial) before the
thrust from the motors overcomes the current and begins moving the boat back to the
desired position. As shown in Figure 6.15, after about 600 seconds the boat converges to
within 5 m of the desired position and rarely goes above a 5 m displacement from the
desired location over the rest of the trial.
142
-20 -15 -10 -5 0 5 10 15
0
5
10
15
20
25
Plot of North and East Displacement, Aug-Ad Station Keeping
East Displacement (m)
Nor
th D
ispl
acem
ent
(m)
Figure 6.14: Plot of North and East Displacement, Adaptive-Augmenting Station Keeping
0 200 400 600 800 1000 1200 1400 1600 1800-10
-5
0
5
10
15
20
25
30Plot Displacement over Time, Aug-Ad Station Keeping
Time (s)
Dis
plac
emen
t (m
)
NorthEast
sqrt(N2+E2)
Figure 6.15: Plot of North, East, and Overall Displacement over Time, Adaptive-Augmenting
143
The estimated output RPM for each motor is presented in Figure 6.16. Like the
previous two sections, the RPM presented in the plot is based on the relationship between
voltage and RPM tested dockside, and the actual RPM seen at sea was lower, reaching a
maximum of 1400 RPM.
The first thing one can see in the RPM is that differential throttle was used in the
beginning of the trial, when the heading error was high. In those first seconds, the port
RPM reached the maximum forward gear RPM value, while the starboard motor shifted
into reverse and hit an estimated 1200 RPM in reverse. After mitigating the large initial
heading error, the starboard motor shifted back into forward, although there was still a
difference between the RPM of the two motors, which grew over time. The difference
between port and starboard RPM grew over the course of the trial, with the starboard motor
shifting into reverse twice near the end of the trial. This is likely due to integrator build-up
in the adaptive differential thrust algorithm, which can be seen in Figure 6.17 where the
integrator term constantly builds over time. Note that in Figure 6.17, the I and D gains are
multiplied by a scaling factor of 10.
144
0 200 400 600 800 1000 1200 1400 1600 1800-1500
-1000
-500
0
500
1000
1500
2000
2500Plot of Port and Starboard RPM Estimates, Aug-Ad Station Keeping
Time (s)
RP
M
Port
Starboard
Figure 6.16: Plot of Estimated Motor RPM over Time, Augmenting-Adaptive Station Keeping
0 200 400 600 800 1000 1200 1400 1600 1800-5
0
5
10
15
20
25
30
35Plot of Adaptive P, I, D Differential Throttle Gains, Aug-Ad Station Keeping
Time (s)
Gai
ns
P
I (x10)D (x10)
Figure 6.17: Plot of Adaptive P, I, D Differential Throttle Gains, Augmenting-Adaptive
145
It can be seen in Figure 6.17 that the gains increase sharply in the beginning, when
there was large heading error. Over the course of the trial, the P and D gains reduce to
nearly zero values, as heading and desired heading are quite close to one another.
However, the I gain grows throughout the trial after decreasing from the initial peak value.
This is likely due to the sigma-modification term, σ, which is designed to prevent wind-up,
being too small and allowing the gain to grow. As the I term grows, so too did the
differential thrust, which would not have happened if the σ term was larger. Accordingly,
it is recommended to increase the σ gain for the integrator to prevent this wind-up in future
trials.
The augmenting heading gains are presented in Figure 6.18. These gains have very
similar performance to the augmenting path following controller presented in Section
4.3.2.2. Like those trials, the D gain decreases at a nearly constant slope, while thee P gain
initially increases, then reaches a nearly constant gain of 0.88. It is recommended for
future trials to increase the value of Γ for the D component, and reduce the initial fixed D
gain to allow convergence to a constant value.
146
0 200 400 600 800 1000 1200 1400 1600 18000.5
1
1.5
2
2.5
3
3.5Plot of Augmenting P and D Heading Gains, Aug-Ad Station Keeping
Time (s)
Gai
ns
P
D
Figure 6.18: Plot of Augmenting P and D Steering Gains over Time, Augmenting-Adaptive
6.2.4 Station Keeping Conclusions
Three controllers which command a vessel to hold station have been developed and
tuned in the numerical simulation and validated on the Ocean Power vessel. These
controllers use both fixed gain and adaptive control methodologies to achieve their
objectives. While the sea trials did not test every weather condition prescribed in the
simulation tuning, these station keeping results provide proof of concept and can allow for
further testing and tuning of the controllers, either in dedicated sea trials or can be used
while conducting other operations on Ocean Power, such as CTD casts or while doing
acoustic modem communication with underwater sensors.
147
After attaining these results, the simulation was re-run with the environmental
conditions experienced on the day of testing and the gains used in the trials. The
simulation actually performed worse than the actual results, as the simulated vessel took
longer to converge to the desired location. This can be partly due to the simulated vessel’s
output thrust being able to be any value, while the real boat’s motor has minimum RPM of
600 when in gear. While this works when in strong currents, care will have to be taken
when operating in weather conditions with less current where the boat can more easily
overshoot the desired location.
While these trials are not conclusive, these results indicate that station keeping
performance is likely improved by using adaptive control methodologies over fixed gain
control. Table 6.6 contains quantification of errors for each of the three station keeping
controllers. It can be seen that during these trials, the controllers with adaptive components
outperform those with fixed gains during the second half of the trials, when the boat is
close to the desired location. However, more trials will be needed to come to concrete
conclusions about any performance improvements afforded by the use of adaptive control
as well as the operational limitations of these controllers.
Table 6.6: Quantification of Errors for all Station Keeping Trials
Standard Deviation of Errors for Station Keeping Sea Trials
Head Error STD
Head Error STD Last
Half
Position Error RMS
Position Error RMS Last
Half
Avg Position
Error
Avg Position Error Last
Half
PID-PID 2.9912 2.2408 12.3427 4.6117 8.4642 5.2878
PID-Ad 3.0193 1.2228 12.5961 4.0039 17.8824 7.5976
Aug-Ad 7.2341 1.2673 9.5210 1.8531 8.0836 2.5242
148
This work has outlined the successful design and tuning of four heading and path
following controllers in a numerical simulation, sea trial validation of three path following
controllers on two different boats, development and testing of three station keeping
controllers in simulation, and validation of three station keeping controllers through sea
trials. The developed controllers use both adaptive and fixed-gain algorithms and
evaluation of their performance has been done to determine the advantages gained by the
use of adaptive control.
Proof of concept for an installed system on the Ocean Power vessel which will
command the boat to hold a desired position in the presence of environmental disturbances
has been provided. There were not enough sea trials conducted for conclusive evidence of
advantages gained through the use of adaptive control, it was shown that all of the
developed controllers stayed within a close distance to a desired location in conditions
commonly encountered off the south East coast of Florida. It can be noted that results from
both the simulation and sea trials do suggest that the use of adaptive control improves
station keeping performance, and further tests can be conducted offshore for conclusive
comparison of adaptive and fixed gain control.
The sea trials of the station keeping controllers prove that they work for Gulf Stream
conditions in which COET commonly operates missions. After convergence to the desired
location, each controller keeps the boat within an average of 8 meters from the desired
location, and each has RMS position error below 5 meters for the second half of trials with
7 CONCLUSION AND FUTURE WORK
149
the Augmenting-Adaptive controller keeping position error RMS to 1.8531 m over that
time period. The heading following controllers from Sections 3 and 4 also worked
extremely well to keep the boat following the desired heading, and each controller keeping
heading error standard deviation under 3 m over the second half of trial, with the PID-
Adaptive and Augmenting-Adaptive controllers limiting heading error standard deviation
to 1.2228° and 1.2673° respectively over that time.
This thesis has delivered its stated goal of a working station keeping controller using
fixed gain and adaptive algorithms, but these controllers could by further tuned to increase
performance and quantify their limitations. Station keeping trials should be conducted in
differing weather conditions such as slower current and higher wind, which is more
difficult for station keeping. Performance analysis of control gains which have been
further tuned in differing weather conditions will provide more conclusive evidence for
comparing performance of adaptive and fixed-gain control algorithms.
The developed ability to automatically control the engine angle and RPM on the Ocean
Power vessel can be used for the testing of controllers using different methodologies. A
comparison between the controllers presented in this thesis and the performance of
different control algorithms such as LQR, adaptive neural networks, and optimal control
techniques would determine if better performance could be derived using a different
controls approach.
More work can also be done on the installed systems themselves. The engine angle
sensor can be modified, as it sometimes needed recalibration after the boat had been to sea,
or at times, between sea trials. Additionally, for a permanent installation on Ocean Power,
new electronics would likely need to be purchased which are better suited to being
permanently installed in the humidity and corrosive environment of the center console of
150
Ocean Power. The PXI and CompactRIO chasses from National Instruments are examples
of rugged, easily installed products which would be well suited to meet these requirements
and would be immediately configurable with the developed LabVIEW programs for
implementation on Ocean Power without the need for a laptop to run control software. A
method for directly measuring motor RPM and inclusion of Ocean Power’s bow thruster
are two more additions which can help improve performance.
Additionally, refinements to the LabVIEW software can be made after observing the
system in operation. Modifications similar to programming done in [19] can be done for
addressing desired RPM lower than 600, the idling speed for Ocean Power’s motors. This
modification would allow the motors to smoothly shift in and out of gear to produce an
average thrust similar to the desired thrust specified by the controller. Other modifications
can be made to prevent the controller from rapidly changing gears, which can be very
taxing on the shift actuators in the motors, an issue when operating in a low current
environment. This will help ensure smoother operation of the station keeping controller, be
easier on the motors, and help improve efficiency.
151
[1] More CW and Hanlon E. “Sea Basing: Operational Independence for a New
Century”, USNI Proceedings, vol. 129, no. 1, Oct, pp. 80-85, 2002 [2] A. Pereira, J. Das, and G.S. Sukhatme, An Experimental Study of Station Keeping
on an Underactuated ASV. 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, 14 October 2008, pp. 3164-3171.
[3] A. Matos and N. Cruz, Positioning Control of an Underactuated Surface Vessel.
OCEANS 2008 MTS/IEEE Conference, 15-18 September 2008. [4] J.H. VanZwieten and F.R. Driscoll. (2008) “A comprehensive general simulation of
twin screw displacement hull vessels with validation” Journal of Mathematical and Computer Modeling of Dynamical Systems, 14 (4) 269-301
[5] M.K. Ochi and Y.S. Shin, Wind turbulent spectra for design consideration of
offshore structures. Proceedings of the Offshore Technology Conference, 2-5 May, Houston, Texas, 1988 pp.461-467.
[6] K. Hornik, M. Stinchcombe, H. White. Multilayer Feedforward Networks are
Universal Approximators. IEE Transactions on Neural Networks 2 (1989) 359-366. [7] Lavretsky, Eugene. Adaptive Control: Introduction, Overview, and Applications.
NASA Adaptive Control Workshop. NASA Marshall Space Center, Huntsville, AL. 24 Feb 2009.
[8] M. Lugmair et al. Result-Adaptive PID Control Improves Laserscanner Positioning.
Baasel Lasertech. [9] R. Raye, “Characterization study of the Florida Current at 26.11 North Latitude,
79.50 West Longitude for ocean current power generation.” Master’s Thesis, Florida Atlantic University, 2002.
[10] M.A. Donelan, J. Hamilton, and W.H. Hui, Directional spectra of wind-generated
waves, Philos. Trans. R. Soc. Lond. A315 (1985), pp. 509-562. [11] A.D. Fisher, J.H. VanZwieten, and T.S. VanZwieten, “Station Keeping of Small
Outboard-Powered Boats”, in Proceedings of the 2010 IEEE OCEANS Sydney Conference, 2010.
8 REFERENCES
152
[12] J.H. VanZwieten and F.R. Driscoll, “A Comparison of Station Keeping Controllers for Twin Screw Vessels,” unpublished.
[13] Fossen, T.I. Guidance and Control of Ocean Vehicles. New York: Wiley, 1994. [14] Ioannou, Petros and Baris Fidan. Adaptive Control Tutorial. Philadelphia: SIAM,
2006. [15] Zilouchian, Ali and Mo Jamshidi. Intelligent Control Systems Using Soft
Computing Methodologies. New York: CRC Press, 2001 [16] Budny, Dan. Introduction to Engineering Analysis. Champaign: Stipes, 2003. [17] AJ. Sorensen, S.I. Sagatun, and T.I. Fossen, Design of a Dynamic Positioning
System Using Model-Based Control. Control Engineering Practice, 4 (3) 359-368. [18] T.I. Fossen and T. Perez, Kalman Filtering for Positioning and Heading Control of
Ships and Offshore Rigs. IEEE Control Systems Magazine, pp.32-46, December 2009.
[19] J.H. VanZwieten. “Automatic Station Keeping of Small Twin Screw Boats.” Diss.
Florida Atlantic University, 2007.