Available online at www.sciencedirect.com
ScienceDirect IFAC PapersOnLine 52-21 (2019) 114–121
Towards Automatic Steering of Towards Automatic Steering of Towards Automatic Steering of Underactuated Ships Towards Automatic Steering of Underactuated Ships Underactuated Ships Underactuated Ships Hengameh Noshahri ∗∗ Theo. J. A. de Vries ∗∗
Hengameh Noshahri ∗ Theo. J. A. Vries ∗ ∗ de ∗ Theo. J. A. Hengameh Noshahri Vries van ∗ de Hengameh Job Noshahri Theo. J. A. de Vries ∗ Job van Amerongen Amerongen ∗ ∗ ∗ Job van Amerongen Amerongen Hengameh Job Noshahri Theo. J. A. de Vries ∗ van ∗ ∗ Job van Amerongen Group, University of Twente, ∗ Robotics and Mechatronics ∗ Robotics and Mechatronics Group, University of Twente, ∗ Robotics and Mechatronics Group, University of Drienerlolaan 5, 7522 NB Enschede, The Netherlands (e-mail: Robotics and Mechatronics Group, University of Twente, Twente, Drienerlolaan 5, 7522 NB Enschede, The Netherlands (e-mail: ∗ Drienerlolaan 5, 7522 NB Enschede, The Netherlands (e-mail:
[email protected]) Robotics and Mechatronics Group, University of Twente, Drienerlolaan 5, 7522 NB Enschede, The Netherlands (e-mail:
[email protected])
[email protected]) Drienerlolaan 5, 7522 NB Enschede, The Netherlands (e-mail:
[email protected])
[email protected]) Abstract: for steering steering underactuated underactuated ships ships have have been been seldom seldom studied studied Abstract: Simple Simple control control solutions solutions for Abstract: Simple control solutions for steering underactuated ships have been seldom studied in literature. This paper provides a control method for automatic steering of underactuated Abstract: Simple solutionsafor steering underactuated ships steering have been studied in literature. This control paper provides control method for automatic of seldom underactuated in literature. literature. Thisofcontrol paper provides afor control method for automatic automatic steering ofAseldom underactuated ships in disturbances and insteering uncertain environmental conditions. mathematical Abstract: Simple solutions underactuated ships have been studied in This provides a control method for steering of in uncertain ships in presence presence ofpaper disturbances and environmental conditions. A underactuated mathematical ships in disturbances and in uncertain environmental conditions. mathematical model ship is developed Our method involves of in literature. Thisof aand control method forcontrol automatic steering ofA underactuated ships inof presence ofpaper disturbances and in validated. uncertain environmental conditions. Aintroduction mathematical model of presence ship dynamics dynamics is provides developed and validated. Our control method involves introduction of model of ship dynamics is developed and validated. Our control method involves introduction of a preparation phase consisting of three algorithms. Waypoints leading to every desired set-point ships in presence of disturbances and in uncertain environmental conditions. A mathematical of ship dynamics is developed and validated. Waypoints Our controlleading methodtoinvolves introduction of phase consisting of three algorithms. every desired set-point amodel preparation a preparation phase consisting of three algorithms. Waypoints leading to every desired set-point are defined and a continuous Dubins path is generated between these waypoints. A secondmodel of ship dynamics is developed and validated. Our control method involves introduction of a preparation phase consisting of three algorithms. Waypoints leading to every desiredAset-point are defined and a continuous Dubins path is generated between these waypoints. secondare defined and a continuous continuous Dubins path is generated between these waypoints. A secondorder motion profile is assigned to the path to suggest the speed with the best timing for the a preparation phase consisting of three algorithms. Waypoints leading to every desired set-point are defined and a Dubins path is generated between these waypoints. A secondorder motion profile is assigned to the path to suggest the speed with the best timing for the order motion profile is to path to suggest the speed with the timing for voyage. The control objective is reformulated aa tracking problem aa best regulating are defined a continuous generated between theseto waypoints. A problem secondorder motion profile is assigned assigned to the the path path is tofrom suggest the speed with the best timing for the the voyage. The and control objective isDubins reformulated from tracking problem to regulating problem voyage. The control objective is reformulated from a tracking problem to a regulating problem by changing coordinates of the reference signal. PD-controllers are employed in closed loop to order motion profile is assigned to the path to suggest the speed with the best timing for the voyage. The control objective reformulated from a tracking problem to a regulating by changing coordinates of theis reference signal. PD-controllers are employed in closedproblem loop to by changing changing coordinates of the the reference signal. PD-controllers are employed in closed loop to reduce position and heading error. The controller parameters are set in the design phase and do voyage. The control objective is reformulated from a tracking problem to a regulating problem by coordinates of reference signal. PD-controllers are employed in closed loop to reduce position and heading error. The controller parameters are set in the design phase and do reduce position and heading error. The controller parameters are set in the design phase and do not need additional tuning for different trajectories and ship parameters. Weather information by changing coordinates of the reference signal. PD-controllers are employed in closed loop to reduce position and heading error. The controller parameters are set in the design phase and do not need additional tuning for different trajectories and ship parameters. Weather information not need additional tuning for different trajectories ship parameters. information together with the planned profile are in aa feedforward controller design to achieve achieve reduce position and heading error. The controller setcontroller in theWeather design phase and do not need additional tuningmotion for different trajectories and ship are parameters. Weather information together with the planned motion profile are used usedparameters inand feedforward design to together with the profile are in aa feedforward controller design to better disturbance rejection and higher and of design are not need additional tuningmotion for trajectories ship parameters. Weather together with the planned planned motion profileaccuracy. are used usedPerformance inand feedforward controller design to achieve achieve are better disturbance rejection anddifferent higher accuracy. Performance and robustness robustness of the theinformation design better disturbance disturbance rejection and higher higher accuracy. Performance andexperiments robustness ofinthe the design are evaluated in simulation by Course-keeping and Course-changing extreme and together with the planned motion profile are used in a feedforward controller design to achieve better rejection and accuracy. Performance and robustness of design are evaluated in simulation by Course-keeping and Course-changing experiments in extreme and evaluated in by Course-keeping and Course-changing experiments extreme uncertain environmental conditions. While the control method is compared to better disturbance rejection and higher accuracy. Performance and robustness ofin design and are evaluated in simulation simulation by Course-keeping anddeveloped Course-changing experiments inthe extreme and uncertain environmental conditions. While the developed control method is simple simple compared to uncertain environmental conditions. While the developed control method is simple compared to the methods in literature, it can still achieve quite satisfactory steering performance. evaluated in simulation by Course-keeping and Course-changing experiments in extreme uncertain environmental thequite developed controlsteering methodperformance. is simple comparedand to the methods in literature,conditions. it can stillWhile achieve satisfactory the methods in literature, it can still achieve quite satisfactory steering performance. uncertain environmental conditions. While the developed control method is simple compared to the methods in literature, it can still achieve quite satisfactory steering performance. Copyright © 2019. Authors. it Published by achieve Elsevier Ltd. rights reserved. the methods in The literature, can still quiteAllsatisfactory steering performance. Keywords: Algorithms, Autonomous control, Control system design, Marine systems, Keywords: Algorithms, Autonomous control, Control system design, Marine systems, Keywords: Autonomous control, Control system design, Marine systems, Mathematical models, planning. Keywords: Algorithms, Algorithms, Autonomous Mathematical models, Path Path planning.control, Control system design, Marine systems, Mathematical models, Path planning. Keywords: Algorithms, Autonomous Mathematical models, Path planning.control, Control system design, Marine systems, Mathematical models, Path planning. 1. INTRODUCTION INTRODUCTION Non-linear 1. Non-linear Multi-Input-Multi-Output Multi-Input-Multi-Output (MIMO) (MIMO) control control 1. INTRODUCTION Non-linear Multi-Input-Multi-Output (MIMO) control methods provide high but need 1. INTRODUCTION Non-linear Multi-Input-Multi-Output (MIMO) control methods provide high performance performance features, features, but they they need 1. INTRODUCTION methods provide high performance features, but they need full measurements or observer systems to operate. State Non-linear Multi-Input-Multi-Output (MIMO) control methods provide high features, but theyState need full measurements or performance observer systems to operate. full measurements measurements or performance observer systems to operate. operate. State feedback linearization, sliding mode, backstepping, and methods provide high features, but they need full or observer systems to State feedback linearization, sliding mode, backstepping, and Commanding the the rudder, rudder, propulsion propulsion system, system, and and any any full feedback linearization, sliding mode, backstepping, backstepping, and Lyapunov’s direct control are among these methods. A measurements or observer systems to operate. State feedback linearization, sliding mode, and Commanding Lyapunov’s direct control are among these methods. A Commanding the rudder, propulsion any other device on on board of the the ship to to system, reach aa and specified Lyapunov’s direct are these methods. A survey on non-linear ship control can be found in Fossen linearization, sliding mode, backstepping, and Commanding theboard rudder, propulsion system, and any feedback Lyapunov’s direct control control are among among these methods. A other device of ship reach specified survey on non-linear ship control can be found in Fossen other device on board of the ship to reach a specified position, is known as ship steering control. Automatic Commanding the rudder, propulsion system, and any survey on non-linear ship control can be found in Fossen (2000). These methods can generally be characterized as Lyapunov’s direct control are among these methods. A other device on board of the ship to reach a specified on non-linear ship control can be be characterized found in Fossen position, is known as ship steering control. Automatic survey (2000). These methods can generally as position, is as steering Automatic steering systems have been developed over athe the course survey other device on board of the ship tocontrol. reach specified (2000). on These methods can generally be characterized as complex; the underlying mathematics require a significant non-linear ship control can be found in Fossen position, is known known as ship ship steering control. Automatic (2000). These methods can generally be characterized as steering systems have been developed over course complex; the underlying mathematics require a significant steering been developed the course of time systems to satisfyhave various purposes. Aover comprehensive position, is known as ship steering control. Automatic the underlying mathematics aa significant amount of skills and (2000). methods can generally require be characterized as steering systems have been purposes. developed over the course complex; complex; underlying mathematics require significant of time to satisfy various A comprehensive amount These ofthe skills and expertise. expertise. of time to satisfy various purposes. A comprehensive overview of marine vessel’s control systems is provided in steering systems have been developed over the course amount of skills and expertise. complex; the underlying mathematics require a significant of time to satisfy vessel’s variouscontrol purposes. A comprehensive of skills and expertise. overview of marine systems is provided in amount A is called fully actuated overview of marine vessel’s control systems is in Vukic andto Borovic (2000). The concept of automatic automatic ship of time satisfy (2000). variousThe purposes. A comprehensive A system system called actuated if if it it has has one one or or more more of is skills andfully expertise. overview ofBorovic marine vessel’s control systems is provided provided in amount Vukic and of ship A system is called fully actuated if it has one or th concept control inputs for each Degree of Freedom (DOF). A A system is called fully actuated if it has one or more more Vukic and Borovic (2000). The concept of automatic ship control dates back to the 19 century and it was first overview of marine vessel’s control systems is provided in control inputs for each Degree of Freedom (DOF). A Vukic and Borovic concept of automatic ship control dates back (2000). to the The 19th century and it was first th control inputs for each Degree of (DOF). A fully actuated ship with three-dimensional A system is called fully actuated if Freedom it has configuration one or more th concept control inputs for each Degree of Freedom (DOF). A control dates back to the 19 century and it was first realized by fully mechanical autopilot designs. Later, by Vukic and Borovic (2000). The of automatic ship fully actuated ship with three-dimensional configuration control dates back to the 19autopilot century and it was first realized by fully mechanical designs. Later, by fully actuated ship with three-dimensional configuration th space comprised of forward, sideways, and heading would control inputs for each Degree of Freedom (DOF). A actuated ship with three-dimensional configuration realized by fully fully mechanical autopilot designs. Later, by fully development of control theory and electronics, closed-loop control dates back to the 19 century and it was first space comprised of forward, sideways, and heading would realized by mechanical autopilot designs. Later, by development of control theory and electronics, closed-loop fully space comprised of forward, sideways, and heading would require actuators capable of exerting forces and moments actuated ship with three-dimensional configuration space comprised of forward, sideways, and heading would development of control control theory and electronics, electronics, closed-loop control such as PID-controllers were introduced to realized by fully mechanical autopilot designs. Later, by actuators capable of exerting forces and moments development of and closed-loop control systems systems such as theory PID-controllers were introduced to require require actuators capable of sideways, exerting forces and moments independently to steer the to any any space comprised forward, andpoint heading would actuators exerting and with moments control such as PID-controllers were to correct the angle. Problems associated with tuning development of control and electronics, closed-loop independently toofcapable steer theof vessel vessel to forces any point with any control systems such as theory PID-controllers were introduced introduced to require correct systems the rudder rudder angle. Problems associated with tuning independently to steer the vessel to any point with any desired heading (Fossen (2011)). require actuators capable of exerting forces and moments independently to steer the vessel to any point with any correct the rudder angle. Problems associated with tuning of these controllers have led to using methods like pole control systems such as PID-controllers were introduced to desired heading (Fossen (2011)). correct rudder angle. associated with tuning of thesethe controllers have Problems led to using methods like pole independently desired heading (Fossen (2011)). to steer the vessel to any point with any desired heading (Fossen (2011)). of these thesethe controllers have Problems led to to using methods like pole In placement, Linear Quadratic (LQ), Fuzzy, and Genetic correct rudder angle. associated with tuning of controllers have led using methods like pole most cases, ships are equipped with single or twin placement, Linear Quadratic (LQ), Fuzzy, and Genetic desired In most cases, ships are equipped with single or twin heading (Fossen (2011)). placement, Linear Quadratic (LQ), Fuzzy, and Genetic Algorithms (Velasco et (2004)). of these controllers have to usingFuzzy, methods pole propellers In ships equipped with single twin placement, Linear Quadratic (LQ), and like Genetic and provide longitudinal Algorithms (Velasco et al. al. led (2004)). In most most cases, cases, ships are arewhich equipped with single or or force twin and rudders, rudders, which provide longitudinal force Algorithms (Velasco et al. (2004)). placement, Linear Quadratic (LQ), Fuzzy, and Genetic propellers propellers and rudders, which provide longitudinal force Algorithms (Velasco et al. (2004)). and moment, respectively. This implies that there is no In most cases, ships are equipped with single or twin propellers andrespectively. rudders, which provide longitudinal force In a model-based ship-control approach, it is customand moment, This implies that there is no In a model-based approach, it is custom- propellers Algorithms (Velascoship-control et al. (2004)). and moment, respectively. This implies that there is no direct control action available in lateral direction and the and rudders, which provide longitudinal force and moment, respectively. This implies that there is no In a model-based ship-control approach, it is customary to consider a simplified version of ship dynamics. direct control action available in lateral direction and the In a model-based ship-control approach, it is customary to consider a simplified version of ship dynamics. and direct control action available in lateral direction and moment can not be generated without having speed in moment, respectively. This implies that there is the no direct control action available in lateral direction and the ary to consider a simplified version of ship dynamics. Single-Input-Single-Output (SISO) transfer function modIn a model-based ship-control approach, it is custommoment can not be generated without having speed in ary to consider a simplified version of ship dynamics. Single-Input-Single-Output (SISO) transfer function mod- direct moment can not be generated without having speed in longitudinal direction. According to this explanation, most control action available in lateral direction and the moment can not be generated without having speed in Single-Input-Single-Output (SISO) transfer function models, such as the Nomoto model (Nomoto et al. (1957)), ary to consider a simplified version of ship dynamics. longitudinal direction. According to this explanation, most Single-Input-Single-Output (SISO) transfer et function mod- longitudinal direction. According to this explanation, most els, such as the Nomoto model (Nomoto al. (1957)), ships are underactuated mechanisms. moment can not be generated without having speed in longitudinal direction. According to this explanation, most els, such such the as the the Nomoto model (Nomoto et al. (1957)), (1957)), facilitate use of linear control methods. These techSingle-Input-Single-Output (SISO) transfer function modships are underactuated mechanisms. els, as Nomoto model (Nomoto et al. facilitate the use of linear control methods. These tech- longitudinal ships are underactuated mechanisms. direction. According to this explanation, most ships are underactuated mechanisms. facilitate the use of linear control methods. These techniques can only command one variable, which is usually els, such asonly the Nomoto (Nomoto et These al.is (1957)), facilitate usecommand of linearmodel control methods. tech- As pointed out above, remarkable solutions for steering niques canthe one variable, which usually As pointed out above, remarkable are underactuated mechanisms.solutions for steering niques can only one variable, which is usually the angle, to control the ship heading. Increased facilitate usecommand of control methods. These tech- ships As pointed out above, remarkable solutions for steering niques canthe only command which is usually control have been suggested in but these soluthe rudder rudder angle, to linear controlone thevariable, ship heading. Increased As pointed out above, remarkable solutions steering control have been suggested in literature, literature, butfor these soluthe angle, to control the ship heading. Increased functionality of however, requires more niques can only command which is usually control have been suggested in literature, literature, butfor these soluthe rudder rudder angle, to maneuvering controlone thevariable, ship heading. Increased tions are usually developed for fully-actuated ships. The As pointed out above, remarkable solutions steering functionality of ship ship maneuvering however, requires more control have been suggested in but these solutions are usually developed for fully-actuated ships. The functionality of ship maneuvering however, requires more control sophisticated control. the rudder angle, to maneuvering control the ship heading. Increased tions usually fully-actuated ships. The functionality of ship however, requires more beendeveloped suggested for in literature, but these sophisticated control. tions are arehave usually developed for fully-actuated ships. soluThe sophisticated control. functionality of ship maneuvering however, requires more sophisticated control. tions are usually developed for fully-actuated ships. The sophisticated control. 2405-8963 Copyright © 2019. The Authors. Published by Elsevier Ltd. All rights reserved. Peer review under responsibility of International Federation of Automatic Control. 10.1016/j.ifacol.2019.12.293
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
control problem of underactuated ships is still an open research area. Do and Pan (2009) indicates that the application of classical motion control systems on underactuated ships cannot satisfy performance requirements. However, this work asserts that steering control of the ship is still possible provided that the control objective is well defined. This paper will provide a method for steering control of underactuated ships exposed to environmental disturbances using trajectory planning, speed assignment and linear control techniques. The next section will be dedicated to modelling ship kinematics and dynamics for simulation and testing purposes. The procedure will be based on the work of Fossen as presented in Fossen (2011). The developed model will be validated by running simulation experiments. Section 3 will introduce three new algorithms which remedy the control action by defining feasible control objectives for underactuated ships. The control solution will consist of simple feedback and feedforward controllers that are tuned based on a simplified version of the developed model. Efficiency of the presented control method will be tested by running simulations of two common sea trials in marine technology. Results will be presented and discussed in Section 4.
115
xe(N orth) xb
ψ x
yb
ye(East)
y
Fig. 1. Inertial Frame and Body Fixed Frame used to express the kinematics of ship, horizontal plane illustration complies with the properties of Special Orthonormal Group (SO(3)). η˙ = R(ψ)ν (3)
R(ψ) =
2. MODELLING
cosψ −sinψ 0 sinψ cosψ 0 0 0 1
(4)
2.1 Kinematics
2.2 Dynamics
A marine craft can be considered as a rigid body in a three-dimensional space with translational and rotational motion in six DOF. We position the origin of a Body Fixed Frame (BFF) at the Central Point (CP) of the ship. The axes of this coordinate system are denoted by xb , yb , and zb . xb axis is along the longitudinal direction of the ship pointing forwards. yb is the lateral axis with positive values towards the starboard; and zb axis points downwards based on the right hand rule in Cartesian coordinate system. Translational motions are called surge, sway, and heave; and the rotational motions around the three axes are referred to as roll, pitch, and yaw.
The motion of ship can be explained by Maneuvering theory, which assumes zero-frequency wave excitation (Fossen (2011)). This assumption is valid for a three DOF model comprised of surge, sway, and yaw modes, in which restoring hydrostatic forces are absent. Natural frequencies in these modes can be considered zero when compared to the high frequency motion in roll, pitch, and heave directions. The horizontal plane model can be perceived as a nonlinear mass-damper-spring system, where hydrodynamic forces can be linearly superimposed.
In addition to the body fixed coordinates, an Inertial Frame (IF) is used to describe the kinematics of the ship from a stationery observer’s point of view. In this study, we focus on low speed ships which operate in local areas; therefore an earth-fixed-earth-centered reference frame with NED (North-East-Down) coordinates can be used (Cai et al. (2011)). Both coordinate systems are depicted in Fig. 1. Two vectors are defined to explain the motion of ship: η = [x, y, ψ]T (1) ν = [u, v, r]T
(2)
Six differential equations are needed for the three selected modes, which should be solved for six state variables. The states are composed of positions and velocities in three directions. x = [η, ν] = [x, y, ψ, u, v, r]T x˙ = g(x, τ, t)
(5)
τ = [τX , τY , τN ]T is defined as control input vector, which consists of forces in xb , yb directions and moment around zb axis, respectively; t is time, and g(.) represents the state equations. A Newton-Euler formulation for rigid-body kinetics suggests: MRB ν˙ + CRB (ν)ν = τRB (6)
where (x, y) represents Cartesian position of CP defined in IF, and ψ is heading of the ship. u and v are body-fixed linear velocities in surge and sway directions respectively, and r is rate of turn. η is described relative to the IF, whereas ν is expressed in the BFF.
where MRB is rigid-body inertia matrix, CRB is matrix of rigid-body Coriolis and centripetal forces, and τRB = [X, Y, N ]T is vector of generalized external forces in BFF.
The inertial-fixed velocity vector is mapped to the bodyfixed velocity vector using Rotation Matrix (R(ψ)), which
Assuming a symmetric ship with respect to the traversal axis which moves with low speeds and low turning rates
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
116
δr
δ˙max
δmax +
-
δ˙
δ
45
τN
40
35
u 30
x e [m]
Fig. 2. Steering machine block diagram, representing the relation between moment τN , rudder angle δr , and ship speed u
25
20
15
in non-vortex constant-speed water current, the simplified expressions for motion of the ship are obtained as follows (see (Noshahri (2016)) for the complete derivation):
2 6 10 15 20
10
5
1 m(xg r + v)r − DX + τX m + Xu˙ 1 − mur − DY + τY − (mxg + Yr˙ )r˙ v˙ = m + Yv˙ mxg + Yr˙ 1 (7) r˙ = (mx +Y )2 g r˙ − m+Yv˙ + Iz + Nr˙ m + Yv˙ mur + DY − τY − mxg ur − DN + τN
0 -10
u˙ =
In these expressions hydrodynamic derivatives are the partial derivatives of the forces in τRB with respect to the velocity or acceleration in different directions, i.e.
Xu˙ =
Equation (7) represents the relation between ship control inputs as forces and the accelerations. There is no direct command for lateral forces in an underactuated ship; therefore τY is set to 0. Longitudinal thrust τX is generated by the ship propellers. In order to produce the desired moment τN , merely commanding the required rudder angle δr , will not change the heading of a stationary ship. In other words, the ship has to be in motion to be able to turn. The moment of ship can be modelled by multiplication of the rudder angle δ and forward speed with a gain. This gain can be identified during sea trials. The rudder has limited speed and cannot respond to the commands immediately. The relation between rudder angle, ship speed, and resulting moment can be considered to be included in characteristics of the steering machine as represented in Fig. 2 (van Amerongen (1982)).
0
5
10 y e [m]
15
20
25
30
Fig. 3. Ship position in Turning circle test for rudder angles of 2, 6, 10, 15, and 20 degrees 2.3 Model validation The parameters required by (7) were set as given in Table 1. We used the dimensions and parameters of a scale model with length of 1.255m, which are presented in Roger Skjetne (2005). The drag coefficients have been calculated based on the ITTC 1957 method (Bertram (2000)).
∂X ∂N , Nv = ∂ u˙ ∂v
The hydrodynamic derivatives emerge from added mass matrix, linear and non-linear damping terms, and Coriolis and centripetal effects. xg is the location of the center of gravity along the longitudinal axis. m denotes mass of the ship and Iz is moment of inertia about the zb axis. DX , DY , and DN are nonlinear damping forces in different directions which have been modelled as cross flow drag forces with drag coefficients CX , CY , and CN . These damping forces act on the area of wet surface of ship hull in the front and side, Af c and Alc , respectively. Note that the effects of waves and wind are captured as external disturbances in our model and hence are not included here.
-5
Table 1. Model parameters Parameter
Value
Unit
Parameter
Value
Unit
m Xu˙ Yv˙ CX CN Af c
23.8000 2.0000 10.0000 0.1000 0.0200 0.0725
kg kg kg − − m2
Iz Yr˙ Nr˙ CY xg Alc
1.7600 0.0000 1.0000 0.5500 0.0460 0.3137
kg.m2 kg.m kg.m2 − m m2
A number of experiments can be conducted to check the validity of the developed model. Here, we present the simulation results for the Turning circle experiment as part of the maneuvering tests for ships in sea trials (Bertram (2000)). The experiment was done for the rudder angles of δ = 2, 6, 10, 15, and 20 degrees. The test started with propelling the ship in a straight track in the calm water situation. As soon as the ship reached a constant speed (at t = 100s), the rudder was turned to the angle δ and was kept at that position. The rudder command caused the ship to change heading and to start moving in a circle. Fig. 3 illustrates the position of the ship in IF. It can be observed in Fig. 4 that the forward speed drops when the ship starts to turn. Larger rudder angles imply a higher rate of turn, more speed loss, and smaller turning circles. Therewith, it can be concluded that the developed model manifests results similar to the ones obtained by the Nomoto Model and the experimental data which are presented in van Amerongen (1982).
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
xb
20 δ [deg]
117
Region 2
10
0 0
50
100
150
200
250
300
r [deg/s]
6 2 6 10 15 20
4 2
yb
0 0
50
100
150
200
250
Region 1
300
u [m/s]
0.3 0.2
Region 3
0.1 0 0
50
100
150 Time [s]
200
250
300
Fig. 4. Turning circle test results for rudder angles of 2, 6, 10, 15, and 20 degrees, Top: Rudder angle δ deg, Middle: Rate of turn r deg/s, Bottom: Forward speed u m/s
Fig. 5. Classification of workspace in BFF into regions; Region 1: full actuation, Region 2: Directly accessible, Region 3: Directly inaccessible 19
17
3. CONTROL
16 15 x e [m]
In order to facilitate the control action and steering of the ship, three algorithms have been developed, namely, Waypoint generation, Arcs and lines segmented path generation, and Second-order motion profile planning. These algorithms define the control objective and together with feedback and feedforward controllers, they ensure that any maneuvering task can be fulfilled by the ship. In this new approach, the underactuation of the vessel will not hinder the steering performance anymore.
Start Waypoints Heading
18
14 13 12 11 10 9 8 8
10
12
14
16
18
20
22
y e [m]
3.1 Waypoint generation In practice, ships cannot reach any arbitrary position in workspace with a direct command. For instance, if the desired position is located within a long distance at the back or at the side of the ship, the solution is to take a turn and then head to the target. Achieving this performance only by inputting the final destination would demand complex control methods. We mediate the use of simple PD-controllers by generating waypoints from the starting position of the vessel towards the desired point. This decision will simplify the control action significantly.
Fig. 6. Waypoint generation algorithm results for scaled model. Starting state: (xs , ys , ψs ) = (10, 20, π/3), desired position: (xd , yd ) = (10, 10) and maximum turning angle. The final point is translated to the body fixed coordinate system and it is decided upon which region it belongs. If the final point is in Region 3, maximum turning will be recommended and the next waypoint will be set such that the target would gradually be placed in region one or two. In case the final point is in Region 2, ship heading will be corrected on demand. The distance between waypoints is set to two times the length of ship according to a convention in marine technology (Fossen (2011)). Generation of waypoints will be continued until the final point is reached.
In the developed algorithm, the workspace of the ship has been classified into three regions according to Fig. 5. Region 1 is close vicinity of the ship where it can be accurately positioned with low speed by use of bow and stern thrusters. This region can also be called full actuation area. Region 2 is within maximum turning angle of the ship and the vessel can reach any point in this region with no extra maneuvering. Region 3 is the directly inaccessible area, where the ship should perform extra maneuvers to arrive at a point. Note that in reality, the demarcation lines between Region 2 and Region 3 are curves based on the turning circle of ships; but here a simplified version is employed.
The result of algorithm is illustrated in Fig. 6, where ship starts from (xs , ys ) = (10, 20) with heading of 60deg. The ship is supposed to arrive at point (10, 10), which is initially in Region 3. Waypoints are generated to turn the ship and place the target in Region 2. Once the heading is corrected, the waypoints are continued until the commanded destination.
The algorithm starts with receiving information including location and heading of the ship, position of final point,
Direct introduction of the waypoints in discrete form to a controller will cause discontinuities and sudden changes in
3.2 Arcs and lines segmented path generation
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
118
Position [m]
4
2
40 20 0
0
0
5
10
15
20
25
0
5
10
15
20
25
0
5
10
15 Time [s]
20
25
Velocity [m/s]
2
-4
1
0
Acceleration [m/s 2 ]
x e [m]
-2
-6
-8 Waypoints Path
-10 0
2
4
6
8
10
y e [m]
Fig. 7. Arcs and lines segmented path generation, starting state: (xs , ys , ψs ) = (0, 0, 0), desired position: (xd , yd ) = (−10, 10). The dashed circles are used to generate the arcs. the heading, which are undesired. To avoid this problem, the reference signal should be smooth and continuous. We construct line and arc segments between the generated waypoints as Dubins path, which is the shortest curve with a prescribed curvature that connects between two points (Dubins (1957)). The algorithm starts with receiving waypoints and starting position of the vessel. The number of required segments is calculated and the lines between each two consecutive waypoints are found. Circles with defined radius are formed around each waypoint. This radius should be chosen according to the ship’s specifications. A small radius would result in sharper corner which might hinder the ship turning, whereas a bigger circle would generate a smoother path but larger deviation from waypoint. Next, the intersection points of the circles and the connecting lines are found. This results in two intersection points per each waypoint. The lines perpendicular to the connecting lines are found at these intersection points. The points where these perpendicular lines meet, are centers of the circles which form the arc segments. At this point, all the arc and line segments are defined. Next step is to form a continuous path with these arcs and lines. Starting from the given position of the ship, the algorithm moves towards the next waypoint until the final point is reached. Whenever a waypoint is met the algorithm toggles between line and arc segments. The output of this algorithm is the position of the points on the path in IF, which are close enough to resemble a continuous path. Fig. 7 presents the smooth path for generated waypoints extended from (0, 0) to (−10, 10). The dashed lines in this figure are the circles which form the arc segments. 3.3 Second-order motion profile planning Steering a ship towards a desired path or position is done in an over-damped manner; because it is costly and sometimes unacceptable to have any overshoots in position. Adjustment of speed with correct timing is usually done
0.4 0 -0.4
Fig. 8. Planned second-order motion profile for 50m voyage. Top: Position, Middle: Velocity, Bottom: Acceleration, The distance is covered in 28s manually and by relying on the experience of ship crew. One way to attain the same performance in an automatic steering system is to attribute this over-damped behaviour to the controller. However, this requires a complete knowledge of the system equations and parameters which is not possible in practice. In order to keep the controller simple and to achieve the desired performance, the position reference is planned as a second-order motion profile. This method leads the ship to a target point with any desired speed. In addition, time is optimized to avoid the disadvantage of slow overdamped systems. The aforementioned features are added to the algorithm presented in Lambrechts et al. (2005), where motion planing for point-to-point and standstill to standstill profile has been done. The motion profile consists of three phases of acceleration, constant velocity, and deceleration. The maximum velocity and rate of change of speed while accelerating and decelerating are calculated according to the ship dynamics. Three unknowns which are the duration of each phase of the voyage should satisfy two requirements of the desired distance and the velocity subject to the constraint of total time of the task. The defined nonlinear multi-variable optimization problem is solved using “fmincon” function from MATLABTM Optimization Toolbox. Fig. 8 illustrates the planned motion profile for a 50m voyage under 30s. Initial speed of the ship is 0.1m/s and it is expected to arrive at final point with speed of 0.5m/s. The values for acceleration and deceleration are considered 0.6m/s2 and −0.3m/s2 , respectively. The vessel can reach to the maximum speed of 2m/s. The solution provides the best timing and satisfies all the requirements. When combining this algorithm with two prior steps for reference signal generation, it is assumed that the speed at each waypoint has been determined manually and it is given as a requirement. The decision on speed of the ship is not planned automatically since it depends on many elements, e.g., sea traffic and ship stability.
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
3.4 Feedback control In the developed control method, we introduce the path to be tracked by the vessel in BFF. This choice transforms the tracking problem to a regulation control problem, where the aim is to reduce the distance to reference and the turning to zero. The transformation is done by twodimensional orthonormal change of coordinates as follows: I B P → P B = HIB P I P I = HB
(8)
P = [x, y, 1]T
where I and B stand for IF and BFF, respectively, and I P represents the general motion. HB is a homogeneous matrix, which is defined as: I I OB RB 0 1 cos ψ − sin ψ x I I RB = , OB = sin ψ cos ψ y I = HB
(9) (10)
The homogeneous matrix should be inverted to obtain the position of any arbitrary point in the BFF: I −1 HIB = (HB )
I T I T I ) −(RB ) OB (RB = 0 1
(11)
The control action is done by closing the feedback loop using three PD-controllers with low-pass filters for regulating three signals, namely, longitudinal error, lateral error, and error in the heading. The output of controller in the longitudinal case commands the main propeller’s thrust. The next two control signals are added to suggest the required rudder angle and the corresponding moment. For all controllers, the P and D parameters are tuned based on decoupled simplified models as single-masses so that the open-loop system would have cross-over frequency about 1rad/s. The gains are set according to mechanical specifications to avoid saturation in controllers. Note that there is little need for increasing the type of the system by adding an I-element to this control design, since the constant errors are largely eliminated with a feedforward controller. 3.5 Feedforward control The thrust generated by the main propulsion system can be divided into three forces; the force needed to achieve the desired acceleration, the force which overcomes the drag force acting on the ship hull, and the force required to compensate for the errors. The latter is generated by the feedback controller. We use the planned acceleration and speed together with weather information and ship parameters to generate an estimate for the first two forces in form of a feedforward controller. This decision provides higher positioning accuracy and better error handling. The following relations are used to calculate feedforward forces: F Facc = (m + Xu˙ )a∗ 1 F Fvel = ρAf c CX |u∗r |u∗r 2
(12) (13)
119
where a∗ is the desired acceleration, u∗r is the desired relative velocity between ship and water current in xb , and ρ is the sea water density. It can be seen that only four parameters from the ship specifications are used in the controllers, namely mass m, virtual mass Xu˙ , front ship area Af c , and drag coefficient CX . The low number of model variables helps the robustness of the method. If there is uncertainty involved in the parameters, the feedback control should compensate for the differences in forces. Fig. 9 shows block diagram presentation of the designed control structure. The reference position and heading signals in IF are obtained using the three introduced algorithms. The desired reference position signals in BFF xdb and ydb and heading error ψerror are generated using feedback from system states. Acceleration and velocity signals are used in feedforward controller. The output of both feedback and feedforward controllers are added to form the command signals for ship’s thrust and moment. The Ship block in the figure contains the model presented in equation (7) and Fig. 2. 4. RESULTS The performance of the developed control method was tested by conducting Course-keeping and Course-changing simulation experiments. Effects of large waves and wind were simulated as disturbances in form of multiple frequency sine signals to resemble the forces slamming the ship hull as depicted in Fig. 10. In order to evaluate the robustness of design against uncertainties, 10% error was introduced for water current speed and heading data. The error induced by the mismatch between real weather data and the one used in calculations had to be compensated by feedback control signals. The speed adjustments were planned by the second-order motion profile algorithm in both cases. 4.1 Course-keeping A straight trajectory was planned to be followed which consisted of the final point at 100m as the only waypoint. The ship was continuously exposed to extreme water current perpendicular to the planned voyage with a constant speed of 0.3m/s towards east. The ship started from standstill position and it was planned to reach a forward speed of 1m/s at the end of path within 55s. Fig. 11 (left) shows reference path, voyage made by the ship and ship heading. It was observed that the heading (indicated by green arrows) was inclined towards the west. This helped the ship to overcome the lateral force while propelling the body forward. The result was maximum error of 0.5m in ye direction. As shown in Fig. 11 (right), the ship follows the planned motion profile to satisfy the forward speed requirements. Side speed and turning rate were influenced by water current and lateral waves and wind. Water current gave a bias to the side speed while the slamming waves sequence could be identified in the measured speed. The turning rate was higher at the beginning of the motion because of starting in stationary state. This observation implies the necessity of staying above minimum maneuverability speed to ensure full control over ship heading.
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
Speed in waypoints
Waypoints
Arcs and lines segmented path generation
Waypoint generation
Starting state + Ending position
Acceleration
Second-order motion profile generation
120
Path
FFacc
Velocity
xdb
Position Coordinate transformation
Heading
Disturbances
FFvel
ydb ψerror
PDx PDy PDψ
+ +
+
Thrust
x y
Ship
+
Moment ψ
+
Fig. 9. Control structure overview 2 120
1
u [m/s]
Disturbance in x b [N]
1.5
0.5 0
1
100
0
-0.5
0
10
20
30
40
50
60
0
10
20
30
40
50
60
0
10
20
40
50
60
-1
80 -1.5 20
30
40
50
0.2
60
60
Course-keeping Course-changing
0.5
0 -0.2
40 0 r [deg/s]
Disturbance in y b [N]
v [m/s]
10
x e [m]
0
20 -0.5
5 0 -5
0
10
20
30
40
50
0 -20
60
Time [s]
Fig. 10. Disturbances as forces in xb and yb direction for Course-keeping and Course-changing experiments
0 ye [m]
20
30 Time [s]
Fig. 12. Course-changing experiment: Reference path, ship voyage and heading (left), Speed in three modes (right)
2 u [m/s]
120
4.2 Course-changing 1
100
0 5
10
15
20
25
30
35
40
45
50
55
0
5
10
15
20
25
30
35
40
45
50
55
0.4 v [m/s]
80
xe [m]
0
60
0.2
0 40
r [deg/s]
5 20
0 -10
0
-5 0 10 y e [m]
0
5
10
15
20
25 30 Time [s]
35
40
45
50
55
Fig. 11. Course-keeping experiment: Reference path, ship voyage and heading (left), Speed in three modes (right)
The aim of the second experiment was to test the ship heading in curved paths with presence of disturbances. The trajectory was planned using one middle waypoint at (50, 10) and the Arcs and lines segmented path generation algorithm. The second-order motion profile algorithm was used to ensure full speed at the given waypoint, best timing, and complete halting at the end of the path. The ship was exposed to head and side waves and water current with speed of 0.1m/s running towards south-east. Fig. 12 (left) manifests the performance of the ship in this scenario; the path was followed with correct heading, and the environmental disturbances did not deviate the ship. Maximum lateral error was 0.7m, which occurred during the course changing. Speed was measured as shown in Fig. 12 (right). The fluctuations in forward speed were caused by the heading waves. Side speed and turning rate were influenced by curvature of the path and also external side forces.
Hengameh Noshahri et al. / IFAC PapersOnLine 52-21 (2019) 114–121
Forward thrust [N]
121
ACKNOWLEDGEMENTS
15 10
The authors would like to thank Imotec B.V. for supporting the research and Mr. D. Baljet from Van Oord and Dr. J. Ettema for very helpful discussions.
5 0 -5 0
10
20
30
40
50
60
Moment [Nm]
0.4 Course-keeping Course-changing
0.2 0 -0.2 -0.4 0
10
20
30
40
50
60
Time [s]
Fig. 13. Resulting control signals for steering the ship for both Course-keeping and Course-changing experiments Fig. 13 compares the resulting control signals for steering the ship in both experiments. It was assumed that the scaled model used in the simulations could apply thrust and moment limited to [−5, 15]N and [−0.5.0.5]N.m, respectively.
5. CONCLUSION In this paper, we addressed the problem of steering underactuated ships subject to various disturbances. A model was developed based on the ship hydrodynamics. Validity of the model was shown by running Turning circle experiment. The contribution to the control problem was made from a novel perspective. First, the control objective was redefined to suit the limitations of an underactuated ship. This remedy involved generating waypoints and developing continuous trajectories to ensure that every point in workspace is accessible by the ship. Speed along the path was planned by a time-optimized second-order motion profile to accommodate the over-damped behaviour of ships. Our method was also able to satisfy the speed requirements upon arrival. We changed the tracking problem to a regulation problem in an innovative approach by defining the reference signals in Body Fixed Frame. This choice allowed the use of linear feedback controllers in the next stage. Simple PD-controllers were employed to compensate for the position and heading errors. Better accuracy and disturbance rejection was achieved by adding feedforward controllers based on weather data and motion profile. Our control method was tested during two simulation experiments by commanding the ship to follow trajectories in extreme environmental conditions. The tasks were done by engaging the introduced algorithms to compute the desired path, timing, and speed. There was no need for task-based fine-tuning of the PD-controllers and the same controller setting was used in both experiments. The robustness of control design was asserted by adding mismatch between the provided weather information and simulation conditions. All in all, the behaviour of the developed automatic steering control is quite satisfactory.
REFERENCES Bertram, V. (2000). Practical Ship Hydrodynamics. Butterworth-Heinemann. Cai, G., Chen, B.M., and Lee, T.H. (2011). In Unmanned Rotorcraft Systems, chapter 2. Springer. Do, K.D. and Pan, J. (2009). Control of Ships and Underwater Vehicles: Design for Underactuated and Nonlinear Marine Systems. Springer. Dubins, L.E. (1957). On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents. American Journal of Mathematics, 79(3), 497–516. Fossen, T.I. (2000). A survey on nonlinear ship control: from theory to practice. In Proceeding of the 5th IFAC Conference on Manuevering and Control of Marine Craft. Fossen, T. (2011). Handbook of Marine Craft Hydrodynamics and Motion Control. John Wiley and Sons. Lambrechts, P., Boerlage, M., and Steinbuch, M. (2005). Trajectory planning and feedforward design for electromechanical motion systems. Control Engineering Practice, (13), 145–157. Nomoto, K., Taguchi, T., Honda, K., and Hirano, S. (1957). On the steering qualities of Ships. In International Shipbuilding Progress, volume 4. Noshahri, H. (2016). Reducing Fuel Consumption for Trailing Suction Hopper Dredgers using Automatic Steering. Master’s thesis, University of Twente, Robotics and Mechatronics, P.O. Box 217, 7500 AE Enschede, The Netherlands. Roger Skjetne, Thor I. Fossen, P.V.K. (2005). Adaptive maneuvering, with experiments, for a model ship in a marine control laboratory. Automatica, 41, 289–298. van Amerongen, J. (1982). Adaptive steering of the ships. Ph.D. thesis, Delft University of Technology. Velasco, F.J., Lopez, E., Rueda, T.M., and Moyano, E. (2004). Ship steering control. In Automation for the Maritime Industries. Vukic, Z. and Borovic, B. (2000). Guidance and control systems for marine vehicles. In The Ocean engineering handbook.