1 Introduction

The research of flexible joint robots (FJR) has received considerable attention in the past two decades[1]. To obtain good control performance, no matter in modeling or in control design, the joint flexibility, which is usually caused by harmonic drives, shaft windup, and bearing deformation, cannot be ignored. In the literature, there have been many methods proposed, for instance, the singular perturbation approach[2], the passivity approach[3], the sliding mode approach[4], and the neural network approach[5, 6].

It is known that the backstepping technique is also an important method. A robust controller was proposed to guarantee the tracking of any given reference trajectory with arbitrary accuracy[7]. An adaptive output-feedback controller was designed for the single link robotic manipulator[8] and the adaptive backstepping method for rigid-link flexible-joint robots was studied. In addition to these methods[9, 10], the dynamic surface control method is a recently proposed control algorithm. With this method, Zhang et al.[11, 12] considered adaptive dynamic surface control for nonlinear systems with uncertainties, Hou and Duan[13] studied how to design controller for integrated missile guidance and autopilot. Moreover, some other approaches such as model reference adaptive control[14, 15], robust adaptive control[16] and adaptive iterative learning control[17] are also useful to regulate such nonlinear systems.

The adaptive tracking problem for FJR has been studied before. However, there exist some drawbacks in the existing methods. The first one may be the “overparametrization” problem. The reason is that the control design procedure depends on the linear property of unknown system parameters. Another may be the “explosion of complexity” problem, i.e., the designed controller is usually made quite complicated because of the repeated differentiations of virtual controllers in control design procedure. In this paper, we will investigate how to design an adaptive tracking controller for FJR to avoid the above problems. Mainly motivated by the continuous control ideas[18, 19] and flexibly using algebraic techniques, we present a new control design method for FJR. Then, we construct an appropriate Lyapunov function and show that the designed controllers can guarantee all the signals of the resulting closed-loop system globally/semi-globally uniformly ultimately bounded, and the tracking errors can be rendered arbitrarily small.

The main contributions of the paper are characterized by the following specific features: 1) The “explosion of complexity” problem and the “overparametrization” problem of the existing control methods are avoided. 2) It is not easy to find an appropriate Lyapunov function which is well-behaved in stability analysis. In this paper, by using flexible algebraic techniques, two new Lyapunov functions are recursively constructed in the control design procedure.

2 Preliminaries and problem statement

Consider the dynamic equations of the flexible joint robots given as[20, 21]

$$M({q_1}){\ddot q_1} + C({q_1},{\dot q_1}){\dot q_1} + h({q_1}) + {\tau _c} + {f_1}({q_1},{\dot q_1}) = 0$$
(1)
$$B{\ddot q_2} - {\tau _c} + {f_2}({q_2},{\dot q_2}) = u$$
(2)
$${\tau _c} = K({q_1} - {q_2})$$
(3)

where q1Rn is the joint angular position, q2Rn is the motor angular position, \({\dot q_1},{\dot q_2} \in {{\bf{R}}^n}\) are the respective velocities, M(q1) ∈ Rn×n, BRn×n are positive and symmetric inertia matrices, KRn×n is diagonal matrix whose entries are elastic constants k i of the joints, \(C({q_1},{{\dot q}_1}){{\dot q}_1} \in {{\bf{R}}^n}\) is the centrifugal and coriolis force, h(q1) ∈ Rn is the gravity force vector, \({f_1}({q_1},{{\dot q}_1}),{f_2}({q_2},{{\dot q}_2})\) are the frictional terms, and uRn is the input torque. The angular positions q1, q2, and the respective velocities \({{\dot q}_1},\;{{\dot q}_2}\) are assumed to be measurable.

The purpose of the paper is to design an adaptive state feedback controller for the system (1)–(3). We specified the control problems as: 1) Given the desired reference trajectory q d , design a controller if possible, such that the link position tracking error z1 = q1q d converges to 0 as much as possible. 2) Meanwhile, all the closed-loop signals are rendered bounded.

We need Assumptions 1–3.

  • Assumption 1. The desired trajectory vectors are continuous and available, and \({[q_d^{\rm{T}},\dot q_d^{\rm{T}},\;\ddot q_d^{\rm{T}}]^{\rm{T}}} \in {\Omega _d}\) with known compact set \({\Omega _d} = \{{[q_d^{\rm{T}},\dot q_d^{\rm{T}},\;\ddot q_d^{\rm{T}}]^{\rm{T}}} \in {{\bf{R}}^{3n}}\left\vert {\vert {q_d}{\vert ^2} + \vert {{\dot q}_d}{\vert ^2}} \right. + \vert {{\ddot q}_d}{\vert ^2} \leq A\}\).

  • Assumption 2. There exist positive constants b i , m i , k i , i = 1, 2, such that m1λmin(M) ≤ ∥M2λmax(M) ≤ m2, b1λmin(B) ≤ ∥B2λmax(B) ≤ b 2 , k1λmin(K) ≤ ∥K2λmax(K) ≤ k2, where only parameter b2 is known.

  • Assumption 3. There exist unknown positive constant θ i , and known smooth functions ϕ i (·), i = 0, 1, 2, such that

    $$\vert C({q_1},{\dot q_1}){\dot q_1} + h({q_1}) + K{q_1}{\vert ^2} \leq {\theta _0}{\phi _0}({q_1},{\dot q_1})$$
    (4)
    $$\vert {f_1}({q_1},{\dot q_1}){\vert ^2} \leq {\theta _1}{\phi _1}({q_1},{\dot q_1})$$
    (5)
    $$\vert {f_2}({q_2},{\dot q_2}){\vert ^2} \leq {\theta _2}{\phi _2}({q_2},{\dot q_2}).$$
    (6)
  • Remark 1. These assumptions are reasonable and not stronger than the existing ones. Assumption 1 gives basic conditions using dynamic surface control method. Assumption 2 provides that only one constant b2 is known in this paper, while in [8, 10], all the parameters b i , m i , k i , i = 1, 2 were assumed to be known. Assumption 3 is similar to Assumption 2 in [19] for the rigid joint case.

  • Remark 2. It is easy to see that the FJR system is underactuated. Tracking control problems of underactuated systems are more difficult, since there are fewer inputs than degrees of freedom. In addition, when the system is suffered by external disturbances, only some semi-global results can be obtained, rather than achieving global results. See for instance, the FJR system[7, 9], the ships[22], the wheeled inverted pendulums[23], and more general underactuated system[24].

