Next Article in Journal
Three-Dimensional Modeling of Tsunami Waves Triggered by Submarine Landslides Based on the Smoothed Particle Hydrodynamics Method
Previous Article in Journal
Relative Sea-Level Rise Projections and Flooding Scenarios for 2150 CE for the Island of Ustica (Southern Tyrrhenian Sea, Italy)
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Hybrid Layer of Improved Interfered Fluid Dynamic System and Nonlinear Model Predictive Control for Navigation and Control of Autonomous Underwater Vehicles

Graduate School of Science and Engineering, Chiba University, Chiba 263-8522, Japan
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2023, 11(10), 2014; https://doi.org/10.3390/jmse11102014
Submission received: 15 September 2023 / Revised: 14 October 2023 / Accepted: 17 October 2023 / Published: 19 October 2023
(This article belongs to the Section Ocean Engineering)

Abstract

:
This study introduces a hybrid control structure called Improved Interfered Fluid Dynamic System Nonlinear Model Predictive Control (IIFDS-NMPC) for the path planning and trajectory tracking of autonomous underwater vehicles (AUVs). The system consists of two layers; the upper layer utilizes the Improved Interfered Fluid Dynamic System (IIFDS) for path planning, while the lower layer employs Nonlinear Model Predictive Control (NMPC) for trajectory tracking. Extensive simulation experiments are conducted to determine optimal parameters for both static and dynamic obstacle scenarios. Additionally, real-world testing is performed using the BlueRov2 platform, incorporating multiple dynamic and static obstacles. The proposed approach achieves real-time control at a frequency of 100 Hz and exhibits impressive path tracking accuracy, with a root mean square (RMS) of 0.02 m. This research provides a valuable framework for navigation and control in practical applications.

1. Introduction

Autonomous underwater vehicles (AUVs) are increasingly utilized in various applications for ocean exploration. Path planning and trajectory tracking are fundamental requirements [1], and the smoothness, efficiency, and tracking deviation of the planned paths play crucial roles in these tasks [2]. Achieving real-time planning and control in complex environments is particularly important for efficient and safe AUV navigation [3]. Although both path planning and trajectory tracking tasks utilize the AUV motion model [4], they are treated as separate tasks within the general guide navigation control (GNC) framework [5].
Different path planning methods are employed for known and unknown obstacle environments [6]. In known static obstacle environments, algorithms like A* [7], Dijkstra [8], and RRT [9] are utilized to generate optimal paths using predetermined obstacle information. Dynamic obstacle environments, where obstacles move and change, present a more complex challenge. Randomized algorithms like PRM [10] and improved RRT [11], as well as SLAM [12] algorithms based on sensor data, are used. However, these methods often lack real-time capabilities.
Real-time path planning and tracking are essential for adapting to dynamic obstacles. To address real-time concerns, Jian, F.W. et al. introduced IIFDS [13], an APF-based method suitable for unknown dynamic environments. Extensive validation has been performed on various platforms, including unmanned boats and aerial vehicles [14,15].
AUV path tracking control has been widely researched. PID control is used in non-critical scenarios [16]. Linear quadratic regulator (LQR) control [17], while useful, may suffer from modeling inaccuracies. Nonlinear sliding mode control (SMC) can handle disturbances but may cause high-frequency oscillations [18].
Model Predictive Control (MPC) offers a trade-off between path tracking error and control constraints. Nonlinear MPC (NMPC) leverages dynamic model characteristics, making it suitable for path tracking control [19,20]. The computational time of the solver algorithm is predominantly consumed by matrix operations and constraints, factors that dictate parsing speed and variable precision. Sequential Quadratic Programming (SQP) is employed to address quadratic linear optimization problems concurrently featuring equality and inequality constraints, with the objective of identifying a locally optimal solution that satisfies the imposed constraints [21]. In the Baidu Apollo autonomous vehicle project, the SQP algorithm has been successfully applied [22].
Based on the extensive literature review presented, it becomes evident that the IIFDS offers the advantage of rapid computational capabilities, whereas NMPC excels in maintaining an optimal balance between tracking error and control effort. Building upon these insights, this paper introduces a composite control strategy that harnesses the strengths of both approaches, hereby referred to as the IIFDS-NMPC control structure (Figure 1). To validate the real-time control requirements, smooth trajectory tracking, and optimal performance in complex environments, we conducted a series of comprehensive simulations and experiments using this hybrid layer structure, encompassing scenarios with both static and dynamic obstacles.
Our contributions can be summarized as follows:
  • Real-Time Hybrid Control Structure: We propose a real-time hybrid control structure for path planning and trajectory tracking (depicted in Figure 1). In this architecture, the upper layer leverages the real-time IIFDS controller, while the bottom layer employs the NMPC controller. The computation time for each step remains consistently under 0.01 s, and the RMS tracking deviation is limited to a remarkable 0.02 m.
  • Detailed Design Process: We provide a comprehensive explanation of the complete design process. By following the steps outlined here, the proposed structure can be readily implemented across various platform systems, extending its applicability beyond just AUV systems.
  • Real-Time Feasibility: Extensive simulations and experiments validate the real-time feasibility of our approach. Testing was conducted in environments featuring both static and dynamic obstacles, with the designed path planning controller compared against A* methods. In static obstacle simulations, our method showcased a planning time reduction of 300 times compared to the A* algorithm. In dynamic obstacle scenarios, planning time was reduced by a factor of three. During real platform testing, our approach achieved a remarkable step-by-step tracking and control time of 0.0067 s, with an RMS tracking deviation as low as 0.01867 m.
  • Physical Experimentation: To the best of our knowledge, this approach is employed for the first time in physical experiments with AUVs. The STM32 interface board acquires obstacle and environmental information from the ground station, while the main control NVIDIA-X2 core is utilized for path planning and the computation of optimal control quantities under various constraints.
The subsequent sections of this paper are organized as follows: Section 2 presents the kinematic and dynamic models of the AUV system along with the mathematical representations of obstacles. Section 3 delves into the methodology and algorithmic framework of our proposed hybrid layer structure. The simulation setup and experimental evaluations are detailed in Section 4, while Section 5 offers a comprehensive discussion of the results and performance analysis. Finally, in Section 6, we conclude the paper by summarizing the findings and outlining potential avenues for future research.

2. AUV Systems and Obstacle Scenario Modeling

To design the hybrid controller for the AUV known as BlueRov2, which is manufactured by BlueROV Robotics, located in Victoria, BC, Canada [23], as illustrated in Figure 2, it is essential to develop a comprehensive mathematical model that encompasses both the AUV itself and the obstacle scenarios it may encounter. This section aims to provide an overview of the AUV model, covering its kinematic and dynamic aspects. The kinematic model establishes the relationship between the AUV’s position, velocity, and acceleration during its motion. Conversely, the dynamic model captures the dynamic changes that occur during acceleration. Furthermore, the obstacle scenarios are described using model equations to provide a clear representation of the challenges the AUV may encounter.

2.1. Coordinate Systems of AUVs

The AUV system is designed to operate with six degrees of freedom (6DOF), allowing it to achieve independent movement in three linear directions (surge, sway, and heave) and three rotational directions (roll, pitch, and yaw). These six DOF provide the AUV with the capability to navigate and maneuver effectively in three-dimensional space. To describe the AUV’s motion, two frames of reference are commonly used: the inertial frame (I-frame) and the body frame (B-frame) [24]. It is assumed that the center of gravity and the center of buoyancy of the ROV are located at the center of the robot skeleton. This configuration is illustrated in Figure 2.

2.2. Kinematic System Model

The kinematic model primarily explains the geometric relationships among the motion variables of the AUV system, without considering the forces and torques that cause system motion and changes. Conversion can be performed between the body coordinate system and the earth coordinate system variables. The parameters of the AUV system include the position vector η , the velocity vector ν , and the thrust vector τ [25]. The definitions of each variable are as follows.
η = [ x , y , z , ϕ , θ , ψ ] T v = [ u , v , w , p , q , r ] T τ = [ X , Y , Z , K , M , N ] T
The position vector η represents the coordinates in the Earth coordinate system, encompassing the absolute position of the origin ( x , y , z ) and the Euler angles ( ϕ , θ , ψ ) that indicate the orientation. In contrast, the body coordinate system is defined based on the centroid of the AUV. In this system, the velocity vector ν describes the linear velocities ( u , v , w ) along the three axes of the body coordinate system, as well as the angular velocities ( p , q , r ) around those axes.
Furthermore, the thrust vector τ ( X , Y , Z , K , M , N ) denotes the external forces and torques acting upon the AUV system, expressed as a vector within the body coordinate system. To facilitate the transformation of variables between these two coordinate systems, a reversible transformation matrix J ( η ) R 6 × 6 is employed. This matrix enables the conversion between the respective coordinate systems.
η ˙ = J ( η ) v J ( η ) = R 0 0 T
The Euler angles η = [ ϕ , θ , ψ ] T correspond to the roll, pitch, and yaw angles of the AUV system. The velocity transformation matrix, denoted R ( η ) , facilitates the conversion from the body coordinate system to the Earth coordinate system. Similarly, the angular velocity transformation matrix, denoted T ( η ) , enables the conversion from the body coordinate system to the Earth coordinate system. Conversely, when transforming from the Earth coordinate system to the body coordinate system, an inverse matrix is utilized. The definitions of R ( η ) and T ( η ) are as follows:
R ( η ) = cos ψ cos θ sin ψ cos φ + cos ψ sin θ sin φ sin ψ sin φ + cos ψ cos φ sin θ sin ψ cos θ cos ψ cos φ + sin φ sin θ sin ψ cos ψ sin φ + sin θ sin ψ cos φ sin θ cos θ sin φ cos θ cos φ
T ( η ) = 1 sin φ tan θ cos φ tan θ 0 cos φ sin φ 0 sin φ / cos θ cos φ / cos θ
When θ = ± 90 , T ( η ) does not exist. Therefore, the angles of the AUV system have certain limitations. The roll angle ϕ lies within the range of π < ϕ π , while the pitch angle θ is restricted to π / 2 < θ < π / 2 .

