Main Content

Extended EMF Observer

Compute electrical position and mechanical speed of permanent magnet synchronous motor (PMSM)

Since R2023a

Libraries:
Motor Control Blockset / Sensorless Estimators

Description

The Extended EMF Observer block computes electrical position, θe (or sin θe and cos θe) in addition to mechanical speed of PMSM from the measured voltage and current in the stationary αβ reference frame.

The block includes a linear extended EMF state observer that estimates the extended back-emf. It uses a low-pass filter to remove any noise in the estimated back-emf value. In addition, the block includes a speed feed-forward-based quadrature phase-locked loop (PLL) that acts as a speed observer. The speed observer uses the computed extended back-emf to determine the motor speed. The feed-forward PLL calculates speed with zero error even during constant angular acceleration. The block then computes the position output from the estimated motor electrical speed.

Equations

The following is the IPMSM state equation:

[i·e·]=[A11A120A22][ie]+[B10]v+[0W]i=C[ie]

The following equations describe the reduced order PMSM state model:

i·=A11i+A12e+B1ve·=A22e

Extended back-EMF, e={(LdLq)(ωreidi·q)+ωreKE}[sinθrecosθre]

The following equation describes the reduced dimensional state observer:

e^·=(A^22ξA12)e^+ξ(i·A^11iB1v)

The following equations describe the extended EMF observer parameters:

A22ξA12=ωreJ(αI+βJ)(1Ld)Iξ=(αI+βJ)

To ensure convergence, if we select β=ωre×Ld as well as select any negative value for α, then the extended EMF observer gain can be determined as:

Extended EMF observer gain=αLd

where:

  • i=[iαiβ], e=[eαeβ], and v=[vαvβ].

  • W=(LdLq)(ωreid·iq··)[sinθrecosθre]

  • A=[A11A120A22], B=[B10], and C=[I0].

  • A11=(RLd)I+(ωre(LdLq)Ld)J, A12=(1Ld)I, and A22=ωreJ.

  • B1=(1Ld)I, I=[1001], and J=[0110].

    Note

    A and C are observable pair.

  • "·" and "··" are the first-order and second-order differential operators respectively.

  • vα and vβ are the stator voltages along the α- and β-axes respectively.

  • iα and iβ are the stator currents along the α- and β-axes respectively.

  • eα and eβ are the extended back-EMF along the α- and β-axes respectively.

  • id and iq are the stator currents along the d- and q-axes respectively.

  • R is the stator resistance of PMSM.

  • Ld and Lq are the stator inductances of PMSM across d and q axes respectively.

  • KE is the EMF constant

  • ωre is the angular velocity at electrical angle.

  • θre is the rotor position at electrical angle.

  • e^, A^22, and A^11 are the estimated values.

  • ξ is the feedback gain.

Ports

Input

expand all

Per-unit voltage component along the α-axis of the stationary αβ reference frame.

Data Types: single | double | fixed point

Per-unit voltage component along the β-axis of the stationary αβ reference frame.

Data Types: single | double | fixed point

Per-unit current component along the α-axis of the stationary αβ reference frame.

Data Types: single | double | fixed point

Per-unit current component along the β-axis of the stationary αβ reference frame.

Data Types: single | double | fixed point

The pulse (true value) that resets and restarts the processing of the block algorithm.

Data Types: single | double | fixed point

Output

expand all

The estimated electrical position of the rotor.

Dependencies

To create this port, set the Position output parameter to Electrical position.

Data Types: single | double | fixed point

Sine of the estimated electrical position of the rotor.

Dependencies

To create this port, set the Position output parameter to Sine and Cosine electrical position.

Data Types: single | double | fixed point

Cosine of the estimated electrical position of the rotor.

Dependencies

To create this port, set the Position output parameter to Sine and Cosine electrical position.

Data Types: single | double | fixed point

The estimated mechanical speed of the rotor.

Data Types: single | double | fixed point

Parameters

expand all

Units of inputs to the block.

Type of position output of the block.

  • Electrical position — Select this value to enable θe port.

  • Sine and Cosine electrical position — Select this value to enable the Sin θe and Cos θe ports.

The fixed time interval (in seconds) between two consecutive instances of block execution.

Motor Parameters

Stator phase winding resistance (in ohm).

Stator phase winding inductance (in Henry) along the d-axis of the rotating d-q reference frame.

Stator phase winding inductance (in Henry) along the q-axis of the rotating d-q reference frame.

Maximum mechanical speed (in RPM) that the block can support. For a speed beyond this value, the block generates incorrect outputs.

Note

The block uses this parameter to filter out noise in the estimated speed signal.

Number of pole pairs available in the motor.

The maximum phase voltage applied to PMSM. For details, see Per-Unit System.

The maximum measurable current supplied to PMSM. For details, see Per-Unit System.

Observer Parameters

Gain of the linear extended EMF state observer.

Cutoff frequency of the low-pass filter that the block uses to remove noise in the estimated back EMF.

Proportional gain of the speed observer used by the block.

Integral gain of the speed observer used by the block.

Number of data points in the lookup table that the speed observer uses to compute speed from the extended back emf value.

Cutoff frequency of the low-pass filter that the block uses to remove noise in the estimated speed.

Datatypes

Unit of the position output.

Data type of the position output.

Unit of the speed output.

Data type of the speed output.

References

[1] Zhiqian Chen, M. Tomita, S. Doki and S. Okuma, "An extended electromotive force model for sensorless control of interior permanent-magnet synchronous motors," in IEEE Transactions on Industrial Electronics, vol. 50, no. 2, pp. 288-295, April 2003, doi: 10.1109/TIE.2003.809391.

[2] T. Ohnuma, S. Doki and S. Okuma, "Extended EMF observer for wide speed range sensorless control of salient-pole synchronous motor drives," The XIX International Conference on Electrical Machines - ICEM 2010, Rome, Italy, 2010, pp. 1-6, doi: 10.1109/ICELMACH.2010.5608087.

[3] G. Liu, H. Zhang and X. Song, "Position-Estimation Deviation-Suppression Technology of PMSM Combining Phase Self-Compensation SMO and Feed-Forward PLL," in IEEE Journal of Emerging and Selected Topics in Power Electronics, vol. 9, no. 1, pp. 335-344, Feb. 2021, doi: 10.1109/JESTPE.2020.2967508.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Fixed-Point Conversion
Design and simulate fixed-point systems using Fixed-Point Designer™.

Version History

Introduced in R2023a