1. 硬开关的疼:MOSFET在关断和开通时到底损失了多少
做反激电源这些年,我调过最多的不是环路补偿,而是开关管换来的那一串温度。早几年做12V/3A适配器,用固定频率DCM方案,满载跑到MOSFET外壳90℃是家常便饭,风扇一停心里就发慌。后来同一套变压器和MOSFET,换成准谐振(QR)控制,温升直接掉下去十几度。这个差距不是玄学,是开关损耗实打实的差别。
先聊一个问题:反激变换器里,MOSFET的损耗到底从哪来。导通损耗取决于 (I_{rms}^2 \times R_{DS(on)}),这个大家都会算。但很多人容易忽略的是开关损耗——开通损耗、关断损耗、以及输出电容 (C_{oss}) 的容性放电损耗。固定频率PWM在DCM模式下,开关管关断时刻的电流不为零,漏源电压又很高,电压和电流叠加在一起,那个面积就是实实在在的热量。更糟的是,如果开通时刻落在Vds振荡的高处,(C_{oss})里存的能量 (\frac{1}{2}C_{oss}V_{ds}^2) 会在管子内部一放而空,频率越高,这部分损耗越夸张。
反激拓扑在这一点上特别吃亏,因为它的变压器是耦合电感,原副边电流不是同时流通的。传统方案要么用固定频率PWM硬扛,要么用RCD吸收掉一部分尖峰,损耗始终在那里。
QR模式改变的就是这件事——它让开关管每次都在漏源电压振荡到谷底时才开通。这样一来,开通瞬间的 (V_{ds}) 最低,(C_{oss}) 放电损耗最小,电压电流重叠面积大幅缩小。很多人以为QR是某种复杂的软开关,其实它本质上仍然工作在DCM/BCM边界,只是用谐振的“坑”把开通损耗给埋掉了。下面我从物理过程开始,一层层拆开讲。
2. 谷底导通的物理过程:LC谐振让Vds自己找到最低点
2.1 反激关断之后的完整波形长什么样
要理解QR,先得看反激的主开关关断后,电路里发生了什么。
假设主开关 (Q_{main}) 导通时,原边电流从0线性上升到 (I_{pk})。关断瞬间,变压器极性反转,次级二极管导通,能量开始向副边传递。这时 (Q_{main}) 的漏源电压被抬升,典型表达式为:
[ V_{ds} = V_{bulk} + n(V_{out} + V_f) ]
其中 (V_{bulk}) 是整流后的母线电压,(n) 是原副边匝比,(V_f) 是次级整流二极管压降。这一阶段也叫“退磁阶段”,副边电流从峰值线性下降到0。
当退磁结束——也就是说副边电流降到零——次级二极管关断。此时变压器原边电感 (L_m) 和MOSFET的输出电容 (C_{oss}) 构成了一个LC谐振回路。(V_{ds}) 不再停在 (V_{bulk}+V_{OR}),而是以 (V_{bulk}) 为中心开始正弦振荡。如果没人在合适的时间点干预,这个振荡会一直衰减下去,直到下一个开关周期到来。
QR要做的,就是在振荡的第一圈或者第二圈,挑Vds最低的那个位置把开关管重新开通。
2.2 谷底开通为什么损耗小
先说一个常见的误区:QR不是零电压开关(ZVS)。ZVS是开通前把Vds压到0,体二极管先导通,开关管在零电压下开通。QR的谷底电压通常不是0,它等于 (V_{bulk} - V_{OR}) 左右(忽略损耗),也就是谐振振荡的最低点。
那损耗从哪省下来的?两个方向:
- 容性损耗:MOSFET的 (C_{oss}) 在关断期间被充到高压,开通瞬间若在高压处硬开通,电容里的能量在沟道内释放。谷底开通时 (V_{ds}) 只有 (V_{bulk} - V_{OR}),这个能量按电压平方关系下降,直观多了。
- 电流电压重叠损耗:硬开通时,电流爬升的同时Vds还维持在高位,两者重叠产生很大的瞬时功率。谷底开通时Vds接近最低点,电流再从0爬升,重叠面积小得多。
所以说,QR不是把损耗消灭了,而是把损耗从“最贵的开通损耗”转移到了“相对便宜的导通损耗”和“幅度可控的关断损耗”上。
2.3 为什么QR模式频率不固定
这是很多人上手QR时最不适应的一点。固定频率PWM的周期是个常量,QR下周期是浮动的。原因也简单:开关频率由退磁时间和等待谷底的时间拼接而成。退磁时间取决于当时的 (I_{pk})、输入电压、输出电压这三个量,等待谷底的时间又取决于Lm和Coss的谐振周期。输入电压一变,负载一变,(I_{pk}) 随之变化,退磁时间就变了,周期自然跟着变。
这样做的直接后果是,QR模式的开关频率在输入电压和负载两个维度上都是变化的。轻载时峰值电流小,退磁时间短,频率还会继续降。听上去不像是优点,但在宽电压范围的适配器场景里,QR这种“低压重载降频、高压轻载升频”的自适应特性,恰好避开了固定频率方案在高压轻载时损耗集中的问题。
2.4 谐振周期的估算
谷底振荡频率(角频率)由 (L_m) 和 (C_{oss}) 决定:
[ f_{res} = \frac{1}{2\pi\sqrt{L_m \cdot C_{oss}}} ]
但这不直接等于开关频率。开关频率是“Ton + Tdemag + 等待谷底的时间”的倒数。等待谷底的时间通常是 (\frac{1}{2}T_{res}) 的整数倍,具体落在第几个谷底,取决于负载和输入电压的组合。实际调试时你会观察到,负载从满载往轻载走,开关管可能从第一个谷底跳到第二个、第三个谷底,频率呈阶梯式下降——这个我们后面示波器实测的时候再说。
3. NCP1377如何感知谷底:引脚逻辑与内部机制的配合
3.1 为什么选NCP1377这颗控制器
市面上带谷底检测的PWM控制器不少,飞兆(现安森美)的FSGM系列、意法的L6566,还有NCP1377。NCP1377是比较老牌、也非常经典的一颗谷底开关控制器,峰值电流模式,内置最大频率钳位、跳周期和一系列保护。
它不需要复杂的数字配置,外围器件也比较常规,很适合作为理解QR控制逻辑的入门芯片。在它的数据手册里,明确写着通过辅助绕组做“退磁检测”,也就是ZCD引脚。
3.2 ZCD引脚的检测原理
ZCD引脚通过电阻连接到辅助绕组。辅助绕组的电压实时反映了主变压器绕组的电压状态。退磁期间辅助绕组电压为正(次级续流期),退磁结束后进入谐振,辅助绕组电压开始过零翻转并振荡。
NCP1377内部通过比较器检测ZCD引脚的电压变化,从过零事件中提取“谷底”信息。当检测到辅助绕组电压经历过零并到达设定触发点时,内部逻辑输出Gate脉冲,把主开关管重新打开。这样,外部不需要额外的高压检测电路,一颗十几块钱的控制器就完成了谷底感知、时序生成和驱动。
这里有一个需要留意的细节:ZCD引脚内部的输入钳位是有限制的。串联电阻不能选得太小,否则辅助绕组在开关管导通期间的负压会把引脚电流拉过大。常见做法是串接20kΩ到100kΩ的电阻,既保证信号幅度能触发检测,又限制了内部钳位二极管的电流。具体取值,后面章节结合实例计算。
3.3 最大频率钳位与轻载降频
QR模式还有个大问题——如果输入电压很高、负载很重,退磁时间和谐振等待时间都很短,开关频率可能冲到几百千赫。频率太高,一方面驱动损耗增加,另一方面磁芯损耗也随之上升。NCP1377内部把开关频率钳在75kHz左右(以数据手册为准),也就是说,即使电路自己“想”跑得更快,芯片也不允许。
轻载时情况反过来。峰值电流小,退磁时间短,如果严格按第一个谷底触发,频率会变得很低。为了不让频率掉进音频范围引发变压器噪声,NCP1377结合峰值电流控制,在轻载时主动降低频率,并在极轻载时进入跳周期模式(skip cycle),跳过若干个开关周期,从宏观上保持输出稳定,同时大幅降低待机功耗。
3.4 NCP1377关键引脚速览
| 引脚 | 名称 | 功能要点 |
|---|---|---|
| 1 | FB | 反馈输入,接收光耦信号,控制峰值电流 |
| 2 | CS | 电流检测输入,连接原边采样电阻,实现逐周期限流 |
| 3 | ZCD | 过零检测输入,连接辅助绕组,检测谷底 |
| 4 | GND | 地 |
| 5 | OUT | 栅极驱动输出 |
| 6 | VCC | 供电,内设UVLO |
| 7 | NC | 空脚 |
| 8 | HV | 高压启动,连接整流后母线 |
高压启动脚的存在很关键——这让启动电阻可以选得很大,甚至从母线直接供电给内部启动电流源。启动完成之后芯片由辅助绕组供电,启动电阻不再消耗大功率。这是我做低待机功耗设计时特别看重的功能。
4. 36W/12V方案的定量计算:变压器、ZCD与CS电阻怎么定
4.1 设计规格先行
为了演示完整的配置流程,我以最常见的36W适配器为例:
| 参数 | 数值 |
|---|---|
| 交流输入范围 | 90~264 VAC |
| 输出电压 | 12V |
| 输出电流 | 3A |
| 目标效率 | ≥88%(满载) |
| 最低开关频率 | 约40kHz(满载、最低输入电压) |
| 原边反射电压 VOR | 约100V |
4.2 变压器计算:匝比、初次级匝数、原边电感
匝比 (n_{ps}) 由反射电压 (V_{OR}) 决定:
[ n_{ps} = \frac{V_{OR}}{V_{out}+V_f} = \frac{100}{12+0.6} \approx 7.9 ]
取整 (n_{ps}=8)。这里 (V_f) 是次级整流管的导通压降,同步整流方案可以压到0.1V左右,肖特基取0.4~0.6V比较常见。
然后按边界导通计算原边电感。满载最低母线电压 (V_{bulk_min}) 取90VAC整流后的值,考虑20V纹波和整流损耗:
[ V_{bulk_min} = 90 \times 1.414 - 20 \approx 107V ]
满载输入功率:
[ P_{in} = \frac{36}{0.88} \approx 41W ]
QR在边界导通下的功率公式:
[ P_{in} = \frac{V_{bulk}^2 \cdot D^2}{2 L_m f} ]
最大占空比:
[ D_{max} = \frac{V_{OR}}{V_{bulk_min} + V_{OR}} = \frac{100}{107+100} \approx 0.483 ]
把最低频率40kHz代入,解得:
[ L_m \approx 820\mu H ]
原边匝数由磁芯参数和最大磁通密度决定。36W/75kHz频率范围,EE25或EE28磁芯足够,取 (A_e=85mm^2),(B_{max}=0.22T):
[ N_p = \frac{L_m \cdot I_{pk}}{B_{max}\cdot A_e} ]
峰值电流 (I_{pk} = \frac{V_{bulk}\cdot D}{L_m \cdot f} \approx 1.58A),代入上式得 (N_p\approx 69)匝,取整70匝。次级匝数:
[ N_s = \frac{N_p}{n_{ps}} = \frac{70}{8} \approx 8.75 ]
取9匝,实际匝比变成 (70:9\approx7.8),(V_{OR}) 随之微调为 (7.8\times12.6\approx98V),仍在可接受范围。辅助绕组按给VCC提供15V附近电压设计:如果辅助绕组与次级耦合紧密,(N_{aux} \approx 9\times(15+0.6)/12.6\approx11)匝。
4.3 RCD钳位网络的取值
QR模式下关断瞬间的漏感尖峰依然存在,只是时机和波形形态与硬开关不同。RCD钳位电压一般取1.5倍VOR左右:
[ V_{clamp} = 1.5 \times 100 = 150V ]
假设漏感 (L_{leak}) 约为原边电感的2%,即16.4μH,漏感能量:
[ W = \frac{1}{2}L_{leak}I_{pk}^2 = \frac{1}{2}\times16.4\mu H\times1.58^2 \approx 20.5\mu J ]
钳位电阻功耗为:
[ P_{RCD} = W\cdot f = 20.5\mu J \times 40kHz \approx 0.82W ]
所以钳位电阻选2W,阻值按 (R = V_{clamp}^2/P_{RCD}) 估算,约27kΩ。钳位电容一般不追求严格计算,按“时间常数远大于开关周期”的经验取2.2nF~4.7nF,耐压至少630V,实际调试时用示波器看Vds波形微调。
4.4 ZCD电阻的取值
辅助绕组在退磁期间电压约15V,ZCD引脚内部钳位。工程上保证流进引脚的电流在2mA以内:
[ R_{ZCD} = \frac{V_{aux} - 0.7}{2mA} \approx \frac{15-0.7}{2mA} \approx 7.2k\Omega ]
实际取值建议用三个10kΩ电阻串联,总阻值30kΩ,降低单颗电阻的耐压和功耗压力。ZCD电阻选小了,引脚电流过大,热量和可靠性都有问题;选大了,信号幅度不足或者边沿变缓,可能导致谷底检测错过、开关相位移到谐振的后沿。
这里补充一个调试经验:如果发现Vds波形在谷底附近没有立刻开通,而是等到了振荡的上升沿才开通,大概率是ZCD阻值偏大或者并联电容过大导致过零检测延迟。用示波器在ZCD引脚和GATE引脚对照看,问题会非常明显。
4.5 电流检测电阻与OCP点
NCP1377的CS引脚过流阈值典型值约为1V。按原边最大峰值电流 (I_{pk}=1.58A),留20%余量设 (I_{limit}=1.9A):
[ R_{CS} = \frac{1V}{1.9A} \approx 0.53\Omega ]
取标称值0.51Ω。注意CS引脚上的RC滤波器:滤波电容建议1nF以下,电阻控制在100Ω级别,避免过流保护响应速度被拖慢。
4.6 启动配置与VCC供电
NCP1377的HV启动脚是个好东西。启动电阻可以配到470kΩ,甚至直接省掉外部电阻,依赖芯片内部高压电流源。启动完成后芯片转入正常工作,由辅助绕组供电,启动电流源自动关断。
需要注意VCC电容的容量。电容太小,辅助绕组还没建立稳定电压芯片就掉电重启;电容太大,启动时间变得不可接受。我习惯用22μF~47μF的低ESR电解电容,并且并联一个0.1μF陶瓷电容滤高频。
5. 示波器下的QR行为:从满载到空载的波形与实测效率
5.1 满载、低压输入时的Vds波形
输出12V/3A,输入90VAC,Vds波形大致是:关断瞬间电压快速上冲,钳位后回落并迅速进入谐振,第一个谷底处GATE脉冲到来,波形干净利落。
此时的峰值应该是 (V_{bulk}+V_{clamp}) 附近,即 (107+150\approx257V),给 MOSFET 留足了裕量。原边电流波形是规整的三角波,从0开始,线性上升到1.6A左右,关断后迅速回零——这符合BCM的预期。
5.2 轻载时的谷底跳变
负载从满载降到1A左右,峰值电流变小,退磁时间变短,第一个谷底出现得比电流模式控制器能接受的范围更早还是更晚?实际观察是:开关管不再等第一个谷底了,它有时等第二个谷底才开通,Vds波形呈现“跳谷底”现象。这是QR的正常工作方式,不是故障。
谷底跳变带来的直接后果是频率呈阶梯式变化。比如满载时65kHz,轻载时可能落到35kHz,更轻载时落到20kHz。这个频率在音频范围内会产生机械噪声,所以变压器浸漆质量、磁芯缝隙的填充处理都要额外注意。
5.3 与硬开关方案的直观对比
在同一套变压器参数、同一个输出规格下,用固定频率DCM控制器和NCP1377分别测试,满载效率对比如下:
| 测试条件(230VAC输入) | 固定频率DCM,60kHz | QR模式,NCP1377 |
|---|---|---|
| 输入功率 | 41.8W | 40.2W |
| 输出功率 | 36W | 36W |
| 效率 | 86.1% | 89.6% |
| MOSFET温度(25℃环境) | 92℃ | 71℃ |
| 空载输入功率 | 0.28W | 0.15W |
差异主要来自开通损耗和容性放电损耗。需要说明的是,QR在高压输入时谷底电压并不是0(而是 (V_{bulk}-V_{OR}),在264VAC输入时可能接近270V),所以高压输入下它的优势会变小,这也是QR方案在宽电压范围设计里要权衡的地方。如果目标应用是15~30W的小功率辅助电源,这个影响通常可以接受。
6. 调QR最容易翻车的几个地方:我的踩坑记录
6.1 把QR当ZVS来设计,结果裕量全算错
很多初学者拿着QR的波形兴冲冲地说“我实现软开关了”,实际上漏源电压最低还有100多伏。QR的“准”字就体现在这里——它只是把开通点从高处挪到低处,并不是把电压降到零。
所以MOSFET的耐压选型依然要按最恶劣条件算:(V_{ds_max} = V_{bulk_max} + V_{clamp} + 余量)。264VAC输入时 (V_{bulk_max}\approx373V),加上150V钳位,至少选650V的管子,600V会非常极限。这一点千万别含糊。
6.2 变压器绕法不好,QR的优势直接减半
QR靠的是Lm和Coss的谐振。如果变压器的分布电容太大,谐振波形会被“污染”,谷底不明显,检测电路给出的触发点也会漂。同一颗控制器,用层叠绕法比用三明治绕法做出来,波形质量差别非常明显。我的经验是:初级用三明治绕法(初级-次级-初级),次级用粗一点的铜皮或丝包线,把漏感和分布电容都压下来。
6.3 ZCD电阻附近的小电容是双刃剑
有人为了抗干扰,在ZCD引脚并一个几百pF的滤波电容,结果谷底触发一路延迟,开关点在振荡波形的上升沿甚至峰顶附近,损耗反而变大。如果非加不可,电容控制在22pF以内,并且一定要用示波器确认触发点和谷底位置的重合度。
6.4 空载功耗的账要单独算
NCP1377在轻载有跳周期功能,空载功耗确实低。但辅助绕组的供电电阻、启动电路中持续流通的电流、采样电阻上的损耗,这些在空载时都还在。做低待机功耗设计时,建议从辅助绕组到VCC的二极管串一个几百欧姆到1kΩ的电阻限制充电电流,同时把VCC电容选到刚好不触发UVLO的最小值,这能让空载功耗再降一截。
6.5 满载时Vds尖峰高,先查钳位电容而不是钳位电阻
遇到Vds尖峰超过预期,很多人第一反应是减小钳位电阻。其实钳位电阻决定的是钳位电压的平均位置,尖峰高度往往由钳位电容的容量决定。把钳位电容从2.2nF加到大几千皮法拉,波形毛刺通常会明显收敛。代价是钳位损耗增加,所以要在EMI和损耗之间取平衡。
6.6 原型调试时务必带好电流探头
QR模式下看Vds波形只能告诉你在哪个点开通了,但损耗怎么变化,还是要看电流波形。一个200MHz带宽、5A量程的电流探头,配合差分电压探头做开关损耗积分,能直接测出开通损耗和关断损耗各占多少。如果你手里的预算只够买一个探头,别犹豫,买电流探头,它给你的调试信息量比电压通道大得多。
最后再分享一点个人体会。QR不是所有反激电源的最优解,它在中功率(20~75W)、宽范围交流输入、适配器和充电器场景里性价比很高,但如果你做的是48V输出这类反射电压很大的案子,或者追求极致的高压效率,QR的谷底电压优势会被削弱。选不选QR,先算清楚 (V_{bulk}-V_{OR}) 的实际数值,再决定要不要在这条路上深挖。调NCP1377这类谷底控制器,核心方法就一句话:用示波器盯紧Vds和GATE的相对位置,把每次开通都钉在谷底上,其他参数都会好起来。