# Synchronous Reluctance Machine

Synchronous reluctance machine with sinusoidal flux distribution

• Libraries:
Simscape / Electrical / Electromechanical / Reluctance & Stepper

## Description

The Synchronous Reluctance Machine block represents a synchronous reluctance machine (SynRM) with sinusoidal flux distribution. The figure shows the equivalent electrical circuit for the stator windings. ### Motor Construction

The diagram shows the motor construction with a single pole-pair on the rotor. For the axes convention shown, when rotor mechanical angle θr is zero, the a-phase and permanent magnet fluxes are aligned. The block supports a second rotor axis definition for which rotor mechanical angle is defined as the angle between the a-phase magnetic axis and the rotor q-axis. ### Equations

The combined voltage across the stator windings is

`$\left[\begin{array}{c}{v}_{a}\\ {v}_{b}\\ {v}_{c}\end{array}\right]=\left[\begin{array}{ccc}{R}_{s}& 0& 0\\ 0& {R}_{s}& 0\\ 0& 0& {R}_{s}\end{array}\right]\left[\begin{array}{c}{i}_{a}\\ {i}_{b}\\ {i}_{c}\end{array}\right]+\left[\begin{array}{c}\frac{d{\psi }_{a}}{dt}\\ \frac{d{\psi }_{b}}{dt}\\ \frac{d{\psi }_{c}}{dt}\end{array}\right],$`

where:

• va, vb, and vc are the individual phase voltages across the stator windings.

• Rs is the equivalent resistance of each stator winding.

• ia, ib, and ic are the currents flowing in the stator windings.

• ψa, ψb, and ψc are the magnetic fluxes that link each stator winding.

The permanent magnet, excitation winding, and the three stator windings contribute to the flux that links each winding. The total flux is defined as

`$\left[\begin{array}{c}{\psi }_{a}\\ {\psi }_{b}\\ {\psi }_{c}\end{array}\right]=\left[\begin{array}{ccc}{L}_{aa}& {L}_{ab}& {L}_{ac}\\ {L}_{ba}& {L}_{bb}& {L}_{bc}\\ {L}_{ca}& {L}_{cb}& {L}_{cc}\end{array}\right]\left[\begin{array}{c}{i}_{a}\\ {i}_{b}\\ {i}_{c}\end{array}\right]$`

where:

• Laa, Lbb, and Lcc are the self-inductances of the stator windings.

• Lab, Lac, Lba, Lbc, Lca, and Lcb are the mutual inductances of the stator windings.

`${\theta }_{e}=N{\theta }_{r}+rotor\text{\hspace{0.17em}}offset$`

`${L}_{aa}={L}_{s}+{L}_{m}\text{cos}\left(2{\theta }_{e}\right)$`

`${L}_{bb}={L}_{s}+{L}_{m}\text{cos}\left(2\left({\theta }_{e}-2\pi /3\right)\right)$`

`${L}_{cc}={L}_{s}+{L}_{m}\text{cos}\left(2\left({\theta }_{e}+2\pi /3\right)\right)$`

`${L}_{ab}={L}_{ba}=-{M}_{s}-{L}_{m}\mathrm{cos}\left(2\left({\theta }_{e}+\pi /6\right)\right)$`

`${L}_{bc}={L}_{cb}=-{M}_{s}-{L}_{m}\mathrm{cos}\left(2\left({\theta }_{e}+\pi /6-2\pi /3\right)\right)$`

and

`${L}_{ca}={L}_{ac}=-{M}_{s}-{L}_{m}\mathrm{cos}\left(2\left({\theta }_{e}+\pi /6+2\pi /3\right)\right)$`

where:

• θr is the rotor mechanical angle.

• θe is the rotor electrical angle.

• rotor offset is `0` if you define the rotor electrical angle with respect to the d-axis, or `-pi/2` if you define the rotor electrical angle with respect to the q-axis.

• Ls is the stator self-inductance per phase. This value is the average self-inductance of each of the stator windings.

• Lm is the stator inductance fluctuation. This value is the amplitude of the fluctuation in self-inductance and mutual inductance with changing rotor angle.

• Ms is the stator mutual inductance. This value is the average mutual inductance between the stator windings.

### Simplified Equations

