Next Article in Journal
Joint Intra/Inter-Slot Code Design for Unsourced Multiple Access in 6G Internet of Things
Previous Article in Journal
Blockchain Enabled Anonymous Privacy-Preserving Authentication Scheme for Internet of Health Things
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Managed Surge Controller: A Docking Algorithm for a Non-Holonomic AUV (Sparus II) in the Presence of Ocean Currents for a Funnel-Shaped Docking Station

Computer Vision and Robotics Research Institute (VICOROB), University of Girona, 17003 Girona, Spain
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(1), 241; https://doi.org/10.3390/s23010241
Submission received: 8 December 2022 / Revised: 16 December 2022 / Accepted: 20 December 2022 / Published: 26 December 2022
(This article belongs to the Section Sensors and Robotics)

Abstract

:
This paper presents a novel algorithm to dock a non-holonomic Autonomous Underwater Vehicle (AUV) into a funnel-shaped Docking Station (DS), in the presence of ocean currents. In a previous work, the authors have compared several docking algorithms through Monte Carlo simulations. In this paper, a new control algorithm is presented with a goal to improve over the previous ones to fulfil the specific needs of the ATLANTIS project. Performance of the new proposed algorithm has been compared with the results of the previous study, using the same environemnt on the Stonefish hardware-in-the-loop simulator.

1. Introduction

The AUV technologies presented a significant improvement during the last years. Several autonomous missions were developed in the field [1,2]. Nowadays, the common operating procedure of the AUVs is to deploy them (usually with a ship), develop the mission, and, finally, recover; in most of the cases during the same operational day. The natural next development for the consolidation of this technology is the creation of DSs, which can allow the AUVs to extend the operational time in the field. The DS have to offer protection, high-bandwidth communication channels, and the capacity to recharge the vehicle’s batteries. In the literature, several examples of DS systems can be found [3,4,5,6,7,8]. Each DS concept was tailored to a specific AUV and used its own perception and docking strategies. Several descriptive surveys about docking can already be found in the literature: [9,10,11].
Previously, the team from the University of Girona developed a prototype of a funnel-shaped DS that relied on an acoustic transponder and light beacons, in order to localize it from the vehicle [12]. The conclusions of those experiments have shown the need of developing a controller that considers the ocean currents. Moreover, in turbid water scenarios, the vision system was not appropriate. In the ATLANTIS project [13], one of the technologies that must be demonstrated is the semi-permanent deployment of the Sparus II AUV, using a docking station on the seabed. With this motivation, the authors have developed the following study.
In a previous publication [14], several algorithms were studied to cope with the autonomous docking, using a non-holonomic AUV, in the presence of ocean currents: the Pursuit Guidance with current compensation controller presented by [4,15], the Cross-track controller used in [3,16], the Fuzzy controller used in [17,18], the Touchdown alignment controller described in [19], the Sideslip controller based on [20], and the Sliding path controller described in [21]. None of the studied solutions offers satisfactory behavior when dealing with ocean current velocities higher than the docking velocity. Thus, a proposal of a novel control algorithm is presented in this work.
The paper is organized as follows: Section 2 presents the novel algorithm. Section 3 presents the experimental setup used in order to test the algorithm. Section 4 analyses the performance of the algorithm in different scenarios. Obtained results and the comparison with the other methods are presented in Section 5, discussed in Section 6, and finally, the conclusions are drawn in Section 7.

2. Proposal: Managed Surge Controller

This section presents the novel method to deal with the ocean currents controlling a non-holonomic AUV. The proposed method is called Managed Surge Controller (MSC).

2.1. Assumptions

2.1.1. Assumption 1

We assume that the AUV motion is described using two degrees of freedom: surge and yaw. This is a consequence of the commonly adopted strategy of neglecting sway for under-actuated vehicles, maneuvering at low speed.

2.1.2. Assumption 2

The inner loop controllers can track the desired surge velocity ( u d ) and the desired yaw ( ψ d ) with good accuracy.

2.1.3. Assumption 3

The velocity of the ocean currents is constant, irrotational, and bounded.

2.1.4. Assumption 4

The vehicle can measure its surge velocity, yaw angle, and the ocean current velocity.

2.1.5. Assumption 5

The vehicle can measure its relative position with respect to the DS.

2.2. Concepts

Inspired by the analysis done in [14], the present method improves the results obtained with the previously studied methods because it can deal with ocean currents, the velocity of which are larger than the velocity of the docking of the AUV.
Figure 1 presents the basic variables involved in the process. Two different reference frames are presented, the { D } frame located at the position of the DS, and the { B } frame attached to the AUV body. The velocity in the { D } frame are symbolised by x ˙ and y ˙ with respect to the ground, and the velocities in the { B } frame are represented by u and v with respect to the water.
Figure 2 shows the velocities involved in the controller: (1) the ground speed ( D η ˙ 1 B = [ x ˙ y ˙ ] T ), and (2) the through water velocity ( B ν 1 B = [ u v ] T ). Finally, the ocean current vector ( D η ˙ c = [ x ˙ c y ˙ c ] T ) as well as the desired docking velocity ( D η ˙ 1 D = [ x ˙ D 0 ] T ) are represented in the inertial {D} frame.

2.2.1. Model of the System

The kinematic system is represented by the following equations, recall Figure 1 and Figure 2:
D η ˙ 1 B = D R B · D ν 1 B + D η ˙ c
x ˙ y ˙ = cos ( ψ ) sin ( ψ ) sin ( ψ ) cos ( ψ ) · u v + x ˙ c y ˙ c
This equation, assuming a negligible sway velocity (Assumption 1 ), simplifies to:
x ˙ = u cos ( ψ ) + x ˙ c ,
y ˙ = u sin ( ψ ) + y ˙ c .

2.2.2. Docking Scenarios

