You are on page 1of 7

AC Induction Motor Constant Parameter Model

1 Overview
This NI labs package provides examples to help you simulate an AC induction motor (ACIM) with the
constant parameter model and integrate the ACIM into your own hardware-in-the-loop (HIL) solution.
The ACIM is the most common motor in industrial motion control systems. Main advantages of the
ACIM are simple and rugged design, low cost, and low maintenance. In the ACIM, the electromagnetic
induction from the magnetic field of the stator winding generates electric current in the rotor to
produce electromagnetic torque. This package contains two examples of simulating the ACIM.

The two types of the ACIM are the squirrel cage motor and the wound-rotor motor. Currently, this NI
labs package only supports the squirrel cage motor. This readme applies to the squirrel cage motor type.

1.1 AC Induction Motor


Like most motors, the ACIM has a stationary stator outside and a rotor which spins inside. The ACIM
utilizes the electromagnet of the stator to generate current in the rotor and to produce torque.
Therefore, the rotor does not require direct electric connection. The stator is a hollow metal cylinder
with slots for coils of wires. The rotor consists of metal bars which have end rings at both ends to form
short circuits. The following figure shows a typical 3-phase AC induction motor with one pair of poles. Aa,
Bb, and Cc represent the three phases.

Because of the AC supply to the stator windings, the magnetizing currents of the stator produce a
magnetic field, which generates a current in the rotor and results in a second magnet field. The
Interaction between these two magnetic fields generates torque, which forces the rotor to rotate in the
same direction as the stator magnetic field.

When the rotor speed approaches the rotating speed of the stator magnetic field, the relative speed
between the rotor and the stator magnetic field decreases. As a result, the current in the rotor windings
decreases and the output torque drops. In the end, the rotor speed reaches a stable point where the
electromagnetic torque matches with the load torque. Owning to this mechanism, a slip must exist
between the rotor speed and the rotating speed of the stator magnetic field when an ACIM runs.

2 AC Induction Motor Constant Parameter Model


Examples
This package contains two examples of simulating the ACIM with the constant parameter model for you
to test the control algorithms on host computers and on field-programmable gate array (FPGA) targets.
Before simulating an electric motor, you can test your control algorithms on a host computer without
connecting to any targets to save simulation workloads. After that, you can verify whether the algorithm
can perform correctly with the HIL solution by simulating the ACIM on FPGA targets.

2.1 Examples files


2.1.1 AC Induction Motor Constant Parameter Model Simulation on
Host Computers
In this example, the simulator and controller both run on a host computer. This example demonstrates
how to control the speed of the ACIM with the field oriented control (FOC) or variable voltage variable
frequency (VVVF) algorithms.

Required Software
• LabVIEW 2013 Full or Professional Development System (32-bit)
• LabVIEW 2013 Control Design and Simulation Module
• NI Electric Motor Simulation Toolkit 2013

How to Run This Example


Complete the following steps to run this example.
1. Open the ACIM Constant Parameter Model Closed Loop.vi in the ACIM Constant
Parameter Model Closed Loop folder.
2. On the front panel, specify the Control Method.
3. Run the example VI.
4. Change the Velocity Setpoint [RPM] and the Load Torque [Nm]. Observe the changes of the
waveform charts on the front panel.
5. Change the Temperature [K] of the Stator and the Rotor. Observe the changes of the waveform
charts on the front panel.
6. Click Stop to stop this VI.

The following figure shows the front panel of the ACIM Constant Parameter Model Closed Loop VI when
you run this example.
2.1.2 AC Induction Motor Constant Parameter Model Simulation on
FPGA Targets
In this example, the simulator runs on an FPGA target and the controller runs on a Real-Time (RT) PXI
target. The controller reads the ACIM state from the FPGA target, controls the motor speed with the
FOC or VVVF algorithms, and feeds back the voltage and load torque to the simulator on the FPGA target.

Required Software
• LabVIEW 2013 Full or Professional Development System (32-bit)
• LabVIEW 2013 Real-Time Module
• LabVIEW 2013 FPGA Module
• LabVIEW 2013 Control Design and Simulation Module
• NI Electric Motor Simulation Toolkit 2013

Required Hardware
• PXIe-7854R

How to Run This Example


Complete the following steps to run this example.
1. Open the ACIM Constant Parameter Model Control Simulation.lvproj in the ACIM Constant
Parameter Model Control Simulation folder.
2. In the Project Explorer window, right-click the RT PXI Target and select Properties from the
shortcut menu to open the Real-Time PXI Properties dialog box. In the IP Address/DNS Name
field, enter the IP address for the real-time target.
3. In the Project Explorer window, right-click the FPGA Target and select Properties from the
shortcut menu to open the FPGA Target Properties dialog box. In the Resource field, specify the
FPGA target hardware.
4. In the Project Explorer window, navigate to RT PXI Target»FPGA Target»Build
Specifications»ACIM Constant Parameter Model Simulator. Right-click the build specification
and select Build from the shortcut menu to compile the FPGA code.
5. Open the ACIM Constant Parameter Model Controller VI. On the front panel, specify the Control
Method between FOC and VVVF.
6. In the Project Explorer window, right-click the ACIM Constant Parameter Model Controller VI
and select Deploy from the shortcut menu to deploy the VI to the real-time target.
7. Run the ACIM Constant Parameter Model Controller VI.
8. On the front panel of the ACIM Constant Parameter Model Controller VI, click Enable Control.
9. Change the Velocity Setpoint [RPM] and the Load Torque [Nm]. Observe the changes of the
waveform charts on the front panel.
10. Change the Temperature [K] of the Stator and the Rotor. Observe the changes of the waveform
charts on the front panel.
11. Click Stop to stop this VI.