2.3. Dynamic System Model

The AUV is a 6DOF nonlinear dynamic model with disturbance. The dynamics equation of the AUV system studies the relationship between external forces and motion, which can be expressed using the following formula,
M v ˙ + C ( v ) v + D ( v ) v + g ( η ) = τ + ω
where M = M R B + M A , M R B is a rigid body inertia matrix and M A is an added mass inertia matrix. Among them, the standard M R B is
M R B = m 0 0 0 m z G m y G 0 m 0 m z G 0 m x G 0 0 m m y G m x G 0 0 m z G m y G I x I x y I x z m z G 0 m x G I y x l y I y z m y G m x G 0 I z x I z y I z
If the center of mass and center of buoyancy of the AUV are concentric, the above formula can be greatly simplified.
M R B = m 0 0 0 0 0 0 m 0 0 0 0 0 0 m 0 0 0 0 0 0 I x 0 0 0 0 0 0 l y 0 0 0 0 0 0 I z
The same type of C R B is the coriolis force and added mass term centripetal force,
C ( v ) = C R B ( v ) + C A ( v )
where
C R B ( v ) = 0 0 0 0 m v z m v y 0 0 0 m v z 0 m v x 0 0 0 m v y m v x 0 0 m v z m v y 0 I z ω z I y ω y m v z 0 m v x I z ω z 0 I x ω x m v y m v x 0 I y ω y I x ω x 0
and
C A ( v ) = 0 0 0 0 Z v ˙ z v z Y v ˙ y v y 0 0 0 Z v ˙ z v z 0 X v ˙ x v x 0 0 0 Y v ˙ y v y X v ˙ x v x 0 0 Z v ˙ z v z Y v ˙ y v y 0 N ω ˙ z ω z M ω ˙ y ω y Z v ˙ z v z 0 X v ˙ x v x N ω ˙ z ω z 0 K ω ˙ x ω x Y v ˙ y v y X v ˙ x v x 0 M ω ˙ y ω y K ω ˙ x ω x 0
According to the literature [26], we divide D ( | v | ) for the surface resistance of the linear damping D and wave nonlinear quadratic damping D n ( | v | ) into two parts. The literature [24] states that the assumption of the AUV system has good symmetry, therefore,
D ( | v | ) = diag X u , Y v , Z w , K p , M q , N r diag X u | u | | u | , Y v | v | | v | , Z w | w | | w | , K p | p | | p | , M q | q | | q | , N r | r | | r |
The AUV system is subject to vertical downward gravity W acting on the center of gravity and vertical upward buoyancy B acting on the center of buoyancy on the vertical plane. The surface vehicle equilibrium condition is W = B , and it acts on the same plumb line. AUV systems are usually designed to be critical with near-zero buoyancy, i.e., gravity W is slightly less than buoyancy B. Restoring force determines the initial stability of the system; that is, when the AUV system is out of equilibrium due to external forces, the combined action of gravity and buoyancy can restore the system to equilibrium. The center of buoyancy is higher than the center of gravity, which can generate the torque of restoring equilibrium:
g ( η ) = ( W B ) sin ( θ ) ( W B ) cos ( θ ) sin ( ϕ ) ( W B ) cos ( θ ) cos ( ϕ ) y g W y b B cos ( θ ) cos ( ϕ ) + z g W z b B cos ( θ ) sin ( ϕ ) z g W z b B sin ( θ ) + x g W x b B cos ( θ ) cos ( ϕ ) x g W x b B cos ( θ ) sin ( ϕ ) y g W y b B sin ( θ )
All the symbols used in the above equations are defined as follows: m is the mass of the AUV and X u | u | , Y v | v | , Z w | w | , K p | p | , M q | q | , and N r | r | are hydrodynamic coefficients.

2.4. Obstacle Model

Static underwater obstacles mainly include rocks, shipwrecks, and artificial obstacle lights. These obstacles can be simplified into spheres, cylinders, cuboids, and semi-spheres or their combinations. Moving obstacles such as large fish and underwater moving hulls can be regarded as spheres, and various typical obstacles can be regarded as a variety of standard convex objects. The shape of q can use a unified mathematical expression [27]:
Γ ( P ) = ( x x 0 a ) 2 p + ( y y 0 b ) 2 q + ( z z 0 c ) 2 r
In the given context, ( x 0 , y 0 , z 0 ) represents the center of the obstacle, and ( x , y , z ) denotes the current position of the AUV. The coefficients a, b, and c, respectively, indicate the sizes of the obstacle’s axis lengths, while the coefficients p, q, and r determine the shape of the obstacle. The specific shapes and coefficient values for various convex obstacles are as follows: Sphere: p = q = r = 1 , a = b = c ; Cylinder: p = q = 1 , r > 1 , a = b ; Cone: p = q = 1 , 0 < r < 1 , a = b ; Cuboid: p > 1 , q > 1 , r > 1 . Figure 3 illustrates typical convex obstacle shapes created by different coefficient combinations. Here, Γ ( P ) < 1 , Γ ( P ) > 1 , and Γ ( P ) = 1 represent the interior region, exterior region, and surface of the obstacle, respectively. The simulation plots for various obstacles are shown below. In real scenarios, the obstacle environment can be created by combining different obstacles as depicted in Figure 3.

3. Hybrid Layer Controller Design

3.1. Proposed Hybrid Structure of Controller

The proposed hybrid layer controller, as in Figure 4, comprises an IIFDS path planner and an NMPC tracking controller. The IIFDS is responsible for path planning by considering the agent’s current position, obstacles, and destination. It can iteratively update the overall path based on the initial agent position and surrounding environment information, or dynamically update the next reference position based on its own position and environment information, making it suitable for real-time path planning in dynamic environments. During the path planning process, drive and legality constraints are considered to ensure a feasible path. The NMPC controller effectively tracks the trajectory and rejects dynamic disturbances. Combining the two controllers enables real-time path planning and tracking from the start point to the destination, forming a double loop of navigation and control.

3.2. Upper Layer of IIFDS Navigation Controller Design

