1. Introduction
Unequivocally, the technological revolution is mounting at a fascinating pace. While it was in the first industrial revolution when water and steam were utilized to automate the production process, information technologies replaced such resources in the third wave. Today, we stand on the bridge of a new revolution, namely Industry 4.0 [Reference Xu, Xu and Li1], which is expected to fundamentally change our work setting, environment, and lifestyle. The robotics field is one of the most significant contributors to this revolution [Reference Atkeson, Benzun and Banerjee2]. In fact, robotic technologies have already been utilized to improve industrial production by means of integrating new systems to replicate human activities in dangerous work settings [Reference Bautista and Wane3]. Nowadays, robotics can be used in many fields and for many purposes, such as in military [Reference Liu, Sun and Qian4], in the medical industry [Reference Ferguson, Cai and Reed5, Reference Sadeque and Balachandran6], and in dangerous manufacturing processes to eliminate human intervention [Reference Clancy, Peeters and Oliveri7]. However, for robotics to favorably shape this revolution, several challenges must be overcame, such as the control of highly unstable nonlinear systems [Reference Atkeson, Benzun and Banerjee2] addressed in the research put forth.
The control of uncertain nonlinear dynamic systems is one of the highly challenging topics in the nonlinear control engineering field. In particular, perturbations resulting from system’s internal dynamic parameters, namely unmodeled dynamics, as well as external disturbances [Reference He, Li, Dong and Zhao8, Reference Al-Shuka and Song9], directly affect the performance of such complex nonlinear systems. That is, for proper operation, system stability and robust performance against such disturbances need to be maintained. A promising approach is to maintain the nonlinear dynamics model of the robotic system in its control design to formulate a new solution. This, however, presents a multitude of challenges because of, firstly, the lack of an analytical solution to the robot motion nonlinear equations. Secondly, dynamic models are directly affected by numerous phenomena such as nonlinear friction, backlash, saturation, and deadzone. Lastly, dynamic uncertainties and lack of feedback signals can be also problematic because of their necessary use to compute the dynamic parameters of the robotic system. In short, recent research has been motivated by such issues, which directly affect robot’s performance.
Numerous previous work [Reference Rahman, Saad, Kenné and Archambault10–Reference Lee and Lee12] attempted to model and control manipulator robots by using centralized control schemes. Nevertheless, in these approaches, the control design requires precise knowledge of robot’s whole dynamic model, known as model-based control. In other words, the estimation of robots’ dynamic model is still considered an open problem, especially when the robot has high degrees of freedom (DOFs) [Reference Krstic, Kanellakopoulos and Kokotovic13]. The design of classical control methods, applied to manipulator robots, is based on the precise extraction of robot’s dynamic model. Practically, exact modeling of robot’s dynamics is highly challenging due to the uncertainty and unavailability of some measurement variables such as the velocity feedback. As such, Adaptive Robust Control (ARC) methods based on the Lyapunov theory were formulated and shown to be effective in addressing this problem [Reference Khan14–Reference Luna, Rahman and Saad17]. ARCs achieve this by assuming uncertainties to be linear in parameters, whereby using an updating law, individual uncertain system parameters can be approximated. Besides, robust control offers the additional advantage of eliminating external disturbances and unmodeled dynamic effects. Nonetheless, ARCs use a projection operator in their updating laws, which still requires lower and upper bounds knowledge of robot’s individual uncertain dynamic model. Besides, robot’s structural knowledge is further needed to identify and quantify robot’s dynamic model [Reference Huang and Chien18]. A promising solution is to use a time delay estimation (TDE) [Reference Roy and Kar19, Reference Brahmi, Saad and Luna20] to approximate such uncertainties. This is achieved by introducing a fixed artificial time delay and then utilizing prior data to approximate system’s unknown dynamics and uncertainties. However, in real time, state derivative feedbacks, such as velocity and acceleration, of the manipulator robot are not explicitly available, which are necessary to compute TDE’s control law [Reference Roy and Kar19, Reference Brahmi, Saad and Luna20]. A common practice is to estimate such derivative variables by numerically differentiating the position response. In most cases, this response, however, contains a lot of noise, which causes measurement errors and thus degrades control accuracy [Reference Roy and Kar19, Reference Brahmi, Saad and Luna20]. Other employed solutions include decentralized control approaches [Reference Luna, Rahman and Saad17, Reference Ochoa Luna, Habibur Rahman and Saad21]. One of those is the decentralized adaptive control, based on the virtual decomposition approach, proposed in refs. [Reference Aviles, Ortega and Hurtado22, Reference Brahmi, Saad and Gauthier23], whereby robot’s whole dynamic model is virtually broken down into several individual subsystems. Adaptation-based control approaches, based on fuzzy logic and/or neural networks, have been also employed to approximate robot’s dynamic model [Reference Chen, Ge, Wu and Gong24, Reference Li, Su, Li and Su25]. However, the use of these approaches to compute complex systems’ unknown dynamic parameters, in real time, imposes computational difficulties, making the implementation of the adaptation-based control questionable.
Advanced adaptive approaches, on the other hand, are promising solutions for this type of robots. In contrast to regressor-based control methods [Reference He, Li, Dong and Zhao8, Reference Al-Shuka and Song9], several control approaches are designed to suppress the use of a regressor [Reference Huang and Chien18, Reference Chien and Huang26]. The Function Approximation Technique (FAT) is one of the regressor-free controllers, which has been successfully employed to approximate unknown dynamics of rigid robot manipulators [Reference Huang and Chien18, Reference Chien and Huang26]. The key element in this approach is the use of a finite linear combination of orthonormal basis functions in order to estimate robot’s dynamics model. However, it still suffers from the major limitation of providing desirable performance only when using the basis function.
In light of the aforementioned limitations, in the research put forth, a new adaptive backstepping controller is designed and applied to a manipulator robot with unknown dynamics and subjected to external forces. In contrast to the conventional FAT controller, the implementation of the Modified Function Approximation Technique (MFAT) completely eliminates the need for basis functions to approximate dynamic parameters and external, unmatched perturbation, forces. The use of the backstepping approach is motivated by its potential to compensate for matched perturbations, namely uncertainties, whereby those would decrease and vanish along the state variables. Such a combination results with a robust control scheme against matched and unmatched perturbations, all in the absence of the manipulator robot dynamics model. In addition, the proposed control scheme is improved via adding a high-order sliding mode observer [Reference Levant27] to eliminate the need for velocity measurements. Utilizing the Lyapunov function theory, it is further shown that all signals are uniformly ultimately bounded (UUB) in the closed-loop form. Lastly, simulation and comparative studies are conducted to show the efficiency and efficacy of the proposed control approach applied to an industrial manipulator robot (ABB IRB 140) [Reference Suárez and Heredia28]. The main contributions of this study can be summarized as follows:
-
• A novel adaptive backstepping controller is proposed to provide continuous manipulator’s trajectories performance tracking utilizing state and output feedback.
-
• MFAT-based adaptive controller is designed for an unknown dynamics robot via state and output feedback, whereby prior knowledge of lower and upper bounds of the individual uncertain system parameters’ is not needed.
-
• Unlike the FAT controller, MFAT eliminates the need for basis functions required to approximate dynamic and actuator’s parameters.
-
• High-order sliding mode observer is integrated with the proposed control scheme to eliminate the need for velocity measurements.
-
• Simulation and experimental comparative studies are conducted to show the proposed control scheme’s potential superior performance in terms of providing good performance tracking, relatively small steady-state error, and unknown parameters precise estimation.
The remainder of this paper is structured as follows: in Section 2, preliminaries and problem formulation are presented. The control scheme is detailed in Section 3. Simulation and comparative studies are conducted in Section 4. Finally, conclusions made therefrom and future work are discussed in Section 5.
2. Preliminaries and problem formulation
2.1. Problem formulation
The dynamic behavior of a manipulator robot with n-DOFs can be written as:
where
$\eta,\dot{\eta}$
, and
$\ddot{\eta}\in \mathbb{R} ^{n}$
denote the angular rotation, velocity, and acceleration vectors of each joint, respectively.
$M(\eta)\in \mathbb{R}^{n\times n}$
denotes the positive definite mass/inertia matrix,
$C(\eta,\dot{\eta}) \in\mathbb{R}^{n\times n}$
represents the Coriolis and centrifugal matrix, and
$G(\eta)\in\mathbb{R}^{n}$
designates the gravitational forces.
$\tau\in\mathbb{R}^{n}$
is the control torque vector while
$f_{ex}\in\mathbb{R}^{n}$
represents external forces, namely friction, backlash, and payload.
The primary objective in this paper is to design an adaptive control scheme to ensure that: (1) the manipulator robot given by (1) can accurately track the desired trajectory (
$\eta_{d}$
), even though robot’s dynamics model is completely unknown and (2) tracking errors are UUB.
Assumption 1: Reference trajectories
$\eta_{d}, \dot{\eta}_{d}$
, and
$\ddot{\eta}_{d}$
are known, smooth, continuous, and bounded.
Assumption 2: System vectors and matrices
$M(\eta)$
,
$C(\eta, \dot{\eta})$
,
$G(\eta)$
, and
$f_{ex}$
are unknown; however,
$M^{-1}(\eta)$
exists.
Assumption 3:
$f_{ex}$
and its derivative are continuous, smooth, and bounded.
Assumption 4: Frictional forces resulting from robot’s dynamic model do not include viscous friction.
Property 1:
$\dot{M}-2C$
is a skew-symmetric matrix. That is,
$ \forall \eta,\dot{\eta}\in \mathbb{R} ^{n}, \eta^{T}(\dot{M}-2C)\eta=0$
.[Reference Craig29]
Lemma 2.1: Consider the continuous and positive definite Lyapunov function V(y). If
$\gamma _{1}(\left \| y \right \|)\leq V(y)\leq\gamma _{2}(\left \| y \right \|)$
, and its derivative
$\dot{V}(y)=dV(y)/dt$
fulfills
$\dot{V}(y)\leq-k_{i}V(y)+C_{i}$
, where
$k_{i}$
and
$C_{i}$
are positive constants, the solution y, thus, becomes also bounded.[Reference Li, Yang and Fan30]
3. Control design
3.1. Model-based control scheme
Tracking errors are defined as follows:
where
$\Lambda \in \mathbb{R}^{n\times n}$
is a diagonal positive-definite matrix and
$\alpha$
is the virtual control constant.
Step 1: Define the positive-definite Lyapunov function as follows:
Differentiating
$V_{1}$
with respect to time, and using Eqs. (2)–(3), the following is obtained:
Substituting (4) into (7) yields
From (7), it is remarked that
$\dot{V}_{1} =-e_{1}^{T}\Lambda e_{1}$
if
$e_{2}=0$
. This means that
$e_{1}$
is asymptotically stable.
Step 2: From (3), the following is inferred:
Substituting (9) and (10) into (1) yields
Define the second positive-definite Lyapunov function as follows:
Differentiating
$V_{2}$
gives
Substituting (
$M(\eta)\dot{e}_{2}$
), from (11), into (13), and using Property 1, results with:
where
$\mu=(M(\eta)\zeta+C(\eta, \dot{\eta})\alpha+G(\eta)+f_{ex})$
. Designate the model-based control
$\tau$
to be:
where
$K \in \mathbb{R}^{n\times n}$
is a diagonal positive-definite matrix.
$V_{2}$
then becomes
This results with system (1) being stable; to which, the following theorem can be obtained.
Theorem 3.1: Designing a model-based torque control (15), for the manipulator robot system (1), renders the whole system and its error signals as asymptotically stable.
Proof: It can be noticed that
$\dot{V}_{2}$
is negative semi-definite. Therefore, using Barbalat’s lemma, it can be shown that
$e_1$
and
$e_2$
converge to zero. It directly follows that system (1) is asymptotically stable.
3.2. State-feedback-based adaptive function approximation approach
As stated in Assumption 2, system’s matrices and vectors
$M(\eta)$
,
$C(\eta, \dot{\eta})$
,
$G(\eta)$
, and
$f_{ex}$
are unknown. Therefore, the model-based control (15) is practically unavailable. As such, a new MFAT is employed to approximate all unknown dynamics.
In this context, the adaptive control that ensures the stability of the manipulator robot (1), as well as guarantees that tracking errors are UUB in the closed loop, is designed as follows:
where
$\hat{M}$
,
$\hat{C}$
, and
$\hat{G}$
are the respective estimates of M, C, and G. Instead of formulating the manipulator robot matrices (1) by the FAT approach [Reference Huang and Chien18, Reference Chien and Huang26], a new modification is introduced. This is to eliminate the use of basis function, which are usually manually chosen in FAT, thus directly affecting the adaptation precision. Consider the following formulation:
\begin{align} \left\{\begin{matrix} M_{e} = M-\varepsilon_{M}\\[3pt] C_{e} = C-\varepsilon_{C}\\[3pt]G_{e} = G-\varepsilon_{G}\\[3pt]F_{e} = f_{ex}-\varepsilon_{f_{ex}}\end{matrix}\right.\end{align}
where
$M_{e}\in \mathbb{R}^{n \times n}, C_{e}\in\mathbb{R}^{n\times n}$
,
$G_{e}\in\mathbb{R}^{n}$
, and
$F_{e}\in\mathbb{R}^{n}$
are the respective best approximations of the inertia/mass matrix, Coriolis and centrifugal matrix, gravitational force, and external forces.
$\varepsilon_{M}\in \mathbb{R}^{n \times n}$
,
$ \varepsilon_{C}\in\mathbb{R}^{n\times n}$
,
$\varepsilon_{G}\in\mathbb{R}^{n}$
, and
$\varepsilon_{f_{ex}}\in\mathbb{R}^{n}$
denote the bounded approximation errors.
Substituting Eq. (18) into (11), the closed-loop system becomes
where
$\varepsilon=\varepsilon(\varepsilon_{M},\varepsilon_{C},\varepsilon_{G}, \varepsilon_{f_{ex}})\in \mathbb{R}^{n}$
is the lumped approximation error vector. Therefore, the control torque input can be designed as follows:
Replacing the control torque input (20) into (19) gives
where
$\tilde{M}_{e}={M}_{e}-\hat{M}_{e}, \tilde{C}_{e}={C}_{e}-\hat{C}_{e}$
,
$\tilde{G}_{e}={G}_{e}-\hat{G}_{e}$
, and
$\tilde{F}_e=F_{e}-\hat{F}_{e}$
are the estimation errors.
Remark 1: Unlike the conventional FAT [Reference Huang and Chien18, Reference Chien and Huang26] approach which ignores
$\varepsilon_{M}$
,
$\varepsilon_{C}$
,
$\varepsilon_{G}$
, and
$\varepsilon_{f_{ex}}$
approximation errors, these are considered in the proposed controller. Their variations are bounded and fulfill:
$\left \| \varepsilon \right \|\leq \gamma$
, whereby
$\gamma$
is a small unknown positive constant.
The Lyapunov candidate function is chosen as:
where
$\Lambda_{M_{e}}\in\mathbb{R}^{n \times n}$
,
$\Lambda_{C_{e}}\in\mathbb{R}^{n\times n}$
,
$\Lambda_{G_{e}}\in\mathbb{R}^{ n\times n}$
, and
$\Lambda_{F_{e}}\in\mathbb{R}^{ n\times n}$
are diagonal positive-definite matrices.
$Tr(.)$
is the trace operation of a matrix.
Substituting (8) into the time derivative of (22), the following is obtained:
\begin{align} \dot{V}_{3} = &-e_{1}^{T}\Lambda e_{1} +e_{1}^{T}e_{2}+e_{2}^{T}{M}\dot{e}_{2}+\frac{1}{2} e_{2}^{T}\dot{M}e_{2} \nonumber\\[5pt]& +Tr\left( \dot{\tilde{M}}_{e}^{T}\Lambda_{M_{e}}\tilde{M}_{e}+\dot{\tilde{C}}_{e}^{T}\Lambda_{C_{e}}\tilde{C}_{e}+\dot{\tilde{G}}_{e}^{T}\Lambda_{G_{e}}\tilde{G}_{e}+\dot{\tilde{F}}_{e}^{T}\Lambda_{F_{e}}\tilde{F}_{e}\right) \end{align}
Substituting
$M\dot{e}_{2}$
from (21), and replacing the control torque (20), Eq. (23) becomes
\begin{align}\dot{V}_{3} & =-e_{1}^{T}\Lambda e_{1}+ e_{2}^{T}\left( \frac{1}{2}\dot{M}-C\right) e_{2}-e_{2}^{T}Ke_{2}-e_{2}^{T}\tilde{M}_{e}\zeta-e_{2}^{T}\tilde{C}_{e}\alpha-e_{2}^{T}\tilde{G}_{e}\nonumber\\[5pt]& -e_{2}^{T}\tilde{F}_{e}+e_{2}^{T}\varepsilon+Tr\left( \dot{\tilde{M}}_{e}^{T}\Lambda_{M_{e}}\tilde{M}_{e}+\dot{\tilde{C}}_{e}^{T}\Lambda_{C_{e}}\tilde{C}_{e}+\dot{\tilde{G}}_{e}^{T}\Lambda_{G_{e}}\tilde{G}_{e}+\dot{\tilde{F}}_{e}^{T}\Lambda_{F_{e}}\tilde{F}_{e}\right)\end{align}
Thereafter, Property 1 and the following relationships are utilized:
to reduce (24) to:
\begin{align}\dot{V}_{3} = & -e_{1}^{T}\Lambda e_{1} -e_{2}^{T} Ke_{2}+e_{2}^{T}\varepsilon -Tr\left( \zeta e_{2}^{T} \tilde{M}_{e}+\alpha e_{2}^{T}\tilde{C}_{e}+\tilde{G}_{e} e_{2}^{T}+\tilde{F}_{e}e_{2}^{T}\right)\nonumber \\[5pt]& +Tr\left( \dot{\tilde{M}}_{e}^{T}\Lambda_{M_{e}}\tilde{M}_{e} +\dot{\tilde{C}}_{e}^{T}\Lambda_{C_{e}}\tilde{C}_{e}+\dot{\tilde{G}}_{e}^{T}\Lambda_{G_{e}}\tilde{G}_{e}+\dot{\tilde{F}}_{e}^{T}\Lambda_{F_{e}}\tilde{F}_{e}\right) \end{align}
Therefore, the following is obtained:
\begin{align}\dot{V}_{3} = & -e_{1}^{T}\Lambda e_{1} -e_{2}^{T}Ke_{2}+e_{2}^{T}\varepsilon +Tr\left(\left( \dot{\tilde{M}}_{e}^{T}\Lambda_{M_{e}}-\zeta e_{2}^{T}\right) \tilde{M}_{e}\right) \nonumber \\[5pt]& +Tr\left( \left(\dot{\tilde{C}}_{e}^{T}\Lambda_{C_{e}}-\alpha e_{2}^{T}\right)\tilde{C}_{e}\right)+Tr\left(\left(\dot{\tilde{G}}_{e}^{T}\Lambda_{G_{e}}-e_{2}^{T}\right) \tilde{G}_{e}\right) +Tr\left( \left(\dot{\tilde{F}}_{e}^{T}\Lambda_{F_{e}}-e_{2}^{T}\right) \tilde{F}_{e} \right) \end{align}
where
$\left(\, \tilde{.}\,\right) _{e}=\left( {.}\right) _{e}-\left(\hat{.}\right) _{e}$
. To ensure stability of the manipulator robot (negative semi-definite of the Lyapunov function candidate (
$\dot{V}_{3}$
) time derivative), the updated laws are designed as follows:
\begin{align}\left\{\begin{array}{l}\dot{\hat{M}}_{e}^T = \left(\zeta e_{2}^T + \mu_{M_{e}}\hat{M_{e}}^T \right) \Lambda_{M_{e}}^{-1} \\[7pt]\dot{\hat{C}}_{e}^T = \left(\alpha e_{2}^T+ \mu_{C_{e}}\hat{C}_{e}^T \right) \Lambda_{C_{e}}^{-1}\\[7pt]\dot{\hat{G}}_{e}^T = \left( e_{2}^T+ \mu_{G_{e}}\hat{G}_{e}^{T}\right) \Lambda_{G_{e}}^{-1} \\[7pt]\dot{\hat{F}}_{e}^T = \left( e_{2}^T+ \mu_{F_{e}}\hat{F}_{e}^{T}\right) \Lambda_{F_{e}}^{-1} \end{array}\right.\end{align}
whereby,
$\mu_{\left( .\right)_{e}}>0$
and is defined as:
\begin{equation*}\left\{\begin{matrix}\lim _{t\to\infty}\mu_{\left( .\right)_{e}}=0 \\[5pt]\int_{0}^{t}\mu_{\left( .\right)_{e}} dt=Q_{(.)s} <\infty\end{matrix}\right.\end{equation*}
Substituting (31) into (30) gives
\begin{align}\dot{V}_{3} = & -e_{1}^{T}\Lambda e_{1} -e_{2}^{T}Ke_{2}+e_{2}^{T}\varepsilon +\mu_{M_{e}} Tr\left( \hat{M}_{e}^{T}\tilde{M}_{e}\right) +\mu_{C_{e}} Tr\left( \hat{C}_{e}^{T}\tilde{C}_{e}\right) \nonumber \\[5pt]& +\mu_{G_{e}}Tr\left( \hat{G_{e}}^{T}\tilde{G}_{e}\right) +\mu_{F_{e}}Tr\left( \hat{F_{e}}^{T}\tilde{F}_{e}\right) \end{align}
Based on Remark 1, Young’s inequality, and trace properties, the following is obtained:
\begin{equation*}e_{2}^{T}\varepsilon \leq \dfrac{e_{2}^{T}e_{2}}{2}+\dfrac{\gamma^{2}}{2}\end{equation*}
\begin{equation*}Tr\left( \left(\hat{.}_{e}\right)^{T}\left(\;\tilde{.}_{e}\right) \right)\leq \dfrac{1}{2}Tr\left(\left({.}_{e}\right)^{T}\left( {.}_{e}\right) \right) -\dfrac{1}{2}Tr\left(\left(\;\tilde{.}_{e}\right)^{T}\left(\;\tilde{.}_{e}\right) \right) \end{equation*}
The proof of the above trace relationship can be found in the Appendix 6.2.
Equation (32) thus becomes
\begin{align}\dot{V}_{3} & \leqslant -e_{1}^{T}\Lambda e_{1}-e_{2}^{T}\left( K-\dfrac{1}{2}I_{n\times n}\right)e_{2} -\dfrac{\mu_{M_{e}}}{2}Tr\left(\left( \tilde{M}_{e}\right)^{T}\left( \tilde{M}_{e}\right)\right) \nonumber \\[5pt]& \quad -\dfrac{\mu_{C_{e}}}{2}Tr\left(\left( \tilde{C}_{e}\right)^{T}\left( \tilde{C}_{e}\right) \right) -\dfrac{\mu_{G_{e}}}{2}Tr\left(\left( \tilde{G}_{e}\right)^{T}\left( \tilde{G}_{e}\right) \right) -\dfrac{\mu_{F_{e}}}{2}Tr\left(\left( \tilde{F}_{e}\right)^{T}\left( \tilde{F}_{e}\right) \right) \nonumber \\[5pt]& \quad +\dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right)+\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right) \nonumber \\[5pt]& \quad +\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right)+\dfrac{\gamma^{2}}{2} \nonumber \\[5pt]\dot{V}_{3}& \leqslant -k_{1}V_{3}+C_{1} \end{align}
where
\begin{equation*}k_{1}=\min \begin{Bmatrix}\min \Lambda, \min \left( K-\dfrac{1}{2}I_{n\times n}\right) ,\min \dfrac{\mu_{M_{e}}}{2}, \min \dfrac{\mu_{C_{e}}}{2}, \min \dfrac{\mu_{G_{e}}}{2}, \min \dfrac{\mu_{F_{e}}}{2}\end{Bmatrix}\end{equation*}
and
\begin{align}C_{1}=\dfrac{\gamma^{2}}{2}+\dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right) \nonumber\\[5pt]+\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right)+\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right) \nonumber\end{align}
Based on the definition of
$\mu_{\left( .\right)_{e}}$
, and under the updated laws (31), the following can be found:
\begin{align}\lim_{t \rightarrow \infty} \dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right) +\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right)+\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right) =0 \nonumber\end{align}
Since
$\gamma$
is a small positive constant (Remark 1), this means that
$C_1$
will be always bounded.
To ensure
$k_{1}>0$
, controller’s parameters should be selected to fulfill:
$(K -\dfrac{1}{2}I_{n \times n})>0$
,
$\Lambda>0$
, and
$\mu_{\left( .\right)_{e}}>0 $
. In summary, the following theorem is obtained:
Theorem 3.2: For the manipulator robotic system (1), designing the adaptive approximation technique (20), with the updated laws (31), ensures system stability. Furthermore, the controller guarantees that all error signals
$e_1$
,
$e_2$
,
$\tilde{M}_{e}$
,
$\tilde{C}_{e}$
,
$\tilde{G}_{e}$
, and
$\tilde{F}_{e}$
are UUB in the closed-loop form according to Lemma 2.1.
Proof: See the Appendix 6.1.
3.3. Output-feedback-based adaptive function approximation approach
Some variables in (20), such as velocity (
$\dot{\eta}$
), cannot be measured. As such, a robust exact differentiator [Reference Levant27] is employed to estimate such immeasurable terms. Unlike conventional approaches, the
$n{\rm th}$
-order estimator can provide real-time robust exact differentiation up to the
$n{\rm th}$
order. This ensures asymptotic convergence of the state estimation in finite time. Thus, consider the following second-order robust exact differentiator:
\begin{align} \begin{cases} \dot{\psi}_0=-\Sigma_{1} \left | \psi_{0}-\eta \right |^{\frac{2}{3}}sign\left( \psi_{0}-\eta\right)+\psi _{1} \\[8pt] \dot{\psi}_1=-\Sigma_{2} \left | \psi_{1}-\dot{\psi}_0 \right |^{\frac{1}{2}}sign\left( \psi_{1}-\dot{\psi}_0\right)+\psi _{2} \\[8pt] \dot{\psi}_2=-\Sigma_{3}sign\left( \psi_{2}-\dot{\psi}_1\right) \end{cases}\end{align}
where
$\Sigma_{1}=3\Sigma^{1/3}$
,
$\Sigma_{2}=1.5\Sigma^{1/3}$
, and
$\Sigma_{3}=1.1\Sigma$
, with
$\Sigma\geqslant\left |\dddot{\eta} \right|$
. The differentiator outputs
$\psi_{0}$
,
$\psi_{1}$
, and
$\psi_{2}$
are the respective estimate values of
$\eta$
,
$\dot{\eta}$
, and
$\ddot{\eta}$
. The estimated values produced in finite time are then:
\begin{align} \psi_{0}=\hat{\eta}, \psi_{1}=\dot{\hat{\eta}}, \psi_{2}=\ddot{\hat{\eta}} \end{align}
Assuming that only the velocity signal (
$\dot{\eta}$
) cannot be measured, using (34), the immeasurable state vector
$\dot{\tilde{\eta}}$
estimation is found as follows:
This means that,
$\tilde{e}_{2}$
can be estimated as follows:
Therefore, the control torque (20) becomes
and the updated laws can be rewritten as:
\begin{align}\left\{\begin{array}{l}\dot{\hat{M}}_{e}^T = \left(\zeta \hat{e}_{2}^T + \mu_{M_{e}}\hat{M_{e}}^T \right) \Lambda_{M_{e}}^{-1} \\[8pt]\dot{\hat{C}}_{e}^T = \left(\alpha \hat{e}_{2}^T+ \mu_{C_{e}}\hat{C}_{e}^T \right) \Lambda_{C_{e}}^{-1}\\[8pt]\dot{\hat{G}}_{e}^T = \left( \hat{e}_{2}^T+ \mu_{G_{e}}\hat{G}_{e}^{T}\right) \Lambda_{G_{e}}^{-1} \\[8pt]\dot{\hat{F}}_{e}^T = \left( \hat{e}_{2}^T+ \mu_{F_{e}}\hat{F}_{e}^{T}\right) \Lambda_{F_{e}}^{-1} \end{array}\right.\end{align}
Given control law (38) and the updated laws (39), the following Lyapunov candidate function is chosen:
\begin{equation} V_{4}=V_{1}+\frac{1}{2} e_{2}^{T}{M}e_{2} +\frac{1}{2}Tr\left( \tilde{M}_{e}^{T}\Lambda_{M_{e}}\tilde{M}_{e}+\tilde{C}_{e}^{T}\Lambda_{C_{e}}\tilde{C}_{e}+\tilde{G}_{e}^{T}\Lambda_{G_{e}}\tilde{G}_{e}+\tilde{F}_{e}^{T}\Lambda_{F_{e}}\tilde{F}_{e}\right)\end{equation}
The estimation error is then affected by
$\tilde{e}_2$
,
$V=V_{4}+V_{Obs}$
, and
$V_{Obs}=\frac{1}{2}\tilde{e}_2^{T}\tilde{e}_2$
. As obtained in ref. [Reference Yazdani, Salarieh and Foumani31],
$\dot{V}_{Obs}\leqslant 0$
. That is, with
$V_{Obs}$
being stable, it is essential to check the stability condition of
$V_4$
.
Substituting (36), (37), and (38) into time derivative of (40), the following is obtained:
Reducing this gives
\begin{align}\dot{V}_{4} = & -e_{1}^{T}\Lambda e_{1} -{e}_{2}^{T}K{e}_{2}-{e}_{2}^{T}K\tilde{e}_{2}-\tilde{e}_{2}^{T}e_{1}+e_{2}^{T}\varepsilon +Tr\left(\left( \dot{\tilde{M}}_{e}^{T}\Lambda_{M_{e}}-\zeta e_{2}^{T}\right) \tilde{M}_{e}\right) \nonumber \\[8pt]& +Tr\left( \left(\dot{\tilde{C}}_{e}^{T}\Lambda_{C_{e}}-\alpha e_{2}^{T}\right)\tilde{C}_{e}\right)+Tr\left(\left(\dot{\tilde{G}}_{e}^{T}\Lambda_{G_{e}}-e_{2}^{T}\right) \tilde{G}_{e}\right) \nonumber \\[8pt]& +Tr\left( \left(\dot{\tilde{F}}_{e}^{T}\Lambda_{F_{e}}-e_{2}^{T}\right) \tilde{F}_{e} \right) \end{align}
Utilizing young’s inequality gives
$e_{2}^{T}\varepsilon \leq \dfrac{e_{2}^{T}e_{2}}{2}+\dfrac{\gamma^{2}}{2}$
,
$-{e}_{2}^{T}K\tilde{e}_{2} \leq \dfrac{1}{2}{e}_{2}^{T}{e}_{2}+\dfrac{1}{2}\tilde{e}_{2}^{T}K^{T}K\tilde{e}_{2} $
,
$-\tilde{e}_{2}^{T}e_{1} \leq \dfrac{1}{2}\tilde{e}_{2}^{T}\tilde{e}_{2}+\dfrac{1}{2}{e}_{1}^{T}{e}_{1} $
. Using the above inequality and substituting (39) into (42), the following is obtained:
\begin{align}\dot{V}_{4} = & -e_{1}^{T}\left(\Lambda-\frac{1}{2}I_{n \times n}\right) e_{1} -{e}_{2}^{T}(K-I_{n \times n}){e}_{2}+\dfrac{1}{2}\tilde{e}_{2}^{T}(K^{T}K+I_{n \times n})\tilde{e}_{2}+ \dfrac{\gamma^{2}}{2}\nonumber \\[5pt]& +\mu_{M_{e}} Tr\left( \hat{M}_{e}^{T}\tilde{M}_{e}\right) +\mu_{C_{e}} Tr\left( \hat{C}_{e}^{T}\tilde{C}_{e}\right) +\mu_{G_{e}}Tr\left( \hat{G_{e}}^{T}\tilde{G}_{e}\right) +\mu_{F_{e}}Tr\left( \hat{F_{e}}^{T}\tilde{F}_{e}\right)\nonumber \\[5pt]& +Tr\left(\zeta \tilde{e}_{2}^T \tilde{M}_{e}+\alpha \tilde{e}_{2}^T \tilde{C}_{e}+\tilde{e}_{2}^T \tilde{G}_{e}+\tilde{e}_{2}^T \tilde{F}_{e} \right) \end{align}
Using the previously developed inequality:
$Tr\left( \left(\hat{.}_{e}\right)^{T}\left(\;\tilde{.}_{e}\right) \right)\leq \dfrac{1}{2}Tr\left(\left({.}_{e}\right)^{T}\left( {.}_{e}\right) \right) -\dfrac{1}{2}Tr\left(\left(\;\tilde{.}_{e}\right)^{T}\left(\;\tilde{.}_{e}\right) \right)$
, the above equation becomes
\begin{align}\dot{V}_{4} \leqslant & -e_{1}^{T}\left(\Lambda-\frac{1}{2}I_{n \times n}\right) e_{1} -{e}_{2}^{T}(K-I_{n \times n}){e}_{2} -\dfrac{\mu_{M_{e}}}{2}Tr\left(\left( \tilde{M}_{e}\right)^{T}\left( \tilde{M}_{e}\right)\right) \nonumber \\[5pt]& \quad -\dfrac{\mu_{C_{e}}}{2}Tr\left(\left( \tilde{C}_{e}\right)^{T}\left( \tilde{C}_{e}\right) \right) -\dfrac{\mu_{G_{e}}}{2}Tr\left(\left( \tilde{G}_{e}\right)^{T}\left( \tilde{G}_{e}\right) \right) -\dfrac{\mu_{F_{e}}}{2}Tr\left(\left( \tilde{F}_{e}\right)^{T}\left( \tilde{F}_{e}\right) \right) \nonumber \\[5pt] & \quad +\dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right)+\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right) \nonumber \\[2pt]& \quad +\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right)+\dfrac{\gamma^{2}}{2} +\dfrac{1}{2}\tilde{e}_{2}^{T}(K^{T}K+I_{n \times n})\tilde{e}_{2} \nonumber \\[2pt]& \quad +Tr\left(\zeta \tilde{e}_{2}^T \tilde{M}_{e}+\alpha \tilde{e}_{2}^T \tilde{C}_{e}+\tilde{e}_{2}^T \tilde{G}_{e}+\tilde{e}_{2}^T \tilde{F}_{e} \right) \nonumber \\[2pt]\dot{V}_{4}&\leqslant -k_{2}V_{4}+C_{2} \end{align}
where
\begin{equation*}k_{2}=\min \begin{Bmatrix} \left(\Lambda-\frac{1}{2}I_{n \times n}\right), \left( K-I_{n\times n}\right), \dfrac{\mu_{M_{e}}}{2}, \dfrac{\mu_{C_{e}}}{2}, \dfrac{\mu_{G_{e}}}{2}, \dfrac{\mu_{F_{e}}}{2}\end{Bmatrix}\end{equation*}
and
\begin{align}C_{2} = & \dfrac{\gamma^{2}}{2}+\dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right) \nonumber\\[5pt]& +\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right)+\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right) \nonumber \\[5pt]& +\dfrac{1}{2}\tilde{e}_{2}^{T}(K^{T}K+I_{n \times n})\tilde{e}_{2}+Tr\left(\zeta \tilde{e}_{2}^T \tilde{M}_{e}+\alpha \tilde{e}_{2}^T \tilde{C}_{e}+\tilde{e}_{2}^T \tilde{G}_{e}+\tilde{e}_{2}^T \tilde{F}_{e} \right)\nonumber\end{align}
As discussed in Theorem 3.2, the following can be found:
\begin{align}& \lim_{t \rightarrow \infty} \dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right) \nonumber\\[5pt]&\quad +\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right)+\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right) \nonumber \\[5pt]&\quad +\dfrac{1}{2}\tilde{e}_{2}^{T}(K^{T}K+I_{n \times n})\tilde{e}_{2}+Tr\left(\zeta \tilde{e}_{2}^T \tilde{M}_{e}+\alpha \tilde{e}_{2}^T \tilde{C}_{e}+\tilde{e}_{2}^T \tilde{G}_{e}+\tilde{e}_{2}^T \tilde{F}_{e} \right)=0\nonumber\end{align}
Since
$\gamma$
is a small positive constant (Remark 1), this means that
$C_2$
will be always bounded.
To ensure
$k_{2}>0$
, controller’s parameters should be chosen to satisfy
$(K -I_{n \times n})>0$
,
$(\Lambda-\frac{1}{2}I_{n \times n})>0$
, and
$\mu_{\left( .\right)_{e}}>0 $
. In summary, the following theorem is obtained:
Theorem 3.3: For the manipulator robotic system (1), designing the adaptive approximation technique (38), with the updated laws (39) and the state observer (34), ensures system stability. Furthermore, the controller guarantees that all error signals
$e_1$
,
$\hat{e}_2$
,
$\tilde{M}_{e}$
,
$\tilde{C}_{e}$
,
$\tilde{G}_{e}$
, and
$\tilde{F}_{e}$
are UUB in the closed-loop form according to Lemma 2.1.
Proof: The proof is similar to that of Theorem 3.2.
4. Simulation and comparative studies
In this section, the efficiency of the proposed controller is evaluated by performing numerical simulations using Simulink (Matlab 2020a) and V-rep platforms. The controller is implemented on an industrial manipulator robot (ABB IRB 140) (3-DoF) [Reference Suárez and Heredia28]. V-rep is the platform used to implement the proposed controller as a virtual environment. A Robot Operating System (ROS) is used to maintain communication between Simulink and V-rep, as shown in Fig. 1. In general, ROS is a middleware operating system for robots, which is capable of running parallel simulations and coordinating several executables (algorithms, components, or sensors) called “nodes.” In this paper, ROS is used to mainly establish communication between Matlab, Simulink, and the manipulator robot. It allows executables to synchronously exchange information via a topic or asynchronously via a service. A topic allows carrying information based on subscription/publication (subscribe/publish). In this case, one or more nodes are able to publish information on a topic, which would be read by other nodes. On the other hand, a service allows synchronous communication between two nodes.
Simulation setup: the industrial manipulator robot with joints (
$\eta_{1},\eta_{2}$
, and
$\eta_{3}$
) being controlled.

