Sliding-mode motion controller with adaptive fuzzy ... - Semantic Scholar

Report 2 Downloads 149 Views
Sliding-mode Motion Controller with Adaptive Fuzzy Disturbance Estimation Andreja Rojko, Karel Jezernik University of Maribor FERI, Smetanova 17, 2000 Maribor, Slovenia andreja.rojko@uni-mb. si, karel .jezern ik @ uni-mb. si

Abstract: In this work a motion control scheme, which belongs to the class of the control schemes known as a sliding mode control with disturbance estimation, is proposed. Adaptive f u u y disturbance estimator works as on-line identifier of most of the robot dynamics. Adaptation algorithm 1s derived by using the Lyapunov stability theory and provides global asymptotic stability of the state errors. For the implementation on the robot, three physically based fuzzy logic subsystems are used. The efficiency of the proposed controller scheme was tested by experiments on direct drive robot.

where zk is joint's motor torque, J , , ( ~is) its inertia,

1 Introduction

Now the dynamics (1) can be rewritten as:

Good motion control of direct drive robots usually requires a model-free control. Sliding mode control, fuzzy control, neural networks and their combinations are between possible choices. Especially when combining sliding mode and fuzzy methods some very good motion controllers were developed, survey in [3]. For example, an adaptive fuzzy logic controller was used for approximation of the desired sliding mode control law with a boundary layer [I]. Controller based on fuzzy logic with an addition of discontinuous term of sliding mode control was described in [9]. Fuzzy logic was also used for tuning of the parameters of sliding mode controller [lo]. However high complexity of most of those algorithms limits their applicability in practice. In this paper proposed decentralized sliding-mode control includes fuzzy logic system (FLS) for each robot axis for disturbance estimation. In the second section of the paper, the sliding mode control design is described. This is followed by design of the FLS disturbance estimator. Forth section of paper introduces physically based subsystems (FLSB) and discusses complexity and interpretability of FLS. In fifth section experimental results are shown and discussed.

are coupling inertias, gravitation torques,

where

300

() 4

ck( q ) , ~ , ( q )are Coriollis and

(q,e) and

Zd,k

are friction and

J~~denotes

the constant part of inertia.

The sliding mode control design starts with choosing switching functions. To include tracking requirements, the sliding surfaces have to be functions of position, velocity and acceleration errors. Our k=l..m sliding surfaces are chosen as:

where g1,k and g2,k are positive constants and superscript d denotes reference values. Because these switching functions are functions of unknown actual accelerations, they usually cannot be calculated, as actual acceleration is only rarely known precise enough and noise-free. To solve this problem the method from [2] was used. This method proposes a transformation of the switching functions, so that no actual acceleration is needed. However transformed switching functions still define the same sliding manifolds as original switching functions. Let the transformed switching functions corresponding to original switching function (4) be: otrmsf.k

Dynamics of k-th robot axis for a direct drive robot with m-degrees of freedom is:

b

external disturbances torques. ql,4k,qk are joint position, velocity and acceleration. As disturbance we regard all dynamics effects with exception of constant part of inertia ( 2 ) :

2 Sliding mode control design

0-7803-7479-7/02/$17.00 02002 IEEE

rh,k

J

Here

jo,k

= ':,k

-' u , k

'

(5)

is a reference current defined with (6) and i:,k is

actual current defined with (7). The actual torque is r k = K M , k . i:,k.

AMC 2002 - Maribor, Slovenia

/=I

In expression for actual current (6) is actual acceleration replaced by calculated one 4; (8), derived from the condition of sliding mode

=o.

i=l

Actual disturbance is in

actual current (7) replaced by estimated one 6. where z;’ If we consider ( 6 ) , (7) and (8), the new expression for transformed switching function (5) is following: -

om“,,,, =i:,k -io,+

=J”.ok +----.(G~ 1 KM,k

(9)

-wk).

KM3k

From (9) can be seen that when 1im,+-(Gk - w k ) = 0 , k = l . . m , the transformed switching functions define the