The algorithm is based on a variational approach, where the perturbation effect of obstacles on the flow field is represented using a modified quantization matrix M ¯ , resulting in a perturbed flow field [13]. The introduction of tangential velocity in [14] expands the physical characteristics of the fluid, making the perturbed streamlines more suitable for AUV operation. Prior to planning the path, all obstacles are defined according to the formula in Equation (13). The position of the destination point is set as P d = ( x d , y d , z d ) and the number of obstacles is denoted as K. If there are no obstacles in the current path, the original streamlines go directly from the initial position to the target point with a velocity magnitude of V just as Figure 5 shown. Hence, the initial flow field velocity u ( P ) can be represented by Equation (14), where u represents the flow velocity. Subsequently, the perturbation effect of obstacles on the flow field is quantified using the modification matrix M. Finally, the initial flow field is corrected to obtain the perturbed flow field. This perturbed flow field remains stable, meaning that the flow streamlines can avoid obstacles and eventually reach the target point.
The design process of the proposed method can be summarized as follows:
Step 1. 
Calculate the initial fluid field u ( P ) by considering the current position and the destination.
u ( P ) = [ V ( x x d ) d ( P , P d ) , V ( y y d ) d ( P , P d ) , V ( z z d ) d ( P , P d ) ] T
In the algorithm, u ( P ) represents the initial flow field at each computed sampling point during the operation of the AUV. This initial flow field evolves continuously as the position changes. Here, V denotes the confluence velocity and d ( P , P d ) represents the distance between the AUV position P and the target position P d .
d ( P , P d ) = ( x x d ) 2 + ( y y d ) 2 + ( z z d ) 2
Step 2. 
Calculate the disturbance modification matrix M ¯ based on the presence of static or moving obstacles.
If there are K obstacles present in the environment, then the perturbed flow field velocity is obtained by modifying the initial flow field velocity u ( P ) using the modification matrix M ¯ for each obstacle.
M ¯ = k = 1 K ω k M ¯ k
where w k represents the weight factor of the k t h obstacle.
ω k = 1 , K = 1 i = 1 , i k K Γ i 1 ( Γ i 1 ) + ( Γ k 1 ) , K 1
where Γ i and Γ k represent the expressions for the i t h and k t h obstacles, respectively, calculated according to Equation (13). Due to the condition ω s u m = k = 1 K ω k 1 , it is necessary to normalize the weight of each obstacle at each position. The normalized weight of the k t h obstacle is given by
ω k , n o r = ω k ω s u m
With this normalization, Equation (16) can be written as follows,
M ¯ = k = 1 K ω k , n o r M ¯ k
Building upon the original IFDS [13], the introduction of the tangential matrix incorporates the perturbation matrix. Therefore, M ¯ k represents the modification matrix for the k t h obstacle.
M ¯ k = I n k n k T Γ k 1 ρ k n k T n k + t k n k T Γ k 1 σ k | t k | | n k |
where ρ k is the repulsion coefficient, σ k is the saturation coefficient, and θ k is the tangential coefficient. These three factors collectively determine the avoidance time and sensitivity in obstacle avoidance.
ρ k = ρ k 0 . e ( 1 1 d ( P , P d ) d ( P , O k ) )
σ k = σ k 0 . e ( 1 1 d ( P , P d ) d ( P , O k ) )
where ρ k 0 > 0 is the repulsion factor of the k t h obstacle, σ k 0 > 0 is the tangential factor of the k t h obstacle, d ( P , P d ) is the distance between the AUV object and the target point, d ( P , O k ) is the distance between the AUV and the surface of the k t h obstacle, I represents the identity matrix of order three, and n k ( P ) is the outward normal vector to the surface of the k t h obstacle perpendicular to it.
n k = ( Γ k x , Γ k y , Γ k z ) T
As for the other variables, n k n k T Γ k 1 ρ k n k T n k is the repulsive matrix, t k n k T Γ k 1 σ k | t k | | n k | is a tangential matrix, and t k is the horizontal tangent vector, which can be obtained using the following expression. The tangent coordinate system o x y z is defined by setting t k , 1 , t k , 2 , and n k as the x , y , and z axes, respectively. The calculation process of t k is as follows:
Define two mutually orthogonal vectors, t k , 1 and t k , 2 , which are also orthogonal to n k ,
x = t k , 1 = [ Γ k y , Γ k x , 0 ] T y = t k , 2 = [ Γ k x Γ k z , Γ k y Γ k z , ( Γ k x ) 2 ( Γ k y ) 2 ] T
By using n k , t k , 1 , and t k , 2 as the basis vectors for a new coordinate system, any unit vector in the plane perpendicular to n k can be expressed in the form
t k = [ c o s θ k , s i n θ k , 0 ] T
where θ k [ π , π ] is the tangential direction factor. This angle represents the angle between any tangent vector and the x axis. It determines the angle of avoidance direction. The z axis is obtained through rotation. Therefore, in the inertial coordinate system, t k is transformed to the x o y standard coordinate system by using the tangent coordinate axis transformation matrix,
t k = Ω T I t k
where Ω T I is the transformation matrix from the tangent coordinate system to the inertial coordinate system,
Ω T I = r y r 2 r x r z r 2 r 3 r x r 3 r x r 2 r y r z r 2 r 3 r y r 3 0 r 2 r 3 r z r 3
and r x = Γ k x , r y = Γ k y , r z = Γ k z , r 2 = r x 2 + r y 2 , r 3 = r x 2 + r y 2 + r z 2 .
Step 3. 
Compute the final perturbed fluid field using the results obtained from the previous two steps.
After modifying the initial flow field velocity u ( P ) , the perturbed flow field velocity becomes
u ¯ = M ¯ u ( P )
During the actual operation of the AUV, it encounters not only static obstacles but also dynamic obstacles. In such cases, the velocity of dynamic obstacles needs to be considered in the flow field [15]. To incorporate the dynamic obstacle velocity, the process involves calculating the relative positions based on the static flow field, adding perturbation flow field effects, and finally incorporating the dynamic obstacle velocity.
The total velocity v ( P ) of a dynamic obstacle is a combination of the obstacle’s velocity and its weight factor. If there is only one obstacle, the weight factor ω can be calculated according to Equation (17) as mentioned earlier. Assuming the velocity of the k t h obstacle is v k , o b s , its reference motion velocity is given by
v k , o b s ¯ = e ( ( Γ k ( P ) 1 ) λ k ) v k , o b s
Step 4. 
Calculate the velocity of the dynamic obstacle under the action of the flow field.
The total vector velocity of the obstacle can be calculated using the following formula,
v ( P ) = k = 1 K ω k , n o r ( P ) v k , o b s ¯
Here, v k , o b s represents the actual velocity of the k t h obstacle at position P at a specific time point. λ k is the corresponding weight, where a higher value indicates a shorter time frame for the AUV to avoid the obstacle.
Step 5. 
Finally, determine the next position at the subsequent time step by considering the sample time and the current position.
Velocity and position of the final perturbed flow field are
u ¯ ( P ) = M ¯ ( P ) ( u ( P ) v ( P ) ) + v ( P ) , for the dynamic obstacle M ¯ ( p ) u ( P ) , for the static obstacle
P n e x t = P + u ¯ ( P ) Δ t
Among them, Δ t is the sampling control period. A smaller value of Δ t leads to more accurate results, but it also increases computational complexity. The parameters ρ k , σ k , and θ k shape the streamlines. Adjusting σ k and θ k avoids stagnation points and traps.
In IIFDS, the tangential matrix enables fluid flow in multiple directions around obstacles. θ k determines the path plane; when it is close to 0 or π , the path is horizontal (Path 1, Path 5), favoring side avoidance. When it is close to π / 2 , the path is vertical (Path 3), favoring top avoidance, as in Figure 6.
For the parameters σ and ρ , which represent the tangential reaction coefficient and repulsion coefficient, respectively, the larger their values, the earlier the planned path avoids obstacles, and the AUV stays farther away from obstacles, making the planned path safer, as in Figure 7 and Figure 8.
In the case of a moving obstacle environment, as shown in Figure 9, the parameter λ is a positive value. A larger value indicates that the AUV avoids obstacles earlier, reacts faster, and achieves better avoidance effects. However, when the AUV is farther away from the obstacles, the relative reference velocity increases. This increases the possibility of collision between the AUV and the obstacles. In other words, the higher the difficulty level of avoiding obstacles for the AUV, the greater the associated risk. This is because the moving obstacles appear relatively stationary in the frame of reference of the navigation vector field.
In general, randomly selected parameters affect the length of the path and the distance from obstacles, potentially rendering the path planning infeasible. Therefore, parameter optimization is crucial for the performance of the system. By selecting appropriate parameters, the IIFDS method can always strike a balance between safety and smoothness, effectively avoiding obstacles.

3.3. Bottom Layer of NMPC-Based Trajectory Tracking Controller Design