The industrial manipulator robot (ABB IRB 140) dynamic parameters are detailed in ref. [Reference Suárez and Heredia28]. Resulting simulation data are presented in the following subsections.
4.1. Model-based simulation implementation
In this subsection, the effectiveness of the model-based controller (15) is verified by means of numerical simulations. Initial value are set to be
$\eta(0)=[0, 1.25, 0]^{T}$
rad and
$\dot{\eta}(0)=[0, 0, 0]^{T}$
rad/sec. Furthermore, controller parameters are manually chosen as follows:
$K=diag[30, 80, 30]$
and
$\Lambda=diag[2, 2, 2]$
. Lastly, the reference trajectory of
$\eta_{i}$
is specified as:
$\eta_{d}=\big[1.25-\big( \frac{7}{5}\big)e^{-t}+\big( \frac{7}{20}\big)e^{-4t} , 1.25+e^{-t}-\big( \frac{1}{4}\big)e^{-4t}, 1-\big( \frac{7}{5}\big)e^{-t}+\big( \frac{7}{20}\big)e^{-4t} \big]^{T}$
.
Detailed simulation results are shown in Figs. 2–3. In the first column of Fig. 2, plotted measured
$\eta$
and desired
$\eta_{d}$
trajectories show that
$\eta$
rapidly converged to within a small vicinity of the desired trajectory
$\eta_{d}$
. This shows that the tracking performance of the manipulator robot was satisfactory. In the second column of Fig. 2, plotted tracking error shows that
$e_{1}$
quickly converged to almost the null levels. Lastly, Fig. 3 shows the control input
$\tau$
plot, which also presented acceptable results. Therefore, the manipulator robot presented satisfactory performance under the model-based controller (15).
Measured
$\eta$
and desired
$\eta_{d}$
trajectories (first column), as well as tracking errors (second column), under the model-based controller (15).

