You are on page 1of 25

Mechatronics 10 (2000) 239263

Neuro sliding mode control of robotic


manipulators
Meliksah Ertugrul a, Okyay Kaynak b,*
a

TUBITAK MRC, Information Technologies Research Institute, 41470, Gebze, Turkey


b
Mechatronics R&A Center, Bogazic i University, 80815, Istanbul, Turkey
Received 27 October 1998; accepted 13 May 1999

Abstract
In this paper, a synergistic combination of neural networks with sliding mode control
(SMC) methodology is proposed. As a result, the chattering is eliminated and error
performance of SMC is improved. In the approach, two parallel Neural Networks (NNs)
are utilized to realize a neuro-SMC. The equivalent control and the corrective control terms
of SMC are the outputs of the NNs. The weight adaptations of NNs are based on the
SMC equations in such a way that the use of the gradient descent method minimizes the
control activity and the amount of chattering while optimizing the error performance. The
approach is almost model-free, requiring a minimal amount of a priori knowledge and
robust in the face of parameter changes. Experimental studies carried out on a direct drive
arm are presented, indicating that the proposed approach is a good candidate for trajectory
control applications. # 1999 Elsevier Science Ltd. All rights reserved.

1. Introduction
Variable structure systems (VSSs) with a sliding mode were rst proposed in the
early 1950s, but it was not until the 1970s that sliding mode control (SMC)
became more popular. It nowadays enjoys a wide variety of application areas. The
main reason for this popularity is the attractive superior properties of SMC, such
as good control performance even in the case of nonlinear systems, applicability

* Corresponding author. Tel.: +90-212-287-2475; fax: +90-212-287-2465.


E-mail address: kaynak@boun.edu.tr (O. Kaynak).
0957-4158/00/$ - see front matter # 1999 Elsevier Science Ltd. All rights reserved.
PII: S 0 9 5 7 - 4 1 5 8 ( 9 9 ) 0 0 0 5 7 - 4

240

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

to MIMO systems, design criteria for discrete time systems, etc. The best property
of the SMC is its robustness. Loosely speaking, a system with an SMC is
insensitive to parameter changes or external disturbances [1].
The essential characteristic of VSS is that the feedback signal is discontinuous,
switching on one or more manifolds in state space. When the state crosses each
discontinuity surface, the structure of the feedback system is altered. All motion in
the neighbourhood of the manifold is directed towards the manifold and thus a
sliding motion occurs in which the system state repeatedly crosses the switching
surface [2,3].
The theory of variable structure systems with a sliding mode has been studied
intensively by many researchers. Motion control, especially in robotics, has been
an area that has attracted particular attention and numerous reports have
appeared in the literature [410]. A recent survey is given in [1].
In practical motion control applications, an SMC suers mainly from two
disadvantages. The rst one is the high frequency oscillations of the controller
output, termed ``chattering''. The second disadvantage is the diculty involved in
the calculation of what is known as the equivalent control. A thorough knowledge
of the plant dynamics is required for this purpose [4]. In literature, some
suggestions are made to abate these problems. The most popular technique for the
elimination of the chattering is the use of a saturation function [10]. For avoiding
the computational burden involved in the calculation of the equivalent control an
estimation technique can be used [4]. More recently, the use of ``intelligent''
techniques based on fuzzy logic, neural networks, evolutionary computing and
other techniques adapted from articial intelligence have also been suggested.
These methodologies provide an extensive freedom for control engineers to exploit
their understanding of the problem, to deal with problems of vagueness,
uncertainty or imprecision, and to learn by experience and, therefore, are good
candidates for alleviating the problems associated with sliding mode controllers
above. A good deal of work is reported in the literature in this respect, a few
examples of which are cited in Refs. [1127]. The main emphasis in these works is
on the elimination of the requirement on exact priory knowledge of plant
dynamics and on the smoothing of the control input. In one report [28], the
similarity between fuzzy control and VSS is addressed and in some other [2936],
intelligent techniques are combined sliding mode control techniques.
Robotic manipulators are frequently used as test beds for the evaluation of
computationally intelligent identication and control methods because their
coupled nonlinear equations and ambiguities on the friction related dynamics
inevitably require the use of exible control architectures. A recently published
book [37] is devoted entirely to the topic of adaptive neural network control of
robotic manipulators. The use of neural networks for learning the inverse
dynamics of the manipulator is a common approach. Two main approaches can
be identied in this context [11,14,15]. The rst one utilizes o-line learning
techniques and is named as ``general learning''. The learning process tries to
minimize the square of the error between robot input and NN output. In this
structure, after an initial o-line training period, the NN is assumed to have learnt

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