According to Figure 3, three docking scenarios can be defined, depending on the robot ( D ν 1 ), current ( D ν c ) and docking ( D ν 1 D ) velocities in the x D axis:
  • Scenario A ( x ˙ c 0 ): The current opposes to the robot speed. Therefore, a higher through water robot speed is required to achieve the desired inertial docking velocity.
  • Scenario B ( x ˙ c > 0 and x ˙ c < x ˙ D ): The current speed, being smaller than the desired docking velocity, adds to the through water robot velocity to achieve the inertial docking speed.
  • Scenario C ( x ˙ c x ˙ D ): A current speed higher than the docking velocity, requires a backward through-water robot velocity to achieve the desired inertial docking velocity.
In scenarios A and B the surge velocity will normally be positive and the AUV heading will be opposite to y ˙ c . In contrast, in scenario C, the surge velocity will normally be negative and the heading will be in the direction of y ˙ c .

2.2.3. Crab Angle

To be able to compensate the lateral ocean current ( y ˙ c ) with a non-holonomic AUV it is necessary to use a crab angle ( ψ c ). This crab angle has the goal of aligning the robot to the axis of the DS ( y ˙ = 0 ), while keeping the desired docking velocity ( D η ˙ 1 D ). Therefore (2) can be rewritten as:
x ˙ D 0 = cos ( ψ c ) sin ( ψ c ) sin ( ψ c ) cos ( ψ c ) u 0 + x ˙ c y ˙ c .
Solving the system, the crab angle can be expressed as:
tan ( ψ c ) = y ˙ c x ˙ D x ˙ c ,
assuming x ˙ D x ˙ c 0 .

2.2.4. Entrance Problem

The problem of making a torpedo-shaped AUV enter a funnel-shaped DS can be modeled with the simplification that the DS is represented by an isosceles triangle and the AUV by a straight line directed along its main axis (see Figure 4).
If the symmetry of the system is taken into account, there are only three successful docking scenarios (Figure 5):
  • Scenario I: It represents the ideal entrance, where the AUV enters in a straight line with the same heading as the DS and aligned with its origin DS.
  • Scenario II: The robot heading is not aligned to the x D axis, but misaligned to the right.
  • Scenario III: The robot heading is not aligned to the x D axis, but misaligned to the left.
In Scenario II and III, the AUV completes the docking thanks to the geometrical properties of the system. Both scenarios differ in the energy lost during the collision, Scenario III being the one with the highest losses. Following the analysis of energy lost during the collision (reported in [14]), the AUV should try to perform Scenario I if possible, targeting Scenario II alternatively, and using Scenario III as the last resort. It is worth noting that Scenario I is not easy to perform with Sparus II AUV, in presence of ocean currents, due to its non-holonomic nature.

2.2.5. Path

A crab angle is needed to compensate for the ocean currents, therefore the method creates a path parallel to the DS axis at an appropriate distance from it, to take advantage of the torpedo-like shape of the AUV and the funnel-shaped DS, see Figure 6.
The path is created calculating a gap ( y g ), with respect to the axis of the DS using the crab angle, the DS and the AUV geometry. In order to calculate this gap, let us consider the geometry of the problem when the AUV reaches the DS in scenarios II and III (Figure 7). For the entrance in Scenario II, the gap can be calculated as:
y g , I I = ( F + l / 2 ) sin ( ψ c ) .
The maximum crab angle admissible to enter to the DS in Scenario II is computed using the simplified funnel shape:
ψ c I I = atan ( F y / F x ) ,
This allows to calculate the maximum gap as:
y g = ( F + l / 2 ) sin ( atan ( F y / F x ) ) .
For crab angles larger than ψ c I I , the system needs to perform the entrance Scenario III. The maximum crab angle for the entrance Scenario III, in case of 2 F y < l / 2 (that fulfils the mechanic characteristics of the system presented), can be calculated as (see Figure 8, and recall Figure 5):
ψ c I I I = π 2 atan F y / F x ,
in order to guarantee that the AUV does not hit a disfavoured part of the DS. In this case the y g I I I is fixed to be equal to F y / 2 (see Figure 7). In summary, (11) sets the value of y g for all the cases as:
y g = ( F + l / 2 ) sin ( ψ c ) , ψ c I I ψ c ψ c I I sign ( ψ c ) F y / 2 , | ψ c | > ψ c I I .

2.2.6. Path Following

The Sparus II AUV has direct control over the surge velocity (i.e., u) as well as over the heading (i.e., ψ ). Let the cross-track path error be defined as:
e = y y g
With this notation, the objectives of the path following the controller are to achieve:
lim t e ( t ) = 0
lim t ψ d ( t ) = ψ c
lim t u d ( t ) = x ˙ D x ˙ c cos ( ψ c ) ,

2.3. Control Law

The control law regulates the desired heading ( ψ d ) and the desired surge ( u d ). The desired heading is defined as:
ψ d = ψ c + β ,
where β is a correction term depending on the look-ahead distance ( Δ ) and the cross-track error (e), see Figure 9:
tan ( β ) = e Δ ,
where Δ is defined by a constant value ( k Δ > 0 ) and a sign criteria (21):
Δ = k Δ sign ( x ˙ s s ) ,
being x ˙ s s the through water velocities of the AUV in the steady state in the { D } frame (i.e., when e is zero).
The desired surge velocity is given by:
u d = x ˙ s s cos ( ψ ) c ,
where c is a correction term, introduced to adjust the response of the system:
c = k 1 atan ( k 2 e ) sign ( ψ ) ; k 1 , k 2 > 0
The correction modifies the basic velocity representation from Figure 2 into the one shown in Figure 10. The steady state inertial velocities can be calculated as:
x ˙ s s = x ˙ x ˙ c ,
y ˙ s s = y ˙ c ,
where x ˙ is set as x ˙ D .

2.3.1. State Space Formulation

The system evolution is represented by the cross-track error (12), which, according to (4), has the following time derivative:
e ˙ = u sin ( ψ ) + y ˙ c .
Now, assuming u = u d and ψ = ψ d , the error dynamics are given by:
e ˙ = x ˙ s s cos ( ψ d ) k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) + y ˙ c

2.3.2. Equilibrium Points

