ETC DRM023

Freescale Semiconductor, Inc...
Freescale Semiconductor, Inc.
3-Phase AC
Induction Motor
Vector Control Using
56F805
Designer Reference
Manual
56800
Hybrid Controller
DRM023/D
Rev. 0, 03/2003
MOTOROLA.COM/SEMICONDUCTORS
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc...
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
3-Phase AC Induction Motor
Vector Control Using 56F805
Designer Reference Manual — Rev 0
by:
Jaroslav Lepka
Motorola Czech Systems Laboratories
Roznov pod Radhostem, Czech Republic
DRM023 — Rev 0
Designer Reference Manual
MOTOROLA
3
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Revision history
To provide the most up-to-date information, the revision of our
documents on the World Wide Web will be the most current. Your printed
copy may be an earlier revision. To verify you have the latest information
available, refer to:
http://www.motorola.com/semiconductors
Freescale Semiconductor, Inc...
The following revision history table summarizes changes contained in
this document. For your convenience, the page number designators
have been linked to the appropriate location.
Revision history
Date
Revision
Level
February
2003
1.0
Description
Initial release
Designer Reference Manual
Page
Number(s)
N/A
DRM023 — Rev 0
4
MOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
List of Sections
Section 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Freescale Semiconductor, Inc...
Section 2. Target Motor Theory . . . . . . . . . . . . . . . . . . . . 21
Section 3. Vector Control of AC Induction Machines . . 33
Section 4. System Description. . . . . . . . . . . . . . . . . . . . . 47
Section 5. Hardware Design. . . . . . . . . . . . . . . . . . . . . . . 55
Section 6. Software Design . . . . . . . . . . . . . . . . . . . . . . . 65
Section 7. System Set-Up. . . . . . . . . . . . . . . . . . . . . . . . 111
Appendix A. References. . . . . . . . . . . . . . . . . . . . . . . . . 127
Appendix B. Glossary. . . . . . . . . . . . . . . . . . . . . . . . . . . 129
DRM023 — Rev 0
Designer Reference Manual
MOTOROLA
5
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
List of Sections
Designer Reference Manual
DRM023 — Rev 0
6
MOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Table of Contents
Freescale Semiconductor, Inc...
Section 1. Introduction
1.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
1.2
Application Intended Functionality . . . . . . . . . . . . . . . . . . . . . . 15
1.3
Benefits of Our Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Section 2. Target Motor Theory
2.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
2.2
AC Induction Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3
Mathematical Description of AC Induction Motors . . . . . . . . . . 23
2.4
Digital Control of AC Induction Motors . . . . . . . . . . . . . . . . . . . 30
Section 3. Vector Control of AC Induction Machines
3.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
3.2
Fundamental Principal of the Vector Control . . . . . . . . . . . . . . 33
3.3
Block Diagram of the Vector Control . . . . . . . . . . . . . . . . . . . . 34
3.4
Forward and Inverse Clarke Transformation . . . . . . . . . . . . . . 35
3.5
Forward and Inverse Park Transformation . . . . . . . . . . . . . . . . 37
3.6
Rotor Flux Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7
Decoupling Circuit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
3.8
Space Vector Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Section 4. System Description
4.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
DRM023 — Rev 0
Designer Reference Manual
MOTOROLA
7
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Table of Contents
4.2
System Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.3
Application Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Freescale Semiconductor, Inc...
Section 5. Hardware Design
5.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.2
System Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.3
DSP56F805EVM Controller Board . . . . . . . . . . . . . . . . . . . . . . 57
5.4
3-Phase AC BLDC High Voltage Power Stage. . . . . . . . . . . . . 59
5.5
In-Line Optoisolation Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.6
Hardware Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Section 6. Software Design
6.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
6.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.3
Analog Value Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.4
Software Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
6.5
Control Algorithm Data Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.6
Application State Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.7
Speed Sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.8
Analog Sensing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.9
START/STOP Switch and Button Control. . . . . . . . . . . . . . . . 107
Section 7. System Set-Up
7.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111
7.2
Hardware Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.3
Jumper Settings of Controller Board. . . . . . . . . . . . . . . . . . . .114
7.4
Required Software Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Designer Reference Manual
DRM023 — Rev 0
8
MOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
7.5
Application Build & Execute . . . . . . . . . . . . . . . . . . . . . . . . . . 116
7.6
Controlling the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Appendix A. References
Freescale Semiconductor, Inc...
Appendix B. Glossary
DRM023 — Rev 0
Designer Reference Manual
MOTOROLA
9
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Table of Contents
Designer Reference Manual
DRM023 — Rev 0
10
MOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
List of Figures
Figure
Freescale Semiconductor, Inc...
2-1
2-2
2-3
2-4
2-5
2-6
3-1
3-2
3-3
3-4
3-5
4-1
5-1
5-2
5-3
6-1
6-2
6-3
6-4
6-5
6-6
6-7
6-8
6-9
6-10
6-11
6-12
6-13
Title
Page
3-Phase AC Induction Motor. . . . . . . . . . . . . . . . . . . . . . . . . . . 22
AC Induction Motor Speed-torque Characteristic . . . . . . . . . . . 23
Stator Current Space Vector and Its Projection . . . . . . . . . . . . 25
Application of the General Reference Frame . . . . . . . . . . . . . . 28
3- Phase Inverter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Pulse Width Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Block Diagram of the AC Induction Motor Vector Control. . . . . 35
Clarke Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
Park Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Power Stage Schematic Diagram. . . . . . . . . . . . . . . . . . . . . . . 43
Basic Space Vectors and Voltage Vector Projection . . . . . . . . 44
AC Induction Motor Vector Control Drive Structure . . . . . . . . . 51
3-Phase AC Induction Motor High-Voltage
Platform Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
Block Diagram of the DSP56F805EVM . . . . . . . . . . . . . . . . . . 58
3-Phase AC High Voltage Power Stage . . . . . . . . . . . . . . . . . . 60
Software Flowchart Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 73
ADC End of Scan ISR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Application Interrupt Service Routines . . . . . . . . . . . . . . . . . . . 81
Vector Control Application Data Flow . . . . . . . . . . . . . . . . . . . . 84
Controllers Data Flow Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Space Vector Modulation and Brake Control Data Flow . . . . . 86
Application State Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
INIT State Substates State Machine. . . . . . . . . . . . . . . . . . . . .92
RUN State Substates State Machine . . . . . . . . . . . . . . . . . . . . 94
Quadrature Encoder Signals . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Quad Timer Module A Configuration . . . . . . . . . . . . . . . . . . . . 96
Speed Processing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
Time Diagram of PWM and ADC Synchronization . . . . . . . . . 101
DRM023 — Rev 0
Designer Reference Manual
MOTOROLA
11
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
List of Figures
6-14
6-15
6-16
6-17
Freescale Semiconductor, Inc...
6-18
6-19
6-20
6-21
7-1
7-2
7-3
7-4
7-5
7-6
7-7
3-Phase Bridge with Current Shunt Resistors . . . . . . . . . . . . 102
Current Amplifier for Phase C. . . . . . . . . . . . . . . . . . . . . . . . . 102
The Voltage Shapes of Two Different PWM Periods . . . . . . . 103
3-Phase Sinewave Voltages and Corresponding
Sector Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
DC-Bus Voltage Sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Temperature Sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Button Control - IRQ ISR and ButtonProcessing . . . . . . . . . . 109
Button Control - ButtonEdge. . . . . . . . . . . . . . . . . . . . . . . . . . 110
Set-up of the 3-phase ACIM Vector Control Application. . . . . 112
DSP56F805EVM Jumper Reference . . . . . . . . . . . . . . . . . . . 114
Target Build Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Execute Make Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
RUN/STOP Switch and UP/DOWN Buttons
at DSP56F805EVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
USER and PWM LEDs at DSP56F805EVM. . . . . . . . . . . . . . 122
PC Master Software Control Window . . . . . . . . . . . . . . . . . . . 125
Designer Reference Manual
DRM023 — Rev 0
12
MOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
List of Tables
Table
Freescale Semiconductor, Inc...
1-1
3-1
5-1
5-2
5-3
7-1
7-2
Title
Page
Memory Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Switching Patterns and Resulting Instantaneous
Line-to-Line and Phase Voltages . . . . . . . . . . . . . . . . . . . . . . . 44
Electrical Characteristics of Power Stage. . . . . . . . . . . . . . . . . 61
Electrical Characteristics of In-Line Optoisolation Box . . . . . . . 62
Motor - Brake Specifications. . . . . . . . . . . . . . . . . . . . . . . . . . . 64
DSP56F805EVM Jumper Settings . . . . . . . . . . . . . . . . . . . . . 114
Motor Application States. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
DRM023 — Rev 0
Designer Reference Manual
MOTOROLA
13
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
List of Tables
Designer Reference Manual
DRM023 — Rev 0
14
MOTOROLA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 1. Introduction
Freescale Semiconductor, Inc...
1.1 Contents
1.2
Application Intended Functionality . . . . . . . . . . . . . . . . . . . . . . 15
1.3
Benefits of Our Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2 Application Intended Functionality
This reference design describes the design of a 3-phase AC induction
vector control drive with position encoder coupled to the motor shaft. It
is based on Motorola’s DSP56F805 dedicated motor control device.
AC induction motors, which contain a cage, are very popular in variable
speed drives. They are simple, rugged, inexpensive and available at all
power ratings. Progress in the field of power electronics and
microelectronics enables the application of induction motors for
high-performance drives, where traditionally only DC motors were
applied. Thanks to sophisticated control methods, AC induction drives
offer the same control capabilities as high performance four-quadrant
DC drives.
The drive application concept presented is that of vector control of the
AC induction motor running in a closed-speed loop with the
speed/position sensor coupled to the shaft. The application serves as an
example of AC induction vector control drive design using a Motorola
DSP.
This reference design includes a description of Motorola DSP features,
basic AC induction motor theory, system design concept, hardware
implementation and software design including the PC master software
visualization tool.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Introduction
For More Information On This Product,
Go to: www.freescale.com
15
Freescale Semiconductor, Inc.
Introduction
1.3 Benefits of Our Solution
The Motorola DSP56F80x family (see Table 1-1) is well-suited for digital
motor control, combining the DSP’s calculation capability with an MCU’s
controller features on a single chip. These DSPs offer many dedicated
peripherals, including a Pulse Width Modulation (PWM) unit, an
Analog-to-Digital Converter (ADC), timers, communication peripherals
(SCI, SPI, CAN), on-board Flash and RAM. Generally, all the family
members are well-suited for AC induction motor control.
Freescale Semiconductor, Inc...
A typical member of the family, the DSP56F805, provides the following
peripheral blocks:
•
Two Pulse Width Modulator units (PWMA & PWMB), each with six
PWM outputs, three Current Sense inputs, and four Fault inputs,
fault tolerant design with deadtime insertion; supports both
Center- and Edge-aligned modes
•
12-bit Analog-to-Digital Convertors (ADCs), supporting two
simultaneous conversions with dual 4-pin multiplexed inputs; ADC
can be synchronized by PWM modules
•
Two Quadrature Decoders (Quad Dec0 & Quad Dec1), each with
four inputs, or two additional Quad Timers A & B
•
Two dedicated General Purpose Quad Timers totalling six pins:
timer C with two pins and timer D with four pins
•
CAN 2.0 A/B Module with 2-pin ports used to transmit and receive
•
Two Serial Communication Interfaces (SCI0 & SCI1), each with
two pins, or four additional GPIO lines
•
Serial Peripheral Interface (SPI), with configurable 4-pin port (or
four additional GPIO lines)
•
Computer Operating Properly (COP)/watchdog timer
•
Two dedicated external interrupt pins
•
14 dedicated General Purpose I/O (GPIO) pins, 18 multiplexed
GPIO pins
•
External reset pin for hardware reset
Designer Reference Manual
16
DRM023 — Rev 0
Introduction
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Introduction
Benefits of Our Solution
•
JTAG/On-Chip Emulation (OnCE) for unobtrusive, processor
speed-independent debugging
•
Software-programmable, Phase Lock Loop-based frequency
synthesizer for the DSP core clock
Freescale Semiconductor, Inc...
Table 1-1. Memory Configuration
DSP56F801
DSP56F803
DSP56F805
DSP56F807
Program Flash
8188 x 16-bit
32252 x 16-bit
32252 x 16-bit
61436 x 16-bit
Data Flash
2K x 16-bit
4K x 16-bit
4K x 16-bit
8K x 16-bit
Program RAM
1K x 16-bit
512 x 16-bit
512 x 16-bit
2K x 16-bit
Data RAM
1K x 16-bit
2K x 16-bit
2K x 16-bit
4K x 16-bit
Boot Flash
2K x 16-bit
2K x 16-bit
2K x 16-bit
2K x 16-bit
The key feature of the motor control DSP is the inclusion of PWM
modules. The device is designed to control most motor types, including
induction motors. An interesting feature for controlling the AC induction
motor at low speeds is the patented PWM waveform distortion correction
circuit. Each PWM is double-buffered and includes interrupt controls.
The PWM module provides a reference output to synchronize the
Analog-to-Digital Converters.
The PWM block has the following features:
•
Three complementary PWM signal pairs, or six independent PWM
signals
•
Complementary channel operation
•
Deadtime insertion
•
Separate top and bottom pulse width correction via current status
inputs or software
•
Separate top and bottom polarity control
•
Edge-aligned or center-aligned PWM signals
•
15-bit resolution
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Introduction
For More Information On This Product,
Go to: www.freescale.com
17
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Introduction
•
Half-cycle reload capability
•
Integral reload rates from 1 to 16
•
Individual software-controlled PWM output
•
Programmable fault protection
•
Polarity control
•
20-mA current sink capability on PWM pins
•
Write-protectable registers
The Analog-to-Digital Converter (ADC) consists of a digital control
module and two analog sample and hold (S/H) circuits. The ADC
features:
•
12-bit resolution
•
Maximum ADC clock frequency of 5MHz with a 200ns period
•
Single conversion time of 8.5 ADC clock cycles (8.5 x 200ns =
1.7µs)
•
Additional conversion time of six ADC clock cycles (6 x 200ns =
1.2µs)
•
Eight conversions in 26.5 ADC clock cycles (26.5 x 200ns = 5.3µs)
using simultaneous mode
•
ADC can be synchronized to the PWM via the SYNC signal
•
Simultaneous or sequential sampling
•
Internal multiplexer to select two of eight inputs
•
Ability to sequentially scan and store up to eight measurements
•
Ability to simultaneously sample and hold two inputs
•
Optional interrupts at end of scan if an out-of-range limit is
exceeded or at zero crossing
•
Optional sample correction by subtracting a pre-programmed
offset value
•
Signed or unsigned result
•
Single-ended or differential inputs
Designer Reference Manual
18
DRM023 — Rev 0
Introduction
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Introduction
Benefits of Our Solution
Freescale Semiconductor, Inc...
The application utilizes the ADC block in simultaneous mode and
sequential scan. It is synchronized with PWM pulses. Such a
configuration allows conversion of the desired analog values of all phase
currents, voltage and temperature at once in the desired time.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Introduction
For More Information On This Product,
Go to: www.freescale.com
19
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Introduction
Designer Reference Manual
20
DRM023 — Rev 0
Introduction
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 2. Target Motor Theory
Freescale Semiconductor, Inc...
2.1 Contents
2.2
AC Induction Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3
Mathematical Description of AC Induction Motors . . . . . . . . . . 23
2.4
Digital Control of AC Induction Motors . . . . . . . . . . . . . . . . . . . 30
2.2 AC Induction Motor
The AC induction motor is a rotating electric machine designed to
operate from a 3-phase source of alternating voltage. For variable speed
drives, the source is normally an inverter that uses power switches to
produce approximately sinusoidal voltages and currents of controllable
magnitude and frequency.
A cross-section of a two-pole induction motor is shown in Figure 2-1.
Slots in the inner periphery of the stator accommodate 3-phase winding
a,b,c. The turns in each winding are distributed so that a current in a
stator winding produces an approximately sinusoidally-distributed flux
density around the periphery of the air gap. When three currents that are
sinusoidally varying in time, but displaced in phase by 120° from each
other, flow through the three symmetrically-placed windings, a
radially-directed air gap flux density is produced that is also sinusoidally
distributed around the gap and rotates at an angular velocity equal to the
angular frequency ωs of the stator currents.
The most common type of induction motor has a squirrel cage rotor in
which aluminum conductors or bars are cast into slots in the outer
periphery of the rotor. These conductors or bars are shorted together at
both ends of the rotor by cast aluminum end rings, which also can be
shaped to act as fans. In larger induction motors, copper or copper-alloy
bars are used to fabricate the rotor cage winding.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
21
Freescale Semiconductor, Inc.
Target Motor Theory
Stator Rotor
b
c'
Freescale Semiconductor, Inc...
a'
a
c
b'
Figure 2-1. 3-Phase AC Induction Motor
As the sinusoidally-distributed flux density wave produced by the stator
magnetizing currents sweeps past the rotor conductors, it generates a
voltage in them. The result is a sinusoidally-distributed set of currents in
the short-circuited rotor bars. Because of the low resistance of these
shorted bars, only a small relative angular velocity ωr between the
angular velocity ωs of the flux wave and the mechanical angular velocity
ω of the two-pole rotor is required to produce the necessary rotor current.
The relative angular velocity ωr is called the slip velocity. The interaction
of the sinusoidally-distributed air gap flux density and induced rotor
currents produces a torque on the rotor. The typical induction motor
speed-torque characteristic is shown in Figure 2-2.
Designer Reference Manual
22
DRM023 — Rev 0
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Target Motor Theory
Mathematical Description of AC Induction Motors
Figure 2-2. AC Induction Motor Speed-torque Characteristic
Squirrel-cage AC induction motors are popular for their simple
construction, low cost per horsepower and low maintenance (they
contain no brushes, as do DC motors). They are available in a wide
range of power ratings. With field-oriented vector control methods, AC
induction motors can fully replace standard DC motors, even in
high-performance applications.
2.3 Mathematical Description of AC Induction Motors
There are a number of AC induction motor models. The model used for
vector control design can be obtained by utilization of the space vector
theory. The 3-phase motor quantities (such as voltages, currents,
magnetic flux, etc.) are expressed in the term of complex space vectors.
Such a model is valid for any instantaneous variation of voltage and
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
23
Freescale Semiconductor, Inc.
Target Motor Theory
current and adequately describes the performance of the machine under
both steady-state and transient operation. Complex space vectors can
be described using only two orthogonal axes. We can look at the motor
as a 2-phase machine. The utilization of the 2-phase motor model
reduces the number of equations and simplifies the control design.
2.3.1 Space Vector Definition
Freescale Semiconductor, Inc...
Let’s assume isa , isb , and isc are the instantaneous balanced 3-phase
stator currents:
i sa + i sb + i sc = 0
(EQ 2-1.)
Then we can define the stator current space vector as follows:
2
i s = k ( i sa + ai sb + a i sc )
(EQ 2-2.)
where a and a2 are the spatial operators, a = e j2π ⁄ 3, a 2 = e j4π ⁄ 3 and k is
the transformation constant and is chosen k=2/3. Figure 2-3 shows the
stator current space vector projection.
The space vector defined by (EQ 2-2.) can be expressed utilizing the
two-axis theory. The real part of the space vector is equal to the
instantaneous value of the direct-axis stator current component, isα, and
whose imaginary part is equal to the quadrature-axis stator current
component, isβ. Thus, the stator current space vector in the stationary
reference frame attached to the stator can be expressed as:
i s = i sα + ji sβ
Designer Reference Manual
24
(EQ 2-3.)
DRM023 — Rev 0
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Target Motor Theory
Mathematical Description of AC Induction Motors
β
phase- b
Freescale Semiconductor, Inc...
is β
Figure 2-3. Stator Current Space Vector and Its Projection
In symmetrical 3-phase machines, the direct and quadrature axis stator
currents isα , isβ are fictitious quadrature-phase (2-phase) current
components, which are related to the actual 3-phase stator currents as
follows:
1
1
i sα = k  i sa – --- i sb – --- i sc

