LLC 谐振变换器这几年在服务器电源、车载 OBC、大功率 LED 驱动里几乎成了标配,效率高、EMI 友好、能宽范围调压,优点一抓一大把。但真到自己动手做环路的时候,很多人会发现一个尴尬的现象:明明功率级仿真波形挺漂亮,一上闭环就振荡,或者轻载时输出电压纹波大得离谱,再或者动态响应慢得像蜗牛。问题往往不在功率器件选型,也不在变压器绕制,而是卡在环路补偿这一环。而环路补偿里,K 因子法又是被讨论最多、也最容易被误用的工具之一。这篇内容就围绕 LLC 环路设计里最常见的三个坑展开,重点聊 K 因子法怎么用、谐振频率怎么选、相位裕度怎么优化,适合已经跑过开环仿真、准备上闭环的电源工程师,也适合正在啃 LLC 小信号建模的初学者。
1. LLC 环路为什么比 Buck 难调
1.1 功率级传函不是一条单调下降的曲线
如果你之前调过 Buck 或者 Boost 的电压环,脑子里大概有一个固定印象:功率级传函在低频段是平的,然后过一个极点开始以 -20dB/dec 下降,补偿器只要在穿越频率附近放一个零点把相位抬起来就行。LLC 完全不是这个套路。
LLC 的功率级传函在低频段先有一个由输出电容和负载电阻决定的极点,这个和 Buck 类似。但到了中频段,情况就复杂了:谐振腔的双重极点会带来一个 -40dB/dec 的陡降,同时相位会快速下滑接近 180 度。更麻烦的是,LLC 的增益曲线本身是随负载变化的,重载和轻载下的直流增益差可以到 10dB 以上。这意味着你在满载下调好的补偿器,到了轻载可能穿越频率直接翻倍,相位裕度掉到 30 度以下。
我自己的经验是,第一次做 LLC 环路,先别急着上补偿器,把开环增益曲线在满载、半载、轻载三个条件下各扫一遍,看看峰值增益和穿越频率漂移了多少。这个数据比任何公式都直观。
1.2 谐振频率决定了传函的“拐点”位置
LLC 的谐振频率 f_r 由谐振电感 L_r 和谐振电容 C_r 决定:
f_r = 1 / (2π√(L_r · C_r))
这个频率不只是功率级的工作点,它直接决定了功率级传函里双重极点的位置。如果你把 f_r 设得离穿越频率太近,双重极点就会在穿越频率附近制造一个 -40dB/dec 的陡坡,相位裕度很难做上去。反过来,如果 f_r 设得太高,开关频率范围会被压缩,宽范围调压的能力就没了。
常见的设计做法是把 f_r 设在开关频率下限的 1.2 到 1.5 倍左右,同时保证穿越频率不超过 f_r 的三分之一。这个比例不是拍脑袋来的,后面会详细算。
1.3 光耦和 TL431 引入的额外极点
很多离线式 LLC 用 TL431 加光耦做反馈,这个组合本身就会引入一个低频极点和一个高频零点。光耦的电流传输比(CTR)随温度变化,TL431 的参考端还有偏置电流,这些都会让实际环路和仿真对不上。我见过不少案例,仿真里相位裕度 60 度,实测只有 35 度,问题就出在光耦的寄生参数上。
所以调 LLC 环路,不能只看仿真,一定要留出足够的相位裕度余量,一般建议仿真做到 60 度以上,实测才有把握落在 45 度以上。
2. K 因子法在 LLC 上的正确打开方式
2.1 K 因子法的本质是“先定形状,再定位置”
K 因子法的核心思想其实很朴素:你先确定想要的穿越频率和相位裕度,然后反推出补偿器需要提供的零极点位置。它假设补偿器的形状是固定的——一个原点极点、一个低频零点、一个高频极点,然后通过一个系数 K 把零点和极点的位置关联起来。
对于 LLC 这种功率级在穿越频率附近有 -40dB/dec 陡降的场合,通常需要两个零点来把相位抬起来,所以用的是 Type III 补偿器。Type III 的传函形式是:
Gc(s) = (ωp0 / s) · (1 + s/ωz1)(1 + s/ωz2) / (1 + s/ωp1)(1 + s/ωp2)
K 因子法的作用就是根据目标相位裕度 φm,算出零点间隔和极点间隔的系数 K:
K = tan(45° + φm/4)
这个公式看起来简单,但用的时候有几个细节特别容易出错。
2.2 穿越频率不能随便定
很多人调环路习惯先把穿越频率定在开关频率的十分之一,然后套 K 因子公式。对 Buck 来说这没问题,对 LLC 就不一定了。因为 LLC 的开关频率是变化的,轻载时可能跑到 f_r 的两倍以上,重载时又降到 f_r 附近。如果你把穿越频率定在最低开关频率的十分之一,那轻载时穿越频率相对开关频率的比例就变了,相位裕度会跟着变。
我的做法是:先确定 LLC 的最低开关频率 f_sw_min,然后取穿越频率 f_c = f_sw_min / 10 到 f_sw_min / 20 之间。如果 f_r 比较低,还要额外检查 f_c 是否小于 f_r / 3。两个条件都满足,穿越频率才算合理。
举个例子,假设 f_sw_min = 80kHz,f_r = 100kHz。按开关频率算,f_c 应该在 4kHz 到 8kHz 之间;按谐振频率算,f_c 要小于 33kHz。两个条件取交集,f_c 定在 5kHz 左右比较稳妥。
2.3 相位裕度目标要留余量
K 因子法里输入的相位裕度是你希望补偿后环路达到的相位裕度。但这里有个陷阱:K 因子法算出来的补偿器,是在假设功率级相位已知的前提下工作的。如果你对功率级相位的估计偏乐观,实际相位裕度就会不够。
LLC 功率级在穿越频率处的相位,可以用小信号模型算,也可以直接从仿真里扫出来。我一般会先用仿真扫出功率级在 f_c 处的相位 φ_plant,然后补偿器需要提供的相位提升量是:
φ_boost = φm - φ_plant - 90°
这里的 90° 是原点极点带来的相位滞后。算出来的 φ_boost 如果超过 90°,说明单靠 Type III 可能不够,需要考虑降低穿越频率或者换补偿结构。
实际取值时,我建议把目标相位裕度设在 60° 到 70° 之间,给光耦和寄生参数留 15° 到 20° 的余量。如果仿真做到 60°,实测大概能落在 45° 到 50°,这个水平对 LLC 来说已经够用了。
2.4 零极点分配的实操细节
K 因子法算出来的零点和极点位置,不是随便放的。两个零点通常放在穿越频率附近,一个在 f_c/√K,一个在 f_c·√K,这样它们对称地分布在穿越频率两侧,能在 f_c 处提供最大的相位提升。两个极点则放在更高频的位置,用来压制高频噪声。
但 LLC 有个特殊情况:输出电容的 ESR 零点可能落在比较低的频率。如果 ESR 零点低于穿越频率,它本身就会提供一个相位提升,这时候补偿器的零点可以适当减少。我遇到过用固态电容的 LLC,ESR 零点在 2kHz 左右,结果 Type III 的两个零点反而让中频段相位抬得过高,高频段增益压不下去。后来把其中一个零点去掉,改成 Type II,效果反而更好。
所以 K 因子法给的是起点,不是终点。算完之后一定要扫一遍实际环路,看看相位曲线是不是你想要的形状。
3. 谐振频率选择与相位裕度的联动关系
3.1 谐振频率偏移对环路的影响
LLC 的谐振频率不是一成不变的。谐振电感 L_r 会随电流变化,谐振电容 C_r 会随温度漂移,变压器的漏感也会随频率变化。这些因素加起来,实际 f_r 可能偏离设计值 10% 到 20%。
f_r 偏移会直接改变功率级双重极点的位置。如果 f_r 往低频偏,双重极点靠近穿越频率,相位裕度会下降;如果 f_r 往高频偏,双重极点远离穿越频率,相位裕度会改善,但增益曲线的形状会变,轻载时可能提前进入容性模式。
我在一个 3kW 的 LLC 项目里遇到过这个问题:常温下 f_r 是 110kHz,高温满载时掉到 95kHz,结果高温下相位裕度从 55° 掉到 38°,输出电压开始有低频振荡。后来把穿越频率从 8kHz 降到 5kHz,问题才解决。
3.2 用增益曲线判断工作区是否安全
LLC 的增益曲线有两个关键点:峰值增益点和 f_r 点。峰值增益点对应最大增益,通常在 f_r 左侧;f_r 点对应增益为 1,是效率最高的区域。设计时要保证最大增益需求小于峰值增益,同时最小增益需求大于 f_r 右侧的增益。
如果增益曲线在 f_r 右侧太平坦,轻载时开关频率会跑得很高,环路增益也会跟着变。这时候可以在 f_r 右侧人为增加一点增益斜率,比如调整励磁电感 L_m 或者谐振电容 C_r 的比例,让轻载时的增益曲线更陡一些。
我一般会在仿真里扫出三条增益曲线:满载、半载、轻载。然后检查每条曲线在 f_r 附近的斜率,如果轻载曲线的斜率明显小于满载曲线,说明轻载时环路增益会偏高,需要提前在补偿器里做增益调度。
3.3 相位裕度优化的三个抓手
优化 LLC 相位裕度,我总结下来主要靠三个抓手:降低穿越频率、调整补偿器零点位置、增加功率级阻尼。
降低穿越频率是最直接的办法,但代价是动态响应变慢。如果负载跳变要求不高,这是最省事的方案。调整补偿器零点位置,是把零点往低频移,让相位提前抬起来,但要注意别把低频增益抬得太高,否则稳态误差会变大。增加功率级阻尼,是在谐振腔里串一个小电阻,或者在输出端加 RC 阻尼,这个方法能压低双重极点的 Q 值,让相位下滑更平缓,但会牺牲一点效率。
实际项目里,我通常是先降穿越频率,如果还不够再调零点,最后才考虑加阻尼。因为加阻尼会影响效率,而 LLC 的核心卖点就是效率。
3.4 实测和仿真的偏差怎么处理
仿真和实测的偏差主要来自三个方面:光耦的 CTR 和寄生电容、TL431 的参考端偏置、PCB 布局的寄生参数。光耦的 CTR 在高温下会下降 30% 到 50%,这会直接降低环路增益。TL431 的参考端有 2μA 左右的偏置电流,如果分压电阻取值太大,会引入额外的误差。
我的做法是在仿真里把光耦 CTR 设成最小值,TL431 的偏置电流也加进去,然后看相位裕度还剩多少。如果这样还能做到 50° 以上,实测基本没问题。另外,PCB 布局上,光耦的集电极和发射极走线要尽量短,TL431 的分压电阻要靠近参考端,这些细节对实测环路影响很大。
4. 从仿真到实测的完整调试链路
4.1 开环扫频:先看清楚功率级长什么样
在上闭环之前,一定要先做开环扫频。方法是在输出端注入一个小信号扰动,然后测量输出电压和占空比(或者开关频率)之间的传函。LLC 的开关频率是控制量,所以扫频时要注入频率扰动,而不是占空比扰动。
扫频范围一般从 100Hz 到开关频率的一半。重点看三个东西:低频增益、穿越频率附近的相位、双重极点的位置。如果双重极点离穿越频率太近,相位曲线会在穿越频率附近快速下滑,这时候就要考虑降低穿越频率或者调整谐振参数。
我习惯把扫频结果和理论计算对比一下,如果偏差超过 20%,说明小信号模型或者参数有问题,要先查清楚再往下走。
4.2 补偿器设计:从 K 因子到实际电路
K 因子法算出来的零极点,要转换成实际的电阻电容值。Type III 补偿器的电路形式有很多种,常见的是用运放或者 TL431 加光耦实现。转换的时候要注意两点:一是运放的带宽要足够,二是光耦的 CTR 要留余量。
以 TL431 加光耦为例,补偿器的传函可以写成:
Gc(s) = (R_fb / R_led) · (1 + s·R1·C1) / (s·R1·(C1+C2)) · ...
具体公式这里不展开,重点是算出来的电阻电容值要在合理范围内。如果算出来的电容只有几 pF,说明零极点位置太靠高频,实际电路里寄生电容就会把它淹没。这时候要么降低穿越频率,要么换补偿结构。
4.3 闭环上电:先低压轻载,再逐步加载
第一次上闭环,千万别直接上满载。我的习惯是先用低压(比如额定输出的 50%)和轻载(10% 额定负载)上电,看输出电压能不能稳住。如果能稳住,再用电子负载逐步加载,每次加 10%,观察输出电压和开关频率的变化。
加载过程中要重点看两个现象:一是输出电压有没有低频振荡,二是开关频率有没有异常跳变。如果出现低频振荡,说明相位裕度不够;如果开关频率跳变,说明增益曲线有问题,可能进入了容性模式。
4.4 动态响应测试:负载跳变和输入跳变
稳态没问题之后,要做动态响应测试。负载跳变一般从 10% 到 90%,跳变斜率根据实际应用来定。LLC 的动态响应通常比 Buck 慢,因为穿越频率低,但也不能太慢,否则负载跳变时输出电压会掉太多。
我一般要求负载跳变时输出电压过冲不超过 5%,恢复时间不超过 5ms。如果达不到,就要回头调补偿器或者提高穿越频率。输入跳变测试类似,从最低输入电压跳到最高输入电压,看输出电压能不能稳住。
4.5 温度和老化测试:最后一道关
LLC 的环路参数会随温度变化,尤其是光耦的 CTR 和电解电容的 ESR。所以做完常温测试,一定要做高温和低温测试。高温下重点看相位裕度有没有下降,低温下重点看启动和轻载稳定性。
老化测试一般跑 24 到 48 小时,观察输出电压有没有漂移,开关频率有没有异常。如果老化过程中出现问题,多半是电容或者光耦的参数漂移导致的,需要换更高规格的器件。
5. 几个容易被忽略的实操细节
5.1 谐振电容的选取影响的不只是谐振频率
谐振电容 C_r 的容值决定了 f_r,但它的 ESR 和温度特性也会影响环路。薄膜电容的 ESR 低、温度特性好,但体积大、成本高;陶瓷电容体积小,但容值随电压变化大,实际 f_r 可能偏离设计值很多。
我一般建议 LLC 的谐振电容用薄膜电容,如果空间实在不够,可以用陶瓷电容但一定要留足容值余量,并且做电压降额测试。另外,谐振电容的 RMS 电流很大,选型时要看额定纹波电流,不能只看容值。
5.2 励磁电感 L_m 的取值和轻载稳定性
L_m 决定了励磁电流的大小,也影响增益曲线的形状。L_m 越小,峰值增益越高,但励磁损耗越大;L_m 越大,峰值增益越低,轻载时可能达不到最大增益要求。
从环路角度看,L_m 越大,双重极点的 Q 值越高,相位下滑越陡。所以如果轻载稳定性不好,可以适当减小 L_m,降低 Q 值。但减小 L_m 会增加导通损耗,需要权衡。
5.3 光耦的 CTR 选型和温度补偿
光耦的 CTR 是环路增益里最不稳定的因素。CTR 随温度升高而下降,随使用时间增加而衰减。如果 CTR 选得太低,环路增益不够;选得太高,又容易振荡。
我的经验是选 CTR 在 100% 到 200% 之间的光耦,并且在电路里加一个可调电阻,方便调试时微调增益。如果温度范围很宽,可以考虑用线性光耦或者数字隔离器替代普通光耦,但成本会高一些。
5.4 PCB 布局对环路的影响
PCB 布局对 LLC 环路的影响经常被低估。反馈走线太长会引入噪声,光耦靠近开关管会受干扰,TL431 的分压电阻如果靠近变压器会受漏磁影响。
我的布局原则是:反馈走线尽量短,光耦和 TL431 远离功率器件,分压电阻靠近 TL431 的参考端,反馈走线下面铺地屏蔽。这些细节看起来小,但实测环路不好的时候,往往就是这些地方出了问题。
6. 常见问题排查表
| 现象 | 可能原因 | 排查方法 | 解决措施 |
|---|---|---|---|
| 轻载输出电压振荡 | 相位裕度不足 | 扫频看相位曲线 | 降低穿越频率或调整零点 |
| 满载启动失败 | 峰值增益不够 | 检查增益曲线 | 减小 L_m 或增大 C_r |
| 动态响应过慢 | 穿越频率太低 | 扫频看带宽 | 提高穿越频率或加零点 |
| 高温下不稳定 | 光耦 CTR 下降 | 高温扫频 | 换高 CTR 光耦或加温度补偿 |
| 开关频率异常跳变 | 进入容性模式 | 检查增益曲线 | 调整谐振参数或增加死区 |
| 输出电压纹波大 | 输出电容 ESR 高 | 测 ESR | 换低 ESR 电容或加 LC 滤波 |
这个表是我自己调试时总结的,不一定覆盖所有情况,但大部分常见问题都能对上号。实际排查时,建议先用示波器看开关频率和输出电压波形,再用扫频仪看环路曲线,基本就能定位到问题。
7. 写在最后的一点个人体会
LLC 环路设计这件事,说难也难,说简单也简单。难的是功率级传函不直观,谐振频率、负载、温度都会影响环路;简单的是只要抓住穿越频率、相位裕度、谐振频率这三个核心参数,大部分问题都能找到方向。
K 因子法是个好工具,但它给的是起点,不是终点。算完之后一定要扫频验证,一定要做温度和老化测试。我见过太多人仿真做得漂亮,实测一塌糊涂,问题就出在光耦和寄生参数上。
最后分享一个小技巧:调试 LLC 环路时,可以先把补偿器做成可调电阻电容的形式,用跳线或者电位器调零极点位置,等找到最佳值再换成固定器件。这样比反复焊板子快得多,也更容易找到最优解。