Control input
$\tau$
under the model-based controller (15).

4.2. Simulation implementation for the state-feedback-based adaptive MFAT
In this subsection, the effectiveness of the designed controller (20) is verified by means of numerical simulations. Initial values are set to be
$(\hat{M}_{eii}=1)$
,
$(\hat{C}_{eii}=1)$
,
$(\hat{G}_{ei}=1)$
, and
$(\hat{F}_{ei}=1)$
. Furthermore, updating law parameters, also given in (31), are specified as:
$\Lambda_{M_{e}}=10$
,
$\Lambda_{C_{e}}=10$
,
$\Lambda_{G_{e}}=10$
, and
$\Lambda_{F_{e}}=10$
. Besides,
$\mu_{\left( .\right)_{e}}$
is chosen to be
$\mu_{\left( .\right)_{e}}=\dfrac{1}{1+t^{2}}$
. Lastly, controller parameters are manually set as follows:
$K=diag[45, 100, 65]$
and
$\Lambda=diag[2.8, 2, 6]$
.
Detailed simulation results are shown in Figs. 4–9. In the first column of Fig. 4, plotted measured
$\eta$
and desired
$\eta_{d}$
trajectories show that
$\eta$
rapidly converged to within a small vicinity of the desired trajectory
$\eta_{d}$
. This shows that the tracking performance of the manipulator robot was satisfactory. In the second column of Fig. 4, plotted tracking error shows that
$e_{1}$
quickly converged to almost the null levels. In addition, Fig. 5 presents the control input
$\tau$
plot, which also showed acceptable results. It is further noticed that the control input under the state-feedback-based adaptive modified function approximation controller (20) is smaller than that generated under the model-based controller (15) shown in Fig. 3. Lastly, Figs. 6–9 present the dynamic system estimations
$\hat{M}$
,
$\hat{C}$
,
$\hat{G}$
, and
$\hat{F}_{ex}$
, compared to their real M, C, G, and
$F_{ex}$
values. Although the dynamics M, C, G, and
$F_{ex}$
were unknown, simulation results showed that the proposed controller (11) resulted with highly satisfactory robot-tracking performance.
Measured
$\eta$
and desired
$\eta_{d}$
trajectories (first column), as well as tracking errors (second column), under the state-feedback-based adaptive modified function approximation controller (20).

