Next Article in Journal
Diversity of Microbial Communities Associated with Epilithic Macroalgae in Different Coral Reef Conditions and Damselfish Territories of the Gulf of Thailand
Next Article in Special Issue
A Fault Diagnosis Method for the Autonomous Underwater Vehicle via Meta-Self-Attention Multi-Scale CNN
Previous Article in Journal
A Multi-Beam Seafloor Constant False Alarm Detection Method Based on Weighted Element Averaging
Previous Article in Special Issue
Analysis and Experimental Research on Efficiency Characteristics of a Deep-Sea Hydraulic Power Source
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Visual Odometry-Based Robust Control for an Unmanned Surface Vehicle under Waves and Currents in a Urban Waterway

by
David Cortes-Vega
,
Hussain Alazki
* and
Jose Luis Rullan-Lara
Faculty of Engineering, Universidad Autónoma del Carmen, Carmen 24180, Campeche, Mexico
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2023, 11(3), 515; https://doi.org/10.3390/jmse11030515
Submission received: 16 August 2022 / Revised: 12 September 2022 / Accepted: 29 September 2022 / Published: 27 February 2023
(This article belongs to the Special Issue New Challenges and Trends in Marine Robotics)

Abstract

:
This paper proposes the study of a robust control scheme for an Unmanned Surface Vehicle (USV) in a urban waterway using Visual Odometry (VO) for position estimation of the vehicle instead of traditional sensors. For different applications, a USV is required to operate in autonomous navigation mode and under various disturbances inherent to its environment as currents and waves. To achieve efficient operation, a robust control scheme is required to cope with such disturbances. The autonomous navigation is achieved by using VO to estimate the vehicle’s position for denied Global Positioning Systems (GPS) environments. A robust control scheme based on Sliding Modes (SM) control theory is designed and its convergence is guaranteed by means of Lyapunov analysis. The tracking capabilities under disturbance conditions using VO for position estimation are verified in simulation using the virtual world tool from Matlab and Simulink.

1. Introduction

In the last decade, autonomous vehicles (AV) have attracted the attention of researchers around the world, owing to their broad range of possible applications. Unmanned Surface Vehicles (USV) are a particular class of AV which operate on the surface of water. These are commonly small boats used mainly for testing control algorithms, or in practical applications as surveillance or data acquisition in water environments in which it is not possible to send a manned vessel [1]. Other applications for USV include bathymetry, environmental monitoring and disaster management, which can be found in [2,3,4].
The dynamical model of USV is essential for the study and design of control systems that fulfill the desired objectives [5,6,7]. This dynamical model is commonly developed through kinematic and kinetic studies based on the Newton–Euler approach, which allows the consideration of forces and moments acting over the vehicle in each degree of freedom.
To guarantee efficient navigation of a USV, one of the most important parts is the autonomous navigation system used to perform sensing and perception tasks, path planning and control. The control module is designed to perform robust tracking of the desired trajectories. Hence, such robust controller design is an essential stage, since the USVs face challenges such as uncertainties, external disturbances, nonlinearities and saturation, among others. In [8], a trajectory tracking control problem for USVs with motion constraints and varying ocean currents is presented, based on backstepping and a normalization technique. To cope with actuator saturation, a saturation tracking controller based on generalized saturation functions is developed in [9]. Meanwhile, a multilayer neural network—together with adaptive control techniques—is used to obtain robust operation against unmodeled dynamics and environmental disturbances induced by waves and ocean currents. In [10] a disturbance observer-based control is developed to estimate the unknown environmental disturbances affecting the USV with a tracking control strategy for optimization of energy consumption and enhancement of tracking performance via the port-controlled Hamiltonian techniques. An adaptive sliding modes control scheme for USV modeling uncertainties and input saturation is presented in [11], in which a neural network is used to approximate unmodeled dynamics and a hyperbolic tangent function is considered to handle the chattering phenomenon.
Recently, Unmanned Surface Vehicles have had integrated cameras mounted on their structure to provide information about its surrounding environment. These cameras can be used to complement measurements taken by traditional sensors, or even substitute them; detect floating objects on the water surface; and perform collision avoidance or path planning tasks. Among the different applications for such visual input, the estimation of motion is an important task for autonomous navigation of Unmanned Autonomous Vehicles (UAV). The process of estimating the motion of a vehicle using data provided by a single or multiple cameras is called visual odometry (VO) [12]. In VO, the changes present in recorded images produced by motion are used to compute the incremental pose estimate between frames, with the consideration of a static and textured scene, sufficient illumination in the environment and enough scene overlap between consecutive frames [13]. Visual Odometry can be performed for stereo or monocular configurations. Stereo VO accounts for the case in which the relative 3D position of the features is directly measured by triangulation at every vehicle location and used to derive the relative motion, while in monocular VO, the relative motion and 3D structure must be computed from 2D bearing data. The main problem in monocular VO is that motion can only be recovered up to a scale factor, and the absolute scale should be determined from direct measurements, motion constraints or using the trifocal tensor [14]. Most applications of VO are developed for ground vehicles; however, there exists an increasing interest for applications in aerial and marine vehicles. The use of VO in marine environments is a good alternative to GPS-based systems, due to the existence of GPS-denied regions—for instance, in underwater environments, where the position estimation using VO allows the autonomous navigation of the vehicle [15,16]. One outstanding example of such an application can be found in the motion estimation of the NASA Mars Rovers as a supplement to dead reckoning [17]. In [18], VO is used in autonomous underwater vehicles for coral-reef monitoring tasks.
Another area of application of USVs is navigation through urban waterways. Urban waterways are defined as waterways and water bodies located near urban environments, including natural features (e.g., wetlands, lakes, rivers and estuaries) and those constructed as part of a drainage system. Such environments are characterized by having sceneries with several objects and textures, which allow the use of motion estimation algorithms as VO. The research on USV in urban waterways is focused on transportation and water quality monitoring. In [19] a semi-immersible USV is developed for navigation in swallow waters as ports, rivers or lakes for monitoring tasks. A cargo transport task in urban waterways networks is analyzed in [20] with a cooperative multi-vessel system. In [21], a USV robot is developed in order to act as a measurement tool to monitor water pollution in a Peruvian lake due to the presence of a hydroelectric power plant, mining industries and touristic activities near the surroundings. A localization system based on an Extended Kalman Filter for A USV in urban waterways is proposed in [22], the system integrates VO with LiDAR to achieve autonomous navigation and trajectory tracking without using GPS measurements.
There exist several methods for motion estimation and robust control of marine vehicles, but few works address the integration of computer vision algorithms and control schemes for Unmanned Surface Vehicles [23,24]. Hence, this paper proposes the generation of a robust controller for a USV to perform trajectory tracking using a vision algorithm to estimate the vehicle’s position instead of traditional sensors in urban waterways environments, mainly rivers or lakes. The controller is synthesized using sliding modes techniques, which provide robustness against environmental disturbances such as as currents and waves, and a monocular VO scheme is used to estimate the vehicle’s position. To verify the effectiveness of the proposal, a simulation platform is developed using the virtual world editor from Matlab.
The remainder of this paper is organized as follows: Section 2 presents the system modeling, including the USV and environmental disturbances; Section 3 shows the proposed robust control based on visual position estimation detailing the VO algorithm and the robust control scheme based on sliding modes. Finally, Section 4 and Section 5 illustrate the results and main conclusions of this work.