Applying the Park transformation to the block electrical defining equations produces an expression for torque that is independent of rotor angle.

The Park transformation, P, is defined as

`$P=\frac{2}{3}\left[\begin{array}{ccc}\mathrm{cos}{\theta }_{e}& \mathrm{cos}\left({\theta }_{e}-\frac{2\pi }{3}\right)& \mathrm{cos}\left({\theta }_{e}+\frac{2\pi }{3}\right)\\ -\mathrm{sin}{\theta }_{e}& -\mathrm{sin}\left({\theta }_{e}-\frac{2\pi }{3}\right)& -\mathrm{sin}\left({\theta }_{e}+\frac{2\pi }{3}\right)\\ \frac{1}{2}& \frac{1}{2}& \frac{1}{2}\end{array}\right],$`

where θe is the electrical angle. The electrical angle depends on the rotor mechanical angle and the number of pole pairs such that

`${\theta }_{e}=N{\theta }_{r}+rotor\text{\hspace{0.17em}}offset$`

where:

• N is the number of pole pairs.

• θr is the rotor mechanical angle.

Applying the Park transformation to the first two electrical defining equations produces equations that define the behavior of the block:

`${v}_{d}={R}_{s}{i}_{d}+{L}_{d}\frac{d{i}_{d}}{dt}-N\omega {i}_{q}{L}_{q},$`

`${v}_{q}={R}_{s}{i}_{q}+{L}_{q}\frac{d{i}_{q}}{dt}+N\omega {i}_{d}{L}_{d},$`

`${v}_{0}={R}_{s}{i}_{0}+{L}_{0}\frac{d{i}_{0}}{dt},$`

`$T=\frac{3}{2}N\left({i}_{q}{i}_{d}{L}_{d}-{i}_{d}{i}_{q}{L}_{q}\right)$`

`$J\frac{d\omega }{dt}=T-{T}_{L}-{B}_{m}\omega ,$`

where:

• id, iq, and i0 are the d-axis, q-axis, and zero-sequence currents, defined by

`$\left[\begin{array}{c}{i}_{d}\\ {i}_{q}\\ {i}_{0}\end{array}\right]=P\left[\begin{array}{c}{i}_{a}\\ {i}_{b}\\ {i}_{c}\end{array}\right],$`

where ia, ib, and ic are the stator currents.

• vd, vq, and v0 are the d-axis, q-axis, and zero-sequence currents, defined by

`$\left[\begin{array}{c}{v}_{d}\\ {v}_{q}\\ {v}_{0}\end{array}\right]=P\left[\begin{array}{c}{v}_{a}\\ {v}_{b}\\ {v}_{c}\end{array}\right],$`

where va, vb, and vc are the stator currents.

• The dq0 inductances are defined, respectively as

• ${L}_{d}={L}_{s}+{M}_{s}+\frac{3}{2}{L}_{m}$

• ${L}_{q}={L}_{s}+{M}_{s}-\frac{3}{2}{L}_{m}$

• ${L}_{0}={L}_{s}-2{M}_{s}$.

• Rs is the stator resistance per phase.

• N is the number of rotor pole pairs.

• T is the rotor torque. For the Synchronous Reluctance Machine block, torque flows from the machine case (block conserving port C) to the machine rotor (block conserving port R).

• TL is the load torque.

• Bm is the rotor damping.

• ω is the rotor mechanical rotational speed.

• J is the rotor inertia.

### Calculating Iron Losses

To calculate iron losses in the Synchronous Reluctance Machine block, choose whether you want to model them by specifying magnetizing resistance, parameterize them based on the Steinmetz equation, or if you want to tabulate the losses as a function of currents and rotor speed.

If you set the Stator parameterization parameter to `Specify Ls, Lm, and Ms` or ```Specify Ld, Lq, and L0``` and Modeling fidelity to `Constant Ld and Lq`, then specify the Magnetizing resistance parameter to model iron losses.

In the Iron Losses settings, if you set the Model parameter to ```Specify tabulated Steinmetz coefficients``` or ```Tabulate with current and speed```, the iron losses are applied to the mechanical side as a reduction in the electrical torque:

`${\tau }_{loss}=sign\left(w\right)\frac{{P}_{loss,stator}+{P}_{loss,rotor}}{abs\left(w\right)+{w}_{min}},$`