An equilibrium point is reached when e ˙ = 0 , i.e., when ψ d = ψ c . If this condition is applied to (24), it follows that e e q = 0 if x ˙ c x ˙ D , Δ 0 , k 1 > 0 , and k 2 > 0 . In order to fulfill this condition, and because x ˙ D is a value that we can set, in the case of having x ˙ D = x ˙ c the x ˙ D will be increased according to:
x ˙ D = x ˙ D , x ˙ s s R ( 0.2 , 0.2 ) x ˙ c + 0.2 , x ˙ s s [ 0.0 , 0.2 ) x ˙ c 0.2 , x ˙ s s ( 0.2 , 0.0 )

2.3.3. Setting the Gains

The definition of k 1 and k 2 corresponds to the maximum velocity and acceleration that the correction c (20) will impose on the system. Considering the characteristics of the Sparus II, a maximum correction velocity of 0.7 m / s , and a maximum correction acceleration of 0.5 m / s 2 are desirable.
In order to set k 1 , the function y = atan ( x ) is analysed. This function has a horizontal asymptote at y = π / 2 and in y = π / 2 . Taking into account the performance of Sparus II, the horizontal asymptote of (20) must be set to y = 0.7 m / s , consequently k 1 = 0.7 · 2 / π 0.4456 m / s . To compute the maximum rate of change of the correction, both k 2 and k Δ must be known. For this reason, in a first step k 2 is set as 1 m 1 .
The parameter k Δ is computed in the Appendix A, assuming k 2 = 1 m 1 , in order to fulfil the stability conditions formulated in Section 2.3.5.

2.3.4. Domain of the Controller

In order to evaluate the controller presented in this paper, a certain domain is set:
X = x ˙ c | 0.5 x ˙ c 0.5 [ m / s ] Y = y ˙ c | 0.5 y ˙ c 0.5 [ m / s ] E = e | 10 e 10 [ m ]
Ocean current velocities must be within the range of those that the Sparus II AUV can withstand. Since the docking maneuver begins after a homing process, we can ensure that the cross-track error of the AUV position belongs to the stability domain. If during the maneuver, the cross-track error falls outside of the domain, the docking maneuver is cancelled and the whole process is repeated.

2.3.5. Stability

In order to demonstrate the stability of the system using the Lyapunov Direct Method, the following Lyapunov candidate is proposed:
V ( e ) = 1 2 e 2 ,
that fulfills the first and second Lyapunov conditions: V ( 0 ) = 0 , and V ( e ) > 0 e 0 .
The first order time derivative of the Lyapunov candidate can be expressed as:
V ˙ = e e ˙ .
To demonstrate exponential stability, we show that the system fulfills the condition (following [22]):
V ˙ λ V ,
for some λ > 0 . The mathematical proof of stability is given in the Appendix A.

2.3.6. Maximum Acceleration Verification

In Section 2.3.3, a k 2 = 1 m 1 was assumed to be able to calculate a k Δ that fulfils the stability conditions. In order to verify that the obtained gains do not result in surpassing the assumed capabilities of the Sparus II, for the presented controller, an optimization problem was formulated. In the problem, a maximum rate of change of the correction (c) is searched for, to check that it is not exceeding the maximum assumed acceleration of the robot c ˙ = 0.5 m / s 2 . First, we simplify (20) as:
c = k 1 atan ( k 2 e ) ,
to avoid deriving the signum function, and because the maximum value of c ˙ is not affected. The rate of change of c is given by:
c ˙ = k 1 k 2 k 2 2 e 2 + 1 e ˙ .
The optimization problem is formulated as follows:
max x ˙ c , y ˙ c , e c ˙ s . t . x ˙ c X y ˙ c Y e E
Considering the domain set for the controller (Section 2.3.4), the parameters:
x ˙ D = 0.3 m / s k 1 = 0.4456 m / s k 2 = 1 m 1 ,
and together with (25), it can be deduced that three optimization problems must be solved for three subsets of the x ˙ c domain: X 1 = [ 0.5 , 0.1 ] , X 2 = [ 0.1 , 0.3 ] and X 3 = [ 0.3 , 0.5 ] , and the maximum of these three problems is the solution in the whole domain (26). The problem (32) was solved using the IPOPT [23] solver and yielded a result of (0.44979 m/s2).

2.3.7. Minimum Docking Distance

With the control laws defined, the minimum necessary distance to successfully perform docking, from a kinematic point of view, can be calculated, by solving (24). The domain of Section 2.3.4 is considered together with the follwoing parameters:
x ˙ D = 0.3 m / s k 1 = 0.4456 m / s k 2 = 1 m 1 k Δ = 6 m ,
applying the correction presented in (25). The maximum time to reach the equilibrium ( | e | 0.05 m ) can be calculated. This time applied to the desired docking velocity gives an approximation of the minimum necessary docking distance:
D m i n = x ˙ D t .
The minimum distance necessary to dock, in the worst case scenario, is close to 25 m. Note that the maximum velocity and acceleration in yaw have not been taken into account, because (for the set parameters) it has a low influence when the working yaw angle is reached. Note also that this is a controller defined for the docking maneuver (starting at ± 10 m in y D , with a heading favourable to the DS, i.e., 1.5 > ψ < 1.5 ), the homing maneuver will require its own additional distance.

3. Experimental Setup

In order to do a consistent comparison, the same experimental setup, as presented in [14], was used.

3.1. Hardware

The non-holonomic auv! used for this test was the torpedo-shaped Sparus II [24,25], see Figure 11. The AUV comes equipped with three thrusters, one vertical and a pair of horizontal, allowing for control in the surge, heave, and yaw. The control system supports inputs in force, velocity, and position. In this study we chose to control the vehicle in velocity, for the surge and heave, and in position, for the yaw.
The funnel-shaped DS developed by the Univeristy of Girona [12] (see Figure 12) was represented in simulation.

3.2. Simulation

In this research an advanced open-source marine robotics simulator, called Stonefish [26], was used. Full dynamics and hydrodynamics of Sparus II were simulated, including ocean current influence, together with a complete suite of its sensors, see Figure 13. Moreover, the docking station model was recreated in the simulation, with a high attention to detail, allowing for realistic assessment of docking performance. Specifically for this research, the simulator was extended to support acoustic communication and positioning devices. More details can be found in the previous work [14].

