0% found this document useful (0 votes)
20 views

Fuzzyrobot 1

ddddddddddddddddd

Uploaded by

Thắng Lê
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Fuzzyrobot 1

ddddddddddddddddd

Uploaded by

Thắng Lê
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Applied Soft Computing 11 (2011) 4943–4953

Contents lists available at ScienceDirect

Applied Soft Computing


journal homepage: www.elsevier.com/locate/asoc

Adaptive fuzzy sliding mode control using supervisory fuzzy control


for 3 DOF planar robot manipulators
Ahmed F. Amer a , Elsayed A. Sallam b , Wael M. Elawady b,∗
a
Department of Electrical and Control Engineering, Arab Academy for Science and Technology, Egypt
b
Department of Computers and Control Engineering, Tanta University, Egypt

a r t i c l e i n f o a b s t r a c t

Article history: Control of an industrial robot includes nonlinearities, uncertainties and external perturbations that should
Received 23 April 2010 be considered in the design of control laws. This paper presents a control strategy for robot manipulators,
Received in revised form 3 December 2010 based on the coupling of the fuzzy logic control with the so-called sliding mode control, SMC, approach.
Accepted 10 June 2011
The motivation for using SMC in robotics mainly relies on its appreciable features, such as design sim-
Available online 17 June 2011
plicity and robustness. Yet, the chattering effect, typical of the conventional SMC, can be destructive. In
this paper, this problem is suitably circumvented by adopting an adaptive fuzzy sliding mode control,
Keywords:
AFSMC, approach with a proportional-integral-derivative, PID sliding surface. For this proposed approach,
Fuzzy control
Robots
we have used a fuzzy logic control to generate the hitting control signal. Moreover, the output gain of
Sliding mode control (SMC) the fuzzy sliding mode control, FSMC, is tuned on-line by a supervisory fuzzy system, so the chatter-
Uncertainties ing is avoided. The stability of the system is guaranteed in the sense of the Lyapunov stability theorem.
Numerical simulations using the dynamic model of a 3 DOF planar rigid robot manipulator with uncer-
tainties show the effectiveness of the approach in trajectory tracking problems. The simulation results
that are compared with the results of conventional SMC with PID sliding surface indicate that the control
performance of the robot system is satisfactory and the proposed AFSMC can achieve favorable tracking
performance, and it is robust with regard to uncertainties and disturbances.
© 2011 Elsevier B.V. All rights reserved.

1. Introduction Also the implementation also requires a precise knowledge of the


structure of the dynamic model. Generally, uncertainties may not
Motion control of rigid robot manipulators is a difficult task, be known in practical robotic systems such as changing payload,
mainly because of the nonlinearities and the coupling effects typical nonlinear friction, unknown disturbance, and the high-frequency
of robotic systems [26]. Different approaches have been followed part of the dynamics. Therefore, it is necessary to consider these
in order to cope with this problem, such as, for instance, feed- effects containing both structured uncertainties (parametric) and
back linearization [2,3], model predictive control [1,8], and sliding unstructured uncertainties (un-modeled dynamics).
mode control [10,24]. In the robotics context, feedback lineariza- Sliding mode control (SMC) is one of the effective nonlinear
tion is accomplished by the so-called inverse dynamics control [13]. robust control approaches since it provides system dynamics with
In [5,15], a computed torque control is developed on the basis of an invariance property to uncertainties once the system dynamics
the feedback linearization. However, these designs are possible are controlled in the sliding mode [5,9,11,16,17,20]. The first step
only when the dynamics of the robotic dynamic are well known. of SMC design is to select a sliding surface that models the desired
The adaptive control schemes can be employed to deal with the closed-loop performance in state variable space. In the second step,
unknown robotic dynamics [27]. In these approaches, the linear design a hitting control law such that the system state trajectories
parameterizations must be assumed, i.e., the unknown parameters are forced toward the sliding surface and stay on it. The system state
must be of linear structure. Moreover, the unknown parameters are trajectory in the period of time before reaching the sliding surface
assumed to be constant or slowly varying. However, as the robotic is called the reaching phase. Once the system trajectory reaches
dynamic systems are nonlinear, highly coupled, and time varying, the sliding surface, it stays on it and slides along it to the origin.
the linear parameterization property may not be applicable [27]. The system trajectory sliding along the sliding surface to the origin
is the sliding mode. Under certain conditions, the SMC is robust
with respect to system perturbation and external disturbance
∗ Corresponding author. Tel.: +20 0105048674; fax: +20 02035620976. [6,9]. However, this control strategy produces some drawbacks
E-mail addresses: [email protected] (A.F. Amer), sallam [email protected] associated with large control chattering that may wear coupled
(E.A. Sallam), [email protected] (W.M. Elawady). mechanisms and excite undesirable high-frequency dynamics.

1568-4946/$ – see front matter © 2011 Elsevier B.V. All rights reserved.
doi:10.1016/j.asoc.2011.06.005
4944 A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953

Several methods of chattering reduction have been reported. the dynamic friction coefficient matrix and static friction vector,
One approach [m6] places a boundary layer around the switching respectively; d (q, q̇) is the vector of disturbances and un-modeled
surface such that the relay control is replaced by a saturation func- dynamics;  is the control vector representing the torque exerting
tion. Another method [21] replaces a max–min-type control by a on joints.
unit vector function. These approaches, however, provide no guar- Eq. (1) can be written as:
antee of convergence to the sliding mode and involve a tradeoff
q̈ = −B−1 (q)C(q, q̇)q̇ − B−1 (q)g(q) − d(t) + B−1 (q) (2)
between chattering and robustness. Continuous SMC can exponen-
−1
tially drive the system state to a chattering-free sliding mode but where d(t) = B(q) (Fd q̇ + Fs q̇) + d (q, q̇)) represents external load
tends to produce conservative designs. Reduced chattering may be disturbance, nonlinear friction, and un-modeled dynamics. From
achieved without sacrificing robust performance by combining the (2), the dynamic equations for an n-link robot are written as:
attractive features of fuzzy control with SMC [18,22,25]. Recently,
q̈ = −Dq̇ − Eg(q) − d(t) + Fu(t) (3)
Fuzzy SMC (FSMC) has also been used for this purpose, which is
shown to be quite effective. Fuzzy logic, first proposed by Zadeh where D = B−1 (q)C(q, q̇), E = F = B−1 (q),
and u(t) =  is the control
[12], has proven to be a potent tool for controlling ill-defined or vector. If some uncertainties representing parameter variations,
parameter-variant plants. By encapsulating heuristic engineering D, F and E are assumed to be present on the system, Eq. (3)
rules a fuzzy logic controller can cope well with severe uncertain- can be rearranged as:
ties, although a heavy computational burden may arise with some
implementations. Fuzzy schemes with explicit expressions for tun- q̈ = −(D + D)q̇ − (E + E)g(q) − d(t) + (F + F)u(t) (4)
 
