Buso1 PDF
Buso1 PDF
Buso1 PDF
Simone Buso
Simone Buso
University of Padova
Dept. of Information Engineering – DEI
Via G. Gradenigo, 6/a
35131 Padova
ITALY
E-mail: [email protected]
Lesson 1
Basic motivations
Digital control offers the possibility to implement sophisticated control laws,
taking care of system non linearities, parameter variations or construction
tolerances by means of self-analysis and auto tuning strategies, very difficult or
impossible to implement analogically.
Software based digital controllers are inherently flexible, which allows the
designer to modify the control strategy, or even to totally re-program it, without
the need for significant hardware modifications. Also very important are the
higher tolerance to signal noise and the complete absence of ageing effects or
thermal drifts.
A large variety of electronic devices, from home appliances to industrial
instrumentation, require the presence of some form of man to machine interface
(MMI). Its implementation is almost impossible without having some kind of
embedded microprocessor. The utilization of the computational power, that thus
becomes available, also for lower level control tasks is often very convenient.
Basic motivations
The application of digital controllers has been increasingly spreading and has
become the only effective solution for a lot of industrial power supply production
areas. Adjustable speed drives (ASDs) and uninterruptible power supplies
(UPSs) are nowadays fully controlled by digital means.
The increasing availability of low cost, high performance microcontrollers and
digital signal processors stimulates the diffusion of digital controllers in areas
where the cost of the control circuitry is a critical issue, e.g. in power supplies for
portable equipment, battery chargers, electronic welders ...
A significant increase of digital control applications in these very competing
markets is not likely to take place until new implementation methods, different
from the traditional microcontroller or DSP unit application, prove their viability.
From this standpoint, the research efforts need to be focused on the design of
custom integrated circuits, more than on algorithm design and implementation.
Issues like occupied area minimization, scalability, power consumption
minimization, limit cycle containment play a key role in this context.
Case study
The principles of its more commonly adopted low level control strategy, namely
Pulse Width Modulation (PWM), will be explained, at first in the continuous time
domain, successively in the discrete time domain.
The issues related with PWM control modelling are fundamental for the correct
formulation of a Switch Mode Power Supply (SMPS) digital, or even analog,
control problem.
S1
G1
+ VDC D1
-
E1
ES LS RS
C O
+
IO
+ VDC G2
D2
-
S2 E2
The VSI represented can be described in the state space by the following
equations:
x& = Ax + Bu
y = Cx + Du
where x = [IO] is the state vector, u = [VOC, ES]T is the input vector and y = [IO]
is the output variable.
Direct circuit inspection yields:
Case study
Case study
Because of that, in the large majority of cases, a current controller can be found
immediately above the modulator level. This is responsible for providing the set-
point to the modulator.
In the latter case, the VSI is said to operate in current mode, meaning that the
control circuit has turned a voltage source topology into a controlled current
source.
t
*
VGE2(t)
dTS t
VOC(t) +VDC
t
-VDC
A square wave voltage VOC is applied to the load, with constant frequency fS =
1/TS, TS being the period of the carrier signal c(t), and variable duty cycle d. This
is implicitly defined as the ratio between the time duration of the +VDC voltage
application period and the duration of the whole modulation period, TS.
We can explicitly relate signal m(t) to the resulting PWM duty-cycle. Simple
calculations show that, in each modulation period, where a constant m is
assumed, the following equation holds:
m c pk m
= ⇔ d=
dTS TS c pk
In addition, we can compute the relationship between the duty-cycle and the
average inverter voltage. This turns out to be:
1 t 1
VOC (t ) =
TS ∫ t − TS
VOC (τ)dτ =
TS
(TS ⋅ VDC ⋅ d(t ) − VDC (1 − d(t ))⋅ TS ) = VDC (2d(t ) − 1)
This means that, in the hypothesis of a limited bandwidth m(t), the information
carried by this signal is transferred, by the PWM process, to the duty-cycle, that
will change slowly along time following the m(t) evolution. Based on the previous
relation, this means that
∂d 1
=
∂m c pk
The duty-cycle, in turn, is transferred to the load voltage waveform by the power
converter. The slow variations of the load voltage average value will therefore
copy those of signal m(t). Therefore, the modulator transfer function, including the
inverter gain will be given by:
∂VOC ∂d 2VDC
=
∂d ∂m c pk
Simone Buso - UNICAMP - August 2011 13/74
Digital control of switching mode power supplies
~ ~ ~
d VOC IO 2VDC 1 1
G (s ) = ~ ~ ~ (s ) = ⋅
m d VOC c pk R S LS
1+ s
RS
This implies that, as long as the spectrum of signal m(t) has a limited bandwidth
with a upper limit well below the carrier frequency, signal demodulation, i.e. the
reconstruction of signal m(t) spectrum from the signal VOC(t), with associated
power amplification, can be easily achieved by low pass filtering VOC(t).
In the case of power converters, like the one we are considering here, the low
pass filter is actually represented by the load itself.
Again, this implies that the previously found transfer function is, in a first
approximation (i.e. neglecting the residual ripple), correct. Please note that,
from now on, the modulating signal m(t) will always be assumed to be limited in
bandwidth.
VOC(t) VOC(t)
S1
G1
+ VDC D1
-
E1
ES LS RS
C O
t +
IO
+ VDC G2
D2
-
S2 E2
ES(t)
IO(t)
t
IO(t)
∂d 1
=
∂m c pk
The answer to this question has been found 30 years ago by R.D. Middlebrook,
and it is absolutely affirmative.
This means that the analog implementation of PWM guarantees the minimum
delay between modulating signal and duty-cycle. Therefore, the intuitive
representation of the modulator operation can be actually corroborated by a more
formal, mathematical analysis.
[1] R.D. Middlebrook; “Predicting modulator phase lag in PWM converter feedback loops”,
Advances in switched-mode power conversion, vol I, pp. 245-250, 1981.
Simone Buso - UNICAMP - August 2011 18/74
Digital control of switching mode power supplies
~
m M
TS t TS t
VOC(t)
d(t)
~
d
~ D
d
t TS t
~
d TS DTS
Simone Buso - UNICAMP - August 2011 19/74
Digital control of switching mode power supplies
Under these assumptions, in [1], the author demonstrates that~ the phase lag of
~ and d are in phase,
the naturally sampled modulator is actually zero, i.e. m
concluding that the analog PWM modulator delay can always be considered
negligible. Therefore, the transfer function we already computed can be
considered as well a reasonable model of the inverter dynamic behaviour.
Quite differently, we will see in the following how the discrete time or digital
implementations of the pulse width modulator, that necessarily imply the
introduction of sample-and-hold effects, often determine a significant response
delay [2].
[2] D.M. Van de Sype, K. De Gusseme, A.P. Van den Bossche, J.A. Melkebeek, “Small-
signal Laplace-domain analysis of uniformly-sampled pulse-width modulators”; 2004 Power
Electronics Specialists Conference (PESC), 20-25 June, pp. 4292 - 4298
E1
ES LS RS
C O
+
TS t IO
V*
GE 2
tON1 + VDC G2
D2
-
S2 E2
TS t
tON2
VGE1
Applied gate signals
t
Dead times effect
TS
VGE2 for IO > 0
TS t
VOC +VDC
Load voltage
TS t
-VDC
The typically required dead time duration for 600 V, 40 A IGBT is currently well
below 1 µs. Of course, the dead time required duration is a direct function of the
switch power rating.
It is important to notice that the effect of the dead time application is the creation
of a time interval where both switches are in the off state and the load current
flows through the free-wheeling diodes.
t dead
∆VOC = −2VDC sign( I O )
TS
will have to be compensated by the current controller. Failure to do so will
unavoidably determine a tracking error on the trajectory the load current has to
follow (i.e. current waveform distortion).
n bits
n bits
Duty-Cycle
The counter is incremented at every clock pulse; any time the binary counter
value is equal to the programmed duty-cycle (match condition), the binary
comparator triggers an interrupt to the microprocessor and, at the same time,
sets the gate signal low.
The gate signal is set high at the beginning of each counting (i.e. modulation)
period, where another interrupt is typically generated for synchronization
purposes.
The counter and comparator have a given number of bits, n, which is often 16,
but can be as low as 8, in the case a very simple microcontroller is used.
Depending on the ratio between the durations of the modulation period and the
counter clock period, a lower number of effective bits, Ne, could be available to
represent the duty-cycle. The Ne parameter is important to determine the duty-
cycle quantization step.
f clock
log10
fS
N e = floor +1
log10 2
where fclock is the modulator clock frequency, fS=1/TS is the desired modulation
frequency and the floor function calculates the integer part of its argument.
Typical values for fclock are in the few tens of MHz range, while modulation
frequencies can be as high as a few hundreds of kHz.
When the desired modulation period is short, the number of effective bits, Ne,
will be much lower than the number of hardware bits, n, available in the
comparator and counter circuits, unless a very high clock frequency is possible.
Gate signal
t
Programmed duty-cycle
Timer count
TS t
It is immediate to see that the modulating signal update is performed only at the
beginning of each modulation period.
We can model this mode of operation using a sample and hold equivalent.
Indeed, we can observe that, neglecting the digital counter and binary
comparator effects (i.e. assuming infinite resolution for both), the digital
modulator works exactly as an analog one, where the modulating signal m(t) is
sampled at the beginning of each modulation period and the sampled value
held constant for the whole period.
m(t) ms(t)
ZOH + VMO(t)
TS
c(t) -
It is now evident that, because of the sample and hold effect, the response of the
modulator to any disturbance, e.g. to one requiring a rapid change in the
programmed duty-cycle value, can take place only during the modulation period
following the one where the disturbance actually takes place.
Even if our signal processing were fully analog, without any calculation or
sampling delay, passing from an analog to a digital PWM implementation would
imply, by itself, an increase in the system’s response delay.
− sDTS
VMO (s) e
PWM (s) = =
TS t M (s) c pk
VMO(t)
: sampling instants
t
~
mS
MS ~
mS
t
VMO
~vMO t
DTS DTS
nTS (n+1)TS t
~
mS Unity area Dirac
MS impulse
~
mS perturbations
TS TS t
VMO
c pk c pk Correction pulses
~vMO t
DTS DTS Dirac impulse
approximation of
nTS (n+1)TS t correction pulses
The input perturbations can be, in particular, unity area Dirac impulses applied
at the modulator input. Considering one of these impulses to be applied at time
zero, we can immediately find that, in the above approximation, it generates a
time translated impulse at the output:
~ TS
v MO = 1 ⋅ δ(t − DTS )
c pk
whose area is equal to the modulator small signal gain (i.e. the inverse of the
saw-tooth slope).
We can now compute the Laplace transform of both sides of the above
expression, exploiting the rule for time translation and the basic property of the
Dirac pulse to have a unity Laplace transform.
TS − sDTS
VMO ( s ) = e M S (s)
c pk
where
+∞
M S (s) = ∑ S S
~ ( nT ) ⋅ e − snT
m
n = −∞
S
VMO ( s ) e − sDTS
PWM ( s ) = =
M (s) c pk
that represents the transfer function between the modulator input and output
signals. A similar procedure can be applied to other, more complex, modulator
organizations. Another useful relation, that we will use later on, is the following:
VMO ( s )
TS ⋅ PWM ( s ) =
M S (s)
Simone Buso - UNICAMP - August 2011 36/74
Digital control of switching mode power supplies
PWM (s) = =
TS t M (s) c pk
VMO(t)
TS t
VMO(t)
− jω(1− D )T2S T
− jω (1+ D ) S
e +e 2 TS
arg( PWM ( jω)) = arg = −ω
2 c pk 2
which is a remarkable result, as it does not depend on the particular steady-state
value of the duty-cycle, D.
Simone Buso - UNICAMP - August 2011 39/74
Digital control of switching mode power supplies
In this mode, the duty-cycle update is allowed at the beginning and at the half
of the modulation period. Consequently, in each modulation period, the match
condition between counter and duty-cycle registers is checked twice, at first
during the run up phase, then during the run down phase. In the occurrence of
a match, the state of the gate signal is toggled.
The result of this mode of operation is a stream of gate pulses that are
symmetrically allocated within the modulation period, at least in the absence of
any perturbation.
Interrupt requests are generated by the timer at the beginning and at the half of
the modulation period, to allow proper synchronization with other control
functions, e.g. with the sampling process.
Gate signal
t
Timer count
t
TS
VMO(t)
VMO ( s ) 1 − sD T2s T
− s (1− D ) s
PWM ( s ) = = e + e 2
M ( s) 2c pk
Interestingly, the transfer function we can derive in this case presents a similar
structure with respect to the symmetric pulse modulator’s one. However, the
modulator’s phase lag in this case turns out to be equal to:
− jωD T2S T
− jω (1− D ) S
e +e 2 TS
arg( PWM ( jω)) = arg = −ω
2 c pk 4
which is exactly ½ of the previously obtained one. This suggests the
generalization of the technique, leading to the so-called multi-sampling PWM
implementations.
1 − st floor( ND)
PWM (s) = e d
where t d = DTS − TS
c pk N
Trailing edge delay Multi-sampling effect
Simone Buso - UNICAMP - August 2011 44/74
Digital control of switching mode power supplies
The equivalent delay is equal to the one found for the conventional trailing
edge implementation, reduced by the so-called multi-sampling effect.
It is interesting to observe that, as N tends to infinity, the equivalent delay
tends to zero, which is consistent with a continuous time, naturally sampled
implementation of the modulator, where the sample and hold effect is not
present.
m(t), c(t)
Vertical intersection: the
1 modulator gain is zero.
TS t
Generation of dead bands.
The αβ transformation represents a very useful tool for the analysis and the
modelling of three phase electrical systems. In general, a three phase linear
electric system can be properly described in mathematical terms only by
writing a set of tri-dimensional dynamic equations (integral and/or differential),
providing a self consistent mathematical model for each phase. In some cases
though, the existence of physical constraints makes the three models not
independent from each other. In these circumstances the order of the
mathematical model can be reduced without any loss of information. We will
see a remarkable example of this in the following.
To explain how it works we can consider a tri-dimensional vector [xa, xb, xc]
that can represent any triplet of system’s electrical variables (voltages or
currents). We can now consider the following linear transformation, ,
x α x a 1 − 1 2 − 1 2 x a
x = 2 x
x β = Ταβγ b 3
0 3 2 − 3 2 b
xγ x c 1 2 1 2 1 2 x c
that, in geometrical terms, represents a change from the set of reference axes
denoted as abc to the equivalent one indicated as αβγ.
αβ Transformation
This change of reference axes takes place because the standard R3 orthonormal base
Babc
Β abc = { [1 0 0] , [0 1 0] , [0 0 1] }
T T T
Β αβγ = 2 3{ [1 − 1 2 − 1 2] , 0
T
[ 3 2 − 3 2 , 1 ] [
T
2 1 2 1 ]T
2 }
The Bαβγ base is once again orthonormal, i.e. its vectors have unity norm and are
orthogonal to one another, thanks to the presence of the coefficient 2 3 . Orthonormality
implies that: i) the inverse of the transformation is equal to the matrix transposed and ii)
the computation of electrical powers is independent from the transformation of
coordinates.
αβ Transformation
The transformation has an additional, interesting property, that becomes clear when
we take into account the following condition
xa + xb + xc = 0 ⇒ xγ = 0
whose meaning is to operate the restriction of the tri-dimensional space to a
plane π (Fig. 4.1.1.a).
b
β
γ b
π ≡ xa + xb +xc = 0
α a
a
β α
c c
αβ Transformation
x a x a
x α x = 2 1 − 1 2 − 1 2
x = Ταβ b x b
β 3 0 3 2 − 3 2
x c x c
and its inverse as
x a xα 1 0
x = ΤT x = 2 xα T xα
b αβγ β − 1 2 3 2 = Ταβ x
3 xβ β
x c 0 − 1 2 − 3 2
αβ Transformation
e a = U M sin (ω t )
e b = U M sin (ω t − 2 π 3)
e c = U M sin (ω t + 2 π 3)
We get:
3
eα = U M sin (ω t )
2
3
eβ = − U M cos (ω t )
2
Simone Buso - UNICAMP - August 2011 53/74
Digital control of switching mode power supplies
We can consider a typical three phase voltage source inverter and represent the possible
output voltage configurations as vectors on the αβ plane π.
ESa
Ia LSa RSa
Va
+
Ib LSb RSb + ESb
+ Vb N
VDC
-
Ic LSc RSc +
Vc
ESc
Va
V100
+ Vb
- VDC
Vc
V110
Va
+ Vb
- VDC
Vc
V010
Va
+ Vb
- VDC
Vc
Va
V011
+ Vb
- VDC
Vc
Va
+ Vb
- VDC
Vc
V001
Va
+ Vb
- VDC
Vc
V101
G
Va
V111
+ Vb
- VDC
Vc
Vector 000: Va = 0 Vb = 0 Vc = 0
Va
V000
+ Vb
- VDC
Vc
The procedure of Space Vector Modulation can be explained referring to the following
figure:
V110 V110
*
Vαβ
*
Vαβ V1=δ1V110
V1
V100
V2 V100 V3=δ3V000 V2=δ2V100
The basic relations, used to compute the vector duty-cycles are the following:
V1 V2
δ1 = r δ2 = r
V100 V110
Considering that the sum of the three duty-cycles has to be 1, i.e. the whole modulation
period must be occupied, we can derive the third of them, referred to the zero vector:
δ1 + δ 2 + δ3 = 1
The average voltage vector generated by the inverter is therefore:
r*
Vo = δ1 V100 + δ 2 V110 + δ 3 V111 = V1 + V2 = Vαβ
Simone Buso - UNICAMP - August 2011 64/74
Digital control of switching mode power supplies
It can be interesting to identify the locus of the constant amplitude rotating reference
vectors that can be generated by the inverter without distortion.
This is represented by the circle inscribed in the vector hexagon. It is easy to verify that
every vector that lays inside the circle generates a valid δ1, δ2, δ3, triplet. Instead, a vector
that lays partially outside the circle cannot be generated by the inverter, because the sum
of the corresponding δ1, δ2, δ3 becomes greater than unity.
This situation is called inverter saturation and generally causes output voltage distortion.
It is easy to calculate the amplitude UMMAX of the voltage triplet that corresponds to a
rotating vector having an amplitude equal to the radius of the inscribed circle. We find:
3 2 3 2 VDC VDC
U MMAX = VDC ⇔ U MMAX = ≅ 1.15 ⋅
2 3 2 3 2 2
Performing SVM, what is used to synthesize the desired output voltage vector is not the
superposition of vectors laying on plane π. A more realistic representation of the inverter
output vectors, that puts into evidence their γ component, is shown here:
V110
V111 1
VDC
2
V011
V010
1
− VDC
V000 V101 2
V100
V001
The above observation means that SVM implies a particular modulation of the voltage
between nodes N and G, VNG. This is due to the common mode component of the
inverter output voltage vectors. Indeed, it is easy to demonstrate that, in case of a
symmetrical load structure, almost always encountered in practice, VNG is
instantaneously and exactly equal to the γ component of the inverter output voltage.
The most important implication of this fact is that the phase to neutral voltage of the
load will always be insensitive to any common mode component of the inverter output
voltage, i.e. one can freely add common mode components to the vector, without
perturbing the load voltage.
This is exactly what SVM implicitly does. Its effect, from the inverter’s standpoint, can
be proved to be very similar to that of third harmonic injection, sometimes employed in
analog three phase PWM implementations.
This can be done by implementing once again a base change from the αβ reference
frame to a new set of three different reference frames.
2
3 1
4 6 Z1x Z3y
5
As can be seen, each frame refers to a particular couple of hexagon sectors. The method
we propose simply requires the projection of the inverter output voltage reference vector
onto each one of the three hexagon reference frames. This is easily implemented with the
following set of reference base change matrixes:
1 1 2
1 − 1 0
M1 = 3 3 3
M2 = M3 =
0 2 − 1 1 − 1 − 1
3 3 3
that map the orthogonal set of axes α and β onto the three, non-orthogonal sets Z. It is
interesting to notice that the algorithm required to implement the three projections is quite
simple.
Yes No
Z1x·Z1y < 0
Yes No
Z1x > 0
1st 4th
Yes No
Z2x·Z2y < 0
Yes No
Z2x > 0
2nd 5th
Yes No
Z3x > 0
3rd 6th
VDC Va
VDC
Vb
VDC
Vc
V100 V110 V111 V111 V110 V100
δ 2Ts δ 1 Ts δ3Ts δ3Ts δ 1 Ts δ 2Ts
Ts Ts
While the following one minimizes the current ripple amplitude and, therefore, current
distortion:
VDC Va
VDC
Vb
VDC
Vc
V000 V100 V110 V111 V110 V100 V 000
δ3 Ts/2 δ 2Ts δ 1 Ts δ3 Ts δ 1 Ts δ 2Ts δ3Ts/2
Ts Ts
ES
Iabc LS RS
+ + N
VDC
-
V1
V2
abc
αβ
SVM
V*β Vα* Iβ Iα
-
α-controller Iα_ref
+
-
β-controller
+ Iβ_ref
DSP