Control input
$\tau$
under the state-feedback-based adaptive modified function approximation controller (20).

Estimation of matrix (M) under the state-feedback-based adaptive modified function approximation controller (20).

Estimation of matrix (C) under the state-feedback-based adaptive modified function approximation controller (20).

Estimation of vector (G) under the state-feedback-based adaptive modified function approximation controller (20).

Estimation of vector (
$F_{ex}$
) under the state-feedback-based adaptive modified function approximation controller (20).

4.3. Simulation implementation for the output-feedback-based adaptive MFAT
In this subsection, the effectiveness of the designed controller (38) is verified by means of numerical simulations. The parameters for the second-order robust exact differentiator, given by (34), are specified as:
$\Sigma_{1}=3\Sigma^{1/3}$
,
$\Sigma_{2}=1.5\Sigma^{1/3}$
, and
$\Sigma_{3}=1.1\Sigma$
, with
$\Sigma\geqslant\left |\dddot{\eta} \right|$
. In this paper,
$\Sigma=4.2$
is chosen. Furthermore, updating law parameters, also given in (31), are set to be
$\Lambda_{M_{e}}=0.1$
,
$\Lambda_{C_{e}}=0.1$
,
$\Lambda_{G_{e}}=0.1$
, and
$\Lambda_{F_{e}}=0.1$
. Lastly, controller parameters are manually chosen as follows:
$K=diag[90, 190, 110]$
and
$\Lambda=diag[6, 12, 12]$
.
Detailed simulation results are shown in Figs. 10–15. In the first column of Fig. 10, plotted measured
$\eta$
and desired
$\eta_{d}$
trajectories show that
$\eta$
rapidly converged to within a small vicinity of the desired trajectory
$\eta_{d}$
. This signifies that the tracking performance of the manipulator robot was satisfactory. In the second column of Fig. 10, plotted tracking error shows that
$e_{1}$
quickly converged to almost the null levels. On the other hand, Fig. 11 presents the control input
$\tau$
plot. From this, it is noticeable that the control input under the output-feedback-based adaptive modified function approximation controller (38) is bigger than that of both, the model-based controller (15) and the state-feedback-based adaptive modified function approximation controller (20) shown in Figs. 3 and 5, respectively. Lastly, Figs. 12–15 present the dynamic system estimations
$\hat{M}$
,
$\hat{C}$
,
$\hat{G}$
, and
$\hat{F}_{ex}$
, compared to their real M, C, G, and
$F_{ex}$
values. Although the dynamics M, C, G, and
$F_{ex}$
were unknown, and given that
$\dot{\eta}$
was immeasurable, simulation results showed that the proposed controller (38) was still able to achieve highly satisfactory robot-tracking performance.
Measured
$\eta$
and desired
$\eta_{d}$
trajectories (first column), as well as tracking errors (second column), under the output-feedback-based adaptive modified function approximation controller (38).

