Neural Computing and Applications

, Volume 22, Issue 7, pp 1745–1755

Stability analysis of robust adaptive hybrid position/force controller for robot manipulators using neural network with uncertainties

Authors

    • Department of MathematicsIndian Institute of Technology Roorkee
  • N. Sukavanam
    • Department of MathematicsIndian Institute of Technology Roorkee
Original Article

DOI: 10.1007/s00521-012-0966-6

Cite this article as:
Singh, H.P. & Sukavanam, N. Neural Comput & Applic (2013) 22: 1745. doi:10.1007/s00521-012-0966-6

Abstract

The aim of this paper is to design a robust adaptive neural network-based hybrid position/force control scheme for robot manipulators in the presence of model uncertainties and external disturbance. The feedforward neural network employed to learn a highly nonlinear function requires no preliminary learning. The control purposes are to achieve the stability in the sense of Lyapunov for desired interaction force between the end-effector and the environment and to regulate robot tip position in cartesian space. An adaptive compensator is also developed to eliminate the effect of disturbance term of neural network approximation error and external disturbance or unmodeled dynamics etc. A key feature of this compensator is that the prior information of the disturbance bound is not required. Finally, a comparative simulation study with a model-based robust control scheme for a two-link robot manipulator is presented.

Keywords

Robust hybrid position/force controlLyapunov stabilityInteraction forceFeedforward neural networkAdaptive compensatorUncertainty

1 Introduction

The dynamics of robot manipulators is governed by highly nonlinear coupled, time-varying system with many uncertainties such as load variation, friction, and external disturbances etc. Due to these uncertainties system error becomes large, when a robot manipulator operates at high speed. It is a challenging problem in control field to find an effective control scheme to achieve accurate tracking of the desired motion. The control design problem becomes more sophisticated when the desired motion of a robot manipulator is defined at the end-effector frame level, referred as operational space.

In various industrial application of robot manipulators such as contour following and assembly related tasks, the manipulator end-effector is required to make contact with the environment. During the execution of such tasks, the motion of the end-effector is constrained by the environment. For the successful execution of such type of tasks robot positions as well as contact forces should be controlled accurately. Many researchers have investigated this problem in recent years. As a result, two approaches to achieving compliant motion have emerged. The first approach, usually called hybrid position/force control, is based on the observation that when the robot end-effector is in contact with the environment, the Cartesian space of the end-effector coordinates may be naturally decomposed into a position subspace and a force subspace. The objective of hybrid position/force controller is to track a position (and orientation) trajectory in the position subspace and a force (and moment) trajectory in the force subspace. The second approach to compliant motion for robots is called impedance control and proposes that the control objective should not be the tracking of position/force trajectories, but rather should involve the regulation of the mechanical impedance of the robot end-effector, which relates position and force. Raibert and Craig [1] developed a hybrid scheme that decomposes a task space into two orthogonal subspaces: position and force. Lozano and Brogliato [2] proposed an adaptive force/position control scheme, based on a particular decomposition of the robot jacobian and environment stiffness matrices. By extending the method of Raibert and Craig [1], Yoshikawa and Sudou [3] proposed dynamic hybrid position/force control scheme, which takes into consideration the manipulator dynamics and the constraints on the end-effector specified by the given task. Kwan [4] proposed a new robust adaptive control scheme for simultaneous force/motion control of constrained rigid robots including motor dynamics. Xiao et al. [5] utilized the force/torque and vision sensors simultaneously to propose a hybrid position/force controller such that the end-effector moved along a path on an unknown surface with the aid of a single camera assumed to be uncelebrated with respect to the robot coordinates. Kouya et al. [6] presented a general study of an adaptive force/position control using the (SFB) strict-feedback backstepping technique, based on passivity and applied to a robotic system. Roy and Whitcomb [7] presented an adaptive force control algorithm with low-level position/velocity controllers for robot arms in contact with surfaces of unknown linear compliance. Cheah et al. [8] proposed a motion and force tracking controller for robots with uncertain kinematics and dynamics. Adaptive Jacobian motion/force controller and Lyapunov functions were also presented for the stability analysis of the robot control systems. Kouya [9] presented a hybrid force-position control scheme for uncertain robot manipulator interacting with its environment. Filaretov and Zuev [10] proposed a new synthesis method of force/position control systems of robot manipulators. The control systems synthesized on the basis of this method without using force/moment sensors and other additional devices provide simultaneously accurate control of both the position of robot’s end-effector and the force exerted by end-effector on some object (or environment). Wang and Xie [11] studied the force/position tracking control problem of a free-flying manipulator interacting with an uncertain compliant surface. An adaptive Jacobian controller is designed to deal with uncertainties arising from the free-flyer’s kinematics, dynamics and surface stiffness and position. Huang and Enomoto [12] proposed a hybrid position, posture, force, and moment control for a robot manipulator for the surface contact work by expansion of the conventional hybrid position and force control by separating the posture physical vector and the moment physical vector from the position vector and the force vector.

During the last decade, neural network technology has gained popularity among control community due to their versatile features such as parallel distributed structure and learning capabilities. The basic idea behind neural network-based control is to learn unknown nonlinear dynamics and compensate for uncertainties existing in the dynamic model. Many NN-based control schemes are available for control of robot manipulators [1315], in which stable tracking control algorithms have been derived while approximating the unknown dynamics of the manipulators with neural networks trained online without requiring any preliminary offline training. Panwar and Sukavanam [16] designed an optimal hybrid motion and force control scheme for a constrained robotic manipulator with unknown dynamics. The optimal control law is derived using Hamilton Jacobi Bellman (HJB) optimization. An on-line adaptive neural network controller, using a two-layer feedforward neural network, was proposed to compensate for the dynamic model of the constrained robot. Karayiannidis et al. [17] proposed a novel neuro-adaptive controller for the force and position trajectory tracking of a robot in compliant contact with a flat surface under non-parametric uncertainties existing in the dynamic and contact model. Ferguene and Toumi [18] designed a dynamic external force feedback loop control scheme using a neural network compensator for uncertainties. Bechlioulis et al. [19] developed a neuro-adaptive controller that achieves force/position tracking with prescribed performance as well as contact maintenance in the presence of uncertainties in the force-deformation model and bounded piecewise continuous disturbances acting at the joints.