241

the inverse dynamics and its output is directly connected to the robot input. In the
second approach, termed as ``specialized learning'', on-line learning is adopted.
The learning process tries to minimize the square of the error between the robot
output and desired trajectory. In this structure the control and learning are carried
out simultaneously. Both methods have advantages and disadvantages.
A dierent approach to the computation of inverse dynamics in robot control is
proposed by Kawato et al. [12], termed as ``feedback error learning''. It is based
on the NN realization of the computed torque, plus a secondary PD controller.
The output of the PD controller is used as the error signal to update the weights
of NN.
In this paper, two parallel NNs are proposed to realize the equivalent control
and the corrective control of the SMC design. The equivalent control has a role
similar to that played by inverse dynamics. When the system states are on the
sliding surface, the equivalent control is enough to keep the system on the surface
and the corrective control is zero. The latter is necessary only when the system
states deviate from the surface. Based on this interpretation, a two-layer feedforward NN is designed to compute the equivalent control and weights are
adapted to minimize the square of the corrective control. The corrective control of
SMC is also computed by an additional NN. The proposed adaptation scheme
directly results in chattering-free control action for the corrective control. The
design parameters (the gains) of SMC are admitted as the weights of the NN and
adapted to minimize a cost function.
One of the main problems of an NN design is how to select the layers, number
of neurons for each layer and the connections between layers. In the structure of
the corrective control that is proposed in this paper, this problem is not met since
the network topology of the NN is well determined from the SMC design. NN
has a two-layer structure: a hidden and an output layer. The number of neurons
for each layer and connections between neurons are directly established through
the design of the SMC.
The paper concludes with the presentation of some experimental results
obtained for the control of a direct drive scara-type robot.

2. Sliding mode control


In the application of the VSS theory to control nonlinear processes it is argued
that one only needs to drive the error to a ``switching'' or ``sliding'' surface, after
which the system is in a ``sliding mode'' and will not be aected by any modelling
uncertainties and/or disturbances [1,3]. Intuitively, VSS with a sliding mode is
based on the argument that the control of rst-order systems (i.e., systems
described by rst-order dierential equations) is much easier, even when they are
nonlinear or uncertain, than the control of general nth-order systems [10].

242

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

2.1. The system (plant)


Consider a nonlinear, non-autonomous, multi-input multi-output system of the
form
i
fi X
x k
i

m
X
bij uj

j1

where x iki indicates the kth


i derivative of xi. The vector U of components uj is the
control input vector and the state X is composed of the xis and their rst (ki1)
derivatives. Such systems are called square systems since they have as many
control inputs as outputs xi to be controlled [10]. The system can be written in a
more compact form as letting
X bx 1 . . . x m

km 1 T
c
x_ 1 . . . x_ m . . . x 1k1 1 . . . x m

U u1 . . . um T

2
3

Assuming that X is (n  1), the system equation becomes


_ FX BUt
Xt

where B is an (n  m ) input gain matrix.


2.2. Sliding surface
For the system given in (4), the sliding surface variable that is represented by S
is generally an (m  1) vector. S = 0 denes a sliding surface. It is selected [4] as
SX, t GXd t Xt ft Sa X

where
ft GXd t,

Sa X GXt

i.e., the time and the state dependent parts. The vector Xd represents the desired
(reference) state and G (m  n ) is the slope matrix of the sliding surface.
Generally, G is selected such that the sliding surface function becomes

ki 1
d
li
ei
7
Si
dt
where ei is the error for xi (ei=xdixi) and lis are selected as positive constants.
Therefore, ei goes to zero when Si equals zero.
The aim in SMC is to force the system states to the sliding surface. Once the
states are on the sliding surface, the system errors converge to zero with error
dynamics dictated by the matrix G.

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

243

2.3. Sliding mode controller design


In this section, the design of an SMC based on the selection of a Lyapunov
function is presented [4]. The control should be chosen such that the candidate
Lyapunov function satises Lyapunov stability criteria. Lyapunov global stability
is stated in the following theorem.
Lyapunov theorem for global stability: assume that there exists a scalar function
V of S, with continuous rst-order derivatives such that (A)
VS is positive definite,
(B)
dV(S )/dt
is
negative
denite,
(C)
VS 4 1 as kSk 4 1, then the equilibrium at the S = 0 is globally
asymptotically stable [10].
Let the Lyapunov function be selected as below:
VS