Before the control design procedure, we define \({x_1} = {q_1},\;{x_2} = {{\dot q}_1},\;{x_3} = {q_2},\;{x_4} = {{\dot q}_2}\), and introduce the following transformations:

$$\left\{ {\begin{array}{*{20}c} {z_1 = x_1 - q_d ,} & {z_2 = \dot z_1 + (c_1 + 1)z_1 } \\ {z_3 = x_3 - q_3^* ,} & {z_4 = x_4 - x_4^* } \\ \end{array} } \right.$$
(7)

where \(x_i^{\ast}\) is the virtual control to be determined later. Then, we can deduce that

$$\left\{ {\begin{array}{*{20}c} {\dot z_1 = z_2 - (c_1 + 1)z_1 } \\ {\dot z_2 = M^{ - 1} (x_1 )Kx_3 - F_1 } \\ {\dot z_3 = x_4 - \frac{{\partial x_3^* }} {{\partial \hat \theta }}\hat \theta - F_2 } \\ {\dot z_4 = B^{ - 1} (u + K(x_1 - x_3 ) - f_2 ) - \frac{{\partial x_4^* }} {{\partial \hat \theta }}\dot \hat \theta - F_3 } \\ \end{array} } \right.$$
(8)

where F i are defined as \({F_1} = {M^{- 1}}(C{x_2} + h + K{x_1} + {f_1}) + {{\ddot q}_d} - ({c_1} + 1){z_2} + {({c_1} + 1)^2}{z_1},{F_2} = {{\partial x_3^{\ast}} \over {\partial z_1^{\rm{T}}}}{{\dot z}_1} + {{\partial x_3^{\ast}} \over {\partial z_2^{\rm{T}}}}{{\dot z}_2} + {{\partial x_3^{\ast}} \over {\partial q_d^{\rm{T}}}}{{\dot q}_d} + {{\partial x_3^{\ast}} \over {\partial \dot q_d^{\rm{T}}}}{{\ddot q}_d}\), and \({F_3} = {{\partial x_4^{\ast}} \over {\partial z_1^{\rm{T}}}}{{\dot z}_1} + {{\partial x_4^{\ast}} \over {\partial z_2^{\rm{T}}}}{{\dot z}_2} + {{\partial x_4^{\ast}} \over {\partial z_3^{\rm{T}}}}{{\dot z}_3} + {{\partial x_4^{\ast}} \over {\partial q_d^{\rm{T}}}}{{\dot q}_d} + {{\partial x_4^{\ast}} \over {\partial \dot q_d^{\rm{T}}}}{{\ddot q}_d}\) Define positive parameters \(a = {{{m_2}} \over {k_1^2}}\). Parameter a will be used for constructing the Lyapunov function subsequently, and parameter θ is the only one to be estimated in the control design. The following lemma 1, which is the well known Young’s inequality[19], will play a key role in proving the main results of this paper.

  • Lemma 1. For vectors x, yRn, and scalar positive numbers ε > 0, p > 0, there holds

    $${x^{\rm{T}}}y \leq {{{\epsilon ^p}} \over p}\vert x\vert + {1 \over {q{\epsilon ^p}}}\vert y\vert {^q}$$

    where \(q = {p \over {p - 1}}\).

  • Lemma 2. There exist smooth nonnegative functions ψ i , i = 1, ⋯, 4, and positive constant ν such that

    $$ - z_3^{\rm{T}}{F_2} \leq (z_3^{\rm{T}}{z_3})({\psi _1}\theta + {\psi _2}) + \nu$$
    (9)
    $$ - z_4^{\rm{T}}{F_3} \leq (z_4^{\rm{T}}{z_4})({\psi _3}\theta + {\psi _4}) + \nu .$$
    (10)
  • Proof. See Appendix. □

3 Control of FJR system

In this subsection, we will construct an adaptive statefeedback controller for FJR system, which will be addressed in a step-by-step manner.

  • Step 1. Suppose \({\hat \theta}\) is the estimate of θ, and the corresponding error is defined as \(\tilde \theta = \hat \theta - \theta\). Then, we introduce the transformations: z1 = x1q d and z2 = ż1 + (c1 + 1)z1 and choose the candidate Lyapunov function \({V_1}({z_1},{z_2},\tilde \theta) = {1 \over 2}z_1^{\rm{T}}{z_1} + {1 \over {2a}}z_2^{\rm{T}}K{z_2} + {1 \over {2\gamma}}{{\tilde \theta}^2}\), where γ > 0 is a designed parameter. Taking the time derivative of V1, we get

    $$\matrix{{{{\dot V}_1} = - ({c_1} + 1)z_1^{\rm{T}}{z_1} + z_1^{\rm{T}}{z_2} + {1 \over a}z_2^{\rm{T}}K{M^{- 1}}({x_1})Kx_3^{\ast} +} \hfill \cr{\quad \;{1 \over a}z_2^{\rm{T}}K{M^{- 1}}K({x_3} - x_3^{\ast}) - {1 \over a}z_2^{\rm{T}}K{F_1} + {1 \over \gamma}\tilde \theta \dot \hat \theta .} \hfill \cr}$$
    (11)

    By using Lemma 1, one can conclude that

    $$z_1^{\rm{T}}{z_2} \leq {1 \over 2}z_1^{\rm{T}}{z_1} + {1 \over 2}z_2^{\rm{T}}{z_2}.$$
    (12)

    From Assumption 2 and Lemma 1, it leads to

    $$ - \frac{1} {a}z_2^T KM^{ - 1} \left( {Cx_2 + h\left( {x_1 } \right) + Kx_1 + f_1 } \right) \leqslant \frac{{k_2 }} {{am_1 }}\left| {z_2 \left\| {Cx_2 + h + Kx_1 + f_1 } \right.} \right| \leqslant \frac{1} {{\delta _1 }}\left( {\frac{{k_2 }} {{am_1 }}} \right)^2 \left| {z_2 } \right|^2 \left( {\theta _0 \varphi _0 + \theta _1 \varphi _1 } \right) + \frac{{\delta _1 }} {2} \leqslant \frac{1} {{\delta _1 }}\theta z_2^T z_2 \left( {\varphi _0 + \varphi _1 } \right) + \frac{{\delta _1 }} {2}.$$
    (13)

    According to Assumption 2 and Lemma 1, it yields

    $$ - {1 \over a}z_2^{\rm{T}}K{\ddot q_d} \leq {\theta \over {2{\delta _2}}}z_2^{\rm{T}}{z_2} + {{{\delta _2}} \over 2}\vert {\ddot q_d}{\vert ^2}.$$
    (14)

    Similarly, we have

    $$ - \frac{1} {a}z_2^T K\left( { - (c_1 + 1)z_2 + (c_1 + 1)^2 z_1 } \right) \leqslant \left( {c_1 + 1 + \frac{{(c_1 + 1)^4 }} {2}} \right)\max \{ \frac{{k_2 }} {a},\frac{{k_2^2 }} {{a^2 }}\} \left| {z_2 } \right|^2 + \frac{1} {2}\left| {z_1 } \right|^2 \leqslant \left( {c_1 + 1 + \frac{{(c_1 + 1)^4 }} {2}} \right)\theta z_2^T z_2 + \frac{1} {2}z_1^T z_1 .$$
    (15)

    Combining (13)–(15), it follows that

    $$ - {1 \over a}z_2^{\rm{T}}K{F_1} \leq {1 \over 2}z_1^{\rm{T}}{z_1} + \theta ({\omega _1} - 1)z_2^{\rm{T}}{z_2} + {{{\delta _1}} \over 2} + {{{\delta _2}} \over 2}\vert \ddot q{\vert ^2}$$
    (16)

    where \({\omega _1} = {1 \over {{\delta _1}}}({\phi _0} + {\phi _1}) + {1 \over {2{\delta _2}}} + {c_1} + {{{{({c_1} + 1)}^4}} \over 2} + 2\). It follows from Assumption 2 and Lemma 1 that

    $${1 \over a}z_2^{\rm{T}}K{M^{- 1}}K({x_3} - x_3^{\ast}) \leq {1 \over 2}z_3^{\rm{T}}{z_3} + \theta z_2^{\rm{T}}{z_2}.$$
    (17)

    Defining \({d_1} = {{{\delta _1}} \over 2} + {{{\delta _2}} \over 2}\vert {{\ddot q}_d}{\vert ^2}\), and substituting (12)–(17) into (11), we obtain

    $$\dot V_1 \leqslant - c_1 z_1^T z_1 + \frac{1} {a}z_2^T KM^{ - 1} (x_1 )Kx_3^* + \left( {\frac{1} {2} + \omega _1 \theta } \right)z_2^T z_2 + \frac{1} {2}z_3^T z_3 + d_1 + \frac{1} {\gamma }\tilde \theta \dot \hat \theta .$$
    (18)

    We choose the first virtual control

    $$x_3^* \left( {z_1 ,z_2 ,q_d ,\dot q_d ,\hat \theta } \right) = - \left( {c_2 + \frac{1} {2} + w_1 \hat \theta } \right)z_2 $$
    (19)

    where c2 > 0 is a design parameter. The adaptive law is designed as

    $$\dot \hat \theta = \Psi - \sigma \hat \theta$$
    (20)

    where Ψ ≥ 0 will be determined later. Actually, the adaptive law can guarantee \(\hat \theta (t) > 0\) for any positive initial value, i.e., if \(\hat \theta ({t_0}) > 0\). From (20), we have

    $$\hat \theta (t) = \hat \theta ({t_0}){{\rm{e}}^{- \sigma (t - {t_0})}} + \int_{{t_0}}^t {{{\rm{e}}^{- \sigma (t - s)}}\Psi (s){\rm{d}}s > 0.}$$

    . In view of a > 0 and \(\hat \theta > 0\), it follows that

    $${1 \over a}z_2^{\rm{T}}K{M^{- 1}}({x_1})Kx_3^{\ast} \leq - ({c_2} + {1 \over 2} + {\omega _1}\hat \theta)z_2^{\rm{T}}{z_2}.$$
    (21)

    Substituting (21) into (18), we obtain

    $${\dot V_1} \leq - \sum\limits_{i = 1}^2 {{c_i}z_i^{\rm{T}}{z_i} + {1 \over 2}z_3^{\rm{T}}{z_3} + {{\tilde \theta} \over \gamma}(\dot \hat \theta} - {\Psi _1}) + {d_1}$$
    (22)

    where \({\Psi _1} = \gamma {\omega _1}z_2^{\rm{T}}{z_2}\). This completes Step 1. It can be viewed as the initialization of the whole design procedure.

  • Step 2. Choosing the candidate Lyapunov function \({V_2}({z_1},{z_2},{z_3},\tilde \theta) = {V_1} + {1 \over 2}z_3^{\rm{T}}{z_3}\), and taking the time derivative, it leads to

    $$\matrix{{{{\dot V}_2} \leq - \sum\limits_{i = 1}^2 {{c_i}z_i^{\rm{T}}{z_i} + {1 \over 2}z_3^{\rm{T}}{z_3} + z_3^{\rm{T}}x_4^{\ast} + {{\tilde \theta} \over \gamma}(\dot \hat \theta} - {\Psi _1}) +} \hfill \cr{\quad \quad {d_1} - z_3^{\rm{T}}{{\partial x_3^{\ast}} \over {\partial \hat \theta}}\dot \hat \theta + z_3^{\rm{T}}({x_4} - x_4^{\ast}) - z_3^{\rm{T}}{F_2}.} \hfill \cr}$$
    (23)

    By Lemma 1, we can deduce that

    $$z_3^{\rm{T}}({x_4} - x_4^{\ast}) \leq {1 \over 2}z_4^{\rm{T}}{z_4} + z_3^{\rm{T}}{z_3}.$$
    (24)

    Using Lemma 2, we have

    $$ - z_3^{\rm{T}}{F_2} \leq (z_3^{\rm{T}}{z_3})({\psi _1}\theta + {\psi _2}) + \nu .$$
    (25)

    Defining \({\Psi _2} = {\Psi _1} + \gamma {\psi _1}z_3^{\rm{T}}{z_3}\) and choosing the virtual control, we have

    $$x_4^{\ast}(\cdot) = - ({c_3} + 1 + {\psi _2} + {\psi _1}\hat \theta){z_3} - {{\partial x_3^{\ast}} \over {\partial \hat \theta}}({\Psi _2} - \sigma \hat \theta)$$
    (26)

    where c3 > 0 is a design parameter. Substituting (26) into (23), it yields that

    $$\matrix{{{{\dot V}_2} \leq - \sum\limits_{i = 1}^3 {{c_i}z_i^{\rm{T}}{z_i} + {1 \over 2}z_4^{\rm{T}}{z_4} + ({{\tilde \theta} \over \gamma} - z_3^{\rm{T}}{{\partial x_3^{\ast}} \over {\partial \hat \theta}}) \times}} \hfill \cr{\quad (\dot \hat \theta - {\Psi _2} + \sigma \hat \theta) - {\sigma \over \gamma}\tilde \theta \hat \theta + {{\rm{d}}_2}} \hfill \cr}$$
    (27)

    where d2 = d1 + ν is a positive constant.

  • Step 3. Choosing the candidate Lyapunov function as \({V_3}({z_1},{z_2},{z_3},{z_4},{\varrho _1},{\varrho _2},\tilde \theta) = {V_2} + {1 \over 2}z_4^{\rm{T}}B{z_4}\), and taking the time derivative of V3 while noticing (7) and (8), we have

    $$\matrix{{{{\dot V}_3} \leq - \sum\limits_{i = 1}^3 {{c_i}z_i^{\rm{T}}{z_i} + {1 \over 2}z_4^{\rm{T}}{z_4} + ({{\tilde \theta} \over \gamma} - z_3^{\rm{T}}{{\partial x_3^{\ast}} \over {\partial \hat \theta}} \times}} \hfill \cr{\quad (\dot \hat \theta - {\Psi _2} - \sigma \hat \theta) + {\sigma \over \gamma}\tilde \theta \hat \theta + z_4^{\rm{T}}u - z_4^{\rm{T}}{{\partial x_4^{\ast}} \over {\partial \hat \theta}}\dot \hat \theta +} \hfill \cr{\quad z_4^{\rm{T}}(K({x_1} - {x_3}) - {f_2}) - z_4^{\rm{T}}{F_3} + {d_2}.} \hfill \cr}$$
    (28)

    By using Lemma 1, it leads to

    $$z_4^{\rm{T}}K({x_1} - {x_3}) \leq {\theta \over {2{\epsilon _1}}}\vert {z_4}\vert {^2}\vert {x_1} - {x_3}\vert {^2} + {{{\epsilon _1}} \over 2}.$$
    (29)

    Similarly, from Lemma 1, we can deduce that

    $$ - z_4^{\rm{T}}{f_2} \leq {{{\theta _2}} \over {2{\epsilon _2}}}\vert {z_4}\vert {^2}{\phi _2} + {{{\epsilon _2}} \over 2} \leq {\theta \over {2{\epsilon _2}}}\vert {z_4}\vert {^2}{\phi _2} + {{{\varepsilon _2}} \over 2}.$$
    (30)

    By Lemma 2, it yields

    $$ - z_4^{\rm{T}}{f_3} \leq (z_4^{\rm{T}}{z_4})({\psi _3}\theta + {\psi _4}) + \nu .$$
    (31)

Defining \({\omega _2} = {1 \over {2{\epsilon_1}}}\vert {x_1} - {x_3}{\vert ^2} + {1 \over {2{\epsilon_2}}}{\psi _2} + {\psi _3},{{\bar \psi}_3} = {\psi _3} - \gamma {\psi _3}z_3^{\rm{T}}{{\partial x_3^{\ast}} \over {\partial \hat \theta}},\;\Psi = {\Psi _2} + \gamma {\omega _2}z_4^{\rm{T}}{z_4},{d_3} = {d_2} + \nu + {{{\epsilon_1}} \over 2} + {{{\epsilon_2}} \over 2}\), and choosing the adaptive controller, we have

$$\left\{ {\begin{array}{*{20}c} {u = - \left( {c_4 + \frac{1} {2} + \bar \psi _3 + \omega _2 \hat \theta } \right)z_4 - \frac{{\partial x_4^* }} {{\partial \hat \theta }}(\Psi - \sigma \hat \theta )} \\ {\dot \hat \theta = \Psi - \sigma \hat \theta , \hat \theta (0) > 0.} \\ \end{array} } \right..$$
(32)

Substituting (24) and (31) into (28), we have

$${\dot V_3} \leq - \sum\limits_{i = 1}^3 {{c_i}z_i^{\rm{T}}{z_i}} + {1 \over 2}z_4^{\rm{T}}{z_4} + {\sigma \over \gamma}\tilde \theta \hat \theta + {d_3}.$$
(33)

It is not difficult to get

$$ - {1 \over \gamma}\sigma \tilde \theta \hat \theta = - {1 \over \gamma}\sigma {\tilde \theta ^2} - {1 \over \gamma}\sigma \tilde \theta \theta \leq - {1 \over {2\gamma}}\sigma {\tilde \theta ^2} + {1 \over {2\gamma}}\sigma {\theta ^2}.$$
(34)

Substituting (34) into (33), it follows that

$${\dot V_3} \leq - c{V_3} + d$$
(35)

where \(d = {d_3} + {1 \over {2\gamma}}\sigma {\theta ^2}\). Theorem 1 summarizes the main results of this section.

  • Theorem 1. Consider the flexible joint robots dynamic system (1)–(3) under Assumptions 1–3, we can design the adaptive controller (32), such that all the closed-loop signals are rendered globally uniformly ultimately bounded and the tracking error z1 can be rendered arbitrarily small.

  • Proof. As can be seen, by (35), we can deduce that \({{\dot V}_3} = 0\) on V3 = ρ when \(c > {d \over p}\). Hence, V3ρ is an invariant set, i.e., if V3(0) ≤ ρ, then V3(t) ≤ ρ for all t ≥ 0. Thus, all the closed-loop signals are globally uniformly ultimately bounded. Moreover, by adjusting parameters σ, γ, c i , δ j , ε j , i = 1, ⋯, 4, j = 1, 2, 3, we can make the tracking error z1 arbitrarily small.

  • Remark 3. This section presents an adaptive back-stepping based control algorithm for FJR system. The overparametrization problem is avoided. However, the designed controller is very complicated here. This problem can be solved by using a modified adaptive dynamic surface method, see the next section for detail.

4 Extensions

In this section, a modified adaptive dynamic surface method will be adopted to obtain a simple adaptive controller. We need to introduce the following transformations:

$$\left\{ {\begin{array}{*{20}c} {\bar z_1 = x_1 - q_d ,} & {\bar z_2 = \dot \bar z_1 + (\bar c_1 + 1)\bar z_1 ,} \\ {\bar z_3 = x_3 - \bar x_3 ,} & {\bar z_4 = x_4 - \bar x_4 } \\ \end{array} } \right.$$
(36)

where \({{\bar x}_i}\), i = 3, 4 are the filtered virtual control achieved by the following first-order filter

$${\tau _i}{\dot \bar x_i} + {\bar x_i} = x_i^{\ast},\quad {\bar x_i}(0) = x_i^{\ast}(0)$$
(37)

where T i > 0 is a positive constant and \(x_i^{\ast}\) is the virtual control to be determined later. Define \({\varrho _1} = {{\bar x}_3} - x_3^{\ast},{\varrho _2} = {{\bar x}_4} - x_4^{\ast}\), then from (36) and (37), we have

$$\left\{ {\begin{array}{*{20}c} {\dot \bar z_1 = z_2 - (\bar c_1 + 1)z_1 } \\ {\dot \bar z_2 = M^{ - 1} (x_1 )Kx_3 - F(x_1 ,x_2 ,q_d ,\dot q_d ,\ddot q_d )} \\ {\dot \bar z_3 = x_4 + \frac{1} {{\tau _3 }}\varrho _1 } \\ {\dot \bar z_4 = B^{ - 1} (u + K(x_1 - x_3 ) - f_2 (x_3 ,x_4 )) + \frac{1} {{\tau _4 }}\varrho _2 } \\ \end{array} } \right.$$
(38)

where F is defined as

$$\matrix{{F = {M^{- 1}}(C{x_2} + h + K{x_1} + {f_1}) + {{\ddot q}_d} -} \hfill \cr{\quad \quad ({{\bar c}_1} + 1){{\bar z}_2} + {{({{\bar c}_1} + 1)}^2}{{\bar z}_1}.} \hfill \cr}$$

Now, we give the design procedure in detail.

  • Step 1. Choosing the candidate Lyapunov function \({U_1}({{\bar z}_1},{{\bar z}_2},\tilde \theta) = {1 \over 2}\bar z_1^{\rm{T}}{{\bar z}_1} + {1 \over {2a}}\bar z_2^{\rm{T}}K{{\bar z}_2} + {1 \over {2\gamma}}{{\tilde \theta}^2}\), similar to Section 3, we have

    $$ - {1 \over a}\bar z_2^{\rm{T}}KF \leq {1 \over 2}\bar z_1^{\rm{T}}{\bar z_1} + \theta ({\omega _1} - 1)\bar z_2^{\rm{T}}{\bar z_2} + {{{{\bar \delta}_1}} \over 2} + {{{{\bar \delta}_2}} \over 2}\vert {\ddot q_d}{\vert ^2}.$$
    (39)

    According to Assumption 2, Lemma 1 and noticing \({x_3} - x_3^{\ast} = {{\bar z}_3} + {\varrho _1}\), it follows that

    $${1 \over a}\bar z_2^{\rm{T}}K{M^{- 1}}K({x_3} - x_3^{\ast}) \leq {1 \over 2}\bar z_3^{\rm{T}}{\bar z_3} + {1 \over 2}\varrho _1^{\rm{T}}{\varrho _1} + \theta \bar z_2^{\rm{T}}{\bar z_2}.$$
    (40)

    Choosing the virtual control

    $$x_3^* \left( {z_1 ,z_2 ,q_d ,\dot q_d ,\hat \theta } \right) = - \left( {\bar c_2 + \frac{1} {2} + \omega _1 \hat \theta } \right)z_2 $$
    (41)

    where \({{\bar c}_2} > 0\) is a design parameter, and using (39) and (40), we have

    $${\dot U_1} \leq - \sum\limits_{i = 1}^2 {{{\bar c}_i}\bar z_i^{\rm{T}}{{\bar z}_i} + {1 \over 2}\bar z_3^{\rm{T}}{{\bar z}_3} + {1 \over 2}\varrho _1^{\rm{T}}{\varrho _1} + {{\tilde \theta} \over {\bar \gamma}}(\dot \hat \theta} - {\Lambda _1}) + {d_1}$$
    (42)

    where \({\Lambda _1} = \bar \gamma {\omega _1}\bar z_2^{\rm{T}}{{\bar z}_2}\). Let \(x_3^{\ast}\) pass the first-order filter (37), then we get the filtered virtual control \({{\bar x}_3}\).

  • Step 2. Choosing the candidate Lyapunov function \({U_2}({z_1},{z_2},{{\bar z}_3},\tilde \theta) = {U_1} + {1 \over 2}\bar z_3^{\rm{T}}{{\bar z}_3}\) and taking the time derivative, we have

    $$\matrix{{{{\dot U}_2} \leq - \sum\limits_{i = 1}^2 {{{\bar c}_i}z_i^{\rm{T}}{z_i} + {1 \over 2}\bar z_3^{\rm{T}}{{\bar z}_3} + {1 \over 2}\varrho _1^{\rm{T}}{\varrho _1} + {{\tilde \theta} \over {\bar \gamma}}(\dot \hat \theta - {\Lambda _1}) +}} \hfill \cr{\quad \quad \bar z_3^{\rm{T}}({x_4} - x_4^{\ast}) + \bar z_3^{\rm{T}}(x_4^{\ast} + {1 \over {{\tau _3}}}{\varrho _1}) + {d_1}.} \hfill \cr}$$
    (43)

    From Lemma 1, it yields that

    $$\bar z_3^{\rm{T}}({x_4} - x_4^{\ast}) = \bar z_3^{\rm{T}}({\bar z_4} + {\varrho _2}) \leq {1 \over 2}\bar z_4^{\rm{T}}{\bar z_4} + \bar z_3^{\rm{T}}{\bar z_3} + {1 \over 2}\varrho _2^{\rm{T}}{\varrho _2}.$$
    (44)

    Choose the virtual control

    $$x_4^* \left( {\bar z_3 ,\varrho _1 } \right) = - \left( {\frac{3} {2} + \bar c_3 } \right)\bar z_3 - \frac{1} {{\tau _3 }}\varrho _1 $$
    (45)

    where \({{\bar c}_3} > 0\) is a designed parameter. Defining \({{\bar d}_1} = {{{{\bar \delta}_1}} \over 2} + {{{{\bar \delta}_2}} \over 2}\vert {{\ddot q}_d}{\vert ^2}\), and substituting (45) into (43), it yields that

    $$\matrix{{{{\dot U}_2} \leq - \sum\limits_{i = 1}^3 {{{\bar c}_i}\bar z_i^{\rm{T}}{{\bar z}_i} + {1 \over 2}\bar z_4^{\rm{T}}{{\bar z}_4} + {1 \over 2}\varrho _1^{\rm{T}}{\varrho _1} + {1 \over 2}\varrho _2^{\rm{T}}{\varrho _2} +}} \hfill \cr{\quad \;\;{{\tilde \theta} \over \gamma}(\dot \hat \theta - {\Lambda _1}) + {{\bar d}_1}.} \hfill \cr}$$
    (46)

    Let the virtual control \(x_4^{\ast}\) pass the first-order filter (37), then we can get the filtered virtual control \({{\bar x}_4}\).

  • Step 3. From the definition of ϱ1, ϱ2, it follows that

    $$\left\{ {\begin{array}{*{20}c} {\dot \varrho _1 = - \tfrac{1} {{\tau _3 }}\varrho _1 + \eta _1 (\bar z_1 , \cdots ,\bar z_4 ,\varrho _1 ,q_d ,\dot q_d ,\ddot q_d ,\hat \theta )} \hfill \\ {\dot \varrho _2 = - \tfrac{1} {{\tau _4 }}\varrho _2 + \eta _2 (\bar z_1 , \cdots ,\bar z_4 ,\varrho _1 ,\varrho _2 ,q_d ,\dot q_d ,\ddot q_d ,\hat \theta )} \hfill \\ \end{array} } \right.$$
    (47)

    where continuous functions η1, η2 are defined as

    $${\eta _1} = {{\partial x_3^{\ast}} \over {\partial \bar z_1^{\rm{T}}}}{\dot \bar z_1} + {{\partial x_3^{\ast}} \over {\partial \bar z_2^{\rm{T}}}}{\dot \bar z_2} + {{\partial x_3^{\ast}} \over {\partial q_d^{\rm{T}}}}{\dot q_d} + {{\partial x_3^{\ast}} \over {\partial \dot q_d^{\rm{T}}}}{\ddot q_d} + {{\partial x_3^{\ast}} \over {\partial \hat \theta}}\dot \hat \theta$$
    (48)
    $${\eta _2} = {{\partial x_4^{\ast}} \over {\partial \bar z_3^{\rm{T}}}}{\dot \bar z_3} + {{\partial x_4^{\ast}} \over {\partial \varrho _1^{\rm{T}}}}{\dot \varrho _1}.$$
    (49)

    Choosing the candidate Lyapunov function \({U_3}({{\bar z}_1},{{\bar z}_2},{{\bar z}_3},{{\bar z}_4},{\varrho _1},{\varrho _2},\tilde \theta) = {U_2}{1 \over 2}\bar z_4^{\rm{T}}B{{\bar z}_4} + {1 \over 2}\varrho _1^{\rm{T}}{\varrho _1} + {1 \over 2}\varrho _2^{\rm{T}}{\varrho _2}\), and taking the time derivative of V3 while noticing (36) and (38), we have

    $$\matrix{{{{\dot U}_3} \leq - \sum\limits_{i = 1}^3 {{{\bar c}_i}\bar z_i^{\rm{T}}{{\bar z}_i} + {1 \over 2}\bar z_4^{\rm{T}}{{\bar z}_4} + {1 \over 2}\varrho _1^{\rm{T}}{\varrho _1} + {1 \over 2}\varrho _2^{\rm{T}}{\varrho _2} + {{\bar d}_1} +}} \hfill \cr{\quad \quad {{\tilde \theta} \over {\bar \gamma}}(\dot \hat \theta - {\Lambda _1}) + \bar z_4^{\rm{T}}u - \varrho _1^{\rm{T}}({1 \over {{\tau _3}}}{\varrho _1} - {\eta _1}) - \varrho _2^{\rm{T}}({1 \over {{\tau _4}}}{\varrho _2} - {\eta _2}) +} \hfill \cr{\quad \quad \bar z_4^{\rm{T}}(K({x_1} - {x_3}) - {f_2} + {1 \over {{\tau _4}}}B{\varrho _2}).} \hfill \cr}$$
    (50)

    There exist positive constants \({{\bar \epsilon}_1}\) and \({{\bar \epsilon}_2}\) such that

    $$\bar z_4^{\rm{T}}(K({x_1} - {x_3}) - {f_2}) \leq \theta {\omega _2}\bar z_4^{\rm{T}}{\bar z_4} + {1 \over 2}\varrho _2^{\rm{T}}{\varrho _2} + {{{{\bar \epsilon}_1}} \over 2} + {{{{\bar \epsilon}_2}} \over 2}$$
    (51)

    where ω2 is defined as \({\omega _2} = {1 \over {2{{\bar \epsilon}_1}}}\vert {x_1} - {x_3}{\vert ^2} + {1 \over {2{{\bar \epsilon}_2}}}{\phi _2}\). By using Lemma 1, we can deduce

    $$\bar z_4^{\rm{T}} \times {1 \over {{\tau _4}}}B{\varrho _2} \leq {1 \over {{{\bar \epsilon}_3}\tau _4^2}}\vert {\bar z_4}{\vert ^2} + {{{{\bar \epsilon}_3}b_2^2} \over 4}\varrho _2^2.$$
    (52)

    Defining \({{\bar d}_2} = {{\bar d}_1} + {{{{\bar \epsilon}_1}} \over 2} + {{{{\bar \epsilon}_2}} \over 2}\), and substituting (52) and (51) into (50), we have

    $$\dot U_3 \leqslant - \sum\limits_{i = 1}^3 {\bar c_1 z_i^T + \bar z_1 + \frac{{\tilde \theta }} {{\bar \gamma }}} (\dot \hat \theta - \Lambda ) + \bar z_4^T u + \varrho _1^T \eta _1 + \varrho _2^T \eta _2 + (\frac{1} {2} + \frac{1} {{\bar \varepsilon _3 \tau _4^2 }} + \omega _2 \hat \theta )\bar z_4^T \bar z_4 + ( - \frac{1} {{\tau _3 }} + \frac{1} {2})\varrho _1^T \varrho _1 + ( - \frac{1} {{\tau _4 }} + 1 + \frac{{\bar \varepsilon _3 b_2^2 }} {4})\varrho _2^T \varrho _2 + \bar d_2 $$
    (53)

    where \(\Lambda = {\Lambda _1} + \bar \gamma {\omega _2}\bar z_4^{\rm{T}}{{\bar z}_4}\). Choosing the adaptive controller

    $$\left\{ {\begin{array}{*{20}c} {u = - \left( {\frac{1} {2} + \frac{1} {{\bar \varepsilon _3 \tau _4^2 }} + \bar c_4 + \omega _2 \hat \theta } \right)z_4 } \\ {\dot \hat \theta = \Lambda - \bar \sigma \hat \theta , \hat \theta (0) > 0} \\ \end{array} } \right.$$
    (54)

    where \({\bar \sigma}\) is a positive constant, and substituting (54) into (53), it leads to

    $$\matrix{{{{\dot U}_3} \leq - \sum\limits_{i = 1}^4 {{{\bar c}_i}\bar z_i^{\rm{T}}{{\bar z}_i} - {1 \over {\bar \gamma}}\bar \sigma \tilde \theta \hat \theta + (- {1 \over {{\tau _3}}} + {1 \over 2})\varrho _1^{\rm{T}}{\varrho _1} +}} \hfill \cr{\quad \quad (- {1 \over {{\tau _4}}} + 1 + {{{\epsilon _3}b_2^2} \over 4})\varrho _2^{\rm{T}}{\varrho _2} + \varrho _1^{\rm{T}}{\eta _1} + \varrho _2^{\rm{T}}{\eta _2} + {d_2}.} \hfill \cr}$$
    (55)

Now, we have theorem 2, which summarizes the main results of this section.

  • Theorem 2. Consider the flexible joint robots dynamic system (1)–(3) under Assumptions 1–3, one can design the adaptive state-feedback controller (54), such that:

    1. 1)

      For any initial conditions satisfying U3(0) ≤ ρ, ρ > 0, there exist a, \(\sigma ,\bar \gamma ,{{\bar c}_i},{{\bar \delta}_j},{{\bar \epsilon}_j},{\tau _k},i = 1, \cdots ,4,j = 1,2,3,k = 3,4\), guaranteeing that the tracking error z1 can be made arbitrarily small by adjusting these designed parameters.

    2. 2)

      All the closed-loop signals are rendered semi-globally uniformly ultimately bounded.

  • Proof. Choosing the Lyapunov function V3, and defining the set \(\Omega = \{{[\bar z_1^{\rm{T}},\bar z_2^{\rm{T}},\bar z_3^{\rm{T}},\bar z_4^{\rm{T}},\varrho _1^{\rm{T}},\varrho _2^{\rm{T}},\tilde \theta ]^{\rm{T}}} \in {{\bf{R}}^{6n + 1}}\vert \bar z_1^{\rm{T}}{{\bar z}_1} + {1 \over a}\bar z_2^{\rm{T}}K{{\bar z}_2} + \bar z_3^{\rm{T}}{{\bar z}_3} + \bar z_4^{\rm{T}}B{{\bar z}_4} + \varrho _1^{\rm{T}}{\varrho _1} + \varrho _2^{\rm{T}}{\varrho _2} + {1 \over \gamma}{{\tilde \theta}^2} \leq 2\rho \}\), we see that Ω d in Assumption 1 and Ω are compact sets. Then, from the definition of η1 (·) and η2(·), it follows that there exist positive constants \({{\bar \eta}_1}\) and \({{\bar \eta}_2}\), such that on the compact set \({\Omega _d} \times \Omega ,\;\vert {{\bar \eta}_1}(\cdot)\vert \leq {{\bar \eta}_1}\) and \(\vert {{\bar \eta}_2}(\cdot)\vert \leq {{\bar \eta}_2}\). By using Lemma 1, we have

    $$\varrho _1^{\rm{T}}{\eta _1} \leq {{\bar \eta _1^2} \over {2{{\bar \delta}_3}}}\varrho _1^{\rm{T}}{\varrho _1} + {{{{\bar \delta}_3}} \over 2},\quad \varrho _2^{\rm{T}}{\eta _2} \leq {{\bar \eta _2^2} \over {2{{\bar \delta}_4}}}\varrho _2^{\rm{T}}{\varrho _2} + {{{{\bar \delta}_4}} \over 2}.$$
    (56)

    Defining \(\bar d = {{\bar d}_2} + {{{{\bar \delta}_3}} \over 2} + {{{{\bar \delta}_4}} \over 2} + {1 \over {2\bar \gamma}}\bar \sigma {\theta ^2}\), and substituting (34) and (56) into (55) yields

    $$\matrix{{{{\dot U}_3} \leq - \sum\limits_{i = 1}^4 {{{\bar c}_i}\bar z_i^{\rm{T}}{{\bar z}_i} - {1 \over {2\bar \gamma}}\bar \sigma {{\tilde \theta}^2} - ({1 \over {{\tau _3}}} - {1 \over 2} - {{\bar \eta _1^2} \over {2{{\bar \delta}_3}}})\varrho _1^{\rm{T}}{\varrho _1} -}} \hfill \cr{\quad \quad ({1 \over {{\tau _4}}} - 1 - {{{{\bar \epsilon}_3}b_2^2} \over 4} - {{\bar \eta _2^2} \over {2{{\bar \delta}_4}}})\varrho _2^{\rm{T}}{\varrho _2} + \bar d.} \hfill \cr}$$
    (57)

    Choosing parameters such that \({{\bar c}_i} > 0,i = 1, \cdots ,4,\bar \sigma > 0,{1 \over {{\tau _3}}} \geq \tau _3^{\ast} + {1 \over 2} + {{\bar \eta _1^2} \over {2{\delta _3}}},{1 \over {{\tau _4}}} \geq \tau _4^{\ast} + 1 + {{{{\bar \epsilon}_3}b_2^2} \over 4} + {{\bar \eta _2^2} \over {2{\delta _4}}}\), where \(\tau _3^{\ast} > 0,\tau _4^{\ast} > 0\), we have

    $${\dot U_3} \leq - c{U_3} + \bar d$$
    (58)

    where c satisfies \(0 < \bar c \leq 2\). It follows from (58) that \({{\dot U}_3} \leq 0\) on the surface U3 = ρ when \(\bar c > {d \over \rho}\). Hence, V3 < ρ is an invariant set, i.e., if U3(0) ≤ ρ, then U3(t) ≤ ρ for all t ≥ 0. Consequently, all the closed-loop signals are semi-globally uniformly ultimately bounded. Moreover, by adjusting parameters \(\bar \sigma ,\bar \gamma ,{{\bar c}_i},{{\bar \delta}_j},{{\bar \epsilon}_j},{\tau _k},i = 1, \cdots ,4,j = 1,2,3,k = 3,4\), we can make the tracking error \({{\bar z}_1}\) arbitrarily small. □

  • Remark 4. To achieve the tracking errors arbitrarily small, one can adjust the design parameters accordingly. To be specific, increasing \({{\bar c}_1},\bar \sigma\), and decreasing τ k will help to increase \({\bar c}\). Decreasing \({{\bar \delta}_j},{{\bar \epsilon}_j}\) and increasing \({\bar \gamma}\) will help to decrease d. From (58), it leads to \({U_3} \leq {U_3}(0){{\rm{e}}^{{\rm{- \bar ct}}}} + {{{\rm{\bar d}}} \over {{\rm{\bar c}}}}(1 - {{\rm{e}}^{{\rm{- \bar ct}}}})\). With increasing value of \({\bar c}\), and decreasing value of \({{\bar d} \over {\bar c}}\), the tracking error is made smaller.

5 Simulation

Consider the single-link flexible joint robot[7, 9], whose dynamic equations are as follows:

$$\matrix{{I{{\ddot q}_1} + Mgl\sin ({q_1}) + K({q_1} - {q_2}) + {f_1}({q_1},{{\dot q}_1}) = 0} \hfill \cr{J{{\ddot q}_2} + B{{\dot q}_2} + K({q_2} - {q_1}) + {f_2}({q_2},{{\dot q}_2}) = u.} \hfill \cr}$$

.

The desired trajectory for this robot model is given as q d = 0.5sin(0.5t) rad. When the external disturbances are 0, we choose the parameters as I = 1 kg·m2, Mgl = 3 Nm, K = 5 N·m/rad, J = 1 kg·m2, B = 4 N·m·s/rad. It is easy to verify that Assumption 1 and Assumption 2 hold. Assumption 3 holds with \({\phi _0} = {\sin ^2}{q_1} + q_1^2,{\phi _1} = 0,{\phi _2} = \dot q_2^2\). In Figs. 13, the responses of the resulting closed-loop system for this case are characterized by the different curves (the position of the link is q1a, the parameter estimation is θ a , and the control input is u a ). When the external disturbances are f1 = −0.5cos(q1)N and f2 = −0.5cos(q2)N, we choose another group of the parameters as I = 0.5 kg·m2, Mgl = 1.5 N·m, K = 2.5 N·m/rad, J = 0.5 kg·m2, and B = 2 N·m·s/rad, the responses of the resulting closed-loop system for this case are characterized by the different curves (the position of the link is q1b, the parameter estimation is θ b , and the control input is u b ).

Fig. 1
figure 1

The position of q d and q1

Fig. 2
figure 2

The trajectories of \({\hat \theta}\)

Fig. 3
figure 3

The trajectories of input u

Since the responses of the presented controllers are similar, in this example, we only provide the simulation for the control method shown in Section 4. By (7), we have

$$\left\{ {\begin{array}{*{20}c} {\dot z_1 = z_2 - (c_1 + 1)z_1 } \\ {\dot z_2 = I^{ - 1} Kx_3 - F\left( {x_1 ,x_2 ,q_d ,\dot q_d ,\ddot q_d } \right)} \\ {\dot z_3 = x_4 + \frac{1} {{\tau _3 }}\varrho _1 } \\ {\dot z_4 = J^{ - 1} (u + Bx_4 + K(x_1 - x_3 ) - f_2 ) + \frac{1} {{\tau _4 }}\varrho _2 } \\ \end{array} } \right.$$
(59)

where \(F = {I^{- 1}}(Mgl\sin \;{x_1} + + K{x_1} + {f_1}) + {{\ddot q}_d} - ({c_1} + 1){z_2} + {({c_1} + 1)^2}{z_1}\). We choose the first virtual control

$$x_3^* \left( {z_1 ,z_2 ,q_d ,\dot q_d ,\hat \theta } \right) = - \left( {\frac{1} {2} + c_2 + \omega _1 \hat \theta } \right)z_2 $$
(60)

where \({\omega _1} = {1 \over {{\delta _1}}}({\sin ^2}{x_1} + x_1^2) + {1 \over {2{\delta _2}}} + {c_1} + {{({c_1} + 1)} \over 2} + 2\). Let the virtual control \(x_3^{\ast}\) pass the first-order filter (37), then we can get the filtered virtual control \({{\bar x}_3}\). Next, we choose the second virtual control

$$x_4^* \left( {z_1 ,z_2 ,z_3 ,q_d ,\dot q_d ,\hat \theta } \right) = - \left( {\frac{3} {2} + c_3 } \right)z_3 - \frac{1} {{\tau _3 }}\varrho _1 .$$
(51)

Let the virtual control \(x_4^{\ast}\) pass the first-order filter (37), then we can get the filtered virtual control \(x_4^{\ast}\). At last, we choose the actual control and the adaptive law as

$$\left\{ {\begin{array}{*{20}c} {u = - (\frac{1} {2} + \frac{1} {{\varepsilon _3 \tau _4^2 }} + c_4 + \omega _2 \hat \theta )z_4 } \\ {\begin{array}{*{20}c} {\dot \hat \theta = \gamma (\omega _1 z_2^T z_2 + \omega _2 z_4^T z_4 ) - \sigma \hat \theta ,} & {\hat \theta (0) = 0.1} \\ \end{array} } \\ \end{array} } \right.$$
(62)

where \({\omega _2} = {1 \over {2{\epsilon _1}}}\vert {x_1} - {x_3}{\vert ^2} + {1 \over {2{\epsilon _2}}}x_4^2\).

In the simulation, we choose the parameters as c1 =1.5, c2 = 3, c3 = 2.5, c4 = 3, δ1 = 0.005, δ2 = 0.04, τ3 = 0.001, τ4 = 0.03, ε1 = 0.1, ε2 = 0.01, ε3 = 8.5, σ = 0.0004 and γ = 0.00055. The initial values are \({{\bar x}_3}(0) = 1.5\) and \({{\bar x}_3}(0) = 3.5\). The simulation demonstrates that the tracking objective of flexible joint robots can be achieved with satisfactory responses by the designed controller (62).

6 Concluding remarks

Tracking problems of the FJR system which is underactuated, are more difficult than the fully actuated system. This paper gives a new adaptive tracking control method for uncertain flexible joint robots. The designed controllers can make the position tracking error arbitrarily small, while keeping all the closed signals globally/semi-globally uniformly ultimately bounded. In this direction, there are still remaining problems to be investigated. For example, an interesting research problem is how to design an adaptive tracking controller for the flexible joint robots in random vibration environment.