Controllers performance.

Control input
$\tau$
under the output-feedback-based adaptive modified function approximation controller (38).

Estimation of matrix (M) under the output-feedback-based adaptive modified function approximation controller (38).

Estimation of matrix (C) under the output-feedback-based adaptive modified function approximation controller (38).

Estimation of vector (G) under the output-feedback-based adaptive modified function approximation controller (38).

Estimation of vector (
$F_{ex}$
) under the output-feedback-based adaptive modified function approximation controller (38).

4.4. Comparative study
In this last subsection, the performance of the developed controllers – model-based (15), state-feedback-based adaptive modified function approximation (20), and output-feedback-based adaptive modified function approximation (38) – are summarized in Table I in terms of errors root mean square (RMS) and maximum controller inputs.
Table I shows that the state-feedback-based adaptive modified function approximation controller (20) was able to provide satisfactory tracking with moderate control inputs, although robot model dynamics M, C, G, and
$F_{ex}$
were completely unknown. The output-feedback-based adaptive modified function approximation controller (38) similarly provided satisfactory tracking. However, its associated control inputs were relatively higher than those of both, the state-feedback-based adaptive modified function approximation (20) and model-based (15) controllers. This is best explained by the fact that not only robot’s dynamic model parameters (M, C, G, and
$F_{ex}$
) were unknown, but also
$\dot{\eta}$
state was immeasurable.
5. Conclusion
In this paper, a new adaptive control strategy, based on the MFAT, is proposed for n-link rigid robotic manipulator with unknown dynamics. This novel strategy benefits from the backstepping control approach and the use of state and output feedback. The proposed control strategy was applied on a industrial manipulator robot (ABB IRB 140). The combination of backstepping control and MFAT scheme enriches the system by ensuring enhanced continuous performance tracking of system’s trajectories (see figures), maintained system stability, high precision (Table I), and high robustness against dynamic uncertainties. Furthermore, unlike the conventional FAT approach, the use of basis functions to estimate the dynamic model and external forces is completely eliminated in the proposed modified FAT scheme. In addition, the combination between MFAT and a higher-order sliding mode observer was developed to approximate robot’s dynamics and track desired trajectories without the need for any velocity measurement. The efficiency and efficacy of the proposed scheme were verified and validated via numerical simulations. Lastly, a comparative study was conducted between the developed controllers – the model-based, the state-feedback-based adaptive modified function approximation, and the output-feedback-based adaptive modified function approximation controllers – which highlighted the merits and shortcomings for each scheme. In future work, a real-time implementation will be potentially established to experimentally validate the proposed controller. This will allow to investigate and properly select adaptive control gain values to ensure high tracking performance.
6. Appendix
6.1. Proof of Theorem 3.2
Form Remark 1:
$\gamma$
is constant and
$t \rightarrow 0$
. Noting that
$\lim _{t\to\infty}\mu_{\left( .\right)_{e}}=0$
and
$\int_{0}^{t}\mu_{\left( .\right)_{e}} dt=Q_{(.)s}<\infty$
, yields
\begin{align}\dfrac{\mu_{M_{e}}}{2}Tr\left(\left({M}_{e}\right)^{T}\left( {M}_{e}\right) \right)+\dfrac{\mu_{C_{e}}}{2}Tr\left(\left({C}_{e}\right)^{T}\left( {C}_{e}\right) \right)+\dfrac{\mu_{G_{e}}}{2}Tr\left(\left({G}_{e}\right)^{T}\left( {G}_{e}\right) \right) +\dfrac{\mu_{F_{e}}}{2}Tr\left(\left({F}_{e}\right)^{T}\left( {F}_{e}\right) \right) \rightarrow 0 \nonumber\end{align}
This means that
$C_{1}$
is bounded and converges to zero. There exists
$t>t_{1}$
,
$C_{1}$
, and a finite small constant
$\bar{\omega}$
, for which
$V_{3} \geq \frac{\bar{\omega}}{\gamma_{\min(K_{1})}} \Rightarrow \dot{V}_{3}\leq 0$
. Therefore, as
$t\rightarrow \infty $
, all variables of (
$V_{3}$
) converge to a small set containing the origin.
Multiplying (33) by
$e^{k_{1}t}$
gives
\begin{align}\frac{d}{dt}(V_3)\leq C_{1}e^{k_{1}t}\end{align}
Integrating the inequality (45) yields
\begin{align}V_3\leq \left(V_{3}(0)-\frac{C_{1}}{k_1} \right)e^{-k_{1}t}+\frac{C_{1}}{k_1}\leqslant V_{3}(0)+\frac{C_{1}}{k_1}\end{align}
Therefore, the following is obtained:
\begin{equation*}\frac{1}{2} e^{T}_{1}e_{1}\leq V_{3}(0)+\frac{C_{1}}{k_1} \Rightarrow \left \| e_{1} \right \|^{2} \leq 2\left(V_{3}(0)+\frac{C_{1}}{k_1}\right),\end{equation*}
\begin{equation*}\frac{1}{2} e_{2}^{T}{M}e_{2}\leq V_{3}(0)+\frac{C_{1}}{k_1}\Rightarrow \left \| e_{2} \right \|^{2} \leq 2\frac{\left(V_{3}(0)+\dfrac{C_{1}}{k_1}\right)}{\lambda_{\min} (M)},\end{equation*}
\begin{equation*}\frac{1}{2}Tr\left( \tilde{M}_{e}^{T}\Lambda_{M_{e}}\tilde{M}_{e}\right) \leq V_{3}(0)+\frac{C_{1}}{k_1}\Rightarrow \left \| \tilde{M}_{e} \right \|^{2} \leq 2\frac{\left(V_{3}(0)+\dfrac{C_{1}}{k_1}\right)}{\lambda_{\min} (\Lambda_{M_{e}})},\end{equation*}
\begin{equation*}\frac{1}{2}Tr\left( \tilde{C}_{e}^{T}\Lambda_{C_{e}}\tilde{C}_{e}\right) \leq V_{3}(0)+\frac{C_{1}}{k_1}\Rightarrow \left \| \tilde{C}_{e} \right \|^{2} \leq 2\frac{\left(V_{3}(0)+\dfrac{C_{1}}{k_1}\right)}{\lambda_{\min} (\Lambda_{C_{e}})},\end{equation*}
\begin{equation*}\frac{1}{2}Tr\left( \tilde{G}_{e}^{T}\Lambda_{G_{e}}\tilde{G}_{e}\right) \leq V_{3}(0)+\frac{C_{1}}{k_1}\Rightarrow \left \| \tilde{G}_{e} \right \|^{2} \leq 2\frac{\left(V_{3}(0)+\dfrac{C_{1}}{k_1}\right)}{\lambda_{\min} (\Lambda_{G_{e}})}\end{equation*}
and
\begin{equation*}\frac{1}{2}Tr\left( \tilde{F}_{e}^{T}\Lambda_{F_{e}}\tilde{F}_{e}\right) \leq V_{3}(0)+\frac{C_{1}}{k_1}\Rightarrow \left \| \tilde{F}_{e} \right \|^{2} \leq 2\frac{\left(V_{3}(0)+\dfrac{C_{1}}{k_1}\right)}{\lambda_{\min} (\Lambda_{F_{e}})},\end{equation*}
Thus, all signals are UUB in the closed-loop form. This completes the proof.
6.2. Proof of the trace relationship
It is established that
$\left( \,\tilde{.}\,\right) _{e}=\left( {.}\right) _{e}-\left(\hat{.}\right) _{e}$
. Therefore,
\begin{align}Tr\left( \left(\hat{.}_{e}\right)^{T}\left( \tilde{.}_{e}\right) \right)&= Tr\left(\left({.}_{e}\right)^{T}\left( \tilde{.}_{e}\right) \right)-Tr \left(\left( \tilde{.}_{e}\right)^{T}\left( \tilde{.}_{e}\right) \right) \nonumber \\[2pt]&\leq \sum_{i=1}^{n} \left( \left \|\left( \tilde{.}_{eii}\right) \right \| \left \| \left( {.}_{eii}\right) \right \| - \left \| \left( \tilde{.}_{eii}\right) \right \| ^{2}\right) \nonumber \\[2pt]&= \frac{1}{2}\sum_{i=1}^{n} \left [ \left \| \left( {.}_{eii}\right) \right \|^2 -\left \| \left( \tilde{.}_{eii}\right) \right \|^2 -\left (\left \| \left( \tilde{.}_{eii}\right) \right \| -\left \| \left( {.}_{eii}\right) \right \| \right )^2 \right ] \nonumber \\[2pt] & \leq \frac{1}{2}\sum_{i=1}^{n} \left ( \left \| \left( {.}_{eii}\right) \right \|^2-\left \| \left( \tilde{.}_{eii}\right) \right \|^2 \right ) \nonumber\end{align}
Based on the definition of the trace operation, the following is found:
\begin{align}Tr\left( \left(\hat{.}_{e}\right)^{T}\left( \tilde{.}_{e}\right) \right)\leq \dfrac{1}{2}Tr\left(\left({.}_{e}\right)^{T}\left( {.}_{e}\right) \right) -\dfrac{1}{2}Tr\left(\left( \tilde{.}_{e}\right)^{T}\left( \tilde{.}_{e}\right) \right) \nonumber\end{align}
Thus, the proof is completed.

