S TS
2

It can be noted that this function is positive denite (V(S = 0)=0 and V(S ) > 0
8S$ 0). It is aimed that the derivative of the Lyapunov function is negative
denite. This can be assured if one can assure that
dVS
S T D signS
dt

where D is (m  m ) positive denite diagonal gain matrix, and sign(S ) means


signum function is applied to each element of S, i.e.
signS signS1 . . . signSm T
and sign(Si) is dened as

1 if Si > 0
signSi
1 otherwise

10

11

Taking the derivative of (8) and equating this to (9), the following equation is
obtained:
ST

dS
S T D signS
dt

12

The time derivative of S can be obtained using (5) and the plant equation as given
below:
dS
df @Sa dX
df

GFX BU
@ X dt
dt
dt
dt

13

By putting (13) into (12), the control input signal can be written as
Ut Ueq t Uc t

14

244

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

where Ueq(t ) is the equivalent control given by




dft
1
GFX
Ueq t GB
dt

15

and Uc(t ) is the corrective control given by


Uc t GB 1 D signS K signS

16

2.4. Chattering elimination


The controller of (14) exhibits high frequency oscillations in its output, causing
a problem known as the chattering phenomena. Chattering is highly undesirable
because it can excite the high frequency dynamics of the system. For its
elimination, it is suggested to use a saturation [10] or a shifted sigmoid function
[4] instead of the sign function. In the latter case, the corrective control is
computed as
Uc t KhS

17

where h() is a shifted sigmoid function, dened as


hSj

2
1
1 eSj

18

3. Neuro-sliding mode control


A basic Articial Neural Network consists of ``neurons'', ``weights'' and
``activation functions''. The weights are adapted to achieve a desired mapping
between the input and the output sets. Nowadays, a variety of neuro-controllers
are successfully used for various control applications [11].
3.1. The structure of the proposed controller
In the proposed structure, the equivalent control and the corrective control in
sliding mode control are computed by NN1 and NN2, respectively. The outputs
of NN1 and NN2 are summed to form the control signal to be applied to the
robot.
The weights of the NN2 are updated such that the error performance of the
overall system is improved. The weights of the NN1 are updated to minimize the
output of the secondary controller. In other words, the output of the secondary
controller is accepted as a measure of error for NN1. This is because, in sliding
mode, equivalent control is enough to keep the system on the sliding surface and

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

245

corrective control is necessary to compensate the deviations from the surface. The
overall system with the proposed controller is presented in Fig. 1.
3.2. Neural computation of the equivalent control
3.2.1. The parallels between the inverse dynamics and the equivalent control
In model based trajectory control of robotic manipulators, the use of inverse
dynamics in a primary feedbackfeed forward loop is very common. In this way,
the nonlinear terms in the dynamics are cancelled as much as possible and a
secondary controller is used to compensate for the plant-model mismatches and
disturbances. The technique is also known as the computed torque. In what
follows, a parallel is drawn between the inverse dynamics and the equivalent
control.
A direct approach to show the equivalence of the inverse dynamics and the
equivalent control is as follows; the system equation given in (4) can be solved for
the desired control signal as given below:
X_ d t FXd BUd t

19

Since B is not a square matrix, (19) is multiplied with a transformation matrix G:


GX_ d t GFXd GBUd t
If (20) is solved for the desired control, it will be obtained as


dft
Ud GB 1 GFXd
dt

20

21

The functional structure of the inverse dynamics is exactly the same as the

Fig. 1. The overall system with proposed controller.

246

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

equivalent control that is given in (15). The only dierence is that the F(Xd) term
in desired control is replaced with F(X ) which is the actual value in the equivalent
control. It can, therefore, be concluded that when the system is in the sliding
mode, the equivalent control is the same as the inverse dynamics.
3.2.2. Computation of the equivalent control by an NN
In a practical application of the control law of (15), there will always be
diculties due to the fact that the knowledge of F(X ) and B will not be exact. It
is shown in the literature that in the face of similar diculties for the calculation
of inverse dynamics, neural networks provide a solution, being able to learn the
inverse dynamics quite satisfactorily. This has motivated the authors of this paper
to use an NN in the computation of the equivalent control.
3.2.3. NN1 structure to compute the equivalent control
The structure of NN1 is selected as a two-layer feed-forward network, with one
hidden layer and one output layer. The inputs and outputs of the network are
dictated by the equivalent control equation. In the computation of the equivalent
control, all the desired and actual states are used, as it is obvious from (15).
Therefore, the inputs to NN1 that will compute the equivalent control are the
desired and the actual states. The number of neurons in the output layer is
determined by the number of the actuators of the robot. In other words, it equals
the number of inputs of the robot. The number of neurons in the hidden layer
should be selected such that the NN1 is capable of computing a whole span of
inverse dynamics. In practice, this can be selected as two times the number of
neurons in the input layer. Any errors that may occur due to poor modelling is
expected to be compensated by the secondary controller.
Let us consider a two degrees of freedom (DOF) robot manipulator. The states

