# A Two-stage Kalman Filter for Sensorless Direct Torque Controlled PM Synchronous Motor Drive

Authors: Boyu Yi; Longyun Kang; Kai Jiang; Yujian Lin
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

This paper presents an optimal two-stage extended Kalman filter (OTSEKF) for closed-loop flux, torque, and speed estimation of a permanent magnet synchronous motor (PMSM) to achieve sensorless DTC-SVPWM operation of drive system. The novel observer is obtained by using the same transformation as in a linear Kalman observer, which is proposed by C.-S. Hsieh and F.-C. Chen in 1999. The OTSEKF is an effective implementation of the extended Kalman filter (EKF) and provides a recursive optimum state estimation for PMSMs using terminal signals that may be polluted by noise. Compared to a conventional EKF, the OTSEKF reduces the number of arithmetic operations. Simulation and experimental results verify the effectiveness of the proposed OTSEKF observer for DTC of PMSMs.


---

## Body

## 1. Introduction

Owing to their characteristics of high efficiency, high power density, and reliability, AC machines and more recently especially permanent magnet synchronous machines (PMSMs) have obtained dominance [1]. To control the torque and flux levels of PMSM rotor flux oriented control is seen as an industry standard [2, 3]. Alternatives however exist, and direct torque control (DTC) can provide accurate fast torque control. Moreover, DTC uses no current controller and no motor parameters other than the stator resistance, which yields a faster torque response and lower parameter dependence than with field oriented control [4–6].To implement the idea of the DTC on PMSM, the controller must obtain some real-time parameters of PMSM, including stator flux, position, and rotor speed. So the mechanical sensor which can measure rotor position and speed is necessary for the realization of DTC. But the application of mechanical sensor increases the complexity of the control system and degrades the performance of control system when encountering adverse environmental conditions. Moreover, it increases the system cost and maintenance requirements. So sensorless DTC technique has become the hot issue in research and drawn many researchers’ and engineer s’ attention.Several parameter estimation techniques have been reported in the literature [7–13]. One of major methods is based on the linear or nonlinear state observers, such as extended Luenberger observer and extended Kalman filter (EKF). Some works [10–13] have shown the applicability of the EKF to estimate parameters for electric machines. These observers have been shown to be the best computer algorithms for processing noisy discrete measurements and obtaining high-accuracy estimates of dynamic system states (stator flux, rotor position, and speed). The EKF-based algorithms described in [10–13] have good performance, but they appear to be very complex because of the high order of the mathematical models. The applicability of the extended Kalman filter to real-time signal processing problems is generally limited by the complex mathematical operations.Therefore, this paper presents an optimal two-stage extended Kalman filter (OTSEKF) for flux, position, and speed estimation of a direct torque controlled (DTC) PMSM drive. The proposed observer is an effective implementation of extended Kalman filters. Following the same approach as given in [14], the two-stage structure employed in OTSEKF can decouple the conventional EKF into two parallel observers, which are called the full order filter and the augmented state filter. Compared to the conventional EKF, OTSEKF can reduce the computational burden. To facilitate the understanding, the complete equations of this filter are presented and compared to a straight implementation of the conventional EKF equations.The paper is organized in six sections. In Section2, the continuous and the discrete model of the PMSM are recalled. In Section 3, the DTC-SVPWM strategy of PMSMs is introduced briefly. In Section 4, based on a conventional EKF algorithm, optimal two-stage extended Kalman filter equations are developed, and theoretical operation requirements of both OTSEKF and EKF are calculated. In Section 5, experimental and simulation results are discussed. Finally, a conclusion wraps up the paper.


## 2. The Model of PMSM

As elaborated in [10], the machine equations in the rotor (dq) reference frame are as follows:
(1)dψsddt=-RsLdψsd+ωrψsq+RsLdψf+uαcosθr+uβsinθr,dψsqdt=-ωrψsd-RsLqψsq-uαsinθr+uβcosθr,dωrdt=0,dθrdt=ωr,
where uα, uβ, iα, and iβ are the stator voltages and currents in the (αβ) reference frame, ψsd, ψsq are stator flux linkages in the (dq) reference frame, Ld and Lq are the machine dq axes inductances, Rs is the stator winding resistance, and ψf is the flux produced by the magnets. The angular velocity ωr is measured in electrical radians per second. θr is the electrical position.In order to remove constant term in (1), the state vector is chosen to be X(t)=[x1x2]T=[ψsd-ψfψsq]T, estimated parameter vector to be Θ=[ωrθr]T, input vector to be U=[uαuβ]T, and output to be Y(t)=[iαiβ]T. The PMSM model is described by the general nonlinear state-space model [15, 16]:
(2)ddtX(t)=Ac(t)X(t)+Bcu(t)U(t)+BcΘ(t)Θ(t),ddtΘ(t)=Gc(t)Θ(t),Y(t)=C(t)X(t),
with
(3)Ac(t)=[-RsLdωr-ωr-RsLq],Bcu(t)=[cosθrsinθr-sinθrcosθr],Gc(t)=[0010],BcΘ(t)=[00-ψf0],C(t)=[cosθrLd-sinθrLqsinθrLdcosθrLq].For digital implementation of the observer, the discretized machine equations are required, provided that the input vectorU is nearly constant during a sampling period Ts. These equations can be obtained from (2):
(4)Xk+1=AkXk+BkΘΘk+BkuUk,Θk+1=GkΘk,Yk=CkXk.
Tolerating a small discretization error, a first-order series expansion of the matrix exponential is used:
(5)eAcT≈Ak=I+AcT,eGcT≈Gk=I+GcT,Ac-1(eAcT-I)Bc≈Bk=TBc,
with
(6)Ak=[1-RsLdTsωrTs-ωrTs1-RsLqTs],Gk=[10Ts1],Bku=[cosθr·Tssinθr·Ts-sinθr·Tscosθr·Ts],BkΘ=[00-ψfTs0],Ck=[cosθrLd-sinθrLqsinθrLdcosθrLq].


## 3. Principle of Sensorless DTC-SVPWM

