Next Article in Journal
Rehabilitation Techniques for Offshore Tubular Joints
Next Article in Special Issue
Semi-Active Heave Compensation for a 600-Meter Hydraulic Salvaging Claw System with Ship Motion Prediction via LSTM Neural Networks
Previous Article in Journal
On the Resistance of Cruciform Structures during Ship Collision and Grounding
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

MPC-Based Collaborative Control of Sail and Rudder for Unmanned Sailboat

1
Key Laboratory of Ocean Observation-Imaging Testbed of Zhejiang Province, Zhejiang University, Zhoushan 316021, China
2
Hainan Institute, Zhejiang University, Sanya 572025, China
3
The Engineering Research Center of Oceanic Sensing Technology and Equipment, Ministry of Education, Zhoushan 316000, China
4
Ocean Research Center of Zhoushan, Zhejiang University, Zhoushan 316021, China
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2023, 11(2), 460; https://doi.org/10.3390/jmse11020460
Submission received: 28 January 2023 / Revised: 16 February 2023 / Accepted: 18 February 2023 / Published: 20 February 2023
(This article belongs to the Special Issue Technology and Equipment for Underwater Robots)

Abstract

:
In the traditional motion control method of an unmanned sailboat, the sail and rudder are divided into two independent controllers. The sail is used to obtain the thrust and the rudder is used to adjust the yaw angle. The traditional control method does not consider the synergy between the two controllers and ignores the influence of the roll angle on sailing. It is easy for these methods to cause an excessive roll angle and large yaw angle error, which will weaken the safe navigation and accurate path tracking of an unmanned sailboat. This paper presents a collaborative control method of sail and rudder based on model predictive control. A four-degree-of-freedom kinematics and dynamics model of the unmanned sailboat considering roll angle was established, with the yaw angle and roll angle as the control objectives at the same time. The collaborative control method outputs sail angle and rudder angle simultaneously. By comparing the motion of this method and the separation control of sail and rudder under the same wind field conditions, it is verified that the collaborative control has better effects of yaw angle control and roll angle limitation and can obtain a more accurate path tracking effect.

1. Introduction

Unlimited by carried fuel, an unmanned sailboat is powered by wind and solar energy and has the advantages of long-duration and wide-range cruising on the sea surface [1]. In recent years, unmanned sailboats have played a unique advantage in broad applications such as marine data collection, environmental monitoring, ocean observation, etc. [2]. In the traditional rudder control of an unmanned sailboat, the most common method is PID control. However, PID control is prone to steady-state error and oscillation in actual unmanned sailboat control. The sail control is usually the maximum thrust sail angle method, and the control goal is to maximize the speed. However, the maximum thrust sail angle method does not take into account the limitation of roll angle and lateral displacement, which will cause the excessive roll angle. Excessive roll angle will affect navigation safety and cause a poor path tracking effect in actual control.
In recent years, many domestic and foreign scholars have conducted a lot of research on the improvement of traditional motion control strategies. Dong et al. [3] proposed a Gaussian process model predictive control (GPMPC) method based on data-driven learning technology for rudder control, which improved the control effect of yaw angle. Jouffroy et al. [4] designed a nonlinear rudder controller using the integrator backstepping method and achieved a good heading control effect. Shen ZP et al. [5] proposed a rudder control strategy of the adaptive recursive sliding mode dynamic surface for unmanned sailboats’ course control. In addition, neural networks with memory and prediction functions have begun to enter the field of surface ship control [6]. Based on the kinematics model, Astrov [7] designed a seven-layer neural network predictive rudder controller to control the course of unmanned sailboats. In the later research, scholars gradually began to pay attention to the problem of sail control and put forward some methods of speed adjustment and roll angle limitation. Zhang et al. [8] proposed a robust fuzzy speed regulator by integrating dynamic surface control and robust fuzzy damping technology, which lost speed in exchange for a smaller roll angle. Corno et al. [9] proposed an optimized sail controller based on the improved extreme search method to keep unmanned sailboats at the best speed in a changing wind. Saoud et al. [10] proposed a method of sail angle control that maximizes speed based on limiting the roll angle, effectively limiting the roll angle in sailing. Deng et al. [11] designed an event-triggered composite adaptive fuzzy control law, which added the roll angle constraint method into the sail control law to prevent unmanned sailboats from capsizing.
The above methods all consider the control of rudder and sail separately and do not consider the synergy between the action of rudder and sail. In order to achieve the comprehensive best effect of the control of an unmanned sailboat, the sail and rudder cooperation provides a new way of thinking. Sun et al. [12] proposed a control strategy for wind-surfing navigation based on force polar coordinates. In this algorithm, the sail angle and rudder angle are output through the same control algorithm, and they cooperate with each other to obtain the maximum speed in the course of wind-surfing navigation. However, this collaborative control method is not used for yaw angle control and path tracking.
Collaborative sail and rudder control is required to solve multi-input multi-output control problems as well as to be capable of adapting to the complex nonlinear motion of an unmanned sailboat. MPC is suited to deal with complex nonlinear model problems, allowing one algorithm to simultaneously output rudder control signals and sail control signals. MPC is an optimization control algorithm firstly proposed by Richalet [13] in 1979. It uses the known model and current state quantity to predict the future output of the system and determines the current optimal control target value of the system through online time-domain rolling optimization and feedback correction methods. Gao et al. [14] combined MPC controllers with neural network adaptive controllers for positioning control and tracking optimization of underwater robots. Zhang et al. [15] established a kinematic dynamics model of AUV with six degrees of freedom and proposed a 3D underwater trajectory tracking method for AUV based on MPC.
Inspired by the above research, this paper proposes an MPC-based collaborative control method for the sail and rudder of an unmanned sailboat with the goal of simultaneously controlling the yaw angle and limiting the roll angle.
Based on the four-degree-of-freedom kinematics and dynamics model of the unmanned sailboat, this method converts the problem of yaw angle and roll angle control into an optimization problem with constraints. The constraints include input constraints and state constraints, and then the optimization problem is transformed into a standard convex quadratic programming problem that can be calculated online. When the unmanned sailboat reaches a new state, the optimal input of the next moment is recalculated according to the current state and expected state, and the rolling optimization is carried out according to this cycle. Finally, based on the mature MMG dynamics model and the four-degree-of-freedom kinematics model of the unmanned sailboat, the simulation study verifies the effectiveness of the control method. The innovative aspects of this paper can be summarized as:
(1) The tracking of yaw angle and the restriction of roll angle are considered in the control target. It is beneficial to reduce the error of path tracking and is more suitable for the actual motion control of ocean observation unmanned sailboats.
(2) Considering the role of roll angle in the motion control of the unmanned sailboat, the rudder and sail are combined to achieve the control goal by using the multi-input and multi-output characteristics of MPC.
This paper is divided into the following sections. The second section presents the kinematic dynamics model of the unmanned sailboat. The third section presents the MPC-based sail and rudder cooperative control strategy. Simulation results are given in the fourth section. The fifth section provides a summary and an outlook for future work.

