# Field-Oriented Control Induction Motor Drive

Implement field-oriented control (FOC) induction motor drive model

## Library

Simscape / Electrical / Specialized Power Systems / Electric Drives / AC Drives

## Description

The Field-Oriented Control Induction Motor Drive block represents a standard vector or rotor field-oriented control drive for induction motors. This drive features closed-loop speed control based on the indirect or feedforward vector control method. The speed control loop outputs the reference electromagnetic torque and rotor flux of the machine. The reference direct and quadrature (dq) components of the stator current, corresponding to the commanded rotor flux and torque, are derived based on the indirect vector control strategy. The reference dq components of the stator current are then used to obtain the required gate signals for the inverter through a hysteresis-band or PWM current controller.

The main advantage of this drive compared to scalar-controlled drives is its fast dynamic response. The inherent coupling effect between the torque and flux in the machine is managed through decoupling (rotor flux orientation) control, which allows the torque and flux to be controlled independently. However, due to its computation complexity, the implementation of this drive requires fast computing processors or DSPs.

Note

In Simscape™ Electrical™ Specialized Power Systems software, the Field-Oriented Control Induction Motor Drive block is commonly called the `AC3` motor drive.

The Field-Oriented Control Induction Motor Drive block uses these blocks from the Electric Drives / Fundamental Drive Blocks library:

• Speed Controller (AC)

• Field-Oriented Controller

• DC Bus

• Inverter (Three-Phase)

## Remarks

The model is discrete. Good simulation results have been obtained with a 2 µs time step. To simulate a digital controller device, the control system has two different sampling times:

• Speed controller sampling time

• FOC sampling time

The speed controller sampling time has to be a multiple of the FOC sampling time. The latter sampling time has to be a multiple of the simulation time step. The average-value inverter allows the use of bigger simulation time steps since it does not generate small time constants (due to the RC snubbers) inherent to the detailed converter. For an FOC sampling time of 60 µs, good simulation results have been obtained for a simulation time step of 60 µs. This time step cannot be higher than the FOC time step.

## Parameters

### General

Output bus mode

Select how the output variables are organized. If you select ```Multiple output buses``` (default), the block has three separate output buses for motor, converter, and controller variables. If you select ```Single output bus```, all variables output on a single bus.

Model detail level

Select between the detailed and the average-value inverter. Default is `Detailed`.

Mechanical input

Select between the load torque, the motor speed and the mechanical rotational port as mechanical input. Default is `Torque Tm`.

If you select and apply a load torque, the output is the motor speed according to the following differential equation that describes the mechanical system dynamics:

`${T}_{e}=J\frac{d}{dt}{\omega }_{r}+F{\omega }_{r}+{T}_{m}$`

This mechanical system is included in the motor model.

If you select the motor speed as mechanical input, then you get the electromagnetic torque as output, allowing you to represent externally the mechanical system dynamics. The internal mechanical system is not used with this mechanical input selection and the inertia and viscous friction parameters are not displayed.

For the mechanical rotational port, the connection port S counts for the mechanical input and output. It allows a direct connection to the Simscape environment. The mechanical system of the motor is also included in the drive and is based on the same differential equation.

Use bus as labels

When you select this check box, the `Motor`, `Conv`, and `Ctrl` measurement outputs use the signal names to identify the bus labels. Select this option for applications that require bus signal labels to have only alphanumeric characters.

When this check box is cleared (default), the measurement output uses the signal definition to identify the bus labels. The labels contain nonalphanumeric characters that are incompatible with some Simulink® applications.

Set sensorless

When you select this check box, the motor speed is estimated from terminal voltages and currents based on the Model Referencing Adaptive System (MRAS) technique. The Sensorless tab contains the estimator controller parameters.

When this check box is cleared, the motor speed is measured by an internal speed sensor, and the Sensorless tab is not displayed on the block mask.

### Asynchronous Machine Tab

The Asynchronous Machine tab displays the parameters of the Asynchronous Machine block of the Fundamental Blocks (powerlib) library.