2. System Modeling

2.1. USV Model

The mathematical model of the considered USV is obtained through static and dynamic principles on a local reference frame in order to take advantage of the geometrical properties of the vehicle. The model is based on the concept of conservation of linear and angular moment, which is directly related to Newton’s second law. The motion of a USV considering six degrees of freedom is defined by a translation motion (position) in three directions: surge, sway and heave; and by a rotation motion (orientation) about three axes: roll, pitch and yaw. The interested reader can find a highly detailed explanation about the modeling process in [5].
Consider the following vectors
η = [ η 1 η 2 ] T = [ x y z ϕ θ ψ ] T
v = [ u v w p q r ] T
where η stands for the vehicle’s position and attitude vector with coordinates on the inertial frame (earth fixed) and v represents the linear and angular velocity measured in the referential frame (body fixed). The model containing the kinematic and kinetic parts is given by
η ˙ = J ( η 2 ) v
M v ˙ + C ( v ) v + D ( v ) v = τ E + τ
in which M is the system inertia matrix, C ( v ) is the Coriolis centripetal matrix, τ E are the forces and moments related to environmental disturbances, τ is the vector containing the external forces and moments acting on the rigid body and D ( v ) is the matrix related to hydrodynamic drag, including linear and quadratic terms. On the other hand, J ( η 2 ) is a diagonal matrix formed by two rotation matrices J 1 ( η 2 ) and J 2 ( η 2 ) , defined as
J 1 ( η 2 ) = c ψ c θ s ψ c ϕ + c ψ s θ s ϕ s ψ s ϕ + c ψ c ϕ c θ s ψ c θ c ψ c ϕ + s ϕ s θ s ψ c ψ s ϕ + s θ s ψ c ϕ s θ c θ s ϕ c θ c ϕ
J 2 ( η 2 ) = 1 s ϕ t θ c ϕ t θ 0 c ϕ s ϕ 0 s ϕ c θ c ϕ c θ
where J 1 ( η 2 ) 1 = J 1 ( η 2 ) T O S ( 3 ) and O S ( 3 ) : Orthogonal Special group (three dimensions) and the nomenclature c , s , t stands for c o s ( · ) , s i n ( · ) and t a n ( · ) , respectively.
The inertial and referential frames are illustrated in Figure 1, where r and r G are the vectors that connect the center of gravity with the origin of the inertial and referential frame, respectively, and r O is the vector that connects the origins of the referential and inertial frames.
A more detailed model can be obtained considering the following description for system variables: M = M R B + M A and C ( v ) = C R B ( v ) + C A ( v ) , where M R B and C R B ( v ) are the inertia and Coriolis/centripetal force matrices while M A and C A ( v ) represent the added mass matrices due to the inertia of liquid surrounding the rigid body.
When the vehicle moves through an ideal fluid M R B = M R B T > 0 and M A = M A T . The Coriolis and centripetal force matrix C ( v ) is skew-symmetric, and D ( v ) is nonsymmetric and strictly positive. It is worth noting that matrix J 2 ( η 2 ) shows a singularity at θ = ± 90 , but it is not a problem for ships due to the limited working space for pitch angle, which is way smaller than such a value.
The USV’s motions in pitch, heave and roll can be neglected in comparison to the other motions for conventional surface ships, especially under the consideration of calm water surface; thus, ship motion modeling can be considered with a reduced number of degrees of freedom [25,26].