The basic idea of DTC technique is to calculate and control stator flux linkage and torque of PMSM directly to achieve high dynamic performance. DTC technique involves statorflux vector, torque estimators, hysteresis controllers, and switching tables in order to determine directly an inverter switching state [17, 18]. The hysteresis controller minimizes the flux and torque errors [17, 18]. However, in the conventional DTC system, the switchover among the basic vectors is discontinuous because the universal voltage inverter has only eight available basic space vectors. In a control period, only one voltage space vector can be selected so the flux and torque ripples are unavoidable.To reduce the ripples of the electromagnetic torque and flux linkage in PMSM drives, a modified DTC using Space Vector Pulse Width Modulation (SVPWM) method (called DTC-SVPWM) is proposed in this paper. SVPWM techniques have several advantages that are offering better DC bus utilization, lower torque ripples, lower total harmonic distortion in the AC motor current, and lower switching loss. The same flux and torque estimators as for basic DTC are also used in the DTC-SVPWM method. The main difference is that DTC-SVPWM has two PI controllers and a Reference Flux Vector Calculator (RFVC) instead of hysteresis controllers and the switching table [19–21]. The system structure of DTC-SVPWM can be built and shown in Figure 1. This system uses three-way closed-loop control of speed, flux linkage, and torque. Adopting speed deviation Δωr as input value, outer loop Proportional Integral (PI) controller outputs torque reference input Te*. Then taking torque deviation ΔTe as input value, torque loop PI controller outputs Δωs, which is deviation of rotating speed between stator flux linkage and rotor flux linkage. Therefore, the reference speed of stator flux ωs* can be obtained by adding the rotor flux linkage speeds ωr and Δωs. RFVC is used to determine the reference stator flux linkage vector ψs* for the next sample time. The |ψr*|inputted to RFVC is amplitude of given value of the stator flux linkage.Figure 1
System diagram of the SVPWM-DTC scheme.The vector relationships between stator flux linkage vectorψs and rotor flux linkage ψf can be drawn in the rotor flux (dq), stator flux (xy), and stationary (αβ) frames as shown in Figure 2. θs, which is the phase angle of stator flux linkage, can be obtained by the flux estimator. The increment of stator flux angle Δθs in the next sampling time can be acquired by ωs*Ts.Figure 2
The vector diagram of PMSM.Define the flux deviations betweenψs*and ψs asΔψs; then
(7)Δψsα=|ψs*|cos(θs+Δθs)-|ψs|cosθs,Δψsβ=|ψs*|sin(θs+Δθs)-|ψs|sinθs,
where Δψsα and Δψsβ are components of Δψs in the (αβ) reference frame. |ψs| and |ψs*| are amplitudes of ψs and ψs*.In order to make up for flux deviationsΔψsα and Δψsβ, reference stator voltages uα* and uβ* should be applied on the motor which can be calculated by
(8)uα*=ΔψsαTs+Rsiα,uβ*=ΔψsβTs+Rsiβ.Substituting (7) into (8), (9) can be acquired:
(9)uα*=(|ψs*|cos(θs+Δθs)-|ψs|cosθs)Ts+Rsiα,uβ*=(|ψs*|sin(θs+Δθs)-|ψs|sinθs)Ts+Rsiβ.Based on stator voltage componentsuα* and uβ*, voltage vector selection, duration time, and switch signal of inverter can be obtained through SVPWM module.


## 4. Design of OTSEKF Observer

To enhance the reliability and robustness of the overall system, the sensorless control of DTC-SVPWM is desirable. So a state observer is necessary to achieve sensorless operation of a PMSM drive. The linear algorithm proposed by Hsieh and Chen [14], which is named the optimal two-stage Kalman estimator (OTSKE), is extended to the nonlinear estimation case. Then, the optimal two-stage extended Kalman filter (OTSEKF) is proposed to estimate the stator flux, position and rotor speed needed for DTC-SVPWM. This algorithm can effectively save computation cost compared to conventional EKF.


### 4.1. Conventional EKF

Based on discretized machine equations, an EKF is constructed to estimate the stator flux, torque, and speed of the PMSM. The state vector is chosen to beXka=[XkΘk]T. uα, uβ and iα, iβ are chosen as input and output vectors because these quantities can be easily obtained from measurements of stator phase currents and voltage construction using DC link voltage and switching status. Considering the noise and parameter errors, the state space model in the rotor (dq) reference frame is described by
(10)Xk+1a=A-kXka+B-kUk+Wk,Yk+1=C-kXka+ηk,
with
(11)A-k=[AkBkΘ0Gk],B-k=[Bku0],C-k=[Ck0],Wk=[WkxWkΘ],
where Wk and ηk are zero-mean noise with covariances Q and R, respectively, and are independent from the system state Xka. The system noise Wk takes into account system disturbance and model inaccuracies, while ηk represents the measurement noise. The noise covariance matrices are defined as follows:
(12)E(Wkx(Wk-τx)T)=Qkxδτ,E(WkΘ(Wk-τΘ)T)=QkΘδτ,E(Wkx(Wk-τΘ)T)=QkxΘδτ,E(ηk(ηk-τ)T)=Rkδτ,E(Wkx(ηk-τ)T)=0,E(WkΘ(ηk-τ)T)=0.The overall structure of the EKF is well known by employing a two-step prediction and correction algorithm [10]. Hence, the filter is given by
(13)Xk∣k-1a=A-k-1Xk-1∣k-1a+B-k-1Uk-1,Pk∣k-1=F-k-1Pk-1∣k-1F-k-1T+Qk-1,Kk=Pk∣k-1H-kT(H-kPk∣k-1H-kT+R)-1,Xk∣ka=Xk∣k-1α+Kk(Yk-C-kXk∣k-1a),Pk∣k=Pk∣k-1-KkH-kPk∣k-1,
with
(14)F-k-1=[Fk-1Ek-10Gk-1],H-k=[Hk1Hk2],Kk=[KkxKkΘ],Fk-1=∂∂X(Ak-1Xk-1+Bk-1uUk-1+Bk-1ΘΘk-1),Fk-1=[1-RsLdTsωrTs-ωrTs1-RsLqTs],Yk=[IαIβ],Ek-1=∂∂Θ(Ak-1Xk-1+Bk-1uUk-1+Bk-1ΘΘk-1),Ek-1=[x2TsUqTs-x1Ts-ψfTs-UdTs],Hk1=∂∂X(Ck-1Xk-1),Hk1=[cosθrLd-sinθrLqsinθrLdcosθrLq],C-k=[Ck0]Hk2=∂∂Θ(Ck-1Xk-1),Hk2=[0-x1sinθrLd-x2cosθrLq0x1cosθrLd-x2sinθrLq],P(·)=[Px[·]PxΘ[·]PxΘ[·]TPΘ[·]],Q(·)=[Qx[·]QxΘ[·]QxΘ[·]TQΘ[·]].The EKF mentioned above takes into account the system and measurement noise and exhibits excellent robustness to model inaccuracies, measurement noise, and system uncertainties. But it is obviously that four-order matrix operations are necessary to complete EKF computational operation. Considering Pulse Width Modulation (PWM) period is very small, only high performance DSP or FPGA can qualify for this work.