The reference path is planned using the outer-loop path planning layer, and the reference path can be described in the following form,
P r ( t ) = ( x d ( t ) , y d ( t ) , z d ( t ) )
The path tracking error is
P e ( t ) = P ( t ) P r ( t )
and the control object is to guarantee the deviation of the position to converge to zero, i.e., l i m P e ( t ) 0 . The reference path dynamically changes based on the movement of the plant and the distance between obstacles. If there are any dynamic obstacles present, the corresponding fluid velocity is adjusted accordingly. The inner-loop NMPC controller then follows the receding path. This process can be described in the following steps:
Step 1. 
Express the model in the nonlinear state space equation.
The nonlinear state model can be described as follows:
x = [ η , ν ] T
and the first deviating equation consists of state, control input, and disturbance,
x ˙ = [ η ˙ , ν ˙ ] T = f ( x , u , ω , t )
The Nonlinear MPC model’s function is
x ˙ ( t ) = f ( x ( t ) , u ( t ) , ω ( t ) ) y ( t ) = h ( x ( t ) )
Step 2. 
Prediction process.
Regarding the state space of the nonlinear model, the next state can be determined using the Runge–Kutta (RK) method. In the prediction process, both the fourth-order and sixth-order RK methods can be employed. However, it is crucial to strike a balance between computational cost and accuracy. Considering this trade-off, utilizing the RK4 method is deemed sufficient [28].
x t + 1 = f d ( x t , u t , ω d , t ) = x t + Δ t · f ( x t , u t , ω d t , t ) = x t + 1 6 ( k 1 + 2 k 2 + 2 k 3 + k 4 )
k 1 = Δ t · f ( x t , u t , w d t ) k 2 = Δ t · f ( x t + k 1 2 , u t , w d t ) k 3 = Δ t · f ( x t + k 2 2 , u t , w d t ) k 4 = Δ t · f ( x t + k 3 , u t , w d t )
The characteristics of nonlinear AUV dynamics are captured during each time step of model prediction. Furthermore, the prediction is based on the actual state and control variables x t , u t , rather than operating points x 0 , u 0 . This grants Nonlinear Model Predictive Control (NMPC) a natural advantage over other control strategies that rely on linear approximations. Additionally, the controller prediction model incorporates the propeller characteristics and disturbances from the ROV dynamics Ordinary Differential Equations (ODEs). Therefore, the discrete model f d possesses the capability to predict nonlinear ROV dynamics in the presence of 6DOFdisturbances. This implies that NMPC can better adapt to the actual dynamic characteristics and disturbances of the ROV system, rather than being limited to a specific operating point and linear approximation. Such features make NMPC particularly effective in complex, real-time control environments.
Step 3. 
Control object and the cost function.
According to the NMPC frame, the path tracking problem can be seen as a constraint optimization problem, as it is for the cost function, and N is the predictive time domain [29],
J = i = 1 N ω 1 x p ( k + i | k ) x p r e f + ω 2 x v ( k + i | k ) x v r e f + ω 3 u ( k + i | k ) u r e f
s . t x 0 = x i n i t , 0 x t x m a x
Just as in Equation (40), ω 1 , ω 2 are the corresponding weight matrices to position deviation x p and the velocity deviation x v , ω 3 is the weight matrix on control Δ u , and ω 1 R 6 * 1 , ω 2 R 6 * 1 , and ω 3 R 8 * 1 . These three control objectives the nonlinear MPC would like to achieve at the same time. Firstly, the objective of the cost function is to minimize the tracking error, ensuring that the AUV approaches and stably maintains as close as possible to the reference position. The cost function adopts a formulation represented by ω 1 x p ( k + i | k ) x p r e f , which penalizes the disparity between the current state and the positional reference. Secondly, during underwater operations, angular velocity and linear velocity need to be maintained at zero after reaching the target point. Consequently, x vref is likewise set to 0 6 * 1 . Last but equally significant, the optimal controller is subject to three constraints. The first two constraints, respectively, ensure stable path-keeping and remaining stationary. The design of the optimal controller aims at minimizing the overall control effort. The intermediate cost J constitutes the sum of all control variables, governed by the optimal control strategy u * to minimize the control effort of the AUV. The reference control variables u ref are set to 0 8 * 1 .
During the path tracking process of an AUV, both the operational state and control variables of the AUV are subject to certain constraints. These constraints consist of both hard and soft limits. It is imperative to adhere to these constraints, with particular emphasis on the hard constraints, as they must be strictly followed for safety reasons. The system state x t and the control variables u t are constrained as follows:
x m i n x t x m a x u m i n u t u m a x
where x m i n , u m i n are the lower bound of the state vector and the control input, and x m a x , u m a x are the upper bound of the state vector and the control value. In the control process, the bound domain can be rewritten as
u m i n u ( k ) u m a x x m i n f ( x t , u t , w d ) x m a x
The aforementioned NMPC equations undergo optimization at each time step, with only the first optimized control signal u * being applied to the AUV. The system’s new control trajectory is optimized in a receding horizon manner. In other words, after the AUV sends the first control signal, the prediction horizon transitions from [ 0 , T ] to [ t , t + T ] .
In summary, the objective of this controller is to enable the AUV to track the reference position, ultimately stabilizing at a stationary state while achieving optimal control.

3.4. Algorithm and Pseudocode

The algorithm for path planning and trajectory tracking is outlined in Algorithm 1, while the NMPC algorithm is encapsulated in Algorithm 2.
Algorithm 1: Hybrid Layer of Navigation and Tracking Controller of the AUV.
1:
Initialize the initial state x 0 , the destination position p d , the velocity of AUV v, the predictive horizon N, the weight matrix ω 1 , ω 2 , ω 3 , control value bound u m a x , u m i n , state bound x m i n , x m a x ;
2:
Compute the distance from current position P to destination position P d , using Equation (15).
3:
while AUV has not reached the destination do
4:
   Calculate the initial fluid field u ( P ) , using Equation (14),
5:
   Obtain obstacle information from the environment, including the position O ( x , y , z ) and velocity v ( x , y , z ) , through the perception layer. Based on the current position, as well as the positions and velocities of obstacles (if they are dynamic), calculate the disturbance flow field matrix M ¯ , using Equations (16)–(27).
6:
   Calculate the overall vector velocity of dynamic obstacles in the flow field v k , o b s ¯ , if applicable, using Equations (29) and (30).
7:
   Calculate the next potential position for the next path P n e x t , using Equations (31) and (32).
8:
   Compute the optimal control quantity based on the reference path and Equations (33)–(43).
9:
   Calculate the control quantity using Equation (40) and Algorithm 2 based on the current position P and the next position P n e x t , which is the path to be tracked.
10:
  Measure all the states of the scenario, compute the distance from current position P to destination position P d , using Equation (15).
11:
end while
Algorithm 2: The Process of Computing the Control Value u in NMPC.
1:
Initialize all initial state variables x 0 , initialize all control variables u, set up the weight matrices ω 1 , ω 2 , ω 3 , and define the range of control constraints u m i n , u m a x , set the predictive horizon N, obtain the reference state x r e f from the planned path.
2:
while Not meeting the specified prediction horizon cycles N, do
3:
   Calculate the next state variable based on Equation (38),
4:
   Restrict the state variables within the constraints x m i n , x m a x defined by Equation.
5:
   Compute the cost based on the reference path and weight matrix, according to Equation (40).
6:
end while
7:
Sum up the cost values obtained in the aforementioned N instances to calculate the total cost, yielding the value of J based on Equation (40).
8:
Compute the control input u based on the cost J and constraints u m a x , u m i n , in this process, the optimal solver is SQP, and the computed control variables need to adhere to the constraints specified by Equation (43).
9:
Apply the first dimension control input u [ 1 : ] to control the system.

4. Computer Simulation Experiment

To validate the proposed method for path planning and AUV trajectory tracking, we utilize the AUV model described in Section 2 and employ the hybrid layer controller outlined in Section 3. The simulation experiments are conducted within the Matlab 2018 Rb environment, with all AUV parameters defined in Table 1. The experimental system is equipped with an 11th Gen Intel(R) Core(TM) i9-11900H @ 2.50 GHz processor, 32.0 GB RAM, and Windows 10 operating system.
The test environment encompasses both static obstacle and dynamic obstacle scenarios. The crucial metrics for evaluation include path planning time and tracking control deviation, path planning length, smoothness, and the range of control values during tracking that should also be considered.
In Table 1, m is the mass of the AUV; L, W, and H, respectively, represent the length, width, and height of the AUV; I x , I y , and I z are the moments of inertia about the x b ,   y b , and z b axes; X u ˙ ,   Y v ˙ , and Z w ˙ represent the hydrodynamic forces for linear motion; and K p ˙ ,   M q ˙ , and N r ˙ represent the hydrodynamic forces for rotational motion. L D X u ,   L D Y v , and L D Z w are the damping coefficients in the translational directions, while L D K p ,   L D M q , and L D N r are the damping coefficients in the rotational directions. Q D X u ,   Q D Y v , and Q D Z w are the acceleration damping coefficients in the translational directions, and Q D K p ,   Q D M q , and Q D N r are the acceleration damping coefficients in the rotational directions.

4.1. Static Obstacle Avoidance and Path Planning