2.2. Environmental Disturbances

The mathematical representation of the main disturbances found in water environments is introduced to analyze its effects in the USV movement. Such disturbances are related to wind, waves and currents. The wind and waves are usually included in the dynamical model by superposition; that is,
τ E = τ E w a + τ E w i
where τ E w a and τ E w i are the forces and moments of waves and wind, respectively. In this work, the wind effects are neglected and only the waves’ effects are considered.
The marine waves are a phenomenon which is present in almost any water zone, to a lesser or greater extent, described as undulation produced over the water surface. The modeling and generation process of waves have been addressed in the literature for different purposes, as shown in [27,28], and for studies about energy conversion, such as [5,29]. In this paper, the wave disturbances are modeled using a first-order model of a wave.
Let us define the slope of the wave s i ( t ) for the i-th component as
s i ( t ) = A i 2 π λ i s i n ( ω e i t + ϕ i )
where A i and λ i are the wave amplitude and length, respectively, ω e i is the encounter frequency and ϕ i is a random phase uniformly distributed and constant with time in [ 0 , 2 π ) which corresponds to the component of the i wave. The vector of forces and moments of waves τ E w a is given by [30]
τ E w a = i = 1 N ρ g B L T c o s ( β ) s i ( t ) i = 1 N ρ g B L T s i n ( β ) s i ( t ) 0 0 0 i = 1 N 1 24 ρ g B L ( L 2 B 2 ) s i n ( 2 β ) s i 2 ( t )
where ρ represents the water density, g the gravity, B, T and L the width, craft and length of the vehicle, respectively. The angle β is the encounter angle of the vehicle, which is defined as the angle formed between the stern line and the incident direction of the waves. The effect of this disturbance on the vehicle can be appreciated in the drift when sailing at low speeds.
The last considered disturbance is the one caused by currents. Such currents are mainly produced by variations in temperature, density and salinity between different water volumes, but can also originate from the wind friction at the water’s surface. This kind of disturbance is characterized by water displacements produced inside the water body.
Let the generalized velocity vector v be replaced with the hydrodynamic terms of the vector of relative velocities, as follows
v r = v v c
where v c R 6 is the velocity of the currents with respect to the reference frame. Considering an irrotational fluid, this vector can be defined as [31]
v c = u c b c w c 0 0 0 T
with v c b = u c b c w c T which is given by
v c b = J 1 ( η 2 ) T v c E
where v c E R 3 represents the current velocity vector measured in the inertial frame.
Finally, the complete dynamic model considering the disturbances associated with currents can be written as
η ˙ = J ( η 2 ) v r + v c E 0
M v ˙ r + C ( v r ) v r + D ( v r ) v r = τ + τ E
Owing to the fact that major changes in water environments’ characteristics are related to the time of year, parameters such as velocities and directions of real environmental disturbances are usually described as stationary. In this work, first order Gauss–Markov processes are used for the generation of waves and current parameters. We define the speed of currents as V c , the angle of currents relative to the inertial frame as α c and the attack angle of currents relative to the bow as β c [31,32]. Then, the corresponding Gaussian-Markov processes are defined as
V ˙ c + μ 1 V c = w 1
α ˙ c + μ 2 α c = w 2
β ˙ c + μ 3 β c = w 3
with w i ( i = 1 , 2 , 3 ) representing zero mean quasi-Gaussian white noise processes and μ i 0 ( i = 1 , 2 , 3 ) constants. A 3D current model can be obtained by transformation of current speed ( V c ) and directions ( α c , β c ) from flow axes to North-Eastern velocities through the following relation
v c E = V c c o s ( α c ) c o s ( β c ) V c s i n ( β c ) V c s i n ( α c ) c o s ( β c )
For a study in the horizontal plane only, considering α c = 0 and ϕ = θ = 0 , (18) can be reduced to a 2D current model as
u c = V c c o s ( β c ψ )
v c = V c s i n ( β c ψ )
Additionally, the direction of the current can be fixed by defining constant values for α c and β c .

3. Robust Control Based on Visual Position Estimation

This section details the proposed robust control scheme based on visual position estimation, where sliding modes theory is used to synthesize the robust controller and a monocular VO technique is selected to perform position estimation at every instant. Such a configuration is illustrated in Figure 2.