### 4.2. OTSEKF Algorithm

Using the same processing method as in [14], the OTSEKF can be obtained by making coordinate transformation. So it is necessary to define a transformation matrix T(·); the T(·) is specified as follows:
(15)T(J)=[IJ0I].The main advantage of using theT transformation is that the inverse transformation T-1(M)=T(-M) involves only a change of sign. Two blending matrices Mk and Nk are defined, respectively, by Mk=Pk∣k-1xΘ(Pk∣k-1Θ)-1and Nk=Pk∣kxΘ(Pk∣kΘ)-1. The transformation operation can be achieved by two transformation matrices T(Mk) and T(Nk) so that the variance-covariance matrices P-(·) in new base are block diagonal:
(16)P-(·)=[P-x(·)00P-Θ(·)].Using the two transformation matrices defined above, overlined expressions that correspond to vectors and matrices in the new base can be obtained:(17)Xk∣k-1a=T(Mk)X-k∣k-1a,Pk∣k-1=T(Mk)P-k∣k-1T(Mk)T,Xk∣ka=T(Nk)X-k∣ka,Kk=T(Nk)K-k,Pk∣k=T(Nk)P-k∣kT(Nk)T,
where
(18)X-ka=[X-kΘ-k],K-k=[K-kxK-kΘ],
Considering characteristic of matrix T(·), (17) become
(19)X-k∣k-1a=T(-Mk)Xk∣k-1a,P-k∣k-1=T(-Mk)Pk∣k-1T(-Mk)T,X-k∣ka=T(-Nk)Xk∣ka,K-k=T(-Nk)Kk,P-k∣k=T(-Nk)Pk∣kT(-Nk)T.
To decouple the EKF into a full order filter and an augmented state filter, the following two-step iterative substitution method is used.Step 1.
Substituting (13) into (19), we have
(20)X-k|k-1a=T(-Mk)A-k-1Xk-1|k-1a+T(-Mk)B-k-1Uk-1,P-k∣k-1=T(-Mk)F-k-1Pk-1|k-1F-k-1TT(-Mk)T+T(-Mk)Qk-1T(-Mk)T,K-k=T(-Nk)Pk|k-1H-kT(H-kPk|k-1H-kT+R)-1,X-k|ka=T(-Nk)(Xk|k-1α+Kk(Yk-C-kXk|k-1a)),P-k|k=T(-Nk)Pk|k-1T(-Nk)T-T(-Nk)KkH-kPk|k-1T(-Nk)T.Step 2.
Substituting (17) into the right-hand side of (20), the following equations are written:
(21)X-k|k-1a=T(-Mk)A-k-1T(Nk-1)X-k-1|k-1a+T(-Mk)B-k-1Uk-1,(22)P-k|k-1=T(-Mk)F-k-1T(Nk-1)P-k-1|k-1×T(Nk-1)TF-k-1TT(-Mk)T+T(-Mk)Qk-1T(-Mk)T,(23)K-k=T(Mk-Nk)P-k|k-1T(Mk)TH-kT×(H-kT(Mk)P-k|k-1T(Mk)TH-kT+R)-1,(24)X-k|ka=T(Mk-Nk)X-k|k-1a+K-k(Yk-C-kT(Mk)X-k|k-1a),(25)P-k|k=T(Mk-Nk)P-k|k-1T(Mk-Nk)T-K-kH-kT(Mk)P-k|k-1T(Mk-Nk)T.
Supposing variance-covariance matrices P-(M) are block diagonal, the following relations are obtained by using (22) and (25):
(26)0=M-kGk-1P-k-1|k-1ΘGk-1T+Qk-1xΘ-Mk(Gk-1P-k-1|k-1ΘGk-1T+Qk-1Θ)0=Mk-Nk-K-kxSk,
where
(27)M-k=(Fk-1Nk-1+Ek-1)Gk-1-1,(28)Sk=Hk1Mk+Hk2.
The above equations lead to
(29)Mk=M-k+(QkxΘ-M-kQkΘ)(P-k|k-1Θ)-1,(30)Nk=Mk-K-kxSk.
The equations of full order filter are acquired by the next steps.
From (21), we give the prediction equations of X-k and Θ-k as
(31)X-k|k-1=Ak-1X-k-1|k-1+Bk-1uUk-1+uk-1,(32)Θ-k|k-1=Gk-1Θ-k-1|k-1,
where
(33)uk-1=(Ak-1Nk-1+Bk-1Θ-MkGk-1)Θ-k-1|k-1.
From (22), we have
(34)P-k|k-1x=Fk-1P-k-1|k-1xFk-1T+(Fk-1Nk-1+Ek-1-MkGk-1)×P-k-1|k-1Θ(Fk-1Nk-1+Ek-1-MkGk-1)T+Qkx-Mk(QkxΘ)T-QkxΘMkT+MkQkΘMkT.
Then using (27), (29), and (32), the above equation can be written as
(35)P-k|k-1x=Fk-1P-k-1|k-1xFk-1T+Q-kx,
where
(36)Q-kx=Qkx-QkxΘM-kT-Mk(QkxΘ-M-kQkΘ)T
From (23) and (28), we have
(37)K-kx(Hk1P-k|k-1x(Hk1)T+Rk+SkP-k|k-1ΘSkT)=P-k|k-1x(Hk1)T+K-kxSkP-k|k-1ΘSkT.
Then
(38)K-kx=P-k|k-1x(Hk1)T(Hk1P-k|k-1x(Hk1)T+Rk)-1.
From (24), (28), and (30), we have
(39)X-k|k=X-k|k-1+(Mk-Nk)Θ-k|k-1+K-kx(Yk-CkX-k|k-1-S-kΘ-k|k-1).
Then
(40)X-k|k=X-k|k-1+K-kx(Yk-CkX-k|k-1+(Sk-S-k)Θ-k|k-1),
where
(41)S-k=CkMk.
From (25), (28), and (30), we have
(42)P-k|kx=P-k|k-1x+(Mk-Nk)P-k|k-1Θ(MkT-NkT)-(K-kxHk1P-k|k-1x+K-kxSkP-k|k-1Θ(MkT-NkT)).
Then
(43)P-k|kx=P-k|k-1x-K-kxHk1P-k|k-1x.
Besides prediction function (32), the rest of augmented state filter is obtained by expanding (21)–(25) and using (26)–(28):
(44)P-k|k-1Θ=Gk-1P-k-1|k-1ΘGk-1T+QkΘ,Θ-k|k=Θ-k|k-1+K-kΘ(Yk-CkX-k|k-1-S-kΘ-k|k-1),K-kΘ=P-k|k-1ΘSkT(Hk1P-k|k-1x(Hk1)T+Rk+SkP-k|k-1ΘSkT)-1,P-k|kΘ=P-k|k-1Θ-K-kΘSkP-k|k-1Θ,
where X-k|k-1 and P-k|k-1x can be calculated by (31) and (35).
Finally, based on the above analysis, the OTSEKF algorithm can be organized by the next two parts [15, 16]. The first part of OTSEKF for state and parameter prediction is as follows:
(45)P-k|k-1Θ=Gk-1P-k-1|k-1ΘGk-1T+QkΘ,Ek=∂∂Θ|Θ-k|k(Ak(X-k+NkΘ-k)+BkΘΘk+BkuUk),M-k=(Fk-1Nk-1+Ek-1)(Gk-1)-1,Mk=M-k+(QkxΘ-M-kQkΘ)(P-k|k-1Θ)-1,Q-kx=Qkx-QkxΘM-kT-Mk(QkxΘ-M-kQkΘ)T,P-k|k-1x=Fk-1P-k-1|k-1xFk-1T+Q-kx,Θ-k|k-1=Gk-1Θ-k-1|k-1,uk-1=(Ak-1Nk-1+Bk-1Θ-MkGk-1)Θ-k-1|k-1,X-k|k-1=Ak-1X-k-1|k-1+Bk-1uUk-1+uk-1.
The second part for state and parameter correction is as follows:
(46)S-k=CkMk,Sk=Hk1Mk+Hk2,Bk=Hk1P-k|k-1x(Hk1)T+Rk,K-kΘ=P-k|k-1ΘSkT(Bk+SkP-k|k-1ΘSkT)-1,P-k|kΘ=P-k|k-1Θ-K-kΘSkP-k|k-1Θ,Θ-k|k=Θ-k|k-1+K-kΘ(Yk-CkX-k|k-1-S-kΘ-k|k-1),K-kx=P-k|k-1x(Hk1)T(Bk)-1,P-k|kx=P-k|k-1x-K-kxHk1P-k|k-1x,X-k|k=X-k|k-1+K-kx(Yk-CkX-k|k-1+(S-S-)Θ-k|k-1),Nk=Mk-K-kxSk.
Using (17), the original state X^ can be obtained by the sum of the state X- with the augmented state Θ-:
(47)X^k|k-1=X-k|k-1+MkΘ-k|k-1,X^k|k=X-k|k+NkΘ-k|k.
The initial conditions of this OTSEKF are established with the initial conditions of a conventional EKF (X^0|0, Θ^0|0, P0|0x, P0|0Θ, P0|0xΘ), so that
(48)N0=P0|0xΘ(P0|0Θ)-1,X-0|0=X^0|0-N0Θ-0|0,Θ-0|0=Θ^0|0,P-0|0x=P0|0x-N0P0|0ΘN0T,P-0|0Θ=P0|0Θ.
According to variables of full order filter (x1 and x2), stator flux linkage in machine rotor (dq) reference frame are obtained as follows:
(49)ψsd=x1+ψf,ψsq=x2.
The estimated flux linkages ψsd, ψsq are transformed into the stationary reference frame via
(50)[ψsαψsβ]=[cosθr-sinθrsinθrcosθr][ψsdψsq].
The stator flux linkage and electromagnetic torque estimators are then given by
(51)|ψs|=ψsα2+ψsβ2,θs=arctan(ψsβψsα),Te=32Pn(ψsαisβ-ψsβisα),
where Te is the electromagnetic torque and Pn is the motor pole pairs. The estimated speed ωr obtained from the OTSEKF observer is used to close the speed loop to achieve sensorless operation. So the sensorless DTC-SVPWM scheme is illustrated in Figure 3.Figure 3
Block diagram of the proposed sensorless DTC-SVPWM scheme.