where wmin is minimum rotor speed to start taking iron losses into account, and it is equal to `1` `rad/s`.

The total power dissipated is equal to the sum of the iron losses and the copper losses:

`${P}_{dissipated}={\tau }_{loss}w+{R}_{a}{i}_{a}^{2}+{R}_{b}{i}_{b}^{2}+{R}_{c}{i}_{c}^{2}.$`

Steinmetz parameterization method

To model the iron losses based on the Steinmetz equation, set the Stator parameterization parameter to `Specify Ld, Lq, and L0` and the Modeling fidelity parameter to ```Tabulated Ld and Lq```. The Steinmetz method scales for different motor speeds or electrical frequencies so that iron loss data is only required as function of motor currents.

If, in the Iron losses settings, you set the Model parameter to ```Specify tabulated Steinmetz coefficients```, the iron losses are given by:

`$\begin{array}{l}{P}_{loss,rotor}\left(f\right)={k}_{hr}\left({i}_{d},{i}_{q}\right)f+{k}_{Jr}\left({i}_{d},{i}_{q}\right){f}^{2}+{k}_{er}\left({i}_{d},{i}_{q}\right){f}^{1.5}\\ {P}_{loss,stator}\left(f\right)={k}_{hs}\left({i}_{d},{i}_{q}\right)f+{k}_{Js}\left({i}_{d},{i}_{q}\right){f}^{2}+{k}_{es}\left({i}_{d},{i}_{q}\right){f}^{1.5}\end{array}$`

where:

• khr(id,iq) is the Rotor hysteresis loss coefficient, k_hr(id,iq).

• kJr(id,iq) is the Rotor eddy current loss coefficient, k_Jr(id,iq).

• ker(id,idq) is the Rotor excess current loss coefficient, k_er(id,iq).

• khs(id,iq) is the Stator hysteresis loss coefficient, k_hs(id,iq).

• kJs(id,iq) is the Stator eddy current loss coefficient, k_Js(id,iq).

• kes(id,iq) is the Stator excess current loss coefficient, k_es(id,iq).

• $f=w\frac{nPolePairs}{2\pi }$ is the electrical frequency, in Hz.

Tabulate with current and speed

To model the iron losses by tabulating them independently for rotor and stator, set the Stator parameterization parameter to `Specify Ld, Lq, and L0` and the Modeling fidelity parameter to ```Tabulated Ld and Lq```.

Then, if in the Iron losses settings, you set the Model parameter to ```Tabulate with current and speed```, the iron losses are given by:

`${P}_{loss}\left({i}_{d},{i}_{q},w\right)=tablelookup\left({P}_{table},{i}_{d},{i}_{q},w\right).$`

where w is the Rotor speed vector, w parameter.

Iron losses with thermal ports

If you expose the thermal ports of the block, the power dissipated in each phase act as heat sources in the stator and in the rotor:

`$\begin{array}{l}{P}_{dissA}={R}_{a}{i}_{a}^{2}+\frac{{P}_{loss,stator}}{3}\\ {P}_{dissB}={R}_{b}{i}_{b}^{2}+\frac{{P}_{loss,stator}}{3}\\ {P}_{dissC}={R}_{c}{i}_{c}^{2}+\frac{{P}_{loss,stator}}{3}\\ {P}_{dissR}={P}_{loss,rotor}\end{array}$`

If you specify the magnetizing resistance, the iron loss in the rotor is equal to a percentage of the total iron losses. This percentage remains constant and does not depend on other states:

`${P}_{loss,rotor}=\frac{percen{t}_{rotor}}{100}{P}_{iron\text{\hspace{0.17em}}loss,total}.$`

Then the remaining iron loss is distributed among the different stator phases:

`${P}_{loss,stator}=\left(1-\frac{percen{t}_{rotor}}{100}\right){P}_{iron\text{\hspace{0.17em}}loss,total}.$`

### Model Thermal Effects

You can expose thermal ports to model the effects of losses that convert power to heat. To expose the thermal ports, set the Modeling option parameter to either:

• `No thermal port` — The block does not contain thermal ports.

• `Show thermal port` — The block contains multiple thermal conserving ports.

