Boost电路如下:
有两种工作状态。
Q导通。
Vin对电感充电,VL=Vin。
电容C对电阻R放电,Ic=-(Vout/R),这里电流的流向与Q关断状态时相反。
Q关断。
电感和Vin加起来作用于C和R,VL=Vin-Vout,这里电感的极性与Q导通时相反。
Ic=IL-(Vout/R),电感电流=电容电流+电阻电流。
连续电流CCM模式下。
一周期内电感充电的电压和放电的电压大小相等,方向相反,即电感的伏秒平衡,可得:
Vin*D*Ts + (Vin-Vout)*(1-D)*Ts = 0
Vout = Vin / (1-D)
一周期内电容充电的电流和放电的电流大小相等,方向相反,即电容的安秒平衡,可得:
(-Vout/R)*D*Ts+(IL-Vout/R)*(1-D)*Ts = 0
IL=(Vout/R) * [1/(1-D)]
两个重要公式:V=L*(di/dt),I=C*(dv/dt)。配合电感的纹波电流ILpp和电容的纹波电压Vcpp,可以计算出L和C的值。纹波电流ILpp一般是输出电流的百分之几,纹波电压Vcpp是输出电压的百分之几。
Vin = L* [ILpp / (D*Ts)],L=(Vin*D*Ts) / ILpp
Iout = C * [Vcpp / (D*Ts)],C=Iout * Vcpp / (D*Ts),Iout=Vout/R。
可以用matlab来计算电路参数,代码如下。
clear;clc;
Vin = 5; %输入电压单位V
Vout = 10; %输出电压单位V
Fs = 5000000; %开关频率单位Hz
Iout = 1; %输出电流单位A
DeltaIL = 0.2; %电流纹波单位A
DeltaVc = 0.01; %电压纹波单位V
Ts = 1/Fs; %开关周期
duty = (Vout - Vin)/Vout;
VL = Vin;
L = (VL * duty * Ts) / DeltaIL;
C = (Iout * duty * Ts) / DeltaVc;
duty = duty * 100; %单位%
Ts = Ts * 10^6; %单位us
L = L * 10^6; %单位uH
C = C * 10^6; %单位uF
fprintf('duty = %.1f%%\n',duty);
fprintf('Ts = %.1fus\n',Ts);
fprintf('L = %.1fuH\n',L);
fprintf('C = %.1fuF\n',C);
结果如下:
Boost电路拓扑如下(仅考虑理想情况)。
仿真结果如下图所示。
可以看出,稳态情况下,B通道为输出电压10.150V,A通道为电感的电流纹波17mV / 0.1R=170mA。
此次仿真为开环控制,所以输出电压不会很准确,而且为会随着负载的变化而变化,因此,必须加入闭环。
上图为电压模式控制,建议在采样电阻后,加入同相电压跟随器,可以把运放的偏置电流的影响降低,从而得到的输出电压较为精准。再把补偿器改为Type III型补偿。
由于multisim仿真闭环并不好用,其中的电路参数可以自行修改。
需要注意的是,这里的CCM模式是一种小信号模型,也就是电路工作在稳态时,纹波很小的时候才能适用。小信号模型有CCM、DCM和CRM三种,也要分别考虑。
boost电路小信号模型推算思路。
3个基本假设:低频假设,小纹波假设,小信号假设。
两个重要公式:V=L*(di/dt),I=C*(dv/dt)。
1、使用平均变量,根据两个重要公式计算一周期内(ton+toff)电感电压、电容电流。
2、分离扰动和线性化。将平均变量替换为直流分量+交流分量,去掉直流分量和高阶交流分量,留下低阶交流分量。
得到以下小信号模型:
化简后,可以得到:
得到的传递函数,导入Matlab中,配合sisotool,可完成环路补偿。