For the evaluation, we set the initial point as a fixed value (0, 0, 0) and consider four destination points: ( 10 , 10 , 10 ) , ( 10 , 10 , 9 ) , ( 10 , 9 , 10 ) , and ( 9 , 10 , 10 ) . In our test scenario, we introduce random spheres as obstacles, each with a unique position and size. Specifically, the obstacle positions are ( 2 , 5 , 3 ) , ( 2 , 2 , 2 ) , ( 8 , 8 , 8 ) , ( 6 , 6 , 6 ) , ( 1 , 7 , 4 ) , and ( 3 , 7 , 7 ) , accompanied by corresponding radii of 0.5 , 1 , 1 , 0.6 , 0.6 , and 0.5 , respectively.
The IIFDS parameters ρ = 1.5 , σ = 0.5 , and θ = 0.5 were selected. It has been noted in the literature [7] that the A* method is frequently employed for path planning. To evaluate their performance in the aforementioned environment, both the A* and IIFDS algorithms were tested.
From Table 2, it is evident that for the same starting and target points, the A* algorithm exhibits longer path planning times and generates longer paths. This observation highlights the advantages of the IIFDS algorithm over the A* algorithm in terms of faster response times and shorter planned paths. Particularly, when there are direct obstacles along the path, the execution time for the A* algorithm in path planning can increase significantly. For instance, when considering target points such as ( 10 , 10 , 9 ) , both algorithms yield similar path lengths of approximately 17.854283 m and 19.102506 m, respectively. However, the time taken differs significantly, A* requiring 346.934560 s while IIFDS only needs 0.573924 s. This indicates a substantial difference of approximately 605×. When considering the four destination points, the length of the planned paths does not differ significantly. However, there is a significant difference in the time consumption.
From Figure 10 and Table 2, it is evident that for all anticipated planned paths, the A* algorithm exhibits larger turning angles and more pronounced changes in direction. These large turning angles can lead to severe control oscillations, thereby significantly impacting the stability of the control system. Furthermore, such abrupt fluctuations can also cause damage to the actuation mechanism. On the other hand, the IIFDS path planning algorithm generates smoother and more seamless paths, which are characterized by fewer abrupt changes in direction.
Based on the observations from Figure 10 and Table 2, the following conclusions can be drawn. The IIFDS path planning algorithm exhibits better real-time performance, as it generates shorter paths with higher smoothness. These characteristics make it more suitable for real-time control applications.

4.2. Dynamic Obstacle Avoidance and Path Planning

The IIFDS algorithm is designed to address dynamic obstacles by enabling the real-time monitoring of their positions and velocities. Based on its own position, the algorithm plans reference waypoints for the next control cycle. Different IIFDS parameters yield varying results in terms of path length and obstacle avoidance effectiveness. Therefore, in this scenario with the same start/end points and dynamic obstacles, different IIFDS parameters are set to assess their impact on path planning. This analysis aims to identify the most suitable parameters for practical obstacle avoidance environments. The start and end coordinates remain as ( 0 , 0 , 0 ) and ( 10 , 10 , 10 ) , respectively.
The dynamic obstacle environment consists of three spherical obstacles located initially at ( 5 , 5 , 7.5 ) , ( 3 , 2 , 6 ) , and ( 8 , 8.5 , 8.5 ) , with radii of ( 0.5 , 0.4 , 0.5 ) , respectively. These obstacles move at a linear velocity of 2 m/s along the x-axis with cosine direction variation and 1 m/s along the y-axis with sine direction variation, while maintaining a fixed position along the z-axis. The IIFDS path planning controller is configured with five different parameter sets, as in Table 3. Each of the aforementioned parameter sets produces a distinct planned path (path1, path2, path3, path4, path5).
Based on Figure 11 and Table 4, it is evident that among the five parameter sets, path3 stands out with the shortest path length of 17.334920 m. With the exception of path4, which experiences a substantial increase in length, the path lengths of the remaining four sets are approximately equal. Thus, it can be inferred that the parameter σ significantly affects the path length, whereas the other parameters have a relatively minor influence on it. Regarding planning time, path3 has the shortest duration, 24.268841 s, suggesting that the parameter ρ has a significant effect on the planning time. Furthermore, as the parameter value decreases, the planning time decreases accordingly. The path labeled “path3” exhibits both the lowest average angle, 0.1617 deg, and the smallest maximum angle, 1.200126 deg, of direction. Referring to Figure 11, it is evident that a significant alteration occurs in the path when the reaction coefficient shifts from 0.5 to 1.5 . The change in this particular parameter is much more pronounced compared to the three other parameters, which also underwent a threefold change. Hence, it becomes apparent that a more gradual adjustment is necessary for this parameter.

4.3. Parameter Selection and Trajectory Tracking

From the paths planned in the above scenarios, a typical path is selected correspondingly to use the NMPC controller for tracking control, to test the influence of various variable parameters on the tracking effect. The NMPC is utilized for tracking planned paths in environments with both dynamic and static obstacles. The cost function is designed to incorporate various objectives, including position deviation, velocity deviation, and control input magnitude. Different weight parameters are set to compare the tracking performance.
Moreover, the prediction horizon directly influences the performance of the control system and computational burden. The open-loop sampling time is generally required to cover the transient response of the open-loop system. According to Figure 9 in the referenced literature [30], the open-loop response time of the BlueRov2 system is approximately 5 steps.
According to the MATLAB interpretation [31], providing a prediction horizon of 1–2 times the open-loop response time is deemed appropriate. Simulation results indicate that the computational time for 10 prediction horizons increases by nearly 2 times, but the performance remains essentially unchanged; it is suitable to set the horizon to N = 5 for all scenarios.
The initial state x 0 = 0 12 * 1 , the initial control input is u = 0 8 * 5 , in which 5 represents the prediction horizon, the upper and lower bounds for the control input are set to 40 and 40 respectively, and the state variable is constrained within the range of 0 to 10. According to reference [20] and the Equation (40), it is evident that a higher weight imposes a stronger constraint on the corresponding variable, resulting in a smaller range of variation. Therefore, by setting different numerical values, the impact of various weights on the simulation results is compared, and an appropriate weight is chosen as an experimental parameter.
Case 1. 
Different weight parameters for velocity and drive force.
Different weight coefficients ω 2 , ω 3 are selected to compare the variations in velocity and control inputs during the path tracking process. The evaluation metrics include maximum values and stability.
Here, the planning path IIFDS path3 is chosen as the reference path. The velocity weight matrix ω 2 is set to 90 6 * 1 , 30 6 * 1 , and 10 6 * 1 , while the control input weight matrix is set to 0 . 2 6 * 1 , 1 6 * 1 and 5 6 * 1 , respectively. These weight ranges are selected based on reference [20] and empirical knowledge.
Figure 12 illustrates the impact of different weights on velocity. It is evident that when ω 2 = 90 6 * 1 , the velocities u and r are minimized, but other velocity components, particularly v, exhibit significant fluctuations. In contrast, with a weight coefficient of ω 2 = 10 6 * 1 , the constraints on velocity are relatively lax, often resulting in abrupt transitions from one extreme to another. Therefore, among the three parameters mentioned, ω 2 = 30 6 * 1 demonstrates the most stable behavior.
Figure 13 depicts the influence of weights on driving force. For ω 3 = 0 . 2 6 * 1 , the driving forces experience minimal constraints, leading to both substantial fluctuations and frequent reaching of limit values. In the case of ω 3 = 5 6 * 1 , the driving forces are subject to maximum constraints, yet it is noteworthy that both the minimum and maximum driving forces occur under this parameter scenario among the three weights. It is observed that at ω 3 = 1 6 * 1 , all driving forces exhibit relatively smooth control processes.
Case 2. 
Different weight parameters for tracking the path planned using A*.
Among them, the static path is selected to track the path towards the target point ( 10 , 10 , 10 ) using A*. As shown in Table 5 and Figure 14, it can be observed that for different control parameters, the average path deviation is minimized when ω 1 is set to 2000, with a value of 0.01384 m. The maximum path tracking deviation is 0.068 m. As the ω 1 value decreases, the tracking performance deteriorates. Among the paths, path4 exhibits the worst tracking performance, with a path tracking deviation of 0.4282 m when ω 1 is set to 50. The maximum path tracking deviation for this case is 1.429 m. Furthermore, from the four tracked paths, it is evident that NMPC has the ability to anticipate paths with larger turning angles and generate smoother angular trajectories. From Figure 15, it can be observed that the position and orientation stabilize around the 13th s. Similarly, from Figure 16, the velocity and angular velocity also stabilize around the 13th s. Furthermore, as shown in Figure 17, the propulsive forces reach stability around the 13th s. All three variables exhibit mutual consistency. Additionally, the eight driving force variables remain stable between −40 and 20 throughout the execution process, consistently within the range of positive and negative 40.
Case 3. 
Different weight parameters for tracking the path planned by IIFDS.
The path for tracking the dynamic obstacle was selected from Table 3, specifically path3. Different ω 1 , ω 2 , ω 3 parameters were chosen from Table 5 to track the path. The tracking results can be seen in Figure 18 and Table 5. It is evident that the parameter ω 1 has a negligible impact on the tracking performance.
We selected the best-performing set of tracking results from all the aforementioned paths and observed the various state variables and control quantities during the tracking process. From Figure 15 and Figure 19, it can be observed that the position exhibits a nearly linear variation during the tracking process. The attitude quickly adjusts to the desired angle at the beginning of the tracking process and remains relatively stable throughout. Similarly, as seen in Figure 16 and Figure 20, the velocity and angular velocity rapidly adjust to their operating values and maintain constant values. Upon approaching the vicinity of the target point, they quickly return to zero. As seen in Figure 17 and Figure 21, the thrust force, constrained by a maximum value, initially undergoes several adjustments to reach the maximum value of 40 N and then swiftly returns to a constant value [32]. After reaching the target point, a reverse force may appear to adjust the attitude, which aligns with the control logic.
Considering the overall situation, a larger weight coefficient imposes greater constraints on the corresponding quantity. However, a balance needs to be struck between the magnitude and stability of the corresponding quantity. Based on the above description, the parameter ω 1 = 2000 exhibits excellent performance in path tracking. The weight coefficients ω 1 = 2000 6 * 1 , ω 2 = 30 6 * 1 , and ω 3 = 1 6 * 1 represent a relatively well-performing set of weights.