### 4.3. Algorithm Complexity

Tables1 and 2 show the number of arithmetic operations required at each time sample by the standard EKF algorithm and the OTSEKF, respectively (where rough matrix-based implementation is used). The state vector Xk, measurement Yk, input vector Uk, and parameter Θk dimensions are, respectively, n, m, q, and p. To compute standard EKF, the total number of multiplications is 358, and the total number of additions is 289, whereas the number of arithmetic operations required by OTSEKF algorithm is 284 multiplications and 215 additions. This means that the number of multiplications is reduced by 20.67% and the number of additions is reduced by 25.61%.Table 1
EKF arithmetic operation requirements.
Number of multiplications(n=4, m=2, q=2)
Number of additions(n=4, m=2, q=2)
A
-
k, B-k, C-k
Function of system (22)
Function of system (5)
X
k
|
k
-
1
a
n
2
+
n
q (24)
n
2
+
n
q
-
n (20)
P
k
|
k
-
1
2
n
3 (128)
2
n
3
-
n
2 (112)
X
k
|
k
-
1
a
2
n
m (16)
2
n
m (16)
K
k
n
2
m
+
2
n
m
2
+
m
3 (72)
n
2
m
+
2
n
m
2
+
m
3
-
2
n
m (56)
P
k
|
k
n
2
m
+
n
3 (96)
n
2
m
+
n
3
-
n
2 (80)
Total
358
289Table 2
OTSEKF arithmetic operation requirements.
Number of multiplications(n=4, m=2, q=2, p=2)
Number of additions(n=4, m=2, q=2, p=2)
A
-
k, Ck, Ek, Hk1, Hk2, Bku, BkΘ
Function of system (20)
Function of system (3)
P
-
k
|
k
-
1
Θ
2
p
3 (16)
2
p
3
-
p
2 (12)
M
-
k
-
1
n
2
p
+
n
p
2 (16)
n
2
p
+
n
p
2
-
n
p (12)
M
k
-
1
2
n
p
2 (16)
2
n
p
2 (16)
Q
-
k
-
1
x
2
n
2
p
+
n
p
2 (24)
2
n
2
p
+
n
p
2 (24)
P
-
k
|
k
-
1
x
2
n
3 (16)
2
n
3
-
n
2 (12)
Θ
-
k
|
k
-
1
p
2 (4)
p
2
-
p (2)
u
k
-
1
n
2
p
+
n
p
2
+
n
p (20)
n
2
p
+
n
p
2
+
n
p
-
n (18)
X
-
k
|
k
-
1
n
2
+
n
q (8)
n
2
+
n
q (8)
S
k
m
n
p (8)
n
m
p (8)
S
-
k
m
n
p (8)
m
n
p
-
m
p (4)
B
k
2
m
n
2 (16)
2
m
n
2
-
m
2 (12)
K
-
k
|
k
Θ
3
p
2
m
+
p
m
2 (32)
3
p
2
m
+
p
m
2
+
m
2
-
4
p
m (20)
P
-
k
|
k
Θ
p
3
+
p
2
m (16)
p
3
+
p
2
m
-
p
2 (12)
Θ
-
k
|
k
2
m
p
+
n
m (12)
2
m
p
+
n
m (12)
K
-
k
|
k
x
n
2
m
+
n
m
2 (16)
n
2
m
+
n
m
2
-
2
n
m (8)
P
-
k
|
k
x
n
2
m
+
n
3 (16)
n
2
m
+
n
3
-
n
2 (12)
X
-
k
|
k
2
n
m
+
m
p (12)
2
n
m
+
2
m
p (16)
N
k
n
p
m (8)
n
p (4)
Total
284
215