In this paper, our aim is to design a robust adaptive neural network (NN)-based hybrid position/force control scheme for robot manipulators in the presence of model uncertainties and external disturbance. The proposed control scheme has the following salient features: (1) the exact knowledge of the robot dynamics, linear-parametrization assumption, or lengthy and tedious preliminary analysis to determine a regression matrix is not required (2) the feedforward neural network is employed to learn a highly nonlinear function, which requires no preliminary learning (3) an adaptive compensator is used to eliminate the effect of disturbance term of neural network approximation error and external disturbance or unmodeled dynamics etc. (4) the NN controller achieves the stability in the sense of Lyapunov for desired interaction force between the end-effetor and the environment as well as regulate robot tip position in cartesian space.

The remainder of this paper is organized as follows. In Sect. 2, robot dynamical model and its decomposition are presented. A review of feedforward neural network is presented in Sect. 3. In Sect. 4, model-based and feedforwad neural network-based hybrid position/force controllers are designed. A comparative simulation study with model-based robust control scheme for a two-link robot manipulator is presented in Sect. 5. Final conclusion is given in Sect. 6.

2 Robot manipulator model

2.1 Robot kinematic and dynamic model

Euler–Lagrange formulation [13] of the revolute rigid robot dynamics with friction term, external disturbance, and environment contact is given by
$$ M(q)\ddot{q}+V_{m}(q,\dot{q})\dot{q}+G(q)+F_{e}(\dot{q})+T_{d}=\tau-\tau_e $$
(1)
where \(M(q)\in R^{n\times n}\) represents the inertia matrix, \(V_{m}(q,\dot{q})\in R^{n\times n}\) represents the centripetal-coriolis matrix, \(G(q)\in R^{n}\) represents the gravity effects, \(F(\dot{q})\in R^{n}\) represents the friction effects, \(T_{d}\in R^{n}\) is a vector of unknown but bounded disturbance, \(\tau \in R^{n}\) represents the torque input vector, and \(\tau_{e} \in R^{n}\) the interaction torque due to contact with the environment. The robot dynamics given in Eq. (1) has the following useful properties.

Property 1

The inertia matrixM(q) is symmetric, positive definite, and satisfies the following inequalities
$$ m_{1}\|\xi\|^{2}\leq \xi^{T} M(q)\xi\leq m_{2}\|\xi\|^{2} \quad\, \forall \xi\in R^{n} $$
(2)
where m1, m2 are positive constants, and\(\|\cdot\|\) denotes the standard Euclidean norm.

Property 2

The inertia and centripetal-coriolis matrices satisfy the following skew-symmetric relationship
$$ \xi^{T}\left(\frac{1}{2}\dot{M}(q)-V_{m}(q,\dot{q})\right)\xi=0 \quad \forall \xi\in R^{n} $$
(3)
where\(\dot{M}(q)\) denotes the time derivatives of the inertia matrix.

Property 3

The left-hand side of Eq. (1) can be linearly parameterized as shown below
$$ M(q)\ddot{q}+V_{m}(q,\dot{q})+G(q)+F_{e}(\dot{q})=W(q,\dot{q},\ddot{q})\theta $$
(4)
where\(\theta\in R^{r}\) contains the constant system parameters and the regression matrix\(W(.)\in R^{n\times r}\) contains known functions dependent on the signals\(q(t), \dot{q}(t)\) and\(\ddot{q}(t).\)
The interaction force \(\bar{F} \in R^{m}\) at the end-effector is related to the interaction torque \(\tau_{e}\in R^{n}\) in the joint space through
$$ \tau_{e}=J^{T}(q)\bar{F} $$
(5)
where J(q) is the m × n  (m ≤ n) Jacobian matrix. Its elements are bounded for a revolute joint robot. The end-effector position and orientation in cartesian space is related to the joint space by the robot kinematics equation
$$ x=f(q) $$
(6)
where \(x\in R^{m}\) is the position and orientation vector, and f(q) is a kinematic transformation of the robot manipulator. Then
$$ \dot{x}=J(q)\dot{q} $$
(7)
The interaction force \(\bar{F}\in R^{m}\) in task space is proportional to environmental deformation (x − xe) through
$$ \bar{F}=\bar{K}(x-x_{e}) $$
(8)
where the stiffness matrix \(\bar{K}\in R^{m\times m}\) is assumed to be constant and \(x_{e}\in R^{m}\) is the coordinate of the contact. It is also assumed that, by rearranging the terms in \(\bar{F}\), Eq. (8) can be written as
$$ \bar{F} = \left[\begin{array}{c} F \\ F^{\prime} \\ \end{array}\right]=\left[\begin{array}{c} K\\ K^{\prime} \\ \end{array}\right](x-x_{e}) $$
(9)
where \(F\in R^{p},\,F^{\prime}\in R^{m-p},\,K\in R^{p\times m}\,(p\leq m)\) and is of fullrank and \(K^{\prime}\) depends linearly on the rows of K. p is the dimension of the subspace in the task space (Rm) where the force are to be controlled. Since there are only n (n ≤ 6) control inputs in the system, it is not possible to control force (six dimensions) and position (six dimensions) of the robot in all dimensions. The best we can do is to control only a small subspace of the whole space. To be more specific, we can control p forces, (m − p) cartesian positions and (n − m) redundant joint velocities. The total dimension of the subspace is p + (m − p) + (n − m) = n.

