Buck-boost变换器仿真模型,包含反相buckboost和四管同相buckboost,基于MATLAB/Simulink建模仿真。 输出电压闭环控制模型,适合入门学习使用。 仿真模型使用MATLAB 2017b搭建
老铁们今天带大家玩点硬核的,咱们用Simulink手搓两种Buck-Boost电路模型。先说清楚啊,这可不是网上那些只能看不能摸的理论教程,直接上能跑起来的仿真模型,保证你们手把手调出稳定波形。
先说反相Buck-Boost这货,别看名字唬人,其实就是个会变魔术的电路。上电那会儿,电感先吃电流(充电模式),然后突然断电释放能量(放电模式),这一充一放就把电压极性给反转了。咱们在Simulink里搭模型的时候,重点盯住开关管的PWM信号和电感电流的续流路径。
给各位看看关键参数设置:
开关频率 = 50e3; % 老司机建议新手别超过100kHz 占空比 = 0.6; % 初始值设个中间值,后面闭环会自动调 电感值 = 22e-6; % 按纹波电流公式算出来的这里有个骚操作——用Controlled Voltage Source模拟二极管的反向恢复特性,比直接甩个理想二极管真实多了。注意看仿真波形里输出电压的负极性,这可是反相拓扑的标志性特征。
接着唠四管同相结构,这玩意儿简直就是个变形金刚。上下桥臂四个MOS管组成H桥,通过控制开关时序实现升降压且不反转极性。建模时最怕直通炸管,所以死区时间必须安排上:
死区时间 = 100e-9; % 根据MOS管规格书设置 PWM生成模块里勾选'互补输出'选项 交叉导通保护使能打钩√重点观察电感电流是否连续,这直接关系到输出电压纹波。建议新手把仿真步长设为开关周期的1/100,用ode23tb求解器比较稳当。
闭环控制才是重头戏,咱们搞了个三环架构:外环电压环+内环电流环+最内层的PWM生成。PID参数别直接照搬教科书,教你们个野路子:
Kp = 0.05; Ki = 200; Kd = 1e-6;调参时先让Ki=0,慢慢加大Kp直到出现震荡,然后回退20%留出余量。最后加Ki消除静差,注意别整太大了容易积分饱和。
最后给小白们提个醒:仿真时别用默认的VariableStep自动步长,Buck-Boost这种开关电路必须用FixedStep才能准确捕捉开关瞬间的状态变化。遇到波形震荡别慌,八成是电感取值太小或者输出电容ESR没设置合理值。