Skip to main content

Advertisement

Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Model Based Adaptive Control and Disturbance Compensation for Underwater Vehicles

  • 1786 Accesses

  • 2 Citations

Abstract

Underwater vehicles are being emphasized as highly integrated and intelligent devices for a significant number of oceanic operations. However, their precise operation is usually hindered by disturbances from a tether or manipulator because their propellers are unable to realize a stable suspension. A dynamic multi-body model-based adaptive controller was designed to allow the controller of the vehicle to observe and compensate for disturbances from a tether or manipulator. Disturbances, including those from a tether or manipulator, are deduced for the observation of the controller. An analysis of a tether disturbance covers the conditions of the surface, the underwater area, and the vehicle end point. Interactions between the vehicle and manipulator are mainly composed of coupling forces and restoring moments. To verify the robustness of the controller, path-following experiments on a streamlined autonomous underwater vehicle experiencing various disturbances were conducted in Song Hua Lake in China. Furthermore, path-following experiments for a tethered open frame remote operated vehicle were verified for accurate cruising with a controller and an observer, and vehicle and manipulator coordinate motion control during the simulation and experiments verified the effectiveness of the controller and observer for underwater operation. This study provides instructions for the control of an underwater vehicle experiencing disturbances from a tether or manipulator.

Introduction

Several oceanic operations are essential for marine rescue, offshore exploration, and industrial use [1]. Impressive results of highly integrated underwater vehicles have been achieved, including the REMUS-100 autonomous underwater vehicle (AUV) [2], Bluefin AUV [3], Autosub (AUV) [4], Hugin AUV [5], Seaeye Falcon remote operated vehicle (ROV) [6], H2000 ROV of the French ECA group, SMD ROV [7], ALIVE I-AUV [8], SAUVIM I-AUV [9], and Girona 500 I-AUV [10].

In general, an underwater vehicle is usually designed to be positively buoyant to ensure safety. The shapes of such vehicles are varied based on their particular purposes [11]. For example, an AUV is usually slender and streamlined for low resistance and long endurance cruising, whereas large and mid-sized ROVs usually have an open frame designed for carrying equipment. For underwater surveys and operations, precise control is very important because the quality of the data obtained and the efficiency during a lengthy operation are highly dependent on the type of vehicle control [12]. A considerable number of studies have been carried out on various control strategies. Adaptive control methods, such as adaptive PD control [13], adaptive neural network control [14], and adaptive sliding control [15] have been proposed for the precise control of underwater vehicles and to overcome uncertainty and external disturbances in the hydrodynamic coefficients. However, accurate control of an underwater vehicle is difficult when confronted with currents or disturbances, coupled with nonlinear motions from a tether or manipulator [16, 17].

To eliminate control errors and improve the response, disturbance modeling and compensation appear to be necessary [18], particularly owing to the maneuverability limitation of a propeller [19]. To improve the vertical plane response of an AUV, Hsu et al. [11] modified a switching integral control loop based on vertical plane modeling, which improves the transient response and eliminates steady-state depth errors. Dantas et al. [18] proposed a linear quadratic Gaussian with a loop robust controller based on disturbances and a vehicle shape filter, which improves the pitch response of an AUV and reduces the amplitude of the oscillations. Peymani et al. [20] proposed an AUV path-maneuvering controller in which the motion control is reformulated as the modeling problem of a constrained multi-body system. However, for a torpedo-like AUV cruising under current disturbances, dynamic modeling and a cruise control analysis have been rarely investigated regarding the desired control response.

Further, coupled nonlinearities using a tether and manipulator to restrain the operation oscillations for underwater vehicles have been analyzed. Jordán et al. [21] analyzed the effects of a cable perturbation on the control system, and determined that an estimation of the force at the attached point on the vehicle can directly compensate for the perturbations and provide greater ROV maneuverability. Bagheri et al. [14] developed an adaptive neural network controller for the four degrees of freedom (DOF) control of an ROV based on the dynamic behavior effects of the communication cable. In consideration of the ocean flow, Mario [22] modeled the tether dynamics in a quasi-stationary state and presented an adaptive control scheme for tether perturbations. Han et al. [23] proposed an optimal proportional-integral-derivative (PID) merged robust adaptive control for an underwater vehicle-manipulator system (UVMS) with restoring forces and moment compensation. Mohan et al. [24] provided a generalized framework for indirect adaptive control of a UVMS, when considering the dynamic coupling between the vehicle and manipulator. However, the robustness of the controller should be further considered based on the vehicle dynamics under uncertainty and disturbances [25].

Based on a multi-body system concept, in the present study, a model was designed based on an adaptive controller. A disturbance model was analyzed, which compensates the dynamics of a finite element tether and multi-body underwater vehicle manipulator. The waves and current disturbances were taken into consideration under different surface and underwater conditions. The disturbances from a manipulator on an underwater vehicle were also analyzed with a coupling of the impact and restoring (moment) forces. Two experimental cases, i.e., open frame and streamlined underwater vehicles, were investigated.

The remainder of this paper is organized as follows. Section 2 describes observer-based adaptive dynamic control based on the multi-body dynamic model of an underwater vehicle. Disturbance modeling of a vehicle with a tether and manipulator is analyzed in Section 3. The experiments and simulations conducted are discussed and analyzed in Section 4. Finally, Section 5 provides some concluding remarks.

Model-Based Adaptive Dynamic Control

A typical underwater vehicle includes a vehicle carrier, which may be streamlined or open frame. The dynamics of a singular vehicle body can be obtained through the theorem of momentum [26]:

$$m\frac{{\text{d} {\user2{V}}}}{{\text{d} t}} = {\user2{F}},$$
(1)

where m represents the mass, and V and F indicate the vector of the velocity of the center of gravity and external forces, respectively. For the underwater vehicle conducting an oceanic operation, a multi-body system composed of a flexible neutral buoyancy tether and multiple-joint manipulator was considered. The tether is responsible for communication and energy supply, whereas the multiple-link manipulator should be available for underwater operation. In the multibody construction shown in Figure 1, the flexible nodes include the flexible tether, surface end, and vehicle end of the tether, whereas the rigid nodes include the vehicle and manipulator.

