# Robust Adaptive Tracking Control of a Class of Robot Manipulators with Model Uncertainties

Authors: G. Solís-Perales; R. Peón-Escalante
Journal: Modelling and Simulation in Engineering
 (2012)

---

## Abstract

A robust tracking controller for robot manipulators measuring only the angular positions and considering model uncertainties is presented. It is considered that the model is uncertain; that is, the system parameters, nonlinear terms, external perturbations, and the friction effects in each robot joint are considered unknown. The controller is composed by two parts, a linearizing-like control feedback and a high-gain estimator. The main idea is to lump the uncertain terms into a new state which represents the dynamics of the uncertainties. This new state is then estimated in order to be compensated. In this way the resulting controller is robust. A numerical example for a RR robot manipulator is provided, in order to corroborate the results.


---

## Body

## 1. Introduction

Control of manipulators is a classical control problem [1–4], due to the innumerable applications, for instance, in manufacturing processes, biomedical engineering, and aeronautical. In the tracking problem, it is known that the tracking error should be maintained as small as possible, even in the presence of parameter variations, external perturbations, modeling errors, and even more the presence of faults in the system. These aspects produce, a source of uncertainties and then the controller should be robust against these phenomena.Tracking and control of manipulators have been studied using several approaches. For instance, in [5] authors presented an approach for controlling a robot using only joint position measurements. In such approach an observer is proposed in order to estimate the joint velocities, but uncertainties in the model are not considered. A fuzzy scheme was presented in [6]; however, the methodology requires the knowledge of a nominal values for the inertia matrix. An alternative approach was presented in [7], where the problem of estimation of time-varying parameters was obtained via the multiestimation, which consists in the integration of an adaptive controller to a multi-model-based technique. An application of control of a dual cooperative manipulator based on singularly perturbed formulation and a position/force controller is designed [8], which does not require the velocity measures, as an observer to estimate the velocity and reduce the number of sensors.The present contribution consists in considering uncertain the parameters of the manipulator and the effects of the friction; moreover, it is not necessary to estimate or to adapt to any parameter. In this sense, the controller is considered robust against parameter variations, nonmodeled dynamics (friction dynamics), and external disturbances. We illustrate that the robust control can reject external perturbations, attenuate parameter variation effects, and compensate nonmodeled dynamics. It is known that the friction is a physical phenomenon and many models exist for its study. Thus, the unknown of the friction model is a challenging problem and, from the control view point, compensating this phenomenon is determinant in the performance of the system. Thus in the present contribution a controller which compensate friction and modeling errors is described. In this sense, the controller is capable to compensate modeling errors, friction, parameter variations, and external perturbations using only the measure of the angular position of the robots.The controller is constructed departing from the nonlinear control theory. First, a linearizing control law is determined, then all the uncertain terms are lumped into a new state, which is unknown. The linearizing-like controller requires the knowledge of such an unknown state. To tackle this problem, we use a high-gain state estimator to obtain an estimated value for this uncertain term [9]. This value is used by the controller which now can compensate all the uncertainties.The paper is organized as follows: in Section2, the dynamic model for a robot manipulator is presented, Section 3 contains the main contribution on nonlinear robust control, Section 4 presents the simulation results, and finally, in Section 5, some conclusions are given.


## 2. Dynamic Model of the Manipulator

Let us consider the well-known standard equation describing the dynamics of an-DOF rigid joint robot manipulator with friction
(1)M(q)q¨+V(q,q˙)+G(q)+B(q˙)=T(t)-Td(t),
where M(q)∈ℝn×n is a positive definite inertia matrix, V(q,q˙)∈ℝn×1 the Coriolis and centrifugal forces, G(q)∈ℝn×1 is the vector for the gravitational forces and B(q˙) is a vector field of the friction terms, T,Td∈ℝn×1 stand for the control and disturbance torques, respectively, and q(t)∈ℝn is the state vector for the joint angular positions of the manipulator. In this contribution we consider the friction terms as follows:
(2)Bi(q˙i)=Bν,iq˙i+Bf1,i(1-21+e2ω1q˙i)+Bf2,i(1-21+e2ω2q˙i),
where Bν,i stands for the viscous friction; the second and third terms model the Coulomb and Stribeck friction effects in the ith robot link; for details see [10, 11] and references therein.


## 3. Nonlinear Control of Robot Manipulators