4. Performance

The objective of this section is to show the performance of the algorithm in the simulated scenario. The concept utilized to develop the high-level controller presented in this paper is to use the strong features of the Sparus II, to achieve maximum possible performance. The Sparus II AUV, as a non-holonomic robot without a rudder, requires a combined action of its two horizontal thrusters, in order to control the heading. This fact added to the non-symmetric behavior of the thrusters makes a notably lower response in the heading input than in the surge velocity.
The controller presented utilizes mainly the surge in order to correct the position of the AUV and reduce e, see Figure 14.

4.1. Docking Scenarios A and B

For the docking scenarios A and B, see Figure 3, the heading of the AUV is opposite to y ˙ c , it can be seen in the video [27]. It can be understood, analyzing the velocity vectors, i.e., x ˙ D is bigger than x ˙ c , that the surge velocity has to be positive; this being the case (and taking into consideration that we have a non-holonomic AUV), the surge has to point in the opposite direction to the y ˙ c , in order to be able to compensate for it.
A set of initial conditions are simulated (36), for kinematics (solving (3) and (4)), and plotted in Figure 15 and Figure 16. They are also simulated in dynamics (using Stonefish) and plotted in Figure 17 in order to compare both results.
x ˙ D = 0.3 m / s x ˙ c = 0.2 m / s y ˙ c = 0.2 m / s e [ 10 : 2 : 10 ] m k 1 = 0.4456 m / s k 2 = 1 m 1 k Δ = 6 m ,

4.2. Docking Scenario C

For the docking scenario C, the heading of the AUV is the same as the direction of x ˙ c , see the video [28]. Again, analyzing the velocity vectors, i.e., x ˙ D is smaller than x ˙ c , the surge velocity has to be negative, so the surge has to point in the same direction as the y ˙ c , in order to be able to compensate for it.
A set of initial conditions are simulated (37) for kinematics (solving (3) and (4)) and plotted in Figure 18 and Figure 19. They are also simulated in dynamics (using Stonefish) and plotted in Figure 20 in order to compare both results.
x ˙ D = 0.3 m / s x ˙ c = 0.5 m / s y ˙ c = 0.5 m / s e [ 10 : 2 : 10 ] m k 1 = 0.4456 m / s k 2 = 1 m 1 k Δ = 6 m ,

4.3. Entrance Scenario II

An example of the performance achieved in the entrance scenario II can be found in [29], see Figure 5.

4.4. Entrance Scenario III

An example of the performance achieved in the entrance scenario III can be found in [30], see Figure 5.

5. Results

In order to compare the new algorithm with the state-of-the-art, the data obtained in the article [14] are used. In this previous article, different algorithms, already published in the literature, were compared at different levels. Being that level 3 is the most representative for the authors’ needs, the data from this level are used to compare with the proposed algorithm, since they were tested at the same level.
As it was presented in [14], in order to estimate the quality of the docking process in a funnel-shaped DS, a novel technique based on the geometrical analysis of the entrance of the AUV was used. With this technique, we can evaluate the methods with a ’score’ that ranges from 0 to 1, with 1 being the perfect docking.
In order to represent the comparison, a Boxplot is presented in Figure 21.
The 3d! plot of the results is presented in Figure 22, and the 2d! plot in Figure 23.
A table with the numerical results compared can be seen in Table 1.

6. Discussion

The Managed Surge Controller achieved a mean score of 0.891, being the highest value for the proposed conditions. The controller is able to dock the robot in all the ocean current conditions tested in the previous study (e.g., from −0.4 m/s to 0.4 m/s on both axis). As it can be seen in Figure 21, it not only has the best mean scores, but also a low standard deviation, showing that the results are consistent.
As the score indicates and as can be further appreciated in Figure 22 and Figure 23, a good performance in all the ocean current conditions tested during the exercise was achieved. Ocean current velocity values larger than the ones studied in the previous paper were also studied in simulation, also presenting good results. However, it is not recommended to operate the Sparus II in more harsh conditions.
The Sparus II is a torpedo-shaped AUV equipped with three thrusters. It is designed to perform extended surveys, where the precision of the position is not crucial, implying that it is not capable of performing complicated maneuvers with high precision. One of the facts that is not reflected in the score is the simplicity of the maneuver, from a practical point of view. The simpler the maneuver, the easier it is to perform it, using the real vehicle. In the docking maneuver, the msc! (msc!) follows a straight-line, focusing on utilizing the horizontal thrusters optimally to work against the ocean current forces and correcting the cross-track error.
If the msc! is compared with the Sliding path controller (presented in [21] and implemented in [14]), that achieved a mean score of 0.790, one of the main differences is the developed maneuver. The Sliding path controller implies a notable precision in the maneuver to be able to enter exactly in the desired position, which is hard to achieve using the Sparus II. It is also not capable of minimizing the cross-track error when the ocean current velocity is favorable and close to or larger than the docking velocity, when it is in the approaching path. However, during the sliding path, it still can compensate for the error.

7. Conclusions

This paper has presented a novel controller to dock with a non-holonomic AUV, in a funnel-shaped DS, dealing with ocean currents. The paper proves the stability of the controller and the the expected behavior is further confirmed using a very realistic dynamic simulator. In a previous work [14], after exhaustive survey, several algorithms to face the same problem were implemented and tested in the context of the ATLANTIS project, using the Stonefish simulator. This previous work concluded with a problem to study: how to minimize the cross-track error when the ocean current velocity is favorable and close to or larger than the docking velocity. In this article, the authors have developed an algorithm capable of dealing with this problem while maintaining or improving the rest of the evaluated criteria.
The novel proposal was compared with the state-of-the-art algorithms, with the criteria developed in [14], presenting the best results. In future work, this controller will be implemented in Sparus II and tested in real scenarios. Also, a new funnel-shaped DS will be designed and built, in order to meet the requirements of the ATLANTIS project. The authors expect to be able to achieve docking without the use of vision systems; and, if it is the case, with the presence of ocean currents in the context of the project.