## 4.1. Conventional EKF

Based on discretized machine equations, an EKF is constructed to estimate the stator flux, torque, and speed of the PMSM. The state vector is chosen to beXka=[XkΘk]T. uα, uβ and iα, iβ are chosen as input and output vectors because these quantities can be easily obtained from measurements of stator phase currents and voltage construction using DC link voltage and switching status. Considering the noise and parameter errors, the state space model in the rotor (dq) reference frame is described by
(10)Xk+1a=A-kXka+B-kUk+Wk,Yk+1=C-kXka+ηk,
with
(11)A-k=[AkBkΘ0Gk],B-k=[Bku0],C-k=[Ck0],Wk=[WkxWkΘ],
where Wk and ηk are zero-mean noise with covariances Q and R, respectively, and are independent from the system state Xka. The system noise Wk takes into account system disturbance and model inaccuracies, while ηk represents the measurement noise. The noise covariance matrices are defined as follows:
(12)E(Wkx(Wk-τx)T)=Qkxδτ,E(WkΘ(Wk-τΘ)T)=QkΘδτ,E(Wkx(Wk-τΘ)T)=QkxΘδτ,E(ηk(ηk-τ)T)=Rkδτ,E(Wkx(ηk-τ)T)=0,E(WkΘ(ηk-τ)T)=0.The overall structure of the EKF is well known by employing a two-step prediction and correction algorithm [10]. Hence, the filter is given by
(13)Xk∣k-1a=A-k-1Xk-1∣k-1a+B-k-1Uk-1,Pk∣k-1=F-k-1Pk-1∣k-1F-k-1T+Qk-1,Kk=Pk∣k-1H-kT(H-kPk∣k-1H-kT+R)-1,Xk∣ka=Xk∣k-1α+Kk(Yk-C-kXk∣k-1a),Pk∣k=Pk∣k-1-KkH-kPk∣k-1,
with
(14)F-k-1=[Fk-1Ek-10Gk-1],H-k=[Hk1Hk2],Kk=[KkxKkΘ],Fk-1=∂∂X(Ak-1Xk-1+Bk-1uUk-1+Bk-1ΘΘk-1),Fk-1=[1-RsLdTsωrTs-ωrTs1-RsLqTs],Yk=[IαIβ],Ek-1=∂∂Θ(Ak-1Xk-1+Bk-1uUk-1+Bk-1ΘΘk-1),Ek-1=[x2TsUqTs-x1Ts-ψfTs-UdTs],Hk1=∂∂X(Ck-1Xk-1),Hk1=[cosθrLd-sinθrLqsinθrLdcosθrLq],C-k=[Ck0]Hk2=∂∂Θ(Ck-1Xk-1),Hk2=[0-x1sinθrLd-x2cosθrLq0x1cosθrLd-x2sinθrLq],P(·)=[Px[·]PxΘ[·]PxΘ[·]TPΘ[·]],Q(·)=[Qx[·]QxΘ[·]QxΘ[·]TQΘ[·]].The EKF mentioned above takes into account the system and measurement noise and exhibits excellent robustness to model inaccuracies, measurement noise, and system uncertainties. But it is obviously that four-order matrix operations are necessary to complete EKF computational operation. Considering Pulse Width Modulation (PWM) period is very small, only high performance DSP or FPGA can qualify for this work.


## 4.2. OTSEKF Algorithm