2. Model

Most of the traditional motion control studies consider the motion of an unmanned sailboat as a three-degree-of-freedom planar motion, i.e., only surge, sway and yaw are considered. However, in the actual ocean navigation, an unmanned sailboat will be subjected to wind and waves, and it is more reasonable to describe it by a four-degree-of-freedom motion model including the roll angle.

2.1. Reference Coordinate System

In order to clearly describe the four-degree-of-freedom motion of the unmanned sailboat, the inertial coordinate system (i-frame) O-XYZ and the appendage coordinate system (b-frame) o-xyz are defined as shown in Figure 1. O is the origin of the inertial coordinate system. OX points due east, OY points due north and OZ is perpendicular to the Earth’s surface and points down. The wind direction and boat direction in the inertial coordinate system are in the angular range [0°, 360°), with the OX positive direction as 0° and increasing clockwise. o is the origin of the appendage coordinate system. ox points to the bow, oy points to starboard and oz points to the bottom of the sailboat. The wind direction in the appendage coordinate system takes values in the interval [0°, 180°], 0° for perfectly upwind and 180° for perfectly downwind. The wind from the starboard side is positive and the wind from the port side is negative. Sail angle is defined as positive for sail to starboard and negative for sail to port. The rudder angle is defined as positive for rudder to starboard and negative for rudder to port.

2.2. Kinematic Model