Author Contributions

Conceptualization J.E., methodology J.E., software J.E. and P.C., validation P.R. and P.C., formal analysis J.E., investigation J.E., resources P.R., data curation does not apply, writing-original draft preparation J.E., writing-review and editing J.E., P.C., N.P., and P.R., supervision N.P. and P.R., project administration P.R., funding acquisition P.R. All authors have read and agreed to the published version of the manuscript.

Funding

This work has been developed in the context of the ATLANTIS “The Atlantic Testing Platform for Maritime Robotics: New Frontiers for Inspection and Maintenance of Offshore Energy Infrastructures” project. Founded from the European Union’s Horizon 2020 research and innovation programme, under the Grant Agreement number 871571.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data used is already published in this paper.

Acknowledgments

The authors would like to distinguish the counsel and guidance of António Pascoal from the Institute for Systems and Robotics for the development of this work. Also, the authors would like to thank the ATLANTIS project for motivating this study and the following studies to come, related to it.

Conflicts of Interest

The autors declare no conflict of interest.

Abbreviations

D η = [ x y ψ ] T AUV position in the { D } frame (see Figure 1)
D ν 1 B = [ u v ] T Robot velocity in the { B } frame with respect to the water
D η ˙ 1 B = [ x ˙ y ˙ ] T AUV velocity in the { D } frame with respect to the ground
D η ˙ 1 D = [ x ˙ D 0 ] T Desired velocity of the robot when it impacts to the DS
D η ˙ c = [ x ˙ c y ˙ c ] T Ocean current velocity in the { D } frame
u d Desired surge velocity of the AUV
u s s Surge velocity of the AUV in the stationary state
x ˙ s s , y ˙ s s Robot velocities in the { D } frame with respect to water in the stationary state
u ˙ C Surge velocity of the AUV due to c
x ˙ C , y ˙ C Robot velocities with respect to water in the { D } frame due to c
ψ d Desired yaw angle of the AUV
ψ c Crab angle of the AUV to compensate the ocean currents
ψ c I I Maximum crab angle admissible to enter to the DS in Scenario II
ψ c I I I Maximum crab angle admissible to enter to the DS in Scenario III
β Relation between a look-ahead distance and the cross-track error
FLongitud of the twin sides of the isosceles triangle that represents
the DS, see Figure 4
F x Height of the isosceles triangle that represents the DS, see Figure 4
F y Base (half) of the isosceles triangle that represents the DS, see Figure 4
lLongitude of the AUV
y g Distance between the maneuver path and the axis of the DS
y g , I I Distance between the maneuver path and the axis of the DS in Scenario II
y g I I I Distance between the maneuver path and the axis of the DS in Scenario III
y g , M Maximum distance that can be set between the maneuver path and the axis of the DS
Δ Look-ahead distance
k Δ Gain of the look-ahead distance
eCross-track error
e ˙ Time derivative of e
e e q Cross-track error in the equilibrium
cVelocity correction of the controller
k 1 Gain to set the maximum velocity of the correction
k 2 Gain to set the maximum acceleration of the correction
VLyapunov candidate
V ˙ Time derivative of V
λ Parameter to control the exponential stability
D m i n Approximation of the minimum necessary docking distance
tTime
A 1 Declared variable for a better comprehension of the mathematical expressions
A 2 Declared variable for a better comprehension of the mathematical expressions
A 3 Declared variable for a better comprehension of the mathematical expressions

Appendix A. Exponential Stability Proof

