3kW三通道交错CCM升压PFC电源设计:从参数计算到数字控制实战
前阵子团队接了个3kW级别的服务器电源方案,客户点名要“3通道交错式CCM升压PFC”,当时第一反应是这需求挺讲究——单通道做到3kW不是不行,但电感、散热、滤波器的代价都高得吓人,交错式正好把一碗水分成三碗端,每碗的压力都小一截。这篇文章是我自己从头理方案、算参数、调环路的过程记录,适合正要上手多通道PFC设计、或者想从2通道往3通道跨越的电源工程师。我会把思路、公式、选型、踩坑都拆开讲,保你看完能直接开算。
老实说,网上讲PFC的文章多如牛毛,但大部分停留在单通道Boost拓扑的层面。真正把“交错”讲透、把“3通道”的相位关系算明白的很少。这次我们做个不一样的项目总结:从拓扑选型逻辑讲起,到电感参数怎么一步步抠出来,再到控制环路怎么分配,最后把调试中那些波形异常、噪声耦合的实际案例拿出来晒一晒。上篇先把思路、主电路参数和器件选型搞定,下篇再深挖控制环路与实测调试。
1. 项目概述与整体设计思路
1.1 三个关键词:交错、CCM、升压
先拆标题。升压(Boost)是PFC最主流的拓扑,输入整流后的馒头波从0到峰值周期变化,Boost天然能把电压抬到380V或400V,电流自然跟随电压波形,实现接近1的功率因数。CCM(Continuous Conduction Mode)指电感电流在整个开关周期内不归零,始终处于连续导通状态。交错(Interleaved)则是把多个升降压通道并联,每个通道的开关管驱动相位错开,让开关纹波在输入和输出端互相抵消一部分。
三个词组合起来,实际是在解决一个工程痛点:功率大了以后,单通道CCM升压PFC的纹波、热应力、磁性元件体积都要大,而交错就是分散这些压力的方式。3通道意味着三个Boost功率级并联工作,各自承担总功率的1/3,开关管导通相位依次错开120度(360°/3),等效开关频率直接翻成单通道的三倍,输入输出纹波大幅降低。
为什么不是2通道或4通道?2通道的相位抵消效果明显,但纹波频率只翻倍,体积和热分布改善有限。4通道的成本、驱动复杂度、均流难度都陡增,PCB走线和磁集成的收益却开始递减。3通道是个讨巧的中间值:相位角度够匀(120°),等效纹波频率够高,磁性元件热分散明显,比2通道在EMI和滤波上省不少功夫,又不像4通道那样对环路一致性要求苛刻。做3kW级别,3通道每路只有1kW,这个功率等级下器件的选择面就非常宽裕。
1.2 规格目标与方案选型:模拟还是数字
先把设计目标列出来,后面所有参数都围绕这个东西展开:
| 参数 | 目标值 |
|---|---|
| 输入电压范围 | 85~265VAC(全电压范围) |
| 输出电压 | 400VDC |
| 额定总功率 | 3000W |
| 单通道功率 | 1000W |
| 开关频率 | 100kHz/通道 |
| 效率目标 | 满载≥95%(230VAC输入) |
| 功率因数 | 半载以上≥0.99 |
| THD | 满载≤5% |
方案选型上,当时摆在我面前的有两条路:一是模拟控制器为主的方案,比如用两颗UCC28070各做两个通道再分配相位,或者用一颗单通道控制器加逻辑电路产生三相同步时钟;二是纯数字控制器方案,比如TMS320F280系列(文章相关热词里正好有tms320f28022tt,可见做这个方向的人不少)加外部驱动和采样电路。
我最终选了数字方案。原因很实际:3通道均流在模拟域需要精密的电流采样匹配,温漂和元件离散度都容易导致均流偏差,而在数字域里面,各通道电流误差可以通过软件校准,跑个简单的均流环修正指令值就行。另外3通道的相位管理在模拟方案里需要额外逻辑(比如PLL锁相、延迟发生器),数字控制器内部定时器直接就能输出120°错相的PWM。数字方案还有一个隐藏优势:可以根据输入电压瞬时值做非线性修正,轻载时自动降频或进入Burst模式,这些都是模拟方案要额外加电路的。
1.3 功率级的拓扑细节与电磁兼容考量
每个通道的功率级本身是标准Boost拓扑:输入整流二极管后接升压电感,电感后面是开关管MOSFET结到地、二极管到输出电容。需要注意的细节是,三个通道的输入电感前最好各自加一个共模和差模滤波级,然后在总的输入端口再汇合滤波。
交错式在EMI上的红利要会拿:三通道纹波频率从100kHz变成300kHz等效(纹波基波),但三个开关管的dv/dt还是100kHz的边沿速率。实际传导骚扰频谱上能看到:100kHz、200kHz处的干扰分量被交错抵消了很大一部分,剩下主要是300kHz、600kHz等开关纹波的谐波分量。这意味着输入差模电感可以做得比单通道小很多,我实测下来差模电感量能降低约40%—这是一个额外的、经常被人忽略的收益。
功率部分还有一个细化点,三通道的续流二极管反向恢复电流在关断时刻叠加到MOSFET上。CCM模式下二极管的反向恢复是主要损耗和开关噪声来源,所以选型上要么用SiC肖特基二极管(无反恢复电流),要么用超快恢复二极管。3kW级别我直接上SiC了,贵一点但是可靠性高很多,调试时开关波形干净得多。
2. 主电路参数设计与器件选型
2.1 升压电感计算:从纹波要求反推
每个通道是1kW,输入电压最低到85VAC时,输入电流峰值最高。设计电感的第一步要确定最恶劣工况,也就是输入电压谷底(85VAC对应峰值120V左右)和峰值功率同时出现。
先算最低输入电压峰值附近的最大占空比: [ D_{max} = 1 - \frac{V_{in_peak}}{V_{out}} = 1 - \frac{120}{400} = 0.7 ]
电感上的纹波电流取通道峰值电流的25%~35%比较合适。这里按30%来算,通道的输入电流峰值: [ I_{pk} = \frac{\sqrt{2} \cdot P_{ch}}{V_{in_rms_min}} = \frac{1.414 \times 1000}{85} \approx 16.6A ] (这里先不抠效率系数,预留一点余量)
纹波电流目标值: [ \Delta I = 0.3 \times 16.6 \approx 5.0A ]
Boost拓扑在开关管关断阶段电感承受输出电压减去输入电压,因此电感压摆关系: [ L = \frac{V_{in_peak} \times D_{max}}{f_s \times \Delta I} = \frac{120 \times 0.7}{100000 \times 5.0} \approx 168\mu H ]
这个168μH是在最低输入电压、最大功率点附近算出来的临界值。实际取值我通常会往大一点选,比如180~200μH,因为电感偏小会导致纹波变大、CCM边界变浅,轻载时更容易进入DCM;电感偏大的代价只是磁芯大一圈、动态响应稍慢,但对PFC来说利大于弊。最终我选了200μH/通道,用铁硅铝磁粉芯,开气隙免了,磁粉芯天然分布式气隙,高偏流下电感降幅可控。
注意一个很多人忽略的点:磁粉芯电感在直流偏置下电感量会下降。磁芯规格书一般在100A·T(安匝)下会标注电感跌到初始值的多少,选磁芯必须做偏磁下的验证。我试过直接从手册的“无偏流电感”值选磁芯,结果满载跑起来电流纹波明显变大,一测实际电感只剩设计的65%,重算偏流特性才发现磁芯选小了一号。这个坑希望大家跳过。
2.2 开关管与二极管选型
开关管电压应力是输出电压400V加上开关尖峰,考虑20%设计余量,至少650V的MOSFET;但CCM下续流二极管反向恢复在MOSFET关断瞬间产生的dv/dt冲击很凶,稳妥一点直接上700V以上的管子。3kW总功率、每通道1kW,输入峰值电流16.6A,考虑纹波30%,MOSFET的电流峰值大约19A。工程上我选的是20A/650V碳化硅MOSFET,Rdson约50mΩ,开关损耗在100kHz下实测温热,散热器压力很小。
如果用硅基超结MOSFET,单管峰值电流能力要留更大,因为体内二极管反向恢复会带来额外损耗。SiC MOSFET的体二极管反向恢复几乎为零,做CCM升压PFC简直是天作之合。
续流二极管选择同样直接决定可靠性。CCM模式下,开关管导通瞬间续流管正向导通、关断后反向阻断,反向恢复电荷Qrr直接和MOSFET的开通损耗叠加。我最初用过一颗600V/15A超快恢复二极管,单通道满载时MOSFET发热比预期高了十几度,示波器上看开关管开通电流尖峰明显。换成650V/12A SiC肖特基后,开通尖峰小了一半多,效率提升约0.8%。
2.3 输出电容计算与动态支持时间
输出电容主要满足两个要求:一是支撑掉电保持时间(hold-up time),通常要求20ms内输出跌落到不低360V(后级DC/DC能维持的最低输入);二是抑制输出端的二次纹波,PFC的输出在工频2倍频(100Hz/120Hz)处有固有纹波。
按hold-up算: [ C_{out} = \frac{2 \times P_{out} \times t_{hold}}{V_{out}^2 - V_{out_min}^2} = \frac{2 \times 3000 \times 0.02}{400^2 - 360^2} \approx 3947\mu F ]
实际取两个4700μF/450V电解并联,留够余量。如果你后级的DC/DC有宽范围输入能力,比如能在300V启动,这个电容可以缩到3000μF级别,但成本和体积省不了太多,我建议还是按400V跌落到360V来算,稳妥。
输出电容的纹波电流能力也要查表确认。三通道交错后开关纹波很小,但工频二次纹波仍然是大头。450V电解电容每个能承受约3.5A的纹波电流,两个并联就是7A,而我们3kW输出的二次纹波电流约等于P/V_out = 7.5A,勉强够用。如果把工作温度压在85℃以下,可以长期可靠运行。如果环境温度高,就得加第三只电容或者换更大封装。
2.4 三相交错相位到底抵消了多少纹波
三通道交错最核心的收益在纹波抵消。先推导一下大家就明白:单通道100kHz纹波电流ΔI单独看依然存在,但输入电流是三路之和,三路纹波电流在时间轴上是正弦叠加的相位关系。数学上,三路等幅、相位差120°的方波或锯齿波叠加后,基波分量为零,最低次谐波变成3倍的开关频率。也就是说输入端的等效纹波频率是300kHz,而幅值比单通道纹波大幅降低。
实际用仿真看输入电流纹波,单通道峰值纹波约5A,三通道交错后在输入端的合成纹波峰值大约只有1.5A左右,降幅超过60%。输出侧同理,输出电容承受的开关纹波也降到很低,这对电解电容的发热和寿命非常友好。
要注意的是,纹波抵消的前提是三通道电流幅值相等且相位严格错开120°。一旦某一路电流偏了10%,抵消效果就会明显变差,甚至出现拍频差模噪声。这也是为什么我坚持用数字控制的原因之一——模拟分立元件做三路电流基准匹配,很难做到2%以内的一致性,而数字方案只需要校准几行代码。
3. 主电路完整结构与关键器件连线
3.1 三通道主电路接线示意
三个Boost通道的结构完全相同,输入端并联在整流桥后的母线上,输出端并联到400V母线。单通道连线顺序:
整流输出正极 → 升压电感L1(1脚进2脚出)→ 电感输出节点(即MOSFET漏极与二极管阳极交点)→ 二极管阳极 → 二极管阴极 → 输出电容正极。
MOSFET漏极接电感输出节点,源极接功率地(整流桥负极),栅极接隔离驱动输出。每通道的MOSFET驱动信号来自DSP的PWM1/2/3,相位分别设置0°、120°、240°(等效DSP表现为占空比寄存器一致,相位寄存器递增120度)。
一个容易被忽略的细节:三通道的输出端如果直接就近接到电容,会造成电容之间电压差异,导致均流环路出现不必要的修正。更稳的做法是每个通道的输出二极管阴极先经过一小段短线汇合到同一点,再从汇合点接到输出电容正极,同时驱动MOSFET的源极采用独立你一点接地连接到整流桥负极端,避免共享大电流地的压降引入驱动干扰。这就是“星形汇流”概念,功率回路和驱动回路分开。
3.2 采样与驱动电路设计要点
数字控制需要采样的量有:输入整流后的电压(用于前馈和过零检测)、输出电压(电压环反馈)、每个通道的电感电流(电流环反馈)。电流采样用电流互感器还是分流电阻,我推荐后者配合隔离放大器,成本更低而且在100kHz下精度足够。
电流采样电阻阻值的选取有个权衡:阻值太大会增加损耗、降低效率,太小则在轻载时信噪比不够。我选的采样电阻是10mΩ,单通道满载时压降约0.19V(含纹波),经过放大器后到DSP ADC的量程利用率约70%,满载分辨率约为12位ADC下1.5mA左右,完全可以满足均流精度。
驱动电路每个通道必须隔离,常见做法是数字隔离器加隔离驱动芯片。我用的方案是单颗6通道数字隔离器输出三路PWM,分别接到三个隔离驱动芯片(比如UCC21520系列的同类),驱动峰值电流至少4A,用来应付SiC MOSFET较大的栅极电荷Qg。驱动电阻取值决定了开关速度,太小会在漏极引起严重振铃,太大会增加开关损耗。我调了两种阻值:开通15Ω、关断5Ω,实测漏源电压尖峰被压到460V以内,开关损耗可接受。
这里有个操作技巧:驱动电路电源要各自独立,别共用一个辅助电源绕组。三通道开关节点之间通过寄生电容会有串扰,如果驱动电源共享,一路的负压尖峰可能干扰另一路的驱动波形。我用三组独立的隔离DC/DC(每路1W就够),驱动波形非常干净。
3.3 升压电感磁芯与绕线工艺
前面算出200μH/通道,磁芯选择上,铁硅铝(Kool Mu)磁粉芯是最常见的选择,因为Boost PFC电感电流含有大幅直流偏置,磁粉芯分布式气隙不会像铁氧体开气隙那样出现局部饱和。
选磁芯时需要用AL值估算圈数。比如选一个外径47mm的铁硅铝环,初始AL值大约90nH/N²,200μH需要的圈数: [ N = \sqrt{\frac{200000nH}{90}} \approx 47匝 ] 47匝在这个尺寸的环上绕制截面空间紧张,需要确认铜线直径和绕满后的窗口利用率是否<50%。此外务必计算峰值电流对应的最大磁通密度,磁粉芯虽然不容易硬饱和,但磁通密度过高会导致磁芯损耗激增,表面温度明显上升。我实测在满载情况下,47mm环的表面温升约35℃(在60℃环境温度下接近80℃),偏高了点,于是换用两个较小的环叠加,分摊损耗,温升降到了50℃以内。
绕线工艺还有一个经验:三通道电感的绕线方向、引脚起始位置尽量一致。这样三个通道漏感一致性更好,均流环路在满载时不用处理由于漏感差异引起的通道电流差异。
4. 控制环路设计与核心实现
4.1 控制策略:平均电流模式与均流思路
CCM升压PFC的主流控制策略是平均电流模式:电压外环控制输出电压,决定电流幅值指令;电流内环让电感电流跟随“输入电压归一化波形与电流幅值指令的乘积”。这样实现了电阻模拟特性,电流自然与电压同相。
在数字控制里,电流内环通常以每个开关周期完成一次PI调节。开关频率100kHz,ADC采样频率100kHz,每个周期内完成比例积分更新和PWM比较值更新,DSP的CPU负载完全扛得住。还要在软件中跟踪输入电压相位,把电流基准波形做成sin的一半绝对值(工频周期全波),让电流指令和瞬时电压成正比。
3通道的均流实现就简单了:总电流指令由电压环输出,均流分配系数初始为1/3,各通道电流环独立跟踪各自的1/3指令。如果某通道实际电流偏差超过设定阈值(比如2%),软件的均流修正环微调该通道的电流指令增益。这个环很慢(带宽10Hz左右即可),不会与电压环、电流环产生交互干扰。
4.2 电压环和电流环的带宽怎么定
电压环的主要任务是维持输出电压稳定,但要抑制100Hz/120Hz的二次纹波,所以电压环带宽必须低于工频,一般取10~20Hz。取20Hz时,400V输出在满载二次纹波幅值大约十几V,通过PI环后的指令信号已经平滑得多。带宽再高容易把二次纹波放大到电流指令中,使得输入电流波形发生畸变、THD恶化。
电流环带宽要高得多,要让电感电流在一个开关周期内快速跟踪正弦基准。数字控制在100kHz下,电流环带宽通常设计到开关频率的1/10~1/6,即10~16kHz。用PI控制器,零极点配置在电感转折频率附近。工程上我先把电流环调出来,再用波特图实测环路增益,在10kHz处保证相位裕量高于45°,当时调了三轮才稳下来。
电流环PI参数大概的换算思路是:电感200μH,开关周期10μs,算出来控制对象增益约50A/V(取决于输入电压)。中频段增益提升靠比例项,把相位滞后补回来靠积分项。这里不把传递函数展开超纲了,实际调环时,我建议从Kp=0.5、Ki=0.001这个量级起步,配合仿真的环波特图微调。
4.3 数字控制器的必备功能配置
以TMS320F280049(带浮点)为例,需要配置的资源:
- 三个PWM模块(EPWM1/2/3),每两个PWM模块组成一个相位同步链:EPWM1同步源为内部时基,EPWM2/3产生120°/240°相移;
- 三个ADC通道分别采样三路电感电流,采用PWM中心对齐触发采样,采样点在开关周期中点避开开关噪声;
- 一个ADC通道采样输出电压,一个采样整流后的输入电压(分压后用于过零检测和前馈);
- 一个比较器模块做逐周期过流保护(每通道独立硬件保护,不依赖软件响应);
- 一个温度ADC测量电感/PCB热敏电阻,软件过热降功率。
这里有一个关键时序点:交错PWM的ADC采样触发时刻必须与各自通道的PWM中心对齐。三通道PWM相位相差120°,所以采样触发也要错开,否则三路电流采到的都是同一时刻的瞬时值,而纹波位置不同,均流环会产生虚假偏差。这个是我第一次调试时遇到的最典型问题,后面会展开说。
4.4 保护逻辑与轻载模式
保护逻辑做了这几层:逐周期峰值限流(每个通道独立,硬件比较器直接封锁PWM输出)、平均电流过流保护(软件,积分时间50μs)、输出过压保护(软件比较器)、输入欠压/过压保护(迟滞比较)、散热器过温保护。其中输出过压保护要非常灵敏,因为PFC输出在负载突变瞬间容易冲到450V以上,必须尽早干预。
轻载时,CCM模式的固定开关频率意味着固定开关损耗,效率会下滑。我的做法是负载低于10%时进入Burst模式:电压环指令低于下限就停止PWM,输出电容供能至电压低于滞环下限再次启动。由于是三通道,Burst模式下可以轮流让不同通道休眠,避免某个通道一直不工作导致电容老化和热不均。
5. 实操过程与常见问题实录
5.1 第一次上电调试的正确顺序
多通道PFC第一次上电,绝对不能直接接电网调满。我的调试步骤是这样:
先用调压器从0V缓慢升压到50VAC,同时用示波器观察输出电压和DSP的PWM波形是否正常;然后关断,检查三路PWM相位是否错开120°、占空比是否为零,确认所有保护值在软件里配置正确。接下来用电子负载设成轻载100W,缓慢升压到220VAC,观察输出电压能否稳定在400V、三路电流是否接近相等。
然后逐步增加电子负载到满载。每步加100W,都要等波形稳定,重点看:MOSFET漏源电压尖峰是否超650V、输出电容纹波电流是否发热异常、电感有无异响、三路电流偏差是否在2%以内。满载稳定运行15分钟后用热成像看温度分布。
5.2 典型问题排查:ADC采样时序偏差
这是我调试过程中踩的最深的一坑。现象是三路电流波形看起来振幅一致,但输入电流THD在5%左右偏下徘徊,怎么调电流环都降不下去。后来用示波器同时监测三路电感电流波形和DSP内部的采样时刻,发现一个问题:三路ADC采样触发虽然和各自PWM中心对齐了,但DSP的ADC模块只配置了一个触发源,三个通道的采样实际上几乎是同时进行的,也就是说,相位错开40μs的三路电流,被采样到的时刻却都在同一时间点,每一路都偏离了自己的中心点。
这个问题的本质是电流波纹在偏离中心点处采样得到的值不是平均值,而是带纹波误差的瞬时值。均流环看到这个“假误差”,就会错误地调节某一路的指令值。
解决方法是在DSP中为三个采样通道配置三个独立的ADC触发源,分别来自EPWM1/2/3时基的周期匹配事件。这样三路电流各自在自己PWM周期中点采样,纹波误差被消除,THD马上就降到了4%以内。这个坑,单通道PFC永远不会遇到,只有多通道交错才需要注意,再次印证了3通道设计不是单通道的简单倍数放大,很多细节都要重新考虑。
5.3 电感异响与磁芯饱和排查
调试到2500W负载时,其中一个通道的电感开始出现明显的“吱吱”高频噪声。用热成像看磁芯表面并无过热,电流波形也没明显饱和迹象,但噪声频率接近100kHz,非常刺耳。
排查后发现是这个通道电感的绕线层间存在轻微松动,灌胶处理不彻底。100kHz下磁致伸缩和线圈微振动被放大,声音就出来了。处理方法是把三个电感统一重新浸漆并加热固化,问题解决。另外,如果电感采用磁粉芯,磁芯饱和时电感量会急剧下降,表现为电流波形出现明显的尖峰凸起和严重的畸变,这时候要重测直流偏置特性,不能只看电路板温度。
5.4 全电压范围下的过零畸变修正
在85VAC低输入电压、满载工况下,输入电流在过零点附近出现了明显的毛刺和失真,THD飙升到7%以上。原因是低电压输入时,电流靠近零的区间,电感电流纹波占比高,平均电流模式对基准的跟踪能力变弱,加上整流桥在过零附近导通压降大,电流实际要滞后于电压。
这个修正没有硬件上的捷径,主要靠软件:一是在电流指令的过零区间加入死区处理,避免电流环在极低基准时产生零电流钳位振荡;二是引入输入电压前馈,在指令中叠加一个小比例的与电压导数相关的补偿量,让电流提前一点跟踪电压。调完这两项,在85VAC满载下THD降到4%出头,全电压范围都达标。
6. 小结与下篇预告
上篇把3通道交错式CCM升压PFC的整体思路、电感/电容/开关管选型计算、控制环路设计以及几个高危调试坑都过了一遍。核心想传递的是:多通道交错不是单通道的简单并联,相位管理和采样时序这类层次的问题才是成败关键。我个人的体会是,数字控制方案在3通道场景下的灵活度远高于模拟方案,很多事情只需要在DSP里改几行参数,换成模拟电路可能就要重新设计一版硬件。
下篇我会重点展开:电流环和电压环的完整传递函数推导与仿真验证、SiC MOSFET驱动电路的设计细节、全负载范围的效率实测数据,以及如何把三通道交错PFC和后面的LLC变换器做整体系统联调的注意事项。如果你正在做的是PFC加LLC的整机电源,下篇应该对你帮助更大。也欢迎在评论里聊聊你遇到过的最棘手的多通道均流问题,咱们一起复盘。