1. Introduction
Robotic manipulators are highly nonlinear systems, and they are subject to two types of disturbance. One is model parametric uncertainty due to variations in grasped load characteristics such as the mass moment of inertia or the exact position of the centre of the payload. The other is unmodelled parameters such as joint friction forces and external disturbances. When the dynamic parameters of the robotic system are not precisely known, adaptive [Reference Slotine and Li1–Reference Wang4] and robust [Reference Spong5–Reference Sage, De Mathelin and Ostretag7] control laws are typical control schemes to achieve good tracking performance for robot manipulators.
The Corless [Reference Leitmann8] or Corless–Leitmann [Reference Corless and Leitmann9] approach is popularly used in the design of robust controllers for robot manipulators [Reference Spong5, Reference Yaz6, Reference Liu and Goldenberg10–Reference Burkan12]. In this approach, uniform ultimate boundedness of tracking error is shown using the Lyapunov-based theory of guaranteed stability of uncertain system. In a commonly robust control law, the maximum upper uncertainty bound, which is the worst case of the uncertainty bound, is used for stabilisation of control laws [Reference Spong5, Reference Yaz6]. However, a very high uncertainty bound may cause chattering and bad behaviour of the whole system, while a very low estimation of the uncertainty bound function may cause a higher tracking error. If the uncertainty bound of a parameter is large, large control gains are required. However, high gain is impractical in design, and low gains are desirable for robust control laws. This gain limitation deteriorates transient and steady-state performance [Reference Liu and Goldenberg10]. In order to obtain better tracking performance, the uncertainty bound function should be updated properly [Reference Fateh13]. For this purpose, the upper bounding function is made adaptive in some studies [Reference Koo and Kim11, Reference Burkan12, Reference Fateh and Khorashadizadeh14]. The upper bounding function is estimated depending on a regressed matrix [Reference Koo and Kim11], functions [Reference Burkan12], or adaptive fuzzy rule [Reference Fateh and Khorashadizadeh14].
In robust control laws [Reference Spong5, Reference Yaz6, Reference Liu and Goldenberg10–Reference Burkan12], nominal control, which is used to eliminate the known dynamics of robotic manipulators, is recommended and regressor analysis is required. Based on function approximation techniques, the use of a regressor matrix is eliminated, and regressor-free robust control of robot manipulators has been presented [Reference Chien and Huang15, Reference Khorashadizadeh and Fateh16]. In this approach, Fourier series expansion is used for uncertainty estimation [Reference Khorashadizadeh and Fateh16].
However, unmodelled dynamics reduce performance such as positioning accuracy and repeatability. In order to achieve the desired performance, it is imperative to design some form of disturbance compensation. In the literature concerning robotic applications, some disturbance rejection techniques are proposed [Reference Koofigar17–Reference Nikoobin and Haghighi19].
In order to compensate for both modelled and unmodelled parametric uncertainty, a robust control law [Reference Liu and Goldenberg10] and a robust adaptive [Reference Kermani, Patel and Moallem18] control law are designed. In these control laws [Reference Liu and Goldenberg10, Reference Burkan20], modelled and unmodelled parameters are included in the dynamic model. Then modelled parameter uncertainty is separated from unmodelled parameter uncertainty. After that, a robust control law is designed for each uncertainty group.
In the present paper, robot unmodelled parameters, joint frictions and external disturbances are included in a dynamic model. Based on the dynamic model, new joint friction and external disturbance estimation laws are developed. The Lyapunov theory, based on the Corless–Leitmann approach [Reference Corless and Leitmann9], was used to design the control law, and uniform boundedness error convergence is achieved. After the simulation results, it is observed that the proposed adaptive law compensates for not only all joint frictions and external disturbances but also all modelled parametric uncertainty.
2. Dynamic Model
The dynamic model of an n-link manipulator can be written as [Reference Liu and Goldenberg10]
where q denotes joint position, $\tau $ is the n-dimensional vector of the actuating input, ${{C(q,\dot{q})\dot{q}}}$ is the n-dimensional vector of Coriolis and centripetal forces, $G{\rm{(}}q{\rm{)}}$ is the n-dimensional gravitational force vector, ${f_l}(q,\dot{q})$ represents the static and low speed friction, $B\dot{q}$ is the viscous friction forces at the joints and $d$ is the external disturbance at the joints. The joint friction can be modelled as [Reference Liu and Goldenberg10]
where ${f_l}(q,\dot{q})$ represents the static and low speed friction; it is a function of joint angle and velocity and usually difficult to model and to compensate for accurately. Then the dynamic model (1) can be written as
where $\pi $ is the p-dimensional vector of robot parameters and ${{Y(q}}, {{{\dot{q},\ddot{q}}}})$ is the n × p dimensional matrix containing position, velocity and acceleration of joints. For any specific trajectory, ${q_d}$ , ${\dot{q}_d}$ and ${\ddot{q}_d}$ show the desired position, velocity and acceleration vectors, respectively. The parameters $\tilde{q} = q - {q_d}$ and $\dot{\tilde{q}} = \dot{q} - {\dot{q}_d}$ are the measured actual position and velocity errors. Using the above information, the corrected desired velocity and acceleration vectors for nonlinearities and decoupling effects are given.
The error σ is given as
where Λ is an n × n dimensional positive definite diagonal matrix. During motion, the inertia parameter vector $\pi $ is constant, not known exactly, but bounded. The upper uncertainty bound is defined as follows:
It is assumed that $\pi $ 0 $\in$ R p and $\rho\in$ R p are known. Then the following robust control law is given [Reference Spong5]:
Here ${M_{{0}}}$ , ${C_{{0}}}$ , ${G_{{0}}}$ and ${\pi _0}$ are the known nominal control parameters, ${u_{{p}}}$ is the robust control input and $K{\rm{\sigma }}$ is the PD action.
3. Proposed Controller
Considering the dynamic model and the nominal control law (7), the overall control law is proposed as
where $\kern2pt\hat{\kern-2pt f}$ is the estimation law for joint frictions f, $\kern2pt\hat{\kern-2pt d}$ is the estimation law for external disturbance d, u p is the control input designed robust to modelled parametric uncertainty and u d is the control input designed for joint frictions and disturbances. Substituting (8) into (1) and considering Equations 1–6, Equation 9 is obtained.
Here $\tilde M = {M_0} - M$ , $\tilde C = {C_0} - C$ , $\tilde G = {G_0} - G$ and ${\pi _{\rm{0}}}-\pi = \tilde \pi $ . The unknown friction and external disturbance parameter estimation error vector $\tilde \eta $ are defined as
It is assumed that friction f and external disturbance d are not constant but bounded as
Since $\omega\,{\in}\,$ R is assumed unknown, $\omega$ should be estimated with an estimation law to control the system properly. The estimate of $\omega$ is $\hat{\omega} $ and the estimation error $\tilde \omega $ is defined as
4. Theorem and Proof of Stability
In order to derive a new controller, the following theorem is given.
Theorem 1: Let $\alpha_{1},\alpha_{2},\ldots,\alpha_{p},\ \beta_{1}, \beta_{2},\cdots,\beta_{p},\lambda_{1},\lambda_{2}\ldots,\lambda_{p}, b\in R$ . The estimation law for the joint friction force is $\kern2pt\hat{\kern-2pt f}$ , the estimation for external disturbances is $\kern2pt\hat{\kern-2pt d}$ and the estimation law for the uncertainty bound of the unknown parameters of f and d is $\hat{\omega} $ . The estimation laws $\kern2pt\hat{\kern-2pt f}$ , $\kern2pt\hat{\kern-2pt d}$ and $\hat{\omega} $ are defined as
The additional control input u p and ${u_d}$ are defined as
If the control laws (13) and (14) are substituted into the control input (8) for control of robot manipulators, then the control law (8) will be continuous and the closed-loop system will be uniformly ultimately bounded.
Proof . In order to prove the theorem, the following Lyapunov function candidate is proposed:
where $D\in R^{n\times n}$ is a positive diagonal matrix and $\Phi $ is chosen as an n × n dimensional diagonal matrix changing in time. The time derivative of V throughout the system (9) is
Substituting Eq. (9) into (16), the following equation is obtained:
Note that $\dot{\tilde{\omega}} = - \dot{\hat{\omega}} $ since $\omega$ is constant. Using the property ${\sigma ^T}[\dot M(q) - 2C(q,\dot{q})]\sigma = 0\ \forall \sigma \in {R^n}$ and taking $D = 2\Lambda K$ [Reference Spong5], Eq. (17) becomes
${K_{\rm{T}}}$ and $\Phi $ are defined as a n × n dimensional diagonal matrix such that
From Eq. (13), the friction and external disturbance parameter estimation error vector $\tilde \eta = \kern2pt\hat{\kern-2pt f} - \kern2pt\hat{\kern-2pt d}$ is defined as
The time derivative of $\tilde \eta $ is
The last two terms in Eq. (17) are written depending on the functions ${K_{\rm{T}}}$ , $\Phi $ , $\dot \Phi $ , $\tilde \eta $ and $\dot{\tilde{\eta}} $ as
The first and second terms cancel each other and Eq. (23) can be written as
Then the derivative of the Lyapunov function is obtained as
For stability analysis, four different cases are considered similar to the robust control law [Reference Liu and Goldenberg10].
Case 1: If $\left\| {{Y^T}\sigma } \right\| \ge {\varepsilon _p}$ and $\left\| \sigma \right\| \ge {\varepsilon _d}$ . For the first case, control inputs are defined as ${u_d} = - \frac{\sigma }{{\left\| \sigma \right\|}}\hat{\omega} $ and $({u_p}) = - \frac{{{Y^T}\sigma }}{{\left\| {{Y^T}\sigma } \right\|}}\left\| \rho \right\|$ . Then Eq. (25) is obtained as
Since K and Λ are positive definite matrices and $\left\| {{Y^T}\sigma } \right\|(\!\left\| {\tilde \pi } \right\| - \left\| \rho \right\|\!) + \left\| \sigma \right\|(\hat{\omega} - \hat{\omega} ) \le 0$ , the derivative of the Lyapunov function will be $\dot{V} \le 0$ . As a result, the system will be stable. Eq. (15) shows that V is a positive continuous function and V tends to a constant as $t \to \infty $ and therefore V remains bounded. Thus, $\dot{\tilde{q}}$ and $\tilde{q}$ are bounded, that is, $\dot{\tilde{q}}$ and $\tilde{q}$ converge to zero and this implies that σ is bounded and converges to zero. As a result, $\int {\sigma dt} $ is bounded and converges to a constant. These imply that ${{ \kern2pt\hat{\kern-2pt f}}}$ , $\kern2pt\hat{\kern-2pt d}$ and $\hat{\omega} $ are bounded.
Case 2: If $\left\| {{Y^T}\sigma } \right\| \ge {\varepsilon _p}$ and $\left\| \sigma \right\| \le {\varepsilon _d}$ . For the second case, the control inputs are defined as $({u_p}) = - \frac{{{Y^T}\sigma }}{{\left\| {{Y^T}\sigma } \right\|}}\left\| \rho \right\|$ and ${u_d} = - \frac{\sigma }{{{\varepsilon _d}}}\hat{\omega} $ . Then Eq. (25) is obtained as
The proof is similar to that of a robust controller [Reference Spong5], where ${x^T} = [{\dot{\tilde{q}}^T},{\tilde{q}^T}]$ and Q = diag[ $\Lambda K\Lambda K$ ], provided
Using the relationship
where ${\delta _{{\rm{min}}}}(Q)$ and ${\delta _{{\rm{max}}}}(Q)$ denote the minimum and maximum eigenvalues of $Q$ , respectively, it can be obtained that ${{\dot{V}}} \le 0$ if
It is shown that $\dot{V} \le 0$ for ||x||, where
Case 3: If $\left\| {{Y^T}\sigma } \right\| \le {\varepsilon _p}$ and $\left\| \sigma \right\| \ge {\varepsilon _d}$ . The time derivative of the Lyapunov function is
The maximum term of Eq. (32) will be ${\varepsilon _p}\frac{{\left\| \rho \right\|}}{4}$ . The rest of the proof is given elsewhere [Reference Spong5].
Case 4: If $\left\| {{Y^T}\sigma } \right\| \le {\varepsilon _p}$ and $\left\| \sigma \right\| \le {\varepsilon _d}$ . For the fourth case, Eq. (25) will be
The values $\left\| {{Y^T}\sigma } \right\|(\!\left\| {\tilde \pi } \right\| - \frac{{\left\| {{Y^T}\sigma } \right\|}}{{{\varepsilon _p}}}\left\| \rho \right\|\!)$ and $\left\| \sigma \right\|(\hat{\omega} - \frac{{\left\| \sigma \right\|}}{{{\varepsilon _d}}}\hat{\omega} )$ are bounded by ${\varepsilon _p}\frac{{\left\| \rho \right\|}}{4}$ and ${\varepsilon _d}\frac{{\hat{\omega} }}{4}$ , respectively. Thus,
Similar to the second and third cases, it is shown that $\dot{V} \le 0$ for $\left\| x \right\|$ , where
5. Fuzzy Logic Adaptive Disturbance Estimation Law
Fuzzy logic control has become a very important area of research after the introduction of fuzzy logic by Zadeh [Reference Zadeh21]. This control method is very useful for a system model that is not specified exactly. A fuzzy control system is composed of a fuzzifier, a rule base, an inference engine and a defuzzifier. The rule base consists of a set of If–Then rules, such as If x1 is A1, xi is Ai and xn is An, then $\rho$ is B1, where x = [x1… xi… xn]. T and $\rho$ are the input and output vectors of the fuzzy system, respectively. The fuzzy sets A and B are assumed to be associated with the fuzzy membership functions. For this fuzzy controller, we used two inputs representing the error values (e1, e2) of path tracing for the first and second links of the robot (Fig. 1), and four outputs representing control values of the constant parameters $\alpha$ , $\beta$ , $\lambda$ and b 1 (Fig. 2).
By trial and error method, we found the ranges for membership functions as follows:
Using (If … and … Then …) the structure of the rule table is created and is shown in Table I. At the defuzzification stage, we used the centroid method to obtain the output values.
6. Simulation results
For illustration, a two-link robot manipulator is given in Fig. 3 [Reference Spong5].
For illustration purposes, the robot’s parameters are given in the following tables [Reference Spong5]. Tables II and III show the unloaded manipulator. Table IV shows nominal control parameters; Table V shows the uncertainty bounds. Table V contains simply the differences between the values given in Tables IV and III [Reference Spong5].
In simulations, joint frictions and external disturbances are assumed to be f + d = 10Sin(10t) + 10sin(15t) + 10 at each joint. For comparison, the known pure robust control law is given [Reference Spong5]:
Control input u(t) i is
The desired trajectory is selected for each joint as ${q_1} = {q_2} = 1.5\ cos t - 1.5$ . The control parameters K and Λ are chosen as K = diag(30 30) and Λ = diag(60 60). The same model, same trajectories and same control parameters are used for simulations, and the results obtained are given in Figs. 4–11.
As shown in Fig. 4, the tracking error is large and chattering, and poor steady-state performance is observed for the known robust controller [Reference Spong5]. As shown in Figs. 6–11, the results with external disturbances are close to the results without external disturbances. Tracking performance varies according to the control parameters $\alpha$ , $\beta$ , $\lambda$ and b 1 . As shown in Fig. 9, the maximum tracking error is 4.6 × 10−3 rad for the first joint and 5.7 × 10−3 for the second joint in the transient state. The tracking error is reduced fast after 0.2 s and becomes 1 × 10−3 rad in steady state with the control parameters b 1 = 120, $\beta$ = 100, $\alpha$ = 100 and $\lambda$ = −40. The maximum tracking error is reduced to 2.8 × 10−3 rad in Fig. 11 with the control parameters b 1 = 120, $\beta$ = 10, $\alpha$ = 100 and $\lambda$ = −40. These results show that the desired behaviour of the system is achieved by adjusting the controllers $\alpha$ , $\beta$ , $\lambda$ and b 1 to appropriate values with the same feedback gains. However, it is difficult to find the best values of the parameters for $\alpha$ , $\beta$ , $\lambda$ and b 1 by trial and error method. Therefore, fuzzy logic rules find better values of the control parameters, and the result is given in Figs. 12 and 13.
The control parameters $\alpha$ , $\beta$ , $\lambda$ and b 1 according to error values and their changes with time can be seen in Figs. 14 and 15.
By using the fuzzy logic robust adaptive controller, the values of $\alpha$ , $\beta$ , $\lambda$ and b 1 will change with time, and better values can be extracted according to error, which varies with time and input in the fuzzy system. Thus, better tracking performance is obtained.
In order to investigate the tracking performance of the controller, the more complicated desired trajectory is selected for each joint as ${q_1} = {q_2} = 2\cos 2t - 2$ . The control parameters are chosen the same as those in Figs. 10 and 11 as K = diag(30 30), Λ = diag(60 60), b 1 = 120, $\beta$ = 10, $\alpha$ = 100, $\lambda$ = −40, and the results are given in Figs. 16–19.
As seen in Figs. 16–19, the tracking error is increased in the case of complicated trajectory. However, it is seen that the results obtained are similar in the case of all trajectories. Tracking performance varies with respect to the control parameters $\alpha$ , $\beta$ , $\lambda$ and b 1 . The proposed adaptive robust controller compensates for all of the unmodelled disturbances; however, better compensation is achieved by fuzzy logic rules. As seen in Figs. 11, 13, 17 and 19, results with and without unmodelled parameter disturbances are almost the same by the addition of fuzzy logic rules and better compensation for the unmodelled parameters can be achieved.
7. Conclusion
In the present study, joint friction and external disturbance estimation laws are derived from a Lyapunov function for the control of robots to ensure robust tracking. An upper bound of unmodelled parametric uncertainty and knowledge about external disturbances and joint frictions are not required for the design of the controller. Based on the Lyapunov function, stability and uniform boundedness of tracking error are achieved.
Tracking performance can be improved by adjusting the adaptive gain parameters to appropriate values by trial and error method. However, it is difficult to find better appropriate values by trial and error. By using fuzzy logic, gains are made adaptive and better values can be extracted according to the error, which varies with time via the fuzzy system. Before creating the fuzzy logic rule table, the effect of $\alpha$ , $\beta$ , $\lambda$ and b 1 on the trajectory tracking error is investigated. While doing this research, $\alpha$ , $\beta$ , $\lambda$ and b 1 are taken in a wide range, and all their combinations were tried to determine the effect on the trajectory tracking error. The rule table is created by taking the intervals that have better effect on the reduction of the trajectory tracking error. Membership functions in the rule table are determined according to these intervals. Our values are made variable by choosing the best membership function containing $\alpha$ , $\beta$ , $\lambda$ and b 1 values that will minimize the error in a certain time.
The aim of the estimation laws is not to determine the actual values of the friction and external disturbance parameters. The estimation law is the dynamic compensators designed to obtain a very small tracking error, that is, to estimate the greatest estimation of dynamics compensators and to obtain a very small tracking error with small feedback gains. As shown in the figures, the tracking error is very small. These results also verify that the fundamental shortcoming of the robust controllers is remedied and a very small tracking error with small feedback gain is achieved.
Competing of Interest
None.
Funding Support
None.
Ethical Standard
None.
Author Contributions
Recep Burkan developed the control law and proved the stability of the system. Askin Mutlu designed the fuzzy-logic controller and performed the simulations. Recep Burkan and Askin Mutlu wrote the article.
Appendix A
With this parameterization, the dynamic model in Eq. (1) can be written as ${\rm{Y(q,}}\mathop {{{\dot{q},\ddot{q}}}}\limits^{} {\rm{)\pi }} = {\rm{\tau }}$
The component yij of ${\rm{Y(q,}}\mathop {{{\dot{q},\ddot{q}}}}\limits^{} {\rm{)}}$ are given as
$Y{{(q,\dot{q},}}{{{\dot{q}}}_{\rm{r}}},{{{\ddot{q}}}_{\rm{r}}})$ in Eq. (7) have the components