# Synchronous Reluctance Machine

Synchronous reluctance machine with sinusoidal flux distribution

**Library:**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:

*v*,_{a}*v*, and_{b}*v*are the individual phase voltages across the stator windings._{c}*R*is the equivalent resistance of each stator winding._{s}*i*,_{a}*i*, and_{b}*i*are the currents flowing in the stator windings._{c}*ψ*,_{a}*ψ*, and_{b}*ψ*are the magnetic fluxes that link each stator winding._{c}

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:

*L*,_{aa}*L*, and_{bb}*L*are the self-inductances of the stator windings._{cc}*L*,_{ab}*L*,_{ac}*L*,_{ba}*L*,_{bc}*L*, and_{ca}*L*are the mutual inductances of the stator windings._{cb}

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

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

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

${L}_{cc}={L}_{s}+{L}_{m}\text{cos}(2\left({\theta}_{e}+2\pi /3\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:

*θ*is the rotor mechanical angle._{r}*θ*is the rotor electrical angle._{e}*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.*L*is the stator self-inductance per phase. This value is the average self-inductance of each of the stator windings._{s}*L*is the stator inductance fluctuation. This value is the amplitude of the fluctuation in self-inductance and mutual inductance with changing rotor angle._{m}*M*is the stator mutual inductance. This value is the average mutual inductance between the stator windings._{s}

### 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.*θ*is the rotor mechanical angle._{r}

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:

*i*,_{d}*i*, and_{q}*i*are the_{0}*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

*i*,_{a}*i*, and_{b}*i*are the stator currents._{c}*v*,_{d}*v*, and_{q}*v*are the_{0}*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

*v*,_{a}*v*, and_{b}*v*are the stator currents._{c}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}$.

*R*is the stator resistance per phase._{s}*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**).*T*is the load torque._{L}*B*is the rotor damping._{m}*ω*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 *w _{min}* 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:

*k*is the_{hr}(i_{d},i_{q})**Rotor hysteresis loss coefficient, k_hr(id,iq)**.*k*is the_{Jr}(i_{d},i_{q})**Rotor eddy current loss coefficient, k_Jr(id,iq)**.*k*is the_{er}(i_{d},i_{dq})**Rotor excess current loss coefficient, k_er(id,iq)**.*k*is the_{hs}(i_{d},i_{q})**Stator hysteresis loss coefficient, k_hs(id,iq)**.*k*is the_{Js}(i_{d},i_{q})**Stator eddy current loss coefficient, k_Js(id,iq)**.*k*is the_{es}(i_{d},i_{q})**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 prior to 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. Nominal
values can come from different sources, one of which is 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

## Parameters

## Model Examples

## References

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

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

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

## Extended Capabilities

## Version History

**Introduced in R2017b**