Let us consider (1) and defining x1=q=[q1,q2,…,qn]T as the n-vector of the joint positions and x2=q˙=x˙1=[q˙1,q˙2,…,q˙n]T as the n-vector of angular velocities; thus one can write the system as follows:
(3)x˙1=x2,x˙2=M(x1)-1(T-Td-V(x1,x2)-G(x1)-B(x2)),y=x1,
where the output y is the vector of angular positions, without losing generality, for a manipulator with n joints, the affine system can be written as follows:
(4)χ˙=Ψ(χ)+∑j=1n‍Γj(χ)τjyi=hi(χ),
where χ∈ℝ2n is the state vector of positions and velocities of the manipulator given by χ=[q1,q2,…,qn,q˙1,…,q˙n]T,Ψ(χ):ℝ2n→ℝ2n is a sufficiently smooth vector field describing the robot dynamics, Γj(χ)∈ℝ2n is the input vector given by Γj(χ)=[0n×1,𝔪1,j(χ),…,𝔪n,j(χ)]T where 𝔪i,j are the entries of the inverse inertia matrix, and τj is the control torque in the jth joint. It is important to stress that the friction terms are included into the dynamics Ψ(χ). System (4) consists of a system with n inputs and n outputs; therefore the multiple-input and multiple-output nonlinear control tools are used [12]. The underlying idea of the nonlinear feedback control is to find functions τj, such that the desired dynamical behavior is induced for any initial condition χ0=χ(0) in an attraction basin U0⊂ℝ2n. To begin with, we depart from the relative degree condition for a MIMO system [12].Definition 1.
The multiple input and multiple output affine system (4) has relative degree (ρ1,ρ2,…,ρn) at the point χ0 if(i)
LΓjLΨkhi(χ)=0, for all 1≤j,i≤n, k<ρi-1, and for all χ in the neighborhood of χ0,(ii)
then×n matrix
(5)Aχ=(LΓ1LΨρ1-1h1(χ)⋯LΓnLΨρ1-1h1(χ)LΓ1LΨρ2-1h2(χ)⋯LΓnLΨρ2-1h2(χ)⋯⋯⋯LΓ1LΨρn-1hn(χ)⋯LΓnLΨρn-1hn(χ))is nonsingular at χ=χ0.In the fully actuated manipulator, the relative-degree matrix𝒜χ is square, and it is given by the positive definite matrix M(x1)-1. Thus, due to the invertibility of the matrix 𝒜χ, a diffeomorphic transformation can be determined based on the Lie derivatives, of the outputs along the vector fields. Without losing generality, one can propose the transformation z=Φ(χ)=[χ1,χn+1,χ2,χn+2,…,χn,χ2n]T, Φ:ℝ2n→ℝ2n, for z∈Ω⊂U, such that the affine form (4) takes a linearizable canonical form. In terms of the Lie derivatives the transformation is given as z2k-1=hk(χ)=χk and z2k=LΨhk(χ)=χn+k,k=1,2,…,n. Therefore, the system in the new-state variables is described by n set of equations as follows:(6)z˙2k-1=z2k,z˙2k=ζk(z)+∑j=1n‍ϑk,j(z)τj,yk=z2k-1,k=1,2,…,n.
This system corresponds to the kth joint, and it is fully linearizable via feedback, and ζk(z)=LΨ2hk(Φ(z)-1), ϑi,j(z)=LΓjhk(Φ(z)-1). These functions represent the dynamics of the system and the way as the control is acting onto the system, respectively. Note that the friction term, the Coriolis, centrifugal forces the gravity effect, and all possible non modeled dynamics are in function ζk(z) and the inertia terms are in function ϑk,j(z). From system (6), the vector of control torques is calculated as follows:
(7)T=Aχ-1(χ){-Z(z)+qr(2)+K1(Z1-qr)+K2(Z2-qr(1))},
where ℨ(z) is the vector of functions ζk(z)=LΨ2hk(Φ(z)-1), qr is the reference angular position vector, K1 and K2 are control gain matrices, and Z1 and Z2 are the vector of transformed angular positions and velocities, respectively. This controller is called the perfect controller since it requires the perfect knowledge of the dynamics ℨ(z), the angular velocities Z2, and the matrix 𝒜χ-1(χ) in order to track the reference trajectory. In this sense such a controller is not realistic and cannot be implemented. Thus, we assume that only the angular positions are available for feedback and that sign[ϑ^k,j(z)]=sign[ϑk,j(z)] at any z∈U0⊂ℝ2n of z0 is known. Note that it is not necessary to know a nominal value of the inertia matrix.Thus, system (6) can be written in an extended form defining δk(z)=ϑk,j(z)-ϑ^k,j(z), Θk(z,u)=ζk(z)+δk(z)τj, and ηk=Θk(z,τj). Thus system (6) takes the form
(8)z˙2k-1=z2kz˙2k=ηk+∑j=inϑ^k,j(z)τj,η˙k=Ξk(z,ηk,τj,τ˙j)yk=z2k-1,k=1,2,…,n,
where the function Ξk(·)=Σk=1n((∂Θk(·)/∂z2k-1)z2k+(∂Θk(·)/∂z2k)(ηk+Σj=1nϑ^k,j(z)τj)+δk(z)τ˙j). The new state ηk provides the dynamics of the uncertain terms, such as the friction and the uncertain parameter values [9].System (8) is dynamically equivalent to system (6) and comprises the lumping state; however, such a state is again unknown. Although the state ηk is unknown, there are only two unknown variables, the new-state ηk and the state z2k which corresponds to the angular velocity.At this point the controller is given by(9)T=Aχ-1(χ){-H+qr(2)+K1(Z1-qr)+K2(Z2-qr(1))},
where H is the vector with entries ηk and it cannot be implemented since the states ηk and z2k are not available for feedback. To tackle this problem we use a state estimator which provides an estimated value of ηk and z2k [9]. The state estimator for the kth link is given by
(10)z^˙2k-1=z^2k+λkκ1,k(z2k-1-z^2k-1)z^˙2k=η^k+∑j=inϑ^k,j(z^)τj+λk2κ2,k(z2k-1-z^2k-1),η^˙k=λk3κ3,k(z2k-i-z^2k-1),ye,k=z^2k-1,k=1,2,…,n,
With these estimates the control command can be given by
(11)T=Ae-1{-H^+qr(2)+K1(Z1-qr)+K2(Z^2-qr(1))},
where 𝒜e is an estimated matrix where its elements satisfy the condition sign[ϑ^k,j(z)]=sign[ϑk,j(z)]. This controller only requires the value of the angular position vector Z1, the time derivatives of the reference signals yr,k, and the estimated values of the angular velocity. The estimation parameters λk and κi,k are the high gain parameters and the state estimator gains, respectively, which are chosen in such way that the close-loop system be stable.Proposition 2.
Letek∈ℝ3 be an estimation error vector whose components are defined as e1,k=λk(z2k-1-z^2k-1), e2,k=λk2(z2k-1-z^2k-1), and e3,k=ηk-η^k. For sufficiently large λk, the dynamics of the estimation error decays globally exponentially to zero if sign(ϑ^k,j(z))=sign(ϑk,j(z)).Proof.
Combining systems (8) and (10), the dynamics of the estimation error can be written as follows:
(12)e˙k=λkDek+Δ(z,ηk,τe,j),
where Δ(z,ηk,τe,j)=[0,0,Ξ(z,ηk,τe,j)]T and the matrix D is
(13)D=(-κ1,k10-κ2,k01-κ3,k00),
since sign(ϑ^k,j(z))=sign(ϑk,j(z)), thus D is obviously Hurwitz; thus there exists a positive definite and symmetric matrix P such that PD+DTP=-Q, with Q a positive definite and symmetric matrix. Choosing V(ek)=ekTPek as the Lyapunov-like function candidate, one has
(14)V˙(ek)=e˙kTPek+ekTPe˙k=λkekT(PD+DTP)ek+2ekTPΔ(z,ηk,τe,j)V˙(ek)≤-λkσmin⁡(Q)‖ek‖2+2σmax⁡(P)‖ek‖‖Δ(z,ηk,τe,j)‖,V˙(ek)≤-λkσmin⁡(Q)‖ek‖2+2σmax⁡(P)‖ek‖r,
where σmin(Q) and σmax(P) are the minimum and maximum eigenvalues of the matrices Q and P, respectively, and the function Δ(z,ηk,τe,j) satisfies ∥Δ(z,ηk,τe,j)∥≤r for some r>0. Therefore, the error ek decays, and it can be seen that it is ultimately bounded. Also note that as λk increases, ek will decrease, which also decreases the exponential estimation error bound; therefore, λk should be made as large as possible, and this achieves the proof.It is important to note that the proposition is valid fork=1,2,…,n, therefore it is possible to obtain an estimated value for the unknown states. The previous proposition states that there exists a Lyapunov function which depends on the parameter λk and provides the global exponential convergence of the estimation error dynamics.Proposition 3.
System (1) asymptotically tracks a prescribed sufficiently smooth reference under the feedback (11) via the stabilization of the extended system (8).Proof.
Substituting the robust feedback (9) into (8) and considering the estimation error system (12), the closed-loop dynamics is given by
(15)z˙2k-1=z2k,z˙2k=ηk+∑j=inϑ^k,j(z)τj,η˙k=Ξk(z,ηk,τj,τ˙j),e˙k=λkDek+Δ(z,ηk,τj).
Since ηk=Θk(z,τj) and τj=(1/ϑ^j(z))(-η^k+νk), it follows that ηk=ℨk(z,ηk,ek,τj,t) (which can be computed from the first integral of η˙k=Ξk(z,ηk,τj,τ˙j); i.e, ηk=∫‍Ξk(z,ηk,ek,τj,σ)dσ). Then, according to the contraction mapping theorem the state ηk can be expressed globally and uniquely as a function of the coordinates (z,ek). Now, note that since the matrix D is Hurwitz by construction and the nonlinear function Δ(z,ηk,τj) is bounded, the estimation error system (12) is asymptotically stable. In this sense given a compact set of initial conditions Ωk⊂ℝ3 containing the origin, there exists an upper bound τj,max such that τj≤τj,max and a high-gain estimator parameter λk such that Ωk is contained into the attraction basin. Hence, the closed-loop system is semiglobally practically stable; that is, (ek,ηk)→(0,0), and this achieves the proof.The previous proposition is a simple strategy for robust tracking of robot manipulators, despite the uncertain knowledge of the models.


