Converter System Modeling via MATLABSimulink [610162]
Converter System Modeling via MATLAB/Simulink
A powerful environment for system modeling and simulation
MATLAB : programming and scripting environment
Simulink : block diagram modeling environment that runs inside MATLAB
Things we can achieve, relative to Spice:
• Higher level of abstraction, suitable for higher-level system models
• More sophisticated controller models
• Arbitrary system elements
But:
• We have to derive our own mathematical models
• Simulink signals are unidirectional as in conventional block
diagrams
At CoPEC, nearly all simulation is done within MATLAB/Simulink
Open-loop buck converter
Time domain simulation including switching ripple
Closed-loop buck converter, digital control
Time domain simulation with switching ripple
Open-loop buck-boost converter
Frequency domain simulation, averaged model
Control-to-output transfer function
Closed-loop buck converter
Frequency domain simulation, averaged model
Loop gain: Bode plot
MATLAB/Simulink discussion
• A structured way to write the converter averaged equations,
suitable for implementation in Simulink:
State-space averaging
• Some basic converter models, implemented in Simulink
• How to plot small-signal transfer functions in Simulink
• Modeling the discontinuous conduction mode
Synchronous buck converter
Formulating state equations for Simulink model
iC=i–iLoad
ig=diL+tr
TsiL+Qr
TsAveraging the input current
Averaging the capacitor current:
For both intervals,
Resulting state equations:
vL(t)
t dTs TsAveraging the inductor voltage
vL=dvg–iRon+RL–vout+d–iRon+RL–vout
with vout=v+i–iLoad esr
so vL=dvg–iRon+RL–v–i–iLoad esrig=diL+tr
TsiL+Qr
Ts
Ldi
dt=vL=dvg–iRon+RL–v–i–iLoad esr
Cdv
dt=iC=i–iLoad
vout=v+i–iLoad esr
Basic buck converter model
Averaged model for Simulink
Independent
inputsIntegration of state
variables
Outputs
Embedded MATLAB
code block:
• Load inputs from u
vector
• Set circuit parameters
• Calculate state
equations and outputs
• Place results in output
y vector(used in current
mode control)
Time-domain simulation
Synchronous buck example, Simulink
Simulink model
employing
synchronous buck
model, with voltage
mode control
Output voltage transient
response
Generating a Bode Plot from the Simulink file
1. Set transfer function input and output points
• Right-click on the desired wire
• Select “Linearization Points”, then “input point” or “output point”
Generating a Bode Plot from Simulink, p. 2
%% Bode plotter using linearization tool
% requires simulink control design toolbox
mdl = 'buckCPM4Vmodetester '; % set to file name of simulink model. Must
have i/o points set within this model
io = getlinio(mdl) % get i/o signals of mdl
op = operspec(mdl)
op = findop(mdl,op) % calculate model operating point
lin = linearize(mdl,op,io) % compute state space model of linearized
system
ltiview(lin) % send linearized model to LTI Viewer tool
• Save this as a script (“.m file”) and run it whenever you want to
generate a Bode plot
• This script finds the steady-state operating point and linearizes the
model
• The last line opens the LTI Viewer tool, which generates various
small-signal plots including Bode, step response, pole/zero, Nyquist, etc.
Control-to-output transfer function Gvd
Generated by Simulink
Synchronous buck example of previous slides
Modeling DCM
Buck example, Simulink model
iL(t)
tipk
dTs d2TsTs
In DCM, the average inductor current
can be expressed as:
Treat the average inductor current
as an independent state, and solve
for d2:
Note that d2 = 1 – d in CCM, and
d2 < 1 – d in DCM
Combined CCM-DCM model
Buck converter
State equations:
Simulink model
Buck control-to-output transfer function
CCM vs. DCM
R = 3Ω: CCM
R = 24Ω: DCM
Fundamentals of Power Electronics Chapter 9: Controller design 469.5.4. Design example
+
–+
v(t)
–vg(t)
28 V–+
CompensatorHv Pulse-width
modulatorvcTransistor
gate driver
δ Gc(s)H(s)
veError
signalSensor
gainiloadL
50 µH
C
500 µFR
3 Ω
fs = 100 kHz
VM = 4 Vvref
5 V
Closed-loop buck converter
Simulink frequency domain simulation, averaged model
Loop gain: Bode plot
Transfer function blocks:
Implementing the PID compensator Injection point for
measurement of
loop gain T(s)fc ϕm
Closed-loop line-to-output transfer function
Simulink frequency domain simulation
Closed loop Gvg
Open loop GvgOpen loop
Closed loop
Script that generates both plots
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Converter System Modeling via MATLABSimulink [610162] (ID: 610162)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