ing can avoid this problem [19]. The control methodology proposed where the uncertainties are bounded such that Dl ≤ D ≤
   
Dh , El ≤ E  ≤ Eh and Fl ≤ F  ≤ Fh , and the sub-
here is a computational-intelligence approach to some of the engi-
neering problems associated with sliding-mode controllers.
scripts l and h denote lower and upper uncertainty values.
This paper discusses the design of an adaptive fuzzy sliding
mode controller with PID sliding surface incorporating fuzzy tun-
3. Sliding mode controller with PID sliding surface
ing techniques to achieve reduced chatter and system robustness
against parameter uncertainty, load disturbance, and nonlineari-
It is known that the crucial and the most important step of slid-
ties.
ing mode control (SMC) design is the construction of the sliding
In this paper, a novel control algorithm is developed by com-
surface s(t) which is expected to response desired control speci-
bining the fuzzy approach with the PID sliding mode control
fications and performance [7]. The trajectories are enforced to lie
method. The proposed method combines the adaptive fuzzy algo-
on the sliding surfaces. The sliding proportional-integral-derivative
rithm and robust control technique to guarantee a robust tracking
PID surface in the space of tracking error can be defined as [7]:
performance for uncertain robotic system. It is proved that the 
closed-loop system is globally stable in the Lyapunov sense if all the d
s(t) = Kp e(t) + Ki e()d + Kd e(t) (5)
signals are bounded and the system output can track the desired dt
reference output asymptotically with modeling uncertainties and
where Kp is n × n positive proportional gain matrix, Ki is n × n pos-
disturbances.
itive integral gain matrix, and Kd is n × n positive derivative gain
The proposed control algorithm is applied to a 3 DOF pla-
matrix parameters to be selected. For 3 DOF robot manipulator, n = 3
nar manipulator arm through simulations. The simulation results
and Kp = diag {kp1 , kp2 , kp3 }, Kd = diag {kd1 , kd2 , kd3 } and Ki = diag {ki1 ,
indicate that the control performance of the robot system is sat-
ki2 , ki3 }, and e(t) = qd (t) − q(t) is the tracking position error, in which
isfactory. The chattering phenomenon is handled by the use of a
qd (t) is the desired trajectory.
fuzzy control replaced with a pure sign function in the control
The purpose of sliding mode control law is to force tracking error
law. The proposed approach is compared with the existing con-
e(t) to approach the sliding surface and then move along the sliding
ventional sliding mode controllers for robot manipulators in terms
surface to the origin. Therefore it is required that the sliding sur-
of advantages and control performances. A comparative analysis
face is stable, which means lim e(t) = 0; then the error will die out
with a plenty of simulation results soundly confirmed that the per- t→∞
formance of developed variable structure PID controller is better asymptotically. This implies that the system dynamics will track the
under than those of an existing variable structure controller with desired trajectory asymptotically [7]. Take the derivative of sliding
PID-sliding surface. The remainder of this paper is organized as fol- surface with respect to time and use (4), then
lows: Section 2 presents the characteristics of a dynamical model
ṡ(t) = Kp ė(t) + Ki e(t) + Kd ë(t) = Kp ė + Ki e + Kd [q̈d + (D + D)q̇
of the robot, Section 3 presents the characteristics of a SMC with
PID sliding surface, Section 4 presents the FSMC, Section 5 presents + (E + E)g(q) − (F + F)u(t) + d(t)] (6)
the AFSMC, Section 6 presents the simulation results, and Section
The control effort being derived as the solution of ṡ(t) = 0 with-
7 summarizes the conclusions and contributions of the works.
out considering uncertainty (d(t) = 0) is to achieve the desired
performance under nominal model, and it is referred to as equiva-
2. Description of robot manipulator model lent control effort [10,19], represented by ueq (t)

The basics of robot dynamics and control are sufficiently well ueq (t) = (Kd F)−1 [Kp ė + Ki e + Kd q̈d + Kd Dq̇ + Kd Eg(q)] (7)
known by now that we will be brief in our derivation of the control However, if unpredictable perturbations from the parameter
algorithm. Thus, given the Euler-Lagrange dynamic equations for variations or external load disturbance occur, the equivalent con-
an n-link robot [15] trol effort cannot ensure the favorable control performance. Thus,
auxiliary control effort should be designed to eliminate the effect of
B(q)q̈ + C(q, q̇)q̇ + Fd q̇ + Fs (q̇) + d (q, q̇) + g(q) =  (1)
the unpredictable perturbations [23]. The auxiliary control effort is
where q, q̇, q̈ ∈ Rn are the joint position, velocity, and accel- referred to as reaching control effort represented by ur (t). For this
eration vectors, respectively; B(q) denotes the bounded positive purpose, the Lyapunov function can be chosen as:
definite inertia matrix; C(q, q̇) expresses the coriolis, centripetal 1 T
• V (t) = s (t)s(t) (8)
matrix; g(q) is the gravity vector; Fd ∈ Rn×n and Fs (q) ∈ Rn represent 2
A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953 4945

Equivalent
Control
e(t )
d ueq (t )
dt •
e(t )
Kp
ueq (t)

qd + e(t ) d
+
+
s (t )
+
u r (t ) + u (t ) q
− Kd sign(s ) Kr Manipulator q
dt +

Ki
∫ dt

