Printer Friendly


Byline: Mohammad Shabandokht Zaremi and Mahmood Ghanbari


In this paper a new method for acquiring good performance of an extended Kalman Filter (EKF) for speed estimation of an induction motor drive is proposed. Particle swarm optimization (PSO) is used to optimize covariance and weight matrixes of the EKF, so that stability and accuracy of filter in speed estimation is ensured. Simulation studies on a constant V/Hz controller and it s comparison with the results obtained from genetic algorithm under different operating conditions, demonstrates the efficiency of the proposed method.

Keywords- Kalman filter, EKF, induction motor, PSO algorithm, genetic algorithm.


Speed estimations methods have developed great interest among induction motor control researches in recent years. From the drive system point of view, elimination of speed sensor and associated measurement cables will result in lower cost and ruggedness, and more reliability. In comparison with nonlinear observer (Manes et al., 1994)[1], Kalman filter has good dynamic performance and is robust under disturbance. The Kalman filter is a special kind of observer that provides an optimized noise filtering in measurement and inside the system, if the covariances of these noises are known. The extended Kalman filter (EKF) is based on the nonlinear extended model of induction motor that includes rotor speed as a state variable. Although considerable progress has been achieved in induction motor drives(Henneberger and Kim1996; Salvatore1993)[2,3], fewer attempts have been made on optimization of filter performance.

Since correct noise matrices cannot be selected based on classic theories, they are usually regulated experimentally and by a trial-and- error method(Manes et al., 1994)[4]; an exhausting process which may not give accurate results. In this paper, PSO algorithm is used for optimization of noise covariance matrices to achieve best EKF performance. Simulation studies are conducted on a constant closed-loop V/Hz controller to satisfy the need for the optimized EKF. The simulation was also conducted with GA algorithm, in which the obtained results were not so reliable.

2- EKF algorithm for rotor speed estimation

To illuminate the problem of induction motor estimation, more details of this subject are discussed in this section. As shown in the figure below, the optimum estimator - that is Kalman filter can be implemented with respect to the conducted measurements on the available motor voltage and currents, and hence goal states can be defined (Velazquez 2004; Bolognani 2003; Shi 2002)[5,6,7].

In figure above, some parameters are considered in different conditions in which each parameter has its own role as the goal or the input. In this figure Kalman filter acts as the main brain of the system and will generate the optimum outputby receiving the inputs.

As the governing equations of induction motor are very nonlinear, it seems necessary to employ an appropriate method which responds to this nonlinear problem. Employing nonlinear Kalman algorithm makes the optimum implementation of this problem possible.

Albeit it must be noted measurements in this problem only include electrical currents, and linkage flux is took into account in states.

Employing Kalman algorithm in rotor speed analysis requires some fundamental steps. In the first step governing dynamic equations of the system must be written. These equations must be based on the relative equations between states and measurements. At first the states to be estimated are determined. The state matrix in this problem is defined as below:

To implement the estimation algorithm, dynamic equations must be discretized. The system dynamic transition matrix will be as below (Shi et al., 2002):


Where Ts is the sampling time interval, and we have:

System priori estimation can be performed with respect to the governing dynamic equations of the system. It must be noted these equations are written for a goal with constant speed.

But the equations would be different for a variable speed motor.

Covariance matrix of priori estimation is obtained by the following equation:


Where Cov_mat in this equation is the estimation covariance matrix after post-priori estimation.

In each iteration, post-priori estimation can be done after receipt of ampere-meter measurements information. To perform this estimation, at first the gain of Kalman algorithm must be computed. This quantity illustrates the dependence degree of the algorithm to the measurement, namely direct current and quadrature current of the stator:


In nonlinear Kalman algorithm, the implemented equations revolve linearly around operating point. The operating point is also obtained by the estimation of the algorithm itself. This closed chain is the basic idea of extended Kalman filter. For linearization in this problem, only structure matrix; i.e. H matrix, is linearized. This matter is stated in figure below:


In the equation above, is the measurement noise. In fact this quantity shows the standard deviation of the ampere- meter noise. Finally, post-priori estimation is performed as below:


At each iteration of the algorithm, Cov_matmatrix loses its symmetry. So, the below formula is used to keep the symmetry of this matrix:


By complete formation of the modelof the nonlinear Kalman filter for rotor speed analysis, simulations based on this filter can be performed.

As PSO algorithm is used in the proposed Kalman algorithm, a brief explanation of this algorithm is provided in following.

3- PSO Algorithm

Intelligent systems have successful implementation in algorithm models design for function optimization.PSO was first introduced by Kennedy and Eberhart as a public intelligence. The initial idea of this random optimization algorithm is the simulation of the social behavior of birds in a flock (Shi 2002; Eberhart 1999; Xin 2011)[8,9,10]. In PSO method, each element of the set is a candidate solution which tracks the proximity of other elements to the solution, and will imitate their behavior if they are superior. This cooperation results in the facility of final optimum solution achievement. During optimization, each element or particle's best position (pbest) and best position among all particles (gbest) are always recorded. It is clear that tracking gbest is a way for sharing information. PSO is a repetition based algorithm with a simple formula, which makes it appropriate for searching purposes. The formulation procedure is given in following.