Fig. 2. NN1 structure for a two DOF robot to estimate the equivalent control (Ueq).

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

247

of the robot dynamics can be selected as angular positions and velocities. The
number of states will therefore be four and the NN has eight inputs (four for
actual states and four for desired states). In accordance with the rule of thumb
stated above, the number of neurons in the hidden layer can be selected as sixteen.
The structure of NN1 for this manipulator is presented in Fig. 2.
The inputs (designated as Z ) to the net consist of desired and actual states
(Z=[(Xd)T X T]T). The net sum and the output of the hidden layer are designated
as Ynet and Yout, respectively. Similarly, the net sum and the output of the output
layer are designated as Unet and Ueq, respectively. The values can be computed as
Ynetj

2n
X
W zj, i Zi

j 1, . . . , 4n Youtj gYnetj

22

i1

Unetj

4n
X
Wyj, i Youti

j 1, . . . , m

i1

U^ eqj Umax j gUnetj

23

where Wzj,i is the weight from input node-i to hidden node-j, and Wyj,i is the
weight from hidden node-i to output node-j. The activation function, g(), is
selected as a shifted sigmoid function as dened in (18). (4n ) represents the
number of the hidden neurons. Umaxj is a constant that represents the maximum
available value of the controller output (or limits of the robot inputs). Ueq is the
estimated value of the equivalent control. As a precaution against the equivalent
controls reaching unreasonably large values, the outputs of the neural network are
kept between 21, and multiplied by the maximum available controller outputs.
The inputs are normalized by dividing them by their maximum values.
3.2.4. Weight adaptation of NN1 for the equivalent control estimation
The weight adaptation is based on a minimization of a cost function that is
selected as the dierence between the desired and the estimated equivalent control
2 U
^
X
1m
eqj Ueqj
E
2 j1
Umax j

!2
24

Gradient descent method (or back propagation) is used for the output layer as
@E
@E @ Unetj
m
mdyj Youtj
@Wyj, i
@Unetj @ Wyj, i

25

Ueqj U^ eqj @ gUnetj


@E
@ E @ U^ eqj

Umax j
@Unetj
@Unetj
@ U^ eqj @Unetj

26

DWyj, i m
where
dy j

248

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

dy j

Ucj @gUnetj
Umax j @ Unetj

27

The derivative of the shifted sigmoid function is computed as


@gUnetj
1
1 gUnetj 2
2
@ Unetj

28

Gradient descent for the hidden layer is computed as


DWzj, i m

@E
@E @ Ynetj
m
mdzj Zi
@Wzj, i
@ Ynetj @Wzj, i

29

where
@E

d zj
@ Ynetj

!
m
X
dyk Wyk, j 1 Youtj 2

30

k1

The most important point in this derivation is that the error between desired and
estimated equivalent control is replaced with the corrective control of the sliding
mode control, as it is seen from (27).
3.3. NN2 for the corrective control computation
In this NN structure, the gains of SMC are taken as the weights of NN2. The
aim is the use of NN weight adaptation techniques to adapt the gains of SMC.
The structure of NN2 is thus well determined from the SMC design. NN2 has a
two-layer structure: a hidden and an output layer. The number of neurons for
each layer and connections between neurons are obviously established.

Fig. 3. NN2 structure for a two DOF robot to compute the corrective control (Uc).

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

249

The inputs for the neural network are selected as the state errors. In the hidden
layer, the number of neurons is equal to the number of sliding functions (i.e. the
number of plant inputs). Each input is not connected to all neurons at the hidden
layer; instead, it is connected to only one neuron at the hidden layer so that an
appropriate sliding surface is formed at that neuron. The outputs of the hidden
layer are passed through an activation function too, such as the sign function or
sign-like continuous functions (e.g. shifted sigmoid).
The hidden layer is fully connected to the output layer at which the number of
neurons is equal to the number of plant inputs. There is no activation function for
this layer. The output of the neurons is the corrective control term to be added to
equivalent control as shown in (16). The structure of NN2 for the manipulator is
presented in Fig. 3.
An adaptation scheme to minimize the control eort and sliding function is
proposed using the gradient descent method. The criterion (cost) which is to be
minimized is chosen as
J 12 S T S U Tc Uc

