1. Introduction
Currently, autonomous underwater vehicles are one of the most effective tools for performing a large number of underwater operations, including mapping, searching for underwater objects, environmental monitoring, etc. [
1,
2,
3,
4]. However, the disadvantages that significantly limit the use of AUVs are their high cost and the complexity of their preparation for the mission. One such factor that significantly affects the cost of AUVs is the need to install expensive acoustic on-board sensors (Doppler velocity log (DVL)) and deploy sonar navigation systems; with the help of these sensors and systems, the necessary navigation information about the position of the AUV is formed. A large number of researchers are currently looking for solutions to reduce the cost of underwater robotics. The main focus of these studies is to reduce the cost of navigation systems for underwater robots, which is especially important when using the group of AUVs [
5,
6,
7].
There are a large number of approaches to the creation of AUV navigation systems [
8]. The traditional approach is to use hydroacoustic navigation systems with a long baseline, which consists of several beacons that are installed in the working area in advance [
9]. This approach requires quite lengthy work on the installation and positioning of beacons [
10]. At the same time, in order to ensure the accuracy of determining the coordinates on board the AUV, it is often necessary to additionally have a sound velocity profiler and a high-precision synchronized clock. In addition, in such systems, there is an increase in the period of updating the navigation information if several AUVs are working at the same time. To solve the navigation problems of AUV groups, different rangefinder systems are used [
11,
12]. In these systems, beacons emit signals in a certain sequence, and the AUV receives them and determines the time of transmission of signals from beacons. This allows all the AUVs of the group to determine their position at the same time but requires work on the deployment of a network of beacons and the use of high-precision synchronized clocks on board the AUV, which leads to a significant increase in the cost of the AUV [
13].
Also, systems with a short baseline and an ultrashort baseline (USBL) are used for the navigation of the AUV, which are usually installed on the carrier ship and are used to determine the position of underwater vehicles [
14,
15,
16,
17,
18]. A certain disadvantage of such systems can be considered, which is the need to use a specialized support vessel during the entire AUV mission, which does not allow for the fully autonomous implementation of the mission. In addition, the USBL is usually integrated with a high-precision inertial navigation system (INS) and a DVL, which significantly increases the cost of the AUV.
To solve the problems of traditional sonar systems [
19,
20], it is proposed to use single-beacon navigation that provide rapid deployment in a given area of work and autonomous mission execution. In these systems, an unmanned surface vehicle moves the beacon, moving behind the AUV, and transmits the coordinates of this beacon, which are obtained using satellite navigation systems, via acoustic communication channels. However, such a solution also requires the use of synchronized clocks to accurately determine the distance to the beacon [
21]. In [
22], a method for designing the AUV navigation system was proposed, which involves the use of a hydroacoustic beacon with known coordinates and a USBL installed on board the AUV. Here, for the operation of this system, synchronization between the beacon and the on-board USBL must be ensured. Also, a single beacon can be fixed at the bottom, and data regarding the distance to the AUV are transmitted via acoustic channels and are integrated with data from the AUV’s INS [
23,
24]. Another option is to locate the signal of a stationary beacon on the AUV’s board and calculate its position based on a sequence of measured data [
25]. This method does not require clock synchronization between the AUV and the beacon; however, its implementation requires the use of specific acoustic equipment for beacon signal direction finding and complex information processing algorithms.
An alternative navigation approach for AUVs is to estimate their position based on a known bottom map and maps of various anomalies (gravitational, magnetic, etc.) [
26,
27,
28,
29,
30]. These methods usually give a sufficiently large error in determining the position of the AUV and require a priori information about the bottom relief, which is often unavailable.
Recently, visual data generated by light beacons [
31] or received from on-board video cameras that track underwater objects [
32] have been used as alternative sources of navigation information. These approaches are quite cheap, but they are applicable at short distances due to limited visibility in the underwater environment.
Since the data from hydroacoustic navigation systems are updated for a sufficiently long period, which is unacceptable for the operation of the high-precision AUV control system [
33,
34], the AUV additionally uses an inertial navigation system, which is based on the use of sensors that measure the parameters of the AUV’s movement, including linear and angular velocities and orientation angles. Data from this inertial navigation system are combined with data obtained from hydroacoustic navigation systems based on various algorithms [
35,
36]. At the same time, an important part of this inertial system is the DVL, which measures the linear velocities of the AUV. It should be noted that the DVL has a fairly high price and various dimensions, which significantly increases the cost of the AUV. In addition, rather complex and time-consuming additional calibration procedures must be used to increase the accuracy of its operation [
37].
An alternative way for speed measurement is an impeller log that measures the speed of the AUV relative to the environment. However, in the presence of currents, the data from this type of log are difficult to use to calculate the coordinates of the AUV, and the data itself are characterized by low accuracy.
Another way of forming information about the parameters of the AUV’s movement is the use of AUV dynamic models, which makes it possible to estimate the parameters of the AUV’s movement under the influence of known forces and torques formed by the AUV’s propulsion system [
38,
39,
40]. At the same time, this approach is usually used in cases where data from the DVL are unavailable, that is, for short periods of time. So, the necessary condition for the use of such an approach is the preliminary identification of the parameters of the AUV dynamic model. This identification can be carried out using various techniques [
41,
42]; however, in different missions, the parameters of the AUV may change, for example, due to the installation of additional equipment. In addition, the accuracy of the AUV dynamic model is affected by the presence of previously unknown currents. Special observers have been proposed to obtain an estimate of the current vector [
43,
44,
45,
46]. However, their operation requires information about the parameters of the dynamic model of the AUV, as well as information about the linear velocities of the AUV, which is obtained from the DVL.
Thus, the existing synthesis methods of AUV navigation systems that do not use information from the DVL are of limited use (systems based on visual information) or low accuracy and impose significant limitations on the conditions of use (systems based on measuring geophysical fields). At the same time, the methods modeling the operation of the DVL based on the dynamic model of the AUL significantly depend on an accurate knowledge of the AUV’s parameters and underwater currents. In addition, the use of external sonar navigation systems requires the precise synchronization of the AUV’s on-board clock and its systems and also has a long data update period and a fairly large error depending on the distance to the AUV. Therefore, there is a problem of developing a method for the synthesis of an accurate AUV navigation system based on a limited set of on-board sensors that do not require synchronization with external sonar navigation systems and generate navigation information with a period that provides the possibility of high-precision AUV control.
To solve these problems, this paper proposes an approach to the synthesis of a navigation system built on the basis of the HAS for underwater monitoring [
47], which allows for determining the distance and bearing angle of the AUV and transmitting the information via acoustic communication channels. This will allow for the use of the permanently installed or movable HAS as a navigation system, and this fact will reduce the preparation time of the AUV. At the same time, data from the DVL are not used to implement the proposed navigation system, and obtaining linear velocity estimates is based on its dynamic model, the parameters of which, including the vector of underwater currents, are refined during the movement of the AUV based on data received from the HAS.
The first simple step was made in [
48] to confirm the workability of the idea. The proposed method deals with a navigation system based on the use of information transmitted from a sonar station, where the AUV’s position and orientation are estimated using its dynamic model, which avoids the DVL and the pre-synchronization of the HAS’s and AUV’s clocks. However, the described approach becomes ineffective in the presence of undercurrents and inaccurate estimation of the parameters of the dynamic AUV model.
Thus, the features of the proposed approach are as follows:
A method of creating an AUV navigation system without the use of expensive acoustic on-board speed sensors (DVL), as well as the use of high-precision clocks synchronized with hydroacoustic navigation systems. This will significantly reduce the cost of AUVs and expand the scope of their application by using estimates of AUV motion parameters based on the dynamic model and correcting the estimates based on data received from the HAS via an acoustic communication channel.
A method for identifying individual parameters of the mathematical model of the AUV and estimating the vector of underwater currents that have a significant impact on the accuracy of the navigation system, which is based on noisy data from the hydroacoustic station with a small frequency and a significant time delay.
A method for compensating time delays that occur when measuring the position of the AUV using the HAS and transmitting data from the HAS to the AUV, which will increase the accuracy of the navigation system in conditions of rare measurements containing sufficiently large errors.
The article consists of the following sections:
Section 2 describes the typical composition of the AUV’s equipment that will be used to implement the navigation system, the order of interaction of the AUV with the HAS and the AUV model that will be used to build the navigation system. Also, in this section, the task of the study will be formulated.
Section 3 describes the general principle of operation of the proposed navigation system, as well as a description of its implementation, and
Section 4 describes the method of adapting the parameters of the AUV model.
Section 5 shows the simulation results and their analyses. In conclusion, general results and the directions of further research are discussed.
The abbreviations and main notations used in the article are described in
Table 1.
2. Task Definition
The paper considers an AUV, which has the following on-board equipment used to build a navigation system: an inertial measuring device based on MEMS sensors (a three-axis accelerometer, a three-axis angular velocity sensor (rate gyros) and a three-axis magnetometer). The system generates information about the angular velocities of the AUV in the body-fixed coordinate system (BSC) and orientation angles in the absolute (Earth fixed) coordinate system (ACS); a depth sensor; an acoustic modem that receives data from a hydroacoustic station containing information about the position of the AUV relative to the station (bearing and distance); a propulsion system that forms control forces along the x- (forward movement), z (upward movement)-axes and torques around the y- (pitch control) and z (yaw control)-axes in BCS; and a beacon, which generates an acoustic pulse in response to the received pulse from the HAS.
It is assumed that during the mission, the AUV is located in the range of the HAS, which is able to determine its position relative to itself with a certain degree of accuracy and discretization, forming the distance to the AUV and the bearing .
At the same time, the work assumes that the AUV navigation system works according to the following principle. During operation, the HAS emits an impulse that reaches the AUV, and the beacon is located on the AUV. The beacon, having received an impulse, emits a response, which is received by the HAS and determines the direction and range of the AUV. The HAS transmits these data via an acoustic communication channel, which the AUV’s navigation system uses to correct its estimates of its position in the ACS. In this case, the HAS independently performs all measurements, which does not require the presence of synchronized clocks. At the same time, the AUV receives data about its position relative to the HAS with a delay, and data transmitted via acoustic communication channels may come with distortions or may be lost during transmission.
The process of interaction of the AUV with the HAS, which can also be a hydroacoustic navigation system with an ultrashort baseline, is shown in
Figure 1.
Figure 1 shows a time diagram with the process of receiving navigation data from the HAS to the AUV. During the time interval
T1, the HAS emits a pulse that reaches the AUV. During time interval
T2, the beacon installed on board receives the pulse, processes information and emits a response pulse. During time interval
T3, the pulse from the beacon passes from the AUV to the HAS. During time interval
T4 the HAS processes the received information, generates data with the distance and bearing angle to the AUV and transmits this information via acoustic communication channels. Thus, the total delay in the receipt of information about the position of the AUV will be equal to
Thus, the time intervals T3 and T4 depend on the distance between the AUV and the HAS and the speed of sound in water. It should be noted that the delay in T1 is not considered, since the measurement will be carried out at the moment when the pulse from the HAS reaches the responder’s beacon. In this case, the measurement period must satisfy the following inequality: .
These assumptions about the AUV’s functions are valid for the implementation of relatively inexpensive resident systems that operate autonomously in known areas, or multi-environment robotic systems with an autonomous surface carrier of a sonar station. In addition, these conditions may occur during a malfunction of the DVL during the mission.
The paper assumes that the movement of the AUV is described by the following dynamic model [
49] that considers the presence of currents:
where
;
is an AUV inertia matrix;
is the matrix of inertia of the added masses and their moments of inertia;
are matrices of Coriolis and centrifugal forces and torques;
D is the matrix of hydrodynamic forces and torques;
is the vector of hydrostatic forces and torques;
is the vector of the position and orientation of the AUV in the ACS;
is the vector of roll, pitch and yaw angles;
is the matrix of transition from BCS to ACS;
is the vector of thrust forces and torques developed by the propulsion system in BCS;
is the vector of linear and angular velocities of the AUV in BCS;
is the vector of underwater currents in BCS; and
is the velocity vector of the AUV relative to the environment.
The matrices of Coriolis and centrifugal forces and torques, which are included in Equation (1), are described by the following expressions [
49]:
where
,
and operator
are
The matrix of hydrodynamic forces and torques is diagonal, and its elements have the following form [
49]:
where
d1i and
d2i are hydrodynamic coefficients.
Hydrostatic forces and torques acting on the AUV are described by the following expressions:
where
is the residual buoyancy of the AUV;
Wa is the gravity force;
Ba is the buoyancy force;
,
,
and
are coordinates of the centers of gravity and buoyancy of the AUV in the BCS, accordingly.
This paper considers that the parameters of the mathematical model in Equation (1) (added masses, moments of inertia and hydrodynamic coefficients) are known with a certain accuracy as a result of theoretical calculations based on the known geometric shape of the AUV or the identification procedure performed using experimental data [
41,
42,
50,
51]. So, at the beginning of the AUV’s movement, the velocity vector of the underwater currents is unknown.
Models (1)–(4) of the AUV movement can be used to obtain estimates of the linear velocities of the AUV’s movement in the BCS, which allows us, under certain conditions, to navigate and control the AUV without the DVL, which is an expensive and big device. It is obvious that such an approach cannot provide an accurate calculation of linear velocities due to the inevitable uncertainty in the parameters of the AUV model and the characteristics of the propulsion system and, consequently, will lead to the accumulation of errors in estimating the position of the AUV in the ACS. However, using Models (1)–(4) to estimate the velocities of the AUV makes it possible to ensure the physical correctness of this estimate (the AUV does not move relative to the environment unless a thrust force from the propulsion system is applied) and to increase the accuracy of linear velocity estimation; it is possible to tune the parameters of Models (1)–(4) based on an array of data on the movement of the AUV, which are formed with the help of information coming from the HAS.
Thus, the following task is set in the work. It is necessary to develop a method for the creation of an AUV navigation system based on the minimum required set of on-board inertial sensors and data received from the HAS about the position of the AUV while considering delays in their transmission and periodic losses of these data, as well as considering underwater currents.
3. Description of the Algorithm of the Navigation System Work
The proposed algorithm for the AUV’s navigation system is based on the use of the Kalman filter and considers the change in the period of receipt of position data of the AUV due to their possible loss during transmission via an acoustic communication channel by taking into account the variable delay of data receipt in the AUV, depending on the distance between the AUV and the HAS.
This paper assumes that the position data of the AUV comes from two sources of information:
- -
A depth sensor generates data at the z coordinate of the ACS with a period equal to the period of operation of the navigation system;
- -
An acoustic modem receives data about the distance and bearing of the AUV relative to the HAS, with a period significantly exceeding the period of operation of the navigation system. So, the specified period due to possible data loss may be variable and not predictable in advance. Also, the data are received with a delay depending on the distance from the AUV to the HAS.
The operation of the navigation system consists of three stages and is organized as follows (see
Figure 2). At the first stage, with the desired period, estimates of the position of the AUV in the ACS and linear velocities in the BCS are calculated. For this purpose, the AUV dynamic model is used, where the initial data are obtained from the inertial measuring device (angular velocity vector in the BCS and orientation angles in the ACS) and control signals
are generated by the AUV’s control system.
In the second stage, using the data obtained from the depth sensor and the HAS, the estimates of the velocities and position of the AUV formed on the basis of its dynamic model are corrected. At the same time, the specified correction, which depends on the available data, can be performed in two ways: if new data from the HAS are not available, then the correction is performed only using the depth sensor, and if new data from the HAS have arrived, then the correction is performed based on these data and the depth sensor while taking into account the delay in receiving data from the HAS. That is, in this case, it is possible to take into account the variable and previously unknown period of data receipt from the HAS and update the data on the position and speeds of the AUV with the desired period.
The third stage starts when enough information is received from the HAS to evaluate the velocity vector of the underwater current and parameters of the AUV dynamic model. This stage starts with a specified frequency, which corresponds to receiving a sufficient amount of data from the HAS, or if the difference between the AUV’s position predicted by models (1)–(4) and the AUV’s position measured by the HAS exceeds the measurement error of the HAS. During this stage, the parameters of the AUV model and the values of the underwater currents’ vector are tuned so that the trajectory of the AUV obtained from Models (1)–(4) optimally corresponds to the trajectory of the AUV, based on data from the HAS. The obtained model parameters are updated in the AUV model, and the navigation system then works with them.
The calculation of the AUV’s position based on the inertial measuring device and control signals is carried out using dynamic Models (1)–(4). In these models, only equations describing changes in the linear velocities of the AUV in the BCS and its coordinates in the BCS are used, as the values of angular velocities in the BCS and orientation angles in the ACS are known, as well as the thrust forces developed by the propulsion system. That is, from Model (1), the following model is formed for estimating the indicated velocities and coordinates, assuming that the angular accelerations of the AUV are small and can be neglected, and the matrix of added masses and moments of inertia has a diagonal form, which is a correct assumption for most AUVs:
where
is the AUV’s mass;
represents the added masses;
are designations of
and
of the corresponding angle;
is the velocity vector of the underwater current in the ACS; and
is the matrix of rotation from the BCS to the ACS.
Next, we will assume that the speed of the current is constant in the ACS or slowly changes, which corresponds to most real conditions. Therefore, the value
will be calculated using the formula:
where
is designation of
of the corresponding angle.
In Model (5), it is assumed that the dynamic parameters of the AUV are known with some accuracy, and the characteristics of the propulsion system are also known; that is, the dependence of the thrust force generated by each thruster on the magnitude of the control signal generated by the AUV’s control system is known.
Model (5) in discrete form can be represented as
where
is the sampling step of the system;
is the system state vector; and
.
Model (7) will be used in the Kalman filter to estimate the linear velocity vector in the BCS and the coordinate vector in the ACS at the prediction stage. It should be noted that Model (7) is linear and provides a simple implementation of the filter, since angular velocity and orientation angles do not require additional estimation. At the same time, at the beginning of the work, when the velocities of the underwater currents are not estimated, they are assumed to be zero. It should be noted that the sampling step of the system operation should correspond to the period of thruster control signal generation.
Thus, the prediction stage is performed using the following formulas [
52]:
where
is the prediction value of the state vector;
is the prediction value of the covariation matrix of the state vector error estimation; and
is the covariation matrix of system noise.
The correction stage in the filter is implemented in two versions. If no data are received from the HAS at the current step of the filter work, then only data from the depth sensor are used in the correction stage. In this case, the correction stage is carried out at each step of the filter calculation according to the following formulas:
where
is the vector of the filter coefficient in the case when correction is used only for data from the depth sensor;
is the value of the measurement noise covariance;
and
are the vector and matrix of measurement;
is the measurement of the depth sensor; and
is the unity diagonal matrix.
The second variant for correcting the estimates of the AUV’s speeds and coordinates is used in the case when at the current step of the filter work, the AUV receives the information from the HAS about the distance and bearing angle of the AUV relative to the HAS. In this case, the correction is performed in several consecutive steps.
At the first step, it is necessary to recalculate the data from the HAS to the AUV’s
x and
y coordinates in the ACS. At the same time, it is assumed that the position and orientation of the HAS in the ACS are known. The specified calculation is made according to the following formulas:
where
is the measured distance from the HAS to the AUV;
represents the HAS coordinates in the ACS;
is the bearing angle of the AUV relative to the HAS; and
is the HAS yaw angle.
It can be seen from Expression (10) that the angles of roll and trim of the HAS are considered equal to 0. At the same time, if these angles are different from 0, then this equation can be considered using internal HAS sensors that measure their orientation, and by using Formula (10), a complete rotation matrix at three orientation angles can be determined. This calculation can be performed on board the HAS and does not affect further calculations in the AUV’s navigation system.
The second step compensates for the time delay that occurred due to the finite propagation speed of acoustic signals in the water. The specified delay is calculated using the following formula (see
Figure 1):
where
is the sound speed in water;
is the number of bytes in the data packet sent from the HAS to the AUV;
is the speed of data transmission at the acoustic communication channels; and
is the total time delay due to the time required for processing acoustic signals in the acoustic beacon and HAS.
In Expression (11), the distance between the HAS and the AUV is doubled, since the acoustic signal passes the distance from the AUV to the HAS during the measurement process and then again in the process of transmitting data through the acoustic channel from the HAS to the AUV. At the same time, considering this delay will increase the accuracy of determining the coordinates and estimates of the linear velocities of the AUV. The sound speed in Formula (11) can be considered a constant, or if there are built-in instruments for measuring this speed in the HAS, its value can be transmitted to the AUV in a data package along with navigation information.
The specified delay will be considered as follows (see
Figure 3). During the work of the navigation system, the calculated vector
X(
k) is saved to a FIFO (first input, first output) buffer, in which new data are written to the beginning of the buffer, and the oldest ones are removed from the buffer, and all the others are shifted one position back. Since the calculation of the vector
X(
k) occurs with a constant step of h, each cell stores data that is separated from the current step for a time of –
nh, where
n is the buffer cell number.
After calculating the value
the number of cells corresponding to this delay is searched in the buffer, where
where
is the number of buffer cells that is stored as the estimation of vector
, which corresponds the moment when the measurement was carried out and
mod() is the operation of taking an integer part from a quotient.
Next, a measurement vector is formed to correct the estimation of the navigation system:
where
are corresponding components of the vector
, which stored in the buffer.
After the measurement vector
is formed, the current vector
is corrected:
where
is the matrix of the filter coefficient in the case when correction is performed on HAS data and
is the covariance matrix of measurement noise for the case when the correction uses the HAS data.
As a result, the proposed AUV navigation system provides a correction of estimates of linear velocities and coordinates of the AUV based on data received irregularly from the HAS by considering the variable delays of these data. However, with inaccurate estimates of the AUV’s parameters or the vector of the underwater currents, the estimate of the AUV’s velocities and the prediction of its movement in the interval between the arrival of data from the HAS will be significantly inaccurate. To eliminate this problem, the proposed navigation algorithm starts the third stage of the algorithm.
4. The Estimation of the AUV Model Parameter and the Vector of the Underwater Current
The third stage of the algorithm is to adjust the parameters of Model (7) based on the data on the real movement of the AUV, which are received from the HAS. This adjustment of the model’s parameters will be based on the following assumptions.
Since the period of AUV coordinate data receipt from the HAS is long, the transient processes, which begin when the AUV’s thrusts change, will not be observed in the data from the HAS. Therefore, during adjustment, it will be assumed that the AUV is moving in a steady state; that is, it will be assumed that the derivatives of linear velocities are zero or small and can be neglected. It should be noted that this mode is the main one for the AUV, since when performing missions, the movement of the AUV occurs along specified sections of the trajectory at a constant velocity. Since the HAS determines only two coordinates of the AUV, the model of the movement of the AUV in the horizontal plane will be considered in the adjustment process. At the same time, all the parameters of the AUV’s movement in the vertical plane can be determined with great accuracy using data from the depth sensor. It is assumed that the AUV has a propulsion system that can create a thrust force at the x coordinate of the BCS and does not create thrust at the y coordinate of the BCS. So, it is assumed that the AUV’s velocity along the y coordinate in the BCS in the steady-state mode will be determined only by the corresponding component of the vector of underwater currents in the BCS. It is assumed that the AUV moves in a horizontal plane with depth stabilization, which is usually the main operating mode of the AUV. It is assumed that the underwater current vector in the ACS is constant for the entire period during which data are collected for adjustment.
Based on these assumptions, the mathematical model of the steady motion of the AUV, the parameters of which will be adjusted, will take the following form:
where
is the AUV’s coordinate vector in a horizontal plane;
is the AUV’s velocity vector in the horizontal plane; and
is the matrix of rotation about the z-axis in the horizontal plane. The first equation of System (14) is written under the assumption that the movement of the AUV occurs forward (velocity
), which is the main mode of AUV movement.
It can be seen from System (14) that the adjusted parameters of the model will be . These parameters will allow us to estimate the current velocities of the AUV more accurately and thereby significantly increase the accuracy of estimating the coordinates of the AUV at the prediction stage.
From the first equation of System (14), it is possible to obtain an expression for calculating the velocity of the AUV’s movement depending on the applied thrust forces and parameters of hydrodynamic resistances and underwater currents. Based on the assumption that the AUV is moving forward, that is,
, we obtain the following expression for calculating
:
Considering this expression, Model (14) can be written in the following form:
Model (15) has the following discrete form:
where
is the sampling step corresponding to the period of data receipts from the HAS. Considering possible distortions and data loss during transmission over acoustic communication channels, the value of
may be variable.
Model (16) is nonlinear with respect to the vector of
; therefore, adjustments should be carried out using numerical optimization methods. In this case, the criterion that will be minimized has the following form:
where
is the AUV’s position data, which are received from the HAS, and
is the number of data used for the adjustment of the parameters.
At the same time, when the AUV works, the array Ω of
N elements is formed. Each element of this array contains the following data:
where
is the estimation of the time moment when the AUV’s position corresponded to the data received from the HAS, which is calculated using the formula:
where
is the time of receiving the
i-th portion of data from the HAS according to the AUV’s internal clock;
is the delay in the receipt of the
i-th portion of data from the HAS, which is calculated using Formula (11). The data on
are selected so that the time of their receipt is as close as possible to the time
. It should be noted that array Ω is updated during the operation of the AUV according to the principle of the FIFO buffer; that is, it will always contain
of the last measurements received from the HAS.
As an adjustment method, the Levenberg–Marquardt method is used, the implementation of which needs to be calculated as follows: , where and .
From Expression (16), one can obtain
where
is the zero matrix.
As can be seen from Expression (18), the value of is calculated iteratively from the first element of array Ω to the last. In this case, the element of E(1) is assumed to be zero if the parameters of Model (7) have not yet been adjusted, or it is calculated as the difference between the position of the AUV, as calculated from Model (7), and the measurements obtained from the HAS.
The estimates of the model’s parameters in Equation (16) will be calculated iteratively using the following expressions [
53]:
where
is the iteration number of the Levenberg–Marquardt algorithm;
is the unity matrix; and
is the step of parameter adaptation. The condition for completing parameter adjustments is
, where
is a small positive value.
The estimates of the AUV’s parameters and the vector of underwater currents obtained as a result of adjustments are used in Model (7) at the prediction stage, which will significantly increase the accuracy of the estimation of the vector of the AUV’s linear velocities and its coordinates.
5. Simulation Results
Mathematical simulations were carried out to study the proposed method of constructing a navigation system. To perform this, a model describing the dynamics of the AUV’s movement was developed in accordance with Models (1)–(4), and a model for generating data on the AUV’s position using the HAS was developed in the MATLAB/Simulink environment (ver. R2022b). This model, based on the current coordinates of the HAS and AUV, calculates the distance Dg and bearing ag of the AUV relative to the HAS. A random error was added to the calculated values, the amplitude of which was a given fraction of the measured value; then, the noisy data obtained were sampled with a given step in the distance and bearing angle, respectively. The generated data, which simulated navigation data from the HAS, were transmitted with a delay depending on the distance between the AUV and the HAS and the speed of data transmission over the acoustic channel to the model of the AUV’s navigation system, which is implemented using Expressions (7)–(13) and (16)–(19).
During the study, the movement of the AUV was simulated using Models (1)–(4). The following time-varying forces were applied to the input of this model:
. At the same time, the values of the torques
and
were formed in such a way that the pitch angle is stabilized at 0 rad, and the yaw angle is changed in accordance with the law where
by means of corresponded control loops. Also, the thrust value
was formed so that the depth of the AUV was stabilized at a given value. Such a nature of the formation of control signals imitates the movement of the AUV in a horizontal plane when it is moving along a complex curved trajectory. In general cases, curved trajectories can be generated as described in [
54].
- -
Parameters of the AUV for Models (1)–(4) have the following values:
inertia matrix .
- -
The matrix of added mass and inertia moments is as follows: MA = −(1.8 kg, 76.5 kg, 76.5 kg, 0.05 kgm2, 0.23 kgm2, 0.23 kgm2).
- -
Hydrodynamic coefficients are as follows: d1= (25 Ns/m, 105 Ns/m, 105 Ns/m, 0.1 Nms, 5.5 Nms, 5.5 Nms) and d2 = (19 Ns2/m2, 105 Ns2/m2, 105 Ns2/m2, 0.1 Nms2, 5.5 Nms2, 5.5 Nms2).
- -
Hydrostatic parameters are as follows: , and .
In the process of simulations, it was assumed that the vector of underwater currents has a constant value in the ACS and is equal to .
The parameters used in the navigation system are determined by the primary estimates of the AUV dynamic model parameters. These estimates can be obtained using analytical methods based on the size and shape of the AUV’s body with the help of specially designed software for rigid simulations of a three-dimensional AUV model or by using field experiments and identification methods. Parameters of Model (7), which were implemented in the proposed navigation system, were different from parameters of Models (1)–(4) and have the following values: ma = 110 kg, λ11 = −2.8 kg, λ22 = −65.5 kg, λ33 = −85.5 kg, d1x = 15.0 Nsm−1, d2x = 90.0 Ns2m−2, d1y = 90.0 Nsm−1, d2y = 90.0 Ns2m−2, d1z = 90.0 Nsm−1, d2z = 90.0 Ns2m−2 and Pa = 6 N.
The discretization step of the navigation system is h = 0.01 s. The covariation matrixes have the following values: , .
The values of angular velocity, orientation angles and z (depth) coordinates coming from the corresponding sensors were noisy in accordance with the typical characteristics of these sensors: The error amplitude of the angular velocity sensor was 0.01 s−1. The error amplitude of the orientation angle sensor was 0.02 rad, and the error amplitude of the depth sensor was 0.05 m.
The model for the HAS has the following parameters: the range of the measuring error of the distance to the AUV is 1.0% from real values; the range of measuring error of the bearing angle is 1.0°; the discretization step of the distance is 0.5m; the discretization step of the bearing angle is 0.5°; the sound speed in water is 1500 m/s; the speed of data transmission is 9600 bit/s; the length of navigation data packet is 192 bits; the period of measurement is 2.5 s.
It should be noted that the parameters used in the simulation process correspond to the real characteristics of on-board sensors and sonar stations, which allows for sufficient reliability of the obtained results.
Figure 4a,b show the process of changing the true values of the
x and
y coordinates of the AUV in the ACS (black curve), their estimates obtained using the proposed algorithm (blue line), as well as their measurements using the HAS (brown line).
Figure 5a,b show the errors in estimating the
x and
y coordinates of the AUV using the proposed algorithm (black line), as well as the measurement error of the HAS (gray line).
As can be seen from the presented figures, in the case when the AUV dynamic model did not have data on underwater currents and did not use the adjusted hydrodynamic parameters, the error in estimating coordinates could reach 30 m. This is explained by the complex nature of the AUV’s movement and the sufficiently large inertia of Filters (7)–(13), which was chosen due to sufficiently large errors in the HAS measurement to avoid sharp fluctuations in the estimates of the AUV’s coordinates at the correction stage.
After the moment where t = 750 s, when 300 measurements from the HAS were collected, the parameters of the mathematical model in Equation (7) were adjusted. The parameters that were determined using the adjustment procedure had the following values: d1x = 25.11 Nsm−1, d2x = 18.48 Ns2m−2, υcx = 0.401 ms−1 and = 0.2466 ms−1.
In the process of adjustment, according to Algorithms (14)–(19), the model’s parameters were selected so that the trajectory of the AUV, which was calculated according to Model (16), optimally coincided with the measured trajectory. A comparison of the measured trajectory and its evaluation by the model before and after adaptation is shown in
Figure 6. (The gray line is the measured trajectory; the black line is the trajectory evaluation using Model (16)). It can be seen from the presented figures that after identification, the measured and estimated trajectories began to coincide exactly, and the error in estimating coordinates decreased sharply, and its maximum value in the
x coordinate reaches 3 m, and in the
y coordinate, it reaches 4 m, which is seven times less than the measurement error.
Figure 7 shows the process of estimating the AUV’s linear velocities with the x and y coordinates in the BCS. (The true value is the gray line, and the estimate obtained using the proposed algorithm is the black line.)
Figure 8 shows the errors in estimating the values of these velocities in the BCS after the adaptation of Model (7), where
,
,
are the real values of the AUV’s linear velocities in the BCS.
As can be seen from the presented figures, before the adjusting procedure of Model (7), the estimate of linear velocities did not correspond to their actual values, which is explained by the presence of underwater currents, which in Model (7), are considered zero at this stage. However, after adaptation, the estimates of the velocities began to almost coincide with the real values, and the error in estimating the AUV’s velocities in the BCS at the x coordinate does not exceed 0.02 m/s, and at the y coordinate, it was 0.01 m/s. These results are comparable in accuracy to most commercially available DVLs, which allows us to conclude that the quality of the proposed navigation algorithm is comparable to traditional navigation systems based on the use of DVL data.
Thus, simulating the operation of the system with real sensor parameters shows that during the adaptation process of the AUV dynamic model based on the measurements made, the accuracy of determining the AUV’s coordinates will be low. However, after adaptation, the specified accuracy increases dramatically and becomes sufficient to perform most underwater operations. In addition, the use of the AUV’s measured trajectory to adapt the model’s parameters allows us to make the adaptation process insensitive to the presence of significant errors in sonar navigation systems.
Thus, the proposed navigation algorithm makes it possible to provide an accurate estimation of the AUV’s coordinates and velocities based on rarely received and noisy data from the HAS.
Also,
Figure 9 and
Figure 10 show the errors of the proposed navigation algorithm, which was implemented without considering the time delays in receiving data from the HAS to the on-board navigation system of the AUV. In the process of adjusting, the following Model (7) parameters were obtained:
.
As can be seen from the above results, the absence of considering the time delay in the receipt of data to the AUV from the HAS leads to a decrease in the accuracy of determining the parameters of Model (7), as well as to a decrease in the accuracy of estimating coordinates by almost two times (the error increases to 8 m). This is mainly because the correction of estimates occurs based on data that were relevant a few seconds ago, which at an AUV velocity of about 1.2 m/s, leads to an increase in the error.
Thus, the simulation results showed that the proposed approach for the synthesis of navigation systems allows us to obtain high accuracy of the AUV’s coordinates and velocities when using a limited set of on-board sensors. However, the following limitations of the proposed approach can be highlighted. The AUV must always be located in the area of operation of the sonar station and acoustic communication channel. At the same time, to compensate for delays in transmitting navigation information from the HAS to the AUV, the characteristics of the communication channel must be known. This restriction does not allow us to organize AUV missions at a great distance from the HAS. In order to operate in large areas, the HAS must follow the AUV, possibly by using an unmanned surface vehicle. The data from the HAS to the AUV should arrive in the same order as they were sent. If it is possible that this procedure will be violated, then it is necessary to provide for the transmission of information about the measurement number.
6. Discussion
The proposed method of implementing an adaptive navigation system is based on the adaptation of the AUV dynamic model using the data received from an external hydroacoustic system. However, for its effective performance, it is necessary to have a good knowledge of the model of the AUV’s propulsion complex, which forms the control force. This can be quite a difficult problem, since the hardware of individual thrusters may differ from each other, which will create uncertainty in this model of the propulsion complex. Therefore, further development of the proposed approach should tackle the following directions.
To realize the possibility of adjusting not only the hydrodynamic coefficients along the x-axis and underwater currents but also dynamic parameters along other degrees of freedom, which is relevant for AUVs with additional thrusters.
To realize the possibility of adjusting the parameters of propulsion systems, as well as considering the features of creating control moments with the help of rudders.
Modify the proposed algorithm for the possibility of correct operations in conditions of continuously changing parameters of the AUV and underwater currents.
7. Conclusions
This article proposes a method for creating a navigation system for an AUV, which contains a limited number of on-board navigation sensors. It assumes that the equipment of the AUV includes orientation and angular velocity sensors, as well as a depth sensor, but does not include a Doppler velocity lag, which is a fairly expensive acoustic sensor. That does not allow for the direct measurements of the linear velocities of the AUV.
To estimate the parameters of the AUV’s movement, a model of its dynamics is used, as well as information about the propulsion control signals and the position of the AUV, which is transmitted via acoustic communication channels from the HAS. A Kalman filter is used for the fusion of data from on-board sensors and information from the HAS while taking into account delays in the receipt of information during the process of estimating the AUV’s position based on a model of its dynamics. To improve the accuracy of this navigation system, a method has been developed for identifying the parameters of the AUV and underwater currents using data on the AUV trajectory measured by the HAS.
A mathematical simulation of the proposed navigation system has been carried out. During the simulation, the characteristics of on-board sensors, the HAS and data transmission channels were used, corresponding to the actual equipment. As the results of the simulation showed, after adapting the parameters of the AUV dynamic model, the accuracy of its operation was several times higher than that of the accuracy of the HAS, and the accuracy in restoring linear velocity values was comparable to the DVL one.
The proposed approach can be used to build low-cost AUVs that can carry out operations in a specific area around the HAS. It can also be applied to create resident underwater robotics systems. The proposed navigation method can be used to develop multi-environment marine robotic systems, which consist of an unmanned surface vehicle that serves as a carrier for the HAS and an AUV that performs underwater operations. Additionally, this approach can be expanded to address the issue of different AUV on-board sensors failing during operations, increasing the reliability of the system.