This block implements a squirrel-cage induction machine (SCIM)
...
The SCIM block implements a three-phase induction machine (asynchronous machine) with a squirrel-cage rotor model with resolvers and encoders. The machine can operate in both motoring mode, when the mechanical torque is positive, and generating mode when the mechanical torque is negative.
Model Formulation
Q-d Transformation
The 3-phase to q-d transformation and the inverse used for the model are:
...
alignment | left |
---|
...
This block implements a squirrel-cage induction machine (SCIM)
...
The SCIM block implements a three-phase induction machine (asynchronous machine) with a squirrel-cage rotor model with resolvers and encoders. The machine can operate in both motoring mode, when the mechanical torque is positive, and generating mode when the mechanical torque is negative.
Model Formulation
Q-d Transformation
The 3-phase to q-d transformation and the inverse used for the model are:
Mathblock | ||
---|---|---|
| ||
\left[\begin{array}{l} {V_{q}} \\ {V_{d}} \\ {V_{0}} \end{array}\right]=\frac{2}{3}\left[\begin{array}{ccc} {\cos (\theta)} & {\cos \left(\theta-\frac{2 \pi}{3}\right)} & {\cos \left(\theta+\frac{2 \pi}{3}\right)} \\ {\sin (\theta)} & {\sin \left(\theta-\frac{2 \pi}{3}\right)} & {\sin \left(\theta+\frac{2 \pi}{3}\right)} \\ {\frac{1}{2}} & {\frac{1}{2}} & {\frac{1}{2}} \end{array}\right]\left[\begin{array}{cccl} {\cos (\theta)} & {\cos \left(\theta-\frac{2 \pi}{3}\right)} & {\cos \left(\theta+\frac{2 \pi}{3}\right)V_{a}} \\ {V_{b}} \\ {V_{c}} \end{array}\right] |
Mathblock | ||
---|---|---|
| ||
\left[\begin{array}{c} {V_{a}} \\ {\sin (\theta)} V_{b}} \\ {V_{c}} \end{array}\right]=\left[\begin{array}{ccc} {\cos (\theta)} & {\sin (\theta)} & {1} \\ {\cos \left(\theta-\frac{2 \pi}{3}\right)} & {\sin \left(\theta+-\frac{2 \pi}{3}\right)} & {1} \\ {\frac{1}{2}cos \left(\theta+\frac{2 \pi}{3}\right)} & {\sin \left(\theta+\frac{12 \pi}{23}\right)} & {\frac{1}{2}} \end{array}\right]\left[\begin{array}{l} {V_{aq}} \\ {V_{bd}} \\ {V_{c0}} \end{array}\right] |
Mathinline |
---|
...
Mathinline | ||
---|---|---|
|
Rotor reference frame: θ=θr,
Stationary reference frame: θ=0,
Synchronous reference frame: θ=θe.
Since the Induction Machine is modeled in rotor reference frame, the θ required for the q-d transformation is the rotor electrical angle (θr).
Induction Machine Electrical Model
Induction machine models in state space framework are based on magnetic fluxes as the state variables and winding currents as the outputs, and can be represented as follows:
Mathblock | ||
---|---|---|
| ||
\begin{aligned}
\psi(n+1) &=A_{d}(n) \psi(n)+B_{d}(n) u(n) \\
I(n+1) &=C(n+1) \psi(n+1)
\end{aligned} |
where the coefficient matrices are as follows:
Mathblock | ||
---|---|---|
| ||
A_{d}=T_{s}\left(-R L^{-1}-\Omega\right)+ I |
Mathblock | ||
---|---|---|
| ||
B_{d}=T s \times I |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{c}=\boldsymbol{L}^{-1} |
with
Mathinline | ||
---|---|---|
|
and
|
...
\left[\begin{array}{c}
{V_{a}} \\
{V_{b}} \\
{V_{c}}
\end{array}\right]=\left[\begin{array}{ccc}
{\cos (\theta)} & {\sin (\theta)} & {1} \\
{\cos \left(\theta-\frac{2 \pi}{3}\right)} & {\sin \left(\theta-\frac{2 \pi}{3}\right)} & {1} \\
{\cos \left(\theta+\frac{2 \pi}{3}\right)} & {\sin \left(\theta+\frac{2 \pi}{3}\right)} & {1}
\end{array}\right]\left[\begin{array}{l}
{V_{q}} \\
{V_{d}} \\
{V_{0}}
\end{array}\right]
|
Rotor reference frame: θ=θr,
Stationary reference frame: θ=0,
Synchronous reference frame: θ=θe.
Since the Induction Machine is modeled in rotor reference frame, the θ required for the q-d transformation is the rotor electrical angle (θr).
Induction Machine Electrical Model
Induction machine models in state space framework are based on magnetic fluxes as the state variables and winding currents as the outputs, and can be represented as follows:
Mathblock | ||
---|---|---|
| ||
\begin{aligned}
\psi(n+1) &=A_{d}(n) \psi(n)+B_{d}(n) u(n) \\
I(n+1) &=C(n+1) \psi(n+1)
\end{aligned} |
where the coefficient matrices are as follows:
Mathblock | ||
---|---|---|
| ||
A_{d}=T_{s}\left(-R L^{-1}-\Omega\right)+ I |
Mathblock | ||
---|---|---|
| ||
B_{d}=T s \times I |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{c}=\boldsymbol{L}^{-1} |
with
Mathinline | ||
---|---|---|
|
and
Mathblock | ||
---|---|---|
| ||
\boldsymbol{u}=\left[\begin{array}{llll}
{V_{s q}} & {V_{s d}} & {V_{r q}^{\prime}} & {V_{r d}^{\prime}}
\end{array}\right]^{t} |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{I}=\left[\begin{array}{llll}
{I_{s q}} & {I_{s d}} & {I_{r q}^{\prime}} & {I_{r d}^{\prime}}
\end{array}\right]^{t} |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{\psi}=\left[\begin{array}{llll}
{\psi_{s q}} & {\psi_{s d}} & {\psi_{r q}^{\prime}} & {\psi_{r d}^{\prime}}
\end{array}\right]^{t} |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{uR}=\left[\begin{array}{llll} {VR_{s q}} & {VR_{s d}} & {VR_{r q}^{\prime}} & {VR_{r d}^{\prime}} \end{array}\right]^{t} |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{I}L=\left[\begin{array}{llllcccc} {IL_{s q}}}} & {0} & {IL_{s d}m}} & {0} \\ {0} & {IL_{r q}^{\primes}} & {0} & {L_{m}} \\ {L_{m}} & {I0} & {L_{r d}^{\prime}} \end& {array0}\right]^{t} | ||
Mathblock | ||
| ||
\boldsymbol{\psi}=\left[\begin{array}{llll} {\psi_{s q \\ {0} & {L_{m}} & {\psi_{s d}}0} & {\psiL_{r q}^{\prime}} & {\psi_{r d}^{\prime}} \end{array}\right]^{t} |
Mathblock | ||
---|---|---|
| ||
\boldsymbol{R}=\left[\begin{array}{llll}
{R_{s}} & {R_{s}} & {R_{r}^{\prime}} & {R_{r}^{\prime}}
\end{array}\right]^{t} |
Mathblock | ||
---|---|---|
| ||
L=\left[\begin{array}{cccc}
{L_{s}} & {0} & {L_{m}} & {0} \\
{0} & {L_{s}} & {0} & {L_{m}} \\
{L_{m}} & {0} & {L_{r}^{\prime}} & {0} \\
{0} & {L_{m}} & {0} & {L_{r}^{\prime}}
\end{array}\right] |
Mathblock | ||
---|---|---|
| ||
\Omega=\left[\begin{array}{cccc}
{0} & {\omega} & {0} & {0} \\
{-\omega} & {0} & {0} & {0} \\
{0} & {0} & {0} & {\omega-\omega_{r}} \\
{0} & {0} & {-\left(\omega-\omega_{r}\right)} & {0}
\end{array}\right] |
The Induction Machine is modeled in rotor reference frame so ω=ωr.
In the model, all the rotor parameters and variables are seen from the stator distinguished by a prime sign. Since the squirrel-cage rotor type is not supplied by an external source, then it is always the case that V'rq=V'rd=0.
The electrical torque can be calculated as follows:
Mathblock | ||
---|---|---|
| ||
T_{e}=\frac{3}{2} p p\left(\psi_{d} i_{q}-\psi_{q} i_{d}\right) |
Mechanical Model
The equation of the mechanical model in torque mode can be expressed as follows:
Mathblock | ||
---|---|---|
| ||
\omega_{m}(t)=a \omega_{m}\left(t-T_{s}\right)+b\left(T_{e}-T_{m}\right) |
Mathblock | ||
---|---|---|
| ||
a=\left(1-T_{s}\right) \frac{F_{v}}{J} |
Mathblock | ||
---|---|---|
| ||
b=60 \frac{T_{s}}{2 \pi J} |
where ωm is the rotor speed, Te is the electromagnetic torque, Tm is the torque command, Fv is the viscous friction coefficient, J is the inertia and Ts the time step. There is a dead-zone implementation with the static friction torque, if the electromagnetic doesn't exceed the static friction torque, the speed remains zero.
...
end{array}\right] |
Mathblock | ||
---|---|---|
| ||
\Omega=\left[\begin{array}{cccc}
{0} & {\omega} & {0} & {0} \\
{-\omega} & {0} & {0} & {0} \\
{0} & {0} & {0} & {\omega-\omega_{r}} \\
{0} & {0} & {-\left(\omega-\omega_{r}\right)} & {0}
\end{array}\right] |
The Induction Machine is modeled in rotor reference frame so ω=ωr.
In the model, all the rotor parameters and variables are seen from the stator distinguished by a prime sign. Since the squirrel-cage rotor type is not supplied by an external source, then it is always the case that V'rq=V'rd=0.
The electrical torque can be calculated as follows:
Mathblock | ||
---|---|---|
| ||
T_{e}=\frac{3}{2} p p\left(\psi_{d} i_{q}-\psi_{q} i_{d}\right) |
Include Page | ||||
---|---|---|---|---|
|
Resolver Encoder Model
The equations of the resolver encoder can be expressed as follows:
...
Mathblock | ||
---|---|---|
| ||
\text { sine }=\text { Excitation } \times\left(\cos \left(\theta_{\text {res}}\right) * R_{k_{c c}}+\sin \left(\theta_{\text {res}}\right) * R_{k_{s c}}\right) |
where θres is the resolver angle, θmec is the mechanical angle of the machine, θoffset is the angle offset, Rpp is the Number of pole pairs of the resolver and Rk are the resolver sine cosine gains.
...
Electrical Parameters and Measurements
Symbol | Name | Description | Unit | Type |
---|---|---|---|---|
Rs | Stator resistance | Stator winding resistance of phase a, b, and c | Ω | Edit-input |
Lls | Stator leakage inductance | Stator winding leakage inductance of phase a, b, and c | H | Edit-input |
Rr' | Rotor resistance | Equivalent rotor winding resistance referred to the stator of phase a, b, and c | Ω | Edit-input |
Llr' | Rotor leakage inductance | Equivalent rotor winding leakage inductance referred to the stator of phase a, b, and c | H | Edit-input |
Lm | Mutual inductance | Stator-rotor mutual (magnetizing) inductance of phase a, b, and c | H | Edit-input |
pp | Number of pole pairs | Number of pole pairs | N/A | Edit-input |
is | Stator phase currents | Stator currents measured at phases a, b and c | A | Measurement |
isqd | Stator qd currents | Stator currents in qd frame | A | Measurement |
Φsqd | Stator qd fluxes | Stator fluxes in qd frame | Wb | Measurement |
Vsqd | Stator qd voltages | Stator voltages in qd frame | V | Measurement |
ir' | Rotor phase currents | Rotor equivalent phase a, b, and c currents, referred to the stator | A | Measurement |
irqd | Rotor qd currents | Rotor currents in qd frame, referred to the stator | A | Measurement |
Φrqd' | Rotor qd fluxes | Rotor fluxes in qd frame, referred to the stator | Wb | Measurement |
Rsn | Snubber resistance | Resistances of the snubber on phase A, B and C | Ω | Input |
Csn | Snubber capacitance | Capacitance of the snubber on phase A, B and C | F | Input |
...
Mechanical Parameters and Measurements
Symbol | Name | Description | Unit | Type |
---|---|---|---|---|
J | Rotor inertia | Moment of inertia of the rotor | kg*m2 | Input |
Fv | Viscous friction coefficient | Viscous friction | N*m*s/rad | Input |
Fs | Static friction torque | Static friction | N*m | Input |
ctrl | Mechanical control mode | Control mode of the mechanical model. Has two possible values: speed or torque. In speed mode, the mechanical model is bypassed and the speed command is sent directly. In torque mode, the torque command is used to measure the speed using the mechanical parameters of the machine. | Input | |
T | Torque command | Torque command sent to the mechanical model | N*m | Input |
ωrc | Rotor speed command | Speed command sent to the mechanical model | rpm | Input |
ωr | Rotor speed | Speed of the rotor | rpm | Measurement |
Te | Electromagnetic torque | Torque measured at the rotor | N*m | Measurement |
θ0 | Initial rotor angle | Rotor position at time t = 0 | ° | Input |
θ | Rotor angle | Rotor position from 0 to 360 degrees | ° | Measurement |
...
OPAL-RT's resolver models are based off of the following sets of equations:
...
Where Sin.Sin, Sin.Cos, Cos.Sin, and Cos.Cos represent gains that are applied to simulate a non-ideal resolver. To simulate an ideal resolver, set the Sin.Sin and Cos.Cos gains to 1, set the Sin.Cos and Cos.Sin gains to 0, set the pp to 1, and set the θOffset to 0. This results in the following equations:
...
Resolver Parameters and Measurements
Symbol | Name | Description | Unit | Type |
---|---|---|---|---|
Ren | Enable resolver | Whether or not to enable the resolver | N/A | Input |
Rsc | Resolver feedback signals | The two two-phase windings producing a sine and cosine feedback current proportional to the sine and cosine of the angle of the motor | N/A | Measurement |
Rpp | Number of resolver pole pairs | Number of pole pairs of the resolver | N/A | Input |
Rdir | Direction of the sensor rotation | Direction in which the sensor is turning, either clockwise or counterclockwise | N/A | Input |
Rθ | Angle offset Δθ ( Sensor- Rotor ) | Angle offset between the resolver and the rotor position from 0 to 360 degrees | ° | Input |
Rk | Resolver sine cosine gains | The sine/cosine modulation output sine/cosine component amplitude. Default value are 1, 0, 0 and 1 | N/A | Input |
Etype | Excitation source type | The source from which the excitation of the resolver is generated. Can either be AC, which is generated inside the FPGA with the specified frequency, DC, which is generated with a 90° from the rotor and External, which is generated from outside the model | N/A | Input |
Ef | Excitation frequency | Frequency of the excitation when in AC mode | Hz | Input |
Esrc | Excitation source | Source of the external excitation source when in External mode | N/A | Input |
Ets | Excitation time shift | This parameter is used to compensate the time offset between the carrier generation's input in the system and modulated signals' output | s | Input |
Include Page | ||||||
---|---|---|---|---|---|---|
|
...
Encoder Parameters and Measurements
Symbol | Name | Description | Unit | Type |
---|---|---|---|---|
Encen | Enable encoder | Whether or not to enable the encoder | N/A | Input |
QABZ | A B Z encoder signals | A B and Z signals of the encoder | N/A | Measurement |
Qppr | Number of pulses per revolution | Number of pulses in one full revolution of the encoder | N/A | Input |
Qdir | Direction of the sensor rotation | Direction in which the sensor is turning, either A leads B or B leads A | N/A | Input |
θoffset | Angle offset Δθ ( Sensor - Rotor ) | Angle offset between the encoder and the rotor position from 0 to 360 degrees | ° | Input |
...
Visualization of Resolver Encoder Parameters Effects
...