Fig. 1. Block diagram of the sliding mode control with PID sliding surface.

with V(0) = 0 and V(t) > 0 for s(t) =


/ 0. A sufficient condition to guar- be satisfied. It will cause the controlled system to be unstable [23].
antee that the trajectory of the tracking position error will translate The finite time delays for the control computation and limitations of
from reaching phase to sliding phase is to select the control strategy, practical control systems render the implementation of such con-
also known as the reaching condition [7]: trol signals. In other words, the sign function in overall control will
cause the control input to produce the chattering phenomenon. In
V̇ (t) = sT (t)ṡ(t) < 0, s(t) =
/ 0 (9)
the current study, this problem is resolved through the application
To satisfy the reaching condition, the equivalent control ueq (t) of a fuzzy control scheme to determine an appropriate reaching
given in Eq. (7) is augmented by a hitting control term ur (t). Totally, law.
the SMC law can be represented as:
4. Fuzzy sliding mode control
u(t) = ueq (t) + ur (t) (10)

The block diagram of the sliding mode control with PID sliding Fuzzy control (FC) has supplanted conventional technologies in
surface is shown in Fig. 1. many applications [14]. One major feature of fuzzy logic is its ability
To obtain the reaching control signal ur (t), Eq. (9) is rewritten to express the amount of ambiguity in human thinking. Thus, when
as:
sT ṡ = sT (Kp ė + Ki e + Kd ë) = s{Kp ė + Ki e + Kd [q̈d − q̈]}
= sT {Kp ė + Ki e + Kd [q̈d + (D + D)q̇ + (E + E)g(q) − (F + F)(ueq (t) + ur (t)) + d(t)]}
(11)
= sT {Kp ė + Ki e + Kd q̈d + Kd Dq̇ + Kd Dq̇ + Kd Eg(q) + Kd Eg(q) + Kd d(t)}

−sT Kd (F + F) × (Kd F)−1 (Kp ė + Ki e + Kd q̈d + Kd Dq̇ + Kd Eg(q) + ur )

Simplifying Eq. (11) results in

sṡ = sT {Kd [(D − F −1 DF)q̇ + (E − F −1 EF)g(q) + d(t)] − F −1 F(Kp ė + Ki e + Kd q̈d )} − sT Kd (F + F)ur
              (12)
= sT {Kd [(D − F −1 DF) q̇ + (E − F −1 EF) g(q) + d(t)] − F −1 F  (Kp ė + Ki |e| + Kd q̈d )} − sT Kd (F + F)ur

To ensure Eq. (12) is less than zero, sṡ < 0, the reaching control
law should be selected as:
     
{[(Dh − F −1 DFl ) q̇ + (Eh − F −1 EFl ) g(q)
−1
ur (t) = sign(s)[Kd (F + Fl )]
        (13)
+Kd d(t)] − F −1 Fh  (Kp ė + Ki |e| + Kd q̈d )}

Obviously, substituting Eq. (13) into Eq. (12) we can find that V̇ (t) < the mathematical model of the process does not exist, or exists
0, i.e., the reaching control actually achieves a stable sliding mode but with uncertainties, FC is an alternative way to deal with the
control system. unknown process. However, the huge number of fuzzy rules for
The reaching control signal, in conventional, ur (t) is given as high-order systems makes the analysis complex. Therefore, much
follows: attention has been focused on the fuzzy sliding mode control FSMC
[4,14].
ur (t) = Kr sign[s(t)] (14)
As reported in [4,14], in this paper, in order to eliminate the chat-
where Kr = diag {kr1 , kr2 , . . . . . . krn } represents reaching control gain tering problem, a fuzzy inference engine is used for reaching phase
concerned with the upper bound of uncertainties, and sign[.] is a and fuzzy sliding mode control methodology is proposed. The main
sign function. However, the upper bound of uncertainties, which is advantage of this method is that the robust behavior of the system
required in the conventional SMC system, is difficult to obtain pre- is guaranteed. The second advantage of the proposed scheme is that
cisely in advance for practical applications. If the bound is selected the performance of the system in the sense of removing chattering
too large, the sign function of the reaching control law will result is improved in comparison with the same SMC technique without
in serious chattering phenomena in the control efforts. The unde- using FC [14]. The configuration of our fuzzy sliding mode control
sired chattering control efforts will wear the bearing mechanism (FSMC) scheme is shown in Fig. 2; it contains an equivalent con-
and might excite unstable system dynamics. On the other hand, if trol part and a two- input single-output FSMC in which Mamdani’s
the bound is selected too small, the stability conditions may not fuzzy inference method is used.
4946 A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953

Equivalent
Control
e(t )
d ueq (t )
dt •
e(t )
Kp
u eq •

qd + e(t ) d
+
+
s (t ) u r + u (t ) q
Kd Kf + Manipulator q
dt + d FSMC
u f (t )
dt s• (t )
Ki ∫ dt

S (7) FSMC

(mamdani)

49 rules
Hitting control (7)

dS (7)

System FSMC: 2 inputs, 1 outputs, 49 rules

Fig. 2. Block diagram of the fuzzy sliding mode control with PID sliding surface.

The reaching law is selected as: tively. They are decomposed into seven fuzzy partitions expressed
as NB (Negative Big), NM (Negative Medium), NS (Negative Small),
ur (t) = Kf uf (t) (15)
Z (Zero), PS (Positive Small), PM (Positive Medium) and PB (Positive
where Kf is the normalization factor of the output variable, and Big). The fuzzy control surface of the output uf (t) is shown in Fig. 5.
uf (t) is the output of the FSMC, which is determined by the normal- The fuzzy rules are extracted in such a way that the stability of the
ized s(t) and ṡ(t). The fuzzy control rules can be represented as the system would be satisfied and these rules contain the input–output
mapping of the input linguistic variables s(t) and ṡ(t) to the output relationships that define the control strategy. These linguistic fuzzy
linguistic variable uf (t) as follows [14]: rules are defined heuristically in the following form [12]:

uf (t) = FSMC(s(t), ṡ(t)) (16)