5. Experimental Results

To validate the effectiveness of the designed IIFDS-NMPC control framework in practical applications, we conducted the following test scenario. In a water tank measuring 10 m long, 3 m wide, and 1.2 m deep, six obstacles were randomly placed. Among them, four were static obstacles, while the other two were dynamic obstacles moving in a straight line at a velocity of v o b s = 1 m/s. All obstacles are considered to be spheres with a radius of 0.25 m. The positioning of the AUV and obstacles was carried out using the approach described in [33], which combines image- and radar-based localization systems. The positioning system and the AUV system were independent systems that communicated with each other through a wireless serial port connection.
The AUV’s main structure followed that of BlueRov2-heavy, with the main control unit replaced by a self-designed control board based on STM32F407 and NVIDIA NX2.
The central processor in NX2 is a 6-core NVIDIA CarmelArmV 64-bit CPU. An STM32 unit is responsible for gathering all external environmental information and transmitting it to the CPU. The CPU, based on this information, executes the hybrid layer control structure designed in this paper, namely the IIFDS-NMPC control flow. The Apollo platform incorporates three solvers (SQP, Interior Point OPTimizer (IPOT), Operator Splitting Quadratic Programming (OSQP)), with OSQP as the default choice. This preference is driven by its faster solution-finding capabilities, as it does not account for curvature constraints. However, a significant drawback is its inability to guarantee curvature continuity for smoothed points. As a result, the AUV system seeks a compromise between computation time and accuracy, choosing the SQP solver. Utilizing the built-in optimal solver SQP in Python + Pyomo to solve the optimal control with constraints, it generates control commands and sends the first set of control commands to the STM32 interface board. Subsequently, the interface board forwards the control commands downstream to the drive unit. In this process, the STM32 serves as the interface board, interacting with all peripherals and transmitting data to the processor. Meanwhile, the role of the NVIDIA NX2 is to perform path planning and calculate the optimal control quantities for NMPC. The hardware architecture diagram is shown in Figure 22, and the optimization algorithm for NMPC used to obtain control signals and the IIFDS were implemented as in Figure 23. The AUV was powered by batteries during the tests, and the control operated at a frequency of 100 Hz.
As the center of the AUV is located at a depth of 0.5 m, the obstacles are set at a fixed depth of 0.5 m, and the obstacle avoidance parameter θ for IIFDS was set to 0. The other parameters were set according to the optimal simulation parameters for path3 in Table 3, with λ = 5 , ρ = 0.5 , and σ = 0.5 . The weight parameters for NMPC were set according to path1 in Table 5, with ω 1 = 2000 6 * 1 , ω 2 = 30 6 * 1 , and ω 3 = 1 8 * 1 . The choice in prediction horizon ( N = 5 ) has a crucial impact on the actual control cycle in practical applications. Therefore, through comparative measurements, a prediction horizon of N = 5 was determined.
The starting point was ( 0 , 0 , 0 ) , and the target point relative to the starting point had coordinates of ( 8 , 2 , 0 ) . The initial speed of the AUV was 1 m/s. The actual path planning and tracking results are shown in Table 6 and Figure 24, respectively.
Figure 25 illustrates the position and orientation measurements, which reach the target position around the 9th s. According to the collected data, the RMS of the path tracking is calculated to be 0.01867 m. Additionally, based on feedback from the microcontroller unit (MCU), the actual average computation period is determined to be 0.0063 s, which significantly satisfies the control frequency requirement of 100 Hz. Moreover, as the number of obstacles increases, the theoretical computation period is expected to further increase, providing additional redundancy for obstacle calculations. From Figure 26 and Figure 27, it can be observed that the velocity and propulsive force also reach stable values around the 9th s. The orientation measurements, velocity measurements, and propulsive forces are synchronized in time. Furthermore, the propulsive forces remain within the range of positive and negative 40 N, while the torque stays within the range of positive and negative 160 N, complying with the actual constraints of the driver. The actual experimental video can be obtained through the following link: https://youtu.be/TyMuQIc91a8 accessed on 7 October 2023.

6. Conclusions

In this study, we proposed a dual-layer control strategy, IIFDS-NMPC, for path planning and tracking control in complex obstacle environments. The upper layer utilized IIFDS for path planning, while the lower layer employed NMPC for trajectory tracking. By simulating dynamic and static obstacle environments, we selected the planning parameters for IIFDS to generate paths that are as short as possible while minimizing the time taken, and the planned path was the smoothest. NMPC weights have a direct impact on the tracking deviation and control command during the tracking process. Through comparative experiments, the selected parameters are ω 1 = 2000 , ω 2 = 30 , and ω 3 = 1 , ensuring the path tracking followed the planned trajectory as closely as possible, while keeping the control and state variables within their respective limits. Through real platform testing experiments using the BlueRov2, the designed dual-layer control strategy fulfilled the maximum control requirement of 100 Hz, and the path tracking accuracy was within a range of 0.02 m. This control strategy meets the requirements for practical applications.
Although the path planning strategy, IIFDS, attempted several fixed measurements that proved suitable for the application, the parameters of this planner remained unchanged throughout the entire planning process and did not consider dynamic adjustments based on the AUV’s position and the changing external obstacle environment. These parameters are not optimal. Therefore, future research will focus on dynamically adjusting the optimal parameters.

Author Contributions

