Page 1

Published in IET Control Theory and Applications

Received on 12th July 2010

Revised on 11th May 2011

doi:10.1049/iet-cta.2010.0389

ISSN 1751-8644

Friction and uncertainty compensation of robot

manipulator using optimal recurrent cerebellar

model articulation controller and elasto-plastic

friction observer

S.I. Han J.M. Lee

School of Electrical Engineering, Pusan National University, Busan, Republic of Korea

E-mail: jmlee@pusan.ac.kr

Abstract: A model-free control scheme with the elasto-plastic friction observer is presented for robust and high-precision

positioning of a robot manipulator. The traditional model-based adaptive controller requires information on the robotic

dynamics in advance and thus undergoes robustness problem because of complex dynamics and non-linear frictions of a

robot system. This problem is overcome by an employed model-free recurrent cerebellar model articulation controller

(RCMAC) system and friction estimator for friction and uncertainty compensation of a robot manipulator. The adaptive laws

of the RCMAC networks to approximate an ideal equivalent sliding mode control law and adaptive friction estimation laws

based on the elasto-plastic friction model are derived based on the Lyapunov stability analysis. To guarantee stability and

increase convergence speed of the RCMAC network, the optimal learning rates are obtained by the fully informed particle

swarm (FIPS) algorithm. The robust positioning performance of the proposed control scheme is verified by simulation and

experiment for the Scorbot robot in the presence of the joint dynamic friction and uncertainty.

1Introduction

In recent years, the compensation of the joint friction and

uncertainty has become important issue to maintain precise

low-speed motion of a robot manipulator and adaptability of

the control scheme for several advanced applications, from

industrial robots to medical robots. Friction modelling and

compensation of it are particularly important issues in a

robotic manipulator because of the influence of friction on

system performance and stability. Hence, without resorting to

high control gains, friction forces need to be identified and

compensated to improve the transient performance and

reduce the steady-state tracking errors. However, an effective

compensation of friction still remains as a challenging

research subject, especially for very slow motions because

friction often reveals complex behaviours by several working

conditions. Thus, it is not easy work to build an elaborate

model that can embody all such friction characteristics.

To develop further advanced friction model which can

describe realphysicalfriction

several elaborate friction models have been studied, such as

Dahl’s model [1], the LuGre model [2], the elasto-plastic

model [3, 4], the Leuven model [5] and the generalised

Maxwell-Slip (GMS) model [6]. The Leuven and GMS

models provide relatively accurate reproducibility of friction

behaviour, especially in the pre-sliding region than other

frictionmodels. However,

considerable identification effort because of their complex

phenomenaaccurately,

these models maypay

expressions. Furthermore, the control schemes based on

these models are even more complicated at the design level

and during implementation. On the other hand, the LuGre

friction model is an extension of Dahl’s model that can

provide representations of Stribeck friction, viscous friction,

rising static friction and friction memory during slip. It has

a single-state mathematical structure, so it can be easily

implemented intomany

limitation of this model, however, is that it exhibits drift

phenomenon subjected to an arbitrarily small bias force and

arbitrarilysmallvibration.

experimental results show that this drift is spurious. It is

shown that drift is due to the fact that pre-sliding

displacement in the LuGre model always includes a plastic

component. To minimise drift, a class of single-state models

are defined in which pre-sliding is elasto-plastic, that is,

under loading the displacement is first purely elastic before

transitioning to plastic.

The piecewise continuous function defined in [3, 4] to

achieve elasto-plastic property plays a significant role in the

elasto-plastic friction model. In real situations, the accurate

estimation of this function’s value is generally difficult and

laborious and repetitive experiments for identifying it may

be required. To the best of our knowledge, the friction

observers based on the elasto-plastic model have never

reported except for the discrete-time estimation method [4].

Thus, in this paper, we will employ the estimation laws for

friction state and parameters based on the elasto-plastic

applications.A significant

Mostofthepractical

2120

& The Institution of Engineering and Technology 2011

IET Control Theory Appl., 2011, Vol. 5, Iss. 18, pp. 2120–2141

doi:10.1049/iet-cta.2010.0389

www.ietdl.org

Page 2

model. For the LuGre friction model, to estimate the friction

parameters, several friction observers [7–10] are developed,

butthese observers have

implementation. A developed sliding mode-based friction

parameter observer in this paper has a simple structure and

