第三节:零电压开关(ZVS)原理——ZVS的实现条件与关键波形分析

各位工程师朋友,咱们接着聊软开关。上一节讲了开关损耗的来龙去脉,这一节我重点说说零电压开关——也就是ZVS。说白了,ZVS就是在开关管导通之前,先把它的漏源电压降到零,然后再给栅极信号。这样一来,开通瞬间就没有电压和电流的交叠,损耗自然就没了。

我在做第一代通信电源的时候,就吃过硬开关的亏。那时候效率卡在92%上不去,散热器烫得能煎鸡蛋。后来换成ZVS方案,效率直接跳到96%,温升降了20度。嗯,从那以后我对ZVS就特别上心。

一、ZVS的基本原理

ZVS的核心思想其实很简单:利用谐振或者辅助电路,在开关管开通前,把它的结电容电压抽到零。你想想看,如果MOSFET的漏源电压已经是0V了,那开通时就不会有Coss的放电损耗,也不会有Vds和Id的交叠区。

为什么会这样?因为MOSFET的寄生电容Coss里存着能量:

E = 0.5 × Coss × Vds²

如果Vds在开通前被放到了0V,那这部分能量就不会在开关管内部消耗掉,而是转移到别的地方去了。我个人习惯把这个过程叫做“电荷的温柔转移”,而不是硬生生地短路放掉。

ZVS的本质:在开关管导通之前,利用谐振电流将结电容电压谐振到零,实现零电压开通。

二、ZVS的实现条件

要实现ZVS,必须满足三个条件。少一个都不行,我在项目里踩过这个坑。

条件一:足够的谐振能量

谐振电流必须能抽走结电容上的电荷。这个条件用公式表达就是:

0.5 × Lr × Ipk² ≥ 0.5 × Coss × Vds²

其中Lr是谐振电感,Ipk是谐振电流峰值。左边是电感里存的能量,右边是电容里存的能量。只有左边大于等于右边,才能把电压拉到零。

我曾经做过一个48V输入的DC-DC,算出来能量刚好够,结果实际测试时ZVS就是实现不了。后来发现是PCB寄生电容没算进去,实际Coss比手册大了30%。从那以后,我设计时都会留20%的余量。

条件二:足够的死区时间

谐振需要时间。死区时间太短,电压还没降到零就开通了;死区时间太长,电压又会反弹回去。这个时间窗口很关键。

死区时间的计算公式:

Tdead ≥ π × √(Lr × Coss)

注意,这里用的是π,不是π/2。因为谐振是从Vds到0V,需要半个谐振周期。我建议你实际调试时,用示波器看Vds波形,死区时间调到谐振谷底位置就对了。

调试技巧:先把死区时间设大一点,比如200ns,然后慢慢减小。观察Vds波形,当它刚好降到零时,那个时间点就是最佳死区时间。

条件三:电流方向必须正确

这个很多人会忽略。谐振电流的方向必须是从开关管的源极流向漏极(对于NMOS),也就是反向导通。如果电流方向反了,不但不能放电,反而会充电。

说白了,ZVS是靠体二极管或者同步整流管的沟道来续流的。电流必须先把结电容放完,然后体二极管自然导通,这时候给栅极信号,就是零电压开通。

三、关键波形分析

咱们来看一个典型的半桥LLC变换器的ZVS波形。我拿实际测试的波形来说事。

波形名称 关键特征 判断标准
Vds波形 开通前降到0V,保持平坦 电压降到0后至少保持50ns
Vgs波形 在Vds为0后上升 Vgs上升沿在Vds谷底之后
谐振电流波形 死区时间内有正弦变化 电流过零后继续反向增大
体二极管导通波形 Vds为0时,有负向电流 体二极管导通时间约50-100ns

我教你一个快速判断ZVS是否实现的方法:用示波器看Vds波形,如果它在开通前有一个平滑的下降斜坡,并且降到0V后保持平坦,那就是ZVS。如果下降过程中突然被Vgs打断,那就是死区时间不够。

注意:Vds降到0V后如果出现振荡,说明谐振能量过大或者死区时间太长。这时候要适当减小谐振电感或者缩短死区时间。

四、实际设计中的避坑指南

做ZVS设计,有几个坑我替你们踩过了,直接说结论:

  1. 轻载时ZVS容易丢失。负载越轻,谐振电流越小,能量就不够。我建议在轻载时采用突发模式或者频率调制来维持ZVS。
  2. 输入电压越高,ZVS越难实现。因为Vds变大了,需要的谐振能量是平方关系增长。这时候要加大谐振电感或者提高励磁电流。
  3. MOSFET的Coss不是常数。它随Vds变化,高压时Coss小,低压时Coss大。计算时要用等效电容,或者直接看datasheet里的曲线。
  4. PCB布局影响谐振参数。走线电感会改变谐振频率,我建议谐振回路走线尽量短而宽,减少寄生参数。

五、一个简单的设计实例

假设我们要设计一个400V输入的半桥LLC,用两个IPW60R099P7 MOSFET。查手册得Coss≈150pF(在400V时),谐振电感Lr=100μH。

先算谐振能量:

E_cap = 0.5 × 150pF × 400² = 12μJ
E_ind = 0.5 × 100μH × Ipk²

要满足E_ind ≥ E_cap,需要Ipk ≥ 0.49A。这个电流很小,实际励磁电流通常有几安培,所以ZVS很容易实现。

再算死区时间:

Tdead ≥ π × √(100μH × 150pF) ≈ 385ns

实际设计时我会取400ns,然后根据测试结果微调。嗯,这里要注意,如果用了更大的MOSFET,Coss会更大,死区时间也要相应增加。

我的经验:ZVS设计不要追求完美,只要Vds能降到20V以下,损耗就已经很小了。非要降到0V,可能会牺牲太多死区时间,反而影响效率。

好了,这一节的内容就到这里。ZVS的原理其实不复杂,关键是要理解能量转移的过程,以及三个实现条件缺一不可。下一节咱们聊聊零电流开关(ZCS),那个又是另一番天地了。