三通道交错并联双向buck-boost变换器。 通过simulink搭建的三通道交错并联双向buck-boost变换器,采用电压外环,三电流内环,载波移相120°的控制方式。 在buck模式与boost模式互相切换之间,不会产生过压与过流,实现了能量双向流动。 且交错并联的拓补结构,可以减少电感电流的纹波,减小每相电感的体积,提高电路的响应速度。 该拓补可以用于储能系统中。 整个仿真全部离散化,采用离散解析器,主电路与控制部分以不同的步长运行,更加贴合实际,控制与采样环节全部自己手工搭建,没有采用Matlab自带的模块。
我叼着咖啡杯蹲在实验室椅子上,盯着Simulink里疯狂跳动的波形。这个三通道交错并联双向buck-boost变换器就像个叛逆期的熊孩子------你永远不知道它什么时候会给你搞出个过压惊喜。但老子的强迫症发作,非得驯服这货不可。
三通道交错并联双向buck-boost变换器。 通过simulink搭建的三通道交错并联双向buck-boost变换器,采用电压外环,三电流内环,载波移相120°的控制方式。 在buck模式与boost模式互相切换之间,不会产生过压与过流,实现了能量双向流动。 且交错并联的拓补结构,可以减少电感电流的纹波,减小每相电感的体积,提高电路的响应速度。 该拓补可以用于储能系统中。 整个仿真全部离散化,采用离散解析器,主电路与控制部分以不同的步长运行,更加贴合实际,控制与采样环节全部自己手工搭建,没有采用Matlab自带的模块。
先说说拓扑结构这个老相好。三个电感像跳广场舞的大妈似的,120度相位差排列。这种排列玄机深得很------当A相电感电流爬到峰值时,B相刚好处在上升沿,C相在下降沿。三路电流叠加后的总纹波直接被削成狗,实测纹波系数比单相结构降了60%。这可不是吹牛逼,看看这段载波生成代码:
matlab
function [carrier] = fcn(phase_shift)
% 三路移相载波生成
persistent theta;
if isempty(theta)
theta = 0;
end
theta = theta + 2*pi/3 * phase_shift; % 120度相位差
carrier = sawtooth(theta); % 锯齿波生成
控制策略才是真正的戏肉。电压外环像个老道的操盘手,盯着直流母线电压的微妙波动。三路电流内环则是三个操刀手,每人管一相电感的死活。重点是这个模式切换的骚操作------当检测到能量流动方向反转时,控制算法得在0.5ms内完成从buck到boost的丝滑切换。我往状态机里塞了这段逻辑:
c
if (V_bus > V_ref + dead_zone)
mode = BOOST;
duty_cycle = (V_ref/V_bus); // 降压模式占空比
else if (V_bus < V_ref - dead_zone)
mode = BUCK;
duty_cycle = (V_bus/V_ref); // 升压模式占空比
else
// 滞环区间内保持当前模式
离散化仿真这事坑得我够呛。主电路用10us步长模拟开关管的鬼畜动作,控制环路却要用50us步长------毕竟现实中的DSP处理速度就这尿性。最绝的是采样环节,老子手工搭了个带量化噪声的ADC模型,连那0.5LSB的偏移都给模拟出来了。看看这个丧病的离散实现:
matlab
function [adc_out] = ADC_model(analog_in)
% 12位ADC模型
LSB = 3.3/4096;
quantized = round(analog_in/LSB)*LSB;
adc_out = quantized + 0.5*LSB*randn(); // 叠加随机噪声
测试那天,当看到模式切换时母线电压稳如老狗的波形,实验室的示波器仿佛在对我抛媚眼。这拓扑用在储能系统里简直量身定做------电池充放电时电感温升降低了8℃,响应速度比传统结构快了两倍不止。不过说真的,调这种多相交错系统就像在钢丝上跳芭蕾,稍不留神就会摔个电感爆炸的烟花秀。但谁让咱们工程师就爱这种刀尖舔血的刺激呢?