With the assumption of presenting N particles in k-th iteration in the following form:


Where xnk= [ln , un], and un and ln are the upper bound and lower bound for n-th particle; respectively. In the first iteration the particles value is selected randomly.

The velocity vector at that iteration is shown as below:

Each particle moves with a certain velocity between Vmin,n and Vmax,n searched space. This will cause more solutions to be checked.

With the assumption of function J as objective function, this function must be minimized by PSO algorithm. This minimization will result in proximity of estimated signal to the measured signal. Objective function J is stated as formula below:


In this formula X_est(k) and X_mea(k) are estimated values and real values for signal X; respectively. By calculating objective function, the position of each particle is subsequently updated by formulas below:


In above equations, pbestn is the best previous position of n- th particle, gbestis the position of best article among all articles, r1 and r2 are random variables in range of (0,1), c1 and c2 are positive constants, and w is inertia weight.

The higher values of inertia weight facilities global search, and its lower values are appropriate for local search. Hence, this accommodation causes algorithm capability in optimum search so that less iterationis needed for convergence. In each iteration, PSO algorithm is employed for estimation of noise matrix elements and then KF estimates the states. Finally by using estimated values, objective function is formed and particles' position is subsequently determined. This processing is repeated until achieving an acceptable solution. Figure 2 shows PSO algorithm flowchart.

4- Problem definition and its governing equations

In this project the goal is to estimate the states related to the model of an induction motor. These states include current, flux linkage, and rotor speed. The main goal of this project is determination of last parameter which is rotor speed. According to the equations presented for Kalman filter, at first the matrix of system model must be implemented. This matrix has a general form similar to equation (2). In the above matrix, we have:


The remaining parameters are obtained from the quantities related to the motor under study. For an induction motor with the presented matrix model above, the states are defined according to the vector of equation (1). As it is seen, these states include direct current and quadrature current of the stator, direct flux linkage and quadrature flux linkage of the rotor, and rotor speed. Rotor speed is the mail goal in estimation of parameters.

The proportion matrix and initial matrix are also as below; respectively:

In order to perform the simulation, firstly the parameters of the considered motor must be determined. For the motor under study the parameters below are defined.


Rr=0.161;Lr=0.000745;Lm=0.0393;Ls=0.0014;Rs=0.288; Time step of the simulation is 0.0001 second. Initial values for states are also determined by the vector below:

Also the covariance matrix has the form below in first iteration:

The initial values of PSO algorithm are as below:

Wmin=0.4;Wmax=0.9;c1=2.8;c2=1.2;r1=rand;r2=rand; It is reminded that PSO algorithm optimizes the model noise matrix and measure noise matrix. The measurements include direct current and quadrature current of the stator. In each iteration of the algorithm the optimum values are selected from noise matrices by PSO, and then these values are applied to the Kalman filter, and the states are estimated using the measurements. The last estimated parameter is the goal parameter, i.e. rotor speed. Before applying Kalman algorithm, the measurements must be created virtually. This is done by a simulation in the MATLAB Simulink environment.

By using outputs of this simulation and created parameters, the related code of the algorithm can be employed to achieve desired answer. In the following the simulation results are presented and explained. The first studied case is direct current of the stator which is shown in figure 4.Since filter estimation has acceptable performance and is very close to the real value, the estimated value must be analyzed from a close view to have correct comprehension of filter performance. In the following, direct current of the stator is shown from close view in figure 5.

As it takes a certain time for motor to reach its nominal speed from starting, there is a transition state in this period. The frequency and flux linkage of the rotor varies during this period. Due to this reason filter spends a longer time to reach to the correct value, which is shown in figure 6 The last state which must be estimated and is also the main goal of this work is the rotor speed. This parameter is not traceable by filter, unless the rotor reaches its nominal speed. But after the moment rotor reaches the nominal speed, an acceptable trace is performed by the filter which is illustrated in figure below:

In this simulation the obtained values from PSO algorithm are given in the Table 1.

Table 1. Value of model noise elements and measure noise elements in PSO algorithm




It is evident that by every simulation execution, the solutions will change a little due to randomness of PSO algorithm. The parameters P1 to P5 are related to the model noise elements. The remaining parameters are related to the measure noise elements.

To verify Kalman estimator performance, another speed is needed to be examined. For this purpose the Simulink simulation is set for the new speed. The practical method for this work is to employ a V/f controller to prevent core saturation and core damage. The stator frequency is set on 50 Hz for this simulation. Albeit there is no need to change the motor voltage in simulation. The filter must trace the speed as before, which is shown in figure 8.

