Nonlinear dynamic model identification methodology for real robotic surface vessels

Similar documents
Nonlinear Tracking Control of Underactuated Surface Vessel

Design of a Heading Autopilot for Mariner Class Ship with Wave Filtering Based on Passive Observer

Model Reference Adaptive Control of Underwater Robotic Vehicle in Plane Motion

Underactuated Dynamic Positioning of a Ship Experimental Results

Final Exam TTK4190 Guidance and Control

Handling Roll Constraints for Path Following of Marine Surface Vessels using Coordinated Rudder and Propulsion Control

Trajectory Tracking of a Near-Surface Torpedo using Numerical Methods

A Ship Heading and Speed Control Concept Inherently Satisfying Actuator Constraints

Path Following for Marine Surface Vessels with Rudder and Roll Constraints: an MPC Approach

Chapter 2 Review of Linear and Nonlinear Controller Designs

Trajectory tracking & Path-following control

Control of UUVs Based upon Mathematical Models Obtained from Self-Oscillations Experiments

Multi-layer Flight Control Synthesis and Analysis of a Small-scale UAV Helicopter

DEVELOPMENT AND MATHEMATICAL MODELLING OF PLANNING TRAJECTORY OF UNMANNED SURFACE VEHICLE

Hover Control for Helicopter Using Neural Network-Based Model Reference Adaptive Controller

A Time-Varying Lookahead Distance Guidance Law for Path Following

Autopilot Design for Unmanned Surface Vehicle based on CNN and ACO

Global stabilization of an underactuated autonomous underwater vehicle via logic-based switching 1

Problem 1: Ship Path-Following Control System (35%)

Nonlinear Landing Control for Quadrotor UAVs

The PVTOL Aircraft. 2.1 Introduction

Design and modelling of an airship station holding controller for low cost satellite operations

Trajectory Planning of Planar Tracked Vehicles

Fuzzy Adaptive Control for Trajectory Tracking of Autonomous Underwater Vehicle

NONLINEAR PATH CONTROL FOR A DIFFERENTIAL DRIVE MOBILE ROBOT

Non Linear Submarine Modelling and Motion Control with Model in Loop

THRUST OPTIMIZATION OF AN UNDERWATER VEHICLE S PROPULSION SYSTEM

AS A POPULAR approach for compensating external

ELEC4631 s Lecture 2: Dynamic Control Systems 7 March Overview of dynamic control systems

Comparing Combinations of Linear and Nonlinear Feedback Terms for Motion Control of Marine Surface Vessels

Modelling and identification of the Charlie2005 ASC

Final Exam TTK 4190 Guidance and Control

Hierarchical Control of Marine Vehicles for Autonomous. Maneuvering in Offshore Operations

H-infinity Model Reference Controller Design for Magnetic Levitation System

Analysis of Four Quadrant Operation of Thruster Motor in an AUV using an Optimized H Infinity Speed Controller

Unifying Behavior-Based Control Design and Hybrid Stability Theory

Formation Control for Underactuated Autonomous Underwater Vehicles Using the Approach Angle

Exam - TTK 4190 Guidance & Control Eksamen - TTK 4190 Fartøysstyring

Control of a Car-Like Vehicle with a Reference Model and Particularization

1. INTRODUCTION. Fig. 1 SAUVIM

Path Following of Underactuated Marine Surface Vessels in the Presence of Unknown Ocean Currents

Design of Advanced Control Techniques for an Underwater Vehicle

Geometric Formation Control for Autonomous Underwater Vehicles

Autopilot design for small fixed wing aerial vehicles. Randy Beard Brigham Young University

with Application to Autonomous Vehicles

Chapter 7 Control. Part Classical Control. Mobile Robotics - Prof Alonzo Kelly, CMU RI

What is flight dynamics? AE540: Flight Dynamics and Control I. What is flight control? Is the study of aircraft motion and its characteristics.

H -Optimal Tracking Control Techniques for Nonlinear Underactuated Systems

DESIGNING A SHIP COURSE CONTROLLER BY APPLYING THE ADAPTIVE BACKSTEPPING METHOD

Quaternion-Based Tracking Control Law Design For Tracking Mode

The Simulation for Autonomous Navigation of water-jet-propelled Unmanned Surface Vehicle

Aerial Robotics. Vision-based control for Vertical Take-Off and Landing UAVs. Toulouse, October, 2 nd, Henry de Plinval (Onera - DCSD)

Control of the MARES Autonomous Underwater Vehicle

A Model-Free Control System Based on the Sliding Mode Control Method with Applications to Multi-Input-Multi-Output Systems

CONTROL DESIGN FOR SLOW SPEED POSITIONING

Visual Servoing for a Quadrotor UAV in Target Tracking Applications. Marinela Georgieva Popova

Nonlinear Wind Estimator Based on Lyapunov

Autonomous Underwater Vehicles: Equations of Motion

A numerical DP MODULE to help design and operation for projects including DP components

Towards Reduced-Order Models for Online Motion Planning and Control of UAVs in the Presence of Wind

Speed Control of Autonomous Underwater Vehicle with Constraints Using Model Predictive Control