Figure 1
figure1

Nodes construction for an underwater vehicle

Kinematics of Multi-body Nodes of Underwater Vehicle

The coordinates in Figure 1 include the earth coordinates ∑a, O a  − X a Y a Z a , vehicle coordinates ∑ v , O v  − X v Y v Z v , tether coordinates ∑ t , O t  − X t Y t Z t , and ith manipulator link coordinates ∑ i , O i  − X i Y i Z i . Thus, the coordinate transformation from the earth to the vehicle can be expressed as

$${}^{a}T_{V} = \left[ {\begin{array}{*{20}c} {\text{c} \psi \text{c} \theta } & {\text{c} \psi \text{s} \theta \text{s} \phi - \text{s} \psi \text{c} \phi } & {\text{c} \psi \text{s} \theta \text{c} \phi + \text{s} \psi \text{s} \phi } & {x_{v} } \\ {\text{s} \psi \text{c} \theta } & {\text{s} \psi \text{s} \theta \sin \phi + \text{c} \psi \text{c} \phi } & {\text{s} \psi \text{s} \theta \text{c} \phi - \text{c} \psi \text{s} \phi } & {y_{v} } \\ { - \text{s} \theta } & {\text{c} \theta \text{s} \phi } & {\text{c} \theta \text{c} \phi } & {z_{v} } \\ 0 & 0 & 0 & 1 \\ \end{array} } \right],$$

where c indicates the cosine and s indicates the sine, (xv, yv, zv) is the current position of the vehicle relative to the earth fixed coordinates, and φ, θ, and ψ represent the roll, pitch, and heading angle of the vehicle, respectively.

For the kinematics of an underwater vehicle and rigid multi-body system of the manipulator, the angular transformation from the ith link to the (i + 1)th link is

$${}^{i}{\user2{R}}_{i + 1} = \left[ {\begin{array}{*{20}c} {\text{c} \theta_{i} } & { - \text{s} \theta_{i} \text{c} \alpha_{i} } & {\text{s} \theta_{i} s\alpha_{i} } \\ {\text{s} \theta_{i} } & {c\theta_{i} \text{c} \alpha_{i} } & { - c\theta_{i} s\alpha_{i} } \\ 0 & {\text{s} \alpha_{i} } & {\text{c} \alpha_{i} } \\ \end{array} } \right].$$

The absolute velocity vector of each node can be obtained through forward propagation from the vehicle to the ith manipulator joint, and the velocity of the ith node of the manipulator can be expressed as

$$\user2{V}_{i} = \user2{V}_{{i - 1}} + \user2{W}_{i} \times \user2{r}_{i}.$$
(2)

For the kinematics from an underwater vehicle to a multi-body tether system, ∑ r , O r  − X r Y r Z r and ∑ o , O o  − X o Y o Z o , are set as the tether vehicle end coordinates, and tether surface end coordinates, respectively. Moreover, in the tether coordinates ∑ t , O t  − X t Y t Z t , x t is tangential to the tether in the increasing arc length direction, and y t is on the X0Y0 plane. Thus, the relationship between the tether frame and vehicle frame is

$$\left[ {\begin{array}{*{20}c} {x_{t} } & {y_{t} } & {z_{t} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {x_{v} } & {y_{v} } & {z_{v} } \\ \end{array} } \right] \cdot {}^{a}{\user2{R}}_{v}^{\text{T}} \cdot {\user2{B}}\left( {\alpha ,\beta } \right),$$

where aRv is the angular relationship between the vehicle and the earth as indicated in the upper-left part of a 3 × 3 matrix of aTv, \(\alpha\) is the rotation angle of the x0 axis into plane X t Y t along the z0 axis, and \(\beta\) is the angle between planes X0Y0 and X t Y t after the new x0 axis rotates counter-clockwise at π/2 to convert the z0 axis into the zt axis:

$${\user2{B}}\left( {\alpha ,\beta } \right) = \left( {\begin{array}{*{20}c} {\text{c} \alpha \text{c} \beta } & { - \text{c} \alpha \text{s} \beta } & {\text{s} \alpha } \\ { - \text{s} \alpha \text{c} \beta } & {\text{s} \alpha \text{s} \beta } & {\text{c} \alpha } \\ { - \text{s} \beta } & { - \text{c} \beta } & 0 \\ \end{array} } \right).$$

Dynamics and Control of Multi-body Underwater Vehicle Nodes

The dynamics of an underwater vehicle can be expressed through the following equation:

$${\user2{M}}\left( {\user2{q}} \right){\user2{\ddot{q}}} + {\user2{C}}\left( {{\dot{\user2{q}}}} \right){\dot{\user2{q}}} + {\user2{D}}\left( {{\dot{\user2{q}}}} \right){\dot{\user2{q}}} + {\user2{G}}\left( {\user2{q}} \right) = \user2{\tau}_{\text{dis}} + \user2{\tau},$$
(3)

where M(q) is the mass, added mass, and inertial matrix of the underwater vehicle, q is the vehicle position vector in the earth fixed coordinate, \({\user2{C}}\left( {{\dot{\user2{q}}}} \right)\) is the centripetal matrix and Coriolis, \({\user2{D}}\left( {{\dot{\user2{q}}}} \right){\dot{\user2{q}}}\) indicates the viscous damping forces, G(q) is the summation of the gravitational and buoyancy forces, \(\user2{\tau}\) denotes the control forces, and τ dis includes the disturbances from the manipulator and tether on the underwater vehicle. According to the dynamic model of Eq. (3), the designed adaptive dynamic control method can be expressed as

$$\begin{aligned} \user2{\tau } \,=\, {\user2{M}}({\user2{q}})[{\user2{\ddot{q}}}_{d} + {\user2{S}}] + {\user2{C}}\left( {{\dot{\user2{q}}}} \right){\dot{\user2{q}}} + {\user2{D}}\left( {{\dot{\user2{q}}}} \right){\dot{\user2{q}}} \hfill \\+ {\user2{G}}\left( {\user2{q}} \right) + {\hat{\user2{\tau }}}_{\text{dis}} \left( t \right) - {\user2{K}}_{s} \text{sgn} ({\user2{S}}). \hfill \\ \end{aligned}$$
(4)

where \(\varvec{S}\,\varvec{ = }\,\varvec{2I}/[(\varvec{I}\, + \,exp( - \varvec{K}_{P} \tilde{q} - \varvec{K}_{d} \tilde{q})) - \varvec{I}]\) is set as the kinematics controller, I = [1 1 1 1 1 1]T, \(\tilde{q}\) = q d  − q is an input error, \({\user2{\dot{\tilde{q}}}}\) is the rate of error change, and K d and K p are the derivative and proportional gains, respectively. The sigmoid-function controller in Figure 2(a) indicates the idea of fuzzy control with control commands loosely considered when the deviation is comparatively large, where the control commands are strictly treated when the deviation is comparatively small [27]. The sliding surface of K s sgn(S) is further employed to improve the controller robustness under consideration of dynamic uncertainties, and K s is the matrix of the gains. Therefore, the designed model-based adaptive dynamic controller not only possesses the same convergence characteristic of a sigmoid-function kinematics controller, but can compensate for any disturbances according to the dynamic model.

Figure 2
figure2

Model based adaptive dynamic controller

Controller Stability Analysis

Because

$$\frac{{2{\user2{I}}}}{{{\user2{I}} + \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}})}} - {\user2{I}} = \frac{{{\user2{I}} - \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}})}}{{{\user2{I}} + \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}})}} = \tanh \left( {\frac{{{\user2{K}}_{p} {\tilde{\user2{q}}} + {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}}}}{2}} \right) = \frac{{{\user2{K}}_{p} {\tilde{\user2{q}}} + {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}}}}{2} + \frac{{({\user2{K}}_{p} {\tilde{\user2{q}}} + {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}})^{3} }}{24} + \frac{{({\user2{K}}_{p} {\tilde{\user2{q}}} + {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}})^{5} }}{240} + o\left( {({\user2{K}}_{p} {\tilde{\user2{q}}} + {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}})^{5} } \right),$$
(5)

