1. Introduction
An Acoustic Doppler Current Profiler (ADCP) is an instrument widely used to measure the water flow velocity profiles in natural water bodies and artificial waterways [
1,
2]. Due to their high measurement accuracy, fast speed, and low measurement cost [
3,
4,
5], ADCPs have been extensively applied in various fields, including oceanographic research [
6,
7,
8,
9], marine development [
10,
11], hydrological surveys [
12,
13,
14], underwater protection [
15,
16], and navigation [
17].
Depending on the installation platform, installation method, application scenario, and data acquisition approach, ADCPs can be categorized into various types. Among them, the more commonly used vessel-mounted ADCP can be installed on platforms such as ships to measure both vessel velocity and flow velocity profiles [
18]. When the attitude of the platform changes, the attitude of the ADCP mounted on it also changes, affecting the accuracy of flow velocity measurements. Therefore, vessel-mounted ADCPs are typically equipped with inclinometers and electronic compasses to correct for tilt angles and determine the direction of navigation. This allows for the transformation of transducer coordinates for vessel velocity and flow velocity into the Earth coordinate system [
19,
20].
In fact, the impact of attitude changes includes not only changes in angles, but also additional linear velocities generated by rotation. However, the influence of ADCP attitude changes is typically addressed by correcting only the tilt angle, often neglecting the effect of linear velocity caused by the transducer’s sway. Some researchers believe that the impact of linear velocity due to vessel sway with an amplitude within 5° can be entirely ignored [
21], while others suggest that the Janus [
22] symmetrical transducer structure can cancel out the effects of sway. Indeed, in such cases, the impact of sway can sometimes be negligible, and the traditional attitude correction method of the ADCP can still be effective. However, in certain scenarios, the influence of transducer sway on flow measurement can still be significant. For example, in the commonly used moored observation method for deep-sea ocean monitoring, the current measuring instruments within the buoy system may tilt and sway with the water flow, and the accuracy of flow measurement can be affected by displacement, attitude changes, and the linear velocity generated during these changes [
9,
10,
11,
12,
13]. Additionally, due to the time interval between the emission and reception of ADCP signals, changes in linear velocity and the radial direction of the transducer during this interval can also affect velocity measurement.
Traditional ADCPs typically correct only for attitude angles and often overlook changes in attitude angles during the echo transmission and reception period. To clarify and differentiate between methods, this paper refers to the traditional correction approach as the “attitude static correction method”. In contrast, the method that accounts for additional linear velocities caused by sway and considers changes in the transducer’s motion during the echo transmission and reception period is termed the “attitude dynamic correction method”.
Some researchers have already conducted studies to reduce the impact of platform sway on flow measurements. For example, Raye [
23] aimed to mitigate the impact of vessel sway and reduce the average number of pings required to obtain high-spatiotemporal-resolution water flow velocities by using data from an inertial navigation system (INS) and differential GPS (DGPS) to correct ADCP-measured water flow velocities. Terray [
24] focused on correcting the impact of AUV (Autonomous Underwater Vehicle) motion under wave action on ADCP performance, achieving certain results by replacing the costly tactical-grade INS with an industrial-grade AHRS (attitude and heading reference system). Zhang Hongmei [
25] applied linear velocity correction for ADCP velocity measurements using differential GPS. In the field of Doppler Velocity Log (DVL), which operates on principles nearly identical to those of ADCP and is used for underwater navigation, existing Kalman filter-based online calibration methods have often overlooked the lever arm between the Inertial Measurement Unit (IMU) and the DVL [
26,
27,
28]. It is only in recent years that attention has been given to the impact of the lever arm between the IMU and the DVL, leading to the development of some solutions [
29,
30].
While some of these approaches have achieved good results in linear velocity correction, they require at least one of the following systems during measurement: INS, DGPS, or AHRS. This increases the cost and complexity of velocity measurements, reducing flexibility and convenience. Moreover, these methods do not include a detailed quantitative analysis of the impact of sway.
This study thoroughly investigates the impact of dynamic factors caused by platform sway on ADCP flow measurements, analyzing the effects of factors such as emission angle, the relative position of the sway center to the transducers, water depth, and measured depth on the errors through simulations. Subsequently, a flow velocity measurement method based on radial radius estimation for linear velocity correction is proposed to address the dynamic attitude effects. The proposed method is designed for the common application scenario where the ADCP is installed on the central longitudinal section of a vessel undergoing free roll motion, with measurements taken vertically downward in shallow water without waves, such as when towing the ADCP-equipped vessel for measurements on relatively calm lakes or reservoirs. The method involves fitting low-sampling-rate inclinometer data to an exponential decay sinusoidal oscillation model to derive the roll angle expression, and it introduces the concept of an equivalent radial radius for linear velocity correction, all without requiring any additional equipment beyond the ADCP itself.
Compared with other related research, this study provides a more in-depth and detailed simulation analysis of attitude dynamic errors, taking into account the effects of changes in linear velocity and radial direction during transducer pulse transmission and reception. Unlike methods that require additional hardware such as an inertial navigation system (INS), differential GPS, or attitude and heading reference system (AHRS) to correct attitude dynamic errors, the attitude dynamic correction method proposed in this paper effectively corrects these errors without the need for additional hardware on the ADCP. Although more complex attitude dynamic error correction techniques are widely used in ship and vehicle navigation systems, they are less commonly applied in the field of ADCP flow velocity measurement, and most methods require additional attitude measurement or navigation equipment. Additionally, although many large vessels at sea are equipped with accurate, high-velocity motion sensors, ADCPs are also often used to measure flow velocity in rivers, lakes, and other water bodies, where the vessels are usually smaller and typically lack such precise and fast motion sensors. The method proposed in this study can also be applied to post-process ADCP data that have already been collected without attitude dynamic error correction or accurate, high-velocity attitude information, offering a way to retroactively correct the attitude dynamic errors and salvage existing data.
The remainder of this paper is organized as follows:
Section 2 derives the errors in the attitude static correction method under the influence of dynamic attitude factors.
Section 3 proposes a flow velocity measurement method based on radial radius estimation for linear velocity correction to address the velocity measurement errors caused by platform sway dynamics.
Section 4 uses the attitude dynamic error formulas derived in
Section 2 to analyze the impact of various factors on these errors through simulations, followed by an experimental comparison of the performance of the method proposed in
Section 3 with that of the attitude static correction method. Finally,
Section 5 provides a summary of the entire paper.
2. Theoretical Derivation of Attitude Dynamic Error
The traditional ADCP correction for transducer sway is limited to addressing static factors of attitude changes and does not consider the impact of dynamic factors. Therefore, the following section derives the errors introduced by the attitude static correction method under transducer sway conditions, with a simulation analysis provided in
Section 4.1.
In this section, we first substitute the roll motion equation, assumed to be simple harmonic, into the acoustic ray model of a vessel-mounted ADCP that accounts for sway, generating Doppler frequency shifts. Then, using the attitude static correction method, we derive the radial velocities for both vessel velocity and flow velocity. The vessel velocity and flow velocity are then determined from the radial velocities of the three beams. By subtracting the actual vessel velocity and flow velocity from the derived values, we obtain the errors in vessel velocity and flow velocity. Finally, based on the derived error formulas, a detailed quantitative analysis is conducted through a simulation to examine how various factors influence the errors introduced by the attitude static correction method.
When using a vessel-mounted ADCP for measurements, the transducers sway along with the platform on which they are installed. This swaying causes an additional relative velocity between the transducers and the water, introduced by the platform’s motion. This additional relative velocity affects the measured Doppler frequency shift, leading to errors in the radial velocities of the transducers, which, in turn, impacts the accuracy of the measured vessel velocity and flow velocity.
The primary reasons for the measurement errors in the traditional ADCP under swaying conditions are as follows:
The attitude static correction method does not account for the linear velocity generated by the sway.
It does not consider the changes in sway-induced linear velocity or radial direction during the transmission and reception of acoustic pulses, assuming that the velocity and direction of the transducers remain constant during a single transmission–reception cycle.
Next, we take these two factors into account to derive the error formulas. This paper only considers the case of four transducers in a Janus configuration or a phased array transducer that, after beamforming, can be equivalent to four discrete transducers. For the phased array transducer, the term “transducer” used later in this paper refers to the discrete transducers that are equivalent to the phased array transducer after beamforming. It is important to note that the central axis of the four transducers refers to the symmetrical axis of the transducers’ acoustic axes, with the acoustic axis being the centerline of each transducer’s acoustic beam.
For the swaying motion of the vessel, only the roll motion is considered here. As shown in
Figure 1, transducers 3 and 4 lie within the
plane. The central axis of the four transducers passes through the rotation center
in the
plane, and the transducers undergo roll motion around a rotational axis parallel to the
axis that passes through point
. The water depth is
. The transducer emits sound waves at position 2, receives the echo from a depth of
at position 3, and receives the bottom echo at position 4. It is known that the flow velocity at depth
,
, and the vessel velocity
have directions along the positive
axis. The angles
and
, which represent the angles of
and
relative to the vertically downward direction, are both
, indicating that they are along the positive
axis.
Let the linear velocities of the transducers at positions 2, 3, and 4 be , , and , respectively, corresponding to the times , , and . The roll angles at these positions are φ3 and φ4. The angles between the radial direction of transducer 3 and the vertical direction are , , and , and, for transducer 4, the corresponding angles are , , and . When the roll angle is 0, the angle between the roll radius and the vertically downward direction is .
Although ships at sea are generally larger, with roll periods typically ranging from 6 to 14 s, ADCPs are also frequently used to measure the flow velocity of rivers, lakes, and other water bodies, where the vessels are usually smaller. For example, in this study, the RiverRay ADCP was mounted on a small boat with dimensions of only 0.96 m in length, 0.2 m in width, and 0.18 m in height. Based on the natural roll periods of various types of vessels, the natural roll period of the towed monohull equipped with the ADCP was set to 1 s, with a roll amplitude
φ0 of 10° [
31]. At the initial roll moment
, transducer 4 is at position 1, with an initial roll angle of −
φ0 and an initial roll angular velocity of
. According to the ship’s roll motion law [
31], the function of the transducer’s roll angle with respect to time
is given by
where
is the angle measured counterclockwise from the vertically downward direction. By differentiating it, the roll angular velocity of the transducer
is given by
Next, based on the positions, attitudes, and motion states described above, the actual echo frequency under the influence of dynamic attitude changes is derived. Then, using the echo frequency, the vessel velocity and flow velocity measured using the traditional ADCP are obtained using the attitude static correction method described in
Section 2, allowing for a comparison with the actual vessel velocity and flow velocity.
First, consider the one-dimensional case of a single transducer under the two-way Doppler effect, where the transducer velocity and water flow velocity are aligned on a single straight line. According to the instantaneous nature of the Doppler effect, the two-way Doppler effect formula changes from its original form
to the new form
where
is the velocity of sound,
is the water flow velocity, and
and
are the transducer velocities during the transmission and reception of sound waves, respectively.
is the frequency of the emitted sound wave, and
and
are the received frequencies without and with the consideration of the difference in transducer velocities during sound wave transmission and reception, respectively.
Next, based on the one-dimensional two-way Doppler formula for a single transducer, we derive a three-dimensional Doppler formula for three transducers and subsequently analyze the errors introduced by the sway.
By selecting any three transducers, it is possible to derive the vessel velocity and flow velocity. In this study, transducers 2, 3, and 4 are used as examples for the derivation. Therefore, it is only necessary to determine the components of each velocity along the radial directions of transducers 2, 3, and 4. Substituting these into Equation (4) yields the echo frequencies received by the three transducers.
The direction along the radial axis pointing upward is defined as the positive direction for the velocity in the beam direction. Since the sway-induced linear velocity and radial direction change during the transmission and reception of sound waves by the transducer, the transducer’s velocity at times
,
, and
will differ, and their components in the beam direction may also vary. Let us first examine transducer 4. The components of its velocity in the beam direction at times
,
, and
are denoted as
,
, and
, respectively. Since the component of the transducer’s velocity in the beam direction can be considered as the sum of the vessel velocity and the linear velocity components in the beam direction,
,
, and
are given by
where
,
, and
are the transducer’s linear velocities at times
,
, and
, respectively. The formulas for these velocities are given as
Due to the changes in the radial direction during the transmission and reception of sound waves, the paths of the sound waves received and scattered by the scatterer at depth
are different, with the directions of these paths aligning with the radial directions at times
and
, respectively. Therefore, the components of the flow velocity in the beam direction of transducer 4 during the incidence and scattering of the sound waves,
and
, are given by
Therefore, by substituting
,
,
, and
into Equation (4), the frequency of the echo received by transducer 4 from depth
, denoted as
, is given by
and by substituting
and
into Equation (4), the frequency of the bottom echo received by transducer 4, denoted as
, is given by
Similarly, the frequencies of the echo from depth
and the bottom echo for transducers 2 and 3 can be obtained as follows:
and
where
After obtaining the actual echo frequencies of each transducer under sway conditions, the flow velocity and vessel velocity are then calculated using the attitude static method, which does not account for the dynamic effects of sway. First, using the Doppler formula, the radial vessel velocities
,
, and
, and the radial flow velocities
,
, and
for transducers 2, 3, and 4, respectively, are obtained through the attitude static method:
Here,
i takes the values 2, 3, and 4. Based on the principle of converting from beam coordinates to transducer coordinates [
32], the vessel velocity vector
and the flow velocity vector
in the transducer coordinate system are given by
Based on the coordinate transformation principle [
33], let the transformation matrix from the transducer coordinates to the vessel coordinates be
, and let the transformation matrix from the vessel coordinates to the Earth coordinates be
. Then, the vessel velocity vector
and the flow velocity vector
in the Earth coordinate system, obtained using the attitude static correction method, are given by
In this section,
is the identity matrix. Let
. Since, in actual measurements, only the horizontal component of
is generally taken as the vessel velocity—meaning that only the horizontal component of the bottom-tracking velocity is considered—the final bottom-tracking velocity scalar
and flow velocity scalar
obtained using the attitude static correction method are given by
The sign function sgn is used to distinguish the general direction of the vessel velocity
and the flow velocity
for analytical purposes. A positive value of the sign function indicates that the velocity is directed toward the positive side of the
y axis, while a negative value indicates that the velocity is directed toward the negative side of the
y axis.
Thus, the vessel velocity and flow velocity errors
and
caused by the attitude static correction method, which does not consider the dynamic effects of sway, are given by
Based on the known positions, attitudes, and velocities of the transducers during platform sway, as well as the water flow velocity and depth, the vessel velocity and flow velocity , along with the errors and under the attitude static method, are derived. Next, the derivation of a flow velocity measurement method based on radial radius estimation for linear velocity correction is presented, specifically for a towed ADCP installed on the central longitudinal section of a vessel in shallow water.
3. Flow Velocity Measurement Method Based on Radial Radius Estimation for Linear Velocity Correction
A common application scenario involves installing the ADCP on the central longitudinal section of the vessel, measuring vertically downward, such as in towed measurements with a non-powered trimaran, powered measurements with an unmanned trimaran, or powered measurements with an unmanned monohull. For this typical situation under free roll conditions, this paper proposes a flow velocity measurement method based on radial radius estimation for linear velocity correction, specifically designed for a vessel-mounted ADCP installed on the central longitudinal section of the vessel in shallow water.
In shallow water, the linear velocity can be considered constant during a single transmit–receive pulse cycle (for a detailed analysis, refer to
Section 4.1.4). Therefore, this method first lets the vessel, without sailing velocity, freely roll in shallow water, using the traditional ADCP with the attitude static correction method to measure the bottom-tracking radial velocity and attitude angles. These measurements are then used to estimate the effective radial radius of the roll. This effective radial radius can subsequently be used to correct the attitude dynamic errors due to roll in future measurements. The definition of the effective radial radius is provided in Equation (42) in the following derivation. The specific steps are as follows.
As shown in the block diagram of the flow velocity measurement method based on radial radius estimation for linear velocity correction in
Figure 2, as the vessel’s free roll motion in water closely approximates simple harmonic oscillation, the roll angle curve can be considered an exponentially decaying oscillation curve [
31]. Therefore, this method first conducts a single measurement (the measurement used for radial radius estimation indicated by the red dashed box). In this measurement, the measured roll angle is fitted using the exponentially decaying sine oscillation model formula and the least squares method to obtain the roll angle expression. Then, the average bottom-tracking radial velocity measured by the four transducers is fitted using the derivative of the exponentially decaying sine oscillation model formula and the least squares method to obtain the expression for the average bottom-tracking radial velocity of the transducers. Finally, the estimated radial radius is obtained by dividing the amplitude of the transducer’s average bottom-tracking radial velocity expression by the amplitude of the roll angle expression.
After obtaining the radial radius, it can be used to correct other measurements (vessel velocity and flow velocity corrections in the green dashed box). The same method is applied to determine the roll angle expression for the current measurement, and then its derivative is taken to obtain the roll angular velocity expression. By multiplying the roll angular velocity expression by the radial radius, the radial component of the roll-induced linear velocity is obtained. Subtracting this radial component of the roll-induced linear velocity from the measured bottom-tracking and intermediate-layer radial velocities gives the radial velocity corrected for linear velocity effects. Finally, by applying the coordinate transformations, the vessel velocity and flow velocity corrected for linear velocity are obtained.
The detailed derivation process is as follows:
Since the ADCP is installed on the central longitudinal section of the vessel and the four transducers are typically arranged in an Xform configuration with
ψtb = 45° [
32], the roll radii of the four transducers are equal due to symmetry. Taking transducer 1 as an example, let the roll radius be
. The angle between the roll-induced linear velocity and the direction of the radial velocity for transducer 1 is denoted as
, with the positive direction of the radial velocity defined as pointing radially inward toward the transducer.
In shallow water, the linear velocity can be considered constant during a single transmit–receive pulse cycle. Additionally, as the vessel velocity is zero, the traditionally measured radial bottom-tracking velocity by the ADCP,
, can be expressed as
Here,
represents the roll angular velocity.
can be obtained by differentiating the roll angle measured by the inclination sensor. However, because the sensor data from the ADCP are generally transmitted and recorded in unified data packets, the maximum update rate of these data packets is typically only around 10 Hz. As a result, the roll angle data have a maximum sampling rate of 10 Hz, often around 2 Hz, which is insufficient for the required accuracy.
Therefore, it is necessary to first process the roll angle data obtained from the inclination sensor. Since the roll angle data, packaged together with the ADCP data, typically have a sampling rate of only about 2 Hz, and the roll frequency of the unmanned monohull vessel carrying the ADCP is often around 1 Hz, they easily fail to meet the Nyquist sampling theorem and are insufficient for the differentiation needed. Given that the vessel’s free roll motion in water closely approximates simple harmonic oscillation, the curve can be considered an exponentially decaying oscillation curve [
31]. Thus, the issue of an insufficient sampling rate can be addressed by estimating the parameters in the exponentially decaying sine oscillation model to derive the roll angle expression. The expression for the roll angle during free roll motion without waves in the water is defined as follows:
Here,
,
,
, and
are the parameters to be estimated. Therefore, by using Equation (33) as the fitting formula and applying the least squares method to the measured roll angle data, the roll angle expression
can be obtained. The roll angular velocity
is then given by
Next, let us determine . Let the angle between the roll radius and the axis be . It is known that the angle between the transducer’s acoustic axis and the axis is .
As shown in
Figure 3a, the vessel undergoes roll motion around the
axis, with transducers 1, 2, 3, and 4 positioned at the four vertices of a square. The
axis is parallel to the line connecting transducers 1 and 4, and its projection on the square passes through the center of the square. The angle between the radial direction and the positive direction of the
axis is
. The blue arrows represent the linear velocities corresponding to each transducer, and the red line segments represent the roll radii.
Figure 3b provides an enlarged view of the area around transducer 1. In this figure, KM is parallel to the linear velocity of transducer 1 (indicated by the blue arrow),
and KL are parallel to the
axis, and
and ML are parallel to the
axis. Therefore, the angle
in triangle
is the desired angle
. The solution is given by
Due to the symmetry in the arrangement of the transducers, it can be determined that
Substituting Equations (34) and (35) into Equation (32) yields
By simplifying, we obtain
where
is an acute angle.
Let
then Equation (39) becomes
Let
be called the effective radial radius of transducer 1. The radial radius in this study is a quantity that directly converts angular velocity into the radial component of the transducer’s linear velocity. Its function is similar to that of a radius, hence the term “radial radius”. Unlike common concepts such as the radius vector or slant range, the radial radius introduced here is not a measure of distance in three-dimensional space and cannot simply be understood as the projection of the radius vector onto the radial direction. To simplify expression and facilitate calculation, this new concept is introduced.
Similarly, for transducers 2, 3, and 4, we have
Here,
takes the values 2, 3, and 4. Since the transducers are installed in an “X” shape on the central longitudinal section of the vessel, due to symmetry,
,
,
, and
are equal. Let them all be denoted as
. Therefore, to improve accuracy, the mean value of the radial radius across all transducers and all time instances can be taken. Since the radial radii are equal, according to Equations (42) and (43), we have
Sometimes, due to the time alignment between the roll angle and radial velocity or issues with the measurement accuracy of the radial velocity, the effectiveness of calculating the radial radius using Equations (42) and (43) may be poor. In such cases, the average radial velocity of the four transducers can first be calculated according to Equation (44), yielding
then, according to Equation (42), we have
According to Equation (46), it can be seen that the ratio of
to
is a constant
. Therefore, the expression for
can be written in the same form as that for
, differing only by a constant multiplier. The expression for
can be obtained by differentiating Equation (33), as shown below:
Therefore, the expression for
can be written as
By using Equation (48) to construct the objective function, the parameters are estimated using the least squares method to obtain
. Then, based on Equation (46), the radial radius
can be determined as
Using this method to determine
can effectively address the issue of large fluctuations in
values at different times when calculated using Equation (42) or Equation (43), which can lead to an inaccurate determination of
.
After obtaining the radial radius
, the traditionally measured bottom-tracking radial velocities
,
,
, and
from other or the current measurements can be corrected to obtain
Next, the intermediate-layer radial velocities
,
,
, and
obtained from other or the current measurements using the traditional ADCP can be corrected to obtain
Here,
takes the values 1, 2, 3, and 4. Then, by performing the coordinate transformation, the vessel and flow velocities corrected using the attitude dynamic method can be obtained.
This method, under the existing hardware conditions of the ADCP, uses the low-sampling-rate data from the inclination sensor to estimate the roll angle expression of the transducer. It then estimates the roll radial radius through fixed-point bottom-tracking velocity measurements in shallow water, and it finally uses this radial radius to correct the vessel velocity and flow velocity. Considering that, in practical situations, it may not be convenient to add inertial navigation systems or other attitude or angular velocity measurement instruments to the existing ADCP equipment, this method provides a convenient approach for dynamic attitude correction.