R(l) ::IF s(t) is Al1 and ṡ(t) is Al2 THEN uf (t) is Bl
where FSMC(s(t), ṡ(t)) denotes the functional characteristics of the
fuzzy linguistic decision schemes. The membership function of where Al1 and Al2 are the labels of the input fuzzy sets. Bl is the labels
input linguistic variables s(t) and ṡ(t) and the membership functions of the output fuzzy sets. l = 1, 2, . . . . . . , m denotes the number of
of output linguistic variable uf (t) are shown in Figs. 3 and 4, respec- the fuzzy IF-THEN rules. For the fuzzy implication, the intersection

NB NM NS Z PS PM PB NB NM NS Z PS PM PB
1 1
Degree of membership
Degree of membership

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Sliding surface s(t) Sliding surface s(t)

(a) s(t) (b) s(t)

Fig. 3. Fuzzy sets of sliding surface s(t) and derivative of sliding surface ṡ(t).
A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953 4947

NB NM NS Z PS PM PB Eq. (4) can be rearranged as:


1
q̈ = −Dq̇ − Eg(q) + Fu(t) − Dq̇ − Eg(q) − d(t) + Fu(t)

= −Dq̇ − Eg(q) + Fu(t) − L(t) (20)


Degree of membership

0.8

where L(t) = Dq̇ + Eg(q) + d(t) − Fu(t)


0.6 Eq. (19) is analyzed as:

V̇ = sT ṡ = sT (Kp ė + Ki e + Kd ë) = s{Kp ė + Ki e + Kd [q̈d − q̈]}


0.4
= sT {Kp ė + Ki e + Kd [q̈d + Dq̇ + Eg(q) − F(ueq (t) + ur (t)) + L(t)]}

(21)
0.2
Substituting the equivalent control from Eq. (7), Eq. (21)
becomes:
0
V̇ = sT ṡ = sT (Kp ė + Ki e + Kd ë) = s{Kp ė + Ki e + Kd [q̈d − q̈]}
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Reaching control = sT {Kp ė + Ki e + Kd [q̈d + Dq̇ + Eg(q)
−1
−F(((Kd F) [Kp ė + Ki e + Kd q̈d + Kd Dq̇ + Kd Eg(q)]) + ur (t)) + L(t)]}
Fig. 4. Fuzzy sets of reaching control uf (t).
= s {Kp ė + Ki e + Kd [q̈d + Dq̇ + Eg(q)]
T (22)
−1
−Kd F(((Kd F) [Kp ė + Ki e + Kd q̈d + Kd Dq̇ + Kd Eg(q)]) + ur (t)) + Kd L(t)]}
= sT {Kp ė + Ki e + Kd [q̈d + Dq̇ + Eg(q)]
−([Kp ė + Ki e + Kd q̈d + Kd Dq̇ + Kd Eg(q)] + ur (t)) + Kd L(t)]}
Reaching control

0.5
Simplifying Eq. (22) results in

0 V̇ = sT ṡ = sT {Kd L(t) − ur } = sT {Kd L(t) − Kf FSMC (s(t), ṡ(t))} (23)

The output fuzzy sets are normalized


 in the interval

-0.5 (−1, 1), then uf = FSMC (s(t), ṡ(t)) ≤ 1 and sT (t) uf (t) =
    
s(t) FSMC(s(t), ṡ(t)) ≤ s(t). Therefore, Eq. (23) becomes
1    
0.5 1 V̇ = sT ṡ = Kd L(t) |s| − Kf |s| = {Kd L(t) − Kf } |s| (24)
0 0.5  
-0.5 -0.5
0
So if we select Kf > Kd L(t), one can conclude that the reaching
Derivative of sliding surface -1 -1 condition V̇ = sT ṡ < 0 is always satisfied. Thus the closed loop sys-
Sliding surface s(t)
tem is asymptotically stable and the error state trajectory converges
Fig. 5. Control surface of uf (t). to the sliding surface s(t) = 0.

minimum operation has been used, the center average defuzzifica-


