# Switched Reluctance Machine

Three-phase switched reluctance machine

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

## Description

The Switched Reluctance Machine block represents a three-phase switched reluctance machine (SRM). The stator has three pole pairs, carrying the three motor windings, and the rotor has several nonmagnetic poles. The motor produces torque by energizing a stator pole pair, inducing a force on the closest rotor poles and pulling them toward alignment. The diagram shows the motor construction.

Choose this machine in your application to take advantage of these properties:

• Low cost

• Relatively safe failing currents

• Robustness to high temperature operation

• High torque-to-inertia ratio

Use this block to model an SRM using easily measurable or estimable parameters. To model an SRM using FEM data, see Switched Reluctance Motor Parameterized with FEM Data.

### Equations

Switched Reluctance Machine Block

The rotor stroke angle for a three-phase machine is

`${\theta }_{st}=\frac{2\pi }{3{N}_{r}},$`

where:

• θst is the stoke angle.

• Nr is the number of rotor poles.

The torque production capability, β, of one rotor pole is

`$\beta =\frac{2\pi }{{N}_{r}}.$`

The mathematical model for a switched reluctance machine (SRM) is highly nonlinear due to influence of the magnetic saturation on the flux linkage-to-angle, λ(θph) curve. The phase voltage equation for an SRM is

`${v}_{ph}={R}_{s}{i}_{ph}+\frac{d{\lambda }_{ph}\left({i}_{ph},{\theta }_{ph}\right)}{dt}$`

where:

• vph is the voltage per phase.

• Rs is the stator resistance per phase.

• iph is the current per phase.

• λph is the flux linkage per phase.

• θph is the angle per phase.

Rewriting the phase voltage equation in terms of partial derivatives yields this equation:

`${v}_{ph}={R}_{s}{i}_{ph}+\frac{\partial {\lambda }_{ph}}{\partial {i}_{ph}}\frac{d{i}_{ph}}{dt}+\frac{\partial {\lambda }_{ph}}{\partial {\theta }_{ph}}\frac{d{\theta }_{ph}}{dt}.$`

Transient inductance is defined as

`${L}_{t}\left({i}_{ph},{\theta }_{ph}\right)=\frac{\partial {\lambda }_{ph}\left({i}_{ph},{\theta }_{ph}\right)}{\partial {i}_{ph}},$`

or more simply as

`$\frac{\partial {\lambda }_{ph}}{\partial {i}_{ph}}.$`

Back electromotive force is defined as

`${E}_{ph}=\frac{\partial {\lambda }_{ph}}{\partial {\theta }_{ph}}{\omega }_{r}.$`

Substituting these terms into the rewritten voltage equation yields this voltage equation:

`${v}_{ph}={R}_{s}{i}_{ph}+{L}_{t}\left({i}_{ph},{\theta }_{ph}\right)\frac{d{i}_{ph}}{dt}+{E}_{ph}.$`

Applying the co-energy formula to equations for torque,

`${T}_{ph}=\frac{\partial W\left({\theta }_{ph}\right)}{\partial {\theta }_{r}},$`

and energy,

`$W\left({i}_{ph},{\theta }_{ph}\right)=\underset{0}{\overset{{i}_{ph}}{\int }}{\lambda }_{ph}\left({i}_{ph},{\theta }_{ph}\right)d{i}_{ph}$`

yields an integral equation that defines the instantaneous torque per phase, that is,

Integrating over the phases give this equation, which defines the total instantaneous torque for a three-phase SRM:

`$T=\sum _{j=1}^{3}{T}_{ph}\left(j\right).$`

The equation for motion is

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

where:

• J is the rotor inertia.

• ω is the mechanical rotational speed.

• T is the rotor torque. For the Switched 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.

• J is the rotor inertia.

• Bm is the rotor damping.

For high-fidelity modeling and control development, use empirical data and finite element calculation to determine the flux linkage curve in terms of current and angle, that is,

`${\lambda }_{ph}\left({i}_{ph},{\theta }_{ph}\right).$`

For low-fidelity modeling, you can also approximate the curve using analytical techniques. One such technique [2] uses this exponential function:

`${\lambda }_{ph}\left({i}_{ph},{\theta }_{ph}\right)={\lambda }_{sat}\left(1-{e}^{-{i}_{ph}f\left({\theta }_{ph}\right)}\right),$`

where:

• λsat is the saturated flux linkage.

• f(θr) is obtained by Fourier expansion.

For the Fourier expansion, use the first two even terms of this equation:

`$f\left({\theta }_{ph}\right)=a+b\mathrm{cos}\left({N}_{r}{\theta }_{ph}\right)$`

where a > b,

and

Switched Reluctance Motor Block

The flux linkage curve is approximated based on parametric and geometric data:

`${\lambda }_{ph}\left({i}_{ph},{\theta }_{ph}\right)={\lambda }_{sat}\left(1-{e}^{-{L}_{0}\left(\theta \right){i}_{ph}/{\lambda }_{sat}}\right),$`

where L0 is the unsaturated inductance.

The effects of saturation are more prominent as the product of current and unsaturated inductance approach the saturated flux linkage value. Specify this value using the Saturated flux linkage parameter.

Differentiating the flux equation then gives the winding inductance:

`$L\left({\theta }_{ph}\right)={L}_{0}\left({\theta }_{ph}\right){e}^{\left(-{L}_{0}\left({\theta }_{ph}\right){i}_{ph}/{\lambda }_{sat}\right)}$`

The unsaturated inductance varies between a minimum and maximum value. The minimum value occurs when a rotor pole is directly between two stator poles. The maximum occurs when the rotor pole is aligned with a stator pole. In between these two points, the block approximates the unsaturated inductance linearly as a function of rotor angle. This figure shows the unsaturated inductance as a rotor pole passes over a stator pole.

