This block implements a doubly-fed induction machine (DFIM) with magnetizing inductance saturation in the stationary (stator) reference frame along with the temperature effects on the stator and rotor resistances.
The DFIM block implements a three-phase induction machine (asynchronous machine) with an accessible wound 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
Induction Machine Electrical Model
Fig.1. Implementation block diagram (Squirrel-cage/ Doubly-fed induction motor)
- Motor modelling equations
The stator and rotor voltage equations of a induction motor in the stationary (stator reference frame) reference frame can be written a equations (1)-(4).
Mathblock | ||
---|---|---|
| ||
V_{sd}=R_{s}i_{sd}+\frac{d\psi_{sd}}{dt}\qquad\qquad\quad(1)\\
V_{sq}=R_{s}i_{sq}+\frac{d\psi_{sq}}{dt}\qquad\qquad\quad(2)\\
V_{rd}'=R_{s}'i_{rd'}+\frac{d\psi_{rd}'}{dt}+\omega_{r}\psi_{rq}'\quad(3) \\
V_{rq}'=R_{s}'i_{rq'}+\frac{d\psi_{rq}'}{dt}-\omega_{r}\psi_{rd}'\quad(4) |
Equations (1)-(4) can be represented as equation (5).
Mathblock | ||
---|---|---|
| ||
\left[\begin{array}{c}
{V_{sd}} \\
{V_{sq}} \\
{V_{rd}'} \\
{V_{rq}'}
\end{array}\right]=\left[\begin{array}{cccc}
{R_{s}} & {0} & {0} & {0} \\
{0} & {R_{s}} & {0} & {0} \\
{0} & {0} & {R_{r]'} & {0} \\
{0} & {0} & {0} & {R_{r}'}
\end{array}\right]\left[\begin{array}{c}
{i_{sd}} \\
{i_{sq}}\\
{i_{rd}'}\\
{i_{rq}'}
\end{array}\right]+\frac{d}{dt}\left[\begin{array}{c}
{\psi_{sd}} \\
{\psi_{sq}}\\
{\psi_{rd}'}\\
{\psi_{rq}'}
\end{array}\right]+\left[\begin{array}{cccc}
{0} & {0} & {0} & {0} \\
{0} & {0} & {0} & {0} \\
{0} & {0} & {0} & {\omega_{r}} \\
{0} & {0} & {-\omega_{r}} & {0}
\end{array}\right]\left[\begin{array}{c}
{\psi_{sd}} \\
{\psi_{sq}}\\
{\psi_{rd}'}\\
{\psi_{rq}'}
\end{array}\right]\qquad(5) |
The stator and rotor flux linkages can be expressed as equation (6).
Mathblock | ||
---|---|---|
| ||
\left[\begin{array}{c}
{\psi_{sd}} \\
{\psi_{sq}}\\
{\psi_{rd}'}\\
{\psi_{rq}'}
\end{array}\right]=\left[\begin{array}{cccc}
{L_{s}} & {0} & {L_{m}} & {0} \\
{0} & {L_{s}} & {0} & {L_{m}} \\
{L_{m}} & {0} & {L_{r}'} & {0} \\
{0} & {{L_{m}} & {0} & {L_{r}'}
\end{array}\right]\left[\begin{array}{c}
{i_{sd}} \\
{i_{sq}}\\
{i_{rd}'}\\
{i_{rq}'}
\end{array}\right]\qquad(6) |
Note:- The stator and rotor flux linkages are calculated by using equation (5) and the stator and rotor currents are calculated by using equation (6).
2. Magnetizing flux linkage calculation
The magnetizing flux linkages are calculated from the stator and rotor flux linkages by using equations (7) and (8).
Mathblock | ||
---|---|---|
| ||
\psi_{mq}=\psi_{sq}x\frac{L_{aq}}{L_{ls}}+\psi_{rq}'x\frac{L_{aq}}{L_{lr}'}}\qquad(7) \\
\psi_{md}=\psi_{sd}x\frac{L_{ad}}{L_{ls}}+\psi_{rd}'x\frac{L_{ad}}{L_{lr}'}}\qquad(8) |
where
ψmq & ψmd = q & d-axis magnetizing flux linkages
Laq = q-axis inductance (= (Lm Lls Llr‘)/(Lm Lls + Lm Llr‘ +Lls Llr‘))
Lad = d-axis inductance (= (Lm Lls Llr‘)/(Lm Lls + Lm Llr‘ +Lls Llr‘))
Lls = Stator leakage inductance
Llr’ = Rotor leakage inductance (referred to stator side)
Lm = Magnetizing inductance
3. Thermal modelling of stator and rotor resistances
Mathblock | ||
---|---|---|
| ||
R_{s} = R_{snom} * \left\{1+\alpha_{cond}*{\theta_{f}-\theta_{i})\right\}\qquad(9) \\
R_{r}' = R_{rnom}' * \left\{1+\alpha_{cond}*{\theta_{f}-\theta_{i})\right\}\qquad(10) |
where
Rsnom = stator resistance at temp ϴi
Rrnom ‘ = rotor resistance at temp ϴi
Rs = stator resistance at temp ϴf
Rr‘ = rotor resistance at temp ϴf
αcond = temperature co-efficient of resistance of the material
abc to dq0 (stator side)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right)=\left(\frac{2}{3}\right)*\left(\begin{array}{ccc}
{\cos (\theta_{e}) & \cos \left(\theta_{e}-\frac{2\pi}{3}\right) & \cos \left(\theta_{e}+\frac{2\pi}{3}\right) \\
{-\sin(\theta_{e}) & -\sin\left(\theta_{e}-\frac{2\pi}{3}\right) & -\sin\left(\theta_{e}+\frac{2\pi}{3}\right) \\
{\frac{1}{2} & \frac{1}{2} & \frac{1}{2}
\end{array}\right)*\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right) |
Stationary reference frame (ϴe=0)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right)=\left(\frac{2}{3}\right)*\left(\begin{array}{ccc}
{1 & -\frac{1}{2} & -\frac{1}{2} \\
{0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \\
{\frac{1}{2} & \frac{1}{2} & \frac{1}{2}
\end{array}\right)*\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right) |
dq0 to abc (stator side)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right)=\left(\begin{array}{ccc}
{\cos (\theta_{e}) & \-sin (\theta_{e}) & 1 \\
{\cos\left(\theta_{e}-\frac{2\pi}{3}\right) & -\sin\left(\theta_{e}-\frac{2\pi}{3}\right) & 1 \\
{\cos\left(\theta_{e}+\frac{2\pi}{3}\right) & -\sin\left(\theta_{e}+\frac{2\pi}{3}\right) & 1
\end{array}\right)*\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right) |
Stationary reference frame (ϴe=0)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right)=\left(\begin{array}{ccc}
{1 & 0 & 1 \\
{-\frac{1}{2}& \frac{\sqrt{3}}{2} & 1 \\
{-\frac{1}{2} & -\frac{\sqrt{3}}{2} & 1
\end{array}\right)*\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right) |
abc to dq0 (rotor side)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right)=\left(\frac{2}{3}\right)*\left(\begin{array}{ccc}
{\cos (\theta_{e}-\theta_{r}) & \cos\left(\theta_{e}-\theta_{r}-\frac{2\pi}{3}\right) & \cos\left(\theta_{e}-\theta_{r}+\frac{2\pi}{3}\right) \\
{-\sin(\theta_{e}-\theta_{r}) & -\sin\left(\theta_{e}-\theta_{r}-\frac{2\pi}{3}\right) & -\sin\left(\theta_{e}-\theta_{r}+\frac{2\pi}{3}\right) \\
{\frac{1}{2} & \frac{1}{2} & \frac{1}{2} }
\end{array}\right)*\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right) |
Stationary reference frame (ϴe=0)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right)=\left(\frac{2}{3}\right)*\left(\begin{array}{ccc}
{\cos (\theta_{r}) & \cos\left(\theta_{r}+\frac{2\pi}{3}\right) & \cos\left(\theta_{r}-\frac{2\pi}{3}\right) \\
{\sin(\theta_{r}) & \sin\left(\theta_{r}+\frac{2\pi}{3}\right) & \sin\left(\theta_{r}-\frac{2\pi}{3}\right) \\
{\frac{1}{2} & \frac{1}{2} & \frac{1}{2} }
\end{array}\right)*\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right) |
dq0 to abc (rotor side)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right)=\left(\begin{array}{ccc}
{\cos (\theta_{e}-\theta_{r}) & -\sin (\theta_{e}-\theta_{r}) & 1 \\
{\cos \left(\theta_{e}-\theta_{r} - \frac{2\pi}{3}\right) & -\sin \left(\theta_{e}-\theta_{r} - \frac{2\pi}{3}\right) & 1 \\
{\cos \left(\theta_{e}-\theta_{r} + \frac{2\pi}{3}\right) & -\sin \left(\theta_{e}-\theta_{r} + \frac{2\pi}{3}\right) & 1 }
\end{array}\right)*\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right) |
Stationary reference frame (ϴe=0)
Mathblock | ||
---|---|---|
| ||
\left(\begin{array}{c}
{a} \\
{b} \\
{c}
\end{array}\right)=\left(\begin{array}{ccc}
{\cos (\theta_{r}) & \sin (\theta_{r}) & 1 \\
{\cos \left(\theta_{r} + \frac{2\pi}{3}\right) & \sin \left(\theta_{r} + \frac{2\pi}{3}\right) & 1 \\
{\cos \left(\theta_{r} - \frac{2\pi}{3}\right) & \sin \left(\theta_{r} - \frac{2\pi}{3}\right) & 1 }
\end{array}\right)*\left(\begin{array}{c}
{d} \\
{q} \\
{0}
\end{array}\right) |
Mechanical Model
The equation of the mechanical model in torque mode can be expressed as follows:
Mathblock | ||
---|---|---|
| ||
\omega_{m}(t)=\left(\frac{1}{F_{v}}\right)*(a*\omega_{m}\left(t-T_{s}\right)+b*\left(T_{e}-T_{m}\right)) |
Mathblock | ||
---|---|---|
| ||
a=\left(1-T_{s}*(\frac{F_{v}}{J})\right) |
Mathblock | ||
---|---|---|
| ||
b={T_{s}}*(\frac{F_{v}}{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.
In speed mode, the rotor speed is directly set to the speed command ωrc.
Resolver Encoder Model
The equations of the resolver encoder can be expressed as follows:
Mathblock | ||
---|---|---|
| ||
\theta_{\text {res}}=\left(\theta_{\text {mec}}+\theta_{\text {offset}}\right) \times R_{p p} |
Mathblock | ||
---|---|---|
| ||
\text {cosine}=\text {Excitation } \times\left(\cos \left(\theta_{\text {res}}\right) * R_{k_{c s}}+\sin \left(\theta_{\text {res}}\right) * R_{k_{s s}}\right) |
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.
Parameters and Measurements
The DFIM with Saturation's parameters and measurements are separated in 4 different tabs, Electrical, Mechanical, Resolver and This block implements a doubly-fed induction machine (DFIM) with magnetizing inductance saturation in the stationary (stator) reference frame along with the temperature effects on the stator and rotor resistances.
...
The DFIM block implements a three-phase induction machine (asynchronous machine) with an accessible wound 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
The DFIM model formulation is decribed in the sections below. Recall that the DFIM rotoric tension are null
Mathinline | ||||
---|---|---|---|---|
|
Include Page | ||||
---|---|---|---|---|
|
Include Page | ||||||
---|---|---|---|---|---|---|
|
Paraemeters and Measurements
The parameters and measurements of the DFIM with saturation are separated in 4 different categories: Electrical, Mechanical, Resolver and Encoder.
Electrical Parameters and Measurements
Symbol | Name | Description | Unit | Type |
---|---|---|---|---|
Rsnom | Stator resistance | Stator winding resistance of phase a, b, and c | Ω | Input |
Rrnom' | Rotor resistance | Equivalent rotor winding resistance referred to the stator of phase a, b, and c | Ω | Input |
Δθ | Temperature difference | Temperature difference w.r.t the initial temperature of stator and rotor windings | °C | Input |
αcondstator | Stator temperature coefficient of resistance | Temperature coefficient of resistance of stator winding | °C-1 | Input |
αcondrotor | Rotor temperature coefficient of resistance | Temperature coefficient of resistance of rotor winding | °C-1 | Input |
Lls |
Stator leakage inductance | Stator winding leakage inductance of phase a, b, and c | H | Input | |
Llr' | Rotor leakage inductance | Equivalent rotor winding leakage inductance referred to the stator of phase a, b, and c | H | Input |
---|---|---|---|---|
Esat | Electrical saturation profile input | Choose your saturation profile between ( |
| N/A | Dropdown | ||
Vsll | Stator voltage line to line table | No Load saturation curve parameters | V | File (more details) |
---|---|---|---|---|
Lm | Magnetizing inductance table | Stator-rotor mutual (magnetizing) inductance of phase a, b, and |
c | H | File (more details) | ||
FcLm | Cut-off frequency magnetizing inductance | Cut-off frequency associated with the frequency response of the magnetic coil, which acts as a filtering element. The default value is 3 kHz. | Hz | Input |
---|---|---|---|---|
Nsr | Turns ratio | Stator to rotor windings turns ratio | N/A | Input |
pp | Number of pole pairs | Number of pole pairs |
N/A | Input | |||
is | Stator phase currents | Stator currents measured at phases a, b and c | A | Measurement |
---|---|---|---|---|
ir | Rotor phase currents | Rotor equivalent phase a, b, and c currents, referred to the stator | A | Measurement |
isαβ | Stator αβcurrents | Stator currents in αβ reference frame | A | Measurement |
isdq | Stator dq currents | Stator currents in dq reference frame | A | Measurement |
i |
rαβ | Rotor |
---|
αβcurrents |
Rotor currents in αβ reference frame, referred to the stator | A | Measurement |
i |
---|
rdq | Rotor dq currents |
---|
Rotor currents in |
dq reference frame, referred to the stator | A | Measurement |
Framesel | Synchronous reference frame orientation | Selection of the synchronous reference frame depending on the use case:
| N/A | Dropdown |
---|---|---|---|---|
Frameoffset | Synchronous reference offset | Offset angle for synchronous reference frame | degree | Input |
θest | Synchronous Angle | Estimated synchronous angle displayed depending of the orientation | degree | Measurement |
Vsαβ | Stator αβvoltages | Stator voltages in |
αβ reference frame | V | Measurement |
Φsαβ | Stator αβ fluxes | Stator fluxes in |
---|
αβ reference frame | Wb | Measurement |
Φrαβ | Rotor αβ fluxes | Rotor fluxes in |
---|
αβ reference 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 |
elmode | 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 |
...
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 |
...
Encoder Parameters and Measurements
Symbol | Name | Description | Unit | Type |
---|---|---|---|---|
Encen | Enable encoder | Whether or not to enable the encoder | N/A | Input |
Enctype | Encoder type | Encoder type, either Quadrature or Hall Effect | 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 |
Qθ | Angle offset Δθ ( Sensor - Rotor ) | Angle offset between the encoder and the rotor position from 0 to 360 degrees | ° | Input |
Qrat | Encoder speed ratio ( sensor to mechanical position ) | Mechanical to encoder ratio. Angle of Encoder = Qrat * machine mechanical angle. | N/A | Input |
Hθ | Hall effect sensor position | Position of sensor phases A, B and C in Hall effect mode | ° | Input |
...
Visualization of Resolver Encoder Parameters Effects
Number The number of resolver pole pairs affects the number of electrical turns per mechanical turns. On the left figure, the number of resolver pole pairs is 2, on the right figure, the number of resolver pole pairs is 4.
...