2.2 Decomposition of robot dynamics

In this subsection, a scheme is described that can decompose the robot dynamics into force, position, and redundant joint subspaces. The following identities will be used in the decomposition process
$$ I=J^{+}J + J^{-} $$
(10)
$$ I=K^{+}K + K^{-} $$
(11)
where
$$ J^{+} = J^{T}[JJ^{T}]^{-1} $$
(12)
$$ K^{+}=K^{T}[KK^{T}]^{-1} $$
(13)
$$ J^{-}=I-J^{T}[JJ^{T}]^{-1}J $$
(14)
$$ K^{-}=I-K^{T}[KK^{T}]^{-1}K $$
(15)
where J+ and K+ are Penrose pseudo inverse and J and K are projectors, that is, idempotent matrices.
Using Eqs. (10) and (7), \(\dot{q}\) can be decomposed as
$$ \dot{q}=J^{+}J\dot{q}+J^{-}\dot{q}=J^{+}\dot{x}+J^{-}\dot{q} $$
(16)
Using Eqs. (9) and (11), \(\dot{x}\) can be decomposed as
$$ \dot{x}=K^{+}K\dot{x}+K^{-}\dot{x}=K^{+}\dot{F}+K^{-}\dot{x} $$
(17)
Taking the first derivative of Eq. (7), we get
$$ \ddot{x}=J\ddot{q}+\dot{J}\dot{q} $$
(18)
Using Eq. (10) together with Eq. (18), \(\ddot{q}\) is decomposed as follows
$$ \ddot{q}=J^{+}J\ddot{q}+J^{-}\ddot{q}=J^{+}(\ddot{x}-\dot{J}\dot{q})+J^{-}\ddot{q} $$
(19)
Differentiation of Eq. (17), we get
$$ \ddot{x}=K^{+}K\ddot{x}+K^{-}\ddot{x}=K^{+}\ddot{F}+K^{-}\ddot{x} $$
(20)
Substituting Eqs. (16), (17) and (19) into Eq. (1), we get
$$ \begin{aligned} M(J^{+}[K^{+}\ddot{F}+K^{-}\ddot{x}-\dot{J}\dot{q}] +J^{-}\ddot{q})+V_{m}(J^{+}[K^{+}\dot{F}+K^{-}\dot{x}]+J^{-}\dot{q})+G +F_e+T_d=\tau-\tau_e \end{aligned} $$
(21)

This is exactly equivalent to Eq. (1), and there is a clear decomposition of force (F), position (Kx), and redundant joint Jq.

3 Feedforward neural network

Mathematically, a two-layer feed-forward neural network (Fig. 1) with n input units, m output units, and N units in the hidden layer is given as [13]
$$ z_{i}=\sum_{j=1}^{N}\left[w_{ij}\sigma\left(\sum_{k=1}^{n}{v_{jk}}{y_{k}} +\theta_{vj}\right)+\theta_{wi}\right] \quad i=1,2,\ldots,m $$
(22)
where σ(.) are the activation functions of the neurons of the hidden layer. The inputs-to-hidden-layer interconnection weights are denoted by vjk and the hidden-layer-to-outputs interconnection weights by wij. The bias weights are denoted by θvj, θwi. There are many classes of activation functions, for example, sigmoid, hyperbolic tangent, and Gaussian. The sigmoid activation function used in this work is given by
$$ \sigma(y)=\frac{1}{1+\text{e}^{-y}} $$
By collecting all the NN weights vjk and wij into matrices of weights VT and WT, we can write the NN equation in terms of vectors as
$$ z=W^{T} \sigma (V^{T} y) $$
with the vector of activation functions defined by \(\sigma (p)=[\sigma(p_{1} )\ldots \sigma (p_{n})]^{T}\) for a vector \(p\in R^{n}\). The bias weights are included as the first column of the weight matrices. To accommodate bias weights, the vectors y and σ(.) need to be augmented by replacing 1 as their first element, for example, \(y=[1\,y_{1}\,y_{2}\,\ldots\,y_{n}]^{T}\). According to the neural network function approximation property [13], given a continuous function h of n variables on a compact set \(\Upomega \subset R^{n}\), there exists N hidden-layer neurons, weights matrices W and V such that
$$ h(y)=W^{T}\sigma(V^{T}y)+\epsilon(y) $$
(23)
where \(\epsilon(y)\) denotes NN approximation error satisfying \(\|\epsilon(y)\|<\epsilon_{N}\) for some \(\epsilon_{N}>0\). Then, an estimate of h(y) can be given by
$$ \hat{h}(y)=\hat{W}^{T}\sigma(\hat{V}^{T}y) $$
where \(\hat{W}\) and \(\hat{V}\) are the estimations of W and V, respectively, provided by some on-line weight-tuning algorithms.
https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig1_HTML.gif
Fig. 1

Feedforward neural network

4 Controller design and stability analysis