In the figure:

• θR corresponds to the angle subtended by the rotor pole. Set it using the Angle subtended by each rotor pole parameter.

• θS corresponds to the angle subtended by the stator pole. Set it using the Angle subtended by each stator pole parameter.

• θC corresponds to the angle subtended by this full cycle, determined by 2π/2n where n is the number of stator pole pairs.

### Thermal Ports

The block provides four optional thermal ports. To expose the thermal ports, right-click the block in your model. From the context menu, select Simscape > Block choices, and then select Show Thermal Port.

Use the thermal ports to simulate the effects of copper resistance and iron losses that convert electrical power to heat. For more information on using thermal ports in actuator blocks, see Simulating Thermal Effects in Rotational and Translational Actuators.

Dependencies

Selecting a thermal block variant exposes thermal parameters.

### Numerical Smoothing

In practice, magnetic edge effects prevent the inductance from taking a trapezoidal shape as a rotor pole passes over a stator pole. To model these effects, and to avoid gradient discontinuities that hinder solver convergence, the block smooths the gradient ∂L0/∂θ at inflection points. To change the angle over which this smoothing is applied, use the Angle over which flux gradient changes are smoothed parameter.

### Assumptions

The block assumes that a zero rotor angle corresponds to a rotor pole that is aligned perfectly with the a-phase.

### Variables

Use the Variables settings to specify the priority and initial target values for the block variables before simulation. For more information, see Set Priority and Initial Target for Block Variables.

## Ports

### Conserving

expand all

Electrical conserving three-phase port associated with the positive terminals of the stator windings.

#### Dependencies

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

Electrical conserving three-phase port associated with the negative terminals of the stator windings.

#### Dependencies

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

Electrical conserving port associated with the positive terminal of stator winding a.

#### Dependencies

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

Electrical conserving port associated with the negative terminal of stator winding a.

#### Dependencies

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

Electrical conserving port associated with the positive terminal of stator winding b.

#### Dependencies

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

Electrical conserving port associated with the negative terminal of stator winding b.

#### Dependencies

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

Electrical conserving port associated with the positive terminal of stator winding c.

#### Dependencies

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

Electrical conserving port associated with the negative terminal of stator winding c.

#### Dependencies

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

Mechanical rotational conserving port associated with the rotor.

Mechanical rotational conserving port associated with the stator or casing.

Thermal conserving port associated with stator winding a.

#### Dependencies

To enable this port, set this model variant to ```Show thermal port```.

Thermal conserving port associated with stator winding b.

#### Dependencies

To enable this port, set this model variant to ```Show thermal port```.

Thermal conserving port associated with stator winding c.

#### Dependencies

To enable this port, set this model variant to ```Show thermal port```.

Thermal conserving port associated with the rotor.

#### Dependencies

To enable this port, set this model variant to ```Show thermal port```.

## Parameters

expand all

### Main

Whether to have composite or expanded three-phase ports.

Number of rotor poles.

Per-phase resistance of each of the stator windings.

Method for parameterizing the stator.

#### Dependencies

Selecting `Specify parametric data` enables these parameters:

• Magnetizing resistance

• Aligned inductance

• Unaligned inductance

Selecting ```Specify parametric and geometric data``` enables these parameters:

• Magnetizing resistance

• Aligned inductance

• Unaligned inductance

• Angle subtended by each stator pole

• Angle subtended by each rotor pole

• Angle over which flux gradient changes are smoothed

Selecting `Specify tabulated flux data` enables these parameters:

• Current vector, i

• Angle vector, theta

The total magnetizing resistance for each of the phase windings. The default value `inf` indicates that there are no iron losses.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric data``` or ```Specify parametric and geometric data```.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric data``` or ```Specify parametric and geometric data```.

The value of this parameter must be greater than the value of the Unaligned inductance parameter.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric data``` or ```Specify parametric and geometric data```.

The value of this parameter must be less than the value of the Aligned inductance parameter.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric data``` or ```Specify parametric and geometric data```.

Angle spanned by each stator tooth. This value must be greater than or equal to the value of Angle subtended by each rotor pole.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric and geometric data```.

Angle spanned by each rotor tooth.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric and geometric data```.

Angle over which sharp edges in trapezoidal inductance curve are smoothed. This value must be smaller than the value of Angle subtended by each rotor pole.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify parametric and geometric data```.

Current vector used to identify the flux linkage curve family.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify tabulated flux data```.

Angle vector used to identify the flux linkage curve family.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify tabulated flux data```.

#### Dependencies

This parameter is exposed when you set Stator parameterization to ```Specify tabulated flux data```.

### Mechanical

Inertia of the rotor attached to mechanical translational port R.

Rotary damping.

### Thermal

These parameters appear only for blocks with exposed thermal ports.

Coefficient α in the equation relating resistance to temperature for all three windings, as described in Thermal Model for Actuator Blocks. The default value, `3.93e-3` 1/K, is for copper.

The temperature for which motor parameters are quoted.

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. The thermal mass is the energy required to raise the temperature of the rotor by one degree.

The percentage of the magnetizing resistance associated with the magnetic path through the rotor. This parameter determines how much of the iron loss heating is attributed to:

• The rotor thermal port HR

• The three stator thermal ports HA, HB, and HC

## Compatibility Considerations

expand all

Behavior changed in R2021b

## References

[1] Boldea, I. and S. A. Nasar. Electric Drives, Second Edition. New York: CRC, 2005.

[2] Ilic'-Spong, M., R. Marino, S. Peresada, and D. Taylor. “Feedback linearizing control of switched reluctance motors.” IEEE Transactions on Automatic Control. Vol. 32, No. 5, 1987, pp. 371–379.