Conceptualization, J.D.; methodology, J.D. and S.A.; software, D.Z. and J.D.; validation, J.D.; formal analysis, J.D.; investigation, J.D.; resources, J.D.; data curation, J.D.; writing—original draft preparation, D.Z. and J.D.; writing—review and editing, S.A. and D.Z.; visualization, J.D.; supervision, S.A. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by JST SPRING, Grant Number JPMJSP2109.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Jalal, F.; Nasir, F. Underwater navigation, localization and path planning for autonomous vehicles: A review. In Proceedings of the 2021 International Bhurban Conference on Applied Sciences and Technologies (IBCAST), Islamabad, Pakistan, 12–16 January 2021; pp. 817–828. [Google Scholar]
  2. Shen, C.; Shi, Y.; Buckham, B. Integrated path planning and tracking control of an AUV: A unified receding horizon optimization approach. IEEE/ASME Trans. Mechatronics 2016, 22, 1163–1173. [Google Scholar] [CrossRef]
  3. Lim, H.S.; King, P.; Chin, C.K.; Chai, S.; Bose, N. Real-time implementation of an online path replanner for an AUV operating in a dynamic and unexplored environment. Appl. Ocean. Res. 2022, 118, 103006. [Google Scholar] [CrossRef]
  4. Vagale, A.; Oucheikh, R.; Bye, R.T.; Osen, O.L.; Fossen, T.I. Path planning and collision avoidance for autonomous surface vehicles I: A review. JMSE 2021, 26, 1292–1306. [Google Scholar] [CrossRef]
  5. Pollini, L.; Razzanelli, M.; Pinna, F. Development of the Guidance Navigation and Control System of the Folaga AUV for Autonomous Acoustic Surveys in the WiMUST Project. In Proceedings of the OCEANS 2018 MTS/IEEE Charleston, Charleston, SC, USA, 22–25 October 2018; pp. 1–6. [Google Scholar]
  6. Cheng, C.; Sha, Q.; He, B.; Li, G. Path planning and obstacle avoidance for AUV: A review. Ocean. Eng. 2021, 235, 109355. [Google Scholar] [CrossRef]
  7. Sui, F.; Tang, X.; Dong, Z.; Gan, X.; Luo, P.; Sun, J. ACO+ PSO+ A*: A bi-layer hybrid algorithm for multi-task path planning of an AUV. Comput. Ind. Eng. 2023, 175, 108905. [Google Scholar] [CrossRef]
  8. Ru, J.; Yu, S.; Wu, H.; Li, Y.; Wu, C.; Jia, Z.; Xu, H. A multi-AUV path planning system based on the omni-directional sensing ability. JMSE 2021, 9, 806. [Google Scholar] [CrossRef]
  9. Yu, F.; Shang, H.; Zhu, Q.; Zhang, H.; Chen, Y. An efficient RRT-based motion planning algorithm for autonomous underwater vehicles under cylindrical sampling constraints. Auton. Robot. 2023, 47, 281–297. [Google Scholar] [CrossRef]
  10. Wang, L.; Zhu, D.; Pang, W.; Zhang, Y. A survey of underwater search for multi-target using Multi-AUV: Task allocation, path planning, and formation control. Ocean. Eng. 2023, 278, 114393. [Google Scholar] [CrossRef]
  11. Li, J.; Li, C.; Chen, T.; Zhang, Y. Improved RRT algorithm for AUV target search in unknown 3D environment. JMSE 2022, 10, 826. [Google Scholar] [CrossRef]
  12. Zhou, L.; Wang, M.; Zhang, X.; Qin, P.; He, B. Adaptive SLAM Methodology Based on Simulated Annealing Particle Swarm Optimization for AUV Navigation. Electronics 2023, 12, 2372. [Google Scholar] [CrossRef]
  13. Wu, J.; Wang, H.; Liu, Y.; Zhang, M.; Wu, T. Learning-based fixed-wing UAV reactive maneuver control for obstacle avoidance. Aerosp. Sci. Technol. 2022, 126, 107623. [Google Scholar] [CrossRef]
  14. Wu, J.; Wang, H.; Zhang, M.; Yu, Y. On obstacle avoidance path planning in unknown 3D environments: A fluid-based framework. ISA Trans. 2021, 111, 249–264. [Google Scholar] [CrossRef] [PubMed]
  15. Yao, P.; Zhao, S. Three-dimensional path planning for AUV based on interfered fluid dynamical system under ocean current. IEEE Access 2018, 6, 42904–42916. [Google Scholar] [CrossRef]
  16. Li, Y.; Jiang, Y.Q.; Wang, L.F.; Cao, J.; Zhang, G.C. Intelligent PID guidance control for AUV path tracking. J. Cent. South Univ. 2015, 22, 3440–3449. [Google Scholar] [CrossRef]
  17. Bae, S.B.; Shin, D.H.; Kwon, S.T.; Joo, M.G. An LQR controller for autonomous underwater vehicle. JICRC 2014, 20, 132–137. [Google Scholar]
  18. Li, D.; Du, L. Auv trajectory tracking models and control strategies: A review. J. Mar. Sci. Eng. 2021, 9, 1020. [Google Scholar] [CrossRef]
  19. Shen, C.; Shi, Y.; Buckham, B. Trajectory tracking control of an autonomous underwater vehicle using Lyapunov-based model predictive control. IEEE Trans. Ind. Electron. 2017, 65, 5796–5805. [Google Scholar] [CrossRef]
  20. Cao, Y.; Li, B.; Li, Q.; Stokes, A.A.; Ingram, D.M.; Kiprakis, A. A nonlinear model predictive controller for remotely operated underwater vehicles with disturbance rejection. IEEE Access 2020, 8, 158622–158634. [Google Scholar] [CrossRef]
  21. Gill, P.E.; Murray, W.; Saunders, M.A. SNOPT: An SQP algorithm for large-scale constrained optimization. SIAM Rev. 2005, 47, 99–131. [Google Scholar] [CrossRef]
  22. Apollo Studio. Available online: https://apollo.baidu.com/ (accessed on 17 August 2023).
  23. SNAME[1950]. Nomenclature for treating the motion of a submerged body through a fluid. Soc. Nav. Archit. Mar. Eng. Tech. Reserach Bull. 1995, 1–15. [Google Scholar]
  24. Wu, C.J. 6-dof Modelling and Control of a Remotely Operated Vehicle. Ph.D. Thesis, Flinders University, College of Science and Engineering, Bedford Park, Australia, 2018. [Google Scholar]
  25. Fossen, T.I. Handbook of Marine Craft Hydrodynamics and Motion Control; John Wiley & Sons: New York, NY, USA, 2011. [Google Scholar]
  26. Yang, R.; Clement, B.; Mansour, A.; Li, M.; Wu, N. Modeling of a complex-shaped underwater vehicle for robust control scheme. JINT 2015, 80, 491–506. [Google Scholar] [CrossRef]
  27. Wu, J.; Wang, H.; Li, N.; Su, Z. Formation obstacle avoidance: A fluid-based solution. IEEE Syst. J. 2019, 14, 1479–1490. [Google Scholar] [CrossRef]
  28. Luque, J.C.C.; Donha, D.C.; de Barros, E.A. AUV parameter identification. IFAC Proc. 2009, 42, 72–77. [Google Scholar] [CrossRef]
  29. 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]
  30. Tanveer, A.; Ahmad, S.M. Cross-Coupled Dynamics and MPA-Optimized Robust MIMO Control for a Compact Unmanned Underwater Vehicle. JMSE 2023, 11, 1411. [Google Scholar] [CrossRef]
  31. How to Use MPC. Available online: https://www.youtube.com/watch?v=8U0xiOkDcmw&list=PLn8PRpmsu08ozoeoXgxPSBKLyd4YEHww8 (accessed on 18 August 2023).
  32. Blue Robotics. Available online: https://bluerobotics.com/store/rov/bluerov2/ (accessed on 5 August 2023).
  33. Han, G.; Long, X.; Zhu, C.; Guizani, M.; Bi, Y.; Zhang, W. An AUV location prediction-based data collection scheme for underwater wireless sensor networks. IEEE Trans. Veh. Technol. 2019, 68, 6037–6049. [Google Scholar] [CrossRef]