31

The reason behind the selection of the cost function as in (31) is that minimizing
(optimizing) the S function results in a minimization of the error, because S is a
function of error as dened in (5) and optimizing Uc results in elimination of
chattering and optimization of the control.
To make J small it is reasonable to change the parameters (weights) in the
direction of the negative gradient of it, i.e.
DKj, i g

@J
@Kj, i

and

DGj, i g

@J
@ Gj, i

32

3.3.1. Weight adaptation for the output layer of NN2


Weight adaptation for the output layer also means the adaptation of the Kmatrix of SMC. The eect of K-adaptation is presented in Fig. 4. The gradient

Fig. 4. The eect of K-adaptation on the phase plane.

250

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

descent as in (32) for K can be derived as


DKj, i g

@J @Sj
@J @Ucj
g
@Sj @Kj, i
@Ucj @ Kj, i

where j 1, . . . , m

and

33

i 1, . . . , m
The partial derivatives are calculated as
@J
Sj ,
@Sj

@J
U cj ,
@Ucj

and

@ Ucj
hSi
@ Kj, i

34

The sliding function in (5) can be rewritten using (17) and the integral of (4) as

35
S GXd X GXd G FX BUeq KhS dx
Taking the partial derivative of (35) and assigning the constants to g' which are
obtained by multiplication of elements of G and B:

@Sj
0
g hSi xdx
36
@Kj, i
The last form of K-adaptation is obtained as

DKj, i g1 Sj hSi xdx g2 Ucj hSi

37

The minimization of the corrective controller (Uc) prevents chattering when the
system is on the sliding surface or inside the boundary layer. Minimization outside
the boundary layer eects the overall performance negatively; the reaching time
and the error will increase. Consequently, the adaptation of K as in (37) can be
modied in a boundary layer (Sb):

Fig. 5. The eect of G-adaptation.

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

DKj, i

>
>
>
< g1 Sj hSi xdx g2 Ucj hSi

>
>
>
: g1 Sj hSi xdx

251

if Sb < Sj < Sb
38
otherwise

3.3.2. Weight adaptation for the hidden layer of NN2


Weight adaptation for the hidden layer also means the adaptation of G. The
eect of G-adaptation is presented in Fig. 5. Similar to the derivation of (33), the
gradient descent for G can be derived as
DGj, i g

m
X
@J @Sj
@ J @Uck
g
@Sj @Gj, i
@ Uck @Gj, i
k1

39

where j = 1, . . ., m and i = 1, . . ., n. The partial derivatives are calculated as


@Sj
Ei
@Gj, i

and

@ Uck
@ Uck @hSj @Sj
1

Kk, j 1 h2 Sj Ei
@ Gj, i
@hSj @ Sj @Gj, i
2

40

The last form of G-adaptation is obtained as


2

DGj, i g3 Sj Ei g4 1 h Sj Ei

m
X
Uck Kk, j

k1

Fig. 6. Direct drive scara-type experimental robot.

41

252

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

If, because of the reasons described above, the minimization of Uc is excluded


outside the boundary layer, the nal form of G-adaptation is obtained as
8
!
m
X
>
>
2
< g Sj Ei g 1 h Sj Ei
Uck Kk, j
if Sb < Sj < Sb
3
4
42
DGj, i
k1
>
>
:
g3 Sj Ei
otherwise
It is to be noted that the adaptation process of G and K should be stopped when
the state errors reach acceptable small values, as they may be sensitive to system
perturbations. Additionally, limits should be put on G and K values to assure
stability. The overall algorithm described above is summarized in The Application
Algorithm.

4. Robotics application
In order to study the performance of the proposed controller, extensive
implementation studies are carried out on a two DOF, direct drive, scara-type
experimental manipulator, shown in Fig. 6.
4.1. The application algorithm
Step 1. Initialize: Set all weights of NN1 to small random values, between
20.01. Set all weights of NN2 to form an SMC corrective control. Select values
for the adaptation rates as 0 < m < 1 and 0 < g < 1.
Step 2. Compute the equivalent control from NN1: Using Eqs. (22) and (23)
compute the net outputs to form the equivalent control.
Step 3. Compute the corrective control from NN2: Compute it as explained in
(17).
Step 4. Apply control to robot: Sum the estimated equivalent control and the
corrective control to form the control signal and then apply this to the robot.
Measure the angular positions and velocities of the robot.
Step 5. Update the weights of NN1: Update them as explained in (25) and (29).
Step 6. Update the weights of NN2: Update them as explained in (38) and (42).
Step 7. Repeat by going to step 2.
4.2. Robotic dynamics
The robot model is written as
_ q_ fc t
Mqq Cq, q