In this section, model-based and neural network-based control schemes are developed to achieve the stability in the sense of Lyapunov for desired interaction force between the end-effector and the environment as well as regulate robot tip position in cartesian space. Let us define
$$ r=J^{+}[K^{+}(\dot{F}-v_{f})+K^{-}(\dot{x}-v_{x})]+J^{-}\dot{\tilde{q}} $$
(24)
where
$$ v_{f}=\dot{F_{d}}-\lambda\tilde{F} \quad\quad v_{x}=\dot{x_{d}}-\lambda\tilde{x} $$
(25)
$$ \tilde{F}=F-F_{d} \quad \tilde{x}=x-x_{d} \quad \tilde{q}=q-q_{d} $$
(26)
Differentiating Eq. (24) and using Eqs. (25) and (26), the robot dynamics given by Eq. (21) can be written in terms of r as
$$ M\dot{r}+V_{m} r=\tau-\tau_{e}-h(y)-T_{d} $$
(27)
where \(h(y)=M[J^{+}(K^{+}\dot{v_f}+K^{-}\dot{v_{x}}-\dot{J}\dot{q}) +J^{-}\ddot{q_{d}}-z]+V_{m}[J^{+}(K^{+} {v_f}+K^{-}{v_x})+J^{-}\dot{q_d}] +G+F_{e}\) is termed as robot nonlinear function with \(y=[r^{T} \, \bar{F}^{T}\, q^{T}\, \dot{q}^{T}]^{T}\). Using the property 3, h(y) can be written as
$$ h(y)=Y(r,\bar{F},q,\dot{q})\theta $$
(28)
[2], where \(Y(r,\bar{F},q,\dot{q})\in R^{n\times r}\) denotes the regression matrix and \(\theta\in R^{r}\) contains the constant system parameters (e.g., mass, inertia, friction coefficients). Also \(z=\frac{\text{d}J^{+}}{\text{d}t}[K^{+}(\dot{F}-v_{f})+K^{-}(\dot{x}-v_{x})] +\frac{\text{d}J^{-}}{\text{d}t}\dot{\tilde{q}}\). During the controller development, we will make the assumption that the Jacobian matrix J(q) has full rank and the desired trajectories are bounded.

4.1 Model-based robust control scheme with robust compensator

Based on the error dynamics system development in Eq. (27) and the subsequent stability analysis, we design the following robust controller τ as
$$ \tau=\tau_e+Y\hat{\theta}-K_d r+v $$
(29)
where \(\hat{\theta}\in R^{n}\) denotes the constant best guess estimation of the parameter vector θ defined in Eq. (28), Kd = KdT is a positive definite gain matrix and v is a robust compensator term defined as
$$ v= -\frac{r\rho^{2}}{\|r\|\rho+\delta}, $$
(30)
where ρ is designed to satisfy
$$ \rho\geq\|Y\tilde{\theta}\|+\|T_{d}\|, $$
(31)
\(\dot{\delta}=-\gamma\delta\) with δ(0) > 0. With the controller in Eq. (29), the error dynamics system for r can be written in the following form
$$ M\dot{r}=-V_{m}r-K_{d} r+Y\tilde{\theta}-T_{d}+v. $$
(32)
For stability analysis, we have the following theorem.

Theorem 1

If control input torque τ and robust compensatorvare designed as Eqs. (29) and (30), respectively, then the force error\((\tilde{F})\), position error\((K^{-}\tilde{x})\)and redundant joint velocity error\((J^{-}\dot{\tilde{q}})\)converge to zero as\(\hbox{t}\rightarrow\infty\).

Proof 1

Consider the following Lyapunov function candidate
$$ L=\frac{1}{2}r^{T}Mr+\frac{\delta}{\gamma} $$
(33)
The time derivative of the Lyapunov function gives
$$ \dot{L}=\frac{1}{2}r^{T}\dot{M}r+r^{T}M\dot{r}+\frac{\dot{\delta}}{\gamma} $$
(34)
Using Eq. (32), we get
$$ \dot{L}=\frac{1}{2}r^{T}\dot{M}r+r^{T}(-V_{m}r-K_{d}r+Y\tilde{\theta} -T_{d}+v)-\delta $$
(35)
Now using Eqs. (30) and (31), we get
$$ \dot{L}\leq\frac{1}{2}r^{T}(\dot{M}-2V_{m})r-r^{T}K_{d}r+\|r\|\rho -\frac{\|r\|^{2}\rho^{2}}{\|r\|\rho+\delta}-\delta $$
(36)
From property 2, we have
$$ \dot{L}\leq-r^{T}K_{d}r+\frac{\|r\|\rho^{2}}{\|r\|\rho+\delta}-\delta $$
(37)
$$ \dot{L}\leq-r^{T}K_{d}r $$
(38)
Since L > 0 and \(\dot{L}\leq0\), this shows stability in the sense of Lyapunov, so that r is bounded [21]. Now from Eq. (24), using Eq. (9), we get [2]
$$ r = J^{+}[K^{+}(K\dot{x}-v_{f})+K^{-}(\dot{x}-v_{x})]+J^{-}\dot{\tilde{q}} $$
Using Eq. (11), we get
$$ \begin{aligned} r &= J^{+}[\dot{x}-K^{+}v_{f}-K^{-}v_{x}]+J^{-}\dot{\tilde{q}}\\ r &= J^{+}\dot{x}-J^{+}(K^{+}v_{f}+K^{-}v_{x})+J^{-}\dot{q}-J^{-}\dot{q}_{d} \end{aligned} $$
Now using Eq. (16), we get
$$ r = \dot{q}-J^{+}(K^{+}v_{f}+K^{-}v_{x})-J^{-}\dot{q}_{d} $$
(39)
Since we consider revolute joints only, J+, J, K+, K, x, F are all bounded due to physical constraints. Therefore, from Eq. (25) vf and vx are also bounded. Now, qd is also bounded. Thus, we see that \(\dot{q}\) is bounded. Differentiating r in Eq. (39) and using Property 1, it can be similarly argued that, for a revolute joint robot, \(\dot{r}\) is also bounded. Hence, \(r \rightarrow 0\) as \(t \rightarrow \infty\).
Now, K and J are bounded and are of full rank. Multiplying Eq. (24) by KJ we get
$$ KJr = \dot{F}-v_{f} \rightarrow 0 $$
(40)
since \(r \rightarrow 0\). Now multiplying Eq. (24) by J, we get
$$ Jr = K^{-}(\dot{x}-v_{x})\rightarrow 0 $$
(41)
Now using Eqs. (24), (40) and (41), we get
$$ J^{-} \dot{\tilde{q}}\rightarrow 0 $$
(42)
Now from Eqs. (25), (26), (41) and (42), we have \(\dot{\tilde{F}}+\lambda {\tilde{F}}\rightarrow 0\) and \(K^{-}\dot{\tilde{x}}+\lambda K^{-} {\tilde{x}}\rightarrow 0\). Now \(\tilde{F}\) and \(K^{-}\tilde{x}\) can be considered as the outputs of filters of the form 1/(s + λ) with inputs of \(\dot{\tilde{F}}+\lambda {\tilde{F}}\rightarrow 0\) and \(K^{-}\dot{\tilde{x}}+\lambda K^{-} {\tilde{x}}\rightarrow 0\), respectively. Hence, we see that the force error \(\tilde{F}\rightarrow 0\), position error \(K^{-}\tilde{x}\rightarrow 0\) and redundant joint velocity error \(J^{-}\dot{\tilde{q}}\rightarrow 0\).