Figure 1. Schematic structure of the proposed hybrid layer controller.
Figure 1. Schematic structure of the proposed hybrid layer controller.
Jmse 11 02014 g001
Figure 2. Inertial and motion coordinate system of autonomous underwater vehicles (AUVs), the left is the inertial-fixed coordinate system and the right is the body-fixed coordinate system.
Figure 2. Inertial and motion coordinate system of autonomous underwater vehicles (AUVs), the left is the inertial-fixed coordinate system and the right is the body-fixed coordinate system.
Jmse 11 02014 g002
Figure 3. Convex obstacles in an ocean environment.
Figure 3. Convex obstacles in an ocean environment.
Jmse 11 02014 g003
Figure 4. Hybrid structure of controller.
Figure 4. Hybrid structure of controller.
Jmse 11 02014 g004
Figure 5. Initial flow field. Start position is ( 0 , 0 , 0 ) , destination position is ( 10 , 10 , 10 ) , and the direction is from AUV position to the destination.
Figure 5. Initial flow field. Start position is ( 0 , 0 , 0 ) , destination position is ( 10 , 10 , 10 ) , and the direction is from AUV position to the destination.
Jmse 11 02014 g005
Figure 6. Different direction angle θ for path planning.
Figure 6. Different direction angle θ for path planning.
Jmse 11 02014 g006
Figure 7. Different reaction coefficients ρ for path planning.
Figure 7. Different reaction coefficients ρ for path planning.
Jmse 11 02014 g007
Figure 8. Different repulsive reaction coefficients σ for path planning.
Figure 8. Different repulsive reaction coefficients σ for path planning.
Jmse 11 02014 g008
Figure 9. Dynamic reaction coefficient λ affects the distance.
Figure 9. Dynamic reaction coefficient λ affects the distance.
Jmse 11 02014 g009
Figure 10. Comparison of path planning of A* and IIFDS methods. All solid lines in the figure represent paths planned by the Astar method, while dashed lines represent paths planned by the IIFDS method. The colors indicate different endpoints: red represents the endpoint (10,10,10), green represents the endpoint (10,10,9), blue represents the endpoint (10,9,10), and cyan represents the endpoint (9,10,10).
Figure 10. Comparison of path planning of A* and IIFDS methods. All solid lines in the figure represent paths planned by the Astar method, while dashed lines represent paths planned by the IIFDS method. The colors indicate different endpoints: red represents the endpoint (10,10,10), green represents the endpoint (10,10,9), blue represents the endpoint (10,9,10), and cyan represents the endpoint (9,10,10).
Jmse 11 02014 g010
Figure 11. Different parameters of IIFDS for path planning, the paths of different colors correspond to different planning parameters as indicated in Table 4.
Figure 11. Different parameters of IIFDS for path planning, the paths of different colors correspond to different planning parameters as indicated in Table 4.
Jmse 11 02014 g011
Figure 12. The impact of variable weights on velocity.
Figure 12. The impact of variable weights on velocity.
Jmse 11 02014 g012
Figure 13. The influence of different weights on driving force.
Figure 13. The influence of different weights on driving force.
Jmse 11 02014 g013
Figure 14. Comparison of different weight parameters for A* planned path tracking, the paths of different colors correspond to different weight coefficients in Table 5.
Figure 14. Comparison of different weight parameters for A* planned path tracking, the paths of different colors correspond to different weight coefficients in Table 5.
Jmse 11 02014 g014
Figure 15. Position of the trajectory tracking for A* Path, the red, green, and blue on the left represent position N, E, D respectively, and on the right, the red, green, and blue represent attitude angle ϕ , θ , ψ respectively.
Figure 15. Position of the trajectory tracking for A* Path, the red, green, and blue on the left represent position N, E, D respectively, and on the right, the red, green, and blue represent attitude angle ϕ , θ , ψ respectively.
Jmse 11 02014 g015
Figure 16. Velocity of the trajectory tracking for A* Path, the red, green, and blue on the left represent linear velocities u, v, w respectively, and on the right, the red, green, and blue represent angular velocities p, q, r respectively.
Figure 16. Velocity of the trajectory tracking for A* Path, the red, green, and blue on the left represent linear velocities u, v, w respectively, and on the right, the red, green, and blue represent angular velocities p, q, r respectively.
Jmse 11 02014 g016
Figure 17. Thruster of the trajectory tracking for A* path.
Figure 17. Thruster of the trajectory tracking for A* path.
Jmse 11 02014 g017
Figure 18. Comparison of different weight parameters for IIFDS planned path tracking, the paths of different colors correspond to different weight coefficients in Table 5.
Figure 18. Comparison of different weight parameters for IIFDS planned path tracking, the paths of different colors correspond to different weight coefficients in Table 5.
Jmse 11 02014 g018
Figure 19. Position of the AUV in the tracking process, the red, green, and blue on the left represent linear velocities N, E, D respectively, and on the right, the red, green, and blue represent angular velocities ϕ , θ , ψ respectively.
Figure 19. Position of the AUV in the tracking process, the red, green, and blue on the left represent linear velocities N, E, D respectively, and on the right, the red, green, and blue represent angular velocities ϕ , θ , ψ respectively.
Jmse 11 02014 g019
Figure 20. Velocity of the AUV in the tracking process, the red, green, and blue on the left represent linear velocities u, v, w respectively, and on the right, the red, green, and blue represent angular velocities p, q, r respectively.
Figure 20. Velocity of the AUV in the tracking process, the red, green, and blue on the left represent linear velocities u, v, w respectively, and on the right, the red, green, and blue represent angular velocities p, q, r respectively.
Jmse 11 02014 g020
Figure 21. Thruster of the AUV in the tracking process.
Figure 21. Thruster of the AUV in the tracking process.
Jmse 11 02014 g021
Figure 22. Hardware control system block diagram for AUV.
Figure 22. Hardware control system block diagram for AUV.
Jmse 11 02014 g022
Figure 23. Path planning and tracking control flow chart.
Figure 23. Path planning and tracking control flow chart.
Jmse 11 02014 g023
Figure 24. Real path planning and tracking in water pool.
Figure 24. Real path planning and tracking in water pool.
Jmse 11 02014 g024
Figure 25. Position of the AUV during tracking process in water pool, the red, green, and blue on the left represent linear velocities N, E, D respectively, and on the right, the red, green, and blue represent angular velocities ϕ , θ , ψ respectively.
Figure 25. Position of the AUV during tracking process in water pool, the red, green, and blue on the left represent linear velocities N, E, D respectively, and on the right, the red, green, and blue represent angular velocities ϕ , θ , ψ respectively.
Jmse 11 02014 g025
Figure 26. Velocity of the AUV during tracking process in water pool, the red, green, and blue on the left represent linear velocities u, v, w respectively, and on the right, the red, green, and blue represent angular velocities p, q, r respectively.
Figure 26. Velocity of the AUV during tracking process in water pool, the red, green, and blue on the left represent linear velocities u, v, w respectively, and on the right, the red, green, and blue represent angular velocities p, q, r respectively.
Jmse 11 02014 g026
Figure 27. Thruster of the AUV during tracking process in water pool.
Figure 27. Thruster of the AUV during tracking process in water pool.
Jmse 11 02014 g027
Table 1. Parameters of the AUV.
Table 1. Parameters of the AUV.
ParameterValueParameterValueParameterValueParameterValueParameterValue
m 11.5 kg I y 0.16 kg.m 2 K p ˙ 0.12 kg.m 2 /rad L D Z w 5.18 Ns/m Q D Y v 21.66 Ns 2 /m 2
L 0.4571 m I z 0.16 kg.m 2 M q ˙ 0.12 kg.m 2 /rad L D K p 0.07 Ns/rad Q D Z w 36.99 Ns 2 /m 2
W 0.4361 m X u ˙ 5.5 kg N r ˙ 0.12 kg.m 2 /rad L D M q 0.07 Ns/rad Q D K p 1.55 Ns 2 /rad 2
H 0.2539 m Y v ˙ 12.7 kg L D X u 4.03 Ns/m L D N r 0.07 Ns/rad Q D M q 1.55 Ns 2 /rad 2
I x 0.16 kg.m 2 Z w ˙ 14.57 kg L D Y v 6.22 Ns/m Q D X u −18.18 Ns 2 /m 2 Q D N r 1.55 Ns 2 /rad 2
Table 2. Performance comparison of different algorithms in static obstacle scenarios, and all bolded data represents extreme values.
Table 2. Performance comparison of different algorithms in static obstacle scenarios, and all bolded data represents extreme values.
DestinationTime (s)Length (m)Mean Direction Angle (deg)Max Direction Angle (deg)
IIFDSA*IIFDSA*IIFDSA*IIFDSA*
(10,10,10)1.014391131.83741318.56502419.1275520.5432508.43751.86707449.867805
(10,10,9)0.573924346.93456017.85428319.1025060.56281015.3096701.78143149.867805
(10,9,10)0.67277636.55617117.74323818.1474790.4895249.0000001.84580749.867805
(9,10,10)0.56832745.46671718.19289818.2149420.70228912.6490412.78113767.500000
Table 3. Different IIFDS parameters for dynamic obstacles scenario of path planning.
Table 3. Different IIFDS parameters for dynamic obstacles scenario of path planning.
ParametersDynamic Coefficient λ Reaction Coefficient ρ Reaction Coefficient σ Tangential Reaction Coefficient θ
Path151.50.50.1
Path2151.50.50.1
Path350.50.50.1
Path451.51.50.1
Path551.50.50.5
Table 4. Performance comparison of different algorithms in dynamic obstacle scenarios, and all bolded data represents extreme values.
Table 4. Performance comparison of different algorithms in dynamic obstacle scenarios, and all bolded data represents extreme values.
ParametersLength (m)Time (s)Mean Direction Angle (deg)Max Direction Angle (deg)
( P a t h 1 ) λ = 5 , ρ = 1.5 , σ = 0.5 , θ = 0.1 17.48896531.5747310.7364209.629480
( P a t h 2 ) λ = 15 , ρ = 1.5 , σ = 0.5 , θ = 0.1 17.51206531.2365250.8677159.679838
( P a t h 3 ) λ = 5 , ρ = 0 . 5 , σ = 0.5 , θ = 0.1 17.33492024.2688410.1617001.200126
( P a t h 4 ) λ = 5 , ρ = 1.5 , σ = 1 . 5 , θ = 0.1 19.14441731.8047640.9659326.882223
( P a t h 5 ) λ = 5 , ρ = 1.5 , σ = 0.5 , θ = 0 . 5 17.48083530.9591170.7533299.309696
Table 5. Different NMPC parameters for trajectory tracking.
Table 5. Different NMPC parameters for trajectory tracking.
PathParametersMean Variance (m) A*/IIFDSMax Variance (m) A*/IIFDS
path1 ω 1 = 2000 6 * 1 0.01384/0.013860.068/0.058
ω 2 = 30 6 * 1
ω 3 = 1 8 * 1
path2 ω 1 = 1000 6 * 1 0.04752/0.015860.3867/0.072
ω 2 = 30 6 * 1
ω 3 = 1 8 * 1
path3 ω 1 = 400 6 * 1 0.18369/0.016280.9737/0.082
ω 2 = 30 6 * 1
ω 3 = 1 8 * 1
path4 ω 1 = 50 6 * 1 0.4282/0.017251.429/0.087
ω 2 = 30 6 * 1
ω 3 = 1 8 * 1
Table 6. Real navigation and control result.
Table 6. Real navigation and control result.
Path Tracking Deviation RMS (m)Average Computation Period (s)
0.018670.0063
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

Du, J.; Zhou, D.; Arai, S. Hybrid Layer of Improved Interfered Fluid Dynamic System and Nonlinear Model Predictive Control for Navigation and Control of Autonomous Underwater Vehicles. J. Mar. Sci. Eng. 2023, 11, 2014. https://doi.org/10.3390/jmse11102014

AMA Style

Du J, Zhou D, Arai S. Hybrid Layer of Improved Interfered Fluid Dynamic System and Nonlinear Model Predictive Control for Navigation and Control of Autonomous Underwater Vehicles. Journal of Marine Science and Engineering. 2023; 11(10):2014. https://doi.org/10.3390/jmse11102014

Chicago/Turabian Style

Du, Jiqing, Dan Zhou, and Sachiyo Arai. 2023. "Hybrid Layer of Improved Interfered Fluid Dynamic System and Nonlinear Model Predictive Control for Navigation and Control of Autonomous Underwater Vehicles" Journal of Marine Science and Engineering 11, no. 10: 2014. https://doi.org/10.3390/jmse11102014

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