The estimation of current and flux linkage at frequency of 50 Hz are shown in figure 9 and figure 10; respectively.

To investigate the continuous operation of estimator, it must be examined in different continuous speeds. In this paper a simple two-speed source is used to create different speeds.

The form of sources that can produce two-speed condition is given below. The sources are tuned so that at first the motor synchronous speed would be 1200 rotations per minute. Then after 5 seconds, the synchronous speed is reduced to 800 rotations per minute and must stay at this speed for 5 seconds. For this purpose the frequency and voltage of the motor are decreased simultaneously. This estimator performance in two-speed control is shown in figure 12.

It must be noted that estimator performance at the moment of changing controller's speed is very important. It is because in the case of instability, there is the possibility of estimator divergence in this point. Figure 13 shows the estimator performance at the moment of changing the speed.

In the final test for approaching to the real situation, conducting the simulation by a power drive can be very helpful. In this test, at first a simulation based on constant V/F control speed drive is performed on an induction motor. The speed set point is considered in the associated input so that an alternating current is created. The speeds from this simulation in MATLAB environment are estimated by the code written for it. The simulated drive is in fact a closed- loop speed control circuit. Figure 14 shows the view of performing this simulation in Simulink environment In the above simulation, the induction motor drive block consists of subdivisions of motor parameters, converter properties, and also driver properties. The demux part will also produce outputs. These outputs are transferred to the Matlab environment to be used for performing simulation. An arbitrary alternating speed is applied to the system at the speed input.

A sample of performing simulation for motor speed estimation is shown in figur e 15. As it is seen in the figure, the amount of estimated speed noise is a little greater than previous cases. It is a natural process in power drives since despite the fact that driver is following set point; controller always fluctuates around the specified point. This fluctuation brings fluctuation to all electrical and mechanical quantities of motor, and hence filter also estimated them.


This paper presents a new method for performance optimization of EKF to estimate speed for an induction motor drive. Based on PSO with real code, the optimization algorithm provides noise covariance and weight matrices. Noise covariance and weight matrices are critically dependent to the EKF performance, and are chosen properly. The simulation studies on the two induction motor drives, i.e. constant V/Hz driver, prove the proposed viewpoint to be appropriate.


[1] Bolognani. S, Tubiana. L, and Zigliotto. M, Extended kalman filter tuning in sensorless PMSM drives, IEEE TRANS. Industry Applications, vol. 39, no. 6, pp. 1741- 1747, 2003.

[2] Eberhart R C, Empirical Study of particle swarm optimizatio, in: proceeding of International Conference on Evolutionary Computation. Washington D. C., USA, pp. 1945-1950, 1999.

[3] Henneberger. G, Brunsbach. B. J, and Klepsch.Th, Field- oriented control of synchronous and asynchronous drives without mechanical sensors using a Kalman filter," in Sensorless Control of AC Motor Drives. New York: IEEE Press, 1996, pp. 207214.

[4] Kim.Y. R, SulS. K, and Park.M. H, Speed sensorless vector control of induction motor using extended Kalman filter," in Sensorless Control of AC Motor Drives. New York: IEEE Press, 1996, pp. 215223.

[5] Manes.C,Parasiliti. F, and Tursini. M, A comparative study of rotor flux estimation in induction motors with a nonlinear observer and the ex- tended Kalman filter," in Proc. IEEE IECON'94, 1994, pp. 21492154.

[6] Salvatore. L, Stasi. S, and Tarchioni. L, A new EKF- based algorithm for flux estimation in induction machines," IEEE Trans. Ind. Electron., vol. 40, pp. 496 504, Oct. 1993.

[7] Shi, K.L., T.F. Chan, Y.K. Wong and S.L. Ho, 2002. Speed estimation of an induction motor drive using an optimized extended Kalman filter. Ind. Electronics IEEE Trans., 49: 124-133., 2002.

[8] Shi Y H, Elberhart R. Amodifiedparicleswarm optimizer, in: proceeding of IEEE international conference on evolutionary computation, Anchorage, AK, pp. 69-73, 1998.

[9] Velazquez.S. C, Palomares.R. A, and Segura.A. N, Speed estimation for an induction motor using the extended kalman filter. In Proc. 14th International Conference on Electronics, Communications and Computers, Veracruz, Mexico, 2004, pp. 63-68.

[10] Xin. L, Qun. Y, Datai. Y. PEMFC Model Parameter Optimization Based on a Hybrid PSO Algorithm.Journal of Computational Information Systems, 2011, vol. 7, no. 2, pp. 479-486, 2011.
COPYRIGHT 2015 Asianet-Pakistan
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2015 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Publication:Science International
Article Type:Report
Date:Apr 30, 2015

Terms of use | Privacy policy | Copyright © 2021 Farlex, Inc. | Feedback | For webmasters |