Implementation of Space Vector Modulation Strategies for Voltage Source Inverters for Induction Motor Drives

chardfriendlyAI and Robotics

Oct 16, 2013 (3 years and 7 months ago)



Implementation of Space Vector
Modulation Strategies for Voltage Source
Inverters for Induction Motor Drives

Krisztina Leban
, Cristian Lascu
, Alin Argeseanu

Student at“Politehnica” University of Timisoara, Bd.
Vasile Parvan nr.1, Timisoara Romania.


Dpt. of Electrical Engineering, “Politehnica” University of Timisoara, Romania

Tel: +40 256 403463, E

Dpt. of Electrical Engine
ering, “Politehnica” University of Timisoara, Romania

Tel: +40 256 403457, E


This paper reports on a DSP implementation of a space vector pulse
width modulation
nique for three
phased voltage source inverters working with high switching
frequencies in order to generate less harmonic distortion in the output voltages or
current in the motor windings. This strategy provides more efficient use of the DC bus
voltage i
n comparison with the direct sinusoidal modulation technique. Also a
comprehensive comparison between the implementation of the space vector
modulation and the carrier based PWM generation will be pointed out.

A standard application for this method is the
speed control of induction machines. Thus
the induction machine can be smoody started with the help of the ratio
voltage/frequency held constant. The control strategy re
lies on a

simplified machine
model. The values of switching time durations are obtained by real
time calculations
for each period using an optimal algorithm and the proprieties of the sinusoidal wave

The generated first harmonic output gets ever closer to
the sinusoidal wave when the
switching frequency is raised. The maximum value of the transistor’s switching
frequency is determined in deal with the required computing time for each applied
method. The imposed frequency is around 10 kHz.

With the help of

the TMS320F2812, a new and complex digital signal processor, the
needed pulse width modulation can be obtained in various ways. This programming
flexibility is achieved with the CODE COMPOSER STUDIO version 3.1 and C++ code
(in witch the software is writt
en). The programme allows offline graphical
representation of the parameters, thus giving a preview of the generated waveforms.

Digital Signal Processor(DSP) Implementation, Voltage Source
Inverter(VSI), Space Vector Modulation (SVM), Duty Cycle
Pulse Width Modulation
(PWM), AC Drives


1. Voltage Source Inverters (VSI

The three
phase voltage
fed inverter bridge (Figure 1) has a constant Vdc source
and it is composed of three “legs”: a, b, c, each of them containing two switching power

and two return current diodes. The diodes must be able to provide an
alternative path for the inductive current that continues to flow when the power devices
(T1, T2, T3, T4, T5, and T6) are turned off. The upper and lower switches are
controlled compleme
ntarily, which means that 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 h
bridge and the turn
on of its complementary device. The
output voltage is mostly created by a Pulse Width Modulation (PWM)
In order to
simplify and liberalize the inverter model, the following hypotheses are assumed first

The DC link voltage Vdc
is considered constant or slowly variable. In general, the
inverter switching frequency is much higher than the frequency of the link voltage
ripples. This assumption is always realistic.

The power switching devices are assumed identical. The reverse recov
ery current
associated with the diodes turn
off process is neglected.

The switching process is considered ideal, with rise time, fall time and reverse recovery
time incorporated into Ton and Toff times, respectively.

The voltage drop of the power devices i
s neglected if not otherwise specified.

The device’s dead times are neglected if not otherwise specified.

Figure 1
Voltage Source Inverter

The output 3
phase voltage waves are shifted 120

to each other and thus a 3
motor ca
n be supplied. Let’s define the switching signals

as binary numbers
that describe the state of each transistor:

if the upper transistor of the leg x is on

if the lower transistor o
f the leg x is on



With these signals, the instantaneous line to line voltages are[2]:


nstantaneous phase voltages are:


if the zero sequence voltage is


The voltage space vector will be:




2. Space Vector Modulation

Space Vector PWM refers to a special switching sequence of the three phased
inverter’s power transistors. (Figure 1). This method has been known to generate less
harmonic distortion in the output voltage
s and provides more efficient use of the supply
voltage in comparison with direct sinusoidal modulation technique[12]. E
ight switching
vectors are obtained with the help of each leg’s switching states

(Sa, Sb, Sc).

Vectors V1 to V6 are called active vec
tors active vectors because they produce voltages
at the VSI’s output. V0 and V7 are inactive vectors

or zero vectors; they do not produce
output voltages but hey are used in the modulation method( Figure 6).
Due to these 8
vectors displaced at 60

as show
n in Figure 2, 6 sectors are formed.

Figure 2.

Space Vector Modulation

Figure 3.

Normalized Reference Voltage

The V* (called the reference vector) vector rotates counter clockwise with the angle
α varying between

0 and 360 degrees. At each moment


When the motor is started the magnitude of V* is Vstart .As the supply voltage is
raised, the magnitude of the vector will grow thus describing an spiral. [5] , [3]


Figure 4
The Space Vecto
r Modulation principle.


Employing a linear coordinate transformation, a normalized reference voltage vector is
obtained. The normalized vector’s magnitude is

Figure 3)