2 
2
(EQ 2-4.)
3
i sβ = k ------- ( i sb – i sc )
2
(EQ 2-5.)
where k=2/3 is a transformation constant.
The space vectors of other motor quantities (voltages, currents,
magnetic fluxes, etc.) can be defined in the same way as the stator
current space vector.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
25
Freescale Semiconductor, Inc.
Target Motor Theory
2.3.2 AC Induction Motor Model
The AC induction motor model is given by the space vector form of the
voltage equations. The system model defined in the stationary
α,β-coordinate system attached to the stator is expressed by the
following equations. The motor model is supposed to be ideally
symmetrical with a linear magnetic circuit characteristic.
Freescale Semiconductor, Inc...
a. The stator voltage differential equations:
u sα = R s i sα +
d
Ψ
d t sα
(EQ 2-6.)
u sβ = R s i sβ +
d
Ψ
d t sβ
(EQ 2-7.)
b. The rotor voltage differential equations:
u rα = 0 = R r i rα +
d
Ψ + ωΨ rβ
d t rα
(EQ 2-8.)
u rβ = 0 = R r i rβ +
d
Ψ – ωΨ rα
d t rβ
(EQ 2-9.)
c. The stator and rotor flux linkages expressed in terms of the
stator and rotor current space vectors:
Ψ sα = L s i sα + L m i rα
(EQ 2-10.)
Ψ sβ = L s i sβ + L m i rβ
(EQ 2-11.)
Ψ rα = L r i rα + L m i sα
(EQ 2-12.)
Ψ rβ = L r i rβ + L m i sβ
(EQ 2-13.)
d. Electromagnetic torque expressed by utilizing space vector
quantities:
3
t e = --- p p ( Ψ sα i sβ – Ψ sβ i sα )
2
Designer Reference Manual
26
(EQ 2-14.)
DRM023 — Rev 0
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Target Motor Theory
Mathematical Description of AC Induction Motors
Freescale Semiconductor, Inc...
where:
α,β
stator orthogonal coordinate system
usα,β
stator voltages
[V]
isα,β
stator currents
[A]
urα,β
rotor voltages
[V]
irα,β
rotor currents
[A]
Ψsα,β
stator magnetic fluxes
[Vs]
Ψrα,β
rotor magnetic fluxes
[Vs]
Rs
stator phase resistance
[Ohm]
Rr
rotor phase resistance
[Ohm]
Ls
stator phase inductance
[H]
Lr
rotor phase inductance
[H]
Lm
mutual (stator to rotor) inductance
[H]
ω / ωs electrical rotor speed / synchronous speed
[rad/s]
pp
number of pole pairs
[-]
te
electromagnetic torque
[Nm]
Besides the stationary reference frame attached to the stator, motor
model voltage space vector equations can be formulated in a general
reference frame, which rotates at a general speed ωg. If a general
reference frame, with direct and quadrature axes x,y rotating at a
general instantaneous speed ωg=dθg/dt is used, as shown in Figure 2-4,
where θg is the angle between the direct axis of the stationary reference
frame (α) attached to the stator and the real axis (x) of the general
reference frame, then the following equation defines the stator current
space vector in general reference frame:
i sg = i s e
– jθ g
= i sx + ji sy
DRM023 — Rev 0
MOTOROLA
(EQ 2-15.)
Designer Reference Manual
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
27
Freescale Semiconductor, Inc.
Target Motor Theory
y
β
Freescale Semiconductor, Inc...
x
g
Figure 2-4. Application of the General Reference Frame
The stator voltage and flux-linkage space vectors can be similarly
obtained in the general reference frame.
Similar considerations hold for the space vectors of the rotor voltages,
currents and flux linkages. The real axis (rα) of the reference frame
attached to the rotor is displaced from the direct axis of the stator
reference frame by the rotor angle θr . It can be seen that the angle
between the real axis (x) of the general reference frame and the real axis
of the reference frame rotating with the rotor (rα) is θg-θr . In the general
reference frame, the space vector of the rotor currents can be expressed
as:
i rg = i r e
–j ( θg – θr )
= i rx + jiry
(EQ 2-16.)
where i r is the space vector of the rotor current in the rotor reference
frame.
Similarly, the space vectors of the rotor voltages and rotor flux linkages
in the general reference frame can be expressed.
Designer Reference Manual
28
DRM023 — Rev 0
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Target Motor Theory
Mathematical Description of AC Induction Motors
Freescale Semiconductor, Inc...
By utilizing introduced transformations of the motor quantities from one
reference frame to the general reference frame, the motor model voltage
equations in the general reference frame can be expressed. The AC
induction motor model is often used in vector control algorithms. The aim
of vector control is to implement control schemes which produce high
dynamic performance and are similar to those used to control DC
machines. To achieve this, the reference frames may be aligned with the
stator flux-linkage space vector, the rotor flux-linkage space vector or the
magnetizing space vector. The most popular reference frame is the
reference frame attached to the rotor flux linkage space vector with
direct axis (d) and quadrature axis (q). After transformation into d-q
coordinates the motor model is the following:
u sd = R s i sd +
d
Ψ – ω s Ψ sq
d t sd
(EQ 2-17.)
u sq = R s i sq +
d
Ψ – ω s Ψ sd
d t sq
(EQ 2-18.)
u rd = 0 = R r i rd +
d
Ψ – ( ω s – ω )Ψ rq
d t rd
(EQ 2-19.)
u rq = 0 = R r i rq +
d
Ψ + ( ω s – ω )Ψ rd
d t rq
(EQ 2-20.)
Ψ sd = L s i sd + L m i rd
(EQ 2-21.)
Ψ sq = L s i sq + L m i rq
(EQ 2-22.)
Ψ rd = L r i rd + L m i sd
(EQ 2-23.)
Ψ rq = L r i rq + L m i sq
(EQ 2-24.)
3
t e = --- p p ( Ψ sd i sq – Ψ sq i sd )
2
(EQ 2-25.)
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
29
Freescale Semiconductor, Inc.
Target Motor Theory
2.4 Digital Control of AC Induction Motors
In adjustable speed applications, AC motors are powered by inverters.
The inverter converts DC power to AC power at the required frequency
and amplitude. Figure 2-5 illustrates a typical 3-phase inverter.
+ DC-Bus
Freescale Semiconductor, Inc...
C
+
- DC-Bus
Ph. B
Ph. A
Ph. C
3-Phase
AC Motor
Figure 2-5. 3- Phase Inverter
The inverter consists of three half-bridge units where the upper and
lower switch are controlled complementarily, meaning when the upper
one is turned on, the lower one must be turned off, and vice versa. As
the power device’s turn-off time is longer than its turn-on time, some
dead-time must be inserted between the turn-off of one transistor of the
half-bridge and the turn-on of its complementary device. The output
voltage is mostly created by a pulse width modulation (PWM) technique,
where an isosceles triangle carrier wave is compared with a
fundamental-frequency sine modulating wave and the natural points of
intersection determine the switching points of the power devices of a
half-bridge inverter. This technique is shown in Figure 2-6. The 3-phase
voltage waves are shifted 120o to one another and thus a 3-phase motor
can be supplied.
Designer Reference Manual
30
DRM023 — Rev 0
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Target Motor Theory
Digital Control of AC Induction Motors
Generated
Sine Wave
PWM Carrier
Wave
1
0
ωt
Freescale Semiconductor, Inc...
-1
PWM Output T
1
(Upper Switch)
PWM Output T
2
(Lower Switch)
1
0
ωt
1
0
ωt
Figure 2-6. Pulse Width Modulation
The most popular power devices for motor control applications are
Power MOSFETs and IGBTs.
A Power MOSFET is a voltage-controlled transistor. It is designed for
high-frequency operation and has a low-voltage drop, so it has low
power losses. However, saturation temperature sensitivity limits the
MOSFET’s use in high-power applications.
An Insulated-Gate Bipolar Transistor (IGBT) is controlled by a MOSFET
on its base. The IGBT requires low drive current, has fast switching time,
and is suitable for high switching frequencies. The disadvantage is the
higher voltage drop of the bipolar transistor, causing higher conduction
losses.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
31
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Target Motor Theory
Designer Reference Manual
32
DRM023 — Rev 0
Target Motor Theory
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 3. Vector Control of AC Induction Machines
Freescale Semiconductor, Inc...
3.1 Contents
3.2
Fundamental Principal of the Vector Control . . . . . . . . . . . . . . 33
3.3
Block Diagram of the Vector Control . . . . . . . . . . . . . . . . . . . . 34
3.4
Forward and Inverse Clarke Transformation . . . . . . . . . . . . . . 35
3.5
Forward and Inverse Park Transformation . . . . . . . . . . . . . . . . 37
3.6
Rotor Flux Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7
Decoupling Circuit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
3.8
Space Vector Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2 Fundamental Principal of the Vector Control
Vector control is the most popular control technique of AC induction
motors. In special reference frames, the expression for the
electromagnetic torque of the smooth-air-gap machine is similar to the
expression for the torque of the separately excited DC machine. In the
case of induction machines, the control is usually performed in the
reference frame (d-q) attached to the rotor flux space vector. That’s why
the implementation of vector control requires information on the modulus
and the space angle (position) of the rotor flux space vector. The stator
currents of the induction machine are separated into flux- and
torque-producing components by utilizing transformation to the d-q
coordinate system, whose direct axis (d) is aligned with the rotor flux
space vector. That means that the q-axis component of the rotor flux
space vector is always zero:
Ψ rq = 0
and also
d
Ψ = 0
d t rq
DRM023 — Rev 0
MOTOROLA
(EQ 3-1.)
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
33
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
The rotor flux space vector calculation and transformation to the d-q
coordinate system require the high computational power of a
microcontroller. The digital signal processor is suitable for this task. The
following sections describe the space vector transformations and the
rotor flux space vector calculation.
3.3 Block Diagram of the Vector Control
Freescale Semiconductor, Inc...
Figure 3-1 shows the basic structure of the vector control of the AC
induction motor. To perform vector control, it is necessary to follow these
steps:
•
Measure the motor quantities (phase voltages and currents)
•
Transform them to the 2-phase system (α,β) using a Clarke
transformation
•
Calculate the rotor flux space vector magnitude and position angle
•
Transform stator currents to the d-q coordinate system using a
Park transformation
•
The stator current torque (isq) and flux (isd) producing components
are separately controlled
•
The output stator voltage space vector is calculated using the
decoupling block
•
The stator voltage space vector is transformed by an inverse Park
transformation back from the d-q coordinate system to the
2-phase system fixed with the stator
•
Using the space vector modulation, the output 3-phase voltage is
generated
Designer Reference Manual
34
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Forward and Inverse Clarke Transformation
Line Input
Speed
Command
-
-
Motor Flux
Command
USd_lin
Decoupling
USq_lin
USd
USα
USq
USβ
Space - Vector
Modulation
pwm a
pwm b
pwm c 3-Phase Power Stage
Freescale Semiconductor, Inc...
ΨRd
ISq
ISd
Forward Park
Transformation
Rotor Flux
Position
ISa
ISα
Rotor Flux
Calculation
ISβ
Forward Clarke
Transformation
ISb
ISc
AC Induction
Motor
Speed
Speed
Sensor
Figure 3-1. Block Diagram of the AC Induction Motor Vector Control
3.4 Forward and Inverse Clarke Transformation
The forward Clarke transformation converts a 3-phase system a,b,c to a
2-phase coordinate system α,β. Figure 3-2 shows graphical
construction of the space vector and projection of the space vector to the
quadrature-phase components α,β.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
35
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
β
phase- b
Freescale Semiconductor, Inc...
is β
Figure 3-2. Clarke Transformation
Assuming that the a axis and the α axis are in the same direction, the
quadrature-phase stator currents isα and isβ are related to the actual
3-phase stator currents as follows:
1
1
i sα = k i sa – --- i sb – --- i sc
2
2
i sβ
3
= k ------- ( i sb – i sc )
2
(EQ 3-2.)
where:
isa
actual current of the motor Phase a
[A]
isb
actual current of the motor Phase b
[A]
isc
actual current of the motor Phase c
[A]
Designer Reference Manual
36
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Forward and Inverse Park Transformation
For the non-power-invariant transformation the constant k equals k=2/3.
In this case, the quantities isa and isα are equal. If we assume
i sa + i sb + i sc = 0 , the quadrature-phase components can be expressed
utilizing only two phases of the 3-phase system:
i sα = i sa
Freescale Semiconductor, Inc...
1
2
i sβ = ------- i sa + ------- i sb
3
3
(EQ 3-3.)
The inverse Clarke transformation goes back from a 2-phase (α,β) to a
3-phase isa, isb, isc system. For constant k=2/3, it is given by the following
equations:
i sa = i sα
3
1
i sb = – --- i sα + ------- i sβ
2
2
(EQ 3-4.)
3
1
i sc = – --- i sα – ------- i sβ
2
2
3.5 Forward and Inverse Park Transformation
The components isα and isβ, calculated with a Clarke transformation, are
attached to the stator reference frame α, β. In vector control, it is
necessary to have all quantities expressed in the same reference frame.
The stator reference frame is not suitable for the control process. The
space vector is is rotating at a rate equal to the angular frequency of the
phase currents. The components isα and isβ depend on time and speed.
We can transform these components from the stator reference frame to
the d-q reference frame rotating at the same speed as the angular
frequency of the phase currents. Then the isd and isq components do not
depend on time and speed. If we consider the d-axis aligned with the
rotor flux, the transformation is illustrated in Figure 3-3, where θ Field is
the rotor flux position.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
37
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Freescale Semiconductor, Inc...
q
β
Field
Figure 3-3. Park Transformation
The components isd and isq of the current space vector in d-q reference
frame are determined by the following equations:
i sd = i sα cos θ Field + i sβ sin θ Field
i sq = – i sα sin θ Field + i sβ cos θ Field
(EQ 3-5.)
The component isd is called the direct axis component (flux
producing component) and isq is called the quadrature axis
component (torque producing component). They are time invariant
and the flux and torque control with them is easy. To avoid using
trigonometric functions on the DSP we can directly calculate sinθField
and cosθField using division. They are defined by the following equations:
Ψ rd =
Ψ rα + Ψ rβ
Ψ rβ
sin θ Field = -------Ψ rd
cos θ Field
Ψ rα
= -------Ψ rd
Designer Reference Manual
38
(EQ 3-6.)
(EQ 3-7.)
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Rotor Flux Model
The inverse Park transformation from the d-q to α,β coordinate system
is given by the following equations:
i sα = i sd cos θ Field – i sq sin θ Field
(EQ 3-8.)
i sβ = i sd sin θ Field + i sq cos θ Field
3.6 Rotor Flux Model
Freescale Semiconductor, Inc...
Knowledge of the rotor flux space vector magnitude and position is key
information for the AC induction motor vector control. With the rotor
magnetic flux space vector, the rotational coordinate system (d-q) can
be established. There are several methods for obtaining the rotor
magnetic flux space vector. The implemented flux model utilizes
monitored rotor speed and stator voltages and currents. It is calculated
in the stationary reference frame (α,β) attached to the stator. The error
in the calculated value of the rotor flux, influenced by the changes in
temperature, is negligible for this rotor flux model.
The rotor flux space vector is obtained by solving the differential
equations (EQ 3-9.) and (EQ 3-10.), which are resolved into the α and β
components. The equations are derived from the equations of the AC
induction motor model (see Section 2.3.2 AC Induction Motor Model).
di sα
dΨ rα
Lm
[ ( 1 – σ )T s + T r ] ----------- = ------- u sα – Ψ rα – ωT r Ψ rβ – σL m T s --------dt
Rs
dt
di sβ
dΨ rβ
Lm
[ ( 1 – σ )T s + T r ] ----------- u + ωT r Ψ rα – Ψ rβ – σL m T s -------- = -----dt
R s sβ
dt
(EQ 3-9.)
(EQ 3-10.)
where:
Ls
self-inductance of the stator
[H]
Lr
self-inductance of the rotor
[H]
Lm
magnetizing inductance
[H]
Rr
resistance of a rotor phase winding
[Ohm]
Rs
resistance of a stator phase winding
[Ohm]
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
39
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Vector Control of AC Induction Machines
[rad.s-1]
ω
angular rotor speed
pp
number of motor pole-pairs
L
T r = -----r
Rr
rotor time constant
[s]
Ls
T s = ----Rs
stator time constant
[s]
resultant leakage constant
[-]
2
Lm
σ = 1 – ----------Ls Lr
are the α, β components of the stator voltage,
currents and rotor flux space vectors
u sα, u sβ, i sα, i sβ, Ψ rα, Ψ rβ
3.7 Decoupling Circuit
For purposes of the rotor flux-oriented vector control, the direct-axis
stator current isd (rotor flux-producing component) and the
quadrature-axis stator current isq (torque-producing component) must be
controlled independently. However, the equations of the stator voltage
components are coupled. The direct axis component usd also depends
on isq and the quadrature axis component usq also depends on isd. The
stator voltage components usd and usq cannot be considered as
decoupled control variables for the rotor flux and electromagnetic torque.
The stator currents isd and isq can only be independently controlled
(decoupled control) if the stator voltage equations are decoupled and the
stator current components isd and isq are indirectly controlled by
controlling the terminal voltages of the induction motor.
The equations of the stator voltage components in the d-q coordinate
system (EQ 2-17.) and (EQ 2-18.) can be reformulated and separated
lin
into two components: linear components u lin
and decoupling
sd , u sq
Designer Reference Manual
40
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Decoupling Circuit
components
follows:
lin
decouple
u sd
decouple
u sd = u sd + u sd
lin
decouple
, u sq
decouple
u sq = u sq + u sq
. The equations are decoupled as
Ψ rd L m
d
= K R i sd + K L i sd – ω s K L i sq + --------------dt
Lr Tr
(EQ 3-11.)
Lm
d
= K R i sq + K L i sq + ω s K L i sd + ------- ωΨ rd
dt
Lr
(EQ 3-12.)
Freescale Semiconductor, Inc...
where:
2
Lm
K R = R s + ------2- R r
Lr
(EQ 3-13.)
2
Lm
K L = L s – -----Lr
(EQ 3-14.)
lin
The voltage components u lin
are the outputs of the current
sd , u sq
controllers which control isd and isq components. They are added to the
decouple
decoupling voltage components u decouple
, u sq
. In this way, we can
sd
get direct and quadrature components of the terminal output voltage.
This means the voltage on the outputs of the current controllers is:
d
lin
u sd = K R i sd + K L i sd
dt
(EQ 3-15.)
d
lin
u sq = K R i sq + K L i sq
dt
(EQ 3-16.)
And the decoupling components are:
decouple
u sd
decouple
u sq
Lm