a positive definite Lyapunov function is defined as follows:

$$\begin{aligned} {\user2{V}}({\tilde{\user2{q}}},{\user2{\dot{\tilde{q}}}}) \,=\, \frac{1}{2}\left[ {{\user2{\dot{\tilde{q}}}} + \varepsilon {\tilde{\user2{q}}}} \right]^{\text{T}} \left[ {{\user2{\dot{\tilde{q}}}} + \varepsilon {\tilde{\user2{q}}}} \right] \hfill \\ + \frac{1}{2}{\tilde{\user2{q}}}^{\text{T}} \left[ {{\user2{K}}_{d} + \varepsilon {\user2{K}}_{p} - \varepsilon^{2} {\user2{I}}} \right]{\tilde{\user2{q}}}, \hfill \\ \end{aligned}$$
(6)

where ɛ is a positive constant such that ɛ(0, λmin{K ρ }), λmin is the minimum eigenvalue of matrix K p . Thus, for any nonzero vector U Rn, we obtain

$${\user2{U}}^{\text{T}} \lambda_{\hbox{min} } \left\{ {{\user2{K}}_{p} } \right\}{\user2{U}} > {\user2{U}}^{\text{T}} \varepsilon {\user2{U}},\,\text{i.e.,}\, {\user2{U}}^{\text{T}} ({\user2{K}}_{p} - \varepsilon I){\user2{U}} > 0.$$

This means that the matrix (K p   ɛI) is symmetric positive definite. The matrix K d is symmetric positive definite, and with constant ɛ > 0, we obtain

$$\left[ {{\user2{K}}_{d} + \varepsilon {\user2{K}}_{p} - \varepsilon^{2} {\user2{I}}} \right] > 0.$$

For the control input vector in Eq. (4) \(\hat{M}({\user2{q}}){\user2{\ddot{q}}}\) is substituted by Eq. (7) for underwater vehicle dynamics:

$$\hat{M}({\user2{q}}){\user2{\ddot{q}}} = {\hat{\user2{M}}}({\user2{q}})\left[ {{\user2{\ddot{q}}}_{d} + \frac{{2{\user2{I}}}}{{(I + \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}}))}} - {\user2{I}}} \right],$$
(7)

where \(\hat{M}({\user2{q}})\) is a positive definite matrix. Because \(\hat{M}({\user2{q}})\) is a positive definite matrix, Eq. (7) can be reduced to

$${\user2{\ddot{\tilde{q}}}} + {{2I} \mathord{\left/ {\vphantom {{2I} {(I + \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}}))}}} \right. \kern-0pt} {(I + \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}}))}} - {\user2{I}} = 0,$$

where \({\user2{\ddot{\tilde{q}}}} = {\user2{\ddot{q}}}_{d} - {\user2{\ddot{q}}}\) is the acceleration error, and therefore

$$\frac{\text{d} }{{\text{d} t}}\left[ {\begin{array}{*{20}c} {{\tilde{\user2{q}}}} \\ {{\user2{\dot{\tilde{q}}}}} \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {{\user2{\dot{\tilde{q}}}}} \\ { - \frac{{2{\user2{I}}}}{{({\user2{I}} + \exp ( - {\user2{K}}_{p} {\tilde{\user2{q}}} - {\user2{K}}_{d} {\user2{\dot{\tilde{q}}}}))}} + {\user2{I}}} \\ \end{array} } \right].$$
(8)

Using Eq. (5), Eq. (8) can be linearized into Eq. (9) through a certain period of control time:

$$\frac{\text{d} }{{\text{d} t}}\left[ {\begin{array}{*{20}c} {{\tilde{\user2{q}}}} \\ {{\user2{\dot{\tilde{q}}}}} \\ \end{array} } \right]{ = }\left[ {\begin{array}{*{20}c} 0 & {\user2{I}} \\ { - {\user2{K}}_{d} } & { - {\user2{K}}_{p} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {{\tilde{\user2{q}}}} \\ {{\user2{\dot{\tilde{q}}}}} \\ \end{array} } \right].$$
(9)

Furthermore, the Lyapunov function \(V({\tilde{\user2{q}}},{\user2{\dot{\tilde{q}}}})\) is differentiated with respect to time as

$$\dot{V}\left( {{\tilde{\user2{q}}}^{\text{T}} ,{\user2{\dot{\tilde{q}}}}^{\text{T}} } \right) = {\user2{\dot{\tilde{q}}}}^{T} {\user2{\ddot{\tilde{q}}}} + {\user2{\dot{\tilde{q}}}}^{\text{T}} \left[ {{\user2{K}}_{p} + \varepsilon {\user2{K}}_{d} } \right]{\tilde{\user2{q}}} + \varepsilon {\user2{\dot{\tilde{q}}}}^{\text{T}} {\user2{\dot{\tilde{q}}}} + \varepsilon {\user2{\ddot{\tilde{q}}}}^{\text{T}} {\tilde{\user2{q}}} \begin{array}{*{20}c} {} & {} & {} & { = - \left[ {\begin{array}{*{20}c} {{\tilde{\user2{q}}}} \\ {{\user2{\dot{\tilde{q}}}}} \\ \end{array} } \right]^{\text{T}} \left[ {\begin{array}{*{20}c} {\varepsilon {\user2{K}}_{d} } & 0 \\ 0 & {{\user2{K}}_{p} - \varepsilon {\user2{I}}} \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {{\tilde{\user2{q}}}} \\ {{\user2{\dot{\tilde{q}}}}} \\ \end{array} } \right]} \\ \end{array} .$$
(10)

Because the matrices K p   ɛI and Kd are symmetric positive definite matrices, \({\dot{\user2{V}}}\left( {{\tilde{\user2{q}}}^{\text{T}} ,{\user2{\dot{\tilde{q}}}}^{\text{T}} } \right)\) in Eq. (10) is globally negative definite. From Lyapunov’s stability theorem, the equilibrium point \(\left[ {\begin{array}{*{20}c} {{\tilde{\user2{q}}}^{\text{T}} } & {{\user2{\dot{\tilde{q}}}}^{\text{T}} } \\ \end{array} } \right]^{\text{T}} = {\user2{0}} \in {\user2{R}}^{2 \times 6}\) is globally uniformly asymptotically stable, i.e.,

$$\mathop {\lim {\tilde{\user2{q}}}(t)}\limits_{t \to \infty } = 0,\;\;\mathop {\lim {\user2{\dot{\tilde{q}}}}(t)}\limits_{t \to \infty } = 0.$$
(11)

Therefore, the control errors converge to zero asymptotically.

Disturbance Analysis and Estimation

Disturbance Analysis for Manipulator

The manipulator disturbance on a vehicle includes the restoring and coupling forces. The restoring forces are caused from changes in gravity and buoyancy center during a manipulation, whereas a coupling force is caused from the coupling motion between the vehicle and manipulator.

The restoring forces can be expressed as

$${\user2{G}}({\user2{q}}) = \left[ {\begin{array}{*{20}c} {{}^{V}{\user2{f}}_{g}^{V} + {}^{V}{\user2{f}}_{B}^{V} + \sum\limits_{i = 1}^{n} {({}^{V}{\user2{f}}_{g}^{i} } + {}^{V}{\user2{f}}_{B}^{i} )} \\ {{}^{V}{\user2{r}}_{g}^{V} \times {}^{V}{\user2{f}}_{g}^{V} + {}^{V}{\user2{r}}_{B}^{V} \times {}^{0}{\user2{f}}_{B}^{V} + \sum\limits_{i = 1}^{n} {({}^{V}{\user2{r}}_{g}^{i} \times {}^{V}{\user2{f}}_{g}^{i} } + {}^{V}{\user2{r}}_{B}^{i} \times {}^{V}{\user2{f}}_{B}^{i} )} \\ \end{array} } \right],$$
(12)

where \({}^{V}{\user2{f}}_{g}^{i}\) and \({}^{V}{\user2{f}}_{B}^{i}\) represent the restoring forces of the ith link; \({}^{V}{\user2{f}}_{g}^{V}\) and \({}^{V}{\user2{f}}_{B}^{V}\) are the restoring forces of an underwater vehicle; \({}^{V}{\user2{r}}_{g}^{V}\) and \({}^{V}{\user2{r}}_{B}^{V}\) are the underwater vehicle gravity and buoyancy center positions vectors, respectively; and \({}^{V}{\user2{r}}_{g}^{i}\) and \({}^{V}{\user2{r}}_{B}^{i}\) are the ith link gravity and buoyancy center position vectors, respectively.

In contrast, the coupling force and moment between the vehicle and manipulator can be backwardly deduced through the following:

$$\left\{ {\begin{array}{*{20}l} {{}^{i}{\user2{f}}_{i,i - 1} \,=\, {}^{i}{\user2{f}}_{i + 1,i} - {}^{i}{\user2{f}}_{i}^{*} - {}^{i}{\user2{F}}_{i,i} ,} \hfill \\ \begin{aligned} {}^{i}{\user2{n}}_{i,i - 1} \,&=\, {}^{i}{\user2{n}}_{i + 1,i} + {}^{i}{\user2{r}}_{ci} \times {}^{i}{\user2{f}}_{i,i - 1} + ({}^{i}{\user2{r}}_{i} - {}^{i}{\user2{r}}_{ci} ) \times ({}^{i}{\user2{f}}_{i + 1,i} + {}^{i}{\user2{F}}_{i,i} ) \hfill \\ &\quad \;\;-{}^{i}{\user2{n}}_{i}^{*} - {}^{i}{\user2{M}}_{i,i} , \hfill \\ \end{aligned} \hfill \\ {{}^{i - 1}{\user2{f}}_{i,i - 1} \,=\, {}^{i - 1}{\user2{R}}_{i} {}^{i}{\user2{f}}_{i,i - 1} ,{}^{i - 1}{\user2{n}}_{i,i - 1} = {}^{i - 1}{\user2{R}}_{i} {}^{i}{\user2{n}}_{i,i - 1} .} \hfill \\ \end{array} } \right.$$
(13)

Here, ifi,i−1 and ini,i−1 are the constraint reaction forces from the ith link to the (i  1)th link, ir i  = [α i d i i d i i ]T is the ith revolt joint vector, ir ci  = [α ci d ci i d ci i ]T represents the geometric center of the ith link, and iF i,i and iM i,i are the hydraulic force and moment vectors exerted on the ith link, respectively. The hydrodynamic effects include the added mass forces and viscous damping.

Therefore, a manipulator disturbance on a vehicle is a summation of the restoring and coupling forces.

$$\user2{\tau }_{\text{dis}} = \left[ {\begin{array}{l} {{}^{V}{\user2{f}}_{g}^{V} + {}^{V}{\user2{f}}_{B}^{V} + \sum\limits_{i = 1}^{4} {({}^{V}{\user2{f}}_{g}^{i} } + {}^{V}{\user2{f}}_{B}^{i} ){ + }{}^{V}{\user2{f}}_{1,V} } \\\quad {}^{V}{\user2{r}}_{g}^{V} \times {}^{V}{\user2{f}}_{g}^{V} + {}^{V}{\user2{r}}_{B}^{V} \times {}^{0}{\user2{f}}_{B}^{V} \hfill \\ \quad+ \sum\limits_{i = 1}^{4} {({}^{V}{\user2{r}}_{g}^{i} \times {}^{V}{\user2{f}}_{g}^{i} } + {}^{V}{\user2{r}}_{B}^{i} \times {}^{V}{\user2{f}}_{B}^{i} ){ + }{}^{V}{\user2{n}}_{1,V} \\ \end{array} } \right].$$

Disturbance from Tether

For a tether and hybrid flexible and rigid multi-body system of a vehicle, the applied disturbance forces from the tether exerted on an underwater vehicle can be obtained as the drag forces from the tether. Differing from the analysis in Section 3.1, the dynamics of a flexible tether in a fluid can be deduced through a finite element lumped mass model [28]:

$$m_{t} {\user2{a}} = \left( {\rho_{t} - \rho_{w} } \right)A_{t} {\user2{g}} + {\user2{F}}_{\text{fluid}} + \frac{{\partial {\user2{T}}}}{\partial s},$$
(15)

where m t is the lump mass per unit of length, s is the arc length of the tether, T is the tension force, a is the inertial acceleration, Ffluid is the hydrodynamic force per unit of length, ρ w is the density of sea water, ρ t is the density of the tether, g is the gravitational acceleration, and A t is the cross-sectional area of the tether.

According to Figure 1, the node construction of a tether includes the surface node, flexible tether, and vehicle end node. For the surface node of a tethered ship end, the drag force T0 can be decomposed into H0x, H0y, and V0 of the three axes at point O0.

For the ith micro unit length of a tether in the air, if we set ζ i as the stretched horizontal length of the tether, and ξ i as the tether height out of the water, we have

$$\left\{ {\begin{array}{l} {T_{i + 1} {\kern 1pt} {\kern 1pt} \frac{{\text{d} \zeta_{i} }}{{{\text{d}}s}} - T{\kern 1pt}_{i} {\kern 1pt} \frac{{\text{d} \zeta_{i} }}{{{\text{d}}s}} + F_{{i,{\text{wind}}}} = m{\kern 1pt} {\kern 1pt} \frac{{\text{d} {\user2{v}}_{it} }}{{{\text{d}}t}}{\kern 1pt} \frac{{\text{d} \zeta_{i} }}{{{\text{d}}s}},} \\ {T{\kern 1pt}_{i} {\kern 1pt} \frac{{\text{d} \xi_{i} }}{{{\text{d}}s}} - T_{i + 1} \frac{{\text{d} \xi_{i} }}{{{\text{d}}s}} - A_{t} {\kern 1pt} \rho_{t} {\kern 1pt} g = m{\kern 1pt} {\kern 1pt} \frac{{\text{d} {\user2{v}}_{it} }}{{{\text{d}}t}}{\kern 1pt} \frac{{\text{d} \xi_{i} }}{{\text{d} s}},} \\ {F_{{i,{\text{wind}}}} = \frac{1}{2}\text{d} {\kern 1pt} \xi_{i} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} C_{\text{wind}} {\kern 1pt} \rho {}_{\text{air}}{\kern 1pt} A_{t} {\kern 1pt} \left| {{\user2{v}}_{\text{i,wind}} } \right|{\user2{v}}_{\text{i,wind}} .{\kern 1pt} {\kern 1pt} } \\ \end{array} } \right.$$
(16)

where T i and Ti+1 are the two tension forces at the two ends of the ith micro unit length, Fi,wind is the wind effect force on the ith micro unit length tether in the local frame [x t , y t , z t ], Cwind is the drag coefficient in the air, vwind is the wind velocity relative to the tether, and for the local wind velocity above the sea surface [29], |vi,wind| = [v10(d1 − ξiw)/10]1/7, and d1 is the tether height above the water from O0 to the water plane.

Similarly, for the tether in the water,

$$\left\{ {\begin{array}{*{20}l} {T_{j + 1} {\kern 1pt} {\kern 1pt} \frac{{\text{d} \zeta_{j} }}{{\text{d} p}} - T{\kern 1pt}_{j} {\kern 1pt} \frac{{\text{d} \zeta_{j} }}{{\text{d} p}} + F_{{j,{\text{water}}}} = m{\kern 1pt} {\kern 1pt} \frac{{\text{d} {\user2{v}}_{jt} }}{{\text{d} t}}{\kern 1pt} \frac{{\text{d} \zeta_{j} }}{{\text{d} p}},} \hfill \\ {T{\kern 1pt}_{j} {\kern 1pt} \frac{{\text{d} \xi_{j} }}{{{\text{d}}p}} - T_{j + 1} \frac{{\text{d} \xi_{j} }}{{{\text{d}}p}} - (\rho_{t} - \rho_{w} )Ag = m{\kern 1pt} {\kern 1pt} \frac{{\text{d} {\user2{v}}_{jt} }}{{{\text{d}}t}}{\kern 1pt} \frac{{\text{d} \xi_{j} }}{{{\text{d}}p}},} \hfill \\ {{\user2{F}}_{{j,{\text{water}}}} = \frac{1}{2}\text{d} \xi {\kern 1pt} {\kern 1pt} {\kern 1pt} C_{w} {\kern 1pt} \rho_{w} {\kern 1pt} A{\kern 1pt} {\kern 1pt} \left| {{\user2{v}}_{{j,{\text{rel}}}} } \right|{\kern 1pt} {\kern 1pt} {\kern 1pt} {\user2{v}}_{{j,{\text{rel}}}} ,} \hfill \\ \end{array} } \right.$$
(17)

where T j and Tj+1 are the tether tension forces at the two ends of the jth micro unit, Fj,water is the current disturbance on the jth micro unit length of the tether in the local frame [x t , y t , z t ], and vj,rel is the relative velocity between the water and jth unit tether.

For the ROV end of the tether, the tether tension force T R at point R can be decomposed into horizontal forces F Rx and F Ry , and the vertical force V R .

Therefore, the tether tension force in the local frame [x t , y t , z t ] can be calculated as

$${\user2{T}}_{R} \cdot {\user2{H}}^{\text{T}} \left( {\varphi ,\theta ,\psi } \right) \cdot {\user2{B}}\left( {\alpha ,\beta } \right) + {\user2{F}}_{\text{wind}} + {\user2{F}}_{water} - \left[ {\begin{array}{*{20}c} 0 & 0 & {W_{t} } \\ \end{array} } \right] - {\user2{T}}_{0} \cdot {\user2{H}}\left( {\varphi ,\theta ,\psi } \right){\user2{H}}^{\text{T}} \left( {\varphi ,\theta ,\psi } \right) \cdot {\user2{B}}\left( {\alpha ,\beta } \right) = \int_{{O_{c} }}^{\text{sur}} {m{\kern 1pt} {\user2{a}}_{i} } + \int_{\text{sur}}^{\text{R}} {m{\kern 1pt} {\user2{a}}_{j} } ,$$

where a i  = [a i,Hx a i,Hy a i,V ] and a j  = [a jHx a j,Hy a j,V ] are the corresponding horizontal and vertical accelerations of the micro units tethered in air and water, respectively. Therefore, a tether induced disturbance at position r t  = [r tx r ty r tz ] of the tow point in the ROV end frame is

$$\user2{\tau}_{\text{disturb}} = {\user2{r}}_{t} \times {\user2{T}}_{R} = \left[ {\begin{array}{*{20}c} {r_{ty} V_{R} - r_{tz} F_{Ry} } \\ {r_{tz} F_{Rx} - r_{tx} V_{R} } \\ {r_{tx} F_{Ry} - r_{ty} F_{Rx} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {\tau_{\text{disturbx}} } \\ {\tau_{\text{disturby}} } \\ {\tau_{\text{disturbz}} } \\ \end{array} } \right].$$
(18)

Simulations and Experiments

Case Study 1, Streamline Underwater Vehicle

An integrated and AUV was applied for cruising experiments (see Figure 3). The cruising, diving, and yawing of the AUV were realized using a propeller, a pair of rudders, and wings. Navigation and position reckoning were realized using a magnetic compass, depth gauge, and Doppler velocity meter (DVL). The vehicle size and inertial and hydrodynamic parameters are illustrated in Tables 1 and 2, respectively.

Figure 3
figure3

Portable streamline AUV

Table 1 Inertial parameters
Table 2 Hydrodynamic dimensionless coefficients

Cruising experiments in the vertical and horizontal planes were conducted in Songhua Lake of Jilin Province, China. In the experiments on the vertical plane, the desired depths were 3, 15, and 30 m in sequence. The disturbances were obtained using a current sensor. Through control of the horizontal fins, the vehicle was able to follow the desired change in depth accurately using a designed adaptive controller. The desired path during the experiments on the horizontal plane is illustrated in Figure 4(e), the coordinates of the start point are (836, − 194), whereas the coordinates of the end point are (475, − 164). As the experiments indicated, the designed adaptive controller can realize a precise path following a disturbance. Therefore, it can be further applied to the coordinate control of a streamlined vehicle and manipulator.

Figure 4
figure4

Path following experiments

For the vehicle and manipulator coordinate simulations, the streamlined vehicle-manipulator system was remodeled and equipped with a manipulator model using MATLAB. The system includes a 6-DOF streamline underwater vehicle and a 4-DOF manipulator. During the simulation, the vehicle was equipped with one main thruster, two side thrusters, and four vertical thrusters for attitude and position control. The parameters of the manipulator are provided in Tables 3 and 4. The rotation angles of the joints are defined as θ1, θ2, θ3, and θ4, from the base joint to the wrist. The manipulation process is controlled through the adaptive controller described in Section 2. The disturbances from the coupling and restoring forces were observed based on the real-time position and attitude of the vehicle and manipulator.

Table 3 Size parameters of the manipulator
Table 4 Parameters of the manipulator swing and pitch joints

During the simulation shown in Figure 5, the vehicle and manipulator system completed the planned manipulation process. For the first 300 s, the end-effector moved downward from the preliminary position, and it was planned to move upward along the XOZ plane during the second 300 s, and upward along the YOZ plane during the final 300 s. Disturbances including coupling forces and restoring moments were observed and compensated. The manipulator moved smoothly downward along the desired trajectory. The manipulator then moved upward and back. The manipulation process was realized in a precise and successful manner.

Figure 5
figure5

Simulation of vehicle and manipulator coordination

Case Study 2, Open Frame Underwater Vehicle

The experimental platform of the open frame underwater vehicle (SY-II ROV) is shown in Figure 6. It was equipped with a depth gauge, DVL, and magnetic compass as motion sensors, and six thrusters, including two main thrusters, two lateral thrusters, and two vertical thrusters, as the propulsion system. Data and power were transmitted through a neutrally buoyant tether. The parameters of its tether, hydrodynamics, and inertia are illustrated in Tables 5, 6, and 7, respectively.

Figure 6
figure6

SY-II ROV and tank

Table 5 Tethered cable parameters
Table 6 Inertial parameters of SY-II ROV platform
Table 7 Hydrodynamic parameters of SY-II ROV platform

The experiments were conducted in a 50 m × 30 m × 10 m tank. Wave and local current generation devices (see Figure 6) were applied to analyze the tether effect. These devices can generate waves and a current from a wave generator to a wave beach with orientations of approximately 300° according to the vehicle’s magnetic compass. To simulate disturbances in a complex oceanic environment, we not only set the current speed to 0.1 m/s, but also generated an irregular Jonswat spectrum wave.

During the position control experiment shown in Figures 7(a)‒(e), the motion states of SY-II ROV (u, v, w, p, q, r, φ, θ, and ψ) were measured using a DVL, depth gauge, and magnetic compass. During the control operation, the target position was (0, − 12, 5), and the tether-immersed part was lengthening along with SY-II ROV in advance. The observed disturbance force F Rx increased until the lateral position was close to − 12 N, when the SY-II ROV head was pointing at the target position, i.e., 210°. After the SY-II ROV regulated its heading and shifted longitudinally toward the target, the observed disturbance forces F Ry and V R increased. The designed adaptive dynamic controller operated better at a reduced longitudinal offset than the controller with a sigmoid-function owing to a more effective heading control.

Figure 7
figure7

Position control experiments during disturbances to SY-II ROV

Along the 3D path following the experiments shown in Figure 6(e), the tracking errors of the sigmoid-function controller were unacceptable, whereas the designed adaptive dynamic controller followed the desired path with errors of less than ± 2 m.

To analyze the disturbance from a manipulator, a three-function and 2 DOF manipulator was equipped on the SY-II ROV (see Figure 8), the correlated parameters of which are illustrated in Table 8. When considering the weight and electrical loading capacity, the manipulator had two DOFs in terms of pitch. In the tank experiments shown in Figure 9, the shoulder and elbow joints rolled simultaneously and individually, whereas the SY-II ROV maintained its attitude and position using the designed adaptive controller. This type of control is very important for high-efficiency hovering manipulation during remote operation or autonomous mode. During the experiments, the angular velocities of the joints were set to 0.35 rad/s. The starting acceleration of each joint was 1 rad/s2. Disturbances from the manipulator revealed that the coupling forces increased suddenly at the joint acceleration moment, whereas the restoring forces maintained a steady state with the manipulator pitching at a uniform speed. The designed model-based adaptive controller can estimate the disturbances from the manipulator and compensate for them concurrently, whereas the S surface controller compensates the vehicle motion according to the deviations. Therefore, the designed model-based adaptive controller could obtain steadier and accurate vehicle motions for time-varying disturbances during the experiments.

Figure 8
figure8

Manipulator and its added mass

Table 8 Parameters of the manipulator
Figure 9
figure9

Coordinate control experiments of SY-II ROV and its manipulator

Conclusions

  1. (1)

    A model-based adaptive controller was designed based on the multi-body system of a vehicle, tether, and manipulator. In the dynamic model, the controller can observe and compensate disturbances from the tether and manipulator and thus realize accurate operation control.

  2. (2)

    An analysis of the tether disturbance was conducted considering three aspects: the surface section, underwater section, and vehicle end point. The disturbance effects mainly included coupling forces, and the restoring moments from the manipulator to the vehicle were investigated.

  3. (3)

    The experiments on an ROV with a tether verified the capability of the controller and observer to achieve accurate cruising, whereas the vehicle and manipulator coordinate motion control used during the simulation and experiments verified the underwater operation of the controller and observer.

References

  1. 1.

    P Ridaoa, M Carrerasa, D Ribasa, et al. Intervention AUVs: The next challenge. Annual Reviews in Control, 2015, 40: 227–241.

  2. 2.

    G E Packard, S Roger, C Reed, et al. Hull inspection and confined area search capabilities of REMUS autonomous underwater vehicle. MTS/IEEE Conference, OCEAN’10, Seattle, September 20–23, 2011.

  3. 3.

    Taylor Mikell, Wilby Andy. Design considerations and operational advantages of a modular AUV with Synthetuc aperture sonar. MTS/IEEE Kona Conference, OCEAN’11, September 19–22, 2011: 1–6.

  4. 4.

    F E Maaten, P Dave, S Peter, et al. Autosub long range: Along range deep diving AUV for ocean monitoring. 2012 IEEE/OES Autonomous Underwater Vehicle, Southampton, UK, September 24–27, 2012: 1–6.

  5. 5.

    O T Odegard, O P Pedersen. ANCOR II processing and visualization software applied to Barents Sea ADCP and CTD data acquired by the HUGIN 1000 HUS AUV. MTS/IEEE Conference, OCEAN’10, Seattle, September 20–23, 2010.

  6. 6.

    B Amos, P A Alison, B Bradley, et al. Towards automated thruster control in a small observation class ROV. Proceedings of the International Offshore and Polar Engineering Conference, June 21–26, 2015: 564–571.

  7. 7.

    M Mahesh, T loseba. ROV Automation underwater intervention 2012. Underwater Intervention Conference 2012, New Orleans, January 24–26, 2012: 837–850.

  8. 8.

    V Rigaud, E C Maniere, A M Probert, et al. UNION: underwater intelligent operation and navigation. Robotics & Automation Magazine, IEEE, 1998, 5(1): 25–35.

  9. 9.

    G Marani, J Yuh. Introduction to autonomous manipulation. Springer, 2014.

  10. 10.

    P Cieslak, P Ridao, M Giergie, et al. Autonomous underwater panel operation by GIRONA500 UVMS: A Practical Approach to Autonomous Underwater Manipulation. 2015 IEEE International Conference on Robotics and Automation Washington State Convention Center Seattle, Washington, May 26–30, 2015: 529–534.

  11. 11.

    S P Hsu, T S Liu. Modifications of control loop to improve the depth response of autonomous underwater vehicles. Mathematical Problems in Engineering, 2014: 1–12.

  12. 12.

    H Joe, M Kim, S C Yu, et al. Second-order sliding-mode controller for autonomous underwater vehicle in the presence of unknown disturbances. Nonlinear Dyn., 2014, 78: 183–196.

  13. 13.

    Q Hoang, N K Edwin. Adaptive PD-controller for positioning of a remotely operated vehicle close to an underwater structure: theory and experiments. Control Eng. Practice, 2007, 15: 411–419.

  14. 14.

    A Bagheri, T Karimi, N Amanifard, et al. Tracking performance control of a cable communicated underwater vehicle using adaptive neural network controllers. Appl. Soft Comput., 2010, 10: 908–918.

  15. 15.

    C S Chin, S H Lum. Rapid modeling and control systems prototyping of a marine robotic vehicle with model uncertainties using xPC target system. Ocean Engineering, 2011, 38(17–18): 2128–2141.

  16. 16.

    M J Zhang, Z Z Chu. Adaptive sliding mode control based on local recurrent neural networks for underwater robot. Ocean Engineering, 2012, 45: 56–62.

  17. 17.

    C L Zha, X L Ding, Y S YU, et al. Quaternion-based nonlinear trajectory tracking control of a quadrotor unmanned aerial vehicle. Chinese Journal of Mechanical Engineering, 2017, 30(1): 77–92.

  18. 18.

    J L Dantas, J J D Cruz, A B Ettore. Study of autonomous underwater vehicle wave disturbance rejection in the diving plane. Journal of Engineering for the Marine Time Environment. 2014, 228(2): 122–135.

  19. 19.

    F D Gao, C Y Pan, X J Xu, et al. Design and mechanical performance analysis of a new wheel propeller. Chinese Journal of Mechanical Engineering. 2011, 24(5): 805–812.

  20. 20.

    E Peymani, T I Fossen. Path following of underwater robots using Lagrange multipliers. Robotics and Autonomous Systems, 2015, 67, 44–52.

  21. 21.

    M A Jordán, J L Bustamante. Guidance of underwater vehicles with cable tug perturbations under fixed and adaptive control systems. IEEE Journal of Oceanic Engineering, 2008, 33(4): 579–598.

  22. 22.

    A J Mario, L B Jorge. Guidance of underwater vehicles with cable tug perturbations under fixed and adaptive control systems. IEEE Journal of Oceanic Engineering, 2008, 33(4): 579–598.

  23. 23.

    J H Han, W K Chung. Active use of restoring moments for motion control of an underwater vehicle-manipulator system. IEEE Journal of Oceanic Engineering, 2014, 39(1): 100–109.

  24. 24.

    S Mohan, J W Kim. Indirect adaptive control of an autonomous underwater vehicle-manipulator system for underwater manipulation tasks. Ocean Engineering, 2012, 54: 233–243.

  25. 25.

    C S Chin, M W S Lau, E Low, et al. Software for modeling and simulation of a remotely operated vehicle. International Journal of Simulation Modeling, 2006, 5(3): 114–125.

  26. 26.

    F D Gao, C Y Pan, X J Xu, et al. Nonlinear dynamic characteristics of the vectored thruster AUV in complex sea conditions. Chinese Journal of Mechanical Engineering, 2011, 24(6): 935–946.

  27. 27.

    Y Li, L Zhang, L Wan, et al. Optimization of S-surface controller for autonomous underwater vehicle with immune-g alenetic algorithm. Journal of Harbin Institute of Technology (New Series), 2008, 15(3): 404–410.

  28. 28.

    T I Fossen. Handbook of marine craft hydrodynamics and motion control. Wiley, 2011.

  29. 29.

    A Montano, M Restelli, R Sacco, et al. Numerical simulation of tethered buoy dynamics using mixed finite elements. Computer Methods in Applied Mechanics and Engineering, 2007, 196(41–44): 4117–4129.

Download references

Authors’ contributions

G-CZ and HH have carried the project conception and controller design and manuscript writing. J-YL and QZ have performed experiments and resposible with data collection. J-YX and H-DQ participated in experiments and manuscript writing. All authors read and approved the final manuscript.

Authors' Information

Hai Huang born in 1978, is currently an associate professor at National Key Laboratory of Science and Technology on Autonomous Underwater Vehicle, Harbin Engineering University, China. He received his PhD degree on mechatronics from Harbin Institute of Technology, China, in 2008. His research interests include underwater vehicle and intelligent robotics.

Guo-Cheng Zhang born in 1983, is currently a lecture at National Key Laboratory of Science and Technology on Autonomous Underwater Vehicle, Harbin Engineering University, China. He received his PhD degree on naval architecture and marine engineering from Harbin Engineering University, China, in 2013. His research interests include underwater vehicle.

Ji-Yong Li born in 1992, is currently a PhD candidate at National Key Laboratory of Science and Technology on Autonomous Underwater Vehicle, Harbin Engineering University, China.

Qiang Zhang born in 1981, is currently a lecture at National Key Laboratory of Science and Technology on Autonomous Underwater Vehicle, Harbin Engineering University, China. His research interests include underwater vehicle.

Jin-Yu Xu born in 1993, is currently a Master candidate at National Key Laboratory of Science and Technology on Autonomous Underwater Vehicle, Harbin Engineering University, China.

Hong-De Qin born in 1976, is currently a professor and a PhD supervisor at National Key Laboratory of Science and Technology on Autonomous Underwater Vehicle, Harbin Engineering University, China. His research interests include underwater vehicle and intelligent robotics.

Acknowledgements

Supported by National Natural Science Foundation of China (Grant Nos. 5129050, 51579053, 61633009), Major National Science and Technology Project of China (Grant No. 2015ZX01041101), and Key Basic Research Project of “Shanghai Science and Technology Innovation Plan” of China (Grant No. 15JC1403300).

Competing Interests

The authors declare that they have no competing interests.

Ethics approval and consent to participate

Not applicable.

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Author information

Correspondence to Guo-Cheng Zhang.

Additional file

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Huang, H., Zhang, G., Li, J. et al. Model Based Adaptive Control and Disturbance Compensation for Underwater Vehicles. Chin. J. Mech. Eng. 31, 19 (2018). https://doi.org/10.1186/s10033-018-0218-5

Download citation

Keywords

  • Underwater vehicle
  • Adaptive control
  • Disturbance observer
  • Multi-body dynamic model