Electrical Engineering (2005) 87: 47–55 DOI 10.1007/s00202-003-0218-y
O R I GI N A L P A P E R
Y. J. Huang Æ T. C. Kuo
Robust output tracking control for nonlinear time-varying robotic manipulators
Received: 5 November 2003 / Accepted: 1 December 2003 / Published online: 7 February 2004 Springer-Verlag 2004
Abstract In this paper, a systematic methodology for the robust tracking control of nonlinear time-varying robotic manipulators is proposed. The control method involves fuzzy logic and sliding mode techniques. Output error dynamics can be assigned. Closed-loop system stability is proven. The robustness of the closed-loop system can be achieved against parameter variations and external disturbances. A two-degrees-of-freedom manipulator tracking control problem is carried out. The result shows that output tracking performance can be improved very much comparatively. Keywords Sliding mode Æ Fuzzy logic Æ Nonlinear systems Æ Manipulator
1 Introduction In recent years, control problems of robotic manipulators have been studied with considerable interest by many researchers and have given rise to a challenging research area, such as industry, medical treatment, military affairs, researching in space, researching under water and so on. Since robotic manipulators have many serially linked components, the manipulator dynamics are highly nonlinear with strong couplings existing between joints. In the field of robustness, sliding mode control is capable of making a control system very robust with respect to system parameter variations and external disturbances [1, 2]. When the state trajectory of the controlled system is constrained to lie on a sliding surY. J. Huang (&) Æ T. C. Kuo Department of Electrical Engineering, Yuan Ze University, 135 Far-East Road, Chung-Li, Taiwan, ROC E-mail:
[email protected] Tel.: +886-3-4638800 Fax: +886-3-4630336
face, the sliding motion occurs. In general, the closedloop equivalent system dynamics is determined by the definition of a sliding surface, and is independent of parameter variations and external disturbances under matching conditions. Fuzzy logic control is another powerful technique for robust control [3, 4, 5, 6, 7], especially when the plant model is not known exactly. However, fuzzy logic rules and membership functions are selected by trial and error. A mathematical proof of stability is not easy. Transforming nonlinear systems to linear systems is a common way to deal with nonlinear systems, and is widely applied to control systems in practice. The input– output linearization technique is very effective, and has been applied to many nonlinear control problems [8, 9, 10, 11]. Using the input–output linearization technique, we can treat the control problem as linear systems in the input–output sense as long as the zero dynamics is stable. This sort of linearization method can successfully deal with known nonlinearities and hence simplify the controller design. In this paper, we propose a robust control method involving the sliding mode control with and without fuzzy logic control for nonlinear time-varying robotic manipulators. The goal is to achieve robust output tracking control. This strategy is particularly effective when not all states are necessarily tracked. In the proposed method, the switching functions are defined individually for each output channel. The input–output linearization technique is exploited. To linearize the nonlinear time-varying systems, the Lie algebra is utilized. A fuzzy logic switching gain is further proposed for dealing with unknown parameter variations and external disturbances. The proposed method is applied to a two-degrees-of-freedom manipulator [12]. Comparative study is carried out. It will be seen that output tracking can be achieved successfully against parameter variations and external disturbances. It is noteworthy that the scheme proposed here can be widely applied to solve various engineering problems, especially when system output performance is
48
concerned, as performing all the internal state tracking is impractical in many practical applications. For example, it is even impossible to specify all the desired internal state paths in flight control systems [13, 14]. Further, besides manipulator tracking control, many other practical control applications such as induction motor control, electromagnetic suspension systems, synchronous servo systems, converter–inverter systems, underwater vehicle maneuvering and tracking control, and so on [15, 16, 17, 18, 19], can benefit from the proposed robust output tracking control method.
output error dynamics in the sliding mode. The number ri is a linearizability index for output yi (detailed in next subsection). The design purpose here is to assure that output tracking is performed as desired in the presence of parameter variations and external disturbances. It is noteworthy that we place the control system initially in the sliding mode, using the definition of switching functions 3, i.e., ri(t=0)=0. Therefore, the hitting time for reaching the sliding mode can be eliminated. As long as the sliding condition, ri r_ i\0 ;
2 Control methodology Consider an n-degrees-of-freedom nonlinear time-varying robotic manipulator. Its dynamic model can be described as x_ ¼ f ðx; tÞ þ
m X
gk ðx; tÞuk ;
ð1Þ
i¼1; 2; :::; m;
ð2Þ
k¼1
yi ¼ hi ðx; tÞ; n
in which x2R is the joint position vector; ui, i=1, 2,..., m, are the control input force/torque; yi, i=1, 2, ..., m, are the outputs; f(x, t) is a sufficiently differentiable vector field defined in Rn, and f(0, t)=0n·1 at any time t; gi(x, t) and hi(x, t), i=1, 2, ..., m, are sufficiently differentiable defined in R. System 1 is assumed to be output controllable. 2.1 Definition of switching function The first step in designing the proposed output sliding mode control (OSMC) is to define the sliding surfaces. Let S:{e|ri(e)=0, i=1, 2, ..., m} represent the intersection of a set of sliding surfaces ri(e)=0. The error signalR is defined as e=[e1, e2, ..., em], where t ei ¼ 0 ðyi ðsÞ ydi ðsÞÞds, and yd=[yd1,yd2, ...,ydm]T is the desired output vector. When system motion is confined in the neighborhood of the intersection of the sliding surfaces, the system is regarded as in ‘‘sliding mode’’. To obtain a desired output error dynamics in the sliding mode, we define the following switching functions r ¼ ½r1 ; r2 ; :::; rm ¼ Wð pÞðei ei0 Þ
;
i ¼ 1; 2; :::; m;
ð5Þ
holds for all subsequent time t>0, the sliding mode will sustain and hence the system trajectory will stay on the intersection of the sliding surfaces. Since the sliding mode sustains, r_i=0 and the output error dynamics in the sliding mode turns out to be wi ð pÞðyi ydi Þ 0;
i ¼ 1; 2; :::; m:
ð6Þ
Therefore, the output error can be guaranteed to vanish at the prescribed rate if the polynomials wi(p) are chosen Hurwitz. The advantage here is that the output error dynamics 6 are independent of parameter variations and external disturbances. Thus, the controlled system processes the property of robustness intuitively. 2.2 Determination of the order of wi(p) Let ri be the relative degree of the ith output of the nonlinear time-varying robotic manipulator 1, i=1, 2, ..., m. Output controllability implies that ri is a finite number. Denote Lgk as the Lie derivatives with i ðx;t Þ gk(x, t), k=1, 2, ..., m, i.e., Lgk ¼ @h@x gk ðx; tÞ and @hi ðx;tÞ @hi ðx;tÞ Nf ½hi ðx; tÞ ¼ @t þ @x f ðx; tÞ; i=1, 2, ..., m. Then ri ¼ infh kLgk Nfk1 ihi ðx; tÞ 6¼ 0 for some k, 1 £ k £ m}, and Lgk Nfj1 hi ðx; tÞ ¼ 0 for all x at t2[t0, tf ], 1 £ j £ ri1,
1 £ k £ m, and 1 £ j £ m. In short, to find ri, we continue to differentiate yi until at least one coefficient in input terms is not zero. Consequently, the following derivatives of yi, i=1, 2, ..., m, can be obtained. Each output relates to at least one nonzero input.
ð3Þ ðr Þ
y1 1 ¼ Nfr1 ½h1 ðx; tÞ þ
m X
Lgk Nfr1 1 ½h1 ðx; tÞ uk ;
ð7Þ
Lgk Nfr2 1 ½h2 ðx; tÞ uk ;
ð8Þ
k¼1
where Wð pÞ ¼ diagfwi ð pÞ; i ¼ 1; 2; :::; mg:
ð4Þ
The symbol p=d/dt denotes the differential operator and ei0 denotes the initial condition of output error. The coefficient polynomial in 4 is defined as ri P wi ð p Þ ¼ wi;j pri j . The coefficients wi,0, wi,1, ..., and wi;ri j¼0
are constants chosen later by the designer to specify the
ðr Þ
y2 2 ¼ Nfr2 ½h2 ðx; tÞ þ
m X k¼1
.. . ymðrm Þ ¼ Nfrm ½hm ðx; tÞ þ
m X k¼1
Lgk Nfrm 1 ½hm ðx; tÞ uk :
ð9Þ
49
where
2.3 Formulation of the control law The sliding condition 5 must be satisfied so that the sliding mode can sustain for all time. Let the control law be formulated as u ¼ uo þ us ;
ð10Þ
where uo is the continuous nominal control and us is the discontinuous switching control. Note that 1, 2, 3, and 4 give rise to r_ ¼ cðx; tÞ þ J ðx; tÞu Wð pÞyd ;
ð11Þ
where 2
r1 P
w1;k Nfr1 k ½h1 ðx; tÞ
3
7 6 k¼0 7 6 r 2 7 6P r2 k 6 w2;k Nf ½h2 ðx; tÞ 7 7 6 cðx; tÞ ¼ 6 k¼0 7; 7 6. 7 6 .. 7 6 r m 5 4P wm;k Nfrm k ½hm ðx; tÞ
ð12Þ
Lg2 Nfr1 1 ½h1 ðx; tÞ
uo ¼
Lg2 Nfr2 1 ½h2 ðx; tÞ
.. .
..
Lg2 Nfrm 1 ½hm ðx; tÞ
Wð pÞyd :
.
ð14Þ
ð15Þ
The problem left is to select a suitable switching control us to deal with the varying part of the plant, such that J(x, t)us dictates the sign of each r_i in 15. This can be achieved by formulating the switching control us as us ¼ ½u1s ; u2s ; :::; ums T ; uis ¼ k ðx; tÞ
m X
Jo1
ð16Þ
i;j
ðx; tÞsgn rj
j¼1
for i ¼ 1; 2; :::; m;
m X
) dJi;j ðx; tÞsgn rj sgnðri Þ ;
ð17Þ
ð18Þ
ð19Þ
j¼1
kx > sup fjDci ðx; tÞjg; kju > sup DJi;j ðx; tÞ; i ¼ 1; 2; :::; m ;
þ1; q > 0; sgnðqÞ ¼ 1; q\0;
ð20Þ ð21Þ ð22Þ ð23Þ
Since DJ(x, t) depends on the system uncertainties, define dJ ðx; tÞ ¼ DJ ðx; tÞ Jo1 ðx; tÞ. According to [20], the sum of the absolute values of all of the elements of each row of dJ(x, t) can be less than 1 for a robot arm, i.e.,
3
7 7 Lgm Nfr2 1 ½h2 ðx; tÞ 7 7 7: .. 7 7 . 5 rm 1 Lgm Nf ½hm ðx; tÞ
Substituting 10 and 14 into 11 yields r_ ¼ Dcðx; tÞ þ DJ ðx; tÞuo þ J ðx; tÞus :
n\inf 1 þ
Lgm Nfr1 1 ½h1 ðx; tÞ
Let the subscript o represent the nominal part and the symbol D represent the varying part, i.e., Dc(x, t)=c(x, t)co(x, t) and DJ(x, t)=J(x, t)Jo(x, t). The nominal control uo can be used to deal with the nominal part in 11, i.e., Jo1 ðx; tÞ½co ðx; tÞ
(
k0 > 0:
k¼0
Jðx; tÞ ¼ 2 Lg1 Nfr1 1 ½h1 ðx; tÞ 6 6 r 1 6 Lg1 Nf 2 ½h2 ðx; tÞ 6 6 6 .. 6. 4 Lg1 Nfrm 1 ½hm ðx; tÞ
! m X 1 k ðx; tÞ> kju ujo þ k0 ; kx þ n j¼1
ð13Þ
m X ðdJ Þij ðx; tÞ\1;
for i ¼ 1; 2; :::; m;
j¼1
where (•)i,j denotes the (i,j)th element of (•). In this paper, we consider that the variation in dJ(x, t) is not large and adopt the above superposition. The sliding condition 5 can be verified as follows. Substitution of 16 and 17 into 15 yields r_ i ¼ Dci ðx; tÞ þ DJi ðx; tÞuo k ðx; tÞ 1þ
m P
! dJi;j ðx; tÞsgn rj sgnðri Þ sgnðri Þ;
ð24Þ
j¼1
where Jio and DJi represent the ith row of Jo and DJ, respectively. Next, apply 19 to 18. It turns out that the following inequality is valid,
50
k ðx; tÞ 1 þ
m X
dJi;j ðx; tÞsgn rj sgnðri Þ
!
where sep (rj) is defined as sep rj ¼ 1 exp lrj sgn rj :
j¼1 m X
> kx þ
kju ujo þ k0 :
ð25Þ
j¼1
Therefore, 24 and 25 imply that r_ i\ kx
m X
m X kju ujo þ D ci ðx; tÞ þ DJi;j ðx; tÞujo k0 ;
j¼1
¼ ðDci ðx; tÞ kx Þ þ
m X
D Ji;j sgn ujo kju ujo k0 ; ð26Þ
\ k0 ; for ri > 0: m X
As shown in Fig. 1, the proposed sep function is smoother and the slope in the neighborhood of the origin can be adjusted with the positive real number l.
3 OSMC with fuzzy logic
j¼1
j¼1
r_ i [ kx þ
ð30Þ
m X kju ujo þ Dci ð x; tÞ þ D Ji;j ð x; tÞujo þ k0 ;
j¼1
¼ ðDci ð x; tÞ þ kx Þ þ
j¼1 m X
D Ji;j ð x; tÞsgn ujo
j¼1
þ kju ujo þ k0 ; [ k0 ;
for ri\0:
ð27Þ
Consequently, it is evident that sliding condition 5 is satisfied. The larger k0 is, the shorter the time to reach the sliding motion. Since the control law given as above guarantees that the sliding motion is maintained, the output error can be eliminatedm theoretically. However, it should be pointed P out that ri ¼ n. Otherwise, there is no guarantee for i¼1
the closed-loop stability since certain unabsolvable modes called zero dynamics [21] cannot be stabilized by the above controller. Further, the addition of perturbations does not change the relative degree. 2.4 Chattering elimination
In the last section, when the bounds of parameter variations and external disturbances are known, the proposed OSMC indeed achieves an excellent robust control. In this section, an output-sliding mode control with fuzzy logic (FOSMC) is proposed when there is insufficient knowledge of parameter variations and external disturbances. The control gain k(x, t) will be auto-tuned using a fuzzy logic system that contains a singleton fuzzifier, min-product inference, triangular shaped membership functions, normalized rule strength, and a weighted average defuzzifier. The principle of the FOSMC is to force the state trajectory of the control system to move and stay on the intersection of the sliding surfaces. Once the state trajectory leaves, some of the fuzzy rules will be fired. At each sampled time, tsamp, a suitable switching control gain, k(tsamp), is calculated for pushing back the state trajectory to the intersection of the sliding surfaces. The incremental change of the switch control gain, Dk(tsamp), may be positive or negative, large or small, depending on the performance of the system motion. Let the fuzzy logic accept numeric inputs and convert them into linguistic values. Then they can be manipulated with linguistic rules. The linguistic outputs, i.e., the result of the fuzzy logic operations, are then converted into numeric outputs through defuzzification. The fuzzy rules in FOSMC involve two input and one output fuzzy variables and are in the form of IF–THEN rules. Let G,
Owing to imperfect realization, the ideal sliding mode is difficult to obtain. High-frequency chattering is undesirable because it may excite unmodeled high-frequency plant dynamics that could result in unforeseen instability. With the switching control 17, high-frequency switching occurs while system motion lies in the vicinity of the intersection of the sliding surfaces. The boundary layer technique [1] is commonly used to alleviate the chattering. The sgn function is substituted with the sat function, i.e., ( þ1; r > 1 satðrÞ ¼ r; 16r61 : ð28Þ 1; r\ 1 In this paper, an alternate smooth function is proposed. The control law 17 can be replaced with m X uis ¼ k ðx; tÞ Jo1 i;j ðx; tÞsep rj ð29Þ j¼1 for i ¼ 1; 2; :::; m;
Fig. 1 The three switching functions
51
DG, and DK represent the input and the output variables, kr(tsamp)k, Dkr(tsamp)k, and Dk(tsamp), respectively. The input variables (or the performance indices) kr(tsamp)k is the Euclidean norm of switching functions and Dkr(tsamp)k=kr(tsamp)kkr(tsampDt)k is the difference between switching function norms at two subsequent times. Then, the fuzzy rule j can be described as Rule j : IF G is X1j and DG is X2j THEN DK is Y j
ð31Þ
where X1j and X2j are the fuzzy sets in the antecedent part, and Yj is the fuzzy set in the consequent part. The fuzzy set of input variable G is B (big), M (medium), S (small), and Z (zero). The fuzzy set of input variable DG is FL (fast leaving), SL (slow leaving), ZM (zero movement), SA (slow approaching), and FA (fast approaching). The fuzzy set of output variable DK is PB (positive big), PM (positive medium), PS (positive small), ZE (zero), NS (negative small), and NM (negative medium). Therefore, we have 20 fuzzy rules in the fuzzy rule base. The membership functions of the two input variables and the one output variable are defined with triangular shaped functions, respectively, as shown in Fig. 2. Next, a fuzzy inference engine is set up to perform the decision-making logic. It employs fuzzy rules in
the fuzzy rule base to determine the weighted outputs. The min-product inference method is applied [4]. As both the input and output fuzzifiers are singletons, we have rj to be the inference output of the rule Rj. The inference value rj is a fuzzy number, so it needs to be defuzzified to a crisp number. The center of gravity defuzzification method is applied. The defuzzification is the average of weighted outputs of all fuzzy rules, i.e., N P
Dk tsamp ¼
wj r j
j¼1 N P
;
ð32Þ
wj
j¼1
where Dk(tsamp) is the crisp controller output, N is the number of rules, wj is the degree of matching of each rule in the antecedent part, and rj represents the inference value in the consequent part of the fuzzy rule j. The switching control gain k(tsamp) is formulated as ð33Þ k tsamp ¼ k tsamp Dt þ Dk tsamp : Therefore, the switching control gain 17 can be replaced with m X uis ¼ k tsamp Jo1 i;j x; tsamp sep rj j¼1
for i ¼ 1; 2; :::; m:
ð34Þ
4 Numerical result A two-degrees-of-freedom manipulator [12], as shown in Fig. 3, is used to illustrate the effectiveness of the proposed method. The dynamic equation for this manipulator is given as
Fig. 2 The membership functions of fuzzy sets for a krk, b Dkrk, and c Dk
Fig. 3 A two-degrees-of-freedom manipulator
52
"
€lðtÞ €hðtÞ 2 þ4
2
#
¼4 1 1þm
1 _2 lðtÞh_ 2 ðtÞ 2þ2m h ðt Þ ð2ð1þmÞlðtÞþ1Þl_ ðtÞh_ ðtÞ 5 2 6lðt Þþð1þmÞl ðt Þ
3"
0
5
1
0
5 2 6lðt Þþð1þmÞl ðtÞ
F ðt Þ T ðt Þ
3
Table 1 The central values and radii
5
Central value
Radius
0.179 0.2 0.406h_ 2 ðtÞ _ 1.35r_(t)hðtÞ
±0.188 ±0.6 ±0.0938h_ 2 ðtÞ _ ±1.25r_(t)hðtÞ
"
# þ
0 d 2 ðt Þ
# ð35Þ
;
where l(t) is the translational displacement from the center of the payload mass to the rotational joint; h(t) is the angular position of the rotational joint; F(t) is the force to move the translational link; T(t) is the torque to rotate the rotational joint; d2(t) is the assumed external torque disturbance; and m is the mass of the payload. Let the state variables be x ¼ ½ lðtÞ l_ ðtÞhðtÞh_ ðtÞT , and the control input be u=[F(t) T(t)]T. The following state–space expression can be obtained, 3 2 3 2 x2 x_ 1 6 x_ 7 6 f~ ðx; tÞ þ df~ ðx; tÞ 7 1 7 6 27 6 1 7 6 7¼6 5 4 x_ 3 5 4 x4 ~ ~ x_ 4 f22 ðx; tÞ þ df2 ðx; tÞ 2 3 3 0 0 0 60 7 6 1 þ db ðx; tÞ 0 7 1 6 7 6 7 þ6 7; 7u þ 6 40 5 40 1 þ db2 ðx; tÞ 5 0
y1 y2
0 2
1 ¼ 0
0 0
3 2 3 x_ 1 x2 6 x_ 2 7 6 f1 ðx; tÞ 0:0938x2 7 47 6 7¼6 4 x_ 3 5 4 x4 5 f22 ðx; tÞ 1:25x2 x4 x_ 4 2 3 3 0 0 0 6 7 6 0:812 0:188 0 7 7; 7u þ 6 0 þ6 4 5 40 5 1:2 0:6 0 0 0 d2 ðtÞ ð40Þ where f1 ðx; tÞ ¼ x1 x24 0:406x24 ;
ð41Þ
f2 ðx; tÞ ¼ 1:35x2 x4 :
ð42Þ
ð36Þ
ð37Þ
ð43Þ
3
2
x4 ; where f~1 ðx; tÞ ¼ x1 x24 , f~2 ðx; tÞ ¼ x2 x4 , df~1 ðx; tÞ ¼ 2þ2m 2 1 ½ð1þmÞx1 x1 ð1þ2mÞþ6x2 x4 m ~ df2 ðx; tÞ ¼ ; db1 ðx; tÞ ¼ ; 5 2 6x1 þð1þmÞx1 1þ6x 6x2 ð1þmÞ
2
A calculation using the Lie differential approach yields that both relative degrees r1 and r2 are 2. Thus, Lg1 ðNf h1 Þ Lg2 ðNf h1 Þ 0:813 0 ; ¼ Jo ðx; tÞ ¼ Lg1 ðNf h2 Þ Lg2 ðNf h2 Þ 0 1:2
d2 ðtÞ
x1 7 0 6 6 x2 7; 4 x3 5 0 x4
0 1
db1(x, t) db2(x, t) df~1 ðx; tÞ df~2 ðx; tÞ
The matrix Jo(x, t) is nonsingular. To promise a good transient response, choose the damping ratio as 1 and the natural frequency as 4. The switching functions are defined as
1þm
db2 ðx; tÞ ¼ 56x11 þ6x12 ð1þmÞ ; and d2(t)=0.3sin(10t).
r1 ¼ ð€e1 €e1 ð0ÞÞ þ 8ðe_ 1 e_ 1 ð0ÞÞ þ 16ðe1 e1 ð0ÞÞ;
1
The payload is supposed to be unknown but bounded, 0 kg £ m £ 0.6 kg. For the purpose of comparison, assume m=0.3+0.3sin(3t), the same as in [12]. The object here is to force y1 and y2 to track the desired trajectories yd1 and yd2, respectively. The desired trajectories y1d and y2d are given as
0:75ð1 sin ðpt=10ÞÞ þ 0:25; t65 ðsÞ yd1 ¼ ; ð38Þ 0:25; t > 5 ðsÞ
2p sin ðpt=10Þ; t65 ðsÞ : ð39Þ yd2 ¼ 2p; t > 5 ðsÞ Next, we estimate df~1 ðx; tÞ, df~2 ðx; tÞ, db1(x, t), and db2(x, t), respectively. Since the length of l(t) is limited and ranges from 0.25 to 1 m, we can establish a set of the central values and the radii in df~1 ðx; tÞ, df~2 ðx; tÞ, db1(x, t), and db2(x, t), respectively, as shown in Table 1. Consequently, the state equation 36 can be rewritten as
ð44Þ r2 ¼ ð€e2 €e2 ð0ÞÞ þ 8ðe_ 2 e_ 2 ð0ÞÞ þ 16ðe2 e2 ð0ÞÞ: ð45Þ Using 14, one obtains the nominal control as 2 3 1:23½ x1 x24 0:406x24 þ 8x2 þ 16x1 7 6 ð€yd1 þ 8_yd1 þ 16yd1 Þ 7 6 7: 6 uo ¼6 7 5 4 0:833½ð0:35x2 x4 þ 8x3 þ 16x2 Þ ð€yd2 þ 8_yd2 þ 16yd2 Þ
ð46Þ
With Eqs. 16, 17, 18, 19, 20, 21, 22, 23, and 29, the switching control us in OSMC is determined to be 2 3 1:6 0:1jx4 j2 þ 0:2juo1 j þ 0:2 sepðr1 Þ 5: us ðOSMCÞ ¼ 4 1:67ð1:5jx2 jjx4 j þ 0:7juo2 j þ 0:5Þsepðr2 Þ ð47Þ
53 Table 2 The fuzzy rule base DG G
FL
SL
ZM
SA
FA
B M S Z
PB PB PM PS
PM PM PS PS
PM PM PS ZE
PM PS ZE NS
PS ZE NS NM
Alternatively, the proposed FOSMC method is also inspected. The fuzzy rules are tabulated in Table 2. Control rules in Table 2 are derived from the following concept: if the state trajectories are far away (or moving away) from the intersection of the sliding surfaces, then the amplitude of the switching control gain should be large; conversely, the switching control gain can be reduced while the state trajectories are near (or
Fig. 4 a The output performance y1 and yd1. b The output performance y2 and yd2
approaching) the intersection of the sliding surfaces. The membership functions of the two input variables and the one output variable are shown in Fig. 2, respectively. Using the min-product inference method together with the center of gravity defuzzification method, we obtain the incremental change of the switching control gain, Dk(tsamp), and k(tsamp)=k(tsampDt)+Dk(tsamp) is applied. The control-sampling rate is once per 0.09 s, the same as in [12], which is relatively large compared with the general sampling period. The switching control input in FOSMC is selected to be 1:23k tsamp sepðr1 Þ us ðFOSMCÞ ¼ : ð48Þ 0:83k tsamp sepðr2 Þ Figs. 4, 5, and 6 show the result. The initial condition is x(0)=[0.85 m 0.075 pms1 p/18 rad 0.2 p2 rads1]T. In all figures, the FSMC in [12] is compared. Figure 4 shows the output tracking performances. It is obvious that the outputs track the desired
Fig. 5 a The tracking error y1yd1. b The tracking error y2yd2
54
time-varying robotic manipulators. The sliding mode and the fuzzy logic techniques are exploited to provide insensitivity to parameter variations and external disturbance. An application example is demonstrated. The proposed OSMC and FOSMC controllers are effective in maintaining the system motion in the sliding mode. Smooth control inputs are obtained and good output tracking ability is guaranteed in the presence of parameter variations and external disturbances. Acknowledgement The authors would like to thank the National Science Council, Taiwan, ROC, for financially supporting this work under Grant NSC89-2218-E-155-010.
References
Fig. 6 a The control input F. b The control input T
paths and robustness is attained. Generally speaking, OSMC has the best tracking performance among the three controllers as seen in Fig. 5. However, FOSMC performs equally well when parameter variations and external disturbances are uncertain. The tracking error convergence is fast and smooth. As seen in Fig. 6, the control input chattering is very slight using the proposed sep function. The slope constant l is chosen to be 5 here. Both OSMC and FOSMC have smaller control input. The input chattering is eliminated. The total number of fuzzy rules is reduced from 50 in FSMC [12] to 20 in the proposed FOSMC. The difference will be more significant if the number of joints of the manipulator increases.
5 Conclusions In this paper, we presented a robust output tracking control method for n-degrees-of-freedom nonlinear
1. Hung JY, Gao W, Hung JC (1993) Variable structure control: a survey. IEEE Trans Ind Electron 40:2–22 2. Young KD, Utkin VI, O¨zgu¨ner U¨ (1999) A control engineer’s guide to sliding mode control. IEEE Trans Contr Syst Technol 7:328–342 3. Lee CC (1990) Fuzzy logic in control systems: fuzzy logic controller, Part I. IEEE Trans Syst Man Cybern 20:404–419 4. Lee CC (1990) Fuzzy logic in control systems: fuzzy logic controller, Part II. IEEE Trans Syst Man Cybern 20:420–435 5. Cao SG, Rees NW, Feng G (1997) Analysis and design for a class of complex control system. Part I: Fuzzy modeling and identification. Automatica 33:1017–1028 6. Cao SG, Rees NW, Feng G (1997) Analysis and design for a class of complex control system. Part II: Fuzzy controller design. Automatica 33:1029–1039 7. Sugeno M (1999) On stability of fuzzy systems expressed by fuzzy rules with singleton consequents. IEEE Trans Fuzzy Syst 7:201–224 8. Palanki S, Kravaris C (1997) Controller synthesis for timevarying systems by input/output linearization. Comput Chem Eng 21:891–903 9. Jo NH, Seo JH (2000) Input output linearization approach to state observer design for nonlinear system. IEEE Trans Automat Control 45:2388–2393 10. Huang CS, Yuan K (2002) Output tracking of a non-linear non-minimum phase PVTOL aircraft based on non-linear state feedback control. Int J Control 75:466–473 11. Oguchi T, Watanabe A, Nakamizo T (2002) Input–output linearization of retarded non-linear systems by using an extension of Lie derivative. Int J Control 75:582–590 12. Choi SB, Kim JS (1997) A fuzzy-sliding mode controller for robust tracking of robotic manipulators. Mechatronics 7:199– 216 13. Singh SN, Steinberg M, DiGirolamo RD (1995) Nonlinear predictive control of feedback linearizable systems and flight control system design. J Guidance Control Dynam 18:1023– 1028 14. Lee SY, Lee JI, Ha IJ (2001) Nonlinear autopilot for high maneuverability of bank-to-turn missiles. IEEE Trans Aerosp Electron Syst 37:1236–1253 15. Benchaib A, Rachid A, Audrezet E (1999) Sliding mode input– output linearization and field orientation for real-time control of induction motors. IEEE Trans Power Electron 14:3–13 16. Joo SJ, Seo JH (1997) Design and analysis of the nonlinear feedback linearizing control for an electromagnetic suspension system. IEEE Trans Contr Syst Technol 5:135– 144 17. Grcˇar B, Cafuta P, Zˇnidaricˇ M, Gausch F (1996) Nonlinear control of synchronous servo drive. IEEE Trans Control Syst Technol 4:177–184
55 18. Jung J, Lim S, Nam K (1999) A feedback linearizing control scheme for a PWM converter–inverter having a very small DClink capacitor. IEEE Trans Ind Appl 35:1124–1131 19. Fossen TI (1994) Guidance and control of ocean vehicles. Wiley, New York
20. Hashimoto H, Yamamoto H, Yanagisawa S, Harashima F (1988) Brushless servo motor control using variable structure approach. IEEE Trans Ind Appl 24:160–170 21. Isidori A (1995) Nonlinear control systems, 3rd edn. Springer Verlag, New York