Computing the time derivative of the Lyapunov function candidate
V ( e ) = 1 2 e 2
yields
V ˙ = e e ˙ ,
where
e ˙ = x ˙ s s cos ( ψ d ) c sin ( ψ d ) + y ˙ c ,
In what follow we show that
V ˙ λ V ,
where λ > 0 , leads to exponential stability. Substituting (A3) into (A2)
V ˙ = x ˙ s s tan ( ψ d ) + y ˙ c e c sin ( ψ d ) e ,
where
y ˙ c = y ˙ s s ,
y ˙ s s = x ˙ s s tan ( ψ c ) ,
c = k 1 atan ( k 2 e ) sign ( ψ d ) ,
ψ d = ψ c + β .
Substituting (A6), (A7), (A8), and (A9) into (A5) yields
V ˙ = x ˙ s s tan ( ψ c + β ) x ˙ s s tan ( ψ c ) e k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) e .
If the trigonometrical relation tan ( x + y ) = tan ( x ) + tan ( y ) 1 tan ( x ) tan ( y ) is applied to (A10), then
V ˙ = x ˙ s s e tan ( ψ c ) + tan ( β ) 1 tan ( ψ c ) tan ( β ) tan ( ψ c ) k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) e ,
V ˙ = x ˙ s s e tan ( β ) + tan 2 ( ψ c ) tan ( β ) 1 tan ( ψ c ) tan ( β ) k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) e ,
V ˙ = x ˙ s s e tan ( β ) 1 tan ( ψ c ) tan ( β ) [ 1 + tan 2 ( ψ c ) ] k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) e ,
where
tan ( β ) = e sign ( x ˙ s s ) k Δ ,
tan ( ψ c ) = y ˙ s s x ˙ s s .
Applying (A14) and (A15) to (A13) one obtains
V ˙ = e 2 x ˙ s s sign ( x ˙ s s ) k Δ + y ˙ s s x ˙ s s e sign ( x ˙ s s ) 1 + y ˙ s s 2 x ˙ s s 2 k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) e .
Inserting (A16) in condition (A4) yields
e 2 x ˙ s s sign ( x ˙ s s ) k Δ + y ˙ s s x ˙ s s e sign ( x ˙ s s ) 1 + y ˙ s s 2 x ˙ s s 2 k 1 atan ( k 2 e ) sign ( ψ d ) sin ( ψ d ) e λ e 2 2 ,
and, rewriting | x | x sign ( x ) , the following condition is obtained:
λ 2 | x ˙ s s | k Δ + y ˙ s s | x ˙ s s | e 1 + y ˙ s s 2 x ˙ s s 2 + 2 k 1 atan ( k 2 e ) e | sin ( ψ d ) | .
In order to fulfil the exponential stability condition, λ > 0 , (A18) can be simplified to
0 < 2 | x ˙ s s | k Δ + y ˙ s s | x ˙ s s | e 1 + y ˙ s s 2 x ˙ s s 2 + 2 k 1 atan ( k 2 e ) e | sin ( ψ d ) | ,
from which it can be obtained that
k Δ > y ˙ s s | x ˙ s s | e | x ˙ s s | k 1 atan ( k 2 e ) | sin ( ψ d ) | e y ˙ s s 2 | x ˙ s s | k 1 atan ( k 2 e ) | sin ( ψ d ) | e ,
is the new condition that must be fulfilled in order to ensure exponential stability. For the sake of clarity, the following variables are defined:
A 1 y ˙ s s | x ˙ s s | e ,
A 2 | x ˙ s s | k 1 atan ( k 2 e ) | sin ( ψ d ) | e ,
A 3 y ˙ s s 2 | x ˙ s s | k 1 atan ( k 2 e ) | sin ( ψ d ) | e ,
and consequently
k Δ > A 1 + A 2 + A 3 .
Being sign ( x ) sign ( atan ( x ) ) , implies A 2 0 and A 3 0 . Assuming | sin ( ψ d ) | = 1 is a conservative solution, consequently, the expression
k Δ > y ˙ s s | x ˙ s s | e | x ˙ s s | k 1 atan ( k 2 e ) e y ˙ s s 2 | x ˙ s s | k 1 atan ( k 2 e ) e
still represents the condition to fulfill the exponential stability for the controller. In order to calculate k Δ a nonlinear optimization problem of the following form was solved:
max x ˙ c , y ˙ c , e A 1 + A 2 + A 3 s . t . x ˙ c X y ˙ c Y e E
Considering the domain set for the controller:
X = x ˙ c | 0.5 x ˙ c 0.5 [ m / s ] Y = y ˙ c | 0.5 y ˙ c 0.5 [ m / s ] E = e | 10 e 10 [ m ] x ˙ D = 0.3 m / s k 1 = 0.4456 m / s k 2 = 1 m 1
together with (25), it can be deduced that three optimization problems have to be solved, for three subsets of the x ˙ c domain: X 1 = [ 0.5 , 0.1 ] , X 2 = [ 0.1 , 0.3 ] and X 3 = [ 0.3 , 0.5 ] , and the maximum of these three problems is the solution in the whole domain (A27). The problem (A26) was solved using the IPOPT solver and yielded a result of 5.1441. Consequently, for this domain, the controller is guaranteed to achieve exponential stability if
k Δ > 5.1441 ,
where k Δ is a value that can be set by the designer.