Research Article A Nonlinear Robust Controller Design for Ship Dynamic Positioning Based on L 2 -Gain Disturbance Rejection

Comparison of two non-linear model-based control strategies for autonomous vehicles

Subject: Introduction to Process Control. Week 01, Lectures 01 02, Spring Content

We provide two sections from the book (in preparation) Intelligent and Autonomous Road Vehicles, by Ozguner, Acarman and Redmill.

REPETITIVE LEARNING OF BACKSTEPPING CONTROLLED NONLINEAR ELECTROHYDRAULIC MATERIAL TESTING SYSTEM 1. Seunghyeokk James Lee 2, Tsu-Chin Tsao

Nonlinear Observer Design for Dynamic Positioning

DISTURBANCE ATTENUATION IN A MAGNETIC LEVITATION SYSTEM WITH ACCELERATION FEEDBACK

Ship Control in Manoeuvring Situations with Fuzzy Logic Controllers

Nonlinear Controller Design of the Inverted Pendulum System based on Extended State Observer Limin Du, Fucheng Cao

Nonlinear PD Controllers with Gravity Compensation for Robot Manipulators

Exponential Controller for Robot Manipulators

Tuning and Modeling of Redundant Thrusters for Underwater Robots

Posture regulation for unicycle-like robots with. prescribed performance guarantees

Simulation of Spatial Motion of Self-propelled Mine Counter Charge

TTK4190 Guidance and Control Exam Suggested Solution Spring 2011

Robust Speed Controller Design for Permanent Magnet Synchronous Motor Drives Based on Sliding Mode Control

WIND FEEDFORWARD CONTROL OF A USV. Huajin Qu. A Dissertation Submitted to the Faculty of. The College of Engineering and Computer Science

Minimization of Cross-track and Along-track Errors for Path Tracking of Marine Underactuated Vehicles

GAIN SCHEDULING CONTROL WITH MULTI-LOOP PID FOR 2- DOF ARM ROBOT TRAJECTORY CONTROL

Adaptive Predictive Observer Design for Class of Uncertain Nonlinear Systems with Bounded Disturbance

Chapter 1. Introduction. 1.1 System Architecture

Disturbance Rejection in Parameter-varying Web-winding Systems

COPYRIGHTED MATERIAL. Index

General procedure for formulation of robot dynamics STEP 1 STEP 3. Module 9 : Robot Dynamics & controls

Pitch Control of Flight System using Dynamic Inversion and PID Controller

A Sliding Mode Control based on Nonlinear Disturbance Observer for the Mobile Manipulator

UDE-based Dynamic Surface Control for Strict-feedback Systems with Mismatched Disturbances

Lecture 25: Tue Nov 27, 2018

Cross-Coupling Control for Slippage Minimization of a Four-Wheel-Steering Mobile Robot

EE 474 Lab Part 2: Open-Loop and Closed-Loop Control (Velocity Servo)

Chapter 4 The Equations of Motion

Aircraft Stability & Control

From PD to Nonlinear Adaptive Depth-Control of a Tethered Autonomous Underwater Vehicle

The Application of The Steepest Gradient Descent for Control Design of Dubins Car for Tracking a Desired Path

Gain Scheduling Control with Multi-loop PID for 2-DOF Arm Robot Trajectory Control

TOWARD DEVELOPMENT OF CONTROL SYSTEMS FOR AIRSHIPS UNIFIED TO THEIR TECHNICAL CHARACTERISTICS AND ACTUATORS

Control of Mobile Robots

Optimal Control of Twin Rotor MIMO System Using LQR Technique

Position in the xy plane y position x position

Transcription:

International Journal of Control, 2013 Vol. 86, No. 12, 2315 2324, http://dx.doi.org/10.1080/00207179.2013.813646 Nonlinear dynamic model identification methodology for real robotic surface vessels Yaswanth Siramdasu and Farbod Fahimi Department of Mechanical and Aerospace Engineering, The University of Alabama in Huntsville, Huntsville, AL, USA (Received 4 October 2012; final version received 5 June 2013) This paper presents a methodology for identifying the nonlinear dynamic model of underactuated surface vessels for the purpose of model-based controller design. The methodology outlines the required tests that need to be performed and the formulations that need to be used for sequentially identifying the model parameters one by one. The identification methodology is performed on a robotic vessel by testing in outdoor environments and the accuracy of the dynamic model is verified. The physical control inputs to the vessel are a propeller rotational speed and a rudder angle. 3 degrees of freedom are assumed for the nonlinear dynamic model of the surface vessel. Finally, an approach is proposed that discusses how the identified full nonlinear dynamic model can be used for control design. Results of typical closed-loop control tests are presented. Keywords: nonlinear dynamics; surface vessel; system identification; trajectory tracking; control; experimental 1. Introduction The use of surface vessels for maritime applications, like surveillance, minesweeping, data collection and seakeeping operations, has grown over the past decade. These tasks require the surface vessels to operate for long periods of time. Controlling and monitoring the vessels manually for long periods of time is tedious for human operators. Hence, automation of surface vessels by designing trajectory tracking controllers is gaining importance and posing challenging questions. During the last 15 years, researchers have introduced several approaches for trajectory tracking control of surface vessels. Table 1 summarises the representatives of the general approaches that have been reported. Most of the reported indoor tests have been carried out on small models of boats or ships in indoor pools. Mostly, camera systems and image processing have been used for measuring the position and orientation of the vessel for feedback. For outdoor tests, small models of both boats or ships in small ponds and large ships in sea have been used. It can be concluded from the list of citations in Table 1 that the earlier works start with linear controllers. As time progresses, nonlinear controllers are introduced. Most of the approaches that are reported are not model-based, so the nonlinear dynamic model of the surface vessel has not been needed in earlier works for control design. Therefore, no direct attention has been focused on methods with which parameters of the nonlinear dynamic model can be identified. It can be seen in Table 1 that only in the past few years model-based approaches are becoming more common. Model-based controllers can only be designed if sufficiently accurate nonlinear dynamic models with known parameters exist for surface vessels. However, no direct attention has been focused on methods that can be used to identify the parameters of the nonlinear dynamic model of surface vessels. The lack of an identification methodology is the main motivation of this research. In this paper, a systematic methodology for finding the parameters of the dynamic model for surface vessels is presented. The specific test scenarios that are required for identification are proposed. Then, the formulations that are needed for calculating the dynamic model parameters are presented. The test scenarios and the steps of the formulation procedure are thought out such that the required parameters can be found sequentially, one at a time. The methodology is used to identify the parameters of the nonlinear dynamic model of a test surface vessel via tests performed in an outdoor pond. The dynamic model of the vessel is verified, and it is shown that its accuracy is acceptable. Finally, as a proof of usefulness of the dynamic model, the dynamic model is used to design a model-based controller for trajectory tracking of the vessel. The model-based controller is tested on the surface vessel, and a typical result of the controlled motion is presented. 2. Dynamic model The dynamic equations of motion of the surface vessel expressed in the local frame of reference are m 11 u m 22 vr + d 11 u = F cos α, (1) Corresponding author. Email: fahimi@eng.uah.edu C 2013 Taylor & Francis

2316 Y. Siramdasu and F. Fahimi Table 1. Review of unmanned surface vessel control. Reference Approach Method Test Sorensen, Sagatun, and Fossen (1996) Linear LQG feedback Outdoor Holzhueter (1997) Linear LQG feedback Outdoor Morawski and Pomirski (1998) Linear LQG feedback No Linear Cascade control No Godhavn, Fossen, and Berge (1998) Nonlinear Backstepping No Pettersen and Nijmeijer (1999) Linear Backstepping No Pettersen and Nijmeijer (2001) Nonlinear Backstepping Indoor Do, Jiang, and Pan (2002) Nonlinear Backstepping No Casado and Velasco (2003) Nonlinear Backstepping No Velagic, Vukic, and Omerdic (2003) Nonlinear Fuzzy control No Lefeber, Pettersen, and Nijmeijer (2003) Linear Cascade control Indoor Pettersen (2004) Nonlinear Cascade control Indoor Yu and Wu (2004) Nonlinear PI-type sliding mode No Do, Jiang, and Pan (2005) Nonlinear State feedback No Do and Pan (2005) Nonlinear Backstepping No Saeed, Attia, Helmy, and Awad (2005) Nonlinear Neural network No Ghommam, Mnif, Benali, and Derbel (2006) Nonlinear Backstepping No Gierusz, Cong Vinh, and Rak (2007) Nonlinear Fuzzy control No Cheng, Yi, and Zhao (2007) Nonlinear Sliding mode No Ashrafiuon, Muske, McNinch, and Soltan (2008) Nonlinear Sliding mode Indoor Gyoungwoo, Surendran, and Kim (2009) Nonlinear PID vs. fuzzy No Schoerling et al. (2010) Nonlinear Sliding mode Outdoor Fahimi and Kleeck (2012) Nonlinear Sliding mode Outdoor Siramdasu and Fahimi (2013) Nonlinear Model predictive Outdoor Notes: LQG = linear quadratic Gaussian; PI = proportional integral; PID = proportional integral derivative. m 22 v + m 11 ur + d 22 v = F sin α, (2) I 33 ṙ + (m 22 m 11 )uv + d 33 r = (F sin α)l, (3) where u, v and r are the surge, sway and yaw speeds, respectively, F is the propeller force, α is the rudder angle and L is the distance of the centre-of-gravity (CG) from the propeller location on the vessel (Figure 1). The propeller is hinged to the vessel such that its axis can yaw with respect to the vessel. Here, the term rudder angle α (as shown in Figure 1) refers to the angle that the axis of a hinged propeller makes with the longitudinal axes of the vessel. The vector F = [F cos α, F sin α, FLsin α] T contains the longitudinal and lateral components of the propeller force (F), and the propeller s moment about the vessel s CG, which has a longitudinal offset L with the propeller location on the vessel (Figure 1). The propeller force is modelled as F = An C, where A is a constant, C is a dimensionless parameter and n 0 is the propeller speed. The propeller force can be written as where F = [AU 1,AU 2, ALU 2 ] T, (4) U 1 = n C cos α and U 2 = n C sin α (5) are selected as the mathematical control inputs. Figure 1. Schematic diagram of the surface vessel showing the control point (CP) and the centre-of-gravity (CG). 3. Dynamic model parameter identification A robotic vessel and a control box are designed and built for experimentation purposes (Figure 2). The specifications of the vessel are: length 80 cm; width 70 cm; mass 8 kg; and diameter of each propeller 4.5 cm. The control box contains an embedded computer with a PC-104 form factor equipped with a 1.8 GHz Pentium M processor and a navigation sensor. The navigation sensor measures and communicates all the vessel s state variables. The sensor is connected via a serial port to the embedded computer. The