4.2 Robust adaptive neural network-based control scheme with adaptive compensator

Based on the error dynamics system development in Eq. (27) and the subsequent stability analysis, we design the following robust adaptive neural network-based controller τ as
$$ \tau=\tau_{e}+\hat{h}(y)-K_{d} r+v $$
(43)
where \(\hat{h}(y)\) is an estimate of robot nonlinear function. With the controller in Eq. (43), the closed loop error dynamics becomes
$$ M\dot{r}=-V_{m} r-\tilde{h}(y)-K_{d} r-T_{d}+v $$
(44)
where \(\tilde{h}(y)=h(y)-\hat{h}(y)\) is the functional estimation error. The functional estimation \(\hat{h}(y)\) with a feedforward neural network (FFNN) may be given as
$$ \hat{h}(y)=\hat{W}^{T}\sigma(\hat{V}^{T}y) $$
(45)
Using this FFNN functional approximation, the closed loop error dynamics becomes
$$ M\dot{r}=-V_{m} r-K_{d} r-W^{T}\sigma(V^{T}y)-\epsilon(y)+\hat{W}^{T}\sigma(\hat{V}^{T}y)-T_d+v $$
(46)
For notational convenience, define the matrix of all NN weights as Z≡diag{W, V} and the weight estimation errors as \(\tilde{W}=W-\hat{W},\tilde{V}=V-\hat{V}\,\hbox{and}\, \tilde{Z}=Z-\hat{Z}\). The ideal NN weights are bounded so that \(\|Z\|_{F}\leq{Z_{M}}\) with known ZM and ZF2 = tr(ZTZ).
Define the hidden-layer output error for a given y as \(\tilde{\sigma}=\sigma-\hat{\sigma}=\sigma(V^{T}y)-\sigma(\hat{V}^{T}y)\). Adding and subtracting \(W^{T}\sigma(\hat{V}^{T}y)\) in Eq. (46), we get
$$ M\dot{r}=-V_{m} r-K_{d} r-W^{T}(\sigma(V^{T}y)-\sigma(\hat{V}^{T}y))-\epsilon(y)-\tilde{W}^{T}\sigma(\hat{V}^{T}y)-T_{d}+v $$
(47)
The Taylor series expansion of σ(VTy) about \(\hat{V}^{T}y\) gives us
$$ \sigma(V^{T}y)=\sigma(\hat{V}^{T}y)+\sigma^{\prime} (\hat{V}^{T}y)\tilde{V}^{T}y+O(\tilde{V}^{T}y)^{2} $$
(48)
with \(\sigma^{\prime} (\hat{z})=\frac{\text{d}\sigma(z)}{\text{d}z}|_{z=\hat{z}}\) and O(z)2 denoting terms of second order. Denoting \(\hat{\sigma}^{\prime}=\sigma^{\prime}(\hat{V}^{T}y)\), we have \(\tilde{\sigma}=\hat{\sigma}^{\prime}(\tilde{V}^{T}y)+O(\tilde{V}^{T}y)^{2}\). Replacing for \(\tilde{\sigma}\) in Eq. (47), we get
$$ M \dot{r}=-V_{m} r-K_{d} r-\hat{W}^{T}\hat{\sigma}^{\prime} \tilde{V}^{T}y-\tilde{W}^{T}\hat{\sigma}-w_{1}+v $$
(49)
where the disturbance terms are
$$ w_{1}=\tilde{W}^{T}\hat{\sigma}^{\prime}\tilde{V}^{T}y+W^{T}O(\tilde{V}^{T}y)^{2} +\epsilon(y)+T_{d} $$
(50)
Finally, adding and subtracting \(\tilde{W}^{T}\hat{\sigma}^{\prime} \hat{V}^{T}y\) in Eq. (49), we get
$$ M\dot{r}=-V_{m} r-K_{d} r-\hat{W}^{T}\hat{\sigma}^{\prime}\tilde{V}^{T}y -\tilde{W}^{T}(\hat{\sigma}-\hat{\sigma}^{\prime}\hat{V}^{T}y) -w_{1}-\tilde{W}^{T}\hat{\sigma}^{\prime}\hat{V}^{T}y+v $$
(51)
$$ M\dot{r}=-V_{m} r-K_{d} r-\hat{W}^{T}\hat{\sigma}^{\prime} \tilde{V}^{T}y-\tilde{W}^{T}(\hat{\sigma}-\hat{\sigma}^{\prime} \hat{V}^{T}y)-w+v $$
(52)
where the modified disturbance terms are
$$ w(t)=\tilde{W}^{T}\hat{\sigma}^{\prime} V^{T}y+W^{T}O(\tilde{V}^{T}y)^{2}+\epsilon(y)+T_{d} $$
(53)
with
$$ \|w(t)\|\leq \rho $$
(54)
where the positive scalar function ρ(t) is defined as [13]
$$ \rho = C_{o}+C_{1}\|\tilde{Z}\|_{F}+C_{2}\|\tilde{Z}\|_{F}\|r\|. $$
(55)
In the error system neural network approximation error \(\epsilon(y)\), external disturbance or unmodeled dynamics Td and the higher-order terms in the Taylor series expansion for \(\tilde{\sigma}\) all have exactly the same influence as disturbances. To eliminate the effect of these disturbances, we choose the stabilizing adaptive compensator as follows [20]
$$ v= -\frac{\hat{\rho}^{2}r}{\hat{\rho}\|r\|+\delta} $$
(56)
where \(\hat{\rho}\) is the estimation of the positive bounding function ρ(.) designed as
$$ \hat{\rho}=Q^{T}\hat{\phi} $$
where
$$ Q^{T}=[1\,\, \|\tilde{Z}\|_{F} \,\, \|\tilde{Z}\|_{F}\|r\|] $$
(57)
and \(\hat{\phi}\) is the estimation of ϕ = [C0  C1C2]T with largest possible positive-bounding constants Ci for i = 0, 1, 2, that are based on the desired trajectory, external disturbances, NN approximation error, and so on.