### Converters and DC Bus Tab

Rectifier Section

The Rectifier section of the Converters and DC Bus tab displays the parameters of the Universal Bridge block of the Fundamental Blocks (powerlib) library. For more information on the universal bridge parameters, refer to the Universal Bridge reference page.

DC Bus Section
Capacitance

The DC bus capacitance (F). Default is `2000e-6`.

Braking Chopper Section
Resistance

The braking chopper resistance used to avoid bus over-voltage during motor deceleration or when the load torque tends to accelerate the motor (ohms). Default is `8`.

Chopper frequency

The braking chopper frequency (Hz). Default is `4000`.

Activation voltage

The dynamic braking is activated when the bus voltage reaches the upper limit of the hysteresis band (V). The following figure illustrates the braking chopper hysteresis logic. Default is `320`.

Shutdown voltage

The dynamic braking is shut down when the bus voltage reaches the lower limit of the hysteresis band (V). The Chopper hysteresis logic is shown in the next figure. Default is `310`.

Inverter Section

The Inverter section of the Converters and DC Bus tab displays the parameters of the Universal Bridge block of the Fundamental Blocks (powerlib) library. For more information on the universal bridge parameters, refer to the Universal Bridge reference page.

The average-value inverter uses the following parameters.

Source frequency

The frequency of the three-phase voltage source (Hz). Default is `60`.

On-state resistance

The on-state resistance of the inverter switches (ohms). Default is `1e-3`.

### Controller Tab

Regulation Type

This pop-up menu allows you to choose between speed and torque regulation. Default is `Speed regulation`.

Modulation type

Select hysteresis or space vector modulation. The default modulation type is `Hysteresis`.

Schematic

When you click this button, a diagram illustrating the speed and current controllers schematics appears.

Speed Controller Section
Speed Ramps — Acceleration

The maximum change of speed allowed during motor acceleration (rpm/s). An excessively large positive value can cause DC bus under-voltage. This parameter is used in speed regulation mode only. Default is `900`.

Speed Ramps — Deceleration

The maximum change of speed allowed during motor deceleration (rpm/s). An excessively large negative value can cause DC bus overvoltage. This parameter is used in speed regulation mode only. Default is `-900`.

Speed cutoff frequency

The speed measurement first-order low-pass filter cutoff frequency (Hz). This parameter is used in speed regulation mode only. Default is `1000`.

Speed controller sampling time

The speed controller sampling time (s). The sampling time must be a multiple of the simulation time step. Default is `100e-6`.

PI regulator — Proportional gain

The speed controller proportional gain. This parameter is used in speed regulation mode only. Default is `300`.

PI regulator — Integral gain

The speed controller integral gain. This parameter is used in speed regulation mode only. Default is `2000`.

Torque output limits — Negative

The maximum negative demanded torque applied to the motor by the current controller (N.m). Default is `-1200`.

Torque output limits — Positive

The maximum positive demanded torque applied to the motor by the current controller (N.m). Default is `1200`.

Field Oriented Control Section
Flux Controller — Proportional gain

The flux controller proportional gain. Default is `100`.

Flux Controller — Integral gain

The flux controller integral gain. Default is `30`.

Flux output limits — Negative

The flux controller maximum negative output (Wb). Default is `-2`.

Flux output limits — Positive

The flux controller maximum positive output (Wb). Default is `2`.

Lowpass filter cutoff frequency

The flux estimation first-order filter cutoff frequency (Hz). Default is `16`.

Sampling Time

The FOC controller sampling time (s). The sampling time must be a multiple of the simulation time step. Default is `20e-6`.

Current controller hysteresis band

The current hysteresis bandwidth. This value is the total bandwidth distributed symmetrically around the current set point (A). Default is `10`. The following figure illustrates a case where the current set point is Is*and the current hysteresis bandwidth is set to dx.

This parameter is not used when using the average-value inverter.

Maximum switching frequency

