See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/272997107 Particle swarm optimization of an extended Kalman filter for speed and rotor flux estimation of an induction motor drive Article in Electrical Engineering · June 2015 DOI: 10.1007/s00202-014-0322-1 CITATIONS READS 32 784 3 authors: Yahia Laamari Kheireddine Chafaa Université de M'sila University of Batna 1 11 PUBLICATIONS 49 CITATIONS 32 PUBLICATIONS 124 CITATIONS SEE PROFILE Belkacem Athamena Al Ain University 39 PUBLICATIONS 149 CITATIONS SEE PROFILE Some of the authors of this publication are also working on these related projects: Estimation of Induction Machines View project Modeling control and fault diagnosis of the electromechanical systems View project All content following this page was uploaded by Belkacem Athamena on 06 June 2015. The user has requested enhancement of the downloaded file. SEE PROFILE Particle Swarm Optimization of an Extended Kalman Filter for speed and rotor flux estimation of an induction motor drive Yahia Laamari1,2, Kheireddine Chafaa3 and Belkacem Athamena4 1 Electronics Department, Faculty of Technology, Annaba University Electrical Engineering Laboratory, M’Sila University 3 Electronics Department, Faculty of Technology, Batna University 4 Al Ain University of Science and Technology, UAE 2 Abstract A novel method based on a combination of the Extended Kalman Filter (EKF) with Particle Swarm Optimization (PSO) to estimate the speed and rotor flux of an induction motor drive is presented. The proposed method will be performed in two steps. As a first step, the covariance matrices of state noise and measurement noise will be optimized in an off-line manner by the PSO algorithm. As a second step, the optimal values of the above covariance matrices are injected in our speedrotor flux estimation loop (on-line). Computer simulations of the speed and rotor-flux estimation have been performed to investigate the effectiveness of the proposed method. Simulations and comparison with genetic algorithms (GAs) show that the results are very encouraging and achieve good performances. Keywords-- Induction Motors, Speed estimation, Stochastic state observer, Extended Kalman Filter, Particle Swarm Optimization. 1 Introduction Induction motors (IMs) are critical components in a number of industrial processes. They have been used for over a hundred years in various industrial applications as actuators or drivers to produce mechanical motions and forces. Because of their simplicity, efficiency, rugged structure, low cost and reliability, etc., the IM with a squirrel cage rotor was the most widely employed machine at fixed speed. However, the rapid developments in the field of power electronics have made their use possible in the field of variable speed drivers. In most applications and for accurate control of the IM, the information about rotor speed is very necessary and essential. Usually, rotor speed can be directly measured by using a sensor (an optical encoder) which is mounted on the motor shaft. However, the system cost, volume and weight of the motor are increased; also, the reliability of drive reduces with hard environments conditions [1, 2]. Furthermore, it is not always possible to reach all the state variables in the considered system. In recent years, several approaches have been proposed to eliminate the speed transducers and Hall effect flux sensors (inserted into the air gap of the machine) from industrial IM drives for 1 economical and technical reasons to reduce the cost and increase the reliability of the overall system [3-21]. Therefore, the need to use an auxiliary dynamic system, called observer, which is responsible for estimating the state of the system is necessary. These observers are very good alternatives to transducers and encoders. In general, the synthesis of the observer uses the information available on the real system, i.e., the model dynamics of the system, its inputs and its measured outputs. In the linear case, the problem of observer synthesis is well restrained especially with the famous observers: Luenberger [5-7] and Kalman filter [8, 9]. However, the problem of state estimation of nonlinear systems remains unresolved in a many cases, despite the many methods proposed in this direction such as Extended Luenberger [10-12], Sliding-Mode [13, 14], EKF [4, 15, 16], Model Reference Adaptive System (MRAS) [17, 18], Fuzzy logic [19, 20] and Artificial Neural Network (ANN) [21] based observers. In the last decade, the EKF is the widely-used observer for stochastic nonlinear systems. The main advantage of the EKF estimator over other estimators is its ability of taking into account the stochastic uncertainties which is the case of IM drives (model uncertainties and inherent nonlinearities). The EKF is a recursive filter based on the knowledge of the statistics of both states and noises created by system modeling and measurements. It can be applied to nonlinear, timevarying and stochastic systems. The EKF is also known for its high convergence rate, which improves transient performance significantly. Compared with nonlinear observers, EKF is characterized by better dynamic behavior, disturbance resistance and it can work even under standstill conditions. In the literature, there have been many studies that use EKF to estimate the rotor speed, machine parameters, and rotor flux [4, 16]. However, in this work the rotor speed and flux estimations have been performed by using EKF with the knowledge of the stator currents and voltages. On the other hand, the key problem of the EKF is that its estimation performance is greatly influenced by the values of the system parameters and covariance matrices Q and R of state and measurement noises, respectively. According to the Kalman filter theory, Q and R have to be obtained by considering the stochastic properties of the corresponding noises [1]; however, since these are usually not known, in most cases, the covariance matrices are used as weighting factors (tuning parameters).These matrices were first tuned manually by trial and error methods which are very tedious procedures [4]. To overcome this problem and to avoid the computational complexity of trial and error method, genetic algorithms were used to optimize matrices Q and R automatically [15]. In this paper, we propose a new alternative for the optimization of Q and R based on a method called PSO, which is an evolutionary algorithm inspired by social interactions. With this method, the identification problem of Q and R is changed to an optimization problem. Compared to genetic 2 algorithms, PSO method is simpler and more computationally efficient (easy implementation). The goal of our work is the simultaneous estimation of the rotor speed and flux by an adaptive EKF where the PSO algorithm is employed. The framework of the proposed method is constituted of two steps. First, we present a PSO-EKF structure which works in an offline manner and allows finding the optimal values of Q and R. Second, obtained values Q and R from step one are injected into EKF estimator running online to estimate rotor speed and flux. The rest of the paper is organized as follows: The basic mathematical formulation of EKF is recalled in section 2. Section 3 describes the continuous and the discrete IM models. Section 4 introduces the principle concepts of PSO. The proposed framework is presented in section 5. To validate the effectiveness of our method, simulation results are given in section 6. Finally, conclusions are presented in section 7. 2 Extended Kalman Filter EKF is an extension of the classical Kalman filter which considers nonlinear dynamical systems. In this paper, we will attempt to find the best linear estimate of the state vector xk of the induction machine which evolves according to the following discrete-time nonlinear dynamic: xk 1 f ( xk , uk , wk ) yk h( xk , vk ) (1) where f (.) is the state evolution function representing the machine dynamics, h(.) represents the relationship between the state vector and the observation yk , uk the machine input at time k and wk and vk are the process and measurement white Gaussian noise vectors with zero mean and with associated covariance matrices Q E wk wkT and R E vk vkT , respectively. To allow application of Kalman filter to the nonlinearity (1), this later must be linearized by using ˆ k 0, vˆk 0) , which gives us first order Taylor approximation near a desired reference point ( xˆk , w the following approximated linear model: 3 Induction motor model Mux Prediction Correction EKF Algorithm xˆk 1/ k 1 (Estimated state) Fig. 1 Extended Kalman filter framework xk 1 f ( xk , uk , wk ) f ( xˆk , uk ,0) Fk ( xk xˆk ) Wk ( wk 0) yk h( xk , vk ) h( xˆk , 0) H k ( xk xˆk ) Vk (vk 0) (2) where Fk , Wk , H k and Vk are the Jacobean matrices defined by: Fk f ( xˆk , w) h( xˆk , v) f ( x, 0) h( x, 0) , Wk , Hk , Vk x x xˆk w w0 x x xˆk v v 0 (3) Thus, the EKF algorithm can be given by the following recursive equations: xˆk 1/ k f ( xˆk / k , uk , 0) Pk 1/ k Fk Pk / k FkT Wk QWkT K k Pk 1/ k H kT ( H k Pk 1/ k H kT Vk RVkT ) 1 xˆk 1/ k 1 xˆk 1/ k K k ( yk h( xˆk 1/ k , 0)) (4) Pk 1/ k 1 Pk 1/ k K k H k Pk 1/ k where xˆk 1/ k is the priori prediction state vector, xˆk 1/ k 1 is the posteriori prediction state vector, Pk 1/ k is the priori prediction error covariance matrix, Pk 1/ k 1 is the posteriori prediction error covariance matrix and K k is the Kalman gain. Therefore, Extended Kalman filter structure is given in Fig. 1. 4 3 Induction motor model and discretization The continuous dynamic model of an induction motor can be described by fifth order nonlinear differential equations with four electrical variables (currents and fluxes), a mechanical variable (rotor speed), and two control variables (stator voltages). In the stationary reference frame ( , ), the states, the stator voltages, the measurements, state noises and measurement noises are: x t x1 x2 x3 x5 i s T x4 u t v s v s y i s T i s w t w1 w2 i s r r T T (5) (6) (7) w3 w4 w5 T v v1 v2 T (8) (9) Then, the nonlinear dynamic model of the induction motor can be given by the following continuous general nonlinear representation: x t f ( x(t ), u (t ), w(t )) y t h x t , v(t ) (10) where the continuous nonlinearity f and the continuous linearity h are given by: Lm Lm 1 1 1 ( T T ) x1 L L T x3 L L px4 x5 L v s w1 s r s r r s r s Lm Lm 1 1 1 ) x2 px3 x5 x4 v s w2 x1 ( Ls Lr Ls LrTr Ls x Ts Tr 2 Lm 1 x1 x3 px5 x4 w3 f ( x, u , w) x3 Tr Tr x4 Lm 1 x5 x2 px5 x3 x4 w4 Tr Tr f pLm C ( x3 x2 x4 x1 ) f x5 r w5 JLr J J (11) x v h ( x, v ) 1 1 x2 v2 (12) 5 Since the model given by (11) and (12) is a continuous model, and Kalman filter is a discrete algorithm, then discretization of (11) and (12) is needed. This discretization will be done using the forward Euler method which provides an acceptable approximation of the systems dynamics for a short sampling period. The resulting discrete form will be given by the following discrete general nonlinear representation: x k 1 f ( x(k ), u (k ), w(k )) y k h x k , v (k ) (13) where f in this case describes the discrete nonlinearity and h the discrete linearity such as: 1 1 1 1 1 ) x1 (k ) T x3 (k ) T px5 (k ) x4 (k ) T v s w1 1 T ( Ts Tr LmTr Lm Ls 1 1 1 1 1 x1 (k 1) 1 T ( ) x2 (k ) T px3 (k ) x5 (k ) T x4 (k ) T v s w2 Ts Tr Lm LmTr Ls x (k 1) 2 L 1 f x3 (k 1) T m x1 (k ) (1 T ) x3 (k ) Tpx5 (k ) x4 (k ) w3 Tr Tr x4 (k 1) L 1 x5 (k 1) T m x2 (k ) Tpx5 (k ) x3 (k ) (1 T ) x4 (k ) w4 Tr Tr ff pLm Cr T ( x3 (k ) x2 (k ) x4 (k ) x1 (k ) (1 T ) x5 (k ) T w5 JLr J J (14) x (k ) v1 h 1 x2 (k ) v2 where T is the sampling period. 4 Particle Swarm Optimization Particle Swarm Optimization is a population-based stochastic search algorithm inspired by the social behavior of bird flocking and fish schooling. It was first introduced by Kennedy and Eberhart in 1995 [22]. Similar to other evolutionary computation algorithms, such as genetic algorithms (GAs), PSO is a search method that exploits the concepts of social sharing of information. In PSO, the population is called a Swarm, and each individual in the swarm is called a particle. Starting with an arbitrarily initialized swarm population, each member in PSO flies through a searching Ndimensional solution space, and remembers the best encountered position. Note that each particle in the PSO is a candidate solution of the optimization problem and can communicate the better position to each other particle, and then particles in the swarm can adjust dynamically their own positions and velocities. PSO algorithm was used successfully in many engineering areas such as telecommunications [23], instrumentation [24] and automatic control [25]. 6 Each particle in the swarm of size N is described by its position xi N and velocity vi N ( i 1, 2,..., N ) . The position of each particle is a potential solution, and the best position that each particle achieved during the entire optimization process is memorized as pbi N (best local position). The swarm as a whole memorizes the best position ever achieved by any of its particles as pg N (best global position). Position optimality is measured by means of one or more fitness functions defined in relation to the considered optimization problem. The position and the velocity of each particle in the k th iteration are updated according to the following equations: vi (k 1) w.vi (k ) c1.r1 (k ). pbi (k ) xi (k ) c2 .r2 (k ). pg (k ) xi (k ) xi (k 1) xi (k ) vi (k 1) (15) (16) where r1 (.) and r2 (.) are two random numbers uniformly distributed in the interval [0,1] to provide a stochastic weighting of the different components participating in the particle velocities. c1 and c2 are positive constants defining the cognitive acceleration (control the relative impact of the local knowledge on the movement of each particle) and the social acceleration (control the relative impact of the global knowledge on the movement of each particle), respectively. w is the inertia weight factor, it is used to control the impact of the previous history of velocities on the current one. Equation 15 updates the velocity from the previous velocity to the new one. The new position is then determined by the sum of the previous position and the new velocity by equation 16. Stop Random initialization Calculate initial fitness Move the particles with PSO velocity Fitness evaluation for each particle Obtain pbest, gbest Calculate new searching directions Criterion is met ? No Yes Output result Stop Fig. 2 PSO algorithm flowchart 7 Swarm optimization algorithm main steps are described as illustrated by the flowchart in Fig. 2 from which six steps can be distinguished: 1) Start a population of particles with random positions and velocities in N dimensions of the problem space. 2) Evaluate the fitness of each particle in the swarm. 3) Change the velocity and position of the particle according to equations (15) and (16), respectively. 4) As in step 2, the updated position particles are evaluated according to their fitness; the best local and best global positions will be updated if necessary. 5) Loop to step 3 until a terminal condition is met, otherwise the optimization process ends. 6) Outputting the best global solution obtained from this optimization process. 5 Proposed PSO-EKF estimation system To apply extended Kalman filter, parameters Q and R have to be determined which is a difficult task especially that the stochastic properties of the corresponding noises are unknown. To avoid this difficulty, the covariance matrices will be considered as free parameters to be tuned. In the literature, these matrices were first tuned manually by trial and error methods which were very laborious tasks [26]. In order to surmount this problem and to avoid trial and error method, genetic algorithms were used to tune and optimize matrices Q and R automatically [15]. In this section, we propose a new alternative for the tuning and optimization of Q and R based on the PSO algorithm. The structure of the method is constituted of two steps. As a first step represented in Fig. 3, we present a PSO-EKF structure which works in an offline manner and allows finding the optimal values of Q and R. As a second step, obtained values Q and R from step one are injected into EKF estimator running online to estimate the rotor speed and fluxes of the induction motor. Input Measured rotor speed Induction motor (MAS) Measured output + - Extended Kalman Filter (EKF) Estimated rotor Speed Kalman parameters Performance evaluator (MSE) Particle Swarm Optimizer (PSO) Fig. 3 Block diagram of PSO-EKF parameter estimation system 8 The framework of the PSO-EKF parameter estimation system is illustrated in Fig. 3. The system input u t v s T v s and the measured response y i s T i s are used by the observer EKF, where input u is applied to both induction motor and extended Kalman filter. Actual (measured) rotor speed ( ) of IM and estimated rotor speed ( ̂ ) of EKF are set to be inputs to a performance evaluator through a comparator. Note that the optimization will be impossible if the speed can’t be measured. The performance evaluator calculates the fitness function which is a Mean Square Error (MSE) criterion between and ̂ . Then, obtained MSE will be applied to the particle Swarm optimizer. Based on MSE values, PSO optimizer will calculate and optimize the unknown parameters of covariance matrices Q and R by updating the particle solutions according to updating equations (15) and (16) (see Fig. 2) to provide particles better sets. The new particle solutions and updated Q and R are then used for the adaptation of the EKF for the next iteration until a preset number of iterations has been reached, and then optimal values of Q and R are obtained. Finally, optimized values Q and R are injected into EKF estimator running online to estimate rotor speed and flux. Note that the PSO-EKF algorithm is implemented offline because PSO needs a several iterations to obtain acceptable solutions. For each iteration, the PSO-EKF estimator has to be executed once; consequently, PSO-EKF must be executed several times allowing the optimization of the parameters Q and R from each measurement. 6 Simulation results In this section, an induction motor is simulated on a PC using Matlab software (version 7.12.0.635) to demonstrate the performance of the proposed EKF-PSO approach. Note that all of our codes are written in Matlab language in M-files with sampling period 10-4 sec. The motor used has the parameters cited in appendix B. In our simulations, the IM is fed via an ac drive in open loop with a sinusoidal input voltage to achieve more realistic tests. The state and measurement have been both corrupted by Gaussian noises with zero mean values and with variances 104 and 102 , respectively. Recall that the key problem of the EKF is that the estimation results are greatly affected by the covariance matrices Q and R of noises. Bad choice of these matrices will make the result of estimation divergent or have large estimate errors. In order to yield the best estimations, the tuning of Q and R will be necessary. Changing these parameters affects both the transient duration and steady-state operation of the EKF. For example, increasing Q, means that state noises or uncertainties in the machine model are large, this makes Kalman gain also increase and thus the 9 measurements will be more heavily weighted and the EKF transient performance will be faster. On the other hand, if R increases, this corresponds to strong noise measurements, and the noise will be weighted less by EKF. In this case, Kalman gain is decreased which gives us a slower transient performance. To justify the need of our proposed method, let’s begin with the frequently used method to get Q and R which are done by experimental trial and error to achieve the desired transient and steadystate behaviors of the estimations of the speed and fluxes. In the simulation, error covariance matrix P of the EKF is set to a unit 5×5 matrix and Q and R matrices with dimensions 5×5 and 2×2, respectively, are assumed to be qi s 0 Q diag ([qi s , qi s , q r , q r , q ]) 0 0 0 0 qi s 0 q r 0 0 0 0 0 0 0 q r 0 ri s R diag ([ri s , ri s ]) 0 0 0 0 q 0 0 0 0 ri s Table.1 Trial-error estimations and EKF Performances Case Values of Q and R 1 qi q q ri 0.1 2.3761×10 2 qi q 1e 3, q ri 1e 2 136.8057 Very Poor 3 qi q q 0.01, ri 0.1 72.2788 Poor 4 qi q 1e 7, q 1e 2, ri 1e 1 33.1022 Poor 5 qi q 1e 6, q ri 1e 2 19.1381 Poor 6 qi q 1e 4, q 1e 2, ri 1e 1 2.2877 Good 7 qi q 1e 4, q 1e 3, ri 1e 2 1.0220 Good 8 qi q 1e 3, q 1e 3, ri 1e 1 0.3866 Very good Estimation quality MSE 3 Very Poor Assuming that the two components of currents have approximately the same magnitude and dynamics, the first two entries in the diagonal of Q have been chosen to be identical (qi s qi s qi ) .The same thing for the two flux components (q r q r q ) and the two diagonal entries of R (ri s ri s ri ) .For comparison purposes, the performance of the EKF with 10 diverse compositions of Q and R is evaluated by using the MSE criterion between the estimated speed and the actual rotor speed as follows: MSE 1 K (i iest ) i 1 K (17) where iest is the estimated speed, i the actual speed and K the number of data samples. We show in Table 1 typical covariance matrices entries ( qi , q , q and ri ) of EKF with their corresponding performances (MSEs) obtained by a trial and error method. It is seen that we have good performance in MSE for some values of Q and R (cases 6, 7 and 8 in Table 1). A bad choice of these values can create large estimate error (case one in Table 1 and dashed line in Fig. 4). We note that the best value of MSE (case 8) corresponds to the best estimate of rotor speed (case eight in Table 1 and solid line in Fig. 4). 1600 1400 1200 Speed (rpm) 1000 800 1550 600 1500 400 1450 1400 200 0 -200 0 1350 Worst estimation: case 1 of Table 1 Actual speed Best estimation: case 8 of Table 1 0.5 1 2.04 1.5 Time (sec) 2.06 2 2.08 2.1 2.12 2.14 2.16 2.5 3 Fig. 4 Speed estimation result with trial and error method The manual adjustment of EKF using the trial and error method is simple to accomplish, but the process is very long in terms of time. So, obtaining satisfactory estimation performance can only be achieved with great effort by an experienced operator (expert). Indeed, it is not possible to easily deduce a relationship (compromise) between the values of the covariance matrices and the best speed estimation results. This problem is solved by our PSO-EKF framework, where we propose to get the optimal covariance matrices by using the PSO algorithm as shown in Fig. 3, which will allow us to obtain better estimations with higher precision than the trial and error method. It should be noted that the convergence of the PSO method to the optimal solution depends on the parameters c1, c2 and w. According to [27], the best values of these parameters are defined as follows: c1 1.5 2 , c 2 2 2.5 and w 0.4 1.4 . During simulations, swarm population is set to 20 particles and the coefficients in (15), w , c1 and c2 are set to 0.8, 1 and 1.5, respectively. 11 Table. 2 PSO-EKF estimations and EKF performance with PSO parameters: c1=1, c2=1.5 et w=0.8 iterations 5 ri 0.1818; qi 0.0838; q 0.0038; q 0.0027 0.7406 10 ri 0.205; qi 0.3424; q 0.0054; q 0.0117 0.3897 20 ri 1.1597; qi 0.2512; q 0.0152; q 0.0279 0.2619 30 ri 15.2927; qi 0.4156; q 0.2518; q 0.0823 0.0848 15 Speed error (rpm) Speed (rpm) 2000 1600 1000 1500 0 1400 0.38 -1000 𝑴𝑺𝑬 Values of Q and R 0 0.1 0.2 0.3 0.4 0.4 0.5 Time (sec) 0.42 0.6 0.44 0.7 10 5 0 -5 0.46 0.8 0.9 -10 1 0 0.1 0.2 0.3 0.4 0.5 Time (sec) 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 Time (sec) 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 Time (sec) 0.6 0.7 0.8 0.9 1 Estimated alpha flux component 2 0.15 Alpha flux error (Web) Actual alpha flux component Flux (Web) 1 0 -1 -2 0 0.05 0.1 0.15 Time (sec) 0.2 0.25 0.1 0.05 0 -0.05 -0.1 0.3 Estimated beta flux component 2 Beta flux error (Web) Flux (Web) 1 0 -1 -2 0.5 0.2 Actual alpha flu component 0.51 0.52 0.53 0.54 0.55 0.56 Time (sec) 0.57 0.58 0.59 0.6 0.1 0 -0.1 -0.2 Fig. 5 Simulation results obtained by PSO-EKF in stationary reference frame relative to table 1 (case of 30 iterations) We give in Table 2 optimized parameters ( qi , q , q and ri ) of EKF with their corresponding MSEs obtained by our proposed approach PSO-EKF given in Fig. 3. Table 2 shows the convergence of PSO-EKF process, where the MSE is decreased to 0.0848 after 30 iterations. Simulation investigations show that the proposed approach gives excellent estimations within 30 iterations in this application compared to trial and error approach. Simulation results relative to the best optimal values of EKF parameters (30 iterations) are plotted in Fig. 5, where we remark a good agreement between actual and estimated speeds and rotor fluxes in both transient and steady states. It also shows the transient response of alpha flux component, and the steady state response of beta flux component. It can be noted that estimation errors of speed and fluxes remains both within 12 acceptable bands. In Fig. 6 we present the corresponding evolution of the fitness function with respect to the number of iterations. 2500 Fitness function 2000 1500 1000 500 0 0 5 10 15 Iteration 20 25 30 Fig. 6 Evolution of the fitness function relative to PSO-EKF (case of 30 iterations in Table 2) Table. 3 GA estimations and EKF performance Generation s Values of Q and R 𝑴𝑺𝑬 5 ri 0.929; qi 0.947; q 0.024; q 0.07 1.1620 10 ri 0.95; qi 0.906; q 0.033; q 0.035 0.7176 20 ri 0.707; qi 1.435; q 0.021; q 0.028 0.3105 30 ri 15.8244; qi 3.2488; q 0.3083; q 0.0341 0.1487 In what follows and for comparison purposes, our proposed method will be compared with both trial-error method and GA technique. The parameters of GA are chosen from reference [15] as follows: Initial population size 100; Probability of crossover 0.8; Mutation probability 0.01; Initial range of real-valued strings [0, 0.1]. Note that both PSO-EKF and EKF optimized by GA method give more accurate rotor speed estimation compared to the trial and error method as shown in Tables 1, 2 and 3. It is worthy to mention that, our PSO-EKF method outperforms the EKF optimized by GA method in accuracy (see Tables 2 and 3: MSE in our case is less than the MSE in GA case) and in convergence rate (see Figures 6 and 7: our approach is faster than the GA approach), which confirms the superiority of our approach. 13 300 Fitness function 250 200 150 100 50 0 0 5 10 15 20 25 30 Generation Fig. 7 Evolution of the fitness function relative to GA (case of 30 iterations in Table 3) To evaluate the effectiveness of our PSO-EKF method, two scenarios are performed: load torque variation and parameter changes (due to temperature rise). Fig. 8 shows the actual and estimated speed and rotor flux of the IM under a load torque of 10 N.m applied in the interval from 0.4s to 0.7s only. By inspecting the results of this first scenario, it can be noted that we have a quite performance in the estimation of the speed and in both components of the rotor flux. Speed (rad/s) 200 150 160 100 150 Estimated Speed Actual speed 50 140 0 0.72 0.74 0.76 0.78 0 0.1 0.2 0.3 0.4 0.5 0.8 0.82 0.6 0.7 0.8 0.9 1 Time (sec) Estimated alpha flux component Actual alpha flux component 1.5 Flux (Web) 1 0.5 0 -0.5 -1 -1.5 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Time (sec) Estimated beta flux component Actual beta flux component 1.5 Flux (Web) 1 0.5 0 -0.5 -1 -1.5 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Time (sec) Fig. 8 Simulation results of PSO-EKF under load torque variation test For the purpose of parameter changes, the motor resistances used in EKF model are kept constant at their nominal value Rr . Fig. 9 shows the actual and estimated speeds when the rotor resistance is 14 increased due to a load torque of 10N.m is applied starting from 0.4s. For this purpose, PSO-EKF shows a better accuracy of speed even when the rotor resistance is increased by 25% or 50%. 2000 Speed (rpm) 1500 1000 1500 500 1400 -500 Estimated Speed Actual speed 1300 0 0.58 0 0.1 0.2 0.6 0.3 0.62 0.64 0.4 0.66 0.68 0.5 Time (sec) 0.7 0.72 0.6 0.7 0.8 0.9 1 6.5 Rotor resistance 6 Rr +50% 5.5 Rr +25% 5 4.5 Nominal Rr 4 3.5 3 0 0.1 0.2 0.3 0.4 0.5 Time (sec) 0.6 0.7 0.8 0.9 1 Fig. 9 Speed estimation result of PSO-EKF under rotor resistance variation 7 Conclusion In this paper a new approach combining EKF with PSO algorithms to achieve high performance and accurate rotor flux and speed estimations in induction motor drives has been presented. PSO technique was used for the optimization of the performances of EKF. The proposed optimization enables the noise covariance matrices Q and R on which the EKF performance critically depends, to be suitably selected. Simulation results demonstrated the efficiency of the proposed approach, where obtained estimations are more precise and the optimization is faster than their counterparts with GA. The estimation algorithm was also tested under challenging variations of load torque and rotor resistance where good performances were obtained, which motivates the use of our proposed method for sensorless control of IM drives. 15 Appendix A: Nomenclature , : stator index Ls ( Lr ) : stator (rotor) inductance u : stator voltage Lm : mutual inductance is : stator current : total leakage coefficient r : rotor flux p : pole pairs number : rotor speed J : rotor inertia Ts (Tr ) : stator (rotor) time constant ff : friction coefficient Appendix B: Motor parameters The ratings of the three phase 50 Hz, 1.5 kW, 220/380V, 4 poles, 1420 rpm squirrel cage induction motor are: Rs 4.85 , Rr 3.805 , Ls 0.274 H , Lr 0.274 H Lm 0.258 H , J .031 kg.m2 , f f 0.008 N .m / rad / s References 1. Vas P (1998) Sensorless, vector and direct torque control. Oxford University Press, London 2. Aydogmus O, Sunter S (2012) Implementation of EKF based sensorless drive system using controlled PMSM fed by a matrix converter. Electrical Power and Energy Systems 43:736-743 3. Akin B, Orguner U, Ersak A, Ehsani (2006) Simple Derivative-Free Nonlinear State Observer for sensorless AC Drives. IEEE/ASME Trans. on Mechatronics 11:634-642 4. Barut M, Bogosyan S, Gokasan M (2007) Speed-sensorless estimation for induction motors using extended kalman filters. IEEE Trans. on Industrial Electronics 54272-280 5. Luenberger DG (1971) An introduction to observers. IEEE Trans. on Automatic Control 16:596-602 6. Bojoi R, Griva G, Profumo F (2006) Field oriented control of dual three-phase induction motor drives using a Luenberger flux observer. In: Industry Applications Conference, Tampa, USA , pp 1253–1260 7. Kwon TS, Shin MH, Hyun DS (2005) Speed sensorless stator flux-oriented control of induction motor in the field weakening region using Luenberger observer. IEEE Trans. on Power Electron. 20:864–969 8. Kalman RE (1960) A new approach to linear filtering and prediction problems. Trans. of the ASME Journal of Basic Engineering 82:35–45 9. Chafaa K, Ghanai M, Benmahammed K (2007) Fuzzy modelling using Kalman filter. IET Control Theory Appl. 1:58-64 10. Kowalska TO (1989) Application of extended Luenberger observer for flux and rotor time-constant estimation in induction motor drives. IEE Proceedings on Control Theory and Applications 136:324–330 16 11. Du T, Vas P, Stronach AF, Brdys MA (1994) Application of Kalman filters and extended Luenberger observers in induction motor drive. In: Proc. Intelligent motion, pp 369-387 12. Du T, Brdys MA (1993) Shaft speed, load torque and rotor flux estimation of induction motor drive using an extended Luenberger observer. In: Proc. of IEEE-IEMDC’93 annual meeting, pp179–84 13. Gadoue SM, Giaouris D, Finch JW (2010) MRAS sensorless vector control of an induction motor using new sliding-mode and fuzzy-logic adaptation mechanisms. IEEE Trans. Energy Convers. 25:394–402 14. Chen F, Dunnigan MG (2002) Comparative study of a sliding-mode observer and Kalman filters for full state estimation in an induction machine. IEE Proc-Electric Power Appl. 149:53–64 15. Shi KL, Wong YK, Ho SL (2002) Speed estimation of an induction motor drive using an optimized extended Kalman filter. IEEE Trans. on Industrial Electronics 49:124–133 16. Aksoy S, Muhurcu A, Kizmaz H (2010) State and parameter estimation in induction motor using the Extended Kalman Filtering algorithm. In: Proc. of the International Symposium, Modern Electric Power Systems (MEPS), Wroclaw, Poland, pp 1-5 17. Koubaa Y, Boussak M (2005) Rotor resistance tuning for indirect stator flux oriented induction motor drive based on MRAS scheme. Trans. on Electrical Power, Revue European. 15:557–570 18. Agrebi Y, Triki M, Koubaa Y, Boussak Y M (2007) Rotor speed estimation for indirect stator flux oriented induction motor drive based on MRAS Scheme. Journal of Electrical Systems 3:131–143 19. Choi HH (2007) LMI-Based Nonlinear Fuzzy Observer-Controller Design for Uncertain MIMO Nonlinear Systems. IEEE Trans. on Fuzzy Systems 15:956-971 20. Xiao-Jun Ma, Zeng-qi Sun, Yan-Yan (2011) He Analysis and design of fuzzy controller and fuzzy observer. In: IEEE 12th International Symposium on Computational Intelligence and Informatics (CINTI), Budapest, Hungary, pp 45-50 21. Karanayil B, Rahman MF, Grantham C (2007) Online stator and rotor resistance estimation scheme using artificial neural networks for vector controlled speed sensorless induction motor drive. IEEE Trans. on Industrial Electronics 54:167–176 22. Kennedy J, Eberhart RC (1995) Particle swarm optimization. In: Proc. of the IEEE International Conference on Neural Networks, Piscataway, USA, pp 1942–1948 23. Boeringer DW, Werner DH (2004) Particle swarm optimization versus genetic algorithms for phased array synthesis. IEEE Trans. on Antennas and Propagation 52:771-779 24. Sun T H, Tang CH, Tien FC (2011) Post-Slicing Inspection of Silicon Wafers Using the HJ-PSO Algorithm Under Machine vision. IEEE Trans. on Semiconductor Manufacturing 24:80-88 25. Gaing ZL (200) A particle swarm optimization approach for optimum design of PID controller in AVR system. IEEE trans. Energy Conversion 19:384-391 26. Hongxia Y, Jingtao H (2012) Speed and Load Torque Estimation of Induction Motors based on an Adaptive Extended Kalman Filter. Trans. Tech. Publications, Advanced Materials Research 433-440:70047010 27. http://www.ocw.mit.edu/courses/engineering-systems-division/esd-77-multidisciplinary-system-designoptimization-spring-2010/lecture-notes/MITESD_77S10_lec12.pdf 17 View publication stats