3.1. VO Mathematical Background

This section presents some important concepts associated with the VO technique, providing the basis for the position estimation process.
Monocular VO schemes process a stream of images provided by a single camera to estimate its motion. The image points representation is performed using homogeneous vectors q R 3 and q R 3 in the first and second view, respectively. On the other hand, the points in global coordinates are represented by homogeneous vectors Q R 4 . A perspective view is described using a camera matrix P R 3 × 4 , which indicates the image projection q P Q , where the symbol ∼ defines equality to scale. To represent a view with a finite projection center, the matrix P = K [ R | t ] is used, where R is a rotation matrix, t = [ t x , t y , t z ] T is the translation vector and K R 3 × 3 is a calibration matrix containing the camera’s intrinsic parameters [14,33]. The consideration of affine transformations formed by a rotation and translation, as described before, leads to good results when the surface is static. However, it is worth considering that the effect of waves in the water surface can lead a USV to move in such a way that the corresponding transformation is not affine any more, and some distortion in the scaling can arise. This situation may affect the motion estimation but can be avoided using sensor data to recover the appropriate scale [13].
Consider camera matrices for both views represented as K 1 [ I | 0 ] and K 2 [ R | t ] . Let t ^ denote the skew symmetric matrix
t ^ = 0 t z t y t z 0 t x t y t x 0
so that t ^ x = t × x for all x. Then, the fundamental matrix is
F = K 2 T t ^ R K 1 1
The epipolar constraint determining the relation between points q and q can be described in terms of the fundamental matrix by
q F q = 0
When the camera is calibrated, matrices K 1 and K 2 are known, so that the epipolar constraint can be rewritten as
q E q = 0
where the matrix E is called the essential matrix.

3.2. Monocular Visual Odometry

This section describes the main components of the VO technique, focusing on the monocular scheme with 2D–2D feature correspondences. Figure 3 presents the main steps involved in the visual odometry process.
The monocular VO technique is based on the geometric relations between two images taken by the same camera. Consider a pair of images I k and I k 1 from a calibrated camera; the geometric relations for this case are described by the essential matrix E. This matrix contains the camera motion parameters up to an unknown scale for the translation, and can be defined as
E = t ^ R
The essential matrix can be computed using 2D to 2D feature correspondences. In this work, Speeded Up Robust Features (SURF) are selected, but other types can also be used, and Random Sampling Consensus (RANSAC) can be applied for outlier rejection [34]. Then, the translation and rotation for each camera pose can be obtained directly from E. To this end, consider
D = 0 1 0 1 0 0 0 0 1
and let the singular value decomposition of the essential matrix be E U d i a g ( 1 , 1 , 0 ) V T , where U and V are chosen, such that d e t ( U ) > 0 and d e t ( V ) > 0 . Then t t u [ u 13 u 23 u 33 ] T and R is equal to R a U D V T or R b U D T V T [14,35].
Any combination of R and t satisfying the above conditions satisfies the epipolar constraint (24). The first camera matrix is defined as [ I | 0 ] , while t is considered of unit length. Under such considerations, there are four possible solutions for the second camera matrix: P A [ R a | t u ] , P B [ R a | t u ] , P C [ R b | t u ] , P D [ R b | t u ] . Only one of these solutions corresponds to the true configuration, where the point is in front of the camera. The remaining ones correspond to the twisted pair obtained by rotating one of the views 180 degrees around the baseline, and reflections of the true configuration and the twisted pair. In order to determine which choice corresponds to the true configuration, the cheirality constraint is imposed, and one point is sufficient to resolve the ambiguity [14].
The final steps concerns a scale adjustment of the translation vector which can be performed based on sensor data (e.g., measuring the size of an element in the scene), motion constraints, or from the integration with other sensors and concatenation of the transformations to recover the incremental motion of the camera.
The algorithm which synthesize the above concepts to perform monocular VO is described below:
1.
Capture a new input image I k .
2.
Detection and matching of features between the new ( I k ) and old ( I k 1 ) image.
3.
Compute fundamental matrix F with RANSAC for outlier rejection.
4.
Compute essential matrix from fundamental matrix.
5.
Extract R and t from essential matrix using SVD.
6.
Use cheirality constraint to obtain the true configuration.
7.
Perform scale adjustment.
8.
Concatenate transformation.
9.
Repeat from step 1.

3.3. Control Design