5. Adaptive fuzzy sliding mode controller
tion process has been selected. The fuzzy rule table is designed as
in Table 1 [4].
FC usually embeds the intuition and experience of a human
Totally, the FSMC law can be represented as:
operator. Recently it has been used in the form of supervisor for a
u(t) = ueq (t) + ur (t) = ueq (t) + Kf uf (t) number of applications. In this section, the fuzzy sliding mode con-
troller (FSMC) with varying control gain is presented. The general
= ueq (t) + Kf FSMC (s(t), ṡ(t)) (17) structure of the proposed controller is given in Fig. 6. Specifically, a
supervisory fuzzy inference system is used to adaptively tune the
The stability of the robotic system, represented by Eq. (4), reaching control gain Kf in order to improve the performance of the
controlled by u(t) in (17), where the equivalent control part controller.
ueq (t) is in (7), is proved by using the Lyapunov function can be The supervisory fuzzy system of the proposed tuning method
chosen as: contains operator knowledge in the form of IF-THEN rules to
1 T decide the control gain Kf according to the current operating
V (t) = s (t)s(t) (18) conditions of the controlled system. Here, the control rules of
2
the supervisory fuzzy system are developed with the error e and
V̇ (t) = sT (t)ṡ(t) (19) derivative of error ė as a premise, and Kf = diag {kf1 , kf2 , . . . . . . kfn }
as a consequent of each rules. The triangle shape membership
Table 1 functions with 50% of overlapping for the inputs and outputs fuzzy
Rule matrix of FSMC. variables are considering as shown in Figs. 7–10 shows the fuzzy
uf (t) s(t) control surface of Kf . This surface has been used to adaptively tune
Kf = diag {kf1 , kf2 , . . . . . . kfn } on line. The physical domain of the
ṡ(t) NB NM NS Z PS PM PB
inputs (e, ė) is in the range {−0.01, 0.01} and that of the output
NB NB NB NB NB NM NS Z (Kf = diag {kf1 , kf2 , kf3 }, for 3 DOF, n = 3) is in the range {4000,
NM NB NB NB NM NS Z PS
NS NB NB NM NS Z PS PM
7500}, respectively, selected based on trial and error approach.
Z NB NM NS Z PS PM PB The fuzzy variables are defined for the rule base as, (e, ė) =
PS NM NS Z PS PM PB PB {NB(Negative Big), NM(Negative Medium), NS(Negative Small),
PM NS Z PS PM PB PB PB Z(Zero), PS(Positive Small), PN(Positive Medium), PB(Positive Big)};
PB Z PS PM PB PB PB PB
(Kf ) = {VVS (Very Very Small), VS (Very Small), S (Small), M
4948 A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953

Equivalent
Control
e(t )
d ueq (t )

dt e(t )
Kp
ueq (t )

+
+ e(t ) d s (t ) ur (t ) +u (t ) q
qd +
Kf
Kd + Manipulator q
dt + d FSMC
dt s• (t )
Ki ∫ dt
e (t )
Supervisory
d Fuzzy
dt • Controller
e(t )

control gain
e (7) Kf

(mamdani)

49 rules
control gain Kf (7)

de (7)

System control gain: 2 inputs, 1 outputs, 49 rules

Fig. 6. Block diagram of the adaptive fuzzy sliding mode control with PID sliding surface.

(Medium), B (Big), VB (Very Big) and VVB (Very Very Big). A typical tion has been used for the fuzzy implication, and center average
fuzzy control rule of the proposed supervisory fuzzy control is defuzzification method is used to compute the crisp value of the
expressed as: outputs.

R(i) ::IF e(t) is E1i and ė(t) is E2i THEN Kf is Gi


6. Simulation results
where E1i and E2i are the labels of the input fuzzy sets. Gi is the labels
of the output fuzzy sets. i = 1, 2, . . . . . . , p denotes the number of the The proposed AFSMC was tested for the control of 3 DOF rigid
fuzzy IF-THEN rules. The linguistic fuzzy rules of the supervisory three link manipulator shown in Fig. 11. The equations of motion
fuzzy system are given in Table 2. Intersection minimum opera-

NB NM NS Z PS PM PB
NB NM NS Z PS PM PB 1
1
Degree of membership
Degree of membership

0.8
0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0

-0.01 -0.008 -0.006 -0.004 -0.002 0 0.002 0.004 0.006 0.008 0.01 -0.01 -0.008 -0.006 -0.004 -0.002 0 0.002 0.004 0.006 0.008 0.01
Error Rate of error

Fig. 7. Membership function of error. Fig. 8. Membership function of change of error.


A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953 4949

VVS VS S M B VB VVB and dynamical parameters of the arm are shown in Appendix A. All
1 simulations are carried out using MATLAB 7.01.
Uncertainties representing the dynamic effects as nonlinear vis-
0.8
cous and static frictions, small joint and link elasticity, backlash and
Degree of membership

bounded torque disturbances by the terms in Eq. (1) are given by:
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤
0.6 fd q̇1 5q̇1 fs sign(q̇1 ) 5sign(q̇1 )
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
Fd q̇ = ⎣ fd q̇2 ⎦ = ⎣ 5q̇2 ⎦ Fs (q̇) = ⎣ fs sign(q̇2 ) ⎦ = ⎣ 5sign(q̇2 ) ⎦
0.4
fd q̇3 5q̇3 fs sign(q̇3 ) 5sign(q̇3 )

0.2
20 + 20 sin(20(t − 1)) + 30 sin(10(t − 0.5)) + 20u(t − 0.5) + 20u(t − 1)

0 d = 20 + 20 sin(20(t − 1)) + 30 sin(10(t − 0.5)) + 20u(t − 0.5) + 20u(t − 1)


20 + 20 sin(20(t − 1)) + 30 sin(10(t − 0.5)) + 20u(t − 0.5) + 20u(t − 1)
4000 4500 5000 5500 6000 6500 7000 7500
Reaching control gain In order to show the effectiveness of the proposed approach,
two simulations are performed:
Fig. 9. Membership functions of Kf .

6.1. Tracking control of high speed trajectory

The desired trajectory used here is given as: qd (t) = 1 − cos(t),


Reaching control gain

7000
0 ≤ t ≤ 4. The parameters of the PID sliding surface are
6500
Kp = diag 300, 300, 300 , Ki = diag 250, 250, 250 , and
6000
Kd = diag 20, 20, 20 . For the conventional SMC, the hitting
5500
control gain Kr is set as: Kr = diag 15000, 15000, 15000 .
5000 For the FSMC, the hitting control gain Kf is set as: s
4500 Kf = diag 5000, 5000, 5000 . For the AFSMC, the range of
0.01 the output gain Kf = diag {kf1 , kf2 , kf3 } is (4000, 7500). Figs. 12–14
0.005 0.01 show the trajectory tracking for joints 1, 2, and 3, respectively.
0 0.005 Fig. 15 shows the joint tracking position error profile for joints 1, 2,
0
-0.005 -0.005 and 3, respectively. Performance indices of integral absolute error
-0.01 -0.01
Rate of error Error (IAE) and integral time multiplied absolute error (ITAE) are used
for comparison. The values of different errors for various control
Fig. 10. Fuzzy control surfaces of Kf . strategies and various joints are tabulated in Table 3.

Table 2
Rule matrix of supervisory fuzzy control. 6.2. Pick and place task
Kf e(t)
• The desired joint angle function is chosen as:
e(t) NB NM NS Z PS PM PB
qd (t) = 2 + (− 1 + tan h(10cos(0.25t))), 0 ≤ t ≤ 12sec. This function
NB M S VS VVS VS S M is a pick-and-place type task that is widely used in indus-
NM B M S VS S M B trial applications. The parameters of the PID sliding surface
NS VB B M S M B VB
Z VVB VB B M B VB VVB
are set as: Kp = diag 20, 20, 20 , Ki = diag 15, 15, 15 , and
PS VB B M S M B VB Kd = diag 5, 5, 5 . For the conventional SMC, the hitting control
PM B M S VS S M B
PB M S VS VVS VS S M
gain Kr is set as: Kr = diag 20000, 20000, 20000 . For the FSMC,
the hitting control gain Kf is set as: Kf = diag 5500, 5500, 5500 .
For the AFSMC, the range of the output gain Kf = diag {kf1 , kf2 , kf3 }
is (4000, 7500). Fig. 16 shows the position for joints 1, 2, and 3,
respectively. Fig. 17 shows the position error profile for joints 1, 2,
and 3, respectively. The values of different errors for three joints
τ3 are tabulated in Table 4.
θ3 From the simulation results, it is concluded that our proposed
AFSMC showed superior performance for each of the three joints.
Tables 1 and 2 reiterate this claim with the help of performance
indices calculated for each of the competing controllers for each
τ2 joint. For the AFSMC, it is observed that both (IAE) and (ITAE), for
θ2 the three joints are considerably reduced in magnitude than the
τ1 other conventional method dealt with in this paper. Simulation
results show that the proposed AFSMC has faster tracking with
θ1 smaller error values than both conventional SMC and FSMC. It is
observed that the proposed AFSMC has the smallest IAE and ITAE
performance indices among the other controllers, which proves the
Fig. 11. Rigid three link robot manipulator. efficiency of the proposed controller.
4950 A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953

2
Desired trajectory
1.8 2.015 SMC with PID sliding surface
Trajectory of joint 1 (rad.)

Trajectory of joint 1 (rad.)


FSMC with PID sliding surface
1.6 2.01
AFSMC with PID sliding surface

1.4 2.005

1.2 2

1 1.995

0.8 1.99

0.6 1.985

1.98
0.4
1.975
0.2
1.97
0
0 0.5 1 1.5 2 2.5 3 3.5 4 0.96 0.97 0.98 0.99 1 1.01 1.02 1.03 1.04 1.05
Time t (sec.) Time t (sec.)

Fig. 12. Trajectory of joint 1.

2
Desired trajectory
2.015
1.8 SMC with PID sliding surface

Trajectory of joint 2 (rad.)


Trajectory of joint 2 (rad.)

2.01 FSMC with PID sliding surface


1.6 AFSMC with PID sliding surface
2.005
1.4
2
1.2
1.995
1
1.99
0.8
1.985
0.6
1.98
0.4
1.975
0.2
1.97
0
0 0.5 1 1.5 2 2.5 3 3.5 4 0.96 0.97 0.98 0.99 1 1.01 1.02 1.03 1.04 1.05
Time t (sec.) Time t (sec.)

Fig. 13. Trajectory of joint 2.

2
2.01
Desired trajectory
1.8 SMC with PID sliding surface
2.008
Trajectory of joint 3 (rad.)

Trajectory of joint 3 (rad.)

FSMC with PID sliding surface


1.6 AFSMC with PID sliding surface
2.006
1.4
2.004
1.2
2.002
1 2
0.8 1.998
0.6 1.996
0.4 1.994
0.2 1.992

0
0 0.5 1 1.5 2 2.5 3 3.5 4 0.98 0.985 0.99 0.995 1 1.005 1.01 1.015
Time t (sec.) Time t (sec.)

Fig. 14. Trajectory of joint 3.

Table 3
Performance comparison of the controllers for the trajectory tracking control.

Algorithm IAE ITAE

Joint 1 Joint 2 Joint 3 Joint 1 Joint 2 Joint 3

Conventional SMC 3.92 3.62 5.01 16.81 11.41 17.4


FSMC 0.54 0.54 0.54 2.51 2.52 2.52
AFSMC 0.17 0.16 0.17 0.76 0.74 0.75
A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953 4951

-3 -3
x 10 x 10
6 SMC with PID sliding surface 6 SMC with PID sliding surface
FSMC with PID sliding surface FSMC with PID sliding surface

Tracking error of joint 2 (rad.)


5 5

Tracking error of joint 1 (rad.)


AFSMC with PID sliding surface AFSMC with PID sliding surface
4 4

3 3

2 2

1 1

0 0

-1 -1

-2 -2

-3 -3

-4 -4
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
Time t (sec.) Time t (sec.)
(a) Joint 1 (b) Joint 2
-3
x 10
8
SMC with PID sliding surface
FSMC with PID sliding surface
Tracking error of joint 3 (rad.)

6 AFSMC with PID sliding surface

-2

-4

-6

-8
0 0.5 1 1.5 2 2.5 3 3.5 4
Time t (sec.)
(c) Joint 3

Fig. 15. Trajectory tracking error of joints 1, 2, and 3.

3 3
Desired Position Desired position
SMC with PID sliding surface SMC with PID sliding surface
2.5 2.5 FSMC with PID sliding surface
FSMC with PID sliding surface
AFSMC with PID sliding surface AFSMC with PID sliding surface
Position of joint 1 (rad.)

Position of joint 2 (rad.)

2 2

1.5 1.5

1 1

0.5 0.5

0 0

-0.5 -0.5
0 2 4 6 8 10 12 0 2 4 6 8 10 12
Time t (sec.) Time t (sec.)
(a) Joint 1 (b) Joint 2
3
Desired position
SMC with PID sliding surface
2.5
Position of joint 3 (rad.)

FSMC with PID sliding surface


AFSMC with PID sliding surface
2

1.5

0.5

-0.5
0 2 4 6 8 10 12
Time t (sec.)

(c) Joint 3

Fig. 16. Position of joints 1, 2, and 3.


4952 A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953

2 2
SMC with PID sliding surface SMC with PID sliding surface

Position error of joint 1 (rad.)

Position error of joint 2 (rad.)


FSMC with PID sliding surface FSMC with PID sliding surface
AFSMC with PID sliding surface AFSMC with PID sliding surface
1.5 1.5

1 1

0.5 0.5

0 0

-0.5 -0.5
0 2 4 6 8 10 12 0 2 4 6 8 10 12
Time t (sec.) Time t (sec.)
(a) Joint 1 (b) Joint 2

2
SMC with PID sliding surface
FSMC with PID sliding surface
Position error of joint 3 (rad.)

AFSMC with PID sliding surface


1.5

0.5

-0.5
0 2 4 6 8 10 12
Time t (sec.)
(c) Joint 3

Fig. 17. Position error of joints 1, 2, and 3.

Table 4
Performance comparison of the controllers for the pick-place task.

Algorithm IAE ITAE

Joint 1 Joint 2 Joint 3 Joint 1 Joint 2 Joint 3

Conventional SMC 1395.7 1194 1336.7 3235.9 1829.9 2293


FSMC 723.8 725.8 728.6 508.8 531.9 552.2
AFSMC 446.6 452.3 461.4 298.7 360.3 420.8

7. Conclusion schemes are inadequate. The performance noticed for conventional


controllers is not very appreciable.
The present paper has described the development of an adaptive Generally speaking, it can be said that the performance of
fuzzy sliding mode control (AFSMC) where it has been success- Adaptive Fuzzy Inference System based controller is better than
fully applied for the motion control of robot manipulators. The the conventional approach in the control of robot manipulators.
proposed robust non-chattering AFSMC based on the fuzzy con- Simulation results showed the effectiveness of the proposed con-
trol (FC) scheme possesses great benefit in practical applications. trol methodology. It has been verified that the proposed fuzzy logic
It takes the advantages of robustness of SMC and chattering elimi- sliding mode controllers have superior tracking performance with
nation of FC. In order to improve the performance of the FSMC, the robust characteristics to simple sliding mode controller.
hitting control gain was tuned on-line according to error states of
the system by a supervisory fuzzy controller. Appendix A. Dynamics of three link robot:
The proposed method does not require the bounds of uncer-
tainty and disturbance of the system; meanwhile, the chattering The general form of the robot arm dynamic equation is
phenomenon that frequently appears in the conventional SMC is
B(q)q̈ + C(q, q̇)q̇ + Fd q̇ + Fs (q̇) + d (q, q̇) + g(q) = i = u(t)
also eliminated without deteriorating the system robustness. The
proposed approach could also prove a success in a challenging where q, q̇, q̈ ∈ Rn are the joint position, velocity, and accelera-
domain of robot manipulators where the dynamics for each link is tion vectors, respectively; B(q) denotes the inertia matrix; C(q, q̇)
expressed by complex, nonlinear, time varying, coupled differential expresses the coriolis, centripetal matrix; g(q) is the gravity vector;
equations. In situations where there is precise tracking of fast tra- Fd q̇, Fs (q̇) ∈ Rn×n represent the dynamic friction coefficient matrix
jectories for non-linear systems with high nonlinearities and large and static friction vector, respectively; d (q, q̇) is the vector of
uncertainties, the existing conventional sliding mode control (SMC) disturbances and un-modeled dynamics; ␶ is the control vector rep-
A.F. Amer et al. / Applied Soft Computing 11 (2011) 4943–4953 4953

resenting the torque exerting on joints. For the rigid three degree A.3. Gravity matrix
of freedom planar robot manipulator all matrices for robot are the
order of three by three. These equations are listed below
g1 (q) = (ml1 l1 + ml2 a1 + mm2 a1 + ml3 a1 + mm3 a1 )gc1
T T
T = [1 2 3 ] = qT
= [q1 q2 q3 ] + (ml2 l2 + ml3 a2 + mm3 a2 )gc12 + ml3 l3 gc123
c1 = cos 1 c12 = cos(1 + 2 ) c123 1 + 2 + 3 )
s1 = sin 1 s12 = sin(1 + 2 ) s123 = sin(1 + 2 + 3 ) g2 (q) = (ml2 l2 + ml3 a2 + mm3 a2 )gc12 + ml3 l3 gc123 ,