43

where q is the vector of joint angles. The torque vector applied to the joints are
represented by t. M is the inertia matrix. C is the vector of centripetal and coriolis
forces, and fc stands for Coulomb friction. The details of the dynamics can be

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

253

found in [38]. The model in (43) can be written in the state-space form
representation as


x_ 1
x_ 2

 

0
x2

u
M1 Cx 2 fc
M1

44

where
x 1

x 2 T q

_ T q1
q

q2

q_ 1

q_ 2 T

and

ut

Eq. (44) is in the form of (4), and the proposed method can be applied.
4.3. Experimental results
The results of the experimental studies are shown in Figs. 718, the dashed
curves of which are always related to the elbow link. The reference state trajectory
used is depicted in Fig. 7, and the related angular errors are presented in Fig. 8. It
should be pointed out that the initial condition errors are deliberately introduced
to show the system behaviour when the system is not on the sliding surface. Such
cases are shown in Figs. 9 and 10. Theoretically, when the states reach to the
origin on the phase plane, they should stay there. However, in DSP-based
sampled data applications, due to the fact that the system is an open loop for the
duration of the sampling time (2 ms is used in this paper), they deviate from the

Fig. 7. Reference angular position.

254

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

Fig. 8. Angular errors.

Fig. 9. The motion on phase plane for base.

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

Fig. 10. The motion on phase plane for elbow.

Fig. 11. The adapted parameters G1,1 and G2,2 (dashed).

255

256

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

Fig. 12. The adapted parameters G1,3 and G2,4 (dashed).

Fig. 13. The adapted parameters K1,1 and K2,2 (dashed).

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

257

Fig. 14. The adapted parameters K1,2 and K2,1 (dashed).

Fig. 15. The changes in slope 1 (dashed), S1 (solid) and e1 (dotdashed) at the initial stages (slope 1
and e1 are scaled and shifted for clarity).

258

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

Fig. 16. The changes in K1,1 (dashed) and S1 at the initial stages (K1,1 is scaled and shifted for clarity).

Fig. 17. Controller outputs.

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

259

Fig. 18. Estimated equivalent controls.

origin. When the control for the next sampling time is applied, the states again
move towards the origin. In other words, the proposed controller establishes a
stable domain of attraction around the origin.
The adapted parameters of the G matrix are presented in Figs. 11 and 12. Fig.
15 depicts the changes in slope, sliding surface variable (S ) and error (E ). It is to
be noted that the slope and E values are scaled and shifted, to be able to see on
the same gure how they change with respect to each other. It is seen that the
slope of the sliding line is decreased until the value of S goes into the boundary
layer. Obviously, this minimizes the reaching time. When S is inside the boundary
layer, the slope is increased until the error converges to zero or the E vicinity of
zero and this minimizes the sliding time.
The adapted parameters of the K matrix are presented in Figs. 13 and 14. The
change of K1,1 is detailed in Fig. 16 to show how it is adapted based on the value
of S1. The value of K1,1 is increased until S1 goes into the boundary layer. This
decreases the reaching time. When S1 is inside the boundary layer, the value of
K1,1 is decreased to decrease the excessive control activity.
The control signals that are applied to the robot are presented in Fig. 17. As
can be seen there is some ringing at the beginning. However, this is quickly
eliminated as a result of K- and G-adaptation. The equivalent control that is
estimated by NN1 is presented in Fig. 18. As is expected, it is a continuous signal.
The learning rate (m ) for NN1 is selected as 0.04.
In the adaptation process for G and K, limits are used to assure stability. The
initial, maximum and minimum values of G and K matrices are selected as below:

260

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263



20 0
1 0
100 0
Ginit
Gmax
0
20 0 1
0
100


1 0 0:5 0
Gmin
0 1 0
0:5


Kinit

400

0
135

Kmax

500

1
200

5
0

0
5

Kmin

20

1
1

The important tuning parameters in the weight adaptation of NN2 are gis that
appear in (38) and (42). When selecting a value for gi, there are two criteria:
adaptation capability and stability. While a low value causes low adaptation
capability, a high value may lead to instability. As a result, a suciently large
value that does not make the system unstable should be chosen. The results
presented in this paper are obtained by
bg1

