kanmaedexandzelbladex
Member level 1
- Joined
- Jul 20, 2013
- Messages
- 35
- Helped
- 1
- Reputation
- 2
- Reaction score
- 1
- Trophy points
- 8
- Location
- Philippines
- Activity points
- 479
3.) Other models show there is a zero due to the output capacitor ESR. In the formula however it does not show any. It also doesn't seem to explain in the pdf what happened to the output ESR capacitor. Can you shed light on this?
As most SMPS models, the paper is using an continuous time equivalent circuit. In most cases, the average delay of the pulse width modulator is a major contribution to loop delay. It's a systematical rather than a non-ideality parameter.
I don't understand the statement. ESR is considered in most design example of the paper. Did you read it completely?
I can't get the pdf to load completely, could you attach it in a post here?
The delay affects the loop transfer function of the inner current mode control loop, multiplying it be e^-st is correct. Then based on that its closed loop transfer function will be modified, and that can be used incorporated in the model of the full boost converter.
The delay time will consist of the delay in the pwm comparator, gate driver, and FET, but should not depend on any voltage snubbers.
ESR doesn't appear in the pg. 26 expression,so yes it's apparently ignored here.
Regarding PWM related delay, a rule of thumb for controllers based on average quantities is 1/2 of the switching period. It can easily make 20 degree additional phase shift. Yes, it's simply a multiplicative e^-st term, in other words a pure phase shift.
1/2 of the switching period is really extreme, for low power DC-DC converters it should be well under 1us, never more than a tenth of the switching period.Regarding PWM related delay, a rule of thumb for controllers based on average quantities is 1/2 of the switching period. It can easily make 20 degree additional phase shift.
Strictly speaking I don't think it's correct, but it's probably a very close approximation.Thank you very much! I would just like to clarify that the e^-std term is to be multiplied with the overall outer loop gain and not just in the inner current loop? In other words, I can just multiply it with the equation in page 26 of the pdf of the loop gain? I would also like to clarify if the delay t_d is the cumulative sum of the propagation delay of the current mode comparator (pulse width modulator) and the turn-on delay of the mosfet?
If you really want to get into gory details:Are there any other stuff in the circuit which might cause noticeable drops in PM and/or GM which I could look into?
I'm talking about the systematical delay of the pulse width modulator. The PWM comparator senses the output voltage once per PWM period, thus an arbitrary disturbance will cause a reaction after averagely 1/2 PWM period.1/2 of the switching period is really extreme, for low power DC-DC converters it should be well under 1us, never more than a tenth of the switching period.
This is the case with regular sampling PWM, but for natural sampling PWM the phase response is very small (and can lead or lag, depending on specific conditions).I'm talking about the systematical delay of the pulse width modulator. The PWM comparator senses the output voltage once per PWM period, thus an arbitrary disturbance will cause a reaction after averagely 1/2 PWM period.
I don't think that the difference matters in this relation. The sampling time can be considered as fixed for a small signal disturbance, also with natural sampling.This is the case with regular sampling PWM, but for natural sampling PWM the phase response is very small (and can lead or lag, depending on specific conditions).
I've put time into simulating natural pwm modulation in matlab (for sinusoidal perturbations, and looking at the fundamental component of the pwm waveform's spectrum), and I just don't see it. And I definitely haven't seen it in any of my actual work building high frequency envelope tracking supplies (but I do see delays due to hardware limitations). If that amount of delay were there, then many of my results wouldn't be possible.I don't think that the difference matters in this relation. The sampling time can be considered as fixed for a small signal disturbance, also with natural sampling.
You have reduced delay in control loops that evaluate the instantaneous rather than an averaged process value. This is the case for the inner current control loop of a current mode controller and the voltage control loop of special PWM controller topologies.
Usual pulse width modulators, e.g. the examples in the post #1 paper show however a 1/2 PWM period average delay.
clear all
close all
fc=100e3; %frequency of pwm ramp
f1=20e3; %frequency of sinusoidal perturbation
R0=0.85; %normalized offset of perturbation, average duty cycle of PWM
R1=0.1; %amplitude of perturbation
ph1=pi/2; %initial phase of perturbation
phc=1*pi/2; %initial phase of pwm ramp (must be positive!)
dt=10e-9; %time step
N_T1=2; %number of reference periods to simulate
t_f=N_T1/f1-dt; %final simulation time
t=[0:dt:t_f]; %generate time base
r=R0+R1*cos(2*pi*f1*t+ph1); %generate time-domain perturbation r
dc=fc*t_f/(t_f/dt);
C=[phc/(2*pi):dc:fc*t_f+phc/(2*pi)]; %generate time-domain ramp carrier
C=rem(C,1);
pwm=(r>C); %generate time-domain pwm
figure(1)
subplot(4,1,1)
plot(t,r)
title('Perturbation r')
xlabel('Time t')
subplot(4,1,2)
plot(t,C)
title('Carrier C')
xlabel('Time t')
subplot(4,1,3)
plot(t,pwm)
title('PWM output')
xlabel('Time t')
f_axis=[-1/(2*dt):1/(t_f+dt):1/(2*dt)-1/(t_f+dt)]; %create frequency axis for spectrum plots
r_spec=fftshift(fft(r)); %fft of reference r
pwm_spec=fftshift(fft(pwm)); %fft of pwm
r_ph=angle(r_spec(find(abs(f_axis-f1)<=10))); %phase angle of reference
pwm_ph=angle(pwm_spec(find(abs(f_axis-f1)<=10))); %phase angle of pwm fundamental
pwm_lag_ph=(pwm_ph-r_ph) %lag of pwm fundamental relative to r, in radians
pwm_lag_angle=pwm_lag_ph*180/pi %in degrees...
pwm_lag_time=-pwm_lag_ph/(2*pi)/f1 %in seconds
pwm_lag_Tc_frac=pwm_lag_time*fc %as a fraction of carrier period
figure(2)
plot(f_axis,real(r_spec),f_axis,imag(r_spec),f_axis,abs(r_spec))
title('Spectrum of reference')
figure(3)
plot(f_axis,real(pwm_spec),f_axis,imag(pwm_spec),f_axis,abs(pwm_spec))
title('Spectrum of pwm')
pwm_spec_f1=pwm_spec.*((abs(f_axis-f1)<=10))+ pwm_spec.*((abs(f_axis+f1)<=10));
figure(4)
plot(f_axis,real(pwm_spec_f1),f_axis,imag(pwm_spec_f1),f_axis,abs(pwm_spec_f1))
title('Spectrum of pwm, fundamental component only')
pwm_f1=ifft(ifftshift(pwm_spec_f1)); %generate time-domain fundamental component of pwm
figure(1)
subplot(4,1,4)
plot(t,r,t,real(pwm_f1)+R0)
title('Fundamental component of reference and pwm')
xlabel('Time t')
legend('input r','fundamental of pwm')
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?