For more information about using thermal ports in actuator blocks, see Simulating Thermal Effects in Rotational and Translational Actuators.

### Variables

To set the priority and initial target values for the block variables before simulation, use the Initial Targets section in the block dialog box or Property Inspector. For more information, see Set Priority and Initial Target for Block Variables.

Nominal values provide a way to specify the expected magnitude of a variable in a model. Using system scaling based on nominal values increases the simulation robustness. You can specify nominal values using different sources, including the Nominal Values section in the block dialog box or Property Inspector. For more information, see System Scaling by Nominal Values.

## Assumptions

The flux distribution is sinusoidal.

## Ports

### Conserving

expand all

Mechanical rotational conserving port associated with the machine rotor.

Mechanical rotational conserving port associated with the machine case.

Expandable three-phase port associated with the stator windings.

#### Dependencies

To enable this port, set Electrical connection to ```Composite three-phase ports```.

Electrical conserving port associated with a-phase.

#### Dependencies

To enable this port, set Electrical connection to ```Expanded three-phase ports```.

Electrical conserving port associated with b-phase.

#### Dependencies

To enable this port, set Electrical connection to ```Expanded three-phase ports```.

Electrical conserving port associated with c-phase.

#### Dependencies

To enable this port, set Electrical connection to ```Expanded three-phase ports```.

Electrical conserving port associated with the neutral phase.

#### Dependencies

To enable this port, set Zero sequence to `Include`.

Thermal conserving port associated with winding A.

#### Dependencies

To enable this port, set Modeling option to `Show thermal port`.

Thermal conserving port associated with winding B.

#### Dependencies

To enable this port, set Modeling option to `Show thermal port`.

Thermal conserving port associated with winding C.

#### Dependencies

To enable this port, set Modeling option to `Show thermal port`.

Thermal conserving port associated with the rotor.

#### Dependencies

To enable this port, set Modeling option to `Show thermal port`.

## Parameters

expand all

Whether to enable the thermal ports of the block and model the effects of losses that convert power to heat.

### Main

Whether to have composite or expanded three-phase ports.

Number of permanent magnet pole pairs on the rotor.

Stator parameterization model.

#### Dependencies

The Stator parameterization setting affects the visibility of other parameters.

Select the modeling fidelity:

• `Constant Ld and Lq`Ld and Lq values are constant and defined by their respective parameters.

• `Tabulated Ld and Lq`Ld and Lq values are computed online from DQ currents look-up tables as follows:

`${L}_{d}={f}_{1}\left({i}_{d},{i}_{q}\right)$`

`${L}_{d}={f}_{2}\left({i}_{d},{i}_{q}\right)$`

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0```.

Direct-axis inductance of the machine stator.

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0``` and the Modeling fidelity parameter to ```Constant Ld and Lq```.

Quadrature-axis inductance of the machine stator.

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0``` and the Modeling fidelity parameter to ```Constant Ld and Lq```.

Direct-axis current vector, iD.

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0``` and the Modeling fidelity parameter to ```Tabulated Ld and Lq```.

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0``` and the Modeling fidelity parameter to ```Tabulated Ld and Lq```.

Ld matrix.

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0``` and the Modeling fidelity parameter to ```Tabulated Ld and Lq```.

Lq matrix.

#### Dependencies

This parameter is visible only when you set the Stator parameterization parameter to ```Specify Ld, Lq, and L0``` and the Modeling fidelity parameter to ```Tabulated Ld and Lq```.

Zero-axis inductance for the machine stator.

#### Dependencies

This parameter is visible only if Stator parameterization is set to ```Specify Ld, Lq and L0``` and Zero sequence is set to `Include`.

Average self-inductance of the three stator windings.

#### Dependencies

This parameter is visible only if Stator parameterization is set to ```Specify Ls, Lm, and Ms```.

Amplitude of the fluctuation in self-inductance and mutual inductance with the rotor angle.

#### Dependencies

This parameter is visible only if Stator parameterization is set to ```Specify Ls, Lm, and Ms```.

Average mutual inductance between the stator windings.

#### Dependencies

This parameter is visible only if Stator parameterization is set to ```Specify Ls, Lm, and Ms```.

Resistance of each of the stator windings.

Zero-sequence model:

• `Include` — Prioritize model fidelity. An error occurs if you Include zero-sequence terms for simulations that use the Partitioning solver. For more information, see Increase Simulation Speed Using the Partitioning Solver.

• `Exclude` — Prioritize simulation speed for desktop simulation or real-time deployment.

#### Dependencies

If this parameter is set to:

• `Include` and Stator parameterization is set to Specify Ld, Lq, and L0 — The Stator zero-sequence inductance, L0 parameter is visible.

• `Exclude` — The Stator zero-sequence inductance, L0 parameter is not visible.

### Iron Losses

Whether to enable iron losses modeling.

#### Dependencies

To enable this parameter, set Modeling fidelity to ```Tabulate Ld and Lq```.

Magnetizing resistance. The value must be greater than zero. The default value is `inf`, which implies that there are no iron losses.

#### Dependencies

To enable this parameter, either set Model to `Specify magnetizing resistance` or set Modeling fidelity to ```Constant Ld and Lq```.

Hysteresis loss coefficient of the rotor depending on the d-axis and q-axis currents. It is used by the Steinmetz equation.

#### Dependencies

To enable this parameter, set Model to ```Specify tabulated Steinmetz coefficients```.

Eddy current loss coefficient of the rotor depending on the d-axis and q-axis currents. It is used by the Steinmetz equation.

#### Dependencies

To enable this parameter, set Model to ```Specify tabulated Steinmetz coefficients```.

Excess current loss coefficient of the rotor depending on the d-axis and q-axis currents. It is used by the Steinmetz equation.

#### Dependencies

To enable this parameter, set Model to ```Specify tabulated Steinmetz coefficients```.

Hysteresis loss coefficient of the stator depending on the d-axis and q-axis currents. It is used by the Steinmetz equation.

#### Dependencies

To enable this parameter, set Model to ```Specify tabulated Steinmetz coefficients```.

Eddy current loss coefficient of the stator depending on the d-axis and q-axis currents. It is used by the Steinmetz equation.

#### Dependencies

To enable this parameter, set Model to ```Specify tabulated Steinmetz coefficients```.

Excess current loss coefficient of the stator depending on the d-axis and q-axis currents. It is used by the Steinmetz equation.

#### Dependencies

To enable this parameter, set Model to ```Specify tabulated Steinmetz coefficients```.

Vector of rotor speed at which the iron loss is tabulated.

#### Dependencies

To enable this parameter, set Model to ```Tabulate with current and speed```.

Iron losses of the rotor tabulated on the d-axis and q-axis currents, and rotor speed.

#### Dependencies

To enable this parameter, set Model to ```Tabulate with current and speed```.

Iron losses of the stator tabulated on the d-axis and q-axis currents, and rotor speed.

#### Dependencies

To enable this parameter, set Model to ```Tabulate with current and speed```.

### Mechanical

Inertia of the rotor attached to mechanical translational port R.

Rotary damping.

Reference point for the rotor angle measurement. If you select the default value, the rotor and a-phase fluxes are aligned for a zero-rotor angle. Otherwise, an a-phase current generates the maximum torque value for a zero-rotor angle.

### Thermal

To enable these parameters, set Modeling option to `Show thermal port`.

The temperature for which motor parameters are quoted.

Coefficient α in the equation relating resistance to temperature, as described in Thermal Model for Actuator Blocks. The default value is for copper.

The thermal mass value for the A, B, and C windings. The thermal mass is the energy required to raise the temperature by one degree.

The thermal mass of the rotor, that is, the energy required to raise the temperature of the rotor by one degree.

Percentage of total iron losses associated with the rotor.

#### Dependencies

To enable this parameter, either set Modeling fidelity to ```Costant Ld and Lq``` or Stator parameterization to `Specify Ls, Lm, and Ms`.

 Kundur, P. Power System Stability and Control. New York, NY: McGraw Hill, 1993.

 Anderson, P. M. Analysis of Faulted Power Systems. Hoboken, NJ: Wiley-IEEE Press, 1995.

 Moghaddam, R. Synchronous Reluctance Machine (SynRM) in Variable Speed Drives (VSD) Applications - Theoretical and Experimental Reevaluation. KTH School of Electrical Engineering, Stockholm, Sweden, 2011.