no limitation when compared with the previous observers

proposed by Canudas de Wit and Lischinsky [7] and Xie [10].

Friction compensation of robots has been reviewed in

[11–15]. The decomposition-based control approach was

proposed using the Stribeck friction model in [11, 12].

The robust compliant motion control was presented with

consideration of Coulomb friction and stiction in [13]. The

robust fuzzy friction compensation with a local friction

observer was studied in [14]. Friction identification and

compensation for the joint friction control of robots using

the LuGre model were carried out by simple control

schemes [15].Mostofthese

schemes are based on a model-based adaptive control

method or the LuGre model, which has weakness to the

uncertainties ofrobotsbecause

modelling of manipulator dynamics, friction and external

unknown disturbances as well as drift of the LuGre

friction model.

Recently, artificial intelligent methods such as neural

networks, fuzzy logic and genetic algorithm have been

developed as model-free controls since, in general, the

conventional model-based robust control often fails to

achieve satisfactory performance for a system with system

dynamics that is difficult to model or have severe time-

varying non-linearities [16–18]. These artificial intelligent

methods utilise human brain learning and logic processes

and approximate the unknown system dynamics or the

ideal controller after learning to certain accuracy without

the need for information about the system dynamics. The

cerebellarmodelarticulation

classifiedasanon-fully

associative memory network with overlapping receptive

fields and have been developed in the literature [19–21].

The CMAC to approximate a non-linear function over a

domain of interest to any desired accuracy has been

already validated. To utilise dynamic mapping, recurrent

CMAC (RCMAC) has been developed [22–26], which

includesthe delayed self-recurrent

memory space. To achieve highly accurate approximation,

the conventional RCMAC [22–26]

adding feedforward weighing path to them.

It is well known that the SMC is a powerful robust scheme

to control non-linear systems with uncertainties [27, 28]. The

representative features of the SMC are its insensitivity to

system parameter variations, external disturbances and fast

dynamic responses. On the other hand, the SMC has

additional favourable features such as the relatively simple

controller structure and easier implementation than other

control schemes. Based on these features, the sliding mode-

based RCMAC (SRCMAC) system, which is developed in

this paper, combines the advantages of the SMC with

robust characteristics and the RCMAC with on-line learning

ability. Hence, the stability, convergence and robustness of

the control system can be enhanced.

The learning rates of the RCMAC network are the

important factor that influences the performance of the

SRCMAC system. At a low learning rate, convergence is

easily guaranteed but the learning speed is apt to be much

slower. On the contrary, an excessively high learning rate

may cause a stability problem. To optimise the learning

rates of the RCMAC network, particle swarm optimisation

somelimitations for

frictioncompensation

oftheirincomplete

controller

connected

(CMAC)

perceptron-like

are

unit association

are modifiedby

(PSO) [29] is employed. The PSO was developed based

on the simulation of animal social behaviours such as bird

flocking and fish schooling. Unlike a genetic algorithm,

the PSO has no complicated evolutionary operators, such

asthe crossoverandmutation.

particularly useful for solving optimisation problems with

a large number of variables. From several PSO algorithms,

the fully informed particle swarm (FIPS) algorithm [30] is

employed to optimise the learning rates of the RCMAC

network.

Summarising the above statements, in this paper, we will

develop an improved SRCMAC control system combined

with a friction observer and FIPS algorithm (SRCFO_FIPS)

for precise joint tracking performance to the joint friction

and uncertainty of the robot manipulator. Some simulation

and experiment for the Scorbot robot system with non-

linear friction and uncertainty were carried out to evaluate

the proposed control scheme.

The PSOcanbe

2

non-linear dynamic friction

Modelling of the robot manipulator and

2.1 Robot manipulator dynamics

The dynamic equation of an n rigid-link robot system

with frictional joints is described as the following Lagrange

form

M(q)¨ q + C(q, ˙ q)˙ q + G(q) + Tf(q, ˙ q) = t

(1)

