在上文《半桥LLC谐振变换器及同步整流MATLAB仿真(一)》讲解了半桥LLC谐振变换器的工作原理,本文将利用MATLAB搭建电路模型进行仿真。
参数:输入电压:400Vdc;输出电压范围:36-50V ;输出电流最大值50A。
主电路关键器件参数这里就不详细计算了,如下参数仅供参考:
谐振电容Cr:100nF;
谐振电感Lr:20uH;
变压器原边感量Lm:80uH;
变压器副边感量L2:5uH;
变压器匝比:4:1
一般在电路参数设计需要验证参数是否合理。比如,增益是否能满足电压、电流、功率的要求。绘制输出电压Vout与开关频率f的函数曲线,需要用到LLC的输出电压计算公式:
式中Vin表示输入电压,n表示电压器匝比,k表示即励磁电感Lm与谐振电感Lr的比值,fr表示谐振频率,f表示开关频率,Q表示Q值(其定义可看上文)。
绘制函数曲线常用mathcad、matlab等软件。我这里直接使用matlab的脚本进行曲线绘制:
在matlab菜单栏左上角选择“新建脚本”,创建一个空脚本,然后输入如下程序:
%基本参数%
Lr=20; %谐振电感/uH
Lm=80; %励磁电感/uH
Cr=0.1; %谐振电容/uF
R=[1,2,5] ; %输出电阻,分别代表轻载、半载、满载时的电阻/R
n=4; %变压器匝数比
Vin=400;f=linspace(30,200);%f区间for i=1:3 %for循环计算不同的R值所对应的增益曲线
Fr1=1./(2*pi*sqrt(Lr*Cr./1000000)); %计算Fr1
K=Lm./Lr; %系数K
Req=(8./(pi*pi))*n*n*R(i); %输出电阻等效到原边
Q=sqrt(Lr./Cr)./Req; %计算Q
G=1./( ((1-(Fr1./f).*(Fr1./f))./K+1).^2 + Q.*Q.*((f./Fr1-Fr1./f).^2 ) ); %增益公式
Vout=Vin.*G./n./2; %输出电压计算(输入x增益/变压器匝比)
%plot(f,G); %绘制增益曲线
plot(f,Vout); %绘制输出电压曲线
hold on; %保持上次绘制的曲线
end
然后点击运行,或者按F5.
就能得到如下曲线:
三条曲线分别代表程序里设置的R=1、2、5时的电压变化曲线。峰值越高的曲线对应较小的负载R值时的曲线。可以发现,3条曲线都会经过(112,50)这个点。而本LLC的谐振频率正是112kHz。这就是LLC的谐振点工作特性:不管负载多大,输出电压都是相同的。关于LLC详细的原理,可参考我上篇文章,这里就不详细说了。
在主界面的右边有一个工作区,可以查看程序中所有中间变量的值,例如K值、Q值、Req。
我们回到仿真,在matlab中新建simlink空白模型。首先是主电路,模型如下。
开关管Q1.Q2可参考如下参数
Snubber resistance Rs(缓冲电阻)设为inf(无穷大)即表示不需要缓冲电阻;Snubber capacitance Cs(缓冲电容)设为0即表示不需要缓冲电容。这两个参数这样设置可以尽可能模拟理想的器件。
所有的电阻、电容、电感都是选择series RLC Branch,然后在里面可修改成单独的电感电容电阻。
变压器选择Linear Transformer,参数如下
变压器选择线性变压器,我们只需要双绕组,所以取消勾选“Three windings transformer”
变压器参数我这里使用的都是国际单位制,也可以使用标幺值。
Q1、Q2驱动,模型如下:
输出端口”Frequency“即驱动的频率,输出端口Q1、Q2分别为上下管的驱动。80k频率驱动仿真波形:
调节最右边的costant参数,可以修改死区时间。计算为:死区时间=周期*(1-0.99)/2。
同步整流及控制模块:
该模块即通过分别采集每个MOSFET的DS电压,来控制对应MOS的关断与截止。
输出电压环控制:
电压环用以稳住输出电压,这里没使用电流环进行控制,电压环与电流环的双环控制方法 可参考《反激式开关电源的双环控制(电压环+电流环)之MATLAB仿真》,方法基本一样。
其中“电压基准”即想要的输出电压,“频率最大值“ 即最大的开关频率,这里我设置成180K,另外还需要设置PID的输出范围:
这里我设置成0-100。
根据模型可以知道,开关频率=频率最大值(180)-PID输出(0-100)。所以,开关频率范围为80-180kHz。如果输出电压上下限不满足要求,可在这里修改开关频率上下限。
电压环的PID参数调节,在前面几篇文章中都有详细介绍,这里就不讲了。可参考如下参数(不一定是最好的):
如果仿真过程中出现报错“电感开路”,可在对应电感的两端并联一个阻值非常大的电阻。如下,谐振电感与变压器副边都并联有大电阻。
运行仿真,即可。