Using the same processing method as in [14], the OTSEKF can be obtained by making coordinate transformation. So it is necessary to define a transformation matrix T(·); the T(·) is specified as follows:
(15)T(J)=[IJ0I].The main advantage of using theT transformation is that the inverse transformation T-1(M)=T(-M) involves only a change of sign. Two blending matrices Mk and Nk are defined, respectively, by Mk=Pk∣k-1xΘ(Pk∣k-1Θ)-1and Nk=Pk∣kxΘ(Pk∣kΘ)-1. The transformation operation can be achieved by two transformation matrices T(Mk) and T(Nk) so that the variance-covariance matrices P-(·) in new base are block diagonal:
(16)P-(·)=[P-x(·)00P-Θ(·)].Using the two transformation matrices defined above, overlined expressions that correspond to vectors and matrices in the new base can be obtained:(17)Xk∣k-1a=T(Mk)X-k∣k-1a,Pk∣k-1=T(Mk)P-k∣k-1T(Mk)T,Xk∣ka=T(Nk)X-k∣ka,Kk=T(Nk)K-k,Pk∣k=T(Nk)P-k∣kT(Nk)T,
where
(18)X-ka=[X-kΘ-k],K-k=[K-kxK-kΘ],
Considering characteristic of matrix T(·), (17) become
(19)X-k∣k-1a=T(-Mk)Xk∣k-1a,P-k∣k-1=T(-Mk)Pk∣k-1T(-Mk)T,X-k∣ka=T(-Nk)Xk∣ka,K-k=T(-Nk)Kk,P-k∣k=T(-Nk)Pk∣kT(-Nk)T.
To decouple the EKF into a full order filter and an augmented state filter, the following two-step iterative substitution method is used.Step 1.
Substituting (13) into (19), we have
(20)X-k|k-1a=T(-Mk)A-k-1Xk-1|k-1a+T(-Mk)B-k-1Uk-1,P-k∣k-1=T(-Mk)F-k-1Pk-1|k-1F-k-1TT(-Mk)T+T(-Mk)Qk-1T(-Mk)T,K-k=T(-Nk)Pk|k-1H-kT(H-kPk|k-1H-kT+R)-1,X-k|ka=T(-Nk)(Xk|k-1α+Kk(Yk-C-kXk|k-1a)),P-k|k=T(-Nk)Pk|k-1T(-Nk)T-T(-Nk)KkH-kPk|k-1T(-Nk)T.Step 2.
Substituting (17) into the right-hand side of (20), the following equations are written:
(21)X-k|k-1a=T(-Mk)A-k-1T(Nk-1)X-k-1|k-1a+T(-Mk)B-k-1Uk-1,(22)P-k|k-1=T(-Mk)F-k-1T(Nk-1)P-k-1|k-1×T(Nk-1)TF-k-1TT(-Mk)T+T(-Mk)Qk-1T(-Mk)T,(23)K-k=T(Mk-Nk)P-k|k-1T(Mk)TH-kT×(H-kT(Mk)P-k|k-1T(Mk)TH-kT+R)-1,(24)X-k|ka=T(Mk-Nk)X-k|k-1a+K-k(Yk-C-kT(Mk)X-k|k-1a),(25)P-k|k=T(Mk-Nk)P-k|k-1T(Mk-Nk)T-K-kH-kT(Mk)P-k|k-1T(Mk-Nk)T.
Supposing variance-covariance matrices P-(M) are block diagonal, the following relations are obtained by using (22) and (25):
(26)0=M-kGk-1P-k-1|k-1ΘGk-1T+Qk-1xΘ-Mk(Gk-1P-k-1|k-1ΘGk-1T+Qk-1Θ)0=Mk-Nk-K-kxSk,
where
(27)M-k=(Fk-1Nk-1+Ek-1)Gk-1-1,(28)Sk=Hk1Mk+Hk2.
The above equations lead to
(29)Mk=M-k+(QkxΘ-M-kQkΘ)(P-k|k-1Θ)-1,(30)Nk=Mk-K-kxSk.
The equations of full order filter are acquired by the next steps.
From (21), we give the prediction equations of X-k and Θ-k as
(31)X-k|k-1=Ak-1X-k-1|k-1+Bk-1uUk-1+uk-1,(32)Θ-k|k-1=Gk-1Θ-k-1|k-1,
where
(33)uk-1=(Ak-1Nk-1+Bk-1Θ-MkGk-1)Θ-k-1|k-1.
From (22), we have
(34)P-k|k-1x=Fk-1P-k-1|k-1xFk-1T+(Fk-1Nk-1+Ek-1-MkGk-1)×P-k-1|k-1Θ(Fk-1Nk-1+Ek-1-MkGk-1)T+Qkx-Mk(QkxΘ)T-QkxΘMkT+MkQkΘMkT.
Then using (27), (29), and (32), the above equation can be written as
(35)P-k|k-1x=Fk-1P-k-1|k-1xFk-1T+Q-kx,
where
(36)Q-kx=Qkx-QkxΘM-kT-Mk(QkxΘ-M-kQkΘ)T
From (23) and (28), we have
(37)K-kx(Hk1P-k|k-1x(Hk1)T+Rk+SkP-k|k-1ΘSkT)=P-k|k-1x(Hk1)T+K-kxSkP-k|k-1ΘSkT.
Then
(38)K-kx=P-k|k-1x(Hk1)T(Hk1P-k|k-1x(Hk1)T+Rk)-1.
From (24), (28), and (30), we have
(39)X-k|k=X-k|k-1+(Mk-Nk)Θ-k|k-1+K-kx(Yk-CkX-k|k-1-S-kΘ-k|k-1).
Then
(40)X-k|k=X-k|k-1+K-kx(Yk-CkX-k|k-1+(Sk-S-k)Θ-k|k-1),
where
(41)S-k=CkMk.
From (25), (28), and (30), we have
(42)P-k|kx=P-k|k-1x+(Mk-Nk)P-k|k-1Θ(MkT-NkT)-(K-kxHk1P-k|k-1x+K-kxSkP-k|k-1Θ(MkT-NkT)).
Then
(43)P-k|kx=P-k|k-1x-K-kxHk1P-k|k-1x.
Besides prediction function (32), the rest of augmented state filter is obtained by expanding (21)–(25) and using (26)–(28):
(44)P-k|k-1Θ=Gk-1P-k-1|k-1ΘGk-1T+QkΘ,Θ-k|k=Θ-k|k-1+K-kΘ(Yk-CkX-k|k-1-S-kΘ-k|k-1),K-kΘ=P-k|k-1ΘSkT(Hk1P-k|k-1x(Hk1)T+Rk+SkP-k|k-1ΘSkT)-1,P-k|kΘ=P-k|k-1Θ-K-kΘSkP-k|k-1Θ,
where X-k|k-1 and P-k|k-1x can be calculated by (31) and (35).
Finally, based on the above analysis, the OTSEKF algorithm can be organized by the next two parts [15, 16]. The first part of OTSEKF for state and parameter prediction is as follows:
(45)P-k|k-1Θ=Gk-1P-k-1|k-1ΘGk-1T+QkΘ,Ek=∂∂Θ|Θ-k|k(Ak(X-k+NkΘ-k)+BkΘΘk+BkuUk),M-k=(Fk-1Nk-1+Ek-1)(Gk-1)-1,Mk=M-k+(QkxΘ-M-kQkΘ)(P-k|k-1Θ)-1,Q-kx=Qkx-QkxΘM-kT-Mk(QkxΘ-M-kQkΘ)T,P-k|k-1x=Fk-1P-k-1|k-1xFk-1T+Q-kx,Θ-k|k-1=Gk-1Θ-k-1|k-1,uk-1=(Ak-1Nk-1+Bk-1Θ-MkGk-1)Θ-k-1|k-1,X-k|k-1=Ak-1X-k-1|k-1+Bk-1uUk-1+uk-1.
The second part for state and parameter correction is as follows:
(46)S-k=CkMk,Sk=Hk1Mk+Hk2,Bk=Hk1P-k|k-1x(Hk1)T+Rk,K-kΘ=P-k|k-1ΘSkT(Bk+SkP-k|k-1ΘSkT)-1,P-k|kΘ=P-k|k-1Θ-K-kΘSkP-k|k-1Θ,Θ-k|k=Θ-k|k-1+K-kΘ(Yk-CkX-k|k-1-S-kΘ-k|k-1),K-kx=P-k|k-1x(Hk1)T(Bk)-1,P-k|kx=P-k|k-1x-K-kxHk1P-k|k-1x,X-k|k=X-k|k-1+K-kx(Yk-CkX-k|k-1+(S-S-)Θ-k|k-1),Nk=Mk-K-kxSk.
Using (17), the original state X^ can be obtained by the sum of the state X- with the augmented state Θ-:
(47)X^k|k-1=X-k|k-1+MkΘ-k|k-1,X^k|k=X-k|k+NkΘ-k|k.
The initial conditions of this OTSEKF are established with the initial conditions of a conventional EKF (X^0|0, Θ^0|0, P0|0x, P0|0Θ, P0|0xΘ), so that
(48)N0=P0|0xΘ(P0|0Θ)-1,X-0|0=X^0|0-N0Θ-0|0,Θ-0|0=Θ^0|0,P-0|0x=P0|0x-N0P0|0ΘN0T,P-0|0Θ=P0|0Θ.
According to variables of full order filter (x1 and x2), stator flux linkage in machine rotor (dq) reference frame are obtained as follows:
(49)ψsd=x1+ψf,ψsq=x2.
The estimated flux linkages ψsd, ψsq are transformed into the stationary reference frame via
(50)[ψsαψsβ]=[cosθr-sinθrsinθrcosθr][ψsdψsq].
The stator flux linkage and electromagnetic torque estimators are then given by
(51)|ψs|=ψsα2+ψsβ2,θs=arctan(ψsβψsα),Te=32Pn(ψsαisβ-ψsβisα),
where Te is the electromagnetic torque and Pn is the motor pole pairs. The estimated speed ωr obtained from the OTSEKF observer is used to close the speed loop to achieve sensorless operation. So the sensorless DTC-SVPWM scheme is illustrated in Figure 3.Figure 3
Block diagram of the proposed sensorless DTC-SVPWM scheme.