where q, ˙ q, ¨ q [ Rn×1denote the joint position, velocity and

acceleration vectors, respectively, the moment of inertia

matrix M(q) [ Rn×nis a positive-definite symmetric matrix,

C(q, ˙ q) [ Rn×n

is the centripetal

˙M(q) − 2C(q, ˙ q) is a skew-symmetric matrix, G(q) [ Rn×1

is the gravity vector, Tf(q, ˙ q) [ Rn×1is the non-linear

friction torque vector and t [ Rn×1is the control torque

vector by the joint actuators. Considering the modelling

uncertainties and external disturbance, the robot system in

(1) can be reformulated as

Coriolis matrix,

¨ q = fn(q, ˙ q) + gn(q)[u − Tfn+ Tu] (2)

where the subscript n represents the system parameters in the

nominalcondition,fn(q, ˙ q) = −gn(q)[Cn(q, ˙ q) + Gn(q)],

gn(q) = M−1

as Tu= DM(q)¨ q + DC(q, ˙ q) + DG(q) + DTf− TL, DM(q),

DC(q, ˙ q),

DG(q) and

DTf

uncertainties of M(q), C(q, ˙ q), G(q) and Tf, respectively,

and TL[ Rn×1is the disturbance vector. The uncertainties

of DM(q), DC(q, ˙ q), DG(q) and DTfare bounded by some

positive constants ri(i ¼ m, c, g, f ) such that ?DM? ≤ rm,

?DC? ≤ rc, ?DG? ≤ rgand ?DTf? ≤ rf. The disturbance is

assumed such that TL[ L2[0, T], ∀T [ [0, 1), and TLis

bounded by some positive constant rd: ?TL? ≤ rd. Thus,

the lumped uncertainty is assumed to be bounded with a

finitevalue. Toguarantee

performance, an elaborate non-linear friction model should

be considered.

n(q); u ¼ t, Tuis a lumped uncertainty defined

represent theunknown

moreimproved control

IET Control Theory Appl., 2011, Vol. 5, Iss. 18, pp. 2120–2141

doi:10.1049/iet-cta.2010.0389

2121

& The Institution of Engineering and Technology 2011

www.ietdl.org

Page 3

2.2Elasto-plastic dynamic friction model

The friction state equation of the LuGre friction model is

˙ z =

˙ q1− s01h1(˙ q1)z1

⎢

⎢

...

˙ qi− s0ihi(˙ qi)zi

...

˙ qn− s0nhn(˙ qn)zn

⎡

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(3)

where ziis the average defection vector of the elastic bristle,

s0i. 0 is the stiffness of elastic bristle and

hi(˙ qi) =

|˙ qi|

[Tci+ (Tsi− Tci)exp(−(˙ qi/˙ qsi)2)]

(4)

In general, the function hi(˙ q) . 0 depends on many factors

such as the material properties, lubrication and temperature,

and Tci is Coulomb friction, Tsi is stiction level, ˙ qsiis

Stribeck angular velocity. The dynamic friction torque

vector is described by

Tfn=

s01z1+ s11˙ z1+ s21˙ q1

...

s0izi+ s1i˙ zi+ s2i˙ qi

...

s0nzn+ s1n˙ zn+ s2n˙ qn

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(5)

where s1i. 0 is the damping coefficient in elastic range and

s2i. 0 is the viscous friction coefficient. The LuGre friction

model captures many aspects of complex friction, but allows

no further modelling of the pre-sliding domain. In Figs. 1b

and d, it is shown that, when the LuGre friction model, a

drift is always produced when arbitrarily small forces or

torques are applied as shown in Fig. 1a. This behaviour is

not physically consistent, since in reality an object remains

situated in the presence of small loads as shown in Fig. 1f,

where this is the author’s previous experimental result

[31] for the torque input shown in Fig. 1a. Although the

LuGre friction model assumes that plastic and elastic

displacements are always combined, the elasto-plastic

friction model enables precise modelling of the pre-sliding

domain and the dynamic transition to sliding domain, where

the following formulation is used for the bristle displacement

˙ z =

˙ q1− a1(z1, ˙ q1)s01h1(˙ q1)z1

⎢

⎢

...

˙ qi− ai(zi, ˙ qi)s0ihi(˙ qi)zi

...

˙ qn− an(zn, ˙ qn)s0nhn(˙ qn)zn

⎡

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(6)

The main difference with the LuGre friction model is

represented by the function ai(zi, ˙ qi): this is an adhesion

map that controls the rate of change of zi; specially, when

the bristle displacement zi is smaller than a given

breakaway displacement zbai, then ai(zi, ˙ qi) is set to zero

and consequently (6) reduces to ˙ zi= ˙ qi. This means that in

the range |zi| ≤ zbai, the model shows purely elastic pre-

sliding regime, and therefore does not exhibit drift as

shown in Figs. 1c and e. These results correspond to the

experimental result as shown in Fig. 1f. Note that the

LuGre friction model is a special case of (6) where

ai(zi, ˙ qi) = 1. The function ai(zi, ˙ qi) is parameterised as

⎧

⎪⎪⎩

ai(zi, ˙ qi)

0,

ami,

1,

0,

|zi| , zbai,

zbai, |zi| , zssi(˙ qi),

|zi| , zssi(˙ qi),

sgn(˙ qi) = sgn(zi)

sgn(˙ qi) = sgn(zi)

sgn(˙ qi) = sgn(zi)

sgn(˙ qi) = sgn(zi)

⎪⎪⎨

(7)

where zbai(0 , zbai, zssi(˙ qi)) is the breakaway displacement

below which the pre-sliding is purely elastic. ami(˙ zi, ˙ qi) is

indeed a function of ˙ qi and zi, which describes the

transition between elastic and plastic behaviour, as

ami(zi, ˙ qi) =1

2

1 + sin pzi− (zssi(˙ qi) + zbai)/2

zssi(˙ qi) − zbai

????

(8)

Following [3], zssi(˙ qi) is defined as

zssi(˙ qi) =sgn(˙ qi)

s0i

[Tci+ (Tsi− Tci)e−(˙ qi/qsi)2] (9)

Since the friction torque of the elasto-plastic model is equal to

that of the LuGre model, from (5) and (6), Tfncan be rewritten

as

Tfn=

s01z1− a1s31h1(˙ q1)z1+ s41˙ q1

...

s0izi− ais3ihi(˙ qi)zi+ s4i˙ qi

...

s0nzn− ans3nhn(˙ qn)zn+ s4n˙ qn

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(10)

where s3i¼ s0i.s1i, s4i¼ s1i+ s2i. Since, however, the

statevariable

zi

cannot

ai(zi, ˙ qi) (0 ≤ ai(zi, ˙ qi) ≤ 1) is an important factor in the

elasto-plastic model, we suggest the friction state observer

to estimate zias follows

bemeasured directlyand

˙ˆ z =

˙ q1− ˆ a1ˆ s01h1(˙ q1)ˆ z1

⎢

⎢

...

˙ qi− ˆ aiˆ s0ihi(˙ qi)ˆ zi

...

˙ qn− ˆ anˆ s0nhn(˙ qn)ˆ zn

⎡

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(11)

where ˆ ziis the estimation of zi, ˆ ai(zi, ˙ qi) is the estimation of

ai(zi, ˙ qi) and

ˆ s0i is the estimation of s0i. Then, the

estimation error of the friction state variable is given from

(6) and (11) as follows

˙˜ z =

−a1s01h1(˙ q1)˜ z1− a1h1(˙ q1)ˆ z1˜ s01− ˆ s01h1(˙ q1)ˆ z1˜ a1

...

−ais0ihi(˙ qi)˜ zi− aihi(˙ qi)ˆ zi˜ s0i− ˆ s0ihi(˙ qi)ˆ zi˜ ai

...

−ans0nhn(˙ qn)˜ zn− anhn(˙ qn)ˆ zn˜ s0n− ˆ s0nhn(˙ qn)ˆ zn˜ an

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(12)

2122

& The Institution of Engineering and Technology 2011

IET Control Theory Appl., 2011, Vol. 5, Iss. 18, pp. 2120–2141

doi:10.1049/iet-cta.2010.0389

www.ietdl.org

Page 4

Fig. 1

a Applied input torque

b Angular displacement predicted by the LuGre model

c Angular displacement predicted by the elasto-plastic model

d Torque against displacement for the LuGre model

e Torque against displacement for the elasto-plastic model

f Experimental result in ball-screw system: torque against displacement

Simulated results of the LuGre and the elasto-plastic friction model and real experimental result

IET Control Theory Appl., 2011, Vol. 5, Iss. 18, pp. 2120–2141

doi:10.1049/iet-cta.2010.0389

2123

& The Institution of Engineering and Technology 2011

www.ietdl.org

Page 5

where ˜ zi= zi− ˆ zi, ˜ ai=ai− ˆ aiand ˜ s0i= s0i− ˆ s0i. Thus,

the estimation of friction Tfnis given as

ˆTfn=

ˆ s01ˆ z1− ˆ a1ˆ s31h1(˙ q1)ˆ z1+ ˆ s41˙ q1

⎢

⎢

...

ˆ s0iˆ zi− ˆ aiˆ s3ihi(˙ qi)ˆ zi+ ˆ s4i˙ qi

...

ˆ s0nˆ zn− ˆ anˆ s3nhn(˙ qn)ˆ zn+ ˆ s4n˙ qn

⎡

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

(13)

where ˆ s3iand ˆ s4iare estimations of s3iand s4i, respectively.

In the elasto-plastic model, ai(zi, ˙ qi) is a very important

factor, but determining it experimentally is difficult.

Therefore the estimation procedure of it as well as other

friction parameters should be considered.

2.3Sliding mode control

The control objective for a robot manipulator is to determine

an intelligent adaptive control system such that the system

output vector q can track a desired joint trajectory qd, which

is a given continuously differentiable and uniformly

bounded in joint space, and the tracking error e ¼ qd2 q

should be kept as small as possible.

To achieve our control objective, we define a sliding

surface in the space of the error vector

S =

s1(e1)

...

si(ei)

...

sn(en)

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

=

c1e1+ ˙ e1

...

ciei+ ˙ ei

...

cnen+ ˙ en

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

= LTE(14)

where ciare positive constants, ei¼ qdi2 qi(i ¼ 1, ... , n),

L ¼ [C I]T, E = [e

˙ e]Tand

C =

c1

...

0

...

0

···

..

···

···

···

0

...

ci

···

···

···

..

···

0

...

0

...

cn

.

···

0

.

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

Thus

˙E = VE + B[¨ qd− fn(q, ˙ q) − gn(q)(u − Tfn+ Tu)](15)

where V =

reaching phase since the function S ¼ 0 when t ¼ 0. The

tracking control problem is to choose a control law u such

that the system state is driven to the sliding surface S ¼ 0 for

all t . 0 regardless of friction and the lumped uncertainty. In

order to design this sliding mode controller (SMC), we first

derive the equivalent control law ueq, which will determine

the dynamic of the system behaviour on the sliding surface.

0

0

I

0

??

, B = 0

I

??T. Note that there is no

The equivalent control law is derived by setting

˙S|u=ueq=

˙ s1

...

˙ si

...

˙ sn

⎡

⎢

⎢

⎢

⎢

⎢

⎣

⎢

⎤

⎥

⎥

⎥

⎥

⎥

⎦

⎥

= 0

(16)

which leads to

ueq= g−1

n(q)[¨ qd− fn(q, ˙ q) − gn(q)Tu+ LTVE](17)

We consider the friction and unified smooth control law to

avoid excessive chattering in control input and dispel the

lumped system uncertainty as

us= g−1

uf= Tfn

n(q)gS(18)

(19)

where g ¼ diag(g1, ...,gn) . 0 is a diagonal constant matrix.

Then, the ideal control law is given as

uid= ueq+ us+ uf

(20)

Taking the time derivative of both sides of (14) and using (14)

and (20), we obtain

˙S = LTVE + LTB[¨ qd− fn(q, ˙ q) − gn(q)(u − Tfn+ Tu)]

= −gS(21)

We define a Lyapunov function candidate

V1=1

2STS (22)

Considering (21), its time derivative with (22) is

˙V1= ST˙S

= −g?S?2≤ 0(23)

Thus, the SMC control input introduced in (20) can guarantee

the stability of the control system. By properly choosing the

values of g, we can easily design the system performances

such as rise time, overshoot and settling time. However,

if the system parameters are unknown or perturbed, the

equivalent control of (17) cannot guarantee the performance

and stability of the controlled system. Considering the above

estimation of the friction, the ideal equivalent control law can

be changed as

uid= g−1

n(q)[¨ qd− fn(q, ˙ q) − gn(q)Tu+ KTAE]

+ g−1

n(q)gS +ˆTfn= ueq+ us+ ˆ uf

(24)

where ˆ uf=ˆTfn. Substituting (24) into (2) yields the following

result

˙S = −gS −˜Tfn

(25)

2124

& The Institution of Engineering and Technology 2011

IET Control Theory Appl., 2011, Vol. 5, Iss. 18, pp. 2120–2141

doi:10.1049/iet-cta.2010.0389

www.ietdl.org