For stability analysis we have the following theorem.

Theorem 2

If control input torque τ and adaptive compensatorvare designed as Eqs. (43) and (56), respectively, and adaptive laws are selected as
$$ \dot{\hat{W}}=-F_{w}\hat{\sigma}r^{T}+F_{w}\hat{\sigma}^{\prime} \hat{V}^{T}yr^{T}, \,\, \dot{\hat{V}}=-G_{v}y(\hat{\sigma}^{\prime} \hat{W}y)^{T},\,\, \dot{\hat{\phi}}=\Upgamma_{\phi}Q\|r\| $$
(58)
with some scalar positive definite symmetric matricesFw,   Gw, and\(\Upgamma_{\phi}\), then the force error\((\tilde{F})\), position error\((K^{-}\tilde{x})\)and redundant joint velocity error\((J^{-}\dot{\tilde{q}})\)converge to zero as\(\hbox{t} \rightarrow\infty\).

Proof 2

Consider the following Lyapunov function candidate
$$ L=\frac{1}{2}r^{T}Mr+\frac{1}{2}tr(\tilde{W}^{T}F_{w}^{-1}\tilde{W}) +\frac{1}{2}tr(\tilde{V}^{T}G_{v}^{-1}\tilde{V})+\frac{1}{2}tr(\tilde{\phi}^{T} \Upgamma_{\phi}^{-1}\tilde{\phi})+\frac{\delta}{\gamma} $$
(59)
The time derivative of the Lyapunov function gives
$$ \dot{L}=\frac{1}{2}r^{T}\dot{M}r+r^{T}M\dot{r} +tr(\tilde{W}^{T}F_{w}^{-1}\dot{\tilde{W}})+tr(\tilde{V}^{T}G_{v}^{-1}\dot{\tilde{V}}) +tr(\tilde{\phi}^{T}\Upgamma_{\phi}^{-1}\dot{\tilde{\phi}})+\frac{\dot{\delta}}{\gamma} $$
(60)
Using Eq. (52), we get
$$ \begin{aligned} \dot{L}=&\frac{1}{2}r^{T}\dot{M}r+r^{T}(-V_{m} r-K_{d} r-\hat{W}^{T}\hat{\sigma}^{\prime} \tilde{V}^{T}y -\tilde{W}^{T}(\hat{\sigma}-\hat{\sigma}^{\prime} \hat{V}^{T}y)\\ &-w+v)+tr(\tilde{W}^{T}F_{w}^{-1}\dot{\tilde{W}}) +tr(\tilde{V}^{T}G_{v}^{-1}\dot{\tilde{V}}) +tr(\tilde{\phi}^{T}\Upgamma_{\phi}^{-1}\dot{\tilde{\phi}})-\delta \end{aligned} $$
(61)
$$ \begin{aligned} \dot{L}=&\frac{1}{2}r^{T}(\dot{M}-2V_{m})r-r^{T}K_{d} r-r^{T}\hat{W}^{T}\hat{\sigma}^{\prime} \tilde{V}^{T}y-r^{T}\tilde{W}^{T}(\hat{\sigma} -\hat{\sigma}^{\prime} \hat{V}^{T}y)\\ &+tr(\tilde{W}^{T}F_{w}^{-1}\dot{\tilde{W}}) +tr(\tilde{V}^{T}G_{v}^{-1}\dot{\tilde{V}}) +tr(\tilde{\phi}^{T}\Upgamma_{\phi}^{-1}\dot{\tilde{\phi}}) -r^{T}w+r^{T}v-\delta \end{aligned} $$
(62)
Now using property 2 together with \(\tilde{\phi}=\phi-\hat{\phi},\dot{\tilde{W}}=-\dot{\hat{W}},\dot{\tilde{V}}=-\dot{\hat{V}},\dot{\tilde{\phi}}=-\dot{\hat{\phi}}\) and adaptive learning laws in Eq. (58), we have
$$ \begin{aligned} \dot{L}\leq&-r^{T}K_{d} r-r^{T}\hat{W}^{T}\hat{\sigma}^{\prime} \tilde{V}^{T}y-r^{T}\tilde{W}^{T}\hat{\sigma} +r^{T}\tilde{W}^{T}\hat{a}^{\prime} \hat{V}^{T}y +tr({\tilde{W}^{T}\hat{\sigma}}r^{T}\\ &-\tilde{W}^{T}\hat{a}^{\prime} \hat{V}^{T}yr^{T})+tr(\tilde{V}^{T}yr^{T}\hat{W}^{T}\hat{\sigma}^{\prime T}) +tr(-\tilde{\phi}^{T}\Upgamma_{\phi}^{-1}\Upgamma_{\phi} Q\|r\|)\\ &+\|r\|\rho+\|r\|\hat{\rho}-\|r\|\hat{\rho}+r^{T}v-\delta \end{aligned} $$
(63)
$$ \begin{aligned} \dot{L}\leq&-r^{T}K_{d} r+tr(\tilde{W}^{T}\hat{\sigma}r^{T} -\tilde{W}^{T}\hat{a}^{\prime} \hat{V}^{T}yr^{T} -\tilde{W}^{T}\hat{\sigma}r^{T}+\tilde{W}^{T}\hat{a}^{\prime} \hat{V}^{T}yr^{T})\\ &+tr(\tilde{V}^{T}yr^{T}\hat{W}^{T}\hat{\sigma}^{\prime T} -\tilde{V}^{T}yr^{T}\hat{W}^{T}\hat{\sigma}^{\prime}) +tr(-\tilde{\phi}^{T}Q\|r\|+\tilde{\phi}^{T}Q\|r\|)\\ &+\|r\|\hat{\rho}+r^{T}v-\delta \end{aligned} $$
(64)
Using Eq. (56), we get
$$ \dot{L}\leq-r^{T}K_{d}r+\|r\|\hat{\rho}-\frac{\|r\|^{2}\hat{\rho}^{2}}{\|r\|\hat{\rho}+\delta}-\delta $$
(65)
$$ \dot{L}\leq-r^{T}K_{d}r $$
(66)
Since L > 0 and \(\dot{L}\leq0\), this shows the stability in the sense of Lyapunov so that \(r(t),\, \tilde{V}\) and \(\tilde{W}\) (and hence \(\hat{V},\, \hat{W}\)) are bounded [21]. Similar to proof 1, we see that the force error \(\tilde{F}\rightarrow 0\), position error \(K^{-}\tilde{x}\rightarrow 0\) and redundant joint velocity error \(J^{-}\dot{\tilde{q}}\rightarrow 0\).

5 Simulation studies

The simulation has been performed for a two-link rigid robotic manipulator. The mathematical model of the manipulator dynamics is expressed as follows [21] (Fig. 2)
$$ \begin{aligned} \left[\begin{array}{cc} M_{11} & M_{12} \\ M_{21} & M_{22} \\ \end{array}\right]&\left[\begin{array}{c} \ddot{q_1} \\ \ddot{q_2} \\ \end{array}\right]+\left[\begin{array}{cc} V_{m11} & V_{m12} \\ V_{m21} & V_{m22} \\ \end{array}\right]\left[\begin{array}{c} \dot{q_1} \\ \dot{q_2} \\ \end{array}\right]+\left[\begin{array}{c} G_1 \\ G_2 \\ \end{array}\right]\\ &+\left[\begin{array}{c} F_{e1} \\ F_{e2} \\ \end{array}\right]+\left[\begin{array}{c} T_{d1} \\ T_{d2} \\ \end{array}\right] = \left[ \begin{array}{c} \tau_1 \\ \tau_2 \\ \end{array} \right]-J^{T}(q)\bar{F} \end{aligned} $$
(67)
where the mass matrix and gravity terms are given as follows
$$ M_{11}=a+bC_{2},\, M_{12}=c+\frac{b}{2}C_{2},\, M_{21}=c+\frac{b}{2}C_{2},\,M_{22}=c $$
$$ \begin{aligned} G_1&=dC_{1}+eC_{12},\, G_{2}=eC_{12}\\ F_{e1}&=f_{e1}\dot{q_1},\, F_{e2}=f_{e2}\dot{q_2} \end{aligned} $$
where a = l22m2 + l12(m1 + m2), b = 2l1l2m2, c = l22m2, d = (m1 + m2)l1g, e = m2l2g, C1 = cosq1, C2 = cosq2, C12 = cos(q1 + q2). Parameters a, b, c, d, e, fe1 and fe2 are unknown constants. Parameter values for two-link robot manipulator are set as given in [15] i.e. m1 = 15.61 kg, m2 = 11.36 kg, l1 = 0.432 m, l2 = 0.432 m, fe1 = 5.3 Nm s, fe2 = 2.4 Nm s, g = 9.8 m/sec2, where mi, li denote the mass and link length, respectively of the link i = 1,2. fe1 and fe2 denote the friction coefficient. External disturbance term Td = [Td1Td2]T is defined as Td = 80[cos(2t) sin(2t)]T. The constant parameter vector defined in robust controller in Eq. (29) is given as \(\hat{\theta}=[a\,\,b\,\,c\,\,d\,\,e\,\,f_{e1}\,\,f_{e2}]^{T}\) and we choose ρ = 100. The contact force only occurs in the x1 direction and is given by F = κ(x − x1e) where κ = 104 and x1e = 0.61. Also K+ = 1/κ, K = [0 0; 0 1], J+ = J−1 and J = 0. The desired force Fd = 20(1 − 0.5sint). The desired trajectory x2d in x2 direction is 0.5[1 − exp(− t)]. The controller parameters are λ = 100, Kd = 200I. To compare the performance of the controllers, we use scaler valued L2 norm as an performance index of an entire force error curve. The L2 norm measures the root-mean-square (RMS) average of the force error, which is given by
$$ L^2(\tilde{F})=\sqrt{{\frac{1}{t_f-t_0}\int^{t_f}_{t_0}{\|\tilde{F}\|^{2}}}\text{d}t} $$
(68)
where \(t_0,\, t_f\, \in R_{+}\) are the initial and final times, respectively. A smaller \(L^{2}(\tilde{F})\) represents lesser force error and it indicates the better performance of the controller. For simulation studies, we have the following cases:
  • Case (i): Performance of the model-based controller given by Eq. (29) is shown in Figs. 3, 4, 5, 6, 7.

  • Case (ii): When we choose different robot parameter vector \(\hat{\theta}=[a\,\,b\,\,c\,\,d/2\,\,e/2\,\, f_{e1}\,\,f_{e2}]^T\), the performance of the model-based controller given by Eq. (29) is shown in Figs. 8, 9, 10, 11, 12.

  • Case (iii): Performance of the neural network based controller given by Eq. (43) with adaptive compensator v = 0 in Eq. (56) and disturbance term w ≠ 0 in Eq. (53) is shown in Figs. 13, 14, 15, 16, 17.

  • Case (iv): Performance of the neural network based controller given by Eq. (43) with adaptive compensator v ≠ 0 in Eq. (56) and disturbance term w ≠ 0 in Eq. (53) is shown in Figs. 18, 19, 20, 21, 22.

    Root mean square of the force tracking errors for above cases is shown in Fig. 23.

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig2_HTML.gif
Fig. 2

Two-link robot manipulator contacting a surface

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig3_HTML.gif
Fig. 3

Joint trajectories without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig4_HTML.gif
Fig. 4

Joint velocities without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig5_HTML.gif
Fig. 5

End-effector trajectories without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig6_HTML.gif
Fig. 6

Force tracking without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig7_HTML.gif
Fig. 7

Force tracking error without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig8_HTML.gif
Fig. 8

Joint trajectories without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig9_HTML.gif
Fig. 9

Joint velocities without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig10_HTML.gif
Fig. 10

End-effector trajectories without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig11_HTML.gif
Fig. 11

Force tracking without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig12_HTML.gif
Fig. 12

Force Tracking error without FFNN

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig13_HTML.gif
Fig. 13

Joint trajectories with FFNN but v = 0

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig14_HTML.gif
Fig. 14

Joint velocities with FFNN but v = 0

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig15_HTML.gif
Fig. 15

End-effector trajectories with FFNN but v = 0

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig16_HTML.gif
Fig. 16

Force tracking with FFNN but v = 0

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig17_HTML.gif
Fig. 17

Force tracking error with FFNN but v = 0

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig18_HTML.gif
Fig. 18

Joint trajectories with FFNN and adaptive compensator given by Eq. (56)

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig19_HTML.gif
Fig. 19

Joint velocities with FFNN and adaptive compensator given by Eq. (56)

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig20_HTML.gif
Fig. 20

End-effector trajectories with FFNN and adaptive compensator given by Eq. (56)

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig21_HTML.gif
Fig. 21

Force tracking with FFNN and adaptive compensator given by Eq. (56)

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig22_HTML.gif
Fig. 22

Force tracking error with FFNN and adaptive compensator given by Eq. (56)

https://static-content.springer.com/image/art%3A10.1007%2Fs00521-012-0966-6/MediaObjects/521_2012_966_Fig23_HTML.gif
Fig. 23

Root mean square of the force tracking errors

5.1 Neural network architecture and simulation discussion

The simulation of the whole system is shown for 20 s. The architecture of the FFNN is composed of 7 input units and 1 bias unit, 5 hidden sigmoidal units, and 1 bias unit and 2 output units. For the simulation, we choose the parameters as \(F_{w}=100I_{6},G_{v}=100I_{8},\Upgamma_{\phi}=150I_{3},\gamma=0.05,\delta(0)=0.5\). Initial FFNN weights are selected at random and initial values for \(\hat{\phi}\) are [0 0 0]T. The performance of the model-based controller (known dynamics) and neural network-based controller (unknown dynamics) to produce the desired system response are shown from Figs. 3, 4, 5, 6, 7 to Figs. 18, 19, 20, 21, 22, respectively. The effect of the disturbance term w on the robot manipulator performance can be easily seen by Figs. 13, 14, 15, 16, 17. Figures 8, 9, 10, 11, 12 show that variation in robot parameter vector \(\hat{\theta}=[a\,\,b\,\,c\,\,d/2\,\,e/2\,\,f_{e1}\,\,f_{e2}]^{T}\) from its best guess estimation vector \(\hat{\theta}=[a\,\,b\,\,c\,\,d\,\,e\,\,f_{e1}\,\,f_{e2}]^{T}\), adversely affects the performance of the model-based controller given by Eq. (29). When we change the robot parameter vector, the tracking error becomes large, that is, we can say the performance of the controller given by Eq. (29) depend on the model of robot manipulator. But, in neural network-based controller given by Eq. (43) any prior knowledge of the robot manipulator is not required. This is the sharp contrast to the model-based controller given by Eq. (29). From Fig. 23 can be seen that the root mean square error (RMSE) of employing the neural network-based controller with adaptive compensator [case (iv)] is less than the other three cases. Overall, Figs. 17, 18, 19, 20, 21, 22 clearly indicate that the FFNN-based controller given by Eq. (43) is quite effective in comparison to the controller given by Eq. (29).

6 Conclusion

In this paper, we designed a robust adaptive neural network-based hybrid position/force control scheme for robot manipulators in the presence of model uncertainties and external disturbance. It can be applied to any rigid-link robot manipulator without any prior knowledge about the robot such as masses and link lengths. A feedforward neural network (FFNN) is used to approximate the unknown dynamics of robot manipulator, which requires no preliminary learning. The control purpose is to achieve the stability in the sense of Lyapunov generated by weighting matrices for desired interaction force between the end-effector and the environment and to regulate robot tip position in cartesian space. Moreover, an adaptive compensator v in Eq. (56) is also developed to be used as a controller to guarantee that the effect of the disturbance term w can be eliminated without requirement of known bounds. Finally, simulation results assure the validity of the proposed neural network-based controller and adaptive compensator with on-line updating laws to enhance the tracking performance of a 2-link rigid robot manipulator.

Acknowledgments

This work is financially supported by the Council of Scientific and Industrial Research (CSIR), New Delhi, India, through file No. 09/143(0624)/2008-EMR-I.

Copyright information

© Springer-Verlag London Limited 2012