In order to fulfill the main objective of autonomous navigation, an autonomous mobile system, requires another system that dictates where it should go, with appropriate speed and direction that satisfies the desired performance. Such systems are known as Guidance, Navigation and Control (GNC) systems.
It is desirable that the perturbed system (14) possesses robustness against the disturbances described previously; it is also desired that the control scheme has a robust performance in the presence of modeling errors and parameter uncertainty. To achieve such robust performance, different approaches have been applied. In [27], a nonlinear adaptive controller is used for maneuvering with experimental tests in a laboratory. The same technique is used in [36] but for achieving path-following objectives.
Another control technique that can provide a robust performance, and has been broadly applied to several problems, is Sliding Modes Control (SMC). The main properties of this technique are accuracy and robustness, along with ease of implementation and tuning. The basic idea behind SMC systems is to bring the states of the system to a particular predefined surface in the state space, which is called the sliding surface. Once the states reach the sliding surface, the controller guarantees that states remain in a close neighborhood of the surface. Hence, SMC design can be divided into two main parts; the first involves the design of an appropriate sliding surface, such that the sliding motion satisfies the design specifications. The second part is devoted to the selection of a control law that makes the switching surface attractive for system states. More details on the complete design procedure can be found in [37].
In this section, a control law based on SMC is designed. First, a sliding surface function is proposed as
σ ( e ) = c e + e ˙ , c > 0
where c is a constant, and the errors and its derivatives are defined as
e = η d η
e ˙ = η ˙ d η ˙
where the desired states η d = x d y d z d T and the current states η = x y z T .
Now, let us rewrite (14) in a more suitable form as
v ˙ r = M 1 f ( v r ) + τ E + M 1 τ
where the elements associated with Coriolis, centripetal and damping forces are contained in the function
f ( v r ) = C ( v r ) v r + D ( v r ) v r
substituting (13) in (29), the error dynamics results in
e ˙ = η ˙ d J ( η 2 ) v r v c E
e ¨ = η d ¨ J ( η ˙ 2 ) v r J ( η 2 ) v ˙ r v ˙ c E
Since it is treated with a vector of irrotational constant currents, the derivative of the vector is
v ˙ C E = 0

Stability Analysis

Consider a candidate Lyapunov function V defined as
V = 1 2 σ 2
In order to achieve asymptotic stability in σ = 0 , the condition V ˙ < 0 for σ 0 must be satisfied. To prove this condition, the derivative of (35) is obtained as
V ˙ = σ σ ˙ = σ [ η ¨ d + η ˙ d J ( η ˙ 2 ) + J ( η 2 ) v r J ( η 2 ) M 1 ( f ( v r ) τ E ) + J ( η 2 ) M 1 τ ]
and defining
ϕ ( η 2 , v r ) = η ¨ d + η ˙ d J ( η 2 ˙ ) + J ( η 2 ) v r J ( η ) M 1 ( f ( v r ) τ E )
Then, Equation (36) can be rewritten as
V ˙ = σ ϕ ( η 2 , v r ) J ( η 2 ) M 1 τ
considering the following relation
τ = M J T ( η 2 ) u
The derivative of V can be defined as
V ˙ = σ ( L + u )
where L = ϕ ( η 2 , v r ) contains the undesirable dynamics of the system. A control law based on sliding modes is defined as
u = K s i g n ( σ )
with
s i g n ( σ ) = 1 i f σ > 0 1 i f σ < 0 [ 1 , 1 ] i f σ = 0
and substituting into (40), we obtain the following inequality
V ˙ σ L σ K = σ ( L K )
In order to obtain asymptotic stability in σ = 0 , consider the following relation
V ˙ α 2 V , α > 0
Finally, substituting (35) in (44) and matching with (43), its easily shown that the gain K for ensuring asymptotic stability can be obtained as
K = α + L

4. Results

In order to show the performance of the proposed VO-based robust control, a simulation test was developed using the virtual world toolbox from Matlab. This tool allows the creation of a virtual environment which can be used to perform the position estimation. The video is acquired using a Kinect V2 sensor from Microsoft and its corresponding Matlab toolbox, which enables the use of this device together with Simulink and virtual world. The ship’s parameters correspond to a catamaran configuration prototype developed for experimental tests. The matrices of such prototype and the disturbance vector for waves are:
M = 13.117 0 0 0 13.117 0 0 0 3.653
C ( v ) = 0 0 13.117 v 0 0 13.117 u 13.117 v 13.117 u 0
D ( v ) = 14.1041 u 0.5262 0 0 0 0.03725 v + 0.169 0 0 0 0.1663 r + 0.0913
τ E w a = 2.1631 i = 1 N c o s ( β ) s i ( t ) 2.1631 i = 1 N s i n ( β ) s i ( t ) 2.9016 i = 1 N s i n ( 2 β ) s i 2 ( t )
The selected sliding surface function is characterized by parameter c = 1 , while for the first-order Gauss–Markov processes which models the currents (15) and (18), μ 1 = 1 , w 1 = 0.1 α c = 15 and β c = 10 are selected. Using a recursive method based on (39)–(45) and the waves and currents disturbances boundaries, the robust controller gain K was selected at a value of six.
The virtual world environment developed to test the proposed vision-based control scheme is composed of objects with different shape and texture, as illustrated in Figure 4. The ship’s vision, considering that the camera is attached in its frontal part, is shown in Figure 5. The selected trajectory follows a triangular path on x and z axes, while the y axis is considered to present very small variations, so a constant value is assigned to this axis.
The features detection method used is SURF [38], and an example of feature detection and matching is presented in Figure 6. It is verified that the designed virtual world has the properties of texture and illumination required to provide enough feature correspondences.
Test 1 considers following a triangular path for the x , z axes, while the y axis is selected as constant at every instant. The path following of the x and z axes is shown in Figure 7 and Figure 8, together with the Ground Truth (GT). It can be seen that VO-based controller is capable of tracking the desired position of both axes with good accuracy, even in the presence of waves and currents, which is realized using position estimations instead of measurements. The trajectory performed by the USV is shown in Figure 9. The tracking error for both axes is presented in Figure 10, showing values lower than 0.3 m, which demonstrates the good performance of the proposed controller.
Another scenario is developed in Test 2 considering a sinusoidal trajectory and stronger disturbances with the following values:
τ E w a = 35.2736 i = 1 N c o s ( β ) s i ( t ) 25.1631 i = 1 N s i n ( β ) s i ( t ) 18.4214 i = 1 N s i n ( 2 β ) s i 2 ( t )
α c = 35 , β c = 20 , w 1 = 0.5
The x-axis and z-axis GT and their corresponding tracking signals are illustrated in Figure 11 and Figure 12, respectively. The horizontal trajectory in the xz plane performed by the USV is shown in Figure 13. Finally, the tracking errors are depicted in Figure 14, where we can observe an increment in the maximum values in comparison with the previous example.