In the inertial coordinate system, x denotes the displacement in the x-axis direction, y denotes the displacement in the y-axis direction and ψ denotes the yaw angle. ψ is 0° in the positive direction of the y-axis and increases clockwise, 0 ψ < 2 π . ϕ denotes the roll angle, π 2 ϕ π 2 . In the appendage coordinate system, u denotes the velocity in the x-axis direction, v denotes the velocity in the y-axis direction, r denotes the yaw angle angular velocity and p denotes the roll angular velocity.
In this paper, a four-degree-of-freedom kinematic model considering the roll angle is used:
{ x ˙ = u cos ψ v cos ϕ sin ψ y ˙ = u sin ψ + v cos ϕ cos ψ ψ ˙ = r cos ϕ ϕ ˙ = p
where x ˙ denotes the velocity in the x -axis direction, y ˙ denotes the velocity in the y -axis direction, ψ ˙   denotes the angular velocity in the yaw angle direction and ϕ ˙   denotes the angular velocity in the roll angle direction.
The wind observed in the inertial coordinate system is the true wind. The true wind speed is defined as V t w and the true wind direction is defined as α t w . The wind observed in the appositional coordinate system is the apparent wind. The apparent wind speed is defined as V a w and the apparent wind direction is defined as α a w . V is the actual speed of the sailboat and satisfies V 2 = u 2 + v 2 , where   V ,   V t w and V a w satisfy the vector triangle. The sail angle δ s is defined as the angle between the chord of the sail and the longitudinal axis of the sailboat. The angle of attack α s is defined as the angle between the apparent wind and the chord of the sail, satisfying α s = α a w δ s , and the rudder angle is defined as δ r .

2.3. Dynamics Model

The dynamics model uses the MMG model proposed by the Ship Manoeuvring Mathematical Model Group of the Japan Towing Tank Committee (JTTC) [16]. The MMG model is a well-established model of sailboat dynamics built according to the physical sense. Its main feature is the decomposition of the hydrodynamic forces and moments acting on an unmanned sailboat into hydrostatic resistance, additional resistance on the hull, rudder force and sail force. In addition, the forces and moments coupled between them are also considered.
Based on the MMG model, the dynamics model of the unmanned sailboat in this paper can be expressed as:
{ m ( u ˙ v ψ ˙ ) = X U + X h u l l + X r u d d e r + X s a i l m ( v ˙ + u ψ ˙ ) = Y h u l l + Y r u d d e r + Y s a i l ( I x x + J x x ) ϕ ¨ = K h u l l + K r u d d e r + K s a i l + K s t a b i l i t y ( I z z + J z z ) ψ ¨ = N h u l l + N r u d d e r + N s a i l
where ψ ¨ denotes the angular acceleration of the yaw angle, ϕ ¨ denotes the angular acceleration of the roll angle, I x x denotes the rotational inertia around the x-axis in the attachment coordinate system, J x x denotes the additional rotational inertia around the x-axis in the attachment coordinate system, I z z denotes the rotational inertia around the z-axis in the attachment coordinate system and J z z denotes the additional rotational inertia around the z-axis in the attachment coordinate system. X U denotes the residuary resistance of hull. X h u l l , Y h u l l , K h u l l and N h u l l denote the force and moment from additional hull resistance, and they can be expressed as
{   X h u l l = ( X V V V 2 + X φ φ ϕ 2 + X V V V V V 4 ) ( 1 2 ρ V B 2 L D ) Y h u l l = ( Y V V + Y φ ϕ + Y V φ φ V ϕ 2 + Y V V φ V 2 ϕ + Y V V V V 3 ) ( 1 2 ρ V B 2 L D ) K h u l l = ( K V V + K φ ϕ + K V φ φ V ϕ 2 + K V V φ V 2 ϕ + K V V V V 3 ) ( 1 2 ρ V B 2 L D 2 ) N h u l l = ( N V V + N φ ϕ + N V φ φ V ϕ 2 + N V V φ V 2 ϕ + N V V V V 3 ) ( 1 2 ρ V B 2 L 2 D )
where X V V , X φ φ , X V V V V , Y V , Y φ , Y V φ φ , Y V V φ , Y V V V , K V , K φ , K V φ φ , K V V φ , K V V V , N V , N φ , N V φ φ , N V V φ and N V V V denote the hydrodynamic coefficient of additional hull resistance. V denotes the sine function of the drift angle. V = sin β , and β denotes drift angle. V B denotes the speed of the sailboat, and V B = u 2 + v 2 . L denotes the length of the sailboat. D denotes the draft of the sailboat.
X r u d d e r , Y r u d d e r , K r u d d e r and N r u d d e r denote the force and moment on the rudder, and they can be expressed as
{ X r u d d e r = C X δ sin α R sin δ r ( 1 2 ρ V B 2 L D ) Y r u d d e r = C Y δ sin α R cos δ r cos ϕ ( 1 2 ρ V B 2 L D ) K r u d d e r = C K δ sin α R cos δ r ( 1 2 ρ V B 2 L D 2 ) N r u d d e r = C N δ sin α R cos δ r cos ϕ ( 1 2 ρ V B 2 L 2 D )
where C X δ , C Y δ , C K δ and C N δ denote the rudder force coefficient. δ denotes rudder angle. α R denotes the angle of attack of the rudder, and α R = δ + β . K s t a b i l i t y denotes the restoring moment of initial stability, and it can be expressed as
K s t a b i l i t y = m g G M ¯ sin ϕ
where m denotes the mass of the sailboat, g denotes gravitational acceleration and G M ¯ denotes initial stability height. Among them, this paper focuses on the forces and moments acting on the sail, with particular attention to the roll moments of the sail. X s a i l , Y s a i l , K s a i l and N s a i l denote the forces and moments on the sail, and they can be expressed as
{ X s a i l = C x cos 2 ϕ 1 2 ρ a V a w 2 S A Y s a i l = C y cos 2 ϕ 1 2 ρ a V a w 2 S A K s a i l = C y ( z G C E G S A ) cos ϕ 1 2 ρ a V a w 2 S A 3 2 N s a i l = { C y ( x G C E G S A ) + C x ( z G C E G S A ) sin ϕ } cos 2 ϕ 1 2 ρ a V a w 2 S A 3 2
where C x denotes the sail longitudinal thrust coefficient, C y denotes the sail transverse thrust coefficient, ρ a denotes the density of air and S A denotes the wind area of the sail. x G C E G and z G C E G denote the coordinates of the sail force point relative to the center of gravity.
The longitudinal and lateral thrust coefficients of the sail are determined by the dynamic coefficient, drag coefficient and relative wind angle of the sail itself. The dynamic coefficient and drag coefficient of the sail are obtained from the sail test. They can be expressed as
{ C x = C l sin ( α a w ) C d cos ( α a w ) C y = C l cos ( α a w ) + C d sin ( α a w ) ,
where C l denotes the power coefficient of the sail and C d denotes the drag coefficient of the sail.

3. Collaborative Control Strategy

MPC is a control strategy based on numerical optimization, which designs a system model to predict future control inputs and future state responses. MPC has a good theoretical basis. It optimizes the state response of the system at each cycle interval by calculating the sequence of future system input adjustments. By minimizing the cost function, the optimal control input sequence for the next N sampling interval is obtained. When solving optimization problems, input constraints and state constraints can be explicitly dealt with to improve the robustness of the system. The main characteristics of MPC are rolling optimization and feedback correction, which can effectively reduce the error in the closed-loop system. Therefore, the MPC control system can achieve good stability, optimality and robustness.
The unmanned sailboat kinematic model (1) and dynamics model (2) correspond to eight nonlinear functions, denoted as f 1 , f 2 , f 3 , f 4 , f 5 , f 6 , f 7 , f 8 . We define the state quantities as x = [ x   y   ψ   ϕ   u   v   r   p ] T in the inertial coordinate system. We define the control quantities as u = [ δ s   δ r ] T in the appendage coordinate system. The nonlinear equation of the kinematic and dynamics model can be written as:
x ˙ = f ( x , u )
In this paper, the state quantities we want to control are the yaw angle ψ and the roll angle ϕ , so we define the output quantities as y = [ ψ   ϕ ] T , satisfying y = C x , where C = [ O 2 * 2   I 2   O 2 * 4 ] . We assume that the desired yaw angle ψ d and the desired roll angle ϕ d are known in advance. The desired output quantities can be expressed as y d = [ ψ d   ϕ d ] T . Let the target state quantities be x d = [ x d   y d   ψ d   ϕ d   u d   v d   r d   p d ] T . From y = C x , we can deduce that y d = C x d . From y d = C x d , we can deduce that the target state quantities are x d = C + y d , and C + is the pseudo-inverse matrix of C . From y ˜ = y y d , which represents the increment of the output quantities, then we obtain the increment of state quantities: x ˜ = x x d . The desired sail angle δ s d and the desired rudder angle δ r d can be calculated from the desired yaw angle, roll angle and real-time motion state. We define the desired control quantities as u d = [ δ s d   δ r d ] T , and define the quantities vector increment as u ˜ = u u d .
The controller design is divided into the following steps: prediction, constraint conditions, optimization and rolling time domain optimization.

3.1. Prediction

This part is the key step of model predictive control. Through the kinematics and dynamics model of the unmanned sailing boat and the current state quantity, the output quantity for the limited time in the future can be predicted.
The inputs of this part are target yaw ψ d , target roll ϕ d and apparent wind angle α a w . Through the target yaw ψ d and apparent wind angle α a w , the optimal sail angle strategy can calculate the desired sail angle δ s d . The desired rudder angle δ r d is usually set to 0. From u d = [ δ s d   δ r d ] T , we can calculate u d . From y d = [ ψ d   ϕ d ] T , we can calculate y d . From x d = C + y d , we can calculate x d . According to the sailboat state vector x and control vector u measured by the sensor, x ˜ and u ˜ can be calculated.
A Taylor expansion of Equation (8) at the point ( x d , u d ) , keeping only the first-order terms and ignoring the higher-order terms, yields
x ˙ = f ( x d , u d ) + f x | u = u d x = x d ( x x d ) + f u | u = u d x = x d ( u u d )
where A J = f x | u = u d x = x d is the Jacobi matrix for which f ( x d , u d ) is biased against x d . B J = f u | u = u d x = x d is the Jacobi matrix of f ( x d , u d ) for the bias derivative of u d .
According to the equation satisfying x ˙ d = f ( x d , u d ) , x ˜ ˙ = x ˙ x ˙ d . The derivative of the increment of the state quantity is obtained: x ˜ ˙ = A J x ˜ + B J u ˜ . The forward Euler method can be expressed as a discrete form with a sampling period of T, namely x ˜ ˙ = x ˜ ( k + 1 ) x ˜ ( k ) T , yielding x ˜ ( k + 1 ) = ( T A J ( k ) + E ) x ˜ ( k ) + T B J ( k ) u ˜ ( k ) , denoted as
x ˜ ( k + 1 ) = A ( k ) x ˜ ( k ) + B ( k ) u ˜ ( k )
where A ( k ) = T A J ( k ) + E , B ( k ) = T B J ( k ) .
We generate the prediction matrix for the state volume increments:
  { x ˜ ( k + 1 ) = A x ˜ ( k ) + B u ˜ ( k ) x ˜ ( k + 2 ) = A 2 x ˜ ( k ) + A B u ˜ ( k ) + B u ˜ ( k + 1 ) x ˜ ( k + 3 ) = A 3 x ˜ ( k ) + A 2 B u ˜ ( k ) + A B u ˜ ( k + 1 ) + B u ˜ ( k + 2 ) x ˜ ( k + N ) = A N x ˜ ( k ) + A N 1 B u ˜ ( k ) + A N 2 B u ˜ ( k + 1 ) + + B u ˜ ( k + N 1 )
Simplified as
X ˜ ( k ) = A ¯ ( k ) x ˜ ( k ) + B ¯ ( k ) U ˜ ( k )
where X ˜ ( k ) = [ x ˜ ( k + 1 | k ) x ˜ ( k + 2 | k ) x ˜ ( k + N | k ) ] , A ¯ ( k ) = [ A ( k ) A ( k ) 2 A ( k ) N ] T , B ¯ ( k ) = [ B ( k ) 0 0 A ( k ) B ( k ) B ( k ) 0 A ( k ) N 1 B ( k ) A ( k ) N 2 B ( k ) B ( k ) ] , U ˜ ( k ) = [ u ˜ ( k | k ) u ˜ ( k + 1 | k ) u ˜ ( k + N 1 | k ) ] .
We define the predicted output vector as Y ˜ ( k ) = [ y ˜ ( k + 1 | k ) y ˜ ( k + 2 | k ) y ˜ ( k + N | k ) ] , simplified as Y ˜ ( k ) = C ¯ X ˜ ( k ) , where C ¯ = [ C E 8 * 8 1 O 2 * 8 O 2 * 8 O 2 * 8 C E 8 * 8 2 O 2 * 8 O 2 * 8 O 2 * 8 C E 8 * 8 N ] .

3.2. Constraint Conditions

In actual unmanned sailboat sailing, both the sail controller and rudder controller have their own action limits, i.e., upper limit u m a x and lower limit u m i n . The range of the sail angle can be adjusted 0~90°, so the lower limit of the sail angle is 0 and the upper limit is 90°. The limit of both left and right rudder angle actions is 35°, so the lower limit is −35° for the left full rudder and the upper limit is 35° for the right full rudder. The upper limit vector is u m a x = [ 90 ° 35 ° ] and the upper limit vector is u m i n = [ 0 ° 35 ° ] .
We define the predictive control vector U ( k ) , and U ( k ) satisfies the following U m i n U ( k ) U m a x , where U m i n = [ E 2 * 2 1 u m i n E 2 * 2 2 u m i n E 2 * 2 N u m i n ] and   U m a x = [ E 2 * 2 1 u m a x E 2 * 2 2 u m a x E 2 * 2 N u m a x ] . We define the control vector increment U ˜ ( k ) , with U ˜ ( k ) satisfying U m i n U d ( k ) U ˜ ( k ) U m a x U d ( k ) , where U d ( k ) = [ u d ( k | k ) u d ( k + 1 | k ) u d ( k + N 1 | k ) ] . The transformation is { U ˜ ( k ) U m a x U d ( k ) U ˜ ( k ) U m i n + U d ( k ) , abbreviated as L U ˜ ( k ) l ( k ) , where L = [ I 2 N I 2 N ] , l ( k ) = [ U m a x U d ( k ) U m i n + U d ( k ) ] .

3.3. Optimization

The inputs of this part are the state quantity prediction matrix X ˜ ( k ) and control quantity prediction matrix U ˜ ( k ) , A ¯ ( k ) , B ¯ ( k ) and l ( k ) . The cost function of MPC-based sail and rudder collaborative control contains the output quantity deviation and the control quantity deviation, which are defined as follows:
J = 0 T [ y ( t ) y d ( t ) Q y 2 + u ( t ) Q u 2 ] d t s . t   L U ˜ ( k ) l ( k )
where Q y denotes the weight of the output quantity in the cost function and Q u denotes the weight of the control quantity in the cost function. Since y = C x and x = C + y , C + is the pseudoinverse matrix of C . From Q x = C T Q y C = C + Q y C , we can derive J ( k ) = Y ˜ ( k ) Q ¯ y 2 + U ˜ ( k ) Q ¯ u 2 = X ˜ ( k ) Q ¯ x 2 + U ˜ ( k ) Q ¯ u 2 . By expanding the formula, we can have
J ( k ) = A ¯ ( k ) x ˜ ( k ) + B ¯ ( k ) U ˜ ( k ) Q ¯ x 2 + U ˜ ( k ) Q ¯ u 2
where Q ¯ x = [ Q x 0 0 0 Q x 0 0 0 Q x ]   and   Q ¯ u = [ Q u 0 0 0 Q u 0 0 0 Q u ] can be simplified as:
U ˜ * ( k ) =   U ( k ) a r g   m i n 1 2 U ˜ T ( k ) H ( k ) U ˜ ( k ) + f T ( k ) U ˜ ( k ) s . t   L U ˜ ( k ) l ( k )
where H ( k ) = 2 ( B ¯ T ( k ) Q ¯ x B ¯ ( k ) + Q ¯ u ) and f ( k ) = 2 B ¯ T ( k ) Q ¯ x A ¯ ( k ) .

3.4. Rolling Time Domain Optimization

Since there are inevitable errors in the system modeling and errors in the first-order Taylor expansion of the system equations, the MPC control algorithm selects only the first set of control vectors u ˜ * ( k ) at a time for output. The u ˜ * ( k ) selects the first and second elements of U ˜ * ( k ) , where u ˜ * ( k ) = [ U ˜ * ( k ) [ 1 ] U ˜ * ( k ) [ 2 ] ] . Waiting until the next time step and then recalculating the new control vector based on the feedback state quantity combined with the target state quantity to form a rolling time-domain optimization is as follows:
u * ( k ) = u ( 0 ) + u ˜ * ( k )
where u * ( k ) = [ δ s * ( k ) δ r * ( k ) ] .
The control law of sail angle:
δ s * ( k ) = u * ( k ) [ 1 ]
The control law of rudder angle:
δ r * ( k ) = u * ( k ) [ 2 ]

3.5. Controller Design Diagram

The controller design process for collaborative MPC control of the sail and rudder of the unmanned sailboat is shown in Figure 2.
The controller design process for collaborative MPC control of the sail and rudder of the unmanned sailboat is shown in Figure 2. The yellow arrow represents the external input quantity, the blue arrow represents the process quantity and the red arrow represents the feedback quantity. The core part of the controller includes prediction, constraint conditions and optimization. The prediction part reads the state quantities increment x ˜ ( k ) and the control quantities increment u ˜ ( k ) , and calculates the prediction matrices X ˜ ( k ) , U ˜ ( k ) , A ¯ ( k ) and B ¯ ( k ) based on the known dynamics model and kinematics model of the unmanned sailboat. Based on the known upper and lower limits of sail angle and rudder angle, combined with the desired control matrix U d ( k ) , the constraint conditions part calculates l ( k ) . The optimization part reads the prediction matrices and constraint conditions and converts them into a standard convex quadratic programming problem. By solving the quadratic programming problem, the optimization part calculates the optimal control quantities increment U ˜ * ( k ) . The controller selects the first set of values as the output sail angle δ s * ( k ) and rudder angle δ r * ( k ) . At the end of a time step, the calculation is repeated through feedback to achieve rolling optimization.

3.6. Algorithm

The Algorithm 1 in the following table is the process of collaborative MPC control of the sail and rudder of the unmanned sailboat.
Algorithm 1: MPC sail rudder collaborative control
Input: y d (desired output), u ( 0 ) (initial control vector), T (prediction time step), N (prediction horizon), C(coefficient matrix), Q u (control vector weighting matric), Q y (output vector weighting matric), u m i n , u m a x (control vector constraints)
1: k←1
2: x(k)← x(0)
3:compute Q x , Q ¯ x ,   Q ¯ u , U m i n , U m a x   , C ¯
4:while k ≥ 0 do
5:    compute u d ( k ) , x d ( k ) , u ˜ ( k ) , x ˜ ( k ) , A ( k ) , B ( k )
6:    update X ˜ ( k ) , U ˜ ( k ) , A ¯ ( k ) ,   B ¯ ( k ) ,   l ( k )
7:    solve the QP problem
8:    get the first control vector u ˜ * ( k ) from U ˜ * ( k )
9:    implement δ s * ( k ) and δ r * ( k ) to the sail and rudder
10: kk + 1
11: measure the current x ( k ) and u ( k )
12:end while

4. Simulation Results

In this section, the MPC-based sail and rudder collaborative control method of the unmanned sailboat is verified by simulation. The simulations were conducted on a desktop computer equipped with an AMD Ryzen5 3.6 GHz processor, using a simulator developed on the Simulink platform based on Matlab R2021a. The first simulation compares the control effect of MPC-based sail and rudder collaborative control with MPC-based separation control during sidewind sailing. The second simulation compares the sailing effect of the above two methods in a four-point sailing simulation experiment in a constant wind field.
The hydrodynamic and aerodynamic parameters of the unmanned sailboat used in the simulation are derived from the Fujin-class unmanned sailboat in the paper [17]. The specific parameters involved are shown in Table 1.
Each basic parameter of the MPC algorithm is as follows: sampling time T = 0.5 s, number of prediction steps n = 10, output weight matrix Q y = d i a g ( q ψ , q ϕ ) and control weight matrix Q u = d i a g ( q s , q r ) . According to the MPC parameter selection method, a set of weight coefficients with a better control effect is selected among multiple reasonable sets of weights. The output weight matrix Q y = d i a g ( 1 , 2 ) and the control weight matrix Q u = d i a g ( 0.1 , 1 ) are selected for the sail and rudder collaborative control. Since the variation range of the yaw angle is 0 ~ 360 ° and the variation range of the roll angle is 90 ° ~ 90 ° , the yaw angle weight: roll angle weight = 1:2. The variation range of the sail angle is 0 ° ~ 90 ° , and the variation range of the rudder angle is 35 ° ~ 35 ° . The control weight of the sail angle should be reduced appropriately since the sail angle should take the optimal thrust sail angle as a reference. Set sail control weight: rudder control weight = 0.1:1. The flow and parameters of the MPC control algorithm used for separating the control rudder angle are the same as those of collaborative control, but the roll angle part is discarded in the model. The separated control output vector only contains the yaw angle, and the control weight is set as Q y = [ 1 ] ,   Q u = d i a g ( 0.1 , 1 ) . The sail angle of the separation control adopts the traditional maximum thrust method, which means that the sail angle of the optimal thrust is selected according to the relative wind angle. The simulation flow of the two control methods is shown in Figure 3.

4.1. Comparison of Sail–Rudder Collaborative and Separation Control

The challenge of unmanned sailboat control comes from sidewind sailing, because the roll angle of an unmanned sailboat is the largest when sailing in side wind. When sailing in side wind, the sail lateral force and roll moment are also larger, so the yaw angle control is challenged to some extent. Therefore, a comparison experiment between collaborative control and separation control is carried out for 90° positive sidewind sailing to better visualize the difference between the two control algorithms. The schematic diagram is shown in Figure 4a. The initial yaw angle ψ is set to 180°, the initial roll angle ϕ is 0°, the initial longitudinal speed u is 2 m/s and the desired yaw angle ψ d is set to 90°. The wind direction is constant as α t w = 180 ° , and the wind speed is gradually increasing:
V t w = { 3   m / s , t [ 0 , 50 s ) 5   m / s , t [ 50 , 100 s ) 8   m / s , t [ 100 , 150 s )
The comparison of the roll angle of the sidewind sailing experiments is shown in Figure 4b.
From Table 2 below, we can see that the roll angle of the collaborative control is smaller than that of the separation control under different wind speeds. In the 90° sidewind sailing, the collaborative control achieves better roll angle control compared with the separation control.
Since it is difficult to achieve no error in the yaw angle for positive sidewind navigation, the steady-state error of the yaw angle is adopted as the evaluation index. The smaller the steady-state error is, the better the control effect is. From ψ =   r d t cos ϕ , it can be seen that the yaw turning angle generated by the rudder is   r d t . The larger the roll angle ϕ is, the larger the yaw angle ψ error is. From Figure 5a, we can see that the yaw angle of collaborative control converges faster in 0–50 s with a wind speed of 3 m/s, the yaw angle converges in about 24 s and the steady-state error is 6.07°. However, the separation control converges to a stable yaw angle at around 47 s, and the steady-state error is 11.65°. The steady-state error of the yaw angle under different wind speeds is shown in Table 3 below. It is proved that the collaborative control considering the roll angle has a better yaw angle control effect than the separation control without considering the roll.
It can be seen from Figure 5a that in the 90° sidewind sailing, the dynamic characteristics of collaborative control are better than that of separate control for yaw angle control. This is because the sail also takes part in the turning action of the sailboat during the collaborative control. However, the separation control can only output the sail angle of the optimal thrust according to the real-time relative wind angle, which does not help the sailboat to turn. In the Figure 5b, N s a i l represents the yaw moment generated by the wind acting on the sail. As shown in Figure 5b, the N s a i l controlled by the collaborative control is larger than that of the separated control at 0~12 s. The average sail yaw moment N s a i l of the collaborative control is 117.04 N*m, while the average sail yaw moment N s a i l of the separated control is 29.68 N*m. By ( I z z + J z z ) ψ ¨ = N h u l l + N r u d d e r + N s a i l , it can be seen that the acceleration of the yaw angle at 0~12 s for the collaborative control is greater than that of the separation control. It shows that the sail in the collaborative control participates in the steering action of the sailboat and provides the moment for the sailboat to steer, which contributes to the rapid convergence of the yaw angle to some extent.
As seen in Figure 6a,b, the longitudinal velocities of the collaborative control and the separation control keep increasing and do not converge within 0~50 s, and the difference between the longitudinal thrust X s a i l of the two sails is not significant at this time. At 50~100 s, the longitudinal thrust X s a i l of the separated control is 963.65 N and the longitudinal thrust X s a i l of the collaborative control is 708.77 N. The longitudinal thrust of the collaborative control is reduced by 26.4% compared with the separated control. The longitudinal velocity of the separated control converges to 3.75 m/s and the longitudinal velocity of the collaborative control converges to 3.58 m/s. The longitudinal velocity of the collaborative control is reduced by 4.5% compared with the separated control. At 100~150 s, the longitudinal thrust X s a i l of the separated control is 2484.57 N and the longitudinal thrust X s a i l of the collaborative control is 1943.18 N. The longitudinal thrust of the collaborative control is reduced by 21.7% compared to the separated control. The longitudinal velocity of the separation control converges to 4.27 m/s, the longitudinal velocity of the cooperative control converges to 4.12 m/s and the velocity loss is only 3.5%. Although the collaborative control sacrifices part of the longitudinal thrust X s a i l by increasing the sail angle, the longitudinal speed loss is smaller than the longitudinal thrust loss due to the reduction of additional drag X h u l l brought by the reduction of roll angle.

4.2. Comparison of Sail–Rudder Collaborative and Separation Lateral Shift

In the sailing of the unmanned sailboat, the force of wind can be decomposed into the transverse and longitudinal directions of the hull, so the sailboat must move sideways. This situation is especially obvious when sailing in the side wind, which will make the sailboat deviate from the predetermined path. This is also the main reason for the poor tracking accuracy of unmanned sailboats. In collaborative control, since the set sail angle does not follow the optimal thrust sail angle, the sail angle will be greater than the optimal thrust sail angle. At the same wind angle, the angle of attack will decrease when the sail angle increases. The reduction of the angle of attack will reduce the lateral displacement force in addition to the longitudinal driving force, which can reduce the lateral displacement to a certain extent.
The forward thrust of the sail can be expressed as X s a i l = C x cos 2 ϕ * 1 2 ρ a U A 2 S A , and the lateral force of the sail can be expressed as Y s a i l = C y cos 2 ϕ 1 2 ρ a U A 2 S A . Coefficients C x and C y are related to the angle of attack and the relative wind angle, and the relationship between them is shown in the Figure 7.
The lateral speed and lateral displacement for the two control methods are shown in Figure 8, and the specific values are shown in Table 4.
This proves that the collaborative control can limit the lateral displacement of the unmanned sailboat to a certain extent. The reason for this can be seen in Figure 9, where the lateral thrust of the separation control is always greater than that of the collaborative control.

4.3. Four-Point Navigation Comparison Simulation

The simulation compares the collaborative control and separation control in four-point navigation. As shown in Figure 10, four target points are set, and the sailboat starts at (0,0) and passes target point I:(100,100), target point II:(0,200), target point III:(−100,100) and target point IV:(0,0) in turn. The LOS guidance method is used for the yaw angle guidance. It is stipulated that when the sailboat enters the area with the target point as the center and 10 m as the radius, it is regarded as reaching the target point and starts to turn to the next target point for navigation. The initial yaw angle of the unmanned sailboat is 315°. The initial roll angle is 0°. The initial longitudinal speed is u = 2 m/s. The wind direction and wind speed are as follows: α t w = 270 ° and V t w = 3   m / s . The collaborative control weights are set as follows: Q y = d i a g ( 1 , 2 )   and   Q u = d i a g ( 0.1 , 1 ) . The separation control weights are set as follows: Q y = [ 1 ]   and   Q u = d i a g ( 0.1 , 1 ) .
The longitudinal velocity comparison between collaborative control and separation control during four-point navigation is shown in Figure 11a. The average longitudinal velocity of separation control is 2.65 m/s, and the average longitudinal velocity of collaborative control is 2.35 m/s, with a 12% velocity loss.
As shown in Figure 11b, during the whole navigation process, the total lateral shift of separation control is 16.74 m, while the total lateral shift of collaborative control is 8.46 m. As the lateral shift is smaller, the collaborative control reduces the lateral deviation from the target path and achieves a better path tracking effect.
The four-point navigation path diagram is shown in Figure 12. The target area is marked by a red dashed circle. The target path is marked by a blue dashed line. The green solid line is the path navigated by the collaborative control algorithm. The brown solid line is the path navigated by the separation control algorithm. It can be clearly seen that the collaborative control can obtain more accurate path tracking compared with the separation control. The first path is defined as from target point IV to target point I. The second path is defined as from target point I to target point II. The third path is defined as from target point II to target point III. The fourth path is defined as from target point III to target point IV. The straight-line distance between the real-time path point and the target path of the sailing boat is defined as the side-shift deviation, and the maximum side-shift deviation and average side-shift deviation of the sailing boat in the four segments of the path are calculated. The results are shown in Table 5 and Table 6.
It can be seen that the maximum and average deviations of separation control are larger than those of collaborative control in each segment of the path, mainly because collaborative control has better yaw control and a better side-shift limiting effect than separation control.
The time to reach the target point using the collaborative control and the separation control is shown in Table 7. Since the separation control has a longitudinal speed advantage compared with the collaborative control, the collaborative control is 11.14 s slower than the separation control at the end of the four-point navigation, which is a loss of 4.8%. The speed advantage of the separation control is not obvious, and it is worthwhile to lose a little speed for more accurate path tracking.
The roll angle of the two control methods are shown in Table 8.
From Figure 13, it can be seen that the roll angle of the collaborative control is basically smaller than that of the separation control during the whole sailing process. It can be seen from Figure 14 that the sail angle of collaborative control is greater than the sail angle of separate control during the whole navigation process. This is because the separation control uses the optimal thrust sail angle. In order to achieve better yaw angle control and roll angle limitation, the collaborative control increases the sail angle based on the optimal thrust sail angle. The angle of attack decreases with the increase in sail angle, resulting in the reduction of the lateral component of the sail and the reduction of the roll moment. Therefore, the collaborative control has achieved a better control effect with smaller roll angle and better lateral displacement limitation.

5. Conclusions

This paper considers the coupling relationship between the sail and rudder of the unmanned sailboat and proposes a collaborative control method of the sail and rudder of the unmanned sailboat based on MPC. This algorithm can control the yaw angle and limit the roll angle at the same time. First of all, the four-degree-of-freedom kinematics and dynamics model of the unmanned sailboat is established, and the problem of heading angle and heeling angle control is transformed into an optimization problem with constraints. Secondly, considering input constraints and state constraints, the optimization problem is transformed into a standard convex quadratic programming problem that can be calculated online. Finally, when the unmanned sailboat reaches a new state, the optimal input at the next moment is recalculated according to the current state and expected state, and the rolling optimization is carried out according to this cycle. By comparing the collaborative control with the separation control through simulation experiments, it is proved that the collaborative control can achieve a smaller steady-state error of the yaw angle and smaller roll angle than the separation control. Collaborative control can also achieve smaller side shift limitation and a better path tracking effect in four-point navigation.

Author Contributions

Conceptualization, S.L. and Z.Y.; methodology, Z.Y. and T.W.; software, Z.Y. and Y.C. (Yifan Chen); validation, S.L., Z.Y. and T.W.; data curation, Z.Y.; writing—original draft preparation, Z.Y.; writing—review and editing, Z.Y. and T.W.; visualization, Y.C.(Yong Cai); supervision, Y.Z. and Y.C. (Yong Cai); project administration, Y.C. (Yong Cai); funding acquisition, S.L. and Y.C.(Yong Cai). All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the “Pioneer” and “Leading Goose” R&D Program of Zhejiang (2022C03041 and 2023C03124), 2020 Research Program of Sanya Yazhou Bay Science and Technology City (SKYC2020-01-001), as well as the Strategic Priority Research Program of the Chinese Academy of Sciences (XDA22040202).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Plumet, F.; Petres, C.; Romero-Ramirez, M.A.; Gas, B.; Ieng, S.H. Toward an Autonomous Sailing Boat. IEEE J. Ocean. Eng. 2015, 40, 397–407. [Google Scholar] [CrossRef]
  2. Setiawan, J.D.; Chrismianto, D.; Ariyanto, M.; Sportyawan, C.W.; Widyantara, R.D.; Alimi, S. Development of Dynamic Model of Autonomous Sailboat for Simulation and Control. In Proceedings of the 2020 7th International Conference on Information Technology, Computer, and Electrical Engineering (ICITACEE), Semarang, Indonesia, 24–25 September 2020. [Google Scholar]
  3. Dong, Y.; Wu, N.; Qi, J.; Chen, X.; Hua, C. Predictive Course Control and Guidance of Autonomous Unmanned Sailboat Based on Efficient Sampled Gaussian Process. J. Mar. Sci. Eng. 2021, 9, 1420. [Google Scholar] [CrossRef]
  4. Xiao, L.; Jouffroy, J. Modeling and Nonlinear Heading Control of Sailing Yachts. IEEE J. Ocean. Eng. 2014, 39, 256–268. [Google Scholar] [CrossRef]
  5. Shen, Z.P.; Zou, T.Y.; Guo, T.T. Adaptive dynamic surface control for nonaffine unmanned sailboat course system with input constraint. Control. Theory Appl. 2019, 36, 1461–1468. [Google Scholar]
  6. Luo, W.; Zhang, Z. Modeling of ship maneuvering motion using neural networks. J. Mar. Sci. Appl. 2016, 15, 426–432. [Google Scholar] [CrossRef]
  7. Astrov, I.; Udal, A. Neural Predictive Tracking Control of Catamaran Model Sailboat for Situation Awareness Applications. In Proceedings of the 2020 IEEE 24th International Conference on Intelligent Engineering Systems (INES), Reykjavik, Iceland, 8–10 July 2020. [Google Scholar]
  8. Zhang, G.; Li, J.; Liu, C.; Zhang, W. A robust fuzzy speed regulator for unmanned sailboat robot via the composite ILOS guidance. Nonlinear Dyn. 2022, 110, 2465–2480. [Google Scholar] [CrossRef]
  9. Corno, M.; Formentin, S.; Savaresi, S.M. Data-Driven Online Speed Optimization in Autonomous Sailboats. IEEE Trans. Intell. Transp. Syst. 2015, 17, 762–771. [Google Scholar] [CrossRef]
  10. Saoud, H.; Hua, M.D.; Plumet, F.; Amar, F.B. Optimal sail angle computation for an autonomous sailboat robot. In Proceedings of the IEEE Conference on Decision & Control, Osaka, Japan, 15–18 December 2015. [Google Scholar]
  11. Deng, Y.; Zhang, X.; Zhang, Q.; Hu, Y. Event-triggered composite adaptive fuzzy control of sailboat with heeling constraint. Ocean. Eng. 2020, 211, 107627. [Google Scholar] [CrossRef]
  12. Sun, Q.; Qiao, Z.; Strömbeck, C.; Qu, Y.; Liu, H.; Qian, H. Tacking Control of an Autonomous Sailboat Based on Force Polar Diagram. In Proceedings of the 2018 13th World Congress on Intelligent Control and Automation (WCICA), Changsha, China, 4–8 July 2018. [Google Scholar]
  13. Richalet, J.A. Model Predictive Heuristic Control, Application to Industrial Process. Automatica 1979, 14, 413–428. [Google Scholar] [CrossRef]
  14. Gao, J.; Liu, C.; Proctor, A. Nonlinear model predictive dynamic positioningcontrol of an underwater vehicle with an onboard USBL system. J. Mar. Sci. Technol. 2016, 21, 57–69. [Google Scholar] [CrossRef]
  15. Zhang, Y.; Liu, X.; Luo, M.; Yang, C. MPC-based 3-D trajectory tracking for an autonomous underwater vehicle with constraints in complex ocean environments. Ocean. Eng. 2019, 189, 106309. [Google Scholar] [CrossRef]
  16. De Ridder, E.J.; Vermeulen, K.J.; Keuning, J.A. A Mathematical Model for the Tacking Maneuver of a Sailing Yacht. The Netherlands: 2004:1–34. Available online: https://repository.tudelft.nl/islandora/object/uuid:65918ccf-fd4f-4acc-8892-66baf8875a33 (accessed on 16 November 2004).
  17. Masuyama, Y.; Fukasawa, T. Tacking simulation of sailing yachts with new model of aerodynamic force variation during tacking maneuver. Trans. Soc. Nav. Archit. Mar. Eng. 2008, 119, 508–510. [Google Scholar]
Figure 1. Coordinate system of the unmanned sailboat.
Figure 1. Coordinate system of the unmanned sailboat.
Jmse 11 00460 g001
Figure 2. The controller design process diagram.
Figure 2. The controller design process diagram.
Jmse 11 00460 g002
Figure 3. (a) Flow chart of collaborative control; (b) Flow chart of separation control.
Figure 3. (a) Flow chart of collaborative control; (b) Flow chart of separation control.
Jmse 11 00460 g003
Figure 4. (a) Schematic diagram of sidewind navigation; (b) Comparison curves of roll angle for sidewind sailing.
Figure 4. (a) Schematic diagram of sidewind navigation; (b) Comparison curves of roll angle for sidewind sailing.
Jmse 11 00460 g004
Figure 5. (a) Comparison curves of yaw angle error for sidewind navigation; (b) Comparison curves of sail angle and turning yaw moment for sidewind sailing.
Figure 5. (a) Comparison curves of yaw angle error for sidewind navigation; (b) Comparison curves of sail angle and turning yaw moment for sidewind sailing.
Jmse 11 00460 g005
Figure 6. (a) Comparison curves of Xsail for sidewind sailing; (b) Comparison curves of longitudinal velocity for sidewind sailing.
Figure 6. (a) Comparison curves of Xsail for sidewind sailing; (b) Comparison curves of longitudinal velocity for sidewind sailing.
Jmse 11 00460 g006
Figure 7. (a) Relationship among attack angle, apparent wind angle and Cx; (b) Relationship among attack angle, apparent wind angle and Cy.
Figure 7. (a) Relationship among attack angle, apparent wind angle and Cx; (b) Relationship among attack angle, apparent wind angle and Cy.
Jmse 11 00460 g007
Figure 8. Comparison curves of lateral speed and lateral displacement for sidewind sailing.
Figure 8. Comparison curves of lateral speed and lateral displacement for sidewind sailing.
Jmse 11 00460 g008
Figure 9. Comparison curves of Ysail for sidewind sailing.
Figure 9. Comparison curves of Ysail for sidewind sailing.
Jmse 11 00460 g009
Figure 10. Schematic diagram of four-point navigation.
Figure 10. Schematic diagram of four-point navigation.
Jmse 11 00460 g010
Figure 11. (a) Comparison curves of longitudinal velocity of four-point navigation; (b) Comparison of lateral speed and side lateral displacement of four-point navigation.
Figure 11. (a) Comparison curves of longitudinal velocity of four-point navigation; (b) Comparison of lateral speed and side lateral displacement of four-point navigation.
Jmse 11 00460 g011
Figure 12. Four-point navigation path diagram.
Figure 12. Four-point navigation path diagram.
Jmse 11 00460 g012
Figure 13. Comparison curves of roll angle of four-point navigation.
Figure 13. Comparison curves of roll angle of four-point navigation.
Jmse 11 00460 g013
Figure 14. Comparison curves of sail angle and rudder angle of four-point navigation.
Figure 14. Comparison curves of sail angle and rudder angle of four-point navigation.
Jmse 11 00460 g014
Table 1. Fujin-class unmanned sailboat parameters.
Table 1. Fujin-class unmanned sailboat parameters.
ParametersValueParametersValue
L8.80 m Y V φ φ 7.37 × 10−1
B2.64 m Y V V φ −5.53 × 10−1
D2.02 m Y V V V 3.07
m 4410 kg K V 2.80 × 10−1
G M ¯ 1.45 m K φ 3.36 × 10−3
x C G −0.60 m K V φ φ −4.07 × 10−1
I R 4.40 m K V V φ 2.24 × 10−1
S a 59.3 m2 K V V V −1.38
m x 160 kg N V −3.23 × 10−2
m y 2410 kg N φ −1.52 × 10−2
m z 12,000 kg N V φ φ 2.71 × 10−4
I x x 17,700 kg·m2 N V V φ −9.06 × 10−2
I y y 33,100 kg·m2 N V V V −2.98 × 10−2
I z z 17,200 kg·m2 C X δ −3.79 × 10−2
J x x 15,300 kg·m2 C Y δ −1.80 × 10−1
J y y 42,400 kg·m2 C K δ 9.76 × 10−2
J z z 6700 kg·m2 C N δ 9.74 × 10−2
X V V 3.38 × 10−1 ρ a 1.205 kg/m3
X φ φ 1.40 × 10−3 ρ w 1025 kg/m3
X V V V V −1.84 x G C E G 0.67 m
Y V −5.35 × 10−1 z G C E G −6.13 m
Y φ −5.89 × 10−3 S w 21 m2
Table 2. Roll angle of the collaborative control and separation control.
Table 2. Roll angle of the collaborative control and separation control.
RollCollaborative Control (deg)Separation Control (deg)
3 m/s2.324.57
5 m/s4.439.13
8 m/s12.5816.65
Table 3. Yaw error of the collaborative control and separation control.
Table 3. Yaw error of the collaborative control and separation control.
Yaw ErrorCollaborative Control (deg)Separation Control (deg)
3 m/s6.0711.65
5 m/s8.6313.36
8 m/s13.2530.91
Table 4. Lateral speed and lateral displacement of the collaborative control and separation control.
Table 4. Lateral speed and lateral displacement of the collaborative control and separation control.
Control MethodLateral Speed (m/s)Lateral Displacement (m)
collaborative control0.0548.152
separation control0.0649.586
Table 5. Maximum deviation of the collaborative control and separation control.
Table 5. Maximum deviation of the collaborative control and separation control.
Maximum DeviationCollaborative Control (m)Separation Control (m)
the first path0.5731.791
the second path21.24332.454
the third path5.98537.041
the fourth path4.6268.728
Table 6. Average deviation of the collaborative control and separation control.
Table 6. Average deviation of the collaborative control and separation control.
Average DeviationCollaborative Control (m)Separation Control (m)
the first path0.2931.207
the second path8.88615.871
the third path1.96916.796
the fourth path1.9046.019
Table 7. Time of arrival at each point of the collaborative control and separation control.
Table 7. Time of arrival at each point of the collaborative control and separation control.
Time Of ArrivalSeparation Control (s)Collaborative Control (s)
target point Ⅰ51.3561.22
target point Ⅱ116.88135.30
target point Ⅲ176.87193.72
target point Ⅳ231.96243.10
Table 8. Maximum roll angle and average roll angle of the collaborative control and separation control.
Table 8. Maximum roll angle and average roll angle of the collaborative control and separation control.
Control MethodMaximum Roll Angle (deg)Average Roll Angle (deg)
separation control12.2985.042
collaborative control10.9751.103
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Liu, S.; Yu, Z.; Wang, T.; Chen, Y.; Zhang, Y.; Cai, Y. MPC-Based Collaborative Control of Sail and Rudder for Unmanned Sailboat. J. Mar. Sci. Eng. 2023, 11, 460. https://doi.org/10.3390/jmse11020460

AMA Style

Liu S, Yu Z, Wang T, Chen Y, Zhang Y, Cai Y. MPC-Based Collaborative Control of Sail and Rudder for Unmanned Sailboat. Journal of Marine Science and Engineering. 2023; 11(2):460. https://doi.org/10.3390/jmse11020460

Chicago/Turabian Style

Liu, Shuo, Zijing Yu, Tao Wang, Yifan Chen, Yu Zhang, and Yong Cai. 2023. "MPC-Based Collaborative Control of Sail and Rudder for Unmanned Sailboat" Journal of Marine Science and Engineering 11, no. 2: 460. https://doi.org/10.3390/jmse11020460

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop