半桥LLC谐振变换器及同步整流MATLAB仿真(二)

在上文《半桥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菜单栏左上角选择"新建脚本",创建一个空脚本,然后输入如下程序:

vbscript 复制代码
%基本参数%
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参数调节,在前面几篇文章中都有详细介绍,这里就不讲了。可参考如下参数(不一定是最好的):

如果仿真过程中出现报错"电感开路",可在对应电感的两端并联一个阻值非常大的电阻。如下,谐振电感与变压器副边都并联有大电阻。

运行仿真,即可。

相关推荐
jk_1015 小时前
MATLAB中characterListPattern函数用法
开发语言·matlab
恩泽君1 天前
Matlab总提示内存不够用,明明小于电脑内存
开发语言·matlab
机器学习之心1 天前
回归预测 | MATLAB基于TCN-BiGRU时间卷积神经网络结合双向门控循环单元多输入单输出回归预测
matlab·回归·多输入单输出回归预测·cnn·tcn-bigru·时间卷积双向门控循环单元
David WangYang1 天前
Zemax STAR 模块的入门设置
硬件工程
Better Rose1 天前
【数学建模美赛速成系列】O奖论文绘图复现代码
数学建模·matlab
kuan_li_lyg1 天前
ROS2 与机器人视觉入门教程(ROS2 OpenCV)
开发语言·人工智能·opencv·计算机视觉·matlab·机器人·ros
matlabgoodboy2 天前
matlab程序代编程写做代码图像处理BP神经网络机器深度学习python
图像处理·深度学习·matlab
Ronin-Lotus2 天前
嵌入式硬件篇---PID控制
单片机·嵌入式硬件·mcu·学习·程序人生·算法·硬件工程
jk_1012 天前
MATLAB中regexptranslate函数用法
开发语言·mysql·matlab
freexyn3 天前
Matlab自学笔记四十五:日期时间型和字符、字符串以及double型的相互转换方法
开发语言·笔记·matlab