g3 (q) = ml3 l3 gc123


A.1. Inertia matrix
⎡ ⎤
b11 b12 b13 In the above equations, l1 = l2 = l3 = 0.5 represent the distances
B(q) = ⎣ b21 b22 b23 ⎦ , b12 = b21 , b31 = b13 , b32 = b23 of the centers of mass of the three links from the respec-
tive joint axes, ml1 = ml2 = ml3 = 10 kg are the masses of the
b31 b32 b33
three links, mm1 = mm2 = mm3 = 1 kg are the masses of the rotors,
Il1 = Il2 = Il3 = 1.0 kg m2 are the moments of inertia of links and
b11 = Il1 + ml1 l12 + kr1
2
Im1 + Il2 + mm2 a21 + Im2 Im1 = Im2 = Im3 = 0.01 kg m2 are the moments of inertia of rotors.

+ ml2 (a21 + l22 + 2a1 l2 c2 ) + Il3 + Im3 + mm3 (a21 + a22 + 2a1 a2 c1 )
References
+ ml3 (a21 + a22 + l32 + 2a1 a2 c2 + 2a1 l3 c23 + 2a2 l3 c3 )
[1] A. Ibrahimbegovic, C. Knopf-Lenoir, A. Kucerova, P. Villon, Optimal design and
optimal control of elastic structures undergoing finite rotations, Int. J. Numer.
b12 = b21 = Il2 + Il3 + kr2 Im2 + Im3 + mm3 (a22 + a1 a2 c2 ) Methods Eng. 61 (2004) 2428–2460.
[2] B. Abdallah, D. Dawson, P. Dorato, M. Jamshidi, Survey of robust control for
+ ml2 (l22 + a1 l2 c2 ) + ml3 (a22 + l32 + a1 a2 c2 + a1 l3 c23 + 2a2 l3 c3 ) rigids robots, IEEE Control Syst. Mag. 11 (2) (1991) 24–30.
[3] C.Y. Kuo, S.P.T. Wang, Nonlinear robust industrial robot control, ASME J. Dyn.
Syst. Meas. Control 11 (1989) 24–30.
2
b22 = Il2 + Il3 + kr2 Im2 + Im3 + mm3 a22 + ml2 l22 [4] H. Yau, C. Chen, Chattering-free fuzzy sliding-mode control strategy for uncer-
tain chaotic systems, Chaos Solitons Fract. 30 (2006) 709–718.
+ ml3 (a22 + l32 + 2a2 l3 c3 ) [5] J.J. Craig, Introduction to Robotics, second ed., Addison-Wisley, Reading, MA,
1989.
[6] J.J.E. Slotine, W. Li, Applied Nonlinear Control, NJ, Englewood Cliffs, Prentice-
2
b22 = Il2 + Il3 + kr2 Im2 + Im3 + mm3 a22 + ml2 l22 Hall, 1991.
[7] İ. Eker, Sliding mode control with PID sliding surface and experimental applica-
+ ml3 (a22 + l32 + 2a2 l3 c3 ) tion to an electromechanical plant, ISA Trans. 45 (January (1)) (2006) 109–118.
[8] J.N. Juang, K.W. Eure, Predictive feedback and feedforward control for systems
2 with unknown disturbances, NASA/Tm-1998-208744, 1998.
b22 = Il2 + Il3 + kr2 Im2 + Im3 + mm3 a22 + ml2 l22 [9] K.J. Astrom, B. Wittenmark, Adaptive Control, Addison-Wesley, Reading, MA,
1995.
+ ml3 (a22 + l32 + 2a2 l3 c3 ) [10] K.K. Shyu, P.H. Chu, L.J. Shang, Control of rigid robot manipulators via combi-
nation of adaptive sliding mode control and compensated inverse dynamics
2 approach, IEE Proc. Control Theory Appl. 143 (1996) 283–288.
b33 = Il3 + kr3 Im3 + ml3 l32 [11] K.K. Shyu, H.J. Shieh, A new switching surface sliding-mode speed control
for induction motor drive systems, IEEE Trans. Power Electron. 11 (1996 Jul)
660–667.
A.2. Corolis/Centrifugal torques matrix [12] L.A. Zadeh, Fuzzy sets, Inform. Control 8 (1965) 338–353.
⎡ ⎤ [13] M.J.K. Adam, Basics of Robotics: Theory and Components of Manipulators and
c11 c12 c13 Robots, SpringerWien, NJ, 1999.
⎢ ⎥ [14] M. Roopaei, M. Zolghadri Jahromi, Chattering-free fuzzy sliding mode control
C(q, q̇) = ⎣ c21 c22 c23 ⎦ in MIMO uncertain systems, Nonlinear Anal. 71 (2009) 4430–4437.
[15] M.W. Spong, M. Vidyasagar, Robot Dynamics and Control, Wiley, New York,
c31 c33 c33 1989.
[16] M. Zeinali, L. Notash, Adaptive sliding mode control with uncertainty estimator
for robot manipulators, Mech. Mach. Theory 45 (1) (2010) 80–90.
c11 = −mm3 a1 a2 s1 q̇1 − (ml2 a1 l2 s2 + ml3 a1 a2 s2 + ml3 a1 l3 s23 )q̇2 [17] M. Zhu, Y. Li, Decentralized adaptive fuzzy sliding mode control for recon-
figurable modular manipulators, Int. J. Nonlinear Control 20 (4) (2010) 472–
− (ml3 a1 l3 s23 + ml3 a2 l3 s3 )q̇3 488.
[18] Q.P. Ha, D.C. Rye, H.F. Durrant-Whyte, Fuzzy moving sliding mode control
with application to robotic manipulators, Automatica 35 (4) (1999) 607–
c12 = −(ml2 a1 l2 s2 + ml3 a1 a2 s2 + ml3 a1 l3 s23 )q̇1 616.
[19] Q.P. Ha, Robust sliding mode controller with fuzzy tuning, Electron. Lett. 32
− (ml3 a1 a2 s2 + ml3 a1 l3 s23 + mm3 a1 a2 s2 + ml2 a1 l2 s2 )q̇2 (17) (1996) 1626–1628.
[20] R.J. Wai, Adaptive sliding-mode control for induction servo motor drive, Proc.
− (ml3 a1 l3 s23 + ml3 a2 l3 s3 )q̇3 Inst. Elect. Eng. Electr. Power Appl. 147 (6) (2000) 553–562.
[21] S.K. Spurgeon, Choice of discontinuous control component for robust siding
mode performance, Int. J. Control 53 (1991) 161–179.
c13 = −(ml3 a1 l3 s23 + ml3 a2 l3 s3 )q̇1 − (ml3 a1 l3 s23 + ml3 a2 l3 s3 )q̇2 [22] S.Y. Wang, C.M. Hong, C.C. Liu, W.T. Yang, Design of a static reactive power
compensator using fuzzy sliding mode control, Int. J. Control 63 (2) (1996)
− (ml3 a2 l3 s2 + ml3 a1 l3 s23 )q̇3 393–412.
[23] R.J. Wai, Fuzzy sliding-mode control using adaptive tuning technique, IEEE
Trans. Ind. Electron. 54 (February (1)) (2007).
c21 = (ml2 a1 l2 s2 + ml3 a1 a2 s2 + ml3 a1 l3 s23 )q̇1 − (ml3 a2 l3 s3 )q̇3 , c22
[24] Y. Chen, J.L. Chang, Sliding-mode force control of manipulators, Proc. Natl. Sci.
Counc. ROC(A) 23 (1999) 281–289.
= − ml3 a2 l3 s3 q̇3 [25] Y.S. Lu, J.S. Chen, A self-organizing fuzzy sliding-mode controller design for a
class of nonlinear servo systems, IEEE Trans. Ind. Electron. October (41) (1994)
c23 = −(ml3 a2 l3 s3 )q̇1 − ml3 a2 l3 s3 q̇2 492–502.
[26] L.M. Capisani, A. Ferrara, L. Magnani, Second order sliding mode motion control
= ml3 a2 l3 s3 q̇3 , c31 = (ml3 a1 l3 s23 + ml3 a2 l3 s3 )q̇1 + (ml3 a2 l3 s3 )q̇2 of rigid robot manipulators, in: Proceedings of the 46th IEEE Conference on
Decision and Control, New Orleans, LA, USA, 2007, pp. 12–14.
[27] H.F. Ho, Y.K. Wong, A.B. Rad, Robust fuzzy tracking control for robotic manip-
c32 = (ml3 a2 l3 s3 )q̇1 + (ml3 a2 l3 s3 )q̇2 − (ml3 a2 l3 s3 )q̇3 ulators, Simul. Modell. Pract. Theory 15 (2007) 801–816.

You might also like