Robust chattering-free (higher order) sliding mode control for a vector-controlled induction machine K.B. Goh, M.W. Dunnigan and B.W. Williams Heriot-Watt University School of Engineering and Physical Science, Electrical, Electronic and Computing Engineering Department, Riccarton, Edinburgh, EH14 4AS, Scotland, U.K. K.B.Goh@hw.ac.uk, M.W.Dunnigan@hw.ac.uk and B.W.Williams@hw.ac.uk Abstract The chattering behaviour that is inherent in standard sliding mode control is often an obstacle for practical application if neglected. In this paper, special attention is given to a particular chattering-free control method: 2sliding “super twisting” control algorithm. Several control algorithms, including the standard and chatteringfree control algorithms, are assessed via position and speed control of a vector-controlled induction machine. Attention has also been paid to the friction dynamics in the induction machine system. Linear and non-linear friction dynamics in the induction machine model are considered. Simulation results using an induction machine model are first reported, followed by implementation results. A pre-defined reference signal is employed for tracking capability assessment as well as robustness against a high inertia load (about double the machine inertia) and DC motor load. 1 Introduction The chattering effect is the main drawback in the standard sliding mode control algorithm. The high frequency switching behaviour of the control signal has often made it impossible for practical application unless a solution is considered. A common solution to this problem is to attempt to smooth the signum function (i.e. sgn(s)=s/_s_) to obtain a continuous approximation. The signum function is seen to be relay-like in nature. The ideal relay characteristic is often impossible to implement. One possible answer is to replace the signum function by a sigmoid-like function (i.e. f(s)=s/(_s_+G)) to induce pseudosliding instead of ideal sliding [1]. The variable, G is a small positive scalar, and can be used to trade-off between maintaining ideal performance and obtaining smooth control action. In some cases, the control signal is thought to comprise of ‘low’ and ‘high’ frequency components. A natural solution is to pass the discontinuous control signal through a low pass filter to eliminate the high frequency component in the control signal. The tuning reaching law is another possible solution to the chattering problem [2] by introducing a linear term (i.e. f(s)=KLs+Usgn(s)) to the existing discontinuous signum term. By selecting the gain U to be small, the amplitude of the chatter will be reduced. However, U cannot be chosen equal to zero because the reaching time would become infinite. A large value for KL increases the reaching rate when the state is not near the switching surface. By this method, chattering can practically be suppressed. Slotine proposed a technique to change the dynamics near to the sliding surface in order to avoid a real discontinuity and at the same time to preserve the sliding mode properties [3]. This technique introduces a boundary layer on both sides of the sliding surface in order to avoid the chattering effect in the control signal. The sliding variable will reach within the vicinity of the sliding surface. However, the accuracy and robustness of the sliding mode are partially lost. Another approach proposed to eliminate the chattering problem uses higher order sliding modes (HOSM). The HOSM concept emerged in the 1980s with the motivation of tackling the chattering problem. A number of publications on the HOSM concept were from [4][5][6][7]. The HOSM method generalises the basic sliding mode idea by acting on the higher order time derivatives of the sliding variable instead of influencing the first time derivative as happens in the standard sliding mode control. Keeping the main advantages of the original approach, at the same time, HOSM totally mitigates the chattering effect. HOSM control has the potential to provide greater accuracy. It is known that in practice, the classical sliding mode precision is proportional to the time interval between the measurements or to the switching delay. An r-sliding mode realization may provide up to r-th order of sliding precision with respect to the measurement interval. The sliding order is also a measure of the degree of smoothness of the sliding variable in the vicinity of the sliding mode. The sliding order is defined as the number of continuous total time derivatives of the sliding variable [8]. This paper also pays attention to the friction dynamics in the system under consideration. The common friction dynamic terms in a machine are viscous, Coulomb, windage, static and Stribeck friction. Among these frictions, the Coulomb friction is the main problem, as far as control system design is concerned, because of its discontinuous nature (i.e. the signum term). Several general survey of machine friction models can be found in the survey paper [9] and books [10][11]. Dunnigan et al have presented the viscous friction components in an induction machine, using Slotine’s sliding mode control method [3] to counter the linear friction dynamic terms. The design has shown that superior performance can be achieved via this control method [12]. Lee et al considered the Coulomb friction in a nanometer cutting machine model for a position control system design. A sliding mode position controller, based on [3], was designed. The simulation results suggested that this technique would allow ultra-precision machining with motions on the order of micrometers. Bartolini proposed a second order sliding mode algorithm to simulate a mechanical system with friction [13]. The simulation showed that the control algorithm was efficient in counteracting the discontinuous disturbances such as Coulomb friction. In this paper, the control scheme under consideration is based on a particular 2-sliding (second order) supertwisting algorithm [5]. A sixth-order induction machine model (i.e. electrical system) is derived from the induction machine equivalent circuit in a stationary frame. For completeness, a mechanical system model is derived which has linear and non-linear friction dynamics incorporated into it. The designed controller is firstly simulated using the induction machine model. The controller is then implemented on a practical induction machine system. The controller is tested at several different conditions (i.e. nominal, high inertia load and DC motor load) to test the tracking capability and robustness against the external load disturbance. To compare the controller performances, other control algorithms include Slotine’s sliding mode (single component), proportional-integral and signum (single component) are tested and compared. 2 Mathematical model of induction machine The induction machine equivalent circuits in a stationary frame are show in Figure 1. Figure 1(a) shows the equivalent circuit for the d-axis of a twin axis model, while Figure 1(b) shows the q-axis [14]. ids (a) Rs Lls idr Rr + -Zr\qr idm iqs (b) Vqs Rs Lls _ iqr Llr Rr Lm _ Zr\dr iqm + Figure 1: Induction Machine equaivalent circuit in the stationary reference frame. (a) d-axis, (b) q-axis. The general mathematical dynamic model of the induction machine can be represented by six electrical equations and two mechanical equations as follows: Electrical system: di 1 (Vds ids Rs dm Lm ) Lls dt didr dt di 1 (idr Rr dm Lm (iqm Lm iqr Llr )Z r ) Llr dt didm dt Rc (ids idr idm ) Lm diqs diqm 1 (Vqs iqs Rs Lm ) Lls dt dt diqr dt diqm dt diqm 1 (iqr Rr Lm (idr Llr idm Lm )Z r ) Llr dt Rc (iqs iqr iqm ) Lm (1) Mechanical system: Te JZ r 3 Lm (iqm iqr )idr (idm idr )iqr 2 > @ Te TL (2) where TL , comprises of a linear, FL and a non-linear, FNL friction terms which are defined as: TL FL FNL FL FvZ r FNL 2 FwZ r2 ( Fc Fs e Fst Z r ) sgn(Z r ) (3) where Fv , Fc , Fw , Fs and FSt are viscous, coulomb, windage, static, Stribeck friction constants respectively. The signum function in (3) is approximated to the following function to avoid simulation difficulty. sgn Z r # Llr Lm Vds dids dt Zr Z r G fric (4) where G fric is a small positive constant. The viscous friction is a linear relationship between force and velocity. Windage loss normally arises in the machine due to fluid drag on a rotating body, i.e. windage in air [15]. Coulomb friction provides a constant retarding force and also introduces a discontinuity force (i.e. when direction changes) at zero velocity. Static friction occurs at the initial phase of motion, i.e. moving from 0 rad/s. It is due to friction resistance between two surfaces and the threshold of motion is characterised by the coefficient of static friction. Stribeck effect is a low velocity friction effect, i.e. pre-sliding displacement, rising static friction etc. The induction machine model saturation and the skin effect. neglects magnetic Remark: Other losses in the induction machine are neglected. 3 Higher order sliding mode control The sliding order characterises the dynamic smoothness in the vicinity of the sliding mode. If the control task is to keep a constraint given by equality of a smooth function, s to zero, the sliding order is the number of continuous total derivatives of s in the vicinity of the sliding mode. Thus, the rth order sliding mode is determined by the equalities s s ... s ( r 1) (5) 0 This forms an r-dimensional condition on the state of the dynamic system. The word “rth order sliding” is also referred to as “r-sliding”. The discontinuity is seen to act on s ( r ) 0 . They are thus characterised by a discontinuous control acting on the higher order time derivatives of the sliding variable instead of acting on its first time derivative ( s is discontinuous) only, as happens in standard sliding modes. Thus, the standard sliding modes are deemed to be the special case of HOSM obtained when the sliding order is one. The HOSM is considered as a generalisation of standard sliding modes. The main problem in implementation of the HOSM is the increasing information demand. Generally, any r-sliding controller keeping s r 0 needs s, s,, s ( r 1) to be available. One of the known exclusions is a so-called “super twisting” 2-sliding controller, which needs only measurement of s [5]. It is assumed that upper bounds on the non-linear dynamics are known. ) ! 0, *m O2 t 4)*M (W ) ) , *m3 (W ) ) 0 U d 0.5 (8) where W, U and O are variable controller parameters, ) is positive norm bound on the smooth uncertain function I, *m and *M are lower and upper positive bounds on the The super-twisting smooth uncertain function, J. algorithm does not need any information on the time derivative of the sliding variable. The choice of U 0.5 assures that sliding order 2 is achieved [5]. 0 ds s W! 0 4 s Statement of super-twisting algorithm Consider that the induction machine system is of the form, x(t ) f (t , x(t ), u (t )) (6) where x is the system state vecter, u is a bounded input and t is the time variable. The trajectories of the supertwisting algorithm are characterised by twisting around the origin on the phase portrait of the sliding variable. Figure 2 shows the phase plot of the super-twisting algorithm. The trajectories perform an infinite number of rotations while converging in finite time to the origin. The vibration magnitudes along the axes as well as the rotation times decrease in as a geometric progression. The super-twisting algorithm defines the control law, u (t ) as a combination of two terms. The first is defined in terms of a discontinuous time derivative while the second is a continuous function of the sliding variable. The super-twisting algorithm is defined as follows: where u (t ) u1 (t ) u2 (t ) u1 (t ) ­° u ® °̄- W sgn( s ) u 2 (t) ­° O s U sgn( s ). 0 ® U °̄ O s sgn( s ). (7) Figure 2: Phase plot of the super-twisting algorithm. Remark: The system under consideration is assumed to be bounded. 5 Control of an induction machine A switching function, s, is defined in term of speed and position errors. s Z error E hosmT error where Z error Z rmea Z rref and T error s I (t , s ) J (t , s )u u d1 I (t ) d ) ! 0 and sufficient conditions for finite time convergence are: (10) where I (t , x), J (t , x) are smooth uncertain functions and are assumed in the range of operation 0 *m d J (t ) d *M s d s0 T mea T ref . The switching surface s (Z error ,T error ) is designed so that by zeroing it, the control objective is achieved. It satisfies a second order differential equation of the form: u !1 s ! s0 (9) (11) The super-twisting algorithm in equation (7) can be simplified as follows: u (t ) u1 U O s sgn( s ) u1 W sgn( s ) (12) This control algorithm does not need any information on the time derivatives of the sliding variable nor any explicit knowledge of other system parameters. Effectively the controller can be tuned via three parameters, U , O and W. 6 Simulation and practical induction machine system setup The induction machine models in equations (1) and (2) are written in an S-function for simulation in the Matlab/SimulinkTM environment. The stator d-q voltages are calculated through frame conversion and these voltages are fed to the electrical model in equation (1). The simulation system is setup in the vector control environment as shown in Figure 4. For position and speed tracking test, a set of position and speed reference signals are used, as shown in Figure 5. The speed reversal (passing through zero rad/s) will provide information about the friction effect on the induction machine system. For the high inertia (about double the machine inertia) load condition test, a flywheel weight is attached to one end of the rotor shaft to increase the effective inertia of the rotor shaft. A dc motor is also used to simulate a load condition on the induction machine. The dc motor is controlled by Gemdrive-micro2 micro-processor controller. The magnitude of the dc motor torque is directly proportional to the armature current. As a result, the armature current is a measure of the degree of motor loading. The armature current is set to 100% via the micro-controller to give a ‘full-load torque’ in the test. The specification of the induction machine system is given in the Appendix. The system uses the standard indirect vector-control technique for torque control. The control technique configuration for the test is shown in Figure 5. Figure 3: Simulation system setup. The data acquisition and control hardware systems used in the test consist of a Texas InstrumentTM TMS320C6701 DSP board and a PC set. The C6701 DSP is a high performance floating point digital signal processor. The PC runs Texas Instruments Code Composer Studio (CCS) integrated development environment [16]. The software provides a compiler, assembler, and linker to allow development of C or Assembly language code for the DSP. A useful feature is the Real Time Data Exchange (RTDX), which allows access to read or write data from the DSP to the PC whilst the DSP is running in real time without interrupting the operation. A FPGA AED-106 Multi-channel analog expension daughterboard by Signalware [17] is employed to provide A/D interface, PWM generation and a shaft encoder interface. The generated PWM signals feed through a power inverter which consists of a dc link, six gate drive circuits and a three phase dc-ac IGBT inverter. iderr i*dse + - idse iqerr PI torque controller + i * - qse V*dse PI flux controller V*qse Figure 5: Position and speed reference signals. V*ds synchronous to stationary V* qs frame sin(T), cos(T) V*a 2/3 phase conversion 3/2 phase conversion iqse ids position & speed reference signal V*b Power inverter PWM V*c source board ia ib ic Va Vb Vc iqs idse designed controllers Tr calculation iqse stationary to synchronous frame induction machine Zr 1/s setup within DSP system and PC Figure 4: Induction machine test setup. hardware setup 7 ‘Slotine’ and ‘PPI’ respectively in the following description. Simulation results The friction and control parameters are shown in Table 1. Table 1: Friction and control parameters. 2 Table 2: Control system parameter settings. E sgn = 5.0 E slot = 10.0 KPP = 100.0 KPS = 6.0 J = 0.06 kgm G fric = 0.0001 Fs = 0.0085 Fw = 6.25 x 10-5 ksgn = 9.0 (max) KIS = 50.0 E hosm = 1.0 U = 0.5 Fv = 6.56 x 10-4 k slot = 9.0 (max) I = 0.8 Fc = 0.0085 W = 8.0 Fst = 0.047 O = 0.1 Figure 6 and Figure 7 show the simulation results of the position and speed errors respectively. The results with and without the friction in the model are included. The error amplitudes in the presence of the friction tend to be larger. The control signal that is required to track the reference signal is shown in Figure 8. The friction has an impact on the control signal when the machine direction changes (at about 0.65s) compared to the one without friction dynamics. Figure 9 shows the simulated switching variable and Figure 10 gives the respective simulated friction dynamic terms and the overall friction dynamics. The friction constants are chosen in such a way that the amplitudes of the respective friction dynamics are distributed equally at about r 0.1 Nm. 8 Figure 6: Position error. Implementation results and control system performance comparison To investigate the chattering effect on the control signal, three additional control algorithms are considered. A single component, signum term is employed in the test. This component is commonly used in sliding mode control design and is defined as u ksgn sgn ( s ) (13) where ksgn is a positive constant and s Z error E sgnT error is the sliding variable. A single component version of Slotine’s sliding mode control [3] is included and is represented by the following equation u k slot sat ( s / I ) sat ( s / I ) ­°sgn( s ) ® °̄ s / I Figure 7: Speed error. (14) s !I s dI where k slot is a positive constant, s Z error E slotT error is the sliding variable, I defines the width of the boundary layer, u is the controller output which is the torque * command reference current, iqse . A fixed-gain control system is also considered and comprises of nested position and speed loops with proportional (KPP) and proportional-integral (KPS, KIS) controllers, respectively. The additional control system design parameters are shown in Table 2. The signum term controller, Slotine’s controller and fixed-gain controller are denoted as ‘sgn’, Figure 8: Control signal. Figure 9: Switching variable. Figure 10: Simulated friction dynamic amplitude. The first practical test is to investigate the U design parameter in equation (12). The value of U is set to be 0.5. By testing U at different values, it became apparent that for values less than 0.5, the tracking capability of the controller degraded. Figure 11 shows the position error as the U value is reduced. Figure 11: Position error at different U values. Figure 12, Figure 13 and Figure 14 show the results under three different test conditions: nominal, high inertia load and dc motor load respectively. Figure 12(a) and 12(b) show the induction machine position and speed errors respectively. The maximum position error for the fixedgain (PPI) is r0.12 rad. The HOSM, Slotine and ‘sgn’ controller have shown to have similar amplitudes of maximum position error which is r0.025 rad. The maximum speed errors for the HOSM, Slotine, ‘sgn’ and PPI controllers are r0.40 rad/s, r0.40 rad/s, r1.0 rad/s and r0.70 rad/s respectively. The results show that high precision position tracking can be achieved using the sliding mode controller, particularly the HOSM controller. The ‘sgn’ controller generates the largest maximum speed error. It is believed that the chattering effect is the cause. The required control signals to maintain the reference trajectories are shown in Figure 12(c) and the required control signals are within r3.5A. As predicted the ‘sgn’ controller shows the most control activity, due to the chattering phenomenon. The rest of the control signals show no sign of chattering except at the moment the induction machine changes its direction. Greater control activity exists during the change of direction and this can be explained by the friction dynamics that exist in the system and also due to the inertia of the system. The HOSM controller has shown to be a solution to the chattering problem. These control signals replicate the signals obtained via simulation (with friction dynamic terms) in the earlier section. The plot in figure 12(d) shows the sliding variable of both the HOSM, Slotine and ‘sgn’ controller. It is noticed that the sliding variable is within the boundary limit of r0.8 and it is below the theoretical tracking precision (i.e. I / E slot ) for the Slotine controller. In the presence of the high inertia load, the errors produced by PPI controller are larger than the sliding mode controllers. In fact, the peak position error (i.e. r0.12 rad) for the PPI controller is about two times as great as the peak errors of the HOSM and Slotine controllers (i.e. r0.05 rad) with the high inertia load incorporated. The HOSM has shown to have close control performance to the Slotine controller. as shown in Figure 13(b). The PPI controller again has the largest peak error and the ‘sgn’ controller is not much better for speed tracking with a peak error of about the same as the PPI controller. Similarly, the ‘sgn’ controller has shown to produce chattering control. Other control signals show no sign of chattering apart from when the machine is changing its direction where more control activity is observed. The control signals are approximately within r5.0A. With the dc motor load incorporated in the system, the three sliding mode controllers again outperform the PPI controller. The HOSM has shown to be similar to the other two sliding mode controllers. It generates slightly larger maximum position errors although the peak-to-peak variation is about the same. It performs as well as the Slotine controller in terms of the peak speed error. The control signals for all the controllers unusually comprise of high control activities throughout the tracking process in the presence of the dc motor load. One explanation for this is that it is because of the sampling rate (i.e. on the feedback current) and the firing angle calculation of the armature current which is controlled by a separate industrial Gemdrive micro-controller [18]. This results in a ‘ripple-like’ armature current being generated and hence replicated in the load dynamics. The ‘sgn’ controller again shows its inherent chattering problem in the control signal. 9 Conclusion In this paper, a chattering-free higher order (second order) sliding mode control algorithm for the vector-controlled induction machine has been described and implemented. An induction machine model with linear and non-linear friction dynamics has been proposed. The effect of the friction dynamics has been shown in the implementation results as well as the simulation results and close replication of the results can be obtained. The performance of the HOSM controller has been investigated under three different test conditions together with three additional control algorithms. The HOSM controller has shown to be able to mitigate the chattering effect completely in the tests. The performance results of the HOSM controller have been shown to be comparable with the Slotine’s controller. The implementation results also highlight the robustness of the HOSM controller against the external load disturbances and superior tracking performance can be obtained. 10 References [1] Edwards C. and Spurgeon S.K., Sliding mode control: theory and applications, Taylor & Francis, UK, 1998. [2] Zinober, A.S.I., Deterministic control of uncertain systems, Peter Peregrinus Ltd, London, 1990. [3] Slotine, J.J.E., Sliding controller design for nonlinear system, International Journal of Control, vol.40, no.2, 1984. [4] Emel’yanov, S.V., S.K. Korovin and Levant, A., High order sliding model in control systems, Computational Mathematics and Modelling, Vol.7, No.3, pp. 294-318, 1996. [5] Levant, A., Sliding order and sliding accuracy in sliding model control, International Journal of Control, vol.58, no.6, pp.1247-1263, 1993. [6] Levant, A., Higher order sliding: collection of design tools, Proceeding of the European Control Conference, Brussels, 1997. [7] Bartolini, G., Ferrara, A. and Usai, E., Chattering avoidance by second-order sliding mode control, IEEE Transaction on Automatic Control, vol.43, no.2, pp.241-246, 1998. [8] Levant, A., Universal SISO sliding mode controllers with finite-time convergence, IEEE Transactions on Automatic Control, vol.46, no.9, pp.1447-1451, 2001. [9] Armstrong-Helouvry, B., Dupont, P. and Canudas De Wit, C., A survey of models, analysis tools and compensation methods for the control of machines with friction, Automatica, vol.30, no.7, pp.10831138, 1994. [10] Armstrong-Helouvry, B., Control of machines with friction, Kluwer, Boston, MA, 1991. [11] Armstrong-Helouvry, B. and Canudas de Wit, C., The control handbook, chapter Friction modeling and compoensation,” pp.1369-1382, CRC Press, 1996. [12] Dunnigan, M.W., Wade, S., Williams, B.W. and Yu, X., Position control of a vector controlled induction machine using Slotine’s sliding mode control approach, IEE Proc.-Electr. Power Appl., vol.145, no.3, pp.231-238, 1998. [13] Bartolini, G. and Punta, E., Chattering elimination with second-order sliding modes robust to Coulomb friction, Journal of Dynamic Systems, Measurement, and Control, vol.122, pp.679-686, 2000. [14] Bose, B.K., Power electronics and AC drives, Prentice-Hall International, 1986. [15] Etemad, M.R. and Pullen K.R., http://www.me.ic.ac.uk/department/review97/case/ca serr12.html, 1997. [16] Texas Instruments, Code Composer Studio Users Guide, Lit. No. SPRU328, May, 1999. [17] Signalware Corporation, Documentation Package for AED-106 Multi-Channel Analog Expansion Daughterboard, V.1., 2000. [18] Gemdrive Micro 2, Gemdrive-micro 2 technical manual – moulded control unit, Cegelec (Inductrial Controls), 1993. 11 Acknowledgements This project is supported by EPSRC Grant Reference GR/28447. Invaluable advice from Dr. Steve J. Finney throughout this work is gratefully acknowledged. 12 Appendix The definition of symbols are shown in Table 3. Table 3: Symbol definition. Symbol Definition Zr rotor speed (rad/s) magnetising inductances (H) stator and rotor leakage inductance (H) stator and rotor resistances (:) stator, magnetising and rotor current (A) d and q-axis stator voltages in the stationary frame (V). Lm Lls , Llr R s , Rr is , im , ir vds , vqs The induction machine used in the experiments has the specifications shown in Table 4 and Table 5. All parameters are referred to the stator unless stated otherwise Table 4: Induction machine rating. No. phases 3 Connection Star No. poles 4 Power 3 HP (~2.24 kW) 230 V rms (line) Line l current 9 A rms Line Rated speed 1430 rpm Rated 14.96 Nm (calculated at rated speed) Rotor Wound rotor with slip rings allowing construction the connection of external impedances (a) Table 5: Induction machine parameters. Stator resistance Rs 0.55 : Stator leakage inductance Lls 5 mH Magnetising inductance Lm 63 mH Rotor leakage inductance Llr 5 mH Rotor resistance Rr 0.75 : Core loss resistance Rc 320 : N 0.91 : 1 Stator:rotor winding ratio External rotor resistance RrEXT 1.0 : (b) (c) (d) Figure 12: Nominal condition - (a) position error, (b) speed error, (c) control signal and (d) switching variable. (a) (a) (b) (b) (c) (c) (d) Figure 13: High inertia load condition - (a) position error, (b) speed error, (c) control signal and (d) switching variable. (d) Figure 14: DC motor load condition - (a) position error, (b) speed error, (c) control signal and (d) switching variable.