References

  1. Nicholson, J.; Healey, A. The Present State of Autonomous Underwater Vehicle (AUV) Applications and Technologies. Mar. Technol. Soc. J. 2013, 47, 5–6. [Google Scholar] [CrossRef]
  2. Clague, D.A.; Paduan, J.B.; Caress, D.W.; McClain, J.; Zierenberg, R.A. Lava Flows Erupted in 1996 on North Gorda Ridge Segment and the Geology of the Nearby Sea Cliff Hydrothermal Vent Field From 1-M Resolution AUV Mapping. Front. Mar. Sci. 2020, 7, 1–25. [Google Scholar] [CrossRef] [Green Version]
  3. McEwen, R.S.; Hobson, B.W.; Bellingham, J.G.; McBride, L. Docking control system for a 54-cm-diameter (21-in) AUV. IEEE J. Ocean. Eng. 2008, 33, 550–562. [Google Scholar] [CrossRef]
  4. Yang, C.; Peng, S.; Fan, S.; Zhang, S.; Wang, P.; Chen, Y. Study on docking guidance algorithm for hybrid underwater glider in currents. Ocean Eng. 2016, 125, 170–181. [Google Scholar] [CrossRef]
  5. Kawasaki, T.; Fukasawa, T.; Noguchi, T.; Baino, M. Development of AUV “Marine Bird” with underwater docking and recharging system. In Proceedings of the SSC 2003-3rd International Workshop on Scientific Use of Submarine Cables and Related Technologies, Tokyo, Japan, 25–27 June 2003; pp. 166–170. [Google Scholar] [CrossRef]
  6. Singh, H.; Bellingham, J.G.; Hover, F.; Lerner, S.; Moran, B.A.; Von Der Heydt, K.; Yoerger, D. Docking for an autonomous ocean sampling network. IEEE J. Ocean. Eng. 2001, 26, 498–514. [Google Scholar] [CrossRef]
  7. Stokey, R.; Allen, B.; Austin, T.; Goldsborough, R.; Forrester, N.; Purcell, M.; Von Alt, C. Enabling technologies for REMUS docking: An integral component of an autonomous ocean-sampling network. IEEE J. Ocean. Eng. 2001, 26, 487–497. [Google Scholar] [CrossRef]
  8. Feezor, M.D.; Sorrell, F.Y.; Blankinship, P.R.; Bellingham, J.G. Autonomous underwater vehicle homing/docking via electromagnetic guidance. IEEE J. Ocean. Eng. 2001, 26, 515–521. [Google Scholar] [CrossRef]
  9. Podder, T.; Sibenac, M.; Bellingham, J. AUV docking system for sustainable science missions. Proc. -IEEE Int. Conf. Robot. Autom. 2004, 2004, 4478–4485. [Google Scholar] [CrossRef]
  10. Bellingham, J.G. Autonomous Underwater Vehicle Docking. In Springer Handbook of Ocean Engineering; Springer: Cham, Switzerland, 2016; Chapter 16; pp. 387–406. [Google Scholar] [CrossRef]
  11. Yazdani, A.M.; Sammut, K.; Yakimenko, O.; Lammas, A. A survey of underwater docking guidance systems. Robot. Auton. Syst. 2020, 124. [Google Scholar] [CrossRef]
  12. Palomeras, N.; Vallicrosa, G.; Mallios, A.; Bosch, J.; Vidal, E.; Hurtos, N.; Carreras, M.; Ridao, P. AUV homing and docking for remote operations. Ocean Eng. 2018, 154, 106–120. [Google Scholar] [CrossRef]
  13. Pinto, A.M.; Marques, J.V.; Campos, D.F.; Abreu, N.; Matos, A.; Jussi, M.; Berglund, R.; Halme, J.; Tikka, P.; Formiga, J.; et al. ATLANTIS - The Atlantic Testing Platform for Maritime Robotics. In Proceedings of the Oceans Conference Record (IEEE), San Diego, CA, USA, 20–23 September 2021; pp. 1–5. [Google Scholar] [CrossRef]
  14. Esteba, J.; Cieslak, P.; Palomeras, N.; Ridao, P. Docking of Non-holonomic AUVs in Presence of Ocean Currents: A Comparative Survey. IEEE Access 2021, 9, 86607–86631. [Google Scholar] [CrossRef]
  15. Park, J.Y.; Jun, B.H.; Lee, P.M.; Lim, Y.K.; Oh, J.H. Docking problem and guidance laws considering drift for an underactuated AUV. In Proceedings of the OCEANS 2011 IEEE-Spain, Santander, Spain, 6–9 June 2011; pp. 1–7. [Google Scholar] [CrossRef]
  16. Hobson, B.W.; McEwen, R.S.; Erickson, J.; Hoover, T.; McBride, L.; Shane, F.; Bellingham, J.G. The development and ocean testing of an AUV docking station for a 21” AUV. In Proceedings of the Oceans Conference Record (IEEE), Vancouver, BC, Canada, 29 September–4 October 2007; pp. 1–6. [Google Scholar] [CrossRef]
  17. Teo, K.; An, E.; Beaujean, P.P.J. A robust fuzzy autonomous underwater vehicle (AUV) docking approach for unknown current disturbances. IEEE J. Ocean. Eng. 2012, 37, 143–155. [Google Scholar] [CrossRef]
  18. Teo, K.; Goh, B.; Chai, O.K. Fuzzy Docking Guidance Using Augmented Navigation System on an AUV. IEEE J. Ocean. Eng. 2015, 40, 349–361. [Google Scholar] [CrossRef]
  19. Park, J.Y.; Jun, B.H.; Lee, P.M.; Oh, J.H.; Lim, Y.K. Underwater docking approach of an under-actuated AUV in the presence of constant ocean current. IFAC Proc. Vol. (IFAC-Pap.) 2010, 43, 5–10. [Google Scholar] [CrossRef]
  20. Park, J.Y.; Jun, B.H.; Kim, K.; Lee, P.M.; Oh, J.H.; Lim, Y.K. Improvement of vision guided underwater docking for small AUV ISiMI. In Proceedings of the MTS/IEEE Biloxi-Marine Technology for Our Future: Global and Local Challenges, OCEANS 2009, Biloxi, MS, USA, 26–29 October 2009; pp. 1–5. [Google Scholar] [CrossRef]
  21. Sans-Muntadas, A.; Pettersen, K.Y.; Brekke, E.; Henriksen, V.F. A hybrid approach to underwater docking of AUVs with cross-current. In Proceedings of the OCEANS 2016 MTS/IEEE Monterey, OCE 2016, Monterey, CA, USA, 19–23 September 2016; pp. 1–7. [Google Scholar] [CrossRef] [Green Version]
  22. Khalil, H.K. Nonlinear Systems. In Attractivity and Bifurcation for Nonautonomous Dynamical Systems. Lecture Notes in Mathematics; Springer: Berlin/Heidelberg, Germny, 2007. [Google Scholar] [CrossRef]
  23. Wächter, A.; Biegler, L.T. Catalogue of an Exhibition of the Works of Dante Alighieri March to October 1909; Order of the Governors: Santa Fe, Mexico, 2006; Volume 57, pp. 25–57. [Google Scholar]
  24. Carreras, M.; Candela, C.; Ribas, D.; Mallios, A.; Magí, L.L.; Vidal, E.; Palomeras, N.; Ridao, P. Sparus {II}, design of a lightweight hovering {AUV}. In Proceedings of the 5th International Workshop on Marine Technology, Martech’13, Girona, Spain, 19–20 June 2013; pp. 152–155. [Google Scholar]
  25. Carreras, M.; Hernandez, J.D.; Vidal, E.; Palomeras, N.; Ribas, D.; Ridao, P. Sparus II AUV - A Hovering Vehicle for Seabed Inspection. IEEE J. Ocean. Eng. 2018, 43, 344–355. [Google Scholar] [CrossRef]
  26. Cieslak, P. Stonefish: An Advanced Open-Source Simulation Tool Designed for Marine Robotics, with a ROS Interface. In Proceedings of the OCEANS 2019-Marseille, Marseille, France, 17–20 June 2019; pp. 1–6. [Google Scholar] [CrossRef]
  27. Esteba, J. Performance Example 0202. Available online: https://youtu.be/Ag0Hj9vIdsE (accessed on 1 September 2021).
  28. Esteba, J. Performance Example 0505. Available online: https://youtu.be/cnuAa7iNAXs (accessed on 1 September 2021).
  29. Esteba, J. Performance Example 0202. Available online: https://youtu.be/SJBucM-229M (accessed on 1 September 2021).
  30. Esteba, J. Performance Example 0202. Available online: https://youtu.be/M943vUTJPuk (accessed on 1 September 2021).
