Buck电路的参数计算及仿真

一、Buck电路的参数计算较为简单,可以用matlab来完成,代码如下。

clear;clc;

Vin = 12; %输入电压单位V
Vout = 5; %输出电压单位V
Fs = 100000; %开关频率单位Hz
DeltaIL = 0.25; %电流纹波单位A
DeltaVc = 0.01; %电压纹波单位V

Ts = 1/Fs; %开关周期
duty = Vout / Vin;
VL = Vin - Vout;
L = (VL * duty * Ts) / DeltaIL;
C = (DeltaIL * Ts) / ( 8 * DeltaVc);

duty = duty * 100; %单位%
Ts = Ts * 10^6; %单位us
L = L * 10^6; %单位uH
C = C * 10^6; %单位uF

fprintf(duty  = %.1f%%
,duty);
fprintf(Ts	  = %.1fus
,Ts);
fprintf(L	  = %.1fuH
,L);
fprintf(C 	  = %.1fuF
,C);

结果如下:

Buck电路拓扑如下(仅考虑理想情况)。

仿真结果如下图所示。

可以看出,稳态情况下,B通道为输出电压5.244V,A通道为电流纹波21mV / 0.1R=210mA。

此次仿真为开环控制,所以输出电压不会很准确,而且为会随着负载的变化而变化,因此,必须加入闭环。

二、其它问题。

1、将二极管换为开关管,即为同步Buck电路,可以减少损耗。

经验分享 程序员 微信小程序 职场和发展