The ACIM Constant Parameter Model Control Simulation.lvproj appears as shown in the following figure.

The project contains the following files:

• ACIM Constant Parameter Model Simulator.vi— This VI serves as the simulator. The simulator
runs on an FPGA target.
• ACIM Constant Parameter Model Controller.vi— This VI serves as the controller. The controller
runs on an RT target.

2.1.3 Using the ACIM Constant Parameter Model Simulation in Your


Own Applications
Use the VIs in the _ACIM Constant Parameter FLP folder to simulate an ACIM on a host
computer. Use the VIs in the _ACIM Constant Parameter SGL folder to simulate an ACIM on a
FPGA target.

Use the ACIM Constant Parameter Model VI as the motor simulation VI of your application. For
simulation on FPGA targets, use the Generate ACIM Constant Parameter Model FPGA Data VI to
generate FPGA data which contains model parameters. You can write the FPGA data to your FPGA VI.

2.2 Supplementary VIs

2.2.1 ACIM Constant Parameter Model.vi (on Host Computers)

This VI uses the constant parameter model to simulate an AC induction motor on a host computer.

Inputs

initialize? specifies whether to initialize the internal state of the electric motor. If you set
initialize? to TRUE, this VI resets the internal state of the motor to 0 and restarts the electric
motor simulation. The default value is FALSE.
ACIM constant parameters specifies the parameters describing the characteristics of an ACIM.
number of poles specifies the number of poles in the electric motor. The number of
poles must be a positive even number.
stator leakage inductance specifies the leakage inductance, in henries, of the stator
windings. The value of stator leakage inductance must be greater than zero.
rotor leakage inductance specifies the leakage inductance, in henries, of the rotor
windings. The value of rotor leakage inductance must be greater than zero.
magnetizing inductance specifies the magnetizing inductance, in henries, of the motor.
The value of magnetizing inductance must be greater than zero.
stator base resistance specifies the resistance, in ohms, of the stator windings at base
temperature. The value of stator base resistance must be greater than zero.
rotor base resistance specifies the resistance, in ohms, of the rotor windings at base
temperature. The value of rotor base resistance must be greater than zero.
stator temperature coefficient specifies the temperature coefficient, in ohms per kelvin,
of the stator windings. The value of stator temperature coefficient must be greater
than zero.
rotor temperature coefficient specifies the temperature coefficient, in ohms per kelvin,
of the rotor windings. The value of rotor temperature coefficient must be greater than
zero.
base temperature specifies the base temperature, in kelvins, for the stator resistance
and the rotor resistance. The values you specify for stator base resistance and rotor
base resistance are resistances at base temperature.
voltage specifies the three-phase voltage, in volts, of the electric motor. The voltage represents
the three-phase voltage in a three-phase electric power system. Therefore, this array must have
three elements, and each array element must specify one phase of the voltage.
temperature specifies the motor temperature.
stator temperature specifies the temperature, in kelvins, of the stator windings for
resistance correction. If the value of stator temperature is equal to or less than zero, no
resistance correction happens.
rotor temperature specifies the temperature, in kelvins, of the rotor windings for
resistance correction. If the value of rotor temperature is equal to or less than zero, no
resistance correction happens.
speed specifies the rotor speed, in revolutions per minute, of the electric motor.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
dt specifies the time interval, in seconds, at which LabVIEW simulates the electric motor. The
value of dt must be greater than 0.

Outputs

abc current returns the three-phase current, in amperes, in the electric motor stator. This
output is a three-element array, each element representing one of the three-phase current.
torque returns the electromagnetic torque, in newton meters, of the electric motor.
error out contains error information. This output provides standard error out functionality.

2.2.2 ACIM Constant Parameter Model.vi (on FPGA Targets)


This VI uses the constant parameter model to simulate an AC induction motor on a FPGA target.

Inputs

initialize? specifies whether to initialize the internal state of the electric motor. If you set
initialize? to TRUE, this VI resets the internal state of the motor to 0 and restarts the electric
motor simulation. The default value is FALSE.
ACIM constant parameters FPGA specifies the parameters describing the characteristics of an
ACIM. Use the Generate ACIM Constant Parameter Model FPGA Data VI to generate the value of
ACIM constant parameters FPGA.
voltage specifies the three-phase voltage, in volts, of the electric motor. The voltage represents
the three-phase voltage in a three-phase electric power system. Therefore, this array must have
three elements, and each array element must specify one phase of the voltage.
load torque specifies the current load torque, in newton meters, that you externally apply to
the motor.
temperature specifies the motor temperature.
stator temperature specifies the temperature, in kelvins, of the stator windings for
resistance correction. If the value of stator temperature is equal to or less than zero, no
resistance correction happens.
rotor temperature specifies the temperature, in kelvins, of the rotor windings for
resistance correction. If the value of rotor temperature is equal to or less than zero, no
resistance correction happens.
dt specifies the time interval, in seconds, at which LabVIEW simulates the electric motor. The
value of dt must be greater than 0.

Outputs

abc current returns the three-phase current, in amperes, in the electric motor stator. This
output is a three-element array, each element representing one of the three-phase current.
torque returns the electromagnetic torque, in newton meters, of the electric motor.
speed returns the speed, in radians per second, of the motor at the next time step.
position returns the position, in radians, of the rotor at the next time step.

You might also like