AtifIqbal, Adoum, Lamine, ImtiazAshraP, Mohibullah Aligarh Muslim University, India (2)Liverpool John Moores University, UK
Trang 1MATLAB/SIMULINK MODEL OF SPACE VECTOR PWM FOR THREE-PHASE
VOLTAGE SOURCE INVERTER AtifIqbal(') AdoumLamine(2) ImtiazAshraP') Mohibullah(l)
(1) Aligarh Muslim University, India(2) Liverpool JohnMooresUniversity,UK
ABSTRACT Variable voltage and frequency supply to ac drives is invariably obtained from a three-phase voltage source inverter (VSI) Anumber of Pulse width modulation (PWM) scheme is usedto obtain variable voltage and frequency supply The mostwidely used PWMschemes for three-phase VSI are carrier-based sinusoidal PWM and space vector PWM (SVPWM) There is an increasing trend of using space vector PWM (SVPWM) because of their easier digital realisation and better dc bus utilisation This paper focuses on step by step development of MATLAB/SIMULINK model of SVPWM Firstly model of a three-phase VSI is discussed based on space vector representation Next simulation model ofSVPWMis obtainedusing NIATLAB/SIMULINK Simulation resultsarealsoprovided
1 INTRODUCTION diode for protection Leg voltage waveforms is shown
inFig.2for180°conduction mode
Variable voltage and frequency supply for as drives is
invariably obtained from athree-phase VSI A number i
dc bus utilisation by 15.15%, further digital
implementation of this scheme is easier [1,2] The
SVPWM is identified as an alternative method of _ _
determination of switching pulse width and their N
position The major advantage ofSVWPM stem from
the fact that there isadegree of freedom ofspacevector Figure 1 Power circuit of a three-phase VSI placement in a switching cycle This improves the
The main focus of this paper is to develop a simple
MATLAB/SIMULINK model Thereasonfor choice of z73T 2;T3 Z 4;T3 5;T3 2X MATLAB/SIMULINK as a development tool is VB
because it is the most important and widely used VB
simulation software and is an integral part of taught
programme in most of the universities in
Electrical/Electronics Engineering courses Firstly VC
model ofathree-phase inverterinpresentedonthe basis l
ofspace vector representation This is followed bythe Figure2.Leg voltagewaveform ofathree-phase
MATLAB/SIMULINK model for the SVPWM is
presented Various simulation resultsarealso included It is observed fromFig. 2 that one inverter leg's state
changes after aninterval of60° and theirstate remains
2 THREE-PHASE VSIMODELLING REVIEW constant for 60° interval Thus it follows that the leg
voltages will have six distinct and discrete values in one
A mathematical model ofthree-phase is presented here cycle (36O°).
based on space vector representation The power circuit Space vector representation of the three-phase inverter topology ofathree-phase VSI is shown in Fig 1 output voltages is introduced next Space vector is Each switch in the inverter leg is composed of two defined as;
back-to-back connected semiconductor devices One of -* 2
-these two is a controllable device and other one is a v,=jVa +aVb +aVC) (1)
1096
Trang 2where a=exp(j2UT/3). The space vector is a AL Img.
simultaneous representation of all the three-phase ""I
quantities It is a complex variable and is function of
timein contrast tothe phasors
Phase-to-neutral voltages of a star-connected load are
most easily found by defining a voltage difference
between thestarpointnof the load and the negative rail 7,8
of the dc bus N The following correlation then holds (011) X'.4 '(100) Real true:
VA Va+VnN
VC =Vc+VnN
Substitution of (3) into (2) yields phase-to-neutral The binary numbers on the figure indicate the switch voltagesof the load in thefollowingform: stateof inverter legs Here 1 impliesupperswitch being
Va =(2/3)VA -(I/3)(VB +VC) on and 0refersto the lower switch of the leg being on
Vb =(2/3)VB-(1/ 3)(VA+VC) (4) Themostsignificantbit is forleg A,the leastsignificant
Vc =(2/3) vC -(1/3) (VB+ VA) bit is relatedtolegC and the middle is forlegB
Phase voltages are summarised in Table 1 and their 3 SPACE VECTOR PWM
correspondingspace vectors arelistedinTable2
This section briefly discusses the space vector PWM Table 1Phase voltage values for different switching principle This PWM method is frequently used in
states vector controlled and direct torque controlled drives In
1 1,4,6 (2/3) Vdc -(1/3)Vdc -(1/3)Vdc exercised in rotating reference frame
Itis seen intheprevious section thatathree-phaseVSI
, , | (1/3)Vdc (1/3)Vdc -(2/3)VdC andtwo zero states Thesevectorsform ahexagon (Fig.
3) which can be seen as consisting of six sectors
3 2,3,6 -(1/3)VdC (2/3)Vdc -(1/3)VdC spanning 60° each The reference vector which
represents three-phase sinusoidal voltage is generated
4 |2)35 -(2/3)Vc (I(3) Vc (I(3)Vdc using SVPWMby switchingbetweentwo nearestactive
,,' Z/d))V~,fc ~l/.))vdc ~l/.))vdc vectors and zero vector. To calculate the time of
5 2,4,5 -(1/3)VdC -(1/3)VdC (2/3)vdc application of different vectors, consider Fig 4,
depicting the position of different available space
vectorsand the referencevectorinthe firstsector
6 1,4,5 (1/3)vdC -(2/3)vdC (1/3)vdC
* mg
Table2Phasevoltagespace vectors
12/3) Vdc b - v
2 (2/3) Vdc exp (IjT 13)
6 (2/3) Vdc exp(15w/3) Figure 4 Principle of space vector time calculation
The discrete phase voltage space vector positions are is found from Fig 4 as
shown in Fig 3
Trang 3Iv Three-phase sinusoidal voltage is generated using
(5) equivalent using Clark's transformation equations [1]
tb =- sin (2;T/3)blocks. Further thetwo-phase equivalent is transformed
to t - ta - tb (6) 'Simulink extras' sub-library.Theoutputof this block is
where Va = vb =(2/3)V,. in order to obtain fixed corresponding angle of the reference as the second switching frequency and optimum harmonic output.
performance from SVPWM, each leg should change its 4.2 SwitchingTime Calculation
sateonly once inone switching period. This is achieved The switching time and corresponding switch state for
by applying zero state vector followed bytwo adjacent
active state vector in half switching period The next blck 'sf sing is (5)uand () the Matiab
half of the switching period is the mirror image of the block 'sfr using expressions (5) and (6). The Matlab first half The total switching period is divided intro 7 the reference and timer signal for comparison The parts,thezero vectorisapplied for 1/4thofthe totalzero
vector time first followed by the application of active angle of the referencevoltage is hold for eachswitching vectors for half oftheir application time and then again period so that its value does not change during time
zero vector is applied for 1/4th of the zero vector time calculation. The angle information is used for sector
- - ., identification in Matlab code 'aaa' Further, a ramping This is then repeated in the next half of the switching time signal S generatedto be used n Matlab code This period This is how symmetrical SVPWM is obtained
The leg voltage in one switching period is depicted in ramp is generatedusing 'repeating sequence' from the Fig.5 forsector1 Flg 5 Iorsecto 1. ts The Matlab code firstly identifies the sector of thesourcesub-library.
P os referencevoltage. The time ofapplicationof active and
t 4 ta/2 :tb/2 to/2 tb/2 : ta/2 to/4 zero vectors are then calculated The times are then
arranged according to Fig 5 This time is then compared with the ramp timer signal. Depending upon
defined This switch state is then passed on to the inverter block The code isgiveninAppendix1
4.3Three-phaseInverter Block
k 8 V V V V , , < The inverter model is build using 'function' blocks
Figure 5 Leg voltages and space vector disposition inverter block is the phase voltages
foroneswitching period insectorI
The sinusoidal reference space vector form a circular 4.4 Filter Blocks
trajectory inside the hexagon The largestoutputvoltage The PWM voltage signal is filtered using first order magnitude that can be achieved using SVPWM is the filter. This is implemented using 'Transfer function' radius of the largest circle that can be inscribed within block from 'Continuous' sub-library The time constant the hexagon This circle is tangential to the mid points ofthefirst-order filter is chosenas0.8ms
ofthe linesjoining the ends of the active space vector
Thus the maximum obtainable fundamental output 4.5 Voltage Acquisition
vs =-V,,cos(/T/6)= > V (7)
Simulation is carriedoutusing the developed model for maximum obtainable referencevoltage and the resulting filteredleg and phase voltagesare shown inFigs. 8 and 9
development of Matlab/Simulink model for SVPWM
The Simulink model is shown in Fig 6 Each block is Asml albSmln oe speetdt further elaborated in Fig. 7 The Matlab code used to
generate the switching patternsub-blocks ofFig. 6 iS described in iS alsotheprovided followingEachsub- of the VSI modelreesnai.AMtabSmikbsdmolfrimlenSVWiSalso reported based on space vectorfothe-asVS.Abefrvw
step-by-1098
Trang 4La vs
HptinG
RepEating S,equencDe
Figure 6 Matlab/Simulink Model of SVPWM
cosu [1 f2' p if1 1sqr() n
Va ref (2t3)(u[11+ u[2]foosg2 p i/3)+ u[S]foosgcVp iS3)) (7k
Magnitude
Vfd
ocosgu[1]2-pi'f1-2rpi/3ysqrbp) B Mux
Vb ref
| ~~~(13)SIu [2]:si n(2: pi/3)+ u[B]:si n(2:2=p ii3 -1 C W nG)
A ngle
~~~
~~~~~Ca rtesia to
(a)
[ | y~~~(dcI3Sp(2:u[1]- u[2]- u 3]) ]
F on
Figure 7 Sub-blocks of Matlab/Simulink model: (a) Reference voltage generation (b) VSI (c) Filters
A ~~~~~~~~~~~~~~~Va Vb Vc
0.8
0.6
-0.2 0.3
Trang 5step model development is reported The presented tO=(ts-ta-tb);
model gives an insight into the SVPWM By varying the tl=[tO/4 ta/2 tb/2 tO/2 tb/2 ta/2tO/4];tl=cumsum(tl); magnitude of the input reference different modulation vl=[O 0 0 1 0 0O];v2=[O 11 11 1 O];v3=[O0 1 1 1 0 0];
if(Y<t(I))
end [1] Holmes, G.D and Lipo, T.A., Pulse Width end
Modulation for Power Converters - Principles and sa=vl();sb=v2(j);sc=v3(j);
Practice, IEEE Press Series on Power Eng., John Wiley end
andSons,Piscataway,NJ, USA, 2003 0osectorIV
if(x>=-pi)&(x<-2*pi/3)
Blaabjerg, F., Control in power electronics- selected tb=mag* sin(pi/3 -adv);ta=mag * sin(adv);
problems, Academic Press,California,USA, 2002 tO=(ts-ta-tb);
[3] Implementing SVPWM with AMD, tl=[tO/4ta/2 tb/2 tO/2 tb/2 ta/2tO/4];tl=cumsum(tl);
Application notes, Analogue Electronics vl=[O0 0 1 00 0];v2=[0 0 1 1 1 00];v3=[0 11 11 1 0];
end
%MatlabCode to generate Switching functions sa=vl();sb=v2(j);sc=v3(j);
%0Inputs aremagnitudeu1(:),angleu2(:) end
00andramptime signal for comparison u3(:) 00 sectorV
function[sfl=aaa(u) if(x>=-2*pi/3) &(x<-pi/3)
ts=0.0002;vdc=1;peak_phase max=vdc/sqrt(3); adv=x+2*pi/3;
x=u(2); y=u(3); mag=(u(l)/peakphasemax) *ts; ta=mag*sin(pi/3-adv);tb=mag sin(adv);
if(x>=O)&(x<pi/3) tl=[tO/4ta/2 tb/2 tO/2 tb/2 ta/2tO/4];tl=cumsum(tl);
ta=mag * sin(pi/3-x);tb=mag * sin(x); vl=[O0 1 1 1 00];v2=[0 0 0 1 0 00];v3=[0 11 11 1 0];
tl=[tO/4ta/2 tb/2 tO/2 tb/2 ta/2 tO/4];tl=cumsum(tl); if(y<t1(j))
vl=[O 11 1 1 0];v2=[00 1 1 1 00];v3=[000 1 0 0 0]; break
sa=vl );sb=v2(j);sc=v3(j); if (x>=-pi/3) &(x<O)
tb=mag *sin(pi/3-adv);ta=mag * sin(adv); vl=[O 11111 0];v2=[0 0 0 1 0 00];v3=[00 1 11 00];
tl=[tO/4ta/2 tb/2 tO/2 tb/2 ta/2tO/4];tl=cumsum(tl); if(y<t1(I))
vl=[O0 1 1 1 00];v2=[01 11 1 10];v3=[00 0 1 0 0 0]; break
sa=vl(j);sb=v2(j);sc=v3(j); Corresponding Author: Dr Atif Iqbal, Reader,
if(x>=2*pi/3)&(x<pi) 2901029, Mob ±91 9411210372, Email:
ta=mag * sin(pi/3-adv);tb=mag * sin(adv);
1100