g2

g3

g4 c 10:0

1:0

0:5

0:0001

5. Conclusions
In this paper, a Neuro-Sliding Mode Controller is proposed and experimental
results are presented. Two parallel NNs are used to realize the Neuro-SMC.
The structure of the neural network that estimates the equivalent control (NN1)
is a standard two-layer feed-forward NN with the back propagation adaptation
algorithm. The error between the desired and estimated equivalent control is
accepted as the corrective control.
The structure of the neural network for the corrective control (NN2) is such
that its weights are the gains of SMC and its outputs are the corrective control
terms that are to be added to the equivalent control. An adaptation scheme based
on gradient descent is used to adapt its weights. The aim of the adaptation is to
eliminate chattering and to reduce the error. Therefore, the cost function is
selected as the sum of squares of the corrective control and the sliding function.
In the design of a classical SMC, the controller output is obtained as the
equivalent control plus a corrective control term. The corrective control is
necessary when the system deviates from the sliding surface. This term pushes the
system back on to the sliding surface and keeps it there. Therefore, the corrective
control should be minimized when the system is in the vicinity of the sliding
surface to minimize chattering. This can be achieved by minimizing the
multiplicative gain K for the second layer. The G-adaptation eects the slope of
the sliding surface, i.e. the speed of response. The adaptation process enables one
to minimize the ``sliding time'' and the ``reaching time''.
The experimental studies have shown that the proposed Neuro-SMC has the
following advantages:

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

261

1. The learning process is on-line: learning and the calculation of the control
signal are carried out simultaneously.
2. Chattering and the excessive activity (ringing) of the control signal are
eliminated without a degradation of the trajectory following performance.
3. There is no need to compute the inertia (or inverse) matrix to estimate the
equivalent control.
4. In the case of the NN used for the computation of the corrective control, the
problem of how to choose its structure (number of layers, number of neurons
and connections) is not met, the structure is uniquely determined by the SMC
design.
5. The weights of NN used for the computation of the corrective control do not
have to be randomly initialized, the required performance from the sliding
mode controllers allows the designer to x the initial weights.
6. In neurocontroller applications, the eect of each neuron and weight is not
clear on the overall controller performance. However, in the structure of the
neural network proposed for corrective control computation, they carry clear
meanings.
7. The neuro-controller incorporates a degree of robustness, brought about by the
characteristics of SMC.
The experimental results presented in this paper indicate that the suggested
approach has considerable advantages compared to the classical one and is
capable of achieving a good chatter-free trajectory following performance without
an exact knowledge of the plant parameters. These characteristics make it a good
candidate for motion control applications.

Acknowledgements
The second author would like to acknowledge the support provided by Bogazic i
University Research Fund within the Project No: 97A0202.

References
[1] Hung JY. Variable structure control: a survey. IEEE Transactions on Industrial Electronics
1993;40(1):222.
[2] Utkin VI. Sliding modes in control optimization. Springer-Verlag, 1981.
[3] Utkin VI. Variable structure systems with sliding modes. IEEE Trans Autom Contrl 1977;ACC22(2):21222.
[4] Ertugrul M, Kaynak O, Sabanovic A, Ohnishi K. A generalized approach for Lyapunov design of
sliding mode controllers for motion control applications. In: Proceedings of the of Advanced
Motion Control Conference, 1996. p. 40712.
[5] Young KD. Variable structure control for robotics and aerospace applications. Elsevier, 1993.
[6] Zinober ASI, editor. Variable structure and Lyapunov control. Springer-Verlag, 1994.
[7] Wijesoma SW. Robust trajectory following of robots using computer torque structure with VSS,
Int J Control 1990;52(4):935962.

262

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

