Induction Machine Direct Torque Control
Induction machine DTC
Simscape / Electrical / Control / Induction Machine Control
The Induction Machine Direct Torque Control block implements an induction machine direct torque control (DTC) structure. The figure shows the equivalent circuit for the block.
To estimate the torque and flux, the Induction Machine Direct Torque Control block discretizes the machine voltage equations in the stationary ɑβ reference frame using the backward Euler method. The discrete-time equations for stator fluxes in the ɑβ frame are:
vɑ is ɑ-axis voltage.
iɑ is ɑ-axis current.
Rs is the stator resistance.
Ψɑ is the ɑ-axis stator flux.
vβ is β-axis voltage.
iβ is β-axis current.
Ψβ is the β-axis stator flux.
The block calculates the torque and flux as:
p is the number of pole pairs.
Ψs is the stator flux.
To detect flux and torque estimation errors, the block uses hysteresis comparators. The figure shows hysteresis comparators and the associated switching sectors.
The table shows the optimum switching for an inverter high-side system.
|cΨ = 1||cT = 1|
|cT = 0|
|cT = -1|
|cΨ = 0||cT = 1|
|cT = 0|
|cT = -1|
Assumptions and Limitations
The power inverter dead times are not considered. For hardware implementation, add the dead time externally.
FluxRef — Flux
Reference stator flux.
TqRef — Torque
vabc — Voltage
Stator phase voltages.
iabc — Current
Stator phase currents.
G — Gate pulses
Inverter gate pulses. The block does not consider any dead time.
Stator resistance (Ohm) — Resistance
0.25 (default) | positive scalar
Resistance of the machine stator.
Number of pole pairs — Pole number
1 (default) | positive integer
Number of machine pole pairs.
Flux hysteresis bandwidth (Wb) — Flux
0.02 (default) | positive scalar
Total bandwidth distributed symmetrically around the flux set point.
Torque hysteresis bandwidth (N*m) — Torque
10 (default) | positive scalar
Total bandwidth distributed symmetrically around the set point.
Sample time (-1 for inherited) — Block sample time
-1 (default) | positive scalar
Time, in s, between consecutive block executions. During execution, the block produces outputs and, if appropriate, updates its internal state. For more information, see What Is Sample Time? and Specify Sample Time.
If this block is inside a triggered subsystem, inherit the
sample time by setting this parameter to
-1. If this block is in a
continuous variable-step model, specify the sample time explicitly using a positive
 Takahashi, I., and T. Noguchi. "A New Quick-Response and High-Efficiency Control Strategy of an Induction Motor." IEEE Transactions on Industry Applications. Vol. IA-22, Number 5, 1986, pp. 820 - 827.
C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.
Introduced in R2017b
- Induction Machine Current Controller | Induction Machine Direct Torque Control (Single-Phase) | Induction Machine Direct Torque Control with Space Vector Modulator | Induction Machine Field-Oriented Control | Induction Machine Field-Oriented Control (Single-Phase) | Induction Machine Flux Observer | Induction Machine Scalar Control