## 4.3. Algorithm Complexity

Tables1 and 2 show the number of arithmetic operations required at each time sample by the standard EKF algorithm and the OTSEKF, respectively (where rough matrix-based implementation is used). The state vector Xk, measurement Yk, input vector Uk, and parameter Θk dimensions are, respectively, n, m, q, and p. To compute standard EKF, the total number of multiplications is 358, and the total number of additions is 289, whereas the number of arithmetic operations required by OTSEKF algorithm is 284 multiplications and 215 additions. This means that the number of multiplications is reduced by 20.67% and the number of additions is reduced by 25.61%.Table 1
EKF arithmetic operation requirements.
Number of multiplications(n=4, m=2, q=2)
Number of additions(n=4, m=2, q=2)
A
-
k, B-k, C-k
Function of system (22)
Function of system (5)
X
k
|
k
-
1
a
n
2
+
n
q (24)
n
2
+
n
q
-
n (20)
P
k
|
k
-
1
2
n
3 (128)
2
n
3
-
n
2 (112)
X
k
|
k
-
1
a
2
n
m (16)
2
n
m (16)
K
k
n
2
m
+
2
n
m
2
+
m
3 (72)
n
2
m
+
2
n
m
2
+
m
3
-
2
n
m (56)
P
k
|
k
n
2
m
+
n
3 (96)
n
2
m
+
n
3
-
n
2 (80)
Total
358
289Table 2
OTSEKF arithmetic operation requirements.
Number of multiplications(n=4, m=2, q=2, p=2)
Number of additions(n=4, m=2, q=2, p=2)
A
-
k, Ck, Ek, Hk1, Hk2, Bku, BkΘ
Function of system (20)
Function of system (3)
P
-
k
|
k
-
1
Θ
2
p
3 (16)
2
p
3
-
p
2 (12)
M
-
k
-
1
n
2
p
+
n
p
2 (16)
n
2
p
+
n
p
2
-
n
p (12)
M
k
-
1
2
n
p
2 (16)
2
n
p
2 (16)
Q
-
k
-
1
x
2
n
2
p
+
n
p
2 (24)
2
n
2
p
+
n
p
2 (24)
P
-
k
|
k
-
1
x
2
n
3 (16)
2
n
3
-
n
2 (12)
Θ
-
k
|
k
-
1
p
2 (4)
p
2
-
p (2)
u
k
-
1
n
2
p
+
n
p
2
+
n
p (20)
n
2
p
+
n
p
2
+
n
p
-
n (18)
X
-
k
|
k
-
1
n
2
+
n
q (8)
n
2
+
n
q (8)
S
k
m
n
p (8)
n
m
p (8)
S
-
k
m
n
p (8)
m
n
p
-
m
p (4)
B
k
2
m
n
2 (16)
2
m
n
2
-
m
2 (12)
K
-
k
|
k
Θ
3
p
2
m
+
p
m
2 (32)
3
p
2
m
+
p
m
2
+
m
2
-
4
p
m (20)
P
-
k
|
k
Θ
p
3
+
p
2
m (16)
p
3
+
p
2
m
-
p
2 (12)
Θ
-
k
|
k
2
m
p
+
n
m (12)
2
m
p
+
n
m (12)
K
-
k
|
k
x
n
2
m
+
n
m
2 (16)
n
2
m
+
n
m
2
-
2
n
m (8)
P
-
k
|
k
x
n
2
m
+
n
3 (16)
n
2
m
+
n
3
-
n
2 (12)
X
-
k
|
k
2
n
m
+
m
p (12)
2
n
m
+
2
m
p (16)
N
k
n
p
m (8)
n
p (4)
Total
284
215


## 5. Simulation and Experimental Results

### 5.1. Simulation Results

To verify validity and feasibility of OTSEKF algorithm, the sensorless DTC-SVPWM technique described in the previous sections is implemented in MATLAB/SIMULINK environment. As stated in [14], the EKF and OTSEKF are mathematically equivalent without requiring system constraints. So a comparison is made between outputs of two algorithms. Real-time parameter estimations observed by OTSEKF are used to formulate the closed loop, such as stator flux, rotor speed, and position. The estimations obtained by conventional EKF algorithm are not included in the DTC-SVPWM and only evaluated in open loop. The block diagram of evaluation module is shown in Figure 4. Figure 5 is the simulation results of parameter estimation based on OTSEKF. The speed dynamic response of the sensorless drive is shown in Figure 5(a). The machine is accelerated from 0 rpm to 600 rpm. During transients, OTSEKF has good tracking performance (speed and position). In Figures 5(g) and 5(h), the torque and flux responses show that ripples are significantly suppressed due to the SVPWM modulation scheme. In Figures 5(c) and 5(f), difference in speed and position estimations between the two observers is very little. It proves equivalence of both observers. The difference between two observers is caused by accuracy loss in OTSEKF, which uses more calculation steps.Figure 4
Open-loop and closed-loop simulation structure.Simulation results for parameters estimation. (a) Actual rotor speed and estimated rotor speed (OTSEKF). (b) OTSEKF speed error. (c) Difference of rotor speed estimation between EKF and OTSEKF. (d) Actual rotor position and estimated rotor position (OTSEKF). (e) OTSEKF position error. (f) Difference of rotor position estimation between EKF and OTSEKF. (g) Estimated torque. (h) Estimated stator flux linkage.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)