= –  ω s K L i sq + ----------Ψ

L r T r rd
(EQ 3-17.)
Lm
=  ω s K L i sd + ------ ωΨ rd


Lr
(EQ 3-18.)
As can be seen, the decoupling algorithm transforms the nonlinear
motor model to linear equations which can be controlled by general PI or
PID controllers instead of complicated controllers.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
41
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
3.8 Space Vector Modulation
Space Vector Modulation (SVM) can directly transform the stator voltage
vectors from α,β-coordinate system to pulse width modulation (PWM)
signals (duty cycle values).
Freescale Semiconductor, Inc...
The standard technique of the output voltage generation uses an inverse
Clarke transformation to obtain 3-phase values. Using the phase voltage
values, the duty cycles needed to control the power stage switches are
then calculated. Although this technique gives good results, the space
vector modulation is more straightforward (valid only for transformation
from the α,β-coordinate system).
The basic principle of the standard space vector modulation technique
can be explained with the help of the power stage schematic diagram
depicted in Figure 3-4.Regarding the 3-phase power stage
configuration, as shown in Figure 3-4, eight possible switching states
(vectors) are feasible. They are given by combinations of the
corresponding power switches.The graphical representation of all
combinations is the hexagon shown in Figure 3-5. There are six
non-zero vectors, U0, U60, U120, U180, U240, U300, and two zero vectors,
O000 and O111, defined in α,β coordinates.
Designer Reference Manual
42
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Space Vector Modulation
Id0
u DC-Bus /2
+
=
S At
S Bt
S Ct
-
u DC-Bus /2
+
=
S Ab
IA
IB
S Bb
IC
S Cb
-
Freescale Semiconductor, Inc...
u AB
u BC
ub
u CA
B
uR
uL
u ib
O u ic
ua
A
uR
u L u ia
uL
uc
uR
C
Figure 3-4. Power Stage Schematic Diagram
The combination of ON/OFF states of the power stage switches for each
voltage vector is coded in Figure 3-5 by the three-digit number in
parenthesis. Each digit represents one phase. For each phase, a value
of one means that the upper switch is ON and the bottom switch is OFF.
A value of zero means that the upper switch is OFF and the bottom
switch is ON. These states, together with the resulting instantaneous
output line-to-line voltages, phase voltages and voltage vectors, are
listed in Table 3-1.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
43
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Freescale Semiconductor, Inc...
Table 3-1. Switching Patterns and Resulting Instantaneous
Line-to-Line and Phase Voltages
a
b
c
Ua
Ub
Uc
UAB
UBC
UCA
Vector
0
0
0
0
0
0
0
0
0
O000
1
0
0
2UDC-Bus/3
-UDC-Bus/3
-UDC-Bus/3
UDC-Bus
0
-UDC-Bus
U0
1
1
0
UDC-Bus/3
UDC-Bus/3
-2UDC-Bus/3
0
UDC-Bus
-UDC-Bus
U60
0
1
0
-UDC-Bus/3
2UDC-Bus/3
-UDC-Bus/3
-UDC-Bus
UDC-Bus
0
U120
0
1
UDC-Bus/3
-UDC-Bus
0
UDC-Bus
U240
0
0
1 -2UDC-Bus/3 UDC-Bus/3
1 -UDC-Bus/3 -UDC-Bus/3
2UDC-Bus/3
0
-UDC-Bus
UDC-Bus
U300
1
0
1
UDC-Bus/3
1
1
1
0
-2UDC-Bus/3
UDC-Bus/3
UDC-Bus
-UDC-Bus
0
U360
0
0
0
0
0
O111
.
U120
(010)
[1/√3,-1]
U60
(110)
[1/√3,1]
β-axis
II.
Basic Space Vector
Maximal phase
voltage magnitude = 1
T60/T*U60
III.
US
U180
(011)
uβ
[-2/√3,0]
O000 O111
(000) (111)
U0
(100)
α-axis
[2/√3,0]
uα
T0/T*U0
IV.
30 degrees
VI.
Voltage vector components
in α, β axis
V.
[-1/√3,-1]
U240
(001)
[-1/√3,1]
U300
(101)
Figure 3-5. Basic Space Vectors and Voltage Vector Projection
SVM is a technique used as a direct bridge between vector control
(voltage space vector) and PWM.
Designer Reference Manual
44
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
Space Vector Modulation
The SVM technique consists of several steps:
1. Sector identification
2. Space voltage vector decomposition into directions of sector base
vectors Ux, Ux±60
3. PWM duty cycle calculation
Freescale Semiconductor, Inc...
The principle of SVM is the application of the voltage vectors UXXX and
OXXX for certain instances in such a way that the “mean vector” of the
PWM period TPWM is equal to the desired voltage vector.
This method gives the greatest variability of arrangement of the zero and
non-zero vectors during the PWM period. One can arrange these
vectors to lower switching losses; another might want to approach a
different result, such as center-aligned PWM, edge-aligned PWM,
minimal switching, etc.
For the chosen SVM, we define the following rule:
•
The desired space voltage vector is created only by applying the
sector base vectors: the non-zero vectors on the sector side,
(Ux, Ux±60) and the zero vectors (O000 or O111).
The following expressions define the principle of the SVM:
T PWM ⋅ U S [ α, β ] = T 1 ⋅ U x + T 2 ⋅ U x ± 60 + T 0 ⋅ ( O 000 ∨ O 111 )
(EQ 3-19.)
T PWM = T 1 + T 2 + T 0
(EQ 3-20.)
In order to solve the time periods T0, T1 and T2, it is necessary to
decompose the space voltage vector US[α,β] into directions of the sector
base vectors Ux, Ux±60. The equation (EQ 3-19.) splits into equations
(EQ 3-21.) and (EQ 3-22.).
T PWM ⋅ U S x = T 1 ⋅ U x
(EQ 3-21.)
T PWM ⋅ U S ( x ± 60 ) = T 2 ⋅ U x ± 60
(EQ 3-22.)
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
45
Freescale Semiconductor, Inc.
Vector Control of AC Induction Machines
By solving this set of equations, we can calculate the necessary duration
of the application of the sector base vectors Ux, Ux±60 during the PWM
period TPWM to produce the right stator voltages.
US x
T 1 = ------------- T PWM
Ux
USx
T 2 = --------------------- T PWM
U x ± 60
Freescale Semiconductor, Inc...
T 0 = T PWM – ( T 1 + T 2 )
for vector Ux
(EQ 3-23.)
for vector Ux±60
(EQ 3-24.)
either for O000 or O111
Designer Reference Manual
46
(EQ 3-25.)
DRM023 — Rev 0
Vector Control of AC Induction Machines
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 4. System Description
Freescale Semiconductor, Inc...
4.1 Contents
4.2
System Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.3
Application Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 System Outline
The system is designed to drive a 3-phase AC induction motor (ACIM).
The application has the following specifications:
•
Vector control technique used for ACIM control
•
Speed control loop of the ACIM
•
Targeted for DSP56F805EVM
•
Running on 3-phase AC induction motor control development
platform at variable line voltage 115/230V AC (range
-15%.....+10%)
•
Control technique incorporates
– Speed control loop with inner q axis stator current loop
– Rotor flux control loop with inner d axis stator current loop
– Field-weakening technique
– Stator phase current measurement method
– AC induction flux model calculation in α, β - stationary
reference frame
– Forward Clarke and inverse Park transformations
– d-q establishment - transformation from the stationary
reference frame to the rotating reference frame
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Description
For More Information On This Product,
Go to: www.freescale.com
47
Freescale Semiconductor, Inc.
System Description
– DC-Bus ripple elimination
Freescale Semiconductor, Inc...
– Space Vector Modulation (SVM)
•
Motor mode
•
Generator mode
•
DC-Bus brake
•
Minimum speed of 50 rpm
•
Maximum speed of 2500 rpm at input power line 230V AC
•
Maximum speed 1100 rpm at input power line 115V AC
•
Manual interface (RUN/STOP switch, UP/DOWN push buttons
control, LED indication)
•
Power stage board identification
•
Overvoltage, undervoltage, overcurrent and overheating fault
protection
•
PC remote control interface (Start/Stop Motor push buttons, speed
set-up)
•
PC master software remote monitor
– PC master software monitor interface (required speed, actual
motor speed, PC master software mode, START
MOTOR/STOP MOTOR controls, drive fault status, dc-bus
voltage level, identified power stage boards, drive status,
mains detection)
– PC master software speed scope (observes actual and desired
speed)
Designer Reference Manual
48
DRM023 — Rev 0
System Description
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Description
Application Description
4.3 Application Description
The vector control algorithm is calculated on Motorola DSP56F805.
According to the user-required inputs, measured and calculated signals,
the algorithm generates 3-phase PWM signals for an AC induction motor
inverter.
Freescale Semiconductor, Inc...
The block diagram of the ACIM control algorithm is shown in Figure 4-1,
which describes the structure of the implemented vector control
algorithm (basic blocks and control signals).
The system incorporates the following hardware components:
•
3-phase AC induction motor with load coupled on the motor shaft
•
3-phase AC/BLDC high-voltage power stage
•
DSP56F805EVM
•
ECOPTINL, In-line optoisolation box, which is connected between
the host computer and the DSP56F80xEVM
The drive can be controlled in two different operating modes:
•
In the manual operating mode, the required speed is set by
UP/DOWN push buttons and the drive is started and stopped by
the RUN/STOP switch on the EVM board
•
In the PC remote control operating mode, the required speed is
set by the PC master software bar graph and the drive is started
and stopped by the START MOTOR and STOP MOTOR controls
Measured quantities:
•
DC-Bus voltage
•
Phase currents (Phase A, Phase B, Phase C)
•
Power module temperature
•
Rotor speed
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Description
For More Information On This Product,
Go to: www.freescale.com
49
Freescale Semiconductor, Inc.
System Description
Freescale Semiconductor, Inc...
The faults used for drive protection:
•
“Overvoltage”
•
“Undervoltage”
•
“Overcurrent”
•
“Overheating”
•
“Mains out of range”
•
“Wrong hardware”
•
“Overload”
Designer Reference Manual
50
DRM023 — Rev 0
System Description
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
DRM023 — Rev 0
System Description
For More Information On This Product,
Go to: www.freescale.com
Field
Weakening
Controller
Motorola DSP56F805
DSP56F80x
Us_q
Us_d
Us_req
Flux
Psi_Rd
Controller
Omega_atual_mech
Omega_actual_mech
PsiR_d
Is_q
Is_d
OmegaField
Is_q_Req
DC
Forward Park
Transformation
alpha,beta->d,q
Current d
Controller
Current q
Controller
Fault Protection
Application
Application
Control
Control
Faults
PWM
START
STOP
Line AC
GPIO
GPIO
Speed
Controller
Omega_Req
SCI
SCI
UP DOWN
Us_q
Us_d
PC master
software
AC
Decoupling
PsiR
Rotor Flux
Estimation
alpha,beta
Is_alpha
Is_beta
sin_PsiR
cos _PsiR
sin_PsiR
cos_PsiR
Us_beta
Us_beta
DC-bus
DC-bus
ripple
Ripple
compensation
Space
Vector
Modulation
PWM
Is_c_comp
Is_b_comp
Is_a_comp
Position
&
Speed
Sensing
Omega_actual_mech
Omega_atual_mech
Current
Sensing
Processing
Is_a
Is_b
Is_c
Quad
Timer
Optical
Encoder
ACIM
LOAD
3-Phase AC BLDC
3High Voltage Power Stage
ISa ISb ISc
ADC
Filter
U_dcb
Sector
Temperature
Forward Clark
Transformation
a,b,c ->alpha,beta
Us_alpha
Us_alpha
Us_alpha_comp
Us_beta_comp
Dutycycle a
Dutycycle b
Dutycycle c
PWM
U_Dc
U
DC_Bus bus
Inverse
InversePark
Park
Transformation
Transformation
->alpha,beta
d,q
d,q->alpha,beta
Break
Control
GPIO
U_dcb
(Back-EMFFeedforward)
feedforward)
(Back-EMF
MOTOROLA
6
Freescale Semiconductor, Inc...
Freescale Semiconductor, Inc.
System Description
Application Description
Figure 4-1. AC Induction Motor Vector Control Drive Structure
Designer Reference Manual
51
Freescale Semiconductor, Inc.
System Description
4.3.1 Control Process
Freescale Semiconductor, Inc...
After reset, the drive is in the INIT state and in the manual operation
mode. When the RUN/STOP switch is detected in the stop position and
there are no faults pending, the INIT state is changed to the STOP state.
Otherwise, the drive waits in the INIT state. If a fault occurs, it goes to
the FAULT state. In the INIT and STOP states, the operating mode can
be changed from the PC master software. In the manual operating
mode, the application is controlled by the RUN/STOP switch and
UP/DOWN push buttons; in the PC remote-control mode, the application
is controlled by the PC master software.
When the start command is accepted (from the RUN/STOP switch or the
PC master software command), the STOP state is changed to the RUN
state. The required speed is then calculated from the UP/DOWN push
buttons or PC master software commands, if in PC remote control mode.
The required speed is the input into the acceleration/deceleration ramp
and the output is used as a reference command for the speed controller.
The difference between the actual speed and the required speed
generates a speed error. Based on the error, the speed controller
generates an Is_q_Req current which corresponds to the torque
component. The second component of the stator current Is_d_Req,
which corresponds to the rotor flux, is given by the flux controller. The
field-weakening algorithm generates the required rotor flux, which is
compared to the calculated rotor flux from the AC induction flux model
calculation algorithm. The difference between the required rotor flux and
calculated rotor flux generates a flux error. Based on the flux error, the
flux controller generates the required Is_d_Req stator current.
Simultaneously, the stator currents Is_a, Is_b and Is_c (3-phase system)
are measured and transformed to the stationary reference frame α, β
(2-phase system) and to the d-q rotating reference frame consecutively.
The decoupling algorithm generates Us_q and Us_d voltages (d-q
rotating reference frame). The Us_q and Us_d voltages are transformed
back to the stationary reference frame α, β. The space vector modulation
then generates the 3-phase voltage system, which is applied to the
motor.
Designer Reference Manual
52
DRM023 — Rev 0
System Description
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Description
Application Description
Freescale Semiconductor, Inc...
4.3.2 Drive Protection
The dc-bus voltage, dc-bus current and power stage temperature are
measured during the control process. They are used for the overvoltage,
undervoltage, overcurrent and overheating protection of the drive. The
undervoltage and the overheating protection is performed by software.
The overcurrent and the overvoltage fault signals utilize fault inputs of
the DSP controlled by hardware. The power stage is identified via board
identification. If correct boards are not identified, the "Wrong hardware"
fault disables drive operation. Line voltage is measured during
application initialization. According to the detected voltage level, the
115VAC or 230VAC mains is recognized. If the mains is out of the
-15%.... +10% range, the “Mains out of range” fault is set, and drive
operation is disabled.
If any of the mentioned faults occur, the motor control PWM outputs are
disabled in order to protect the drive and the application enters the
FAULT state. The FAULT state can be left only when the fault conditions
disappear and the RUN/STOP switch is moved to the STOP position (in
PC remote control mode by PC master software).
4.3.3 Indication of the Application States
If the application is running and motor spinning is disabled (i.e., the
system is ready), the green user LED blinks at a 2Hz frequency (slower).
When motor spinning is enabled, the green user LED is turned on and
the actual state of the PWM outputs is indicated by PWM output LEDs.
If any fault occurs (overcurrent, overvoltage, undervoltage, mains out of
range, overheating or wrong hardware) the green user LED blinks at an
8Hz frequency (faster). The PC master software control page shows the
identified faults. The faults can be handled by switching the RUN/STOP
switch to STOP in manual operating mode or bypushing the START
MOTOR/STOP MOTOR buttons to the STOP MOTOR state in PC
remote control mode to acknowledge the fault state. Meanwhile, the
“Mains out of range” and “Wrong hardware” faults can be exited only with
an application reset. It is strongly recommended that the user inspect the
entire application to locate the source of the fault before restart.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Description
For More Information On This Product,
Go to: www.freescale.com
53
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
System Description
Designer Reference Manual
54
DRM023 — Rev 0
System Description
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 5. Hardware Design
Freescale Semiconductor, Inc...
5.1 Contents
5.2
System Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.3
DSP56F805EVM Controller Board . . . . . . . . . . . . . . . . . . . . . . 57
5.4
3-Phase AC BLDC High Voltage Power Stage. . . . . . . . . . . . . 59
5.5
In-Line Optoisolation Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.6
Hardware Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2 System Configuration
The application is designed to drive the 3-phase AC motor. It consists of
the following modules (see Figure 5-1):
•
DSP56F805EVM Control Board
•
3 ph AC/BLDC High Voltage Power Stage
•
In-Line Optoisolation Box
•
3-phase AC Induction Motor
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
55
Freescale Semiconductor, Inc.
3ph AC/BLDC
High-Voltage
Power Stage
Freescale Semiconductor, Inc...
Hardware Design
Figure 5-1. 3-Phase AC Induction Motor High-Voltage
Platform Configuration
Designer Reference Manual
56
DRM023 — Rev 0
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Hardware Design
DSP56F805EVM Controller Board
5.3 DSP56F805EVM Controller Board
The DSP56F805EVM is used to demonstrate the abilities of the
DSP56F805 and to provide a hardware tool allowing the development of
applications that use the DSP56F805.
Freescale Semiconductor, Inc...
The DSP56F805EVM is an evaluation module board that includes a
DSP56F805 part, peripheral expansion connectors, external memory
and a CAN interface. The expansion connectors are for signal
monitoring and user feature expandability.
The DSP56F805EVM is designed for the following purposes:
•
Allowing new users to become familiar with the features of the
56800 architecture. The tools and examples provided with the
DSP56F805EVM facilitate evaluation of the feature set and the
benefits of the family.
•
Serving as a platform for real-time software development. The tool
suite enables the user to develop and simulate routines, download
the software to on-chip or on-board RAM, run it, and debug it using
a debugger via the JTAG/OnCETM port. The breakpoint features of
the OnCE port enable the user to easily specify complex break
conditions and to execute user-developed software at full-speed,
until the break conditions are satisfied. The ability to examine and
modify all user accessible registers, memory and peripherals
through the OnCE port greatly facilitates the task of the developer.
•
Serving as a platform for hardware development. The hardware
platform enables the user to connect external hardware
peripherals. The on-board peripherals can be disabled, providing
the user with the ability to reassign any and all of the DSP's
peripherals. The OnCE port's unobtrusive design means that all
of the memory on the board and on the DSP chip are available to
the user.
The DSP56F805EVM provides the features necessary for a user to write
and debug software, demonstrate the functionality of that software and
interface with the customer's application-specific device(s). The
DSP56F805EVM is flexible enough to allow a user to fully exploit the
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
57
Freescale Semiconductor, Inc.
Hardware Design
DSP56F805's features to optimize the performance of their product, as
shown in Figure 5-2.
DSP56F805
Freescale Semiconductor, Inc...
RESET
LOGIC
RESET
MODE/IRQ
LOGIC
MODE/IRQ
Program Memory
64Kx16-bit
Address,
Data &
Control
SPI
SCI #0
RS-232
Interface
SCI #1
Peripheral
Expansion
Connector(s)
TIMER
Debug LEDs
PWM LEDs
Over V Sense
GPIO
Over I Sense
Memory
Expansion
Connector(s)
Zero Crossing
Detect
JTAG
Connector
DSub
25-Pin
DSub
9-Pin
CAN Interface
CAN
Data Memory
64Kx16-bit
4-Channel
10-bit D/A
JTAG/OnCE
PWM #1
A/D
Parallel
JTAG
Interface
PWM #2
Low Freq
Crystal
XTAL/EXTAL
3.3 V & GND
Primary
UNI-3
Secondary
UNI-3
Power Supply
3.3V, 5.0V & 3.3VA
Figure 5-2. Block Diagram of the DSP56F805EVM
Designer Reference Manual
58
DRM023 — Rev 0
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Hardware Design
3-Phase AC BLDC High Voltage Power Stage
5.4 3-Phase AC BLDC High Voltage Power Stage
Freescale Semiconductor, Inc...
Motorola’s embedded motion control series high-voltage (HV) ac power
stage is a 180 watt (one-fourth horsepower), 3-phase power stage that
will operate off of dc input voltages from 140 to 230 volts and ac line
voltages from 100 to 240 volts. In combination with one of the embedded
motion control series control boards and an optoisolation board, it
provides a software development platform that allows algorithms to be
written and tested without the need to design and build a power stage. It
supports a wide variety of algorithms for both ac induction and brushless
dc (BLDC) motors.
Input connections are made via 40-pin ribbon cable connector J14.
Power connections to the motor are made on output connector J13.
Phase A, phase B, and phase C are labeled PH_A, Ph_B, and Ph_C on
the board. Power requirements are met with a single external 140 to 230
volt dc power supply or an ac line voltage. Either input is supplied
through connector J11. Current measuring circuitry is set up for 2.93
amps full scale. Both bus and phase leg currents are measured. A
cycle-by-cycle over-current trip point is set at 2.69 amps.
The high-voltage ac power stage has both a printed circuit board and a
power substrate. The printed circuit board contains IGBT gate drive
circuits, analog signal conditioning, low-voltage power supplies, power
factor control circuitry, and some of the large, passive, power
components. All of the power electronics which need to dissipate heat
are mounted on the power substrate. This substrate includes the power
IGBTs, brake resistors, current sensing resistors, a power factor
correction MOSFET, and temperature sensing diodes. Figure 5-3.
shows a block diagram.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
59
Freescale Semiconductor, Inc.
Hardware Design
HV POWER
INPUT
SWITCH MODE
POWER SUPPLY
3-PHASE IGBT
POWER MODULE
SIGNALS
TO/FROM
CONTROL
BOARD
Freescale Semiconductor, Inc...
PFC CONTROL
dc BUS BRAKE
3-PHASE AC
TO
MOTOR
GATE
DRIVERS
PHASE CURRENT
PHASE VOLTAGE
BUS CURRENT
BUS VOLTAGE
MONITOR
BOARD
ID BLOCK
ZERO CROSS
BACK-EMF SENSE
Figure 5-3. 3-Phase AC High Voltage Power Stage
The electrical characteristics in Table 5-1 apply to operation at 25°C with
a 160V dc power supply voltage.
Designer Reference Manual
60
DRM023 — Rev 0
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Hardware Design
In-Line Optoisolation Box
Table 5-1. Electrical Characteristics of Power Stage
Freescale Semiconductor, Inc...
Characteristic
Symbol
Min
Typ
Max
Units
dc input voltage
Vdc
140
160
230
V
ac input voltage
Vac
100
208
240
V
Quiescent current
ICC
—
70
—
mA
Min logic 1 input voltage
VIH
2.0
—
—
V
Max logic 0 input voltage
VIL
—
—
0.8
V
Input resistance
RIn
—
10 kΩ
—
Analog output range
VOut
0
—
3.3
V
Bus current sense voltage
ISense
—
563
—
mV/A
Bus voltage sense voltage
VBus
—
8.09
—
mV/V
Peak output current
IPK
—
—
2.8
A
Brake resistor dissipation
(continuous)
PBK
—
—
50
W
Brake resistor dissipation
(15 sec pk)
PBK(Pk)
—
—
100
W
Pdiss
—
—
85
W
Total power dissipation
5.5 In-Line Optoisolation Box
Motorola’s embedded motion control series In-Line Optoisolation box
links JTAG and RS-232 signals from a workstation to a controller
connected to a high-voltage power stage. The box isolates the
workstation, and peripherals that may be attached to the workstation,
from dangerous voltages that are present on the power stage. The
In-Line Optoisolation box’s galvanic isolation barrier also isolates signals
from high noise in the power stage and provides a noise-robust systems
architecture.
Signal translation is virtually one-for-one. JTAG signals are passed from
workstation to controller and vice-versa via high-speed, high dv/dt, logic
isolators. RS-232 signals are passed via high-speed optocouplers.
Delay times are typically 27ns for JTAG signals, and 250ns for RS-232
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
61
Freescale Semiconductor, Inc.
Hardware Design
signals. Grounds are separated by the optocouplers’ galvanic isolation
barrier.
Freescale Semiconductor, Inc...
The In-Line Optoisolation box is connected to the target board JTAG
connector by the 14-line flat ribbon flex cable. There are two options on
the workstation side: connection by the 25-line cable to the parallel port
or by the 14-line flat ribbon flex to the Host/Target Interface.
To create isolation of the RS-232 interface, the In-Line Optoisolation box
is connected to the target board by the 9-line cable as well as to the
workstation.
A single external 12V dc power supply meets the power requirements for
the In-Line Optoisolation Box. On-board power supply consists of
isolated DC-to-DC converter from TRACO for the target side power
supply, and linear voltage regulators for the 5V and 3.3V power supply
of the workstation side. Reverse input voltage protection is provided by
a rectifier bridge.
The electrical characteristics in Table 5-2 apply to operation at 25°C,
and a 12V dc power supply voltage.
Table 5-2. Electrical Characteristics of In-Line Optoisolation Box
Characteristic
Symbol
Min
Typ
Max
Units
VDC
10.8
12
13.2
V
Quiescent Current
ICC
—
80
—
mA
Min Logic 1 Input Voltage (JTAG)
VIH
2.0
—
—
V
LVT logic (3.3V)
Max Logic 0 Input Voltage (JTAG)
VIL
—
—
0.8
V
LVT logic (3.3V)
Max RS232 Mark Input Voltage
VM
—
—
-3.0
V
Min RS232 Space Input Voltage
VS
—
—
3.0
V
Max JTAG Clock Frequency
FTCK
—
—
4
MHz
JTAG Delay Time
tJDLY
—
27
—
ns
RS232 Delay Time
tRDLY
—
250
—
ns
Power Supply Voltage
Designer Reference Manual
62
Notes
DRM023 — Rev 0
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Hardware Design
Hardware Documentation
5.6 Hardware Documentation
All the system parts are supplied and documented according to the
following references:
•
U1 - Controller Board for DSP56F805:
– supplied as: DSP56F805EVM
Freescale Semiconductor, Inc...
– described in: DSP56F805EVMUM/D DSP Evaluation Module
Hardware User’s Manual
•
U2 - 3-phase AC/BLDC High Voltage Power Stage
– supplied in kit with In-Line Optoisolation Box as:
ECINLHIVACBLDC
– described in: MEMC3BLDCPSUM/D - 3-phase AC/BLDC
High Voltage Power Stage
•
U3 - In-Line Optoisolation Box
– supplied in kit with 3-phase AC/BLDC High Voltage Power
Stage as: ECINLHIVACBLDC, or separately as ECOPTINL
– described in: MEMCILOBUM/D - In-Line Optoisolation Box
WARNING:
The user must use the In-line Optoisolation Box during
development to avoid damage to the development equipment.
•
MB1 Motor-Brake AM40V + SG40N
– supplied as: ECMTRHIVAC
Detailed descriptions of individual boards can be found in
comprehensive User’s Manuals belonging to each board or on the
Motorola web pages. The User’s Manual incorporates the schematic of
the board, description of individual function blocks and a bill of materials.
An individual board can be ordered from Motorola as a standard product.
The AC induction motor-brake set incorporates a 3-phase AC induction
motor and attached BLDC motor brake. The AC induction motor has four
poles. The incremental position encoder is coupled to the motor shaft,
and position Hall sensors are mounted between motor and brake. They
allow sensing of the position if required by the control algorithm. Detailed
motor-brake specifications are listed in Table 5-3.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
63
Freescale Semiconductor, Inc.
Hardware Design
Table 5-3. Motor - Brake Specifications
Set Manufactured
EM Brno, Czech Republic
Freescale Semiconductor, Inc...
Motor Specification:
Brake Specification:
Position Encoder
eMotor Type:
AM40V
3-Phase AC Induction Motor
Pole-Number:
4
Nominal Speed:
1300 rpm
Nominal Voltage:
3 x 200 V
Nominal Current:
0.88 A
Brake Type:
SG40N
3-Phase BLDC Motor
Nominal Voltage:
3 x 27 V
Nominal Current:
2.6 A
Pole-Number:
6
Nominal Speed:
1500 rpm
Type:
Baumer Electric
BHK 16.05A 1024-12-5
Pulses per Revolution:
1024
Designer Reference Manual
64
DRM023 — Rev 0
Hardware Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 6. Software Design
Freescale Semiconductor, Inc...
6.1 Contents
6.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.3
Analog Value Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.4
Software Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
6.5
Control Algorithm Data Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.6
Application State Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.7
Speed Sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.8
Analog Sensing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.9
START/STOP Switch and Button Control. . . . . . . . . . . . . . . . 107
6.2 Introduction
This section describes the software design of the AC induction vector
control drive application. First, the numerical scaling in fixed-point
fractional arithmetic of the DSP is discussed. Then, the control software
is described in terms of:
•
Software Flowchart
•
Control Algorithm Data Flow
•
State Diagram
Finally, particular issues such as speed and current sensing are
explained. The aim of the chapter presented is to facilitate
understanding of the designed software.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
65
Freescale Semiconductor, Inc.
Software Design
6.3 Analog Value Scaling
The AC induction motor vector control application uses a fractional
representation for all real quantities, except time. The N-bit signed
fractional format is represented using 1.[N-1] format (1 sign bit, N-1
fractional bits). Signed fractional numbers (SF) lie in the following range:
Freescale Semiconductor, Inc...
– 1.0 ≤ SF ≤ +1.0 -2
–[ N – 1 ]
(EQ 6-1.)
For words and long-word signed fractions, the most negative number
that can be represented is -1.0, whose internal representation is $8000
and $80000000, respectively. The most positive word is $7FFF or 1.0 2-15, and the most positive long-word is $7FFFFFFF or 1.0 - 2-31
The following equation shows the relationship between a real and a
fractional representation:
Real Value
Fractional Value = -------------------------------------------------Real Quantity Range
(EQ 6-2.)
6.3.1 Voltage Scaling
Voltage quantities are scaled to the maximum measurable voltage,
which is dependent on the hardware. The relationship between real and
fractional representations of voltage quantities is:
u Real
u Frac = ----------u Max
(EQ 6-3.)
where:
uFrac
fractional representation of voltage quantities
[-]
uReal
real voltage quantities in physical units
[V]
uMax
maximum defined voltage used for scaling
in physical units
[V]
In the application, the uMaxvalue is the maximum measurable DC-bus
voltage:
uMax = 407 V
Designer Reference Manual
66
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Analog Value Scaling
Other application voltage variables are scaled in the same way
(u_dc_bus, u_dc_bus_filt, u_SAlphaBeta, u_SDQ_ref, u_SDQ, u_Sabc,
u_Samplitude, etc.).
6.3.2 Current Scaling
Freescale Semiconductor, Inc...
The current quantities are scaled to the maximum measurable current,
which is dependent on the hardware. The relationship between real and
fractional representation of current quantities is:
i Real
i Frac = --------i Max
(EQ 6-4.)
where:
iFrac
fractional representation of current quantities
[-]
iReal
real current quantities in physical units
[A]
iMax
maximum defined current used for scaling
in physical units
[A].
In the application, the iMax value is the maximum measurable current:
iMax = 5.86 A
Other application current variables are scaled in the same way
(i_Sabc_comp, i_SAlphaBeta, i_Sphase_max, i_SD_desired,
i_SQ_desired, etc.).
6.3.3 Flux Scaling
Magnetic flux quantities are scaled to the maximum motor flux, which is
dependent on the motor used. The maximum flux can be expressed as:
60 ⋅ 2 u nom
Ψ Max ≈ C sf ⋅ ---------------------- ⋅ ------------2 ⋅ π ⋅ 3 pp ⋅ ns
DRM023 — Rev 0
MOTOROLA
(EQ 6-5.)
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
67
Freescale Semiconductor, Inc.
Software Design
Freescale Semiconductor, Inc...
where:
ΨMax
maximum calculated flux value used for scaling in physical
units
[Vs]
unom
nominal line-to-line voltage of motors
[V]
ns
motor-synchronous speed dependent on
pair of poles
[rpm]
pp
number of pole pairs
[-]
Csf
safety margin constant
[-]
The relationship between real and fractional representation of flux
quantities is:
Ψ Real
Ψ Frac = -----------Ψ Max
(EQ 6-6.)
where:
ΨFrac
fractional representation of flux quantities
[-]
ΨReal
real flux quantities in physical units
[Vs]
In the application, the parameters for ΨMax calculation are:
unom = 200 V
ns = 1500 rpm
pp = 2
Csf = 1.92
The maximum motor flux value is then:
ΨMax = 1 Vs
Other application flux variables are scaled in the same way
(psi_RAlphaBeta, psi_RD_desired, etc.).
Designer Reference Manual
68
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Software Flowchart
6.3.4 Speed Scaling
Speed quantities are scaled to the defined maximum mechanical speed,
which is dependent on the drive. The relationship between real and
fractional representation of speed quantities is:
ω Real
ω Frac = -----------ω Max
(EQ 6-7.)
Freescale Semiconductor, Inc...
where:
ωFrac
fractional representation of speed quantities
[-]
ωReal
real speed quantities in physical units
[rpm]
ωMax
maximum defined speed used for scaling
in physical units
[rpm].
In the application, the ωMax value is defined as:
ωMax= 4000 rpm
Other speed variables are scaled in the same way (omega_reqPCM_mech,
omega_desired_mech, omega_required_mech, omega_reqMAX_mech,
omega_reqMIN_mech, omega_actual_mech).
6.4 Software Flowchart
The general software flowchart incorporates the main routine entered
from reset and interrupt states. The overview of the software flowchart is
shown in Figure 6-1.
After reset, the main routine provides initialization of the drive
parameters, the application and the DSP; it then enters an endless
background loop. The background loop contains the routines: Fault
Detection, Start/Stop Switch and Required Speed Scan, Brake Control
and Application State Machine.
The following interrupt service routines (ISRs) are utilized:
•
PWMA Fault ISR services faults invoked by external hardware
fault
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
69
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Software Design
•
ADC End of Scan ISR services ADC and provides the execution
of the fast control loop; the ADC is synchronized with the PWM
pulses. The PWM value registers are updated here. It is invoked
with a 125µs period.
•
Timer C, Channel 0 On Compare ISR provides the execution of
the slow control loop, LED indication processing, push button
processing and switch filtering; it is invoked with a 1000µs period.
•
SCI ISR services PC master software communication
•
IRQA ISR services the UP Push Button
•
IRQB ISR services the DOWN Push Button
6.4.1 Initialization
Initialization occurs after reset. The first phase of initialization of the DSP
peripherals is done through the appconfig.h file defines. The next phase
is done in the application code. The drive parameters are set, then the
application and DSP initializations are executed.
Initialization performed by the appconfig.h:
•
DSP56F80X chip revision is defined (A,B or D). It is not necessary
to define it for other revisions, since it is required only for
elimination of the offset and gain errors of the first DSP versions.
•
PWMA module is initialized
– Center-aligned complementary PWM mode, positive polarity
– Set PWM modulus: defines the PWM frequency as 16kHz
– Deadtime is set to 1µs
– Output pads are disabled
– PWM faults are enabled (fault interrupt requests are enabled
in the appliaction)
•
ADC module is initialized
– ADC is triggered simultaneously
– Conversion started by SYNC pulse
Designer Reference Manual
70
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Software Flowchart
– Associate interrupt service routine with ADC end of scan event
– Defines ADC samples
•
Timers defined to be used by the application
– Timer A channels 0, 1, 2, 3
– Timer C channels 0, 2
•
IRQA and IRQB interrupts are initialized
Freescale Semiconductor, Inc...
– Interrupt service routine is associated with the IRQA and IRQB
•
Interrupt priorities are set in descending order from highest to
lowest
– PWMA fault interrupt
– ADC end of scan interrupt
– Timer C channel 0 On Compare interrupt
– SCI interrupts
•
PC master software recorder is initialized.
The following drive parameters are set in the DriveParamSet routine:
•
The output voltage structure is initialized to zero volts
•
Parameters of the AC induction flux model are set
– Integration state variables are reset
– Motor-dependent constants are set
•
Parameters of the d-q establishment algorithm are set
– Rotor flux zero limit value is initialized
– Motor-dependent constants are set
•
Parameters of the decoupling algorithm are set
– Motor-dependent constants are set
•
Parameters of the torque- and flux-producing current components
controllers and speed, flux and field-weakening controllers are set
– Proportional and integral gain and their scaling constants are
set
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
71
Freescale Semiconductor, Inc.
Software Design
– Controller output limits are set
– Controller integral portion is reset to zero
•
Currents limitation algorithm parameter is set
– Maximum motor-current value is set
•
States of the application state machine are set as follows:
– Application state is set to INIT
Freescale Semiconductor, Inc...
– Substate of application RUN state is set to DE-EXCITATION
– Substate of application INIT state is set to BRANCH
•
Application operating mode is set to MANUAL
•
PrimaryCtrl
•
Start/Stop switch, switch filter and overload filter are initialized
bit in appInitControl control word is set
Designer Reference Manual
72
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Software Flowchart
ADC End of Scan Interrupt
- synchronized with PWM
reload
Reset
SCI Receiver
Interrupt
Drive Parameters Settings
ADC End of Scan ISR
SCI Receirver ISR
Done
Done
Freescale Semiconductor, Inc...
Application and DSP
Initialization
SCI Transmitter
Interrupt
Background Loop
SCI Transmitter ISR
Timer C Channel 0
On Compare
Interrupt
Done
Quadtimer C Channel 0 ISR
IRQA Interrupt
Done
IRQA ISR
Done
PWMA Fault
Interrupt
IRQB Interrupt
IRQB ISR
PWMA Fault ISR
Done
Done
Figure 6-1. Software Flowchart Overview
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
73
Freescale Semiconductor, Inc.
Software Design
After initialization of the drive parameters is completed, the application
and DSP initialization routine is executed:
•
ADC channels are assigned to the sensed quantities
– ADC channel 2 to sample 0 - Phase current A
– ADC channel 3 to sample 1 - Phase current B
– ADC channel 4 to sample 2 - Phase current C
– ADC channel 0 to sample 4 - DC-Bus voltage
Freescale Semiconductor, Inc...
– ADC channel 5 to sample 4,5,6,7 - power module temperature
•
Quad Timer C channel 0 driver initialization (slow control loop time
base)
– Count Up
– Prescaler 2
– Interrupt On Compare (compare value set to 1000µs period)
– Associate interrupt service routine with On Compare event
•
Quad Timer C channel 2 driver initialization (ADC and PWM
synchronization)
– Count Up
– Prescaler 1
– Started by PWM reload signal
•
Switch control is initialized
•
PWMA fault interrupt service routine is initialized
•
Brake control is initialized
•
Power stage board identification
– Identifies hardware set connected to the EVM board
•
Speed and position measurement is initialized
– Quad Timer A channels 0, 1, 2, 3 initialized for speed and
position measurement. The position measurement (Quad
Timer A channel 1) is not applied in the application.
– Speed measurement-specific variables are initialized
Designer Reference Manual
74
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Software Flowchart
•
Status LEDs control is initialized
•
Quad Timer C channel 0 is enabled
•
Push button control is initialized
•
Interrupts are enabled
6.4.2 Background Loop
Freescale Semiconductor, Inc...
After initialization, the background loop is entered. It runs in an endless
loop and is asynchronously interrupted by the system interrupt service
routines. The processes executed in the background are:
•
Fault Detection
– Fault dc-bus overvoltage and overcurrent pins are scanned for
a fault signal occurrence
– Measured dc-bus voltage in u_dc_bus_filt is checked for
undervoltage
– Measured power module temperature in temperature_filt is
checked for overheating
– Mains detection fault flag is checked
– Hardware identification fault flag is checked
– Drive overload fault is detected
– When a fault occurs, the appropriate bits in appFaultStatus
and appFaultPending words are set. The FaultCtrl bit in
appControl is set to change application state to FAULT.
•
Start/Stop Switch and Required Speed Scan
– Based on the application operating mode, the process selects
whether the required speed and start/stop command are set
manually with the switches and buttons or by the PC master
software interface. The required speed is limited to maximum
and minimum values.
•
Brake Control Background
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
75
Freescale Semiconductor, Inc.
Software Design
– Sets the generator mode flag if the drive is running in the
generator mode. If the drive is in motor mode, the brake switch
is turned off.
•
Application State Machine
Freescale Semiconductor, Inc...
– Ensures the execution of the active application state and the
transition between the states, according to bits in the
application control word.
6.4.3 ADC End of Scan ISR
The ADC End of Scan ISR is the most critical and the routine most
demanding of the processor's time. Most of the AC induction motor
vector control processes must be linked to this ISR.
The Analog-to-Digital Converter is initiated synchronously with a PWM
reload pulse. It simultaneously scans phase currents, phase voltage and
temperature. When the conversion is finalized, the ADC End of Scan
ISR is called. The PWM reload pulse frequency is set to every second
PWM opportunity. For the PWM frequency of 16kHz, this means the
PWM reload pulse frequency is 8kHz, which corresponds to the 125µs
ADC End of Scan ISR period.
The routine calls control functions according to application state. If the
application state is RUN, the FastControlLoopEnabled function is called;
otherwise, the FastControlLoopDisabled function is called. The ADC
End of Scan diagram is shown in Figure 6-2.
The FastControlLoopEnabled function provides the following services
and calculations:
•
Sets a compare value for QuadTtimer C channel 2, defining the
ADC start, needed for phase current measurement
•
Calls the analog-sensing and correction function
•
Calls the forward Clarke transformation
•
Calls the rotor flux model calculation
•
Calls the d-q system establishment function
•
Calls isd and isq current-component controllers
Designer Reference Manual
76
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Software Design
Software Flowchart
•
Calls the decoupling algorithm
•
Calls the inverse Park transformation
•
Calls the dc-bus ripple elimination function
•
Calls the space vector modulation function
•
Calls the analog-sensing correction reconfiguration function
•
Passes calculated duty cycle ratios to the PWM driver
•
Calls the brake control function
The FastControlLoopDisabled function is called in the application states
when the vector control algorithm is not executed. The function services
only the analog-sensing correction process, space vector modulation
algorithm and PWM generation. The drive control variables are set to
their initial values.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
77
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Software Design
Fast Control Loop Disabled
Fast Control Loop Enabled
Analog-Sensing
Correction
Analog-Sensing
Correction
Drive Initialization
Forward Clarke
Transformation
Space Vector
Modulation
Rotor Flux
Model
Analog-Sensing
Reconfiguration
d,q Establishment
Done
Current Loop Controllers
Decoupling
Inverse Park Transform
DC-Bus Ripple
Elimination
Space Vector
Modulation
Analog-Sensing
Reconfiguration
Done
Figure 6-2. ADC End of Scan ISR
Designer Reference Manual
78
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Software Flowchart
6.4.4 Quad Timer C, Channel 0, On Compare ISR
The routine calculates part of the vector control algorithm and handles
LED indication, button processing and switch filtering. It is called with a
1000µs period. The tasks provided by individual functions are:
Freescale Semiconductor, Inc...
•
Slow control loop is executed. It provides the part of vector control
algorithm calculations, which can be executed in a slower control
loop. The function SlowControlLoopEnabled is called.
– Reads the actual motor speed and handles the speed
measurement process
– Executes the speed acceleration/deceleration ramp algorithm
– Calculates the output stator voltage amplitude
– Field-weakening controller is called
– Rotor flux and speed controllers are called
– Current limit algorithm is called
•
LED indication process handles the LED indication of the
application state (INIT, RUN, STOP, FAULT)
•
Button processing handles the UP/DOWN button debounce
counter
•
Switch-filter processing handles the Start/Stop switch filtering
•
PC master software recorder routine is called
6.4.5 PWMA Fault ISR
The PWMA Fault ISR is the highest priority interrupt implemented in the
software. In the case of dc-bus, overcurrent or overvoltage fault
detection, the external hardware circuit generates a fault signal that is
detected on the fault input pin of the DSP’s PWMA module. The signal
disables PWM outputs in order to protect the power stage and generates
a fault interrupt where the fault condition is handled. The routine sets the
records of the corresponding fault source to the fault status word and
sets the fault bit in the application control word.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
79
Freescale Semiconductor, Inc.
Software Design
6.4.6 SCI ISR
The interrupt handler provides SCI communication and PC master
software service routines. These routines are fully independent of the
motor control tasks.
6.4.7 IRQA and IRQB ISR
Freescale Semiconductor, Inc...
Push button interrupt handlers take care of the push button service. The
UpButton ISR sets the UP button flag and the DownButton ISR sets the
DOWN button flag. The desired speed is incremented/decremented
according to the debounced UP/DOWN button flag.
Designer Reference Manual
80
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Software Flowchart
PWM A Fault Interrupt
PWM Output Pads Disable
Quadtimer C Channel 0
On Compare Interrupt
Fault Source Determination
(over-current and over-voltage)
Freescale Semiconductor, Inc...
Slow Control Loop
Fault Flag Asserted
LED Indication
Processing
PWM A Fault Clear
Button Processing
Done
Switch Filtering
Done
IRQA Interrupt
SCI Reciever
Interrupt
Increment Required Speed
(manual operating mode)
PC Master
(Independent of application)
Done
Done
IRQB Interrupt
SCI Transmitter
Interrupt
Decrement Required Speed
(manual operating mode)
PC Master
(Independent of application)
Done
Done
Figure 6-3. Application Interrupt Service Routines
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
81
Freescale Semiconductor, Inc.
Software Design
6.5 Control Algorithm Data Flow
The 3-phase AC induction motor vector control algorithm data flow is
described in Figure 6-4, Figure 6-5 and Figure 6-6.
The individual processes are described in detail in the following sections.
Freescale Semiconductor, Inc...
6.5.1 Analog-Sensing Corrections
The analog-sensing process handles sensing, filtering and correction of
analog variables (phase currents, temperature, dc-bus voltage).
6.5.2 Speed Measurement
The speed measurement process provides the mechanical angular
speed, omega_actual_mech.
6.5.3 Forward Clarke Transformation
The forward Clarke transformation transforms the 3-phase system a,b,c
to a 2-phase orthogonal reference frame α,β. For theoretical
background, see Section 3.4.
6.5.4 Rotor Flux Model
The rotor flux model process calculates the rotor magnetic flux of the AC
induction motor in the (α, β) 2-phase stationary reference frame. The flux
model utilizes monitored rotor speed and stator voltages and currents.
For theoretical background, see Section 3.6.
6.5.5 d-q System Establishment
This process transforms quantities from an (α, β) 2-phase reference
frame attached to the stator into a d-q-) 2-phase reference frame rotating
with the magnetic flux angular speed. The rotor magnetic flux space
vector is put into the d axis of the coordinate system. The function
calculates the magnitude of the rotor magnetic flux and the sine and
Designer Reference Manual
82
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Control Algorithm Data Flow
cosine of its position angle theta_field in the (α, β) coordinate system.
For theoretical background, see Section 3.5.
6.5.6 Decoupling
Freescale Semiconductor, Inc...
The decoupling process calculates the decoupling rotational voltage
components of the AC induction machine in the d-q coordinate system
and adds them to the outputs of the currents controllers which control the
isd and isq components. It yields to the d and q output stator voltage
components. The output voltage vector is limited to the desired limits.
For theoretical background, see Section 3.7.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
83
Freescale Semiconductor, Inc.
Software Design
ADC
Quadrature
. Encoder .
Analog Sensing
Corrections
Speed Measurement
u_Ssector
3rd page
i_Sabc_comp
Freescale Semiconductor, Inc...
temperature_filt
Forward Clarke
Transform
i_SAlphaBeta
omega_actual_mech
u_dc_bus_filt
3rd page
u_SAlphaBeta
fluxModelState
Rotor-Flux Model
psi_RAlphaBeta
dqEstablState
d,q System Establishment
2nd page
theta_field
dqData
u_SDQ_ref
decouplingState
Decoupling
u_SDQ
Figure 6-4. Vector Control Application Data Flow
Designer Reference Manual
84
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Control Algorithm Data Flow
3rd page
u_Sfieldweak
u_Samplitude
fieldweakControllerParams
Fieldweakening
Controller
omega_required_mech
Speed Ramp
Freescale Semiconductor, Inc...
1st page
1st page
DQdata->psi_RD
psi_RD_desired
psi_RD_controllerParams
Rotor-Flux Controller
omega_desired_mech
omega_actual_mech
Speed Controller
i_Sphase_max
i_SD_desired
speed_controllerParams
i_SQ_desired
1st page
1st page
Isq limitation
algorithm
dqData.i_Sd
dqData.i_Sq
i_SD_controllerParams
i_SQ_controllerParams
Isd Controller
Isq Controller
u_SDQ_ref.d_axis
u_SDQ_ref.q_axis
Figure 6-5. Controllers Data Flow Chart
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
85
Freescale Semiconductor, Inc.
Software Design
1st page
1st page
u_SDQ
theta_field
Inverse Park Transform
Freescale Semiconductor, Inc...
1st page
u_dc_bus_filt
u_SAlphaBeta
Voltage Amplitude
Calculation
DC-Bus Ripple Correction
u_Samplitude
u_SAlphaBeta_RipElim
Space-Vector Modulation
u_Sabc
u_Ssector
1st page
1st page
omega_actual_mech
dqData.omega_field
driveStatus.B.BrakeONFlag
1st page
Brake Control Background
u_dc_bus_off_brake
u_dc_bus_filt
driveStatus.B.GeneratorModeFlag
u_dc_bus_on_brake
Brake Control
Figure 6-6. Space Vector Modulation and Brake Control Data Flow
Designer Reference Manual
86
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Control Algorithm Data Flow
6.5.7 Speed Ramp
This process calculates the desired speed (omega_desired_mech), based
on the required speed according to the acceleration/deceleration ramp.
The required speed (omega_required_mech) is determined either by the
push buttons, if in manual mode, or by PC master software, if in PC
remote control mode.
Freescale Semiconductor, Inc...
6.5.8 Speed Controller
This process calculates the desired isq stator current component
(i_SQ_desired) according to the speed error, which is the difference
between the actual and desired speeds. The PI controller is
implemented.
6.5.9 Isq Controller
This process calculates the linear portion of the stator voltage space
vector q component (u_SDQ_ref.q_axis) based on the isq stator current
component error, which is the difference between the actual and desired
isq stator current components. The PI controller is implemented.
6.5.10 Field-Weakening Controller
The field-weakening process provides control of the desired rotor flux
(psi_RD_desired) in order to achieve a higher motor speed than nominal.
It compares the actual output motor stator-voltage amplitude with
nominal field-weakening voltage; the desired rotor flux is set based on
the calculated error.
6.5.11 Flux Controller
This process calculates the desired isd stator current component
(i_SD_desired) according to rotor flux error, which is the difference
between the actual and desired rotor flux. The PI controller is
implemented.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
87
Freescale Semiconductor, Inc.
Software Design
6.5.12 Isd Controller
This process calculates the linear portion of the stator voltage space
vector d component (u_SDQ_ref.d_axis), based on the isd stator current
component error, which is the difference between the actual and desired
isd stator current components. The PI controller is implemented.
Freescale Semiconductor, Inc...
6.5.13 Inverse Park Transformation
The Inverse Park Transformation process converts stator voltage space
vector components from the rotating orthogonal coordinate system (d-q)
attached to the rotor magnetic flux to the stationary orthogonal
coordinate system (α,β) attached to the stator. For theoretical
background, see Section 3.5.
6.5.14 DC-Bus Ripple Elimination
This process provides for the elimination of the voltage ripple on the
dc-bus. It compensates an amplitude of the direct- α and the
quadrature- β components of the stator reference voltage vector US for
imperfections in the dc-bus voltage.
6.5.15 Space Vector Modulation
This process directly transforms the stator voltage space vector from the
α,β coordinate system to pulse width modulation (PWM) signals (duty
cycle values). The duty cycle ratios are then passed to the PWM module
in the u_Sabc structure. For theoretical background, see Section 3.8.
6.5.16 Voltage Amplitude Calculation
This process provides a calculation of the actual stator voltage space
vector magnitude from the d-q components of the stator voltage. The
actual stator voltage amplitude is used in field-weakening. It is the value
controlled by the field-weakening controller.
Designer Reference Manual
88
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Control Algorithm Data Flow
6.5.17 Brake Control Background
This process is executed in the background. It sets the generator mode
flag if the drive is running in generator mode. If the drive is in motor
mode, the generator mode flag is cleared. In motor mode, if the brake-on
flag is set, the brake switch is turned off and the brake-on flag is cleared.
6.5.18 Brake Control
Freescale Semiconductor, Inc...
This process is executed in the ADC End of Scan ISR. If the generator
mode flag is set, switching of the brake switch is enabled. The brake
switch is turned on if the dc-bus voltage is higher than
u_dc_bus_on_brake and turned off if it is lower than u_dc_bus_off_brake.
The brake-on flag is set if the switch is on and cleared if it is off.
NOTE:
Constants of controllers were designed using standard control theory in
a continuous time domain. The step responses of the controlled system
measured by the PC master software were used to investigate system
parameters. The least-square method, programmed in Matlab, identified
the respective system parameters in the Laplace domain. The
parameters were designed using standard Matlab functions, such as the
Bode plot of frequency response, Nyquist plot, step response, etc. The
results in the continuous time domain were then transformed to the
discrete time domain for DSP usage. In the application, the controller
parameters were tuned slightly.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
89
Freescale Semiconductor, Inc.
Software Design
6.6 Application State Diagram
The processes described above are implemented in the state machine,
as illustrated in Figure 6-7. The state machine provides transitions
between the states INIT, STOP, RUN, FAULT.
Freescale Semiconductor, Inc...
Application Statemachine Input
INIT State
InitDoneCtrl=1
FaultClearCtrl=1
OmChangeCtrl=1
STOP State
FaultCtrl=1
FaultCtrl=1
StartStopCtrl=0
FAULT State
StartStopCtrl=1
RUN State
FaultCtrl=1
Figure 6-7. Application State Diagram
6.6.1 Application State - INIT
After RESET, the application enters the INIT state, which provides DSP
and application initialization. In this state, the drive is disabled and the
Designer Reference Manual
90
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Application State Diagram
Freescale Semiconductor, Inc...
motor cannot be started. The INIT state is divided into three substates
which handle the different phases of the INIT state. The substates of the
INIT state are illustrated in Figure 6-8. The tasks provided by the INIT
substates are:
•
The BRANCH substate decides whether or not the primary
initialization is executed. It is entered any time there is a transition
from any other state to the INIT state. It is entered just once after
the INIT state is set. It calls the transition function to either the
PRIMARY or OPERATING MODE substates.
•
The PRIMARY substate provides the primary initialization of the
DSP and the application. It is entered from the BRANCH substate
after the application is reset or after a transition from a FAULT to
an INIT application state. In the transition from the BRANCH to the
PRIMARY substate, analog-sensing correction initialization is
started. After the initialization is finished, mains detection is
executed and the state is changed to the OPERATING MODE
substate.
•
The OPERATING MODE substate handles the operating mode
change logic. It is entered from the BRANCH or PRIMARY
substates and sets the actual operating mode (MANUAL or
PC_MASTER).This state can be exited only if the RUN/STOP
switch is in the stop position and the application transits to the
STOP state. If the switch is in the start position, the application
remains in the INIT state; it serves as protection against start after
reset if the RUN/STOP switch is in the start position.
If any fault is detected, the application transits to the FAULT state
(protection against fault).
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
91
Freescale Semiconductor, Inc.
Software Design
Application INIT State
from INIT State
Freescale Semiconductor, Inc...
BRANCH State
PrimaryCtrl=1
PRIMARY State
OpModeCtrl=1
OpModeCtrl=1
OPERATING MODE
State
to INIT State
Figure 6-8. INIT State Substates State Machine
6.6.2 Application State - STOP
The STOP state can be entered either from the INIT state or the RUN
state. The STOP state provides a motor standstill. In the STOP state, the
drive is disabled, PWM output pads are disabled and the
FastControlLoopDisabled function is called by the ADC End of Scan
ISR. The application waits for the start command.
When the application is in the STOP state, the operating mode can be
changed, either from manual mode to PC master software mode, or vice
versa. When the operating mode request is asserted, the application
always transits to the INIT state, where the mode is changed.
Designer Reference Manual
92
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Application State Diagram
If a fault is detected in the STOP state, the application enters the FAULT
state (fault protection). If no fault is present and the start command is
accepted, the application transits to the RUN state and the motor is
started.
6.6.3 Application State - RUN
Freescale Semiconductor, Inc...
The RUN state can be entered from the STOP state. In the RUN state,
the drive is enabled and the motor runs. The PWM output pads are
enabled and the FastControlLoopEnabled function is called within the
ADC End of Scan ISR. The RUN state is divided into three substates
which handle the different phases of the RUN state. The RUN substates’
state machine is illustrated in Figure 6-9. The tasks provided by the
RUN substates are:
•
The EXCITATION substate provides the excitation of the motor
during start-up. It is entered after the transition from the STOP
stat; motor excitation is then enabled. After the motor is excited to
the nominal rotor flux value, the substate is changed to
SPINNING. If the stop command is accepted before the motor is
fully excited, the substate is changed to DE-EXCITATION.
•
The SPINNING substate provides motor spin and
acceleration/deceleration. It is entered from the EXCITATION
substate. The required speed command is accepted, and the
motor spins at the required speed. If a stop command is accepted,
the substate changes to DE-EXCITATION.
•
The DE-EXCITATION substate provides de-excitation as the
motor is going to the STOP state. It is entered from the
EXCITATION or SPINNING substates. The speed command is
set to zero turns. When zero turns are reached, motor
de-excitation is executed. If the motor is deexcited, the application
transits to the STOP state.
If any fault in the RUN state is detected, the application enters the
FAULT state (fault protection).
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
93
Freescale Semiconductor, Inc.
Software Design
6.6.4 Application State - FAULT
The FAULT state can be entered from any state. In the FAULT state, the
drive is disabled and the application waits for the faults to be cleared.
Freescale Semiconductor, Inc...
When it detects that the fault has disappeared and the fault clear
command is accepted, the RUN/STOP switch is moved to the stop
position and the application transits to the INIT state. The “Wrong
hardware” and “Mains out of range” faults can only be cleared by reset.
Application RUN
State
from RUN State
EXCITATION State
SpinningCtrl=1
SPINNING State
DeexcitationCtrl=1
DeexcitationCtrl=1
DEEXCITATION State
to RUN State
Figure 6-9. RUN State Substates State Machine
Designer Reference Manual
94
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Speed Sensing
6.7 Speed Sensing
Freescale Semiconductor, Inc...
The Motorola DSP56F805 contains a quadrature decoder module. This
peripheral is commonly used for position and speed sensing. The
quadrature decoder position counter counts up/down at each edge of the
Phase A and Phase B signals according to their order; see Figure 6-10.
Figure 6-10. Quadrature Encoder Signals
In addition, the quadrature decoder input signals (Phase A, Phase B and
Index) are connected to Quad Timer module A. The quad timer module
contains four identical counter/timer groups. Due to the wide variability
of quad timer modules, it is possible to use this module to decode
quadrature encoder signals and to sense position and speed. The
application presented uses the quad timer approach for speed
measurement in order to be able to easily accommodate the software for
the DSP56F801, which does not have a quadrature decoder module.
The configuration of the quad timer module is shown in Figure 6-11. The
presented configuration is ready for position sensing handled by timer
A1. In the AC induction motor vector control application presented,
however, position sensing is not applied.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
95
Freescale Semiconductor, Inc.
PHASE B
INDEX
Quadrature Decoder
Position Counter
Primary Source
Primary Source
QTimer A0
cascade mode
PHASE A
Internal Digital Filter
Software Design
Secondary Source
QTimer A1
Secondary Source
Impulses Counter
Primary Source
QTimer A2
Freescale Semiconductor, Inc...
Secondary Source
CLK/2
Period Timer
Primary Source
QTimer A3
Secondary Source
CLK
Time Base
Primary Source
QTimer C0
not used
Secondary Source
Figure 6-11. Quad Timer Module A Configuration
6.7.1 Speed Sensing
There are two common ways to measure speed. The first method
measures the time between two following edges of the quadrature
encoder; the second method measures the position difference per
constant period. The first method is used at low speed. At higher speeds,
when the measured period is very short, the speed calculation algorithm
switches to the second method.
The proposed algorithm combines both of the above mentioned
methods. The algorithm simultaneously measures the number of
quadrature encoder pulses per constant period and their accurate time
period. The speed can then be expressed as:
k1 ⋅ N
k1 ⋅ N
k⋅N
speed = ------------- = ------------------------------ = --------------N clkT2
T
T clkT2 N clkT2
Designer Reference Manual
96
(EQ 6-8.)
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Speed Sensing
Freescale Semiconductor, Inc...
where
speed calculated speed
[-]
k
scaling constant
[-]
k1
scaling constant
[s]
N
number of counted pulses per constant period
[-]
T
accurate period of N pulses
[s]
TclkT2
period of input clock to timer A2
[s]
NclkT2
number of pulses counted by timer A2
[-]
The speed-sensing algorithm uses three timers (A0, A2, A3) in quad
timer module A and another timer as a time base (C0). The timer A0 is
used in quadrature count mode, where the primary and secondary
external inputs are decoded as quadrature encoded signals. The timer
A0 counts to zero and then reinitializes. The other two timers (A2 and
A3) are required for counting the quadrature signals and their period;
see Figure 6-11. Timer A2 counts the quadrature encoder pulses from
timer A0 and timer A3 counts a system clock divided by 2. The values in
both timers can be captured by each edge of the Phase A signal. The
time base is provided by timer C0, which is set to call a slow control loop
every 1ms where the speed measurement is calculated. The speed
processing algorithm works as follows:
1. The new captured values of both timers are read. The difference
in the number of pulses and their accurate period are calculated
from actual and previous values.
2. The new values are saved for the next period and the capture
register is enabled. From this time, the first edge of the Phase A
signal captures the values of both timers (A2, A3) and the capture
register is disabled.
3. The speed is calculated using (EQ 6-8.)
4. This process is repeated with each call of the speed processing
algorithm; see Figure 6-12
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
97
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Software Design
C
Figure 6-12. Speed Processing
6.7.1.1 Minimum and Maximum Speed Calculation
The minimum speed is given by the following equation:
60
v min = ---------------------4N E T calc
(EQ 6-9.)
where:
vmin
minimum obtainable speed
[rpm]
NE
number of encoder pulses per revolution
[-]
Tcalc
period of speed measurement (calculation period) [s]
In this application, the quadrature encoder has 1024 pulses per
revolution and the calculation period chosen is 1ms, based on the motor
mechanical constant. Thus, equation (EQ 6-9.) calculates the minimum
speed as 14.6 rpm.
Designer Reference Manual
98
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Speed Sensing
The maximum speed can be expressed as:
60
v max = ------------------------4N E T clkT2
(EQ 6-10.)
Freescale Semiconductor, Inc...
where:
vmax
maximum obtainable speed
[rpm]
NE
number of encoder pulses per revolution
[-]
TclkT2
period of input clock to timer A2
[s]
After substitution in equation (EQ 6-10.) for N and TclkT2 (timer A2 input
clock = system clock 36 MHz/2), we calculate the maximum speed as
263,672 rpm. As shown, the algorithm presented can measure speed
within a wide speed range. Because such a high speed is not practical,
the maximum speed can be reduced to the required range by a constant
k in (EQ 6-8.). The constant k can be calculated as:
60
k = ------------------------------------4N E T clkT2 v max
(EQ 6-11.)
where:
k
scaling constant in the equation
[-]
vmax
maximum required speed
[rpm]
NE
number of encoder pulses per revolution
[-]
TclkT2
period of input clock to timer A2
[s]
In the application presented, the maximum measurable speed is limited
to 4000 rpm.
NOTE:
To ensure correct speed calculation, the input clock of timer A2 must be
chosen so that the calculation period of speed processing (in this case,
1ms) is represented in timer A2 as a value lower than 0x7FFF
(1000.10-6/TclkT2<=0x7FFF).
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
99
Freescale Semiconductor, Inc.
Software Design
6.8 Analog Sensing
6.8.1 Current Sensing
Freescale Semiconductor, Inc...
The DSP56F80x family provides the ability to synchronize the ADC and
PWM modules via a SYNC signal. This exceptional hardware feature,
which has been patented by Motorola, is used for current sensing. The
PWM outputs a synchronization pulse, which is connected as an input to
the synchronization module TC2 (quad timer C, channel 2). A high-true
pulse occurs for each reload of the PWM regardless of the state of the
LDOK bit. The intended purpose of TC2 is to provide a user-selectable
delay between the PWM SYNC signal and the updating of the ADC
values. A conversion process can be initiated by the SYNC input, which
is an output of TC2. The time diagram of the automatic synchronization
between PWM and ADC is shown in Figure 6-13.
Designer Reference Manual
100
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Analog Sensing
PWM COUNTER
Freescale Semiconductor, Inc...
PWM SYNC
PWM
GENERATOR
OUTPUTS 0, 1
dead-time/2
dead-time/2
PWM
PINS 0, 1
POWER
STAGE
VOLTAGE
dead-time
dead-time
TC2
COUNTER
t1
TC2
OUTPUT
t2
ADC
CONVERSION
ADC
ISR
Figure 6-13. Time Diagram of PWM and ADC Synchronization
Phase currents are measured by shunt resistors at each phase. A
voltage drop on the shunt resistor is amplified by an operational amplifier
and shifted up by 1.65V. The resultant voltage is converted by the ADC;
see Figure 6-14 and Figure 6-15
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
101
Freescale Semiconductor, Inc.
Software Design
DC bus positive
Q1
SKB10N60
Q3
SKB10N60
Gate_AT
Gate_BT
Gate_CT
Phase_A
Phase_B
Phase_C
Q4
SKB10N60
Q2
SKB10N60
Freescale Semiconductor, Inc...
Q5
SKB10N60
Q6
SKB10N60
Gate_AB
Gate_BB
Gate_CB
Source_AB
Source_BB
Source_CB
I_sense_A1
sense
I_sense_B1
sense
I_sense_A2
sense
R1
I_sense_B2
0.075 1%
sense
R2
0.075 1%
I_sense_C1
sense
I_sense_C2
sense
R3
0.075 1%
DC bus negative
Figure 6-14. 3-Phase Bridge with Current Shunt Resistors
R318 75k-1%
R320 10k-1%
I_sense_C2
R321 10k-1%
R322
75k-1%
R323 390
1.65V +/- 1.65V
7
@ +/- Imax
I_sense_C
+
6
5
-
I_sense_C1
U301B
MC33502D
1.65V ref
+3.3V_A
C306
3.3uF/10V
5
LM285M
U304
R324
100k-1%
R325
33k-1%
4
GNDA
8
+
C307
100nF
GNDA
Figure 6-15. Current Amplifier for Phase C
The current cannot be measured at the current sense resistors at an
arbitrary moment. This is because current only flows through the shunt
resistor (for example, R1 corresponding to Phase A) if transistor Q2 is
switched on. Only at that instant can the Phase A current be measured.
Correspondingly, the current in Phase B can only be measured if
transistor Q4 is switched on, and the current in phase C can only be
measured if transistor Q6 is switched on. In order to get an actual instant
of current sensing, voltage shape analysis must be performed.
Designer Reference Manual
102
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Software Design
Analog Sensing
Voltage shapes of two different PWM periods are shown in Figure 6-16.
These voltage shapes correspond to center-aligned PWM sinewave
modulation. As shown, the best instant of current sampling is in the
middle of the PWM period, where all bottom transistors are switched on.
However, not all three currents can be measured at an arbitrary voltage
shape. PWM period II in Figure 6-16 shows an instant when the bottom
transistor of Phase A is on for a very short time. If the on time is shorter
than a certain critical time, the current cannot be correctly measured.
The specific critical time is given by the hardware configuration
(transistor commutation times, response delays of the processing
electronics, etc.). In the 3-phase ACIM application, two PWM periods are
always longer than the critical pulse width. Therefore, only two currents
are measured and the third current is calculated from equation:
0 = iA + iB + iC
(EQ 6-12.)
I.
PWM PERIOD
II.
PWM RELOAD
PHASE_A
PHASE_B
PHASE_C
ADC sampling point
critical pulse width
Figure 6-16. The Voltage Shapes of Two Different PWM Periods
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
103
Freescale Semiconductor, Inc.
Software Design
II.
I.
duty cycle ratios
1
0.8
0.6
0.4
0.2
0
Freescale Semiconductor, Inc...
Phase A
Phase B
Phase C
0
60
120
180
240
300
360
angle
Sector 1 Sector 2 Sector 3 Sector 4 Sector 5 Sector 6
Figure 6-17. 3-Phase Sinewave Voltages and Corresponding
Sector Values
The current that cannot be measured is the calculated. The simplest
technique is to calculate the current of the most positive phase voltage,
where the bottom PWM is switched on for the shortest time. For
example, Phase A generates the most positive voltage within section 0
- 60°, Phase B within the section 60° - 120°, etc.; see Figure 6-17.
In the case presented, the output voltages are divided into six sectors;
see Figure 6-17. The current is then calculated according to the actual
sector value:
for sectors 1, 6:
iA = – iB – iC
(EQ 6-13.)
iB = – iA – iC
(EQ 6-14.)
iC = – iB – iA
(EQ 6-15.)
for sectors 2, 3:
for sectors 4, 5:
Designer Reference Manual
104
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
Analog Sensing
NOTE:
The sector value is used only for current calculation and has no other
meaning at the sinewave modulation. But if any type of the space vector
modulation is used, the sector value can be obtained as a part of space
vector calculation and used for phase current measurement.
Freescale Semiconductor, Inc...
6.8.2 Voltage Sensing
The resistor divider network in Figure 6-18 is used to sense the dc-bus
voltage. The voltage signal is divided down to the 3.3V level and is ready
for further processing. DC-Bus voltage does not change rapidly. It is
almost a constant, with ripple caused by the structure of the power
supply. If a bridge rectifier for conversion of the AC line voltage is used,
the ripple frequency is twice the AC line frequency. Ripple amplitude
should not exceed 10% of the nominal dc-bus value if the power stage
is designed correctly.
DC bus positive
330k-1%
R224
270k-1%
R225
6.8k-1%
R226
R228
6.8k-1%
220k-1%
R227
R229
270-1%
+
C208
22nF/630VDC
C209
470uF/400V
3.24V @
DC-Bus = 400V
V_sense_DCB
R230
6.8k-1%
DC bus negative
GNDA
Figure 6-18. DC-Bus Voltage Sensing
The measured dc-bus voltage must be filtered in order to eliminate
noise. One of the easiest and fastest techniques is a first order filter,
which calculates the average filtered value recursively from the last two
samples and a coefficient C:
u DCBusFilt ( n + 1 ) = ( Cu DCBusFilt ( n + 1 ) – Cu DCBusFilt ( n ) ) – u DCBusFilt ( n )
DRM023 — Rev 0
MOTOROLA
(EQ 6-16.)
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
105
Freescale Semiconductor, Inc.
Software Design
To speed up initialization of voltage sensing, the filter has an exponential
dependence with a constant of 1/N samples and a moving average filter
that calculates the average value from the last N samples is used:
u DCBusFilt =
∑
–N
n=1
u DCBus ( n )
(EQ 6-17.)
6.8.3 Power Module Temperature Sensing
Freescale Semiconductor, Inc...
The measured power module temperature is used for thermal protection
The hardware realization is shown in Figure 6-19 The circuit consists of
four diodes connected in series, a bias resistor, and a noise suppression
capacitor. The four diodes have a combined temperature coefficient of
8.8 mV/οC. The resulting signal, Temp_sense, is fed back to an A/D input
where software can be used to set safe operating limits. In the
application presented, the temperature (in Celsius) is calculated
according to the conversion equation:
Temp_sense - b
temp = -------------------------------------a
(EQ 6-18.)
where:
temp
power module temperature in Celsius
Temp_sense
voltage drop on the diodes, which is measured by
the ADC
a
diode-dependent conversion constant
(a = -0.0073738)
b
diode-dependent conversion constant
(b = 2.4596)
Designer Reference Manual
106
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
START/STOP Switch and Button Control
+3.3V_A
R1
2.2k - 1%
Temp_sense
Freescale Semiconductor, Inc...
D1
BAV99LT1
D2
BAV99LT1
C1
100nF
Figure 6-19. Temperature Sensing
6.9 START/STOP Switch and Button Control
The START/STOP switch is connected to a GPIO pin in the case of
DSP56F805/7EVMs. The state of the START/STOP switch can be read
directly from the GPIO Data Register. In the DSP56F803EVM, there are
no free GPIO pins; therefore, the switch is connected to ADC input AN7
and switch status is then obtained with the ADC. The switch logical
status is obtained by comparing a measured value with the threshold
value.
Since the DSP56F803EVM does not have free GPIO pins for user
buttons, they are connected to IRQA and IRQB pins. The
DSP56F805/7EVMs use the same connection of the push buttons to the
IRQA and IRQB pins, enabling the same code to run on
DSP56F803/5/7EVM boards. The EVM boards do not solve the button
contact bouncing, which may occur during the pushing and releasing of
a button. Therefore, this issue must be solved by software.
The IRQA and IRQB are maskable interrupts connected directly to the
DSP’s core. The IRQA and IRQB lines are internally synchronized with
the processor’s internal clock and can be programmed as level-sensitive
or edge-sensitive. The IRQA and IRQB interrupts do not have interrupt
flags; therefore, the flags are replaced by software flags. The following
algorithm is used to check the state of the IRQ line and is described for
one interrupt.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
107
Freescale Semiconductor, Inc.
Software Design
Freescale Semiconductor, Inc...
The level-sensitive trigger mode of the IRQ interrupt is set. When the
button is pressed, the logical level 0 is applied on the IRQ line and an
interrupt occurs; see Figure 6-20. The ISR disables the IRQ interrupt to
avoid multiple calls of the ISR due to contact bouncing, sets the
debounce counter to a predefined value, and sets the variable
buttonStatus to 1. The variable buttonStatus represents the interrupt
flag. Using the DSP56F80x’s timer or a software timer, the
ButtonProcessing function is called periodically; see Figure 6-20. The
function ButtonProcessing decrements the debounce counter and if the
counter is zeroed, the IRQ interrupt is re-enabled. Button pressing is
checked by the ButtonEdge function; see Figure 6-21. When the
variable buttonStatus is set, the ButtonEdge function returns “1” and
clears buttonStatus. When the variable buttonStatus is not set, the
ButtonEdge function returns “0”.
The value of the debounce counter should be set according to a
ButtonProcessing calling period close to 180ms. This value is sufficient
to prevent multiple IRQ ISR calls due to contact bouncing.
Designer Reference Manual
108
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Software Design
START/STOP Switch and Button Control
IRQ ISR
ButtonProcessing
Disable IRQ interrupt
Decrement debounce
counter
Freescale Semiconductor, Inc...
No
Set buttonStatus
Debounce counter = 0
Yes
Set debounce counter
Enable IRQ interrupt
Return
Return
Figure 6-20. Button Control - IRQ ISR and ButtonProcessing
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Software Design
For More Information On This Product,
Go to: www.freescale.com
109
Freescale Semiconductor, Inc.
Software Design
ButtonEdge
buttonStatus = 1
No
Freescale Semiconductor, Inc...
Yes
Clear buttonStatus
Return 1
Return 0
Figure 6-21. Button Control - ButtonEdge
Designer Reference Manual
110
DRM023 — Rev 0
Software Design
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Section 7. System Set-Up
Freescale Semiconductor, Inc...
7.1 Contents
7.2
Hardware Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.3
Jumper Settings of Controller Board. . . . . . . . . . . . . . . . . . . .114
7.4
Required Software Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.5
Application Build & Execute . . . . . . . . . . . . . . . . . . . . . . . . . . 116
7.6
Controlling the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
7.2 Hardware Setup
Figure 7-1 illustrates the hardware set-up for the 3-Phase AC Induction
Motor Vector Control Application
The system consists of the following components:
•
Motor-Brake
– AC Induction motor - type AM40V, EM Brno s.r.o., Czech
Republic
– Brake - type SG 40N, EM Brno s.r.o., Czech Republic
•
Encoder BHK 16.05A1024-12-5, Baumer Electric, Switzerland
•
3-ph. AC BLDC HV Power Stage 180 W
•
In-line Optoisolation Box (ECOPTINL) + JTAG cable
•
Controller board - DSP56F805 Evaluation Module, supplied as
DSP56F805EVM
•
Two serial cables - needed for the PC master software debugging
tool only.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
111
Freescale Semiconductor, Inc.
System Set-Up
•
The parallel cable - needed for the Metrowerks Code Warrior
debugging and s/w loading.
Freescale Semiconductor, Inc...
The correct order of phases (phase A, phase B, phase C) for the AC
induction motor shown in Figure 7-1 is:
•
phase A = red wire
•
phase B = white wire
•
phase C = black wire
When facing a motor shaft, if the phase order is: phase A, phase B,
phase C, the motor shaft should rotate clockwise (i.e., positive direction,
positive speed).
.
Figure 7-1. Set-up of the 3-phase ACIM Vector Control Application
Designer Reference Manual
112
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Set-Up
Hardware Setup
WARNING:
Danger, high-voltage--risk of electric shock!
This application operates in an environment that includes
dangerous voltages and rotating machinery.
The application PCB modules and serial interface (connector,
cable) are not electrically isolated from the mains voltage--they are
live.
Freescale Semiconductor, Inc...
Use the In-line Optoisolation Box (ECOPTINL) between the PC and
DSP56805 EVM as protection from dangerous voltage on the
PC-user side, and to prevent damage to the PC and other hardware.
Do not touch any part of the EVM or the serial cable between the
EVM and the In-line Optoisolation Box unless you are using an
insulation transformer. The application is designed to be fully
controllable only from PC master software.
To avoid inadvertently touching live parts, use plastic covers.
In the rest of this application, the description supposes use of the
insulation transformer.
The user should be aware that:
•
Before moving scope probes, making connections, etc., it is
generally advisable to power down the high-voltage supply.
•
When high voltage is applied, using only one hand for
operating the test setup minimizes the possibility of electrical
shock.
•
Operation in lab setups that have grounded tables and/or
chairs should be avoided.
•
Wearing safety glasses, avoiding ties and jewelry, using
shields, and operation by personnel trained in high-voltage
lab techniques are also advisable.
•
Power transistors, the PFC coil, and the motor can reach
temperatures hot enough to cause burns.
•
When powering down; due to storage in the bus capacitors,
dangerous voltages are present until the power-on LED is off.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
113
Freescale Semiconductor, Inc.
System Set-Up
7.3 Jumper Settings of Controller Board
Freescale Semiconductor, Inc...
The DSP56F805EVM jumper settings shown in Figure 7-2 and
Table 7-1 are required to execute the 3-phase ACIM vector control
application. For a detailed description of the jumper settings, refer to the
DSP56F805 Evaluation Module Hardware User’s Manual (Motorola
document order number DSP56F805EVMUM/D).
JG6
3
1
9
6
3
3
JG10
3
7
2
4
1
1
JG14 JG12
3
2
1
JG13
USER
7
4
1
JG14
JG10
PWM
JG15
Y1
J23
JG17
JG6
1
2
1
3
2
1
JG13
JG12
JTAG
DSP56F805EVM
JG16
1
JG4
JG15 JG1 JG2
1
1
1
3
J24
3
2
1
1
1
JG18
JG16
U1
JG3
J29
JG8
JG8
1
S/N
3
U15
S4
S5
S6
GP1
S1
GP2
S2
RUN/STOP
S3
P3 IRQA
IRQB
RESET
JG7
1
JG9
JG2
7
JG4
1
9
6
3
JG1
8
1
LED3
JG11
P1
U9
JG5
JG5
U10
P1
3
JG9
1
JG3
3
2
JG18
7
JG17
1
JG7
JG11
8
Figure 7-2. DSP56F805EVM Jumper Reference
Table 7-1. DSP56F805EVM Jumper Settings
Jumper Group
Comment
JG1
PD0 input selected as a high
1-2
JG2
PD1 input selected as a high
1-2
JG3
Primary UNI-3 serial selected
1-2, 3-4, 5-6, 7-8
Designer Reference Manual
114
Connections
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Set-Up
Required Software Tools
Table 7-1. DSP56F805EVM Jumper Settings
Freescale Semiconductor, Inc...
Jumper Group
Comment
Connections
JG4
Secondary UNI-3 serial selected
JG5
Enable on-board parallel JTAG Command Converter
Interface
NC
JG6
Use on-board crystal for DSP oscillator input
2-3
JG7
Select DSP’s Mode 0 operation upon exit from reset
1-2
JG8
Enable on-board SRAM
1-2
JG9
Enable RS-232 output
1-2
JG10
Secondary UNI-3 Analog temperature input unused
NC
JG11
Use Host power for Host target interface
1-2
JG12
Primary Encoder input selected for quadrature encoder
signals
2-3, 5-6, 8-9
JG13
Secondary Encoder input selected
2-3, 5-6, 8-9
JG14
Primary UNI-3 3-Phase Current Sense selected as Analog
Inputs
2-3, 5-6, 8-9
JG15
Secondary UNI-3 Phase A Overcurrent selected for FAULTA1
1-2
JG16
Secondary UNI-3 Phase B Overcurrent selected for FAULTB1
1-2
JG17
CAN termination unselected
NC
JG18
Use on-board crystal for DSP oscillator input
1-2
NOTE:
1-2, 3-4, 5-6, 7-8
When running the EVM target system in a stand-alone mode from Flash,
the JG5 jumper must be set in the 1-2 configuration to disable the
command converter parallel port interface.
7.4 Required Software Tools
The following software tools are needed for compiling, debugging,
loading to the EVM, remote control and monitoring:
•
Metrowerks CodeWarrior 5.0
•
PC master software 1.2
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
115
Freescale Semiconductor, Inc.
System Set-Up
7.5 Application Build & Execute
Freescale Semiconductor, Inc...
When building the 3-Phase AC Induction Machine Control Application,
the user can create an application that runs from internal program flash
pFlash or extrernal RAM ExtRAM. To select the type of application to
build, open the 3ph_acim_vector_control_sa.mcp project and select the
target build type, as shown in Figure 7-3. A definition of the projects
associated with these target build types may be viewed under the
Targets tab of the project window.
Figure 7-3. Target Build Selection
The project may now be built by executing the Make command, as
shown in Figure 7-4. This will build and link the 3-Phase AC Induction
Motor Vector Control Application and all needed Metrowerks and Quick
Start tool libraries.
Designer Reference Manual
116
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
System Set-Up
Application Build & Execute
Figure 7-4. Execute Make Command
To execute the 3-Phase AC Induction Motor Control application, select
Project\Debug in the CodeWarrior IDE. For more help with these
commands, refer to the CodeWarrior tutorial documentation in the
following file located in the CodeWarrior installation folder:
<...>\CodeWarrior Manuals\PDF\Targeting_DSP56800.pdf
If the Flash target is selected, CodeWarrior will automatically program
the internal Flash of the DSP with the executable generated during Build.
If the External RAM target is selected, the executable will be loaded to
off-chip RAM.
Once Flash has been programmed with the executable, the EVM target
system may be run in a stand-alone mode from Flash. To do this, set the
JG5 jumper in the 1-2 configuration to disable the parallel port, and press
the RESET button.
Once the application is running, move the RUN/STOP switch to the RUN
position and set the required speed using the UP/DOWN push buttons.
Pressing the UP/DOWN buttons should incrementally increase the
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
117
Freescale Semiconductor, Inc.
System Set-Up
motor speed until it reaches maximum speed. If successful, the AC
induction motor will be spinning.
Freescale Semiconductor, Inc...
NOTE:
If the RUN/STOP switch is set to the RUN position when the application
starts, toggle the RUN/STOP switch between the STOP and RUN
positions to enable motor spinning. This is a protection feature that
prevents the motor from starting when the application is executed from
CodeWarrior.
You should also see a lighted green LED, which indicates that the
application is running. If the application is stopped, the green LED will
blink at a 2Hz frequency. If any fault occurs, the green LED will blink at
a frequency of 8Hz.
7.6 Controlling the Application
The drive can be controlled in two different operating modes:
•
Manual operating mode - the required speed is set by the
UP/DOWN push buttons and the drive is started and stopped by
the RUN/STOP switch on the EVM board
•
PC master software operating mode - the required speed is set by
the PC master software active bar graph and the drive is started
and stopped by the START MOTOR and STOP MOTOR controls
Measured quantities:
•
DC-Bus voltage
•
Phase currents (phase A, phase B, phase C)
•
Power module temperature
•
Rotor speed
Designer Reference Manual
118
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Set-Up
Controlling the Application
Freescale Semiconductor, Inc...
The faults used for drive protection:
•
Overvoltage (PC master software error message = Overvoltage
fault)
•
Undervoltage (PC master software error message = Undervoltage
fault)
•
Overcurrent (PC master software error message = Overcurrent
fault)
•
Overheating (PC master software error message = Overheating
fault)
•
Wrong-mains (PC master software error message = Mains out of
range)
•
Wrong-hardware (PC master software error message = Wrong
HW used)
•
Overload (PC master software error message - Overload) An
informative message; actual application state is not changed to
FAULT state
States of the application state machine see Table 7-2:
•
INIT - application initialization; operating mode changing
•
STOP - PWM outputs disabled; operating mode changing
•
RUN - PWM outputs enabled; motor running
•
FAULT - PWM outputs disabled; waiting for manual fault
acknowledgement
7.6.1 Control Process
After reset, the drive is in the INIT state and in the Manual operating
mode.When the RUN/STOP switch is detected in the STOP position and
there are no faults pending, the INIT state is changed to the STOP state.
Otherwise, the drive waits in the INIT state. If faults occur, the drive goes
to the FAULT state. In INIT and STOP states, the operation mode can
be changed from PC master software. In the Manual operating mode,
the application is controlled by the RUN/STOP switch and UP/DOWN
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
119
Freescale Semiconductor, Inc.
System Set-Up
buttons; in the PC master software remote control , the application is
controlled by the PC master software environment.
Freescale Semiconductor, Inc...
When the start command is accepted (using the RUN/STOP switch or
the PC master software command), the STOP state is changed to the
RUN state. Required speed is then calculated from the UP/DOWN push
buttons (in case of the Manual operating mode) or PC master software
commands (in case of the PC master software remote control mode).
The required speed is the input into the acceleration/deceleration ramp.
7.6.2 Drive Protection
The dc-bus voltage, dc-bus current and power stage temperature are
measured during the control process. They protect the drive from
Overvoltage, Undervoltage, Overcurrent, Overheating and
Wrong-mains. The Undervoltage, Overheating, Wrong-hardware and
Wrong-mains protection is performed by software. The Overcurrent and
Overvoltage fault signals utilize fault inputs of the DSP controlled by
hardware. The power stage is identified using board identification. If the
correct boards are not identified, the Wrong-hardware fault disables the
drive operation. Line voltage is measured during application initialization
and the application automatically adjusts itself to run at either 115V AC
or 230V AC, depending on the measured value. If the mains is out of
range, the Wrong-mains fault is set and the drive operation is disabled.
If any of the mentioned faults occur, the motor control PWM outputs are
disabled to protect the drive and the application enters the FAULT state.
The FAULT state can be left only when the fault conditions disappear
and the RUN/STOP switch is moved to the STOP position (in PC master
software remote mode, by PC master software). If the Wrong-hardware
and Wrong-mains occur, the FAULT state can be left only by application
reset.
7.6.3 Manual Operating Mode
The drive is controlled by the RUN/STOP switch (S6). The motor speed
is set by the UP (S2-IRQB) and DOWN (S1-IRQA) push buttons; see
Figure 7-5. If the application runs and motor spinning is disabled (i.e.,
Designer Reference Manual
120
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Set-Up
Controlling the Application
Freescale Semiconductor, Inc...
the system is ready) the USER LED (LED3, shown in Figure 7-6) will
blink. When motor spinning is enabled, the USER LED is On. Refer to
Table 7-2 for application states.
Figure 7-5. RUN/STOP Switch and UP/DOWN Buttons
at DSP56F805EVM
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
121
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
System Set-Up
Figure 7-6. USER and PWM LEDs at DSP56F805EVM
Table 7-2. Motor Application States
Application State
Motor State
Green LED State
Stopped
Stopped
Blinking at a frequency of 2Hz
Running
Spinning
On
Fault
Stopped
Blinking at a frequency of 8Hz
Designer Reference Manual
122
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
System Set-Up
Controlling the Application
7.6.4 PC Master Software (Remote) Operating Mode
Project files for the PC master software are located in:
..\pc_master\3ph_acim_vector_control.pmp
Start the PC master software application window and choose the
appropriate PC master software project. Figure 7-7 shows the PC
master software control window for 3ph_acim_vector_control.pmp.
Freescale Semiconductor, Inc...
The drive is controlled remotely from a PC through the SCI
communication channel of the DSP device via an RS-232 physical
interface. The drive is enabled by the RUN/STOP switch, which can be
used to safely stop the application at any time. PC master software
enables to set the required speed of the motor.
The following PC master software control actions are supported:
•
Set PC master software mode of the motor control system
•
Set Manual mode of the motor control system
•
Start the motor
•
Stop the motor
•
Set the required speed of the motor
PC master software displays the following information:
•
Actual and required speed of the motor
•
Application status - INIT/STOP/RUN/FAULT
•
DC-Bus voltage
•
Identified mains voltage
•
Identified hardware
•
Temperature of power module
•
START MOTOR and STOP MOTOR controls (active only in PC
master software mode)
•
PC master software check-box (defines full PC master software
control or full Manual control)
•
Fault status
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
123
Freescale Semiconductor, Inc.
System Set-Up
Freescale Semiconductor, Inc...
If any fault occurs (Overcurrent, Overvoltage, Wrong-mains,
Overheating or Wrong-hardware), the green user LED will blink at a
frequency of 8Hz. The PC master software control page shows the
identified fault. The faults can be handled by switching the START
MOTOR/STOP MOTOR icon to STOP MOTOR, which acknowledges
the fault state. Meanwhile, the Wrong-mains and the Wrong-hardware
faults can be quit only with the application reset. It is strongly
recommended that the user inspect the entire application to locate the
source of the fault before starting it again.
NOTE:
If the PC master software project (.pmp file) is unable to control the
application, it is possible that the wrong load map (.elf file) has been
selected. PC master software uses the load map to determine
addresses for global variables being monitored. Once the PC master
software project has been launched, this option may be selected in the
PC master software window under Project/Select Other Map FileReload.
Designer Reference Manual
124
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
System Set-Up
Controlling the Application
Figure 7-7. PC Master Software Control Window
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
125
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
System Set-Up
Designer Reference Manual
126
DRM023 — Rev 0
System Set-Up
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Appendix A. References
1. Bose, K. B. (1997). Power Electronics and Variable Frequency
Drives, IEEE Press, ISBN 0-7803-1061-6, New York.
Freescale Semiconductor, Inc...
2. Caha, Z.; Cerny, M. (1990). Elektricke pohony, SNTL, ISBN
80-03-00417-7, Praha.
3. Subrt, J. (1987). Elektricke regulacni pohony II, VUT Brno.
4. Vas, P. (1998). Sensorless Vector and Direct Torque Control,
Oxford University Press, ISBN 0-19-856465-1, New York.
5. Motorola, Inc. (2000). DSP56800 Family Manual,
DSP56F800FM/D
6. Motorola, Inc.(2001). DSP56F80x User’s Manual,
DSP56F801-7UM/D
7. Motorola, Inc. (2001). DSP Evaluation Module Hardware User’s
Manual, DSP56F805EVMUM/D
8. Motorola, Inc. (2000). Motorola Embedded Motion Control
3-Phase AC BLDC High-Voltage Power Stage User’s Manual,
MEMC3PBLDCPSUM/D
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
References
For More Information On This Product,
Go to: www.freescale.com
127
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
References
Designer Reference Manual
128
DRM023 — Rev 0
References
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Designer Reference Manual — 3-Phase ACIM Vector Control
Appendix B. Glossary
AC — Alternating Current.
Freescale Semiconductor, Inc...
ACIM — Alternating Current Induction Motor.
ADC — See “analogue-to-digital converter”.
byte — A set of eight bits.
central processor unit (CPU) — The primary functioning unit of any
computer system. The CPU controls the execution of instructions.
clear — To change a bit from logic 1 to logic 0; the opposite of set.
comparator — A device that compares the magnitude of two inputs. A
digital comparator defines the equality or relative differences between
two binary numbers.
computer operating properly module (COP) — A counter module that
resets the MCU if allowed to overflow.
COP — Computer Operating Properly
DC — Direct Current.
DSP — Digital Signal Processor.
DT — see “Dead Time (DT)”
Dead Time (DT) — short time that must be inserted between the turning
off of one transistor in the inverter half bridge and turning on of the
complementary transistor due to the limited switching speed of the
transistors.
duty cycle — A ratio of the amount of time the signal is on versus the
time it is off. Duty cycle is usually represented by a percentage.
GPIO — General Purpose Input/Output.
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Glossary
For More Information On This Product,
Go to: www.freescale.com
129
Freescale Semiconductor, Inc.
Glossary
Hall Sensors - A position sensor giving six defined events (each 60
electrical degrees) per electrical revolution (for 3-phase motor)
interrupt — A temporary break in the sequential execution of a program
to respond to signals from peripheral devices by executing a subroutine.
interrupt request — A signal from a peripheral to the CPU intended to
cause the CPU to execute a subroutine.
Freescale Semiconductor, Inc...
input/output (I/O) — Input/output interfaces between a computer
system and the external world. A CPU reads an input to sense the level
of an external signal and writes to an output to change the level on an
external signal.
JTAG — Joint Test Access Group
LED — Lignt Emiting Diode
logic 1 — A voltage level approximately equal to the input power voltage
(VDD).
logic 0 — A voltage level approximately equal to the ground voltage
(VSS).
MCU — Microcontroller unit. See “microcontroller.”
memory map — A pictorial representation of all memory locations in a
computer system.
microcontroller — Microcontroller unit (MCU). A complete computer
system, including a CPU, memory, a clock oscillator, and input/output
(I/O) on a single integrated circuit.
modulo counter — A counter that can be programmed to count to any
number from zero to its maximum possible modulus.
PI controller — Proportional-Integral controller.
peripheral — A circuit not under direct CPU control.
phase-locked loop (PLL) — A clock generator circuit in which a voltage
controlled oscillator produces an oscillation which is synchronized to a
reference signal.
Designer Reference Manual
130
DRM023 — Rev 0
Glossary
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc.
Glossary
port — A set of wires for communicating with off-chip devices.
program — A set of computer instructions that cause a computer to
perform a desired operation or operations.
PWM — Pulse Width Modulation.
PWM period — The time required for one complete cycle of a PWM
waveform.
Freescale Semiconductor, Inc...
read — To copy the contents of a memory location to the accumulator.
register — A circuit that stores a group of bits.
reset — To force a device to a known condition.
rpm — Revolutions per minute.
SCI — See "serial communication interface module (SCI)."
serial communications interface module (SCI) — A module that
supports asynchronous communication.
serial peripheral interface module (SPI) — A module that supports
synchronous communication.
set — To change a bit from logic 0 to logic 1; opposite of clear.
software — Instructions and data that control the operation of a
microcontroller.
software interrupt (SWI) — An instruction that causes an interrupt and
its associated vector fetch.
SPI — See "serial peripheral interface module (SPI)."
stack — A portion of RAM reserved for storage of CPU register contents
and subroutine return addresses.
subroutine — A sequence of instructions to be used more than once in
the course of a program. The last instruction in a subroutine is a return
from subroutine (RTS) instruction. At each place in the main program
where the subroutine instructions are needed, a jump or branch to
subroutine (JSR or BSR) instruction is used to call the subroutine. The
DRM023 — Rev 0
MOTOROLA
Designer Reference Manual
Glossary
For More Information On This Product,
Go to: www.freescale.com
131
Freescale Semiconductor, Inc.
Glossary
CPU leaves the flow of the main program to execute the instructions in
the subroutine. When the RTS instruction is executed, the CPU returns
to the main program where it left off.
timer — A module used to relate events in a system to a point in time.
variable — A value that changes during the course of program
execution.
Freescale Semiconductor, Inc...
waveform — A graphical representation in which the amplitude of a
wave is plotted against time.
word — A set of two bytes (16 bits).
write — The transfer of a byte of data from the CPU to a memory
location.
Designer Reference Manual
132
DRM023 — Rev 0
Glossary
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Freescale Semiconductor, Inc...
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
HOW TO REACH US:
USA/EUROPE/LOCATIONS NOT LISTED:
Motorola Literature Distribution;
P.O. Box 5405, Denver, Colorado 80217
1-303-675-2140 or 1-800-441-2447
JAPAN:
Motorola Japan Ltd.; SPS, Technical Information Center,
3-20-1, Minami-Azabu Minato-ku, Tokyo 106-8573 Japan
81-3-3440-3569
Freescale Semiconductor, Inc...
ASIA/PACIFIC:
Motorola Semiconductors H.K. Ltd.;
Silicon Harbour Centre, 2 Dai King Street,
Tai Po Industrial Estate, Tai Po, N.T., Hong Kong
852-26668334
Information in this document is provided solely to enable system and software
implementers to use Motorola products. There are no express or implied copyright
licenses granted hereunder to design or fabricate any integrated circuits or
integrated circuits based on the information in this document.
TECHNICAL INFORMATION CENTER:
Motorola reserves the right to make changes without further notice to any products
1-800-521-6274
herein. Motorola makes no warranty, representation or guarantee regarding the
suitability of its products for any particular purpose, nor does Motorola assume any
HOME PAGE:
http://motorola.com/semiconductors
liability arising out of the application or use of any product or circuit, and specifically
disclaims any and all liability, including without limitation consequential or incidental
damages. “Typical” parameters which may be provided in Motorola data sheets
and/or specifications can and do vary in different applications and actual
performance may vary over time. All operating parameters, including “Typicals”
must be validated for each customer application by customer’s technical experts.
Motorola does not convey any license under its patent rights nor the rights of
others. Motorola products are not designed, intended, or authorized for use as
components in systems intended for surgical implant into the body, or other
applications intended to support or sustain life, or for any other application in which
the failure of the Motorola product could create a situation where personal injury or
death may occur. Should Buyer purchase or use Motorola products for any such
unintended or unauthorized application, Buyer shall indemnify and hold Motorola
and its officers, employees, subsidiaries, affiliates, and distributors harmless
against all claims, costs, damages, and expenses, and reasonable attorney fees
arising out of, directly or indirectly, any claim of personal injury or death associated
with such unintended or unauthorized use, even if such claim alleges that Motorola
was negligent regarding the design or manufacture of the part.
Motorola and the Stylized M Logo are registered in the U.S. Patent and Trademark
Office. digital dna is a trademark of Motorola, Inc. All other product or service
names are the property of their respective owners. Motorola, Inc. is an Equal
Opportunity/Affirmative Action Employer.
© Motorola, Inc. 2003
DRM023/D
For More Information On This Product,
Go to: www.freescale.com