Figure 1. Geometrical representation of basic variables. Two different reference frames are presented, the { D } frame located at the position of the DS, and the { B } frame attached to the AUV body. The velocity in the { D } frame are symbolised by x ˙ and y ˙ with respect to the ground, and the velocities in the { B } frame are, with respect to the water, represented by u and v.
Figure 1. Geometrical representation of basic variables. Two different reference frames are presented, the { D } frame located at the position of the DS, and the { B } frame attached to the AUV body. The velocity in the { D } frame are symbolised by x ˙ and y ˙ with respect to the ground, and the velocities in the { B } frame are, with respect to the water, represented by u and v.
Sensors 23 00241 g001
Figure 2. Geometrical representation of basic velocities.
Figure 2. Geometrical representation of basic velocities.
Sensors 23 00241 g002
Figure 3. Possible docking scenarios.
Figure 3. Possible docking scenarios.
Sensors 23 00241 g003
Figure 4. Geometrical problem simplification.
Figure 4. Geometrical problem simplification.
Sensors 23 00241 g004
Figure 5. Successful entrance scenarios.
Figure 5. Successful entrance scenarios.
Sensors 23 00241 g005
Figure 6. Path concept representation.
Figure 6. Path concept representation.
Sensors 23 00241 g006
Figure 7. Gap calculus concept.
Figure 7. Gap calculus concept.
Sensors 23 00241 g007
Figure 8. Maximum entrance Scenario III gap calculus concept.
Figure 8. Maximum entrance Scenario III gap calculus concept.
Sensors 23 00241 g008
Figure 9. Beta concept representation.
Figure 9. Beta concept representation.
Sensors 23 00241 g009
Figure 10. Geometrical representation of corrected velocities. Here, x ˙ s s , and y ˙ s s are through water velocities of the AUV in the steady state in the { D } frame (i.e., when e is zero); u s s the through water velocity of the AUV in the steady state in the { D } frame; and x ˙ C , y ˙ C , and u C the velocities due to c.
Figure 10. Geometrical representation of corrected velocities. Here, x ˙ s s , and y ˙ s s are through water velocities of the AUV in the steady state in the { D } frame (i.e., when e is zero); u s s the through water velocity of the AUV in the steady state in the { D } frame; and x ˙ C , y ˙ C , and u C the velocities due to c.
Sensors 23 00241 g010
Figure 11. Photography of the Sparus II.
Figure 11. Photography of the Sparus II.
Sensors 23 00241 g011
Figure 12. Photography of the docking station.
Figure 12. Photography of the docking station.
Sensors 23 00241 g012
Figure 13. Conceptual representation of the hardware-in-the-loop simulation. The Sparus II architecture is in communication with the Stonefish simulator, which disposes of a model of the DS, the AUV with its sensors and thrusters [25], and the representation of the underwater environment.
Figure 13. Conceptual representation of the hardware-in-the-loop simulation. The Sparus II architecture is in communication with the Stonefish simulator, which disposes of a model of the DS, the AUV with its sensors and thrusters [25], and the representation of the underwater environment.
Sensors 23 00241 g013
Figure 14. Conceptual performance representation.
Figure 14. Conceptual performance representation.
Sensors 23 00241 g014
Figure 15. Kinematic simulation for the conditions (36) relative to position. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Figure 15. Kinematic simulation for the conditions (36) relative to position. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Sensors 23 00241 g015
Figure 16. Kinematic simulation for the conditions (36) relative to time. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Figure 16. Kinematic simulation for the conditions (36) relative to time. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Sensors 23 00241 g016
Figure 17. Dynamic simulation for the conditions (36). The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Figure 17. Dynamic simulation for the conditions (36). The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Sensors 23 00241 g017
Figure 18. Kinematic simulation for the conditions (37) relative to position. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Figure 18. Kinematic simulation for the conditions (37) relative to position. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Sensors 23 00241 g018
Figure 19. Kinematic simulation for the conditions (37) relative to time. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Figure 19. Kinematic simulation for the conditions (37) relative to time. The colored lines represent the different simulations and the green discontinuous line the acceptance tolerance.
Sensors 23 00241 g019
Figure 20. Dynamic simulation for the conditions (37). The color line represent the different simulations and the green discontinuous line the acceptance tolerance.
Figure 20. Dynamic simulation for the conditions (37). The color line represent the different simulations and the green discontinuous line the acceptance tolerance.
Sensors 23 00241 g020
Figure 21. Score summary comparison between the different methods, taking the results of [14], using a box plot.
Figure 21. Score summary comparison between the different methods, taking the results of [14], using a box plot.
Sensors 23 00241 g021
Figure 22. 3D Geometrical analysis for the Managed surge controller.
Figure 22. 3D Geometrical analysis for the Managed surge controller.
Sensors 23 00241 g022
Figure 23. 2D Geometrical analysis for the Managed surge controller.
Figure 23. 2D Geometrical analysis for the Managed surge controller.
Sensors 23 00241 g023
Table 1. Score results comparison between the different methods, taking the results of the level 3 of [14].
Table 1. Score results comparison between the different methods, taking the results of the level 3 of [14].
MethodScore
MeanStd
Managed surge controller0.8910.013
PGCC controller0.2240.008
Cross-track controller0.4030.019
Fuzzy controller0.1280.014
Touchdown alignment controller0.3450.022
Sideslip controller0.3110.021
Sliding path controller0.7900.025
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

Esteba, J.; Cieślak, P.; Palomeras, N.; Ridao, P. Managed Surge Controller: A Docking Algorithm for a Non-Holonomic AUV (Sparus II) in the Presence of Ocean Currents for a Funnel-Shaped Docking Station. Sensors 2023, 23, 241. https://doi.org/10.3390/s23010241

AMA Style

Esteba J, Cieślak P, Palomeras N, Ridao P. Managed Surge Controller: A Docking Algorithm for a Non-Holonomic AUV (Sparus II) in the Presence of Ocean Currents for a Funnel-Shaped Docking Station. Sensors. 2023; 23(1):241. https://doi.org/10.3390/s23010241

Chicago/Turabian Style

Esteba, Joan, Patryk Cieślak, Narcís Palomeras, and Pere Ridao. 2023. "Managed Surge Controller: A Docking Algorithm for a Non-Holonomic AUV (Sparus II) in the Presence of Ocean Currents for a Funnel-Shaped Docking Station" Sensors 23, no. 1: 241. https://doi.org/10.3390/s23010241

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