### 5.2. Experimental Results

The drive system consists of a three-phase, eight-pole, 1.2 kW, PMSM driven from a three-phase Insulated Gate Bipolar Transistor (IGBT) inverter. The PMSM is mechanically coupled to a magnetic clutch, which provides rated torque, even at very low speeds. The drive system is implemented by an Expert 3 control system of Myway Company. The core DSP processor in Expert 3 control system is TMS320C6713 with a clock speed of 225 MHz. The actual rotor position and speed are obtained from an incremental encoder with 10000 pulses per revolution. The inverter space-vector PWM control, current regulator, and observer algorithm operate with a 100 us sampling/integration time step. The currents flowing in the stator windings are measured with two hall-effect current sensors.The experiment test is conducted to testify the tracking performance of OTSEKF and to demonstrate that the OTSEKF is mathematically equivalent to EKF. Figure6 presents the corresponding experimental results. Figures 6(a) and 6(b) show the rotor speed and angle dynamic response of OTSEKF and the errors between the estimated and real values when the command speed is 600 rpm. We can observe that the OTSEKF tracks the actual speed and angle very well, and the steady state errors are very small. Figure 6(e) presents trajectory of the estimated stator flux components, and the stator flux trajectory is almost circular. Figure 6(f) shows the response of torque is fast and smooth. The differences between the two observers are represented in Figures 6(c) and 6(d). As we can expect, the differences in speed and position estimations are still small, and this proves that the two observers are mathematically equivalent.Experimental results for parameters estimation. (a) Real speed, estimated speed (OTSEKF), and estimated speed error. (b) Real rotor position, estimated rotor position (OTSEKF), and estimated position error. (c) Difference of speed estimation between EKF and OTSEKF. (d) Difference of rotor position estimation between EKF and OTSEKF. (e) Estimated torque. (f) Estimated stator flux linkage.
(a)
(b)
(c)
(d)
(e)
(f)


## 5.1. Simulation Results

To verify validity and feasibility of OTSEKF algorithm, the sensorless DTC-SVPWM technique described in the previous sections is implemented in MATLAB/SIMULINK environment. As stated in [14], the EKF and OTSEKF are mathematically equivalent without requiring system constraints. So a comparison is made between outputs of two algorithms. Real-time parameter estimations observed by OTSEKF are used to formulate the closed loop, such as stator flux, rotor speed, and position. The estimations obtained by conventional EKF algorithm are not included in the DTC-SVPWM and only evaluated in open loop. The block diagram of evaluation module is shown in Figure 4. Figure 5 is the simulation results of parameter estimation based on OTSEKF. The speed dynamic response of the sensorless drive is shown in Figure 5(a). The machine is accelerated from 0 rpm to 600 rpm. During transients, OTSEKF has good tracking performance (speed and position). In Figures 5(g) and 5(h), the torque and flux responses show that ripples are significantly suppressed due to the SVPWM modulation scheme. In Figures 5(c) and 5(f), difference in speed and position estimations between the two observers is very little. It proves equivalence of both observers. The difference between two observers is caused by accuracy loss in OTSEKF, which uses more calculation steps.Figure 4
Open-loop and closed-loop simulation structure.Simulation results for parameters estimation. (a) Actual rotor speed and estimated rotor speed (OTSEKF). (b) OTSEKF speed error. (c) Difference of rotor speed estimation between EKF and OTSEKF. (d) Actual rotor position and estimated rotor position (OTSEKF). (e) OTSEKF position error. (f) Difference of rotor position estimation between EKF and OTSEKF. (g) Estimated torque. (h) Estimated stator flux linkage.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)


## 5.2. Experimental Results

The drive system consists of a three-phase, eight-pole, 1.2 kW, PMSM driven from a three-phase Insulated Gate Bipolar Transistor (IGBT) inverter. The PMSM is mechanically coupled to a magnetic clutch, which provides rated torque, even at very low speeds. The drive system is implemented by an Expert 3 control system of Myway Company. The core DSP processor in Expert 3 control system is TMS320C6713 with a clock speed of 225 MHz. The actual rotor position and speed are obtained from an incremental encoder with 10000 pulses per revolution. The inverter space-vector PWM control, current regulator, and observer algorithm operate with a 100 us sampling/integration time step. The currents flowing in the stator windings are measured with two hall-effect current sensors.The experiment test is conducted to testify the tracking performance of OTSEKF and to demonstrate that the OTSEKF is mathematically equivalent to EKF. Figure6 presents the corresponding experimental results. Figures 6(a) and 6(b) show the rotor speed and angle dynamic response of OTSEKF and the errors between the estimated and real values when the command speed is 600 rpm. We can observe that the OTSEKF tracks the actual speed and angle very well, and the steady state errors are very small. Figure 6(e) presents trajectory of the estimated stator flux components, and the stator flux trajectory is almost circular. Figure 6(f) shows the response of torque is fast and smooth. The differences between the two observers are represented in Figures 6(c) and 6(d). As we can expect, the differences in speed and position estimations are still small, and this proves that the two observers are mathematically equivalent.Experimental results for parameters estimation. (a) Real speed, estimated speed (OTSEKF), and estimated speed error. (b) Real rotor position, estimated rotor position (OTSEKF), and estimated position error. (c) Difference of speed estimation between EKF and OTSEKF. (d) Difference of rotor position estimation between EKF and OTSEKF. (e) Estimated torque. (f) Estimated stator flux linkage.
(a)
(b)
(c)
(d)
(e)
(f)


## 6. Conclusion

The real-time digital implementation of extended Kalman filters algorithm for senseless DTC-SVPWM requires a very fast signal processor specialized and optimized to perform complex mathematical calculations and manipulate a large amount of data. This is generally considered as a major disadvantage to apply Kalman filter algorithm to industrial field. So this paper proposes a novel extended Kalman filter called optimal two-stage extended Kalman filter. OTSEKF can reduce computational cost effectively compared to conventional EKF. The simulation and experimental results show that OTSEKF has good tracking performance. Equivalence is verified by little difference in estimations between OTSEKF and EKF. The OTSEKF algorithm provides a new idea to solve computational complexion and allows us to use cheaper DSP in practical application.



---

*Source: 768736-2013-04-15.xml*