[8] Denker A, Kaynak O. Applications of VSC in motion control systems. In: Zinober ASI, editor.
Variable structure and Lyapunov control. Springer-Verlag, 1994. p. 36582.
[9] Zhao F, Utkin VI. Adaptive simulation and control of variable structure control systems in sliding
regimes. Automatica 1996;32(7):10371042.
[10] Slotine JJ, Li W. Applied nonlinear control. Prentice-Hall, 1991.
[11] Tzafestas SG. Neural networks in robotics: state of the art. In: IEEE International Conference on
Industrial Electronics, 1995. p. 1220.
[12] Kawato M, Uno Y, Isobe M, Suzuki RA. Hierarchical model for voluntary movement and with
application to robotics, IEEE Control System Magazine 1988;8(2):816.
[13] Fukuda T, Shibata T. Theory and applications of neural networks for industrial control systems.
IEEE Trans on Industrial Electronics 1992;39(6):47289.
[14] Barto AG [Chapter 1]. In: Neural networks for control. Cambridge, MA: MIT Press, 1999. p. 5
58 [Chapter 1].
[15] Hunt KJ, Sbarbaro D, Zbikowski R, Gawthrop PJ. Neural networks for control systems a survey. Automatica 1992;28(6):1083112.
[16] Ozaki T, Suzuki T, Furuhashi T, Okuma S, Uchikawa Y. Trajectory control of robotic manipulators using neural networks. IEEE Transactions on Industrial Electronics 1991;38(3):195202.
[17] Lippmann RP. An introduction to computing with neural nets. IEEE ASSP Magazine
1987;4(2):422.
[18] Bose NK, Liang P. Neural network fundamentals with graphs, algorithms, and applications.
McGraw-Hill, 1996.
[19] Albus J. A new approach to manipulator control: the cerebellar model articulation controller
(CMAC). J Dyn Syst Meas and Control 1975;97:220227.
[20] Psaltis D, Sideris A, Yamamura A. Neural controllers. In: Proceedings of the IEEE International
Conference on Neural Networks, 1987. p. 1721.
[21] Guez A, Ahmad Z. Solution to the inverse problem in robotics by neural networks. In:
Proceedings of the International Conference on Neural Networks, 1988. p. 61724.
[22] Elsley R. A learning architecture for control based on back-propagation neural-networks. In:
IEEE Conference on Neural Networks, 1988. p. 5847.
[23] Grossberg S, Kuperstein M. Neural dynamics of adaptive sensory-motor control. Elmsford, NY:
Pergamon Press, 1989.
[24] Fukuda T, Shibata T, Tokita M, Mitsuoka T. Neural servo controller: adaptation and learning.
In: Proceedings of the IEEE International Workshop Advanced Motion Contr., 1990. p. 10715.
[25] Bekey GA. In: Kosko B, editor. Robotics and neural networks, in neural networks for signal processing. Prentice-Hall, 1992.
[26] Narendra K, Parthasarathy K. Identication and control of dynamical systems using neural networks. IEEE Trans Neural Networks 1990;1(1):427.
[27] Tokita M, Mitsuoka T, Fukuda T, Kurihara T. Force control of robots by neural models: control
of one-dimensional manipulators. J Japan Society of Robotics Engineers 1989;8(3):529.
[28] Erbatur K, Kaynak O, Sabanovic A, Rudas I. Fuzzy adaptive sliding mode control of a direct
drive robot. Robotics and Autonomous Systems 1996;19:21522.
[29] Ertugrul M, Kaynak O. Neural network adaptive sliding mode control and its application to scara
type robot manipulator. In: Proceedings of the 1997 IEEE International Conference on Robotics
and Automation, 1997. p. 29327.
[30] Ertugrul M, Kaynak O. Neural computation of the equivalent control in sliding mode for robot
trajectory control applications. In: Proceedings of the 1998 IEEE International Conference on
Robotics and Automation, 1998. p. 20427.
[31] Ertugrul M, Kaynak O. Neuro-sliding mode control of robotic manipulators. In: Proceedings of
the IEEE 8th International Conference on Advanced Robotics, 1997. p. 9516.
[32] Parma GG, Menezes BR, Braga AP. Sliding mode algorithm for training multilayer articial
neural networks. Electronics Letters 1998;34(1):978.
[33] Jezernik K, Rodic M, Safaric R, Curk B. Neural network sliding mode robot control. Robotica
1997;15:2330.

M. Ertugrul, O. Kaynak / Mechatronics 10 (2000) 239263

263

[34] Sundareshan MK, Askew C. Neural network-assisted variable structure control scheme for control
of a exible manipulator arm. Automatica 1997;33(9):1699710.
[35] Karakasoglu A, Sundareshan MK. A recurrent neural network-based adaptive variable structure
model following control of robotic manipulators. Automatica 1995;31(10):1495507.
[36] Ramirez HS, Morles EC. A sliding mode strategy for adaptive learning in adalines. IEEE Trans
on Circuits and Systems I: Fundamental Theory and Applications 1995;42(12):100112.
[37] Ge SS, Lee TH, Harris CJ. Adaptive neural network control of robotic manipulators. World
Scientic, 1998.
[38] Direct drive manipulator R&D package User Guide. Integrated Motion Incorporated, Berkeley,
CA, 1992.