开关电源做到一定阶段,很多朋友会跟我一样撞上同一个“软钉子”:LLC拓扑效率高、EMI也友好,但一旦要同时兼顾恒压和恒流,环路设计就变得特别别扭。我最初在做一个48V充电电源时,电压环和电流环各调各的都没问题,合在一起就出现切换瞬间出尖峰、轻载啸叫甚至触发过流保护的情况。后来才把这句“电压/电流双环竞争”真正吃透:它不是说两个环路比谁力气大,而是让它们在同一套LLC频率控制链路上自动交接控制权,谁当前更“着急”,谁就来决定开关频率。
这篇文章不讲空泛的电源理论,直接围绕“双环竞争”这个主题,把为什么要竞争、竞争怎么实现、切换点怎么算、补偿怎么设、波形怎么判都说清楚。适合正在做LLC恒压恒流、充电器、适配器或者被CV/CC切换折磨的工程师,也适合刚接触LLC但想搞懂环路设计的硬件爱好者。
1. 为什么LLC电源需要电压/电流双环竞争控制
1.1 恒压恒流场景下,单一电压环的天然短板
LLC谐振变换器靠改变开关频率来调整增益,负载变化时频率跟着动,从而稳住输出电压。如果只做恒压输出,一个电压环就够了:采样输出电压、跟基准比较、放大后控制压控振荡器,频率变了增益就变了,最后把电压拉回目标值。
但电源不是只有恒压这一种出口。电池充电器要“先恒流、再恒压”,LED驱动电源要“恒流输出、电压自动跟随负载”,老化测试电源要能限制输出功率。这些场景下单纯电压环根本顶不住:电压环只关心电压稳不稳,电流一旦超过设定值,它不会管。反过来,如果只做电流环,电压会被负载拉得满天飞,轻则烧负载,重则击穿输出电容。
所以设计上必须把电压环和电流环同时接进控制系统。但问题来了——LLC是单控制量(频率)拓扑,不像反激或降压可以做峰值电流内环加电压外环那种级联结构。LLC的频率只有一根控制线,电压环要它、电流环也要它,到底听谁的?这就引出了“竞争”这个词。
很多人听到“竞争”,脑子里浮现的是两个环路打架、互相抢方向盘。实际工程里的语义完全不同:两个环路都保持闭环状态,各自输出一个误差信号,然后通过选择网络自动挑出更“需要干预”的那一个,让它去控制频率。这更像过关闸机,不是抢方向盘。在恒压阶段,电流远低于设定值,电流环的误差信号处于“不着急”状态,电压环说了算;一旦输出电流逼近设定值,电流环的误差信号变得比电压环更强烈,它就接过控制权,把电流压住。整个过程是平滑过渡的,不是先断开电压环、再闭合电流环那种生硬切换。
1.2 “竞争”的正确理解:不是抢信号,而是自动交接
我见过不少初学者纠结一个问题:“两个误差放大器的输出都接到同一个节点,不是会互相打架吗?”事实是,模拟电路里做“竞争”通常用的就是取小或取大逻辑,并不会真正冲突。
以充电电源为例。电压环误差放大器的输出含义是“当前输出电压和目标值差了多少”;电流环误差放大器的输出含义是“当前输出电流和目标限流值差了多少”。这两个信号在进入PFM/PWM调制器之前,经过一个二极管网络,选出数值更小的那个作为总控制信号。为什么取小?因为电压高时电压环会输出一个更小的误差电压(或者反向放大器里更高的电压,取决于电路极性),电流大时电流环同样如此。谁更能反映“系统正在跑偏”,谁就能主导控制。这个选择电路在TL431、运算放大器搭建的环路里非常常用,本质上是两个输出端的“线或”关系。
这种设计的优势在于:切换边界没有任何数字逻辑状态翻转,也就没有“先判断再切换”的时间延迟。电压和电流同时接近目标值时,两个误差信号会非常平滑地交叉,控制权自然从电压环过渡到电流环。你最后在示波器上看到的输出曲线,只会有一个轻微的斜率拐点,而不是一个明显的台阶。
1.3 与级联双环的区别:为什么LLC更依赖竞争逻辑
这里要特别提一个容易混淆的概念:传统DC-DC常说的“电压外环电流内环”双环,和LLC的“双环竞争”不是一回事。级联双环里,电压环的输出是电流环的参考值,电流环再往里收,整体是一条串行的控制路径。这种方案适合电感电流可控的拓扑,比如Buck和Boost,你可以用峰值电流模式直接限制电感电流。
LLC不一样,它的原边电流是准正弦波,电流峰值和输出功率之间没有像Buck那种线性关系,不能简单用“电压误差转换成电流参考”的方式做内环。如果强行级联,内环带宽会被谐振槽路限制得很低,电压环再快也没意义。所以在LLC恒压恒流设计中,更实用的就是让两个环路各自独立采样、独立放大,最后在频率控制总线上做取小/取大竞争选择。一个环负责稳态精度,另一个环负责边界保护,各司其职,交接自然。
2. 双环竞争的实现架构与切换点设计
2.1 典型取小选择电路:两个误差放大器加二极管网络
模拟控制电路里做“竞争”选择,最常见也最皮实的方案是:电压环误差放大器和电流环误差放大器各自输出,各串一个二极管后并接到同一条控制总线。这条总线再通过一个下拉电阻接地,同时接到压控振荡器的频率控制端。
用二极管的单向导电性实现取小逻辑,电路非常简单,响应也快。但它有一个必须注意的细节:二极管的导通压降会漂。肖特基二极管低压降但漏电大,普通硅二极管压降稳定但损耗高。如果两个二极管不是同一批次或者工作温度不一致,那么交接点会产生“死区”:两个误差信号都大于二极管压降加公共节点电平时,控制总线电压突变,频率出现跳变。这个跳变一旦遇到LLC的非线性增益,就会在输出端形成肉眼可见的毛刺。
更精密一点的做法是用比较器做窗口选择:把两个误差信号分别送到比较器,谁更低就让谁通过模拟开关接入控制总线。这样避免了二极管压降问题,但会引入延迟和开关电荷注入,实际使用时要加逻辑死区。我在量产项目上还是偏好二极管方案,但会把两个二极管配成对,并在公共总线对地加一个20pF到100pF的电容,把切换瞬间的高频毛刺滤掉。
2.2 切换点计算:电压基准、电流采样电阻与环路输出范围
双环竞争的“切换点”不是谁输出电压高谁就切换,而是由采样网络的比例关系决定。设输出电压目标为 (V_{ref}),通过电阻分压 (R_{top}/R_{bottom}) 把输出降到和基准电压 (V_{ref}) 相等。电流环同样,先确定限流值 (I_{limit}),再用采样电阻 (R_s) 和放大倍数 (A_i) 得到阈值电压 (V_{iref})。
一个简单算例:目标输出48V,基准电压取2.5V。分压电阻选 (R_{bottom}=10k\Omega),则 [ R_{top}=R_{bottom}\times\left(\frac{48}{2.5}-1\right)=10k\Omega\times18.2=182k\Omega ] 用180kΩ和2kΩ串联实现。电流采样电阻取 (10m\Omega),限流5A,那么采样电阻上的压降只有 (50mV)。如果直接用这个信号跟基准比较,基准也要做到50mV级别,噪声和温漂都很难看,所以需要通过差分放大器放大一下,比如放大10倍,得到0.5V的满量程信号,再把电流环基准设为0.5V。这样电流环和电压环的误差放大器都工作在0到几十倍放大的量级,精度和稳定性更好。
这里有个非常容易被忽略的点:未接手的环路不能饱和得太深。以恒压阶段为例,电流反馈值远低于限流基准,电流环误差放大器处于正向饱和输出。如果饱和到12V电源轨,等到需要它切换时,运放要从12V回到线性工作区,这段时间内输出相当于“失控”,很容易造成限流动作偏晚。所以竞争架构里通常会加一级钳位,把误差放大器的最大输出限制在一个略高于接管电平的位置,比如5V之外再叠0.5V余量。这样退出环始终在半待命状态,切换延迟可以做到微秒级。
2.3 工作区间划分:恒压区、恒流区与过渡区
把两个环路的误差信号画在同一张图上,可以直观看到三个区间。恒压差大、恒流差也大时,比如刚上电、输出电压为0、电流被限住,明显是电流环主导;输出电压接近目标但电流还很小,明显是电压环主导;更关键的是中间那段过渡区,两个误差信号同时处于接近线性区的范围,系统逐渐从恒流切换到恒压。
良好设计的标志是:过渡区内控制总线上的电压呈单调变化,没有台阶;输出电压在切换点附近有一个圆角,而不是尖锐的折线;开关频率在整个过程中连续移动,不出现频率跳回。为了做到这一点,可以有意把两个环路的增益做得接近。因为LLC的频率-增益关系本身是非线性的,两个环路对频率控制的“灵敏度”不一致时,交接就会被放大成跳变。我的习惯是让电压环穿越频率落在3kHz左右,电流环穿越频率控制在相同频段,这样两者在交接时的动态特性基本一致,输出几乎不留痕迹。
3. LLC增益特性下的环路补偿设计,必须绕开两个频点
3.1 增益曲线不是直线,补偿目标不能按固定斜率做
LLC的受控对象和普通PWM变换器很不一样。从频率控制端到输出电压的传递函数,本质上是一个随频率变化的谐振网络。在感性工作区内,开关频率越低、越接近谐振点,增益越高;频率升高,增益下降。负载越重,品质因数越高,增益曲线在谐振点附近越是“尖”,远离谐振点则会迅速变得平缓。
这意味着闭环里的“控制对象增益”不是常数:重载时接近谐振点,控制灵敏度很高,相当于环路增益被抬高;轻载时跑到高频区,控制灵敏度变低,相当于环路增益被压低。如果补偿网络只按某一个负载点设计,换到另一个负载点就可能出现相位裕量不足或增益过高的情况。实际表现就是轻载啸叫、重载噪声大、负载切换时输出振铃。
所以LLC环路补偿的第一原则是:不要把穿越频率定得过高。一般建议把穿越频率压到谐振频率的1/10以下,比如谐振频率100kHz,穿越频率取10kHz以内;更保守一点取5kHz。太低动态响应差,太高容易碰到谐振峰和采样延时造成的相位恶化。
3.2 两个必须避开的频点:谐振双峰与开关频率纹波
第一是原边谐振频率点。这里增益曲线变化最陡,相位变化也最剧烈。如果穿越频率靠近这个点,阻尼稍微变差,环路就可能在谐振频率附近振荡,表现在波形上是输出叠加一个正弦波动,频率远低于开关频率但富有规律,听感上就是“滋——”的高频啸叫。第二是开关频率本身及它的二倍频。变频控制天然会带来由开关频率决定的纹波,如果补偿网络在开关频率处还有足够增益,纹波就会通过环路反馈形成自激,表现为开关频率附近的噪声边带。
针对这两个频点,常用做法是采用二型补偿(一个零点、一个极点)或三型补偿(两个零点、两个极点),在穿越频率附近提供一个零点增加相位裕量,在高于穿越频率5到10倍的地方放置高频极点把增益压下去。LLC这种离散谐波多的场合,我习惯在三型补偿里把高频极点放得更低一点,宁可损失一点相位,也要确保高频段增益千万不能翘头。
3.3 电压环和电流环,补偿参数怎么拉齐
电压环采样输出电容电压,它的被控对象包含输出电容和负载电阻组成的主极点,以及LLC槽路引入的谐振极。电流环如果也采样输出端电流,它的被控对象主极点位置跟电压环的阶次相同,只是反馈量和增益不同。所以两套补偿网络可以共用同一种拓扑,只是零点、极点位置略微调整。
如果电流环采样放在原边,比如通过谐振电容电压估算输出电流,那么被控对象会完全变样。原边电流和副边输出电流之间还隔着变压器匝比和谐振槽路,它的幅频响应里有明显的谐振峰,而且相位特性随负载变化剧烈。用这种信号做电流环,补偿难度会大很多,切换时也容易出现“电压环明明稳定,电流环却自己振起来”的怪现象。所以非必要不建议把电流采样放在原边。
我个人的做法是:始终用输出端电流采样做电流环,两套补偿网络都以相同的穿越频率为目标。先把电压环单独闭环,带上不同负载,确认相位裕量大于45度;再把电流环单独闭环,限流条件下调负载,同样确认相位裕量;最后才把两个环接成竞争结构。如果两个环单独都稳定,合在一起仍然出现切换振荡,多半是两套补偿网络的零点位置相差太远,导致接管瞬间相位突变。把这个零点位置拉近之后,问题基本都会消失。
4. 从波形看竞争设计是否达标:过冲、振荡与啸叫的排查
4.1 记录CV/CC切换点关键波形:输出量只是表象
很多朋友调试双环竞争只看输出电压和输出电流,这是不够的。模拟控制里,真正判断环路交接质量的是控制总线信号。你用示波器同时测输出电流、输出电压、控制总线上电压、开关频率这四路信号,才能把问题定位准。
调试步骤可以这样推进:第一步,电子负载设为恒流模式,从空载逐步加大负载电流,直到输出进入限流状态。同步观察输出电压曲线,如果切换点出现一个小幅回折,说明两个环路的交接点出现了电位竞争。第二步,继续增大负载,让系统稳定长时间工作在恒流区,观察是否有低频振荡。如果有,基本可以断定电流环相位裕量不足。第三步,把负载快速从恒流区拉回空载,观察电压是否过冲超过目标值5%以上,这是环路饱和深度或竞争选择网络响应速度的问题。
在波形判读上,开关频率是最诚实的朋友。LLC是变频控制,控制总线电压其实就对应目标频率。正常的CC/CV切换,控制总线电压应当平滑移动;你看到总线电压出现“台阶”,说明选择网络里两个二极管/比较器之间出现了死区或回差。总线电压出现“快速来回扫”的频率抖动,说明环路在切换点附近存在持续振荡,幅度小但频率高。
4.2 切换瞬间输出过冲的两种机理和对应解法
我踩过最多的坑是恒流切恒压瞬间电压过冲。表面上看是“切换晚了”,实质机理可以分成两类。第一类是负载变化导致电压环先动了手:负载突然减小,输出电压瞬间上抬,电压环立刻把频率往高里调,把增益降下来。这个过程本身没问题,但如果在同一时刻电流还没有完全退到限流值以下,电流环也会有动作,两个环在过渡区互相影响,输出就出现一个过冲尖峰。这类问题靠加快切换没用,反而要把电压环的响应适当放慢一点,或者给电压环误差信号加一个斜率限制,让电流环有足够时间退出。
第二类是选择网络本身的过渡缺陷。两个误差放大器的摆率不同,或者二极管反向恢复特性不一致,控制总线在交接时出现一个短暂“毛刺”,频率瞬间被拉向错误方向。处理方式是在公共总线上加一个几十皮法到一百皮法的小电容,把过渡毛刺积分掉。这个电容不能太大,太大会让整个环路响应变迟钝,反而加剧切换过冲。从10pF开始试,逐步加,直到切换波形上的毛刺不再出现。
4.3 实测中常见的四种异常现象对照表
| 异常现象 | 可能原因 | 处理措施 |
|---|---|---|
| 切换点输出电压回折 | 两环误差信号在选小网络处出现电位冲突或死区 | 检查二极管配对、公共总线电容,微调电流环基准 |
| 恒流区低频振荡 | 电流环穿越频率设置过高或相位裕量不足 | 降低电流环穿越频率,调整补偿零点位置 |
| 轻载啸叫 | 高频区控制增益过低,环路补偿零点不合适 | 增加一个低频零点,或者改用三型补偿 |
| 重载时开关频率异常跌落 | LLC进入容性区边缘,竞争切换把频率拉得太低 | 限制控制总线最低频率,增加频率下限钳位 |
特别注意最后一种现象:LLC绝不能进入容性工作区,否则原边功率管会硬开通,几分钟内就可能炸管。所以控制总线上一定要加频率下限钳位,无论是用模拟钳位还是软件限制,都要让最低频率高于谐振频率一定余量。双环竞争设计得再好,也不能突破这条物理红线。
5. 经验收尾:这样验证双环竞争设计的可靠性
项目做完之后,我养成了三个固定验证动作。第一个是“全负载扫描”:电子负载从空载到满载、再从满载回空载,用慢斜坡扫,同时记录控制总线电压和输出电压的波形。真正的竞争设计应当是全程平滑的,哪怕在切换点附近也只是曲率变化,不允许出现台阶。第二个是“阶跃扫描”:让负载在恒压边界和恒流边界之间快速切换,观察切换瞬间过冲量和震荡周期。过冲量超过设定值5%就必须回头检查补偿,震荡超过两个周期同样不合格。
第三是“热态验证”。双环竞争的交接点会受二极管压降、运放偏置电流和基准漂移影响,所以不能只在常温下测。我用高低温箱分别在零下20度和高温85度下扫描切换点,记录切换点在输出功率轴上的偏移量。偏移超过设计裕量时,就得换温漂更小的二极管,或者在电流基准回路上并联正负温度系数电阻做补偿。这一步最费时间,但也是最值得做的,因为很多LLC电源在产线上“试机没问题”,一拉到北方或南方客户现场就出怪问题,根源往往就在这里。
最后再分享一个非常实用的技巧:调试双环竞争时,不要只盯着误差放大器的输出端,要把示波器探头直接点到LLC控制芯片的频率设定引脚或外部VCO的输入端。那个节点上的电压才是两个环路“竞争”之后的最终结果。你看到的波形越干净,说明选择网络越健康;那个节点一旦有任何杂讯,辐射到输出端都是过冲和噪声的源头。把这一步做好了,LLC电压/电流双环竞争设计才算真正收工。