5. Conclusions

This article presented the integration of a monocular visual odometry algorithm for position estimation with a robust control scheme to perform path following tasks for unmanned surface vehicles in a urban waterway. The monocular VO scheme allows us to use a video camera as the position sensor instead of traditional sensors as GPS, which could be useful in environments in which such sensors cannot be utilized. The designed robust controller guarantees stability of the USV trajectories under common disturbances such as waves and currents, which is demonstrated analytically by means of Lyapunov theory and performing simulations using the Virtual World and Simulink tools. The simulation results showed a good position estimation with the monocular VO scheme, which is accurately tracked by the robust controller even when disturbances are present. Such results indicate that integration of VO for robust control schemes is a good alternative for environments in which the traditional sensors cannot be used.

Author Contributions

Methodology, D.C.-V. and H.A.; software, D.C.-V. and H.A.; validation, D.C.-V. and H.A.; investigation, D.C.-V., H.A. and J.L.R.-L.; writing—original draft preparation, D.C.-V., H.A. and J.L.R.-L.; writing—review and editing, D.C.-V. and H.A.; visualization, D.C.-V.; supervision, H.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Yan, R.J.; Pang, S.; Sun, H.B.; Pang, Y.J. Development and missions of unmanned surface vehicle. J. Mar. Sci. Appl. 2010, 9, 451–457. [Google Scholar] [CrossRef]
  2. Jorge, V.A.; Granada, R.; Maidana, R.G.; Jurak, D.A.; Heck, G.; Negreiros, A.P.; Dos Santos, D.H.; Gonçalves, L.M.; Amory, A.M. A survey on unmanned surface vehicles for disaster robotics: Main challenges and directions. Sensors 2019, 19, 702. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  3. Naeem, W.; Sutton, R.; Chudley, J. Modelling and control of an unmanned surface vehicle for environmental monitoring. In Proceedings of the UKACC International Control Conference, Glasgow, UK, 30 August–1 September 2006; pp. 1–6. [Google Scholar]
  4. Madeo, D.; Pozzebon, A.; Mocenni, C.; Bertoni, D. A low-cost unmanned surface vehicle for pervasive water quality monitoring. IEEE Trans. Instrum. Meas. 2020, 69, 1433–1444. [Google Scholar] [CrossRef]
  5. Fossen, T.I. Nonlinear Modelling and Control of Underwater Vehicles. Ph.D. Thesis, Universitetet i Trondheim, Trondheim, Norway, 1991. [Google Scholar]
  6. Fossen, T.I. Marine Control Systems Guidance, Navigation, and Control of Ships, Rigs and Underwater Vehicles; Marine Cybernetics: Trondheim, Norway, 2002. [Google Scholar]
  7. Li, C.; Jiang, J.; Duan, F.; Liu, W.; Wang, X.; Bu, L.; Sun, Z.; Yang, G. Modeling and experimental testing of an unmanned surface vehicle with rudderless double thrusters. Sensors 2019, 19, 2051. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  8. Zhang, R.; Liu, Y.; Anderlini, E. Robust trajectory tracking control for unmanned surface vessels under motion constraints and environmental disturbances. Proc. Inst. Mech. Eng. Part M J. Eng. Marit. Environ. 2022, 236, 394–411. [Google Scholar] [CrossRef]
  9. Shojaei, K. Neural adaptive robust control of underactuated marine surface vehicles with input saturation. Appl. Ocean Res. 2015, 53, 267–278. [Google Scholar] [CrossRef]
  10. Lv, C.; Yu, H.; Zhao, N.; Chi, J.; Liu, H.; Li, L. Robust state-error port-controlled Hamiltonian trajectory tracking control for unmanned surface vehicle with disturbance uncertainties. Asian J. Control 2022, 24, 320–332. [Google Scholar] [CrossRef]
  11. Qiu, B.; Wang, G.; Fan, Y.; Mu, D.; Sun, X. Adaptive sliding mode trajectory tracking control for unmanned surface vehicle with modeling uncertainties and input saturation. Appl. Sci. 2019, 9, 1240. [Google Scholar] [CrossRef] [Green Version]
  12. Nistér, D.; Naroditsky, O.; Bergen, J. Visual odometry. In Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR 2004), Washington, DC, USA, 27 June–2 July 2004; Volume 1, p. I. [Google Scholar]
  13. Scaramuzza, D.; Fraundorfer, F. Visual odometry [tutorial]. IEEE Robot. Autom. Mag. 2011, 18, 80–92. [Google Scholar] [CrossRef]
  14. Hartley, R.; Zisserman, A. Multiple View Geometry in Computer Vision; Cambridge university Press: Cambridge, UK, 2003. [Google Scholar]
  15. Mostafa, M.Z.; Khater, H.A.; Rizk, M.R.; Bahasan, A.M. A novel GPS/RAVO/MEMS-INS smartphone-sensor-integrated method to enhance USV navigation systems during GPS outages. Meas. Sci. Technol. 2019, 30, 095103. [Google Scholar] [CrossRef]
  16. Balamurugan, G.; Valarmathi, J.; Naidu, V. Survey on UAV navigation in GPS denied environments. In Proceedings of the 2016 International conference on signal processing, communication, power and embedded system (SCOPES), Paralakhemundi, India, 3–5 October 2016; pp. 198–204. [Google Scholar]
  17. Maimone, M.; Cheng, Y.; Matthies, L. Two years of visual odometry on the mars exploration rovers. J. Field Robot. 2007, 24, 169–186. [Google Scholar] [CrossRef] [Green Version]
  18. Dunbabin, M.; Usher, K.; Corke, P. Visual motion estimation for an autonomous underwater reef monitoring robot. In Field and Service Robotics; Springer: Berlin/Heidelberg, Germany, 2006; pp. 31–42. [Google Scholar]
  19. Raimondi, F.M.; Trapanese, M.; Franzitta, V.; Viola, A.; Colucci, A. A innovative semi-immergible USV (SI-USV) drone for marine and lakes operations with instrumental telemetry and acoustic data acquisition capability. In Proceedings of the OCEANS 2015—Genova, Genova, Italy, 18–21 May 2015; pp. 1–10. [Google Scholar] [CrossRef]
  20. Chen, L.; Huang, Y.; Zheng, H.; Hopman, H.; Negenborn, R. Cooperative multi-vessel systems in urban waterway networks. IEEE Trans. Intell. Transp. Syst. 2019, 21, 3294–3307. [Google Scholar] [CrossRef] [Green Version]
  21. Balbuena, J.; Quiroz, D.; Song, R.; Bucknall, R.; Cuellar, F. Design and implementation of an USV for large bodies of fresh waters at the highlands of Peru. In Proceedings of the OCEANS 2017—Anchorage, Anchorage, AK, USA, 18–21 September 2017; pp. 1–8. [Google Scholar]
  22. Wang, W.; Gheneti, B.; Mateos, L.A.; Duarte, F.; Ratti, C.; Rus, D. Roboat: An autonomous surface vehicle for urban waterways. In Proceedings of the 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Macau, China, 3–8 November 2019; pp. 6340–6347. [Google Scholar]
  23. Sinisterra, A.J.; Dhanak, M.R.; Von Ellenrieder, K. Stereovision-based target tracking system for USV operations. Ocean Eng. 2017, 133, 197–214. [Google Scholar] [CrossRef]
  24. Han, J.; Cho, Y.; Kim, J. Coastal SLAM with marine radar for USV operation in GPS-restricted situations. IEEE J. Ocean. Eng. 2019, 44, 300–309. [Google Scholar] [CrossRef]
  25. Uyar, E.; Alpkaya, A.T.; Mutlu, L. Dynamic modelling, investigation of manoeuvring capability and navigation control of a cargo ship by using matlab simulation. IFAC-PapersOnLine 2016, 49, 104–110. [Google Scholar] [CrossRef]
  26. Gonzalez-Garcia, A.; Castañeda, H. Guidance and control based on adaptive sliding mode strategy for a USV subject to uncertainties. IEEE J. Ocean. Eng. 2021, 46, 1144–1154. [Google Scholar] [CrossRef]
  27. Skjetne, R.; Fossen, T.I.; Kokotović, P.V. Adaptive maneuvering, with experiments, for a model ship in a marine control laboratory. Automatica 2005, 41, 289–298. [Google Scholar] [CrossRef]
  28. Coe, R.G.; Bacelli, G.; Wilson, D.G.; Abdelkhalik, O.; Korde, U.A.; Robinett III, R.D. A comparison of control strategies for wave energy converters. Int. J. Mar. Energy 2017, 20, 45–63. [Google Scholar] [CrossRef]
  29. Dunbabin, M.; Grinham, A.; Udy, J. An autonomous surface vehicle for water quality monitoring. In Proceedings of the Australasian Conference on Robotics and Automation (ACRA), Sydney, Australia, 2–4 December 2009; pp. 2–4. [Google Scholar]
  30. Do, K.D.; Pan, J. Control of Ships and Underwater Vehicles: Design for Underactuated and Nonlinear Marine Systems; Springer: London, UK, 2009; Volume 1. [Google Scholar]
  31. Fossen, T.I. How to incorporate wind, waves and ocean currents in the marine craft equations of motion. IFAC Proc. Vol. 2012, 45, 126–131. [Google Scholar] [CrossRef] [Green Version]
  32. Collado-Gonzalez, I.; Gonzalez-Garcia, A.; Sotelo, C.; Sotelo, D.; Castañeda, H. A Real-Time NMPC Guidance Law and Robust Control for an Autonomous Surface Vehicle. IFAC-PapersOnLine 2021, 54, 252–257. [Google Scholar] [CrossRef]
  33. Davies, E.R. Computer Vision: Principles, Algorithms, Applications, Learning; Academic Press: Cambridge, MA, USA, 2017. [Google Scholar]
  34. Nistér, D. Preemptive RANSAC for live structure and motion estimation. Mach. Vis. Appl. 2005, 16, 321–329. [Google Scholar] [CrossRef] [Green Version]
  35. Tsai, R.Y.; Huang, T.S. Uniqueness and estimation of three-dimensional motion parameters of rigid objects with curved surfaces. IEEE Trans. Pattern Anal. Mach. Intell. 1984, PAMI-6, 13–27. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  36. Almeida, J.; Silvestre, C.; Pascoal, A. Path-following control of fully-actuated surface vessels in the presence of ocean currents. IFAC Proc. Vol. 2007, 40, 26–31. [Google Scholar] [CrossRef] [Green Version]
  37. Utkin, V.; Guldner, J.; Shi, J. Sliding Mode Control in Electro-Mechanical Systems; CRC Press: Boca Raton, FL, USA, 2017. [Google Scholar]
  38. Oyallon, E.; Rabin, J. An analysis of the SURF method. Image Process. On Line 2015, 5, 176–218. [Google Scholar] [CrossRef]