International Journal of Control 2317 Figure 2. The experimental robotic vessel with the control box. computer sends the control inputs calculated using the control algorithm to the servo motors on the vessel via a Servo Switch Card. Open-loop identification tests are coded in Matlab/Simulink and real-time software is generated using the xpc-target rapid control prototyping system. The software runs in real-time on the embedded computer. The open-loop inputs and the states of the vessel are recorded in real-time for identification. The components of Equation (4) are combined with Equations (1) (3) to formulate a form of the dynamic equations of motion that is suitable for identification: (m 11 /A) u (m 22 /A)vr + (d 11 /A)u = U 1, (6) (m 22 /A) v + (m 11 /A)ur + (d 22 /A)v = U 2, (7) (I 33 /A)ṙ + ((m 22 m 11 )/A)uv + (d 33 /A)r = LU 2.(8) By observing the above form, one can see that the parameters m 11 /A, m 22 /A, m 33 /A, d 11 /A, d 22 /A, d 33 /A and C in Equations (6) (8) have to be identified. Note that the parameter A is a function of the advance speed (Fossen, 1994) (speed of water going into the propeller) which is indirectly related to the vessel s speed. Finding A independently requires propeller force measurement at different advance speeds. Independently measuring the propeller force at different advance speeds in a laboratory setting requires force sensors and a water channel (to generate different advance speeds). The proposed method of identification in this paper does not require such complicated and expensive instrumentation. In the proposed method, the ratio of the mass/moment of inertial parameters to A, e.g.m 11 /A, etc., is identified. This eliminates the need for independent identification of A. It is important to note that the parameters m 11, m 22 and m 33 are the sum of the vessel s rigid body mass and the mass of the water that is accelerated with the vessel during its motion (known as the added mass). Principles of hydrodynamics and tests have shown that these parameters are constant (Fossen, 1994). The parameters d 11, d 22 and d 33 contribute to hydrodynamic damping forces and moments (Fossen, 1994), and are a function of the vessel s speed. The parameter A is a function of the advance speed (speed of water going into the propeller) which is indirectly related to the vessel s speed (Fossen, 1994). So, these parameters must be found in the neighbourhood of different speeds, and must be tabulated versus the vessel s speed. This paper attempts at explaining the methodology with which a set of parameters corresponding to a particular vessel s speed can be found. As an example, the methodology is demonstrated for finding the parameters of the test vessel around the steady-state speed of u ss = 0.75 m s 1. So, the parameters found here are only suitable for controlling the vessel around the mentioned steady-state speed. However, it is important to note that, for a practical implementation in which a vessel must be controlled at all speeds, this methodology must be applied at different speeds to find the full table of parameters as a function of the vessel s speed. Once the table of parameters versus speed is at hand, a control code must select the appropriate set of parameters from the table of parameters according to the vessel s speed, and use that set for control calculations. Two independent test scenarios are defined to isolate each of these parameters and identify them one at a time using the recorded data. 3.1 Scenario 1: straight line motion This scenario is an open-loop straight line test. Three different constant propeller speeds (n) and a zero rudder angle (α) are given as control inputs to the vessel. These inputs generate straight line motions with increasing speeds up to different terminal speeds for the corresponding n. In these tests, U 1 in Equation (6) is constant and U 2 in Equation (7) is zero. The vessel is tested at three speeds: n = 69.2, 98 and 120 rps. Each test lasts for 15 seconds. For a straight line motion, v and r and their corresponding derivatives are zero. 3.1.1 Identification of d 11 /A The linear speed component of the vessel u reaches a steadystate value and u is equal to zero at this point of time. These steady-state values (u ss ) are used for the identification of d 11 /A. Equation (6) reduces to (d 11 /A)u ss = U 1, where U 1 = n C, (9) ln(u ss ) = C ln (n) ln (d 11 /A). (10) The values of u ss are recorded during each test at each constant speed n and a line is fitted to the pairs (ln(n), ln(u ss )) (Figure 3) using the least-squares method. The