The duty cycles for each phase are determines:


x = a, b, c


Ts = the period Sx = switch state of leg x

Duty cycles for each sectors are the following:

Sector S

Sector S2

Sector S3

Sector S4

Sector S5

Sector S6

Figure 7
Duty Cycles

At even sectors the order of the two non
zero vectors should be changed to avoid
supplementary switching.


Figure 7
Application Sequence of Basic Vector

Zero vectors are used to complet
e the period after the active vectors war applied.


Determine time of
application for the two
adjacent vectors for the
given sector

Determine the current
sector by the value of the
alpha angle

Set the vector sequence
according to the sector

(Odd or even)

Calculate Vα and Vβ

䍡汣C污le du瑹⁣ 捬敳

qhe⁳ anda牤⁰牯r牡mme⁳hould⁣ n瑡楮⁴he 景汬ow楮i⁳ ep猺

1.System registers must be set
. It is recommended that C++ procedures are defined in
order to write the registers. Please note that some system re
gisters are protected. You
can write C++ enable/disable code using the dedicated assembly procedures listed in
the board’s documentation. An example for this sort of protection is the Watchdog
Counter Register. If you chose to disable it, you should provid
e other means of
monitoring the continuance of the program flow.

. Select a clock (high speed or low speed) and divide it so that the resulted
frequency is the desired one. The period, underflow, overflow and compare will each
trigger interrupts if


3.Interrupt code
. In order for an interrupt routine to be successfully executed you must
have the following in mind:

Define the interrupt vector table in a
.asm file;

Put the interrupt routine ‘s name in earlier defined vector table ;

(globally, locally), unmask and acknowledge the desired interrupts in the
.c file.

Clear the interrupt flags so that upcoming interrupts will be acknowledged.

space vector strategy

is implemented as an interrupt routine. The algorithm is that
in t
he Figure 8

Figure 8

Basic Algorithm Steps for SV PWM

Dead band

generation. In order to safely switch the power transistors a dead
time(in witch both power devices of one leg are in an off state) is needed. The
TMS320F2812 DSP has dedicated registers
that can be used for this purpose.


3. Results

The figures below are obtained for an input DC voltage of 560V and a switching
frequency of 10kHz ; the output frequency is 50Hz/25Hz.

Figure 7

Basic Algorithm Steps for SV PWM, f=50Hz

gure 8

Basic Algorithm Steps for SV PWM, f=25Hz













[1] Brian Kernigham, Dennis Ritchie “The C Programming Language. Second edition”
Prentice Hall international, Englewood Cliffs, New Jersey, 1988;

[2]Lascu Cristian “Direct Torque Control Of Sen
sorless Induction Machine Drives” Ph. D.
Thesis, Timisoara 2002

[3] Krisztina Leban ‘Diploma Project 2007’ Politehnica University of Timisoara, Romania

[4] Joachim Holtz “Pulse width Modulation for Electronic Power Conversion ” Proceedings of
IEEE vol.82,
no. 8, August 1994;

[5] Sorin Musuroi, Dorin Popovici “Electric Drives and Servomotors”, Editura Politehnica

[6] Texas Instruments TMS320C28x DSP CPU and Instruction Set Reference

[7] TMS320x281x Analog
Digital Converter (ADC) Refer
ence Guide ( SPRU060)

[8] TMS320x280x System Control and Interrupts Reference Guide (SPRU712)

[9] TMS320x281x, 280x Peripheral Reference Guide (SPRU566)

[10] TMS320x281x Event Manager (EV) Reference Guide (SPRU065)

[11] TMS320x281x External Interface (XINT
F) Reference Guide (literature Number

[12] Keliang Zhou and Danwei Wang
, Member, IEEE

Relationship between Space

and Three
Phase Carrier
Based PWM:

A Comprehensive Analysis”

[13] Joachim Holtz,
Senior Member, IEEE

“Pulse width
A Survey