same sliding manifolds as original switching functions. This equation clearly shows the importance of a good disturbance estimation for achieving sliding mode and therefore good tracking.

3 FLS for disturbance estimation We decided to use FLS for the disturbance estimation. There are few reasons for this. First it was proven, that fuzzy logic systems are universal aproximators [8], so they are capable to aproximate any real, continuous function on a compact set. But the advantage of fuzzy logic when comparing with other universal approximators is a possibility to include linguistic knowledge. Another important advantage of FLS is, that it includes interpretable knowledge, even when its parameters were determined by the classical system identification procedure. Our fuzzy system for disturbance estimation was constructed as follows. A vector of FLS input variables is X t =[qk,iL,ij;], where ;if is desired acceleration used instead of unknown actual acceleration. Fuzzy rule base on k-th robot axis consist of IF-THEN rules R: with the

are the centers of the input membership

functions, 7; are positions of the output membership functions, o;l determine the width of the bell function and b;.‘ its slope. x; refers to the i-th element of the vector of input variables. After choosing the structure of the FLS also the parameters have to be determined. Parameters of the input membership functions were designed to cover all possible values of the inputs. The positions of singleton output membership functions 7:s were chosen to be adaptive parameters. Next, we introduce a ’ parameter vector 6, ]’, which includes all adaptive parameters and a vector of the known nonlinear functions 5, (x, ) = (x, ),..,ti (x, I.., 5; (x, where 4; (x, ) are defined with (1 3).

=b:,..,y,~ k:

)1’

I

By using these two vectors, the FLS (1 1) can be written in the parameter vector - regressor form (1 4), known from the classical theory of system identification [4].

Next the adaptation law has to be determined, so that the difference between the optimal parameter vector e: (which guarantee perfect perturbance estimation) and used estimated parameter vector i ; ,which is denoted by is minimized:

following form: R; : if

qk

=

x;.‘and

4, = x ; Jand 4: = x~y*J then

$L

=r; (10)

Superscript 1 refers to the 1-th rule l=l..M. x.;‘,x;‘,xf.1 are input fuzzy sets, L;, are output linguistic variables and

ri are output singleton fuzzy sets. The structure of FLS is: singleton output membership functions, singleton fuzzifier, product-operation rule of fuzzy implication and center of average deffuzifier. Bell shaped function form was chosen for input membership functions. The output of the resulting FLS can be calculated as:

301

The adaptation law must assure a global asymptotic stability of equilibrium point = [ e k , ; . k ] ’ = a . To fulfil this condition the adaptation law was derived by using Lyapunov stability theory. The Lyapunov function is:

where Ak is positive definite matrix. It can be proven, that the derivative of this Lyapunov function is negative semidefinite and therefore equilibrium point stable, if we use

adaptation law (17). Further it can be shown that the equilibrium point is asymptotically stable (details in [SI).

4 Reduction of complexity of FLS For the FLS with n inputs and r membership functions for each input it is possible to write the rule base with M rules:

The size of the fuzzy model is an exponential function of the number of inputs, which is in literature often referred to as a curse of dimensionality. This causes few problems. First are high computational requirements, which are especially problematic for the on-line applications. Second is the lost of transparency, that is interpretability of the knowledge which is included in the FLS. Third problem is that with higher number of input variables and corresponding membership functions, the area in which the single rule is fullfield, limits to zero [13]. The complexity can be reduced with using lower number of rules and membership functions, but that can also results in a lower accuracy [ I 11. New methods are available that exclude unnecessary rules from the rule base with the use of genetic algorithms but are again computationally costly [ 121 and therefore useless for on-line applications. Our approach to reduce the complexity was by dividing FLS for the disturbance estimation into the three fuzzy logic subsystems, each for the approximation of one part of the robot dynamics. All three FLSBs on the same axis have the structure as described in the previous section and the same learning algorithm, but different inputs. First FLSB inputs are position and desired acceleration, x , = [ q , , q ; ] . It is designed to estimate the difference between the average inertia already used in the control scheme and the actual inertia:

Second FLSB inputs are position and velocity,

xk

=[q,,gk],

and it is designed for an estimation of the gravitation, Coriollis, centrifugal forces and velocity dependent friction effects:

Third FLSB is designed for the estimation of effect of a changing load and eventual residue of dynamics that should be estimated by the first two FLSB. Its inputs are actual position, velocity and desired acceleration, xt =

bk,4, ,qf J.

This division clearly reduces the complexity of FLS, however to assure its transparency also some other factors should be considered. Important is to keep the rules local, so that the output of the FLS can be easily predicted. In our

302

case when output membership functions are singletons, the rule is local if (21) is fulfilled.

With other worlds to achieve transparency the overlap between the membership functions must be chosen carefully, so that the output of FLS is affected by minimal number of rules for every possible input. In the experiment we used three membership functions as shown on Fig. 2. This minimal number of membership functions was chosen because the existing robot controller hardware has quite limited processor power. The membership functions are distributed, to cover the whole working area of robot. Their overlap is a little over 50%. The locality of membership functions was ensured by artificially setting the value of fulfillment of = x;.'part of the rules to zero, when expression (12) was less then 0.01. The resulting FLS does not strictly fulfill the transparency condition (21) but it is still transparent due to the small number of the membership function.

5 Application to control of direct drive robot Our control plant is a three-degree of freedom Puma like configuration direct drive robot, Fig 1 . Robot is equiped with AC motors and has multiprocesor controller. Experimental results are first shown for an average movement. Used controller parameters are as follows. Parameters of sliding surfaces were chosen as gllk=1,2,3=[1000,2400, 1200], g2,k=j,2,3=[64,98, 701 and parameters of diagonal inertia matrix as J=diag([3.5, 2.5, 0.131) kgm2. High values of g l , k = I , 2 , 3 are typical for sliding mode. Used learning parameters values were a, = [44,0.7], = [50,1] and a,= [ 7 , 0 . 2 ] . Note that a small values of learning factor connected with velocity error minimize the effect of noise in velocity signals. A reference trajectory was an point-to-point movement with end position of 1.5 rad, maximal velocity 0.5 radls and maximal acceleration 1 rads2, the same for all three axes. Reference position and velocity of robot tip's is shown in Fig. 3 and Fig.4. The resulting robot tip position error with a peak error of 2.6" and zero positioning error is shown in Fig. 5. Next the test of payload variations was performed. The test was performed during the point-to-point movement with end position of all joints 0.8 rad, maximal velocity 0.04 rad/s and acceleration 0.5 rad/s2. Payload of 5 kg has been attached and released three times, two times between the movements and once when the robot was at the standstill in the end position. Fig. 6 shows the robot tipi position error. The position error has a peak at the moments when payload change occurs (this peak depends from the current position of the robot), but it returns to normal value in short time. Joint position errors are presented on Fig. 7 and controller torques are shown on Fig. 8. Most of the torque on the each robot axis origins from the FLS disturbance estimator, while nominal part gives only small percentage of the total torque.

Reference velocity [m/s]

O

O;xy

'

'

k

Fig. 1 : Control object, direct drive robot

Fig.4: Reference velocity

04 6

02

03

-

3

-2 .I 0 1 2 POSITION Iradl. VELOClTYlndhl

Fig.2: Input membership functions

Robot tips position error [m]

o-3

2.5 2-

Table 1 : Rules implemented in FLS on all robot joints

1.5-

Not implemented on I . axis

R" RI3 RI4

zero positive negative

negative zero negative

negative positive negative

RI5

positive

positive

positive

Robot tips position error [m]

-1

Reference position [m]

- - - -..,-. :--'., . -,--. -----

1.2----

I

_

_

_I_--

e

-

I 1

-

I

I

--I--

A I

I I

2.5

I I

I

I

_.--b. I

I

.. .... .._ ; . --I.._

.

I

1.-

I

. I

.

1.5

I

1

0.5 0 0

0.4

y [ml

0 -0.4

x [ml

5

10

15

20

25

30

Fig.6: Robot tip's position error: test of varying payload between robot motion

Fig.3: Reference position

303

x

hardware. The controller is not very sensitive to noise in the measured signals, because fuzzy logic system works as a filter for the high frequency noise. The controller was tested on the direct drive robot. Experiments show accurate tracking of the commanded trajectory. The robustness of the controller is guaranteed, which was also experimentally proven by a test of varying payload between robot motion. Although the direct drive robot has been used as a control object, the proposed controller can be also used in the motion control of a class of second order nonlinear motion control systems.

lo-=

- 2

P

z o I O I! -'

10

15

20

25

30

10

15

20

25

30

6

2.0 N

5

5

-0.01 I

5

10

15 t

20

25

I

30

References

Is1

Fig. 7: Position errors of robot joints: test of varying payload between robot motion

[l] R. Berstecher, R. Palm, H. Unbehauen, "An Adaptive Fuzzy Sliding-Mode Controller", IEEE Trans. Industrial Electronics, Vo1.48, No. 1 , pp. 18-3 1, 2001. [2] K. Jezernik, B. Curk, J. Harnik, "Observer Based Sliding Mode Control of Robotic Manipulator", Robotica, Vol. 12, pp. 443-448, 1994.

-20

'

5

10

15

20

25

200,

,""

0

[3] 0. Kaynak, K. Erbatur, M. Ertugrul, "The Fusion of Computationally Intelligent Methodologies and SlidingMode Control - A Survey", IEEE Trans. Industrial Electronics, Vol. 48, No.], pp. 4-17, 2001.

I 30 1

5

10

15

20

25

[4] L. Ljung, System identification, Prentice- Hall, 1987. [5] A. Rojko, K. Jezernik "Sliding mode control of direct drive robot using fuzzy disturbance estimation". Proc. of IECON '01, Denver, pp. 335-340, 2001.

30

[6] J. Slotine, W. Li, Applied Nonlinear Control, PrenticeHall, Englewood Cliffs, 1991. 0

5

10

15 t IS1

20

25

30

Fig. 8: Applied torques: test of varying payload between robot motion

[7] V. I. Utkin, Sliding Modes in Control Optimization, Springer Verlag, 1981. [8] L. X. Wang, Adaptive Fuuy Systems and Control, Prentice Hall, EnglewoodCliffs, 1994.

6 Conclusion

[9] B. K. Yo0 and W. C. Ham, "Adaptive Control of Robot Manipulator Using Fuzzy Compensator", IEEE Trans. FUZZYSyst., vol. 8 , pp. 1 86-1 99, 2000.

In this paper the development and implementation of a robust tracking control for a motion control of the robots has been presented. The controller can be also used for systems with fast and highly nonlinear dynamics, as direct drive robots. Sliding mode control with a disturbance estimation scheme has been used. An adaptive fuzzy logic system for a compensation of the system disturbances has been constructed with the inclusion of linguistic information. The linguistic knowledge was used for setting the initial parameters and forming of the rule base. Also an on-line adjustment of some FLS's parameters has been used, so that the estimator can also be constructed when there is no available linguistic knowledge. The control scheme is completely decentralized and for implementation requires only known average inertia matrix and measured or calculated system states. Controller has simple structure and small number of linguistic rules so it can be easy implemented on almost every controller

3 04

[IO] A. SabanoviE A., K. Jezernik, K. Erbatur and 0. Kaynak, "Soft Computing techniques in Discrete Time Sliding Mode Control Systems", Automatika 38, pp.7-14, 1997. [I I] R. BabuSka, "Construction of Fuzzy Systems Interplay between Precision and Transparency", Proc. of ESIT 2000 - European Symposium on Intelligent Techniques, Aachen, Germany, 2000. [ 121 Y. Jin, "Fuzzy Modeling of High-Dimensional Systems: Complexity Reduction and Interpretability Improvemement", IEEE Trans. on F u u y Syst., VoI.8, No.2, pp. 21 2-221, 2000. [ 131 S. Mitaim, B. Kosko, "The Shape of Fuzzy Sets in

Adaptive Function Approximation", IEEE Trans. On Fuay Systems, Vo1.9, No.4, pp. 637-656, 2000.

,