2318 Y. Siramdasu and F. Fahimi Figure 4) on top of the other sets of data. This plot verifies the identified m 11 /A. Figure 3. Identification of d 11 /A and C. parameters C = 0.27 and d 11 /A = 4.03 m 1 s (1 C) are calculated. 3.1.2 Identification of m 11 /A For determining m 11 /A, the values of the transient response of the vessel s longitudinal velocity u are used. Equation (6) reduces to (m 11 /A) u + (d 11 /A)u = U 1. (11) The solution to Equation (11) is given by u(t) = ce t/λ + U 1 /(d 11 /A), λ = m 11 A / d 11 A, (12) where c is calculated by substituting the initial velocity of the vessel u(0) in Equation (12), i.e. c = u(0) U 1 /(d 11 /A) and d 11 /A is determined from the previous test. Each of the three tests is performed twice, producing two sets of data for each test. One set of data for u are used for fitting a curve using the least-squares method (top plot in Figure 4), and λ = 1.30 s and m 11 /A = 5.23 m 1 s (2 C) are calculated. With the identified m 11 /A, curves are plotted (bottom plot in 3.2 Scenario 2: circular motion This scenario is an open-loop circular test. The vessel is tested with a constant propeller speed (n = 98 rps) and five different rudder angles for five tests (α = 16,24, 8, 16, 24 ). These inputs generate circular motions of the vessel with increasing speeds up to different terminal speeds of u ss, v ss and r ss. For the vessel to achieve a transient response, the rudder angle is set to zero for the first 5 s and it suddenly changes and remains constant for the next 15 s of the test. During the steady-state motion, u, v and ṙ are equal to zero and Equations (6), (7) and (8), respectively, reduce to (d 11 /A)u ss = (m 22 /A)v ss r ss + n C cos α, (13) (m 11 /A)u ss r ss = (d 22 /A)v ss + n C sin α, (14) ((m 11 m 22 )/A)u ss v ss = (d 33 /A)r ss + Ln C sin α. (15) The steady-state values of u ss, v ss, r ss, n and α are recorded during the test, and data are substituted in the above equations. The physical limit of motion for the rudder angle is 24 α 24. To cover the whole range of motion of the rudder, the two extreme angles α = 24 and 24 were used for finding m 22 /A, d 22 /A and d 33 /A. This is done to avoid extrapolation. So, when the model predicts motions for 24 <α<24, it is using the interpolation with the fitted curves. If lines had been fitted to α = 16 and 16, the model would have been using an extrapolation for values α > 16. Extrapolation is not the best fitting approach. 3.2.1 Identification of m 22 /A Using the least-squares method and Equation (13), a line is fitted to the data of two tests (α = 24,24 ) (top plot in Figure 5), and m 22 /A = 5.93 m 1 s (2 C) is found. Using the identified m 22 /A, a line is plotted on top of the other three sets of test data (bottom plot in Figure 5). This plot verifies the identified m 22 /A. Figure 4. Identification of m 11 /A. Top panel: curves fitted to data set 1 for the identification of m 11 /A. Bottom panel: curves plotted using the identified m 11 /A on top of data set 2 for verification. 3.2.2 Identification of d 22 /A Using the least-squares method and Equation (14), a line is fitted to the data of two tests (α = 24,24 ) (top plot in Figure 6), and d 22 /A = 5.48 m 1 s (1 C) is found. Using the identified d 22 /A, a line is plotted on top of the other three sets of test data (bottom plot in Figure 6). This plot verifies the identified d 22 /A.

International Journal of Control 2319 Figure 5. Identification of m 22 /A. Top panel: a line fitted to the test data with the rudder angles 24 and 24 for identification. Bottom panel: a line plotted on top of the test data with the rudder angles 16, 8 and 16 for verification. x 1 = v ss r ss, y 1 = (d 11 /A)u ss. 3.2.3 Identification of d 33 /A Using the least-squares method and Equation (15), a line is fitted to the data points of two tests (α = 24,24 )(top plot in Figure 7), and d 33 /A = 1.13 m s (1 C) rad 1 is found. Using the identified d 33 /A, a line is plotted on top of the other three sets of test data (bottom plot in Figure 7). This plot verifies the identified d 33 /A. 3.2.4 Identification of I 33 /A The transient response of the yaw rate (r) of the vessel is used for the identification of I 33 /A. Forthefirst5s,the Figure 7. Identification of d 33 /A. Top panel: a line fitted to the test data with the rudder angles 24 and 24 for identification. Bottom panel: a line plotted on top of the test data with the rudder angles 16, 8 and 16 for verification. x 3 = r ss, y 3 = ((m 11 m 22 )/A)u ss v ss. rudder angle is zero, and the vessel moves on a straight line. Then, the rudder is suddenly turned. So, a transient response of the yaw rate is generated from the 5th to the 10th second of the test. In test 1, which is run twice, α = 24 is used. In test 2, which is also run twice, α = 24 is used. The yaw response is defined by (I 33 /A)ṙ + (d 33 /A)r = ((m 22 m 11 )/A)uv LU 2. (16) Equation (16) is a linear first-order ordinary differential equation with the values of u and v varying as a function of time. So, exponential curves in the form of Equations (17) and (18) are fitted to u and v data of the two tests with α = 24 (Figure 8) and α = 24 (Figure 9) using the least-squares method. Figure 6. Identification of d 22 /A. Top panel: a line fitted to the test data with the rudder angles 24 and 24 for identification. Bottom panel: a line plotted on top of the test data with the rudder angles 16, 8 and 16 for verification. x 2 = v ss, y 2 = (m 11 /A)u ss r ss. Figure 8. α = 24. Fitted curves for transient response of u and v for

2320 Y. Siramdasu and F. Fahimi Figure 9. α = 24. Fitted curves for transient response of u and v for Figure 10. Identification of I 33 /A. Top panel: a curve fitted to the two data sets of test 1 with α = 24 for identification. Bottom panel: a curve plotted using the identified I 33 /A on top of the two data sets of test 2 with α = 24 for verification. u = Ae B(t 5) + C, (17) v = De E(t 5) + F. (18) The parameters of Equations (17) and (18) are listed in Table 2. Two sets of data for test 1 with α = 24 areusedfor identification and two sets of data for test 2 with α = 24 are used for verification. The speeds u and v from Equations (17) and (18), respectively, are substituted in Equation (16) and the following closed-form solution is found: λṙ + r = K(Ae B(t 5) + C)(De E(t 5) + F ) LU 2 /(d 33 /A), (19) r(t) = c1e t λ LU2 /(d 33 /A) ( AF e B(t 5) + 1 + λb + ADe(B+E)(t 5) 1 + λb + λe )) + C (F + DeE(t 5) K, (20) 1 + λe where λ = I 33/A d 33 /A and K = (m 22 m 11 )/A d 33. Using the leastsquares method and Equation (20), a curve is fitted to the /A two sets of data from test 1 with α = 24 (top plot in Figure 10). The values of λ = 1.56 s and I 33 /A = 1.25 m s (2 C) rad 1 Table 2. Fitting u and v curve parameters. Parameters A B C D E F α =24 0.17 1.03 0.57 0.21 1.41 0.22 α = 24 0.02 0.47 0.72 0.47 0.35 0.24 are identified. Using the identified I 33 /A, a curve is plotted on top of two sets of data from test 2 with α = 24 (bottom plot in Figure 10). This plot verifies the identified I 33 /A. 4. Analysing the sensitivity of parameters As explained in the previous section, three values for n were used to find the values of d 11 /A and C. It can be seen in Figure 3 that the noise of the measurement of the steady-state speed u ss is significant. It is hypothesised that this noise does not significantly affect the results of the identification. To prove this, three sets of d 11 /A and C are found using a combination of pairs of steady-state speeds (u ss1 and u ss2 ), 1 (u ss2 and u ss3 ) 2 and (u ss1 and u ss3 ). 3 Then, based on the three sets of d 11 /A and C, three complete sets of model parameters are found. The normalised values of these three sets are shown in Table 3. It is seen that the parameters slightly vary. These sets of parameters are used, and the dynamic motion of the vessel is simulated to see how the different sets affect the predicted motion of the surface vessel. For Table 3. The identified parameters using all combinations of data points. u ss1, u ss2, Parameter u ss3 u ss1, u ss2 u ss2, u ss3 u ss1, u ss3 Units C 0.27 0.22 0.15 0.28 Dimensionless m 11 /A 5.23 5.40 5.04 5.21 m 1 s (2 C) m 22 /A 5.93 6.09 6.26 5.81 m 1 s (2 C) I 33 /A 1.25 1.20 1.51 1.21 m s (2 C) rad 1 d 11 /A 4.03 3.72 3.83 4.17 m 1 s (1 C) d 22 /A 5.49 5.39 5.33 5.54 m 1 s (1 C) d 33 /A 1.13 1.08 1.34 1.10 m s (1 C) rad 1

International Journal of Control 2321 Figure 11. The simulated response of the vessel for different sets of parameters. this simulation, the vessel starts with a zero velocity. A constant n = 98 rps is applied for the whole duration of the simulation. For the first 5 s of the simulation, the rudder angle is set to zero. Then, the rudder angle is suddenly changed to α = 24. Since this value is the maximum rudder angle, this scenario represents a worse case for the difference between different models. The simulation is run for a total of 20 s. Figure 11 shows that all the simulated paths for these sets of parameters are similar and thus the variation of the parameters has little effect (only up to 0.4 m in a 20-s motion) on the prediction of the vessel s motion. The parameters in the first column of Table 3 are used for the dynamic model needed for the simulation and the real-time control experiments. 5. Open-loop model verification tests In order to further verify the identified model, the results of the open-loop test of the vessel are compared to that of the simulations using the identified parameters in the first column of Table 3. The open-loop test results are useful for comparison with the results of the simulation only when external disturbances are negligible. Normally, testing a small experimental vessel under no disturbance in outdoor environments for long durations is impractical, because disturbances such as wind gusts and their corresponding waves happen very often. The following approach has been used to address the problem of disturbance effects in long tests. The vessel is driven under open-loop control with different inputs and the state variables are recorded. Then, the portions of the motion of the vessel during which the disturbances are negligible are identified by observation. For example, with a zero rudder angle, the vessel is expected to move in a straight line. Open-loop tests with zero rudder angle in which the motion of the vessel is curved are neglected. As another example, with a constant speed with increasing rudder angle to a terminal angle, the vessel should initially move in a straight line and then it should transition on to an arc with a constant radius. Portions of the open-loop test done with a constant speed and an increasing rudder angle that do not show the above-mentioned motion were discarded. First, the portions of the open-loop test in which the disturbance is negligible are found using the above approach. Normally, the duration of these portions is not very long. Then, the simulation is run using the initial conditions of the low-disturbance portions of the open-loop test. It is seen that the simulation results closely match that of the low-disturbance portions of the open-loop test. Here, two samples are presented. 5.1 Straight line motion In the open-loop test, the vessel is initially at rest, the propeller speed is set to n = 98 rps, while the rudder angle is zero. The vessel moves in a straight line, while its speed increases to a constant speed. The identified model is simulated with zero initial speeds and position components; however, the initial heading is selected to match that of the open-loop test at time zero. The time history of the vessel s speeds is shown in Figure 12. It can be seen that the simulation result closely matches the test result. The linear path of the vessel during the test is shown in Figure 13. It is seen that the simulated path of the vessel closely overlaps with the vessel s path during the test. 5.2 Transition from a straight line to a circular motion At a moment during the open-loop test, the vessel is moving with a constant forward speed of u = 0.8 m s 1, a lateral Figure 12. The simulated speed response of the vessel versus open-loop test of the vessel.

2322 Y. Siramdasu and F. Fahimi Figure 13. The simulated path of the vessel versus open-loop test of the vessel. Figure 15. The simulated path of the vessel versus open-loop test of the vessel. speed of v = 0.0 m s 1 and a yaw rate of r = 0.0 rad s 1, when the rudder angle is turned from α = 0 to α = 24. Figure 14 presents the speed response of the actual vessel versus the predictions of the simulated identified model. The model s results match the vessel s response very closely. Figure 15 shows the path of the vessel during the lowdisturbance portion of the open-loop test, and the simulated path of the vessel using the identified model, which almost overlap. 6. Model-based controller Any model-based control method can be used to design a trajectory-tracking controller for the surface vessel after Figure 14. The simulated speed response of the vessel versus open-loop test of the vessel. the dynamics of the vessel are identified using the proposed identification methodology. For example, tests with the sliding mode control method on surface vessels have been used (Fahimi & Kleeck, 2012). Here, a nonlinear model predictive controller has been designed based on the identified model of the vessel. The details of the control method formulations are found in Fahimi (2009) and Siramdasu and Fahimi (2013). In the following, the result of a typical closed-loop trajectorytracking control test is reported for completeness. 7. Experimentation with closed-loop control Several tests are performed to verify the feasibility of the proposed control method. The tests are carried out in an outdoor pond on days when the local weather station reported wind gusts in the range 5 10 mph. The wind gusts generate waves with a maximum speed of 0.3 m s 1.The parameters in the first column of Table 3 are used for the dynamic model used for control design. One sample of the typical tests is presented here. The controller is tested for tracking straight paths and harmonic paths with a constant velocity of 0.8 m s 1. For each test, the vessel is manually driven to the centre of the pond, and then the controller is triggered. For the straight line test, the desired velocity of the vessel is 0.8 m s 1. Figure 16 shows the actual path of the vessel compared to the desired path. From this figure, it can be seen that the vessel is following the desired trajectory with a steady-state error. This steady-state error is consistent with an unknown disturbance directed from the north to the south, because the actual path slightly lies to the south of the desired path.

International Journal of Control 2323 Figure 16. The trajectory of the vessel in real-time for the straight line test. Figure 17 shows the history of the errors in the x- and y-coordinates of the control point. The error in the x- component starts at about 0.2 m and stays within ± 0.3 m for the duration of the test. The error in the y-component starts at about 0.75 m and stays around 0.45 m for the most part of the test. Note that the vessel is an underactuated vehicle. Normally, the driving mechanism of the vessel, a hinging propeller, has more direct control authority in the surge and yaw motions. So, the vessel can reject disturbances in the surge and yaw directions more easily than in the sway direction. As a consequence, the tracking error in the lateral direction (y-direction) is larger than that in the longitudinal direction (x-direction). Figure 18 shows that the propeller speed n is initially high, so that the vessel can catch up with the desired trajectory. After convergence to the desired trajectory, n is around the theoretical value of n ss = 76.4 rps [(d 11 /A)u ss = n C ss for d 11 /A = 4.03 m 1 s (1 C), u ss = 0.8 m s 1 and C = 0.27]. The rudder angle α of the vessel is negative at times. This causes the vessel to steer left to counteract the disturbance. Figure 18. line test. The propeller speed and rudder angle for the straight 8. Conclusion A methodology for the identification of the parameters of the nonlinear dynamic equations of motion for surface vessels is proposed. The dynamic model is formulated using 3 degrees of freedom. The test scenarios and the formulation procedure are designed such that one parameter is identified at a time in a sequential manner. To show the feasibility of the identification methodology, the parameters of the dynamic model of a test surface vessel are identified. The identification and verification of the dynamic model parameters are performed via several open-loop control tests. The usefulness of the dynamic model for model-based trajectory-tracking design is shown via performing closedloop control tests on a real vessel in an outdoor pond. The experimental result for a desired straight line is presented. The result shows the controller is successful in keeping the vessel on it trajectory despite bounded external disturbances. Acknowledgements This research was funded by the Office of the Vice President for Research, UAHuntsville, Huntsville, Alabama, USA. Notes 1. Speeds resulting from tests with n 1 = 69.2 and n 2 = 98 rps. 2. Speeds resulting from tests with n 2 = 98 and n 3 = 120 rps. 3. Speeds resulting from tests with n 1 = 69.2 and n 3 = 120 rps. Figure 17. The trajectory errors of the x- andy-coordinates for the straight line test. References Ashrafiuon, H., Muske, K.R., McNinch, L.C., & Soltan, R.A. (2008). Sliding-mode tracking control of surface vessels. IEEE Transactions on Industrial Electronics, 55, 4004 4012. Casado, M.H., & Velasco, F.J. (2003). Surface ship trajectory control using non-linear backstepping design. Proceedings of

2324 Y. Siramdasu and F. Fahimi the Institute of Marine Engineering, Science and Technology Part A: Journal of Marine Engineering and Technology, 2003, 3 8. Cheng, J., Yi, J., & Zhao, D. (2007). Design of a sliding mode controller for trajectory tracking problem of marine vessels. IET Control Theory and Applications, 1, 233 237. Do, K.D., & Pan, J. (2005). Global tracking control of underactuated ships with nonzero off-diagonal terms in their system matrices. Automatica, 41, 87 95. Do, K., Jiang, Z., & Pan, J. (2002). Underactuated ship global tracking under relaxed conditions. IEEE Transactions on Automatic Control, 47, 1529 1536. Do, K., Jiang, Z., & Pan, J. (2005). Global partial-state feedback and output-feedback tracking controllers for underactuated ships. Systems and Control Letters, 54, 1015 1036. Fahimi, F. (2009). Autonomous robots modeling, path planning, and control. New York: Springer Science+Business Media, LLC. Fahimi, F., & Kleeck, C.V. (2012). Alternative trajectorytracking control approach for marine surface vessels with experimental verification. Robotica, 31, 25 33. doi:http://dx.doi.org/10.1017/s0263574712000070 Fossen, T.I. (1994).Guidance and control of ocean vehicles. New York: Wiley (p. 32, 42 and 94; Sections 2.4.1, 2.4.2 and 4.1.1). Ghommam, J., Mnif, F., Benali, A., & Derbel, N. (2006). Asymptotic backstepping stabilization of an underactuated surface vessel. IEEE Transactions on Control Systems Technology, 14, 1150 1157. Gierusz, W., Cong Vinh, N., & Rak, A. (2007). Maneuvering control and trajectory tracking of very large crude carrier. Ocean Engineering, 34, 932 945. Godhavn, J.M., Fossen, T., & Berge, S. (1998). Non-linear and adaptive backstepping designs for tracking control of ships. International Journal of Adaptive Control and Signal Processing, 12, 649 670. Gyoungwoo, L., Surendran, S., & Kim, S.H. (2009). Algorithms to control the moving ship during harbour entry. Applied Mathematical Modelling, 33, 2474 2490. Holzhueter, T. (1997). LQG approach for the high-precision track control of ships. IEE Proceedings: Control Theory and Applications, 144, 121 127. Lefeber, E., Pettersen, K.Y., & Nijmeijer, H. (2003). Tracking control of an underactuated ship. IEEE Transactions on Control Systems Technology, 11, 52 61. Morawski, L., & Pomirski, J. (1998). Ship track-keeping: Experiments with a physical tanker model. Control Engineering Practice, 6, 763 769. Pettersen, K.Y. (2004). Global uniform asymptotic stabilization of an underactuated surface vessel: Experimental results. IEEE Transactions on Control Systems Technology, 12, 891 903. Pettersen, K., & Nijmeijer, H. (1999). Global practical stabilization and tracking for an underactuated ship a combined averaging and backstepping approach. Modeling, Identification and Control, 20, 189 199. Pettersen, K.Y., & Nijmeijer, H. (2001). Underactuated ship tracking control: Theory and experiments. International Journal of Control, 74, 1435 1446. Saeed, A., Attia, E., Helmy, A., & Awad, T. (2005). Design of a neuro-autopilot maneuvering controller for underactuated ships. Alexandria Engineering Journal, 44, 493 500. Schoerling, D., Van Kleeck, C., Fahimi, F., Koch, C.R., Ams, A., & Lober, P. (2010). Experimental test of a robust formation controller for marine unmanned surface vessels. Autonomous Robots, 28, 213 230. Siramdasu, Y., & Fahimi, F. (2013). Incorporating input saturation for surface vessel trajectory tracking control with experimental verification. Intelligent Systems and Control, 14, 1 8. Sorensen, A., Sagatun, S., & Fossen, T. (1996). Design of a dynamic positioning system using model-based control. Control Engineering Practice, 4, 359 368. Velagic, J., Vukic, Z., & Omerdic, E. (2003). Adaptive fuzzy ship autopilot for track-keeping. Control Engineering Practice, 11, 433 443. Yu, K.W., & Wu, C.E. (2004). Tracking control of a ship by PI-type sliding controller. Journal of Marine Science and Technology, 12, 183 188.