Figure 1. Earth fixed and body fixed frames.
Figure 1. Earth fixed and body fixed frames.
Jmse 11 00515 g001
Figure 2. Block diagram of the proposed control scheme.
Figure 2. Block diagram of the proposed control scheme.
Jmse 11 00515 g002
Figure 3. Main components of VO.
Figure 3. Main components of VO.
Jmse 11 00515 g003
Figure 4. Virtual world environment.
Figure 4. Virtual world environment.
Jmse 11 00515 g004
Figure 5. View of the ship’s camera.
Figure 5. View of the ship’s camera.
Jmse 11 00515 g005
Figure 6. Feature detection and matching.
Figure 6. Feature detection and matching.
Jmse 11 00515 g006
Figure 7. x-axis coordinate tracking for test 1.
Figure 7. x-axis coordinate tracking for test 1.
Jmse 11 00515 g007
Figure 8. z-axis coordinate tracking for test 1.
Figure 8. z-axis coordinate tracking for test 1.
Jmse 11 00515 g008
Figure 9. Trajectory in the xz plane for test 1.
Figure 9. Trajectory in the xz plane for test 1.
Jmse 11 00515 g009
Figure 10. Tracking error for test 1.
Figure 10. Tracking error for test 1.
Jmse 11 00515 g010
Figure 11. x-axis coordinate tracking for test 2.
Figure 11. x-axis coordinate tracking for test 2.
Jmse 11 00515 g011
Figure 12. z-axis coordinate tracking for test 2.
Figure 12. z-axis coordinate tracking for test 2.
Jmse 11 00515 g012
Figure 13. Trajectory in the xz plane for test 2.
Figure 13. Trajectory in the xz plane for test 2.
Jmse 11 00515 g013
Figure 14. Tracking error for test 2.
Figure 14. Tracking error for test 2.
Jmse 11 00515 g014
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

Cortes-Vega, D.; Alazki, H.; Rullan-Lara, J.L. Visual Odometry-Based Robust Control for an Unmanned Surface Vehicle under Waves and Currents in a Urban Waterway. J. Mar. Sci. Eng. 2023, 11, 515. https://doi.org/10.3390/jmse11030515

AMA Style

Cortes-Vega D, Alazki H, Rullan-Lara JL. Visual Odometry-Based Robust Control for an Unmanned Surface Vehicle under Waves and Currents in a Urban Waterway. Journal of Marine Science and Engineering. 2023; 11(3):515. https://doi.org/10.3390/jmse11030515

Chicago/Turabian Style

Cortes-Vega, David, Hussain Alazki, and Jose Luis Rullan-Lara. 2023. "Visual Odometry-Based Robust Control for an Unmanned Surface Vehicle under Waves and Currents in a Urban Waterway" Journal of Marine Science and Engineering 11, no. 3: 515. https://doi.org/10.3390/jmse11030515

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