Main Content

Sliding Mode Observer

Compute electrical position and mechanical speed of rotor

Since R2020a

Libraries:
mcbpositiondecoderlib / Archive

Description

The Sliding Mode Observer block computes the electrical position and mechanical speed of a PMSM by using the per unit voltage and current values along the α- and β-axes of the stationary αβ reference frame.

Equations

These equations describe the computation of the electrical position and mechanical speed by the block.

diαβdt=Φiαβ+ΓVαβΓeαβ

iαβ = [iα iβ ]T

Vαβ = [Vα Vβ ]T

eαβ = [eα eβ ]T=[ψωesinθeψωecosθe]

Φ=[RL00RL]

Γ=[1L001L]

These equations describe the discrete-time sliding mode observer operation by using per-unit values:

i^αβ(k+1)P.U=Ai^αβ(k)P.U+VratedIratedB(vαβ(k)P.Uϑαβ(k)P.U)

ϑαβ(k+1)P.U=ϑαβ(k)P.U+2πf0×(Ζ(Irated(i^αβ(k)P.Uiαβ(k)P.U))ϑαβ(k)P.U)

A=eΦTs

B=0TseΦτdτ

f0=F0Fs

Fs=1Ts

where:

  • eα ,iα  are the stator back EMF and current for the α axis.

  • eβ ,iβ  are the stator back EMF and current for the β axis.

  • vα,vβ are the stator supply voltages.

  • R is the stator resistance.

  • L is the stator inductance.

  • ψ is the flux linkage due to permanent magnet.

  • ωe is the electrical angular velocity.

  • θe is the electrical position of the rotor.

  • t is the time.

  • Ts is the sampling period.

  • k is the sample count.

  • Vrated is the nominal voltage corresponding to 1 per-unit.

  • Irated is the nominal current corresponding to 1 per-unit.

  • Z is the attraction function.

  • f0 is the cut-off frequency of the filter in cycles per sample.

  • F0 is the cut-off frequency in cycles per second.

  • Fs is the sample frequency in samples per second.

  • ϑαβ(k) is the estimated back EMF.

Tuning

Use the Current observer gain and Sliding surface limit parameters to tune the block.

  • To improve stability, increase the Sliding surface limit or reduce the Current observer gain.

  • To reduce distortion, decrease the Current observer gain or increase the Sliding surface limit.

Examples

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.

Data Types: single | double | fixed point

The estimated mechanical speed of the rotor.

Data Types: single | double | fixed point

Parameters

expand all

Observer parameters

The attraction function gain.

The boundary layer limit of the attraction function's domain.

Unit of the position output.

Data type of the position output.

Unit of the speed output.

Data type of the speed output.

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

Motor parameters

Stator phase winding resistance (in ohm).

Stator phase winding inductance (in Henry).

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

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.

Note

The Sliding Mode Observer block may occasionally display the warning message 'Wrap on overflow detected.'

References

[1] Y. Kung, N. V. Quynh, C. Huang and L. Huang, "Design and simulation of adaptive speed control for SMO-based sensorless PMSM drive," 2012 4th International Conference on Intelligent and Advanced Systems (ICIAS2012), Kuala Lumpur, 2012, pp. 439-444 (doi: 10.1109/ICIAS.2012.6306234)

[2] Zhang Yan and V. Utkin, "Sliding mode observers for electric machines-an overview," IEEE 2002 28th Annual Conference of the Industrial Electronics Society. IECON 02, Sevilla, 2002, pp. 1842-1847 vol.3. (doi: 10.1109/IECON.2002.1185251)

[3] T. Bernardes, V. F. Montagner, H. A. Gründling and H. Pinheiro, "Discrete-Time Sliding Mode Observer for Sensorless Vector Control of Permanent Magnet Synchronous Machine," in IEEE Transactions on Industrial Electronics, vol. 61, no. 4, pp. 1679-1691, April 2014 (doi: 10.1109/TIE.2013.2267700)

[4] Z. Guo and S. K. Panda, "Design of a sliding mode observer for sensorless control of SPMSM operating at medium and high speeds," 2015 IEEE Symposium on Sensorless Control for Electrical Drives (SLED), Sydney, NSW, 2015, pp. 1-6. (doi: 10.1109/SLED.2015.7339255)

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 R2020a