## 4. Numerical Simulations

To corroborate the performance of the robust controller in the effects of parameter variations, modeling errors, and external perturbations, we propose to apply the robust controller to a RR manipulator (rotational-rotational,n=2,q=[q1,q2]T). We propose a smooth chaotic trajectory as a reference, which is obtained from the solutions of the Duffing chaotic system
(16)y˙1=y2,y˙2=y1+0.25y2+y3,YR=Cy.
This system provides irregular, unpredictable but bounded smooth trajectories in the cartesian coordinates of the manipulator; therefore using the inverse kinematics transformation the reference trajectories in the articular space are given by the functions qr=[φ1(YR)φ2(YR)]T. In this case we used these trajectories in order to illustrate that the controller makes the manipulator tracks an irregular trajectory. The reference trajectories are illustrated in Figure 1.Figure 1
Reference irregular (chaotic) trajectory used to be followed by the RR manipulator.For theRR configuration and from (3), we have
(17)M(q)=[P1+P2+2P3cos⁡q2P2+P3cos⁡q2P2+P3cos⁡q2P2],V(q,q˙)=[-2P3sin⁡q2q˙1q˙2-P3sin⁡q2q˙22P3sin⁡q2q˙22],G(q)=[g1cos⁡q1+g2cos⁡⁡(q1+q2)g2cos⁡⁡(q1+q2)],
where Pi, gj,i=1,2,3,j=1,2 are constant parameters given by P1=m1lcm12+m2l12+Izz1, P2=m2lcm22+Izz2, P3=m2l1lcm2, g1=(m1lcm1+m2l1)g, and g2=m2lcm2g and are considered unknown. Now, performing the change of variable x1(t)=[q1,q2]T=[χ1,χ2]T and x2(t)=[q˙1,q˙2]T=[χ3,χ4]T, the system in affine form is written as follows:
(18)χ˙1=χ3,χ˙2=χ4,χ˙3=f1(χ)+M11τ1+M12τ2,χ˙4=f2(χ)+M21τ1+M22τ2,Y=Cχ,
where f1(χ)=-𝔪11(V1(χ)+G1(χ)+B1(χ))-𝔪1,2(V2(χ)+G2(χ)+B2(χ)) and f2(χ)=-𝔪21(V1(χ)+G1(χ)+B1(χ))-𝔪22(V2(χ)+G2(χ)+B2(χ)) are the nonlinear terms (considered uncertain) of the robot manipulator and the output is given by the matrix 𝒞=[I2×2,02×2]T. Notice that, in this nonlinear function appear the friction terms (2), 𝔪k,j stand for the elements of the inverse inertia matrix, V1(χ)=-2P3sinχ2χ3χ4-P3sinχ2χ42, V2(χ)=P3sinχ2χ42, G1(χ)=g1cosχ1+g2cos(χ1+χ2), and G2(χ)=g2cos(χ1+χ2). Therefore, calculating the relative degree matrix (see Definition 1) for this system we have
(19)Aχ=(LΓ1LΨh1(χ)LΓ2LΨh1(χ)LΓ1LΨh2(χ)LΓ2LΨh2(χ))=(m11m12m21m22)=M(χ)-1.
Note that the relative degree matrix is invertible due to the positive definiteness of the inertia matrix; however, it is considered uncertain and a nominal model is not required. The parameter values used for this example but considered unknown in the controller were for link 1: l1=0.35m, lcm1=0.175m, Izz1=0.0064Kgm2, m1=0.479Kg. For link 2: l2=0.30m, lcm2=0.145m, Izz2=0.004Kgm2, m2=0.341Kg. Thus for k=2 the transformed extended system is written as follows:
(20)z˙1=z2,z˙2=η1+ϑ^1,1(z)τ1+ϑ^1,2(z)τ2,η˙1=Ξ1(z,η1,τk,τ˙k),z˙3=z4,z˙4=η1+ϑ^2,1(z)τ1+ϑ^2,2(z)τ2,η˙2=Ξ2(z,η2,τk,τ˙k),y1=z1,y2=z3;
since we assume that only the measured states are available for feedback and by Propositions 2 and 3, we can design the state estimator as follows:
(21)z^˙1=z^2+λ1κ1,1(z1-z^1),z^˙2=η^1+ϑ^1,1(z^)τ1+ϑ^1,2(z^)τ2+λ12κ2,1(z1-z^1),η^˙1=λ13κ3,1(z1-z^1),z^˙3=z^4+λ2κ1,2(z2-z^2),z^˙4=η^2+ϑ^2,1(z^)τ1+ϑ^2,2(z^)τ2+λ22κ2,2(z2-z^2),η^˙2=λ23κ3,2(z2-z^2);
thus, the required robust control vector is given by
(22)[τ1τ2]=Ae-1[-η^1+qr,1(2)+ν1-η^2+qr,2(2)+ν2],
where ν1 and ν2 are the new control inputs and are given by
(23)[ν1ν2]=[K1,1(z1-qr,1)+K2,1(z^2-qr,1(1))K1,2(z3-qr,2)+K2,2(z^4-qr,2(1))].
Therefore, with these controllers the RR robot manipulator tracks the trajectory given by the Duffing equation. The tracking of the reference trajectory is illustrated in Figure 2, where Yr and Y are the reference and the robot manipulator trajectories, respectively, and Y is obtained by the kinematics transformation. Note that the perturbation torques do not affect the performance. That is, the perturbations are rejected by the controller. The error in the robot workspace is illustrated in Figure 3, where it remains close to the origin even in the presence of the uncertainties.Figure 2
Tracking of the reference trajectory, using the robust approach.Figure 3
Tracking error in the robot workspace.In Figure4 the dynamics of the friction and perturbations in joints are illustrated. The friction was obtained with Bν=0.45, Bf1=0.1, Bf2=0.27, ω1=0.005, and ω2=0.0025 for the first link and Bν=0.45, Bf1=1, Bf2=2.7, ω1=0.005, and ω2=0.0025 for the second. The perturbation torques are given by a sinusoidal function of amplitude 8 Nm and 7 Nm for the first and second robot elements. Note that this friction parameters and the specific functional for the friction are completely unknown. Therefore, it can be considered as time varying the parameters and the friction parameter, without retuning the controller, that is, the tracking of the trajectory, is sustained.Friction dynamics in each robot joint and external torque perturbations.
(a)
(b)
(c)
(d)Finally, in Figure5 the resulting control torques for the robot are illustrated. Note that the perturbation torques are compensated by the controllers; however, the controllers do not have any knowledge about them.Control torques provided by the robust controller.
(a)
(b)


## 5. Conclusions

In this work we present a robust tracking control for the compensation of modeling errors, parameter variations, and external perturbation for a class of robot manipulators. The robust scheme is such that it only requires to measure the angular positions. In this sense, the controller can compensate the uncertainty in parameter values, uncertain knowledge of the model, and external perturbations via an augmented state. This approach does not require to estimate or adapt any parameter; it is only needed to know the sign of some parameters but not a nominal value. In this sense the control strategy is considered robust; in the case of the friction it is not required of the precise function to be compensated. The key feature is to lump the uncertain terms into a new state, which provides the dynamics of the uncertainties via a state estimator, such that instead of estimate every parameter it is only required to estimate the dynamic of the uncertainties. This robust control approach can be applied to other robot configurations provided that the relative degree matrix be invertible.



---

*Source: 271705-2012-07-08.xml*