The maximum inverter switching frequency (Hz). This parameter is not used when using the average-value inverter. Default is `20000`.

Show/Hide Autotuning Control

Select to show or hide the parameters of the Autotuning Control tool.

Autotuning of PI loops Section
Desired damping [zeta]

Specify the damping factor used for the calculation of the Kp and Ki gains of the Speed Controller (AC) block. Default is `0.9`.

Desired response time @ 5% [Trd (sec)]

Specify the desired settling time of the Speed Controller (AC) block. This is time required for the controller response to reach and stay within a 5 percent range of the target value. Default is `0.1`.

Bandwidth ratio (InnerLoop/SpeedLoop)

Specify the ratio between the bandwidth and natural frequency of the regulator. Default is `30`.

Calculate PI regulator gains

Compute the Proportional gain and Integral gain parameters of the Speed Controller (AC) and of the Field-Oriented Controller blocks. The computation is based on the Desired damping [zeta], Desired response time @ 5%, and Bandwidth ratio (InnerLoop/SpeedLoop) parameters. The computed values are displayed in the mask of the Drive block. Click or to confirm them.

### Sensorless Tab

Proportional gain

Specify the value of the proportional gain of the PI regulator that is used to tune the motor speed.

Default is `5000`.

Integral gain

Specify the value of the integral gain of the PI regulator that is used to tune the motor speed.

Default is `50`.

Upper - Upper output limit

Specify the upper output limit of the PI controller.

Default is `500`.

Lower - Lower output limit

Specify the lower output limit of the PI controller.

Default is `-500`.

Controller sample time

Controller sample time, in s. The sample time must be a multiple of the simulation time step. Default is `2e-06`.

## Block Inputs and Outputs

`SP`

The speed or torque set point. The speed set point can be a step function, but the speed change rate will follow the acceleration / deceleration ramps. If the load torque and the speed have opposite signs, the accelerating torque will be the sum of the electromagnetic and load torques.

`Tm` or `Wm`

The mechanical input: load torque (Tm) or motor speed (Wm). For the mechanical rotational port (S), this input is deleted.

`A, B, C `

The three phase terminals of the motor drive.

`Wm`, `Te` or `S`

The mechanical output: motor speed (Wm), electromagnetic torque (Te) or mechanical rotational port (S).

When the Output bus mode parameter is set to Multiple output buses, the block has the following three output buses:

`Motor`

The motor measurement vector. This vector allows you to observe the motor's variables using the Bus Selector block.

`Conv`

The three-phase converters measurement vector. This vector contains:

• The DC bus voltage

• The rectifier output current

• The inverter input current

Note that all current and voltage values of the bridges can be visualized with the Multimeter block.

`Ctrl`

The controller measurement vector. This vector contains:

• The torque reference

• The speed error (difference between the speed reference ramp and actual speed)

• The speed reference ramp or torque reference

When the Output bus mode parameter is set to Single output bus, the block groups the Motor, Conv, and Ctrl outputs into a single bus output.

## Model Specifications

The library contains a 3 hp and a 200-hp drive parameter set. The specifications of these two drives are shown in the following table.

3 HP and 200 HP Drive Specifications

3 HP Drive

200 HP Drive

Drive Input Voltage

Amplitude

220 V

460 V

Frequency

60 Hz

60 Hz

Motor Nominal Values

Power

3 hp

200 hp

Speed

1705 rpm

1785 rpm

Voltage

220 V

460 V

## Examples

The `ac3_example` example illustrates an AC3 motor drive simulation with standard load conditions for the detailed and average-value models.

## References

[1] Bose, B. K. Modern Power Electronics and AC Drives. Upper Saddle River, NJ: Prentice-Hall, 2002.

[2] Grelet, G., and G. Clerc. Actionneurs électriques. Paris: Éditions Eyrolles, 1997.

[3] Krause, P. C. Analysis of Electric Machinery. New York: McGraw-Hill, 1986.

Introduced in R2006a