ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

开关电源环路补偿深度解析:稳定性判据、补偿网络设计与调试实战

开关电源环路补偿深度解析:稳定性判据、补偿网络设计与调试实战 做开关电源的人迟早会在环路补偿这个坑里摔一跤。输出振荡、空载啸叫、动态响应拖泥带水很多问题排查到最后都会指向同一个地方——反馈环路没调好。我刚入行那会儿遇到输出纹波大、带载就抖第一反应是换电容、加磁珠结果换来换去问题纹丝不动。后来才明白真正的原因往往是环路增益和相位没配对也就是常说的一句话环路补偿参数不对。这篇是我自己梳理的“开关电源进阶知识补充”系列第一篇专门把环路补偿这件事讲透它是什么、为什么需要、怎么设计、怎么调。适合已经做过几版电源、但还没系统研究过环路的人也适合调试中被稳定性问题反复折磨的同学对照参考。1. 为什么开关电源离不开环路补偿1.1 负反馈是电源稳定的基础也是振荡的来源开关电源本质上是一个负反馈系统输出电压经过采样电阻分压送入误差放大器与基准电压比较再通过PWM调制器调整占空比最终控制功率级把能量从输入端传递到输出端。采样、比较、放大、调制、滤波这一整条链路构成了一个闭环控制回路。负反馈的目的是让输出始终跟随基准走输入电压波动、负载变化都能被环路“看见”并纠正。但这里有一个容易被忽略的陷阱凡是负反馈系统就有变成正反馈的可能。当某个频率点上反馈信号经过环路一圈之后相位滞后超过了180度原来的“负反馈”就变成了实质上的“正反馈”这时候哪怕环路增益只有1倍系统也会开始振荡。这就像麦克风对着音箱当声音从音箱出来又被麦克风拾取、放大再出来、再拾取只要增益够大啸叫就停不下来。开关电源的振荡就是这个物理过程在电路里的翻版只是频率从音频挪到了几十千赫甚至更高。所以“闭环系统一定稳定”是个错觉。负反馈只是提供了稳定的前提最终是否稳定完全取决于环路增益和相位的关系。这也是为什么开关电源不能简单地把反馈一接就完事必须通过环路补偿来“塑造”整个环路的频率响应。1.2 功率级本身的频率特性LC双极点与ESR零点想要理解环路补偿在“补”什么首先得看清不补偿时功率级长什么样。以最常见的Buck和反激为例CCM连续导通模式下控制到输出的传递函数大致是一个二阶系统输出滤波电感和输出滤波电容构成了一个LC滤波器在谐振频率附近增益曲线会出现一个明显的峰值相位也会快速下跌。这个LC谐振点工程上习惯叫“LC双极点”频率大致为f_LC 1 / (2π × √(L × C))双极点的破坏力是双份的增益以每十倍频程-40dB的速度往下滚降同时相位最多会滞后180度。要知道环路稳定性的底线就是“穿越频率处相位滞后不能到-180度”LC双极点几乎直接就把相位打到临界点附近了。再加上PWM比较器本身的延迟、光耦或者驱动芯片的传播延迟、输出电容ESR形成的高频零点等等实际电源的相位曲线往往比单纯LC双极点还要难看一些。唯一能帮上点忙的是ESR零点。输出电容的寄生电阻ESR会在频率f_ESR 1/(2π × ESR × Cout)处产生一个零点这个零点可以带来最大90度的相位提升能在一定程度上对冲LC双极点的相位恶化。可问题是现代电解电容和固态电容的ESR越做越低ESR零点往往被推到几百千赫甚至更高远水救不了近火。换句话说功率级本身的频率响应并不友好必须靠补偿网络来修正。1.3 不补偿会怎样从Bode图看“迟早要出事”如果把开关电源的反馈环路断开把整个环路的增益和相位曲线画在一张Bode图上很多电源的原始曲线是这样的低频段增益很高随着频率升高不断下降在LC谐振点附近增益出现一个“平台”甚至一个凸起然后继续以-40dB/dec的斜率往下掉。相位则从-90度附近一路下跌经过LC谐振区后快速逼近-180度甚至更低。这时候你把环路闭合能不能稳定就看增益曲线穿越0dB的那个频率点穿越频率fc上相位到底还剩多少余量。如果原始曲线在穿越频率处相位只有-150度甚至-170度那闭环之后大概率就是持续振荡、或者一加载就抖。现实中很多“炸机”案例、输出纹波大的案例、带载就啸叫的案例拆开来看环路的Bode图基本都是这么个状态。所以环路补偿干的事情本质上就是在反馈通路里插入一组精心设计的RC网络或者通过TL431、光耦等元件构成等效的RC网络给环路增益曲线“整形”在需要的地方增加一个零点把相位往上抬一抬在不需要高频增益的地方放一个极点把高频段压下去。目标就一句话让环路以-20dB/dec的斜率穿越0dB并且在穿越频率处留足相位裕度。2. 环路补偿核心指标先记住这几个判据2.1 穿越频率决定环路能管多宽的频段穿越频率fc指的是环路增益降到0dB也就是增益等于1时的频率。它直接决定了环路能对多快的扰动做出反应。你可以把环路想象成一个“纠错系统”穿越频率越高系统纠正输出偏差的速度就越快动态响应也就越好但代价是高频噪声、开关毛刺更容易穿过环路被放大系统对寄生参数也更敏感。工程上有一个常用的经验范围穿越频率取开关频率的1/10到1/5。比如开关频率100kHz的电源穿越频率通常设计在10kHz到20kHz之间反激电源如果光耦反馈延迟较大常常保守一点取到5kHz甚至更低。太低了动态响应会肉负载一突变输出就掉下去一大截太高了则容易踩到开关噪声和EMI的雷区环路本身都未必稳得住。在计算穿越频率的时候还有一个容易忽略的点穿越频率会随输入电压、负载电流变化而漂移。输入电压升高功率级增益变大负载变重功率级增益也可能变化。所以设计时要让补偿网络的增益余量覆盖这些变化。我在实测中一般会把同一款电源在低压满载、高压满载、低压半载、高压空载四种工况下分别测一遍Bode图确保最恶劣工况下穿越频率和相位裕度仍然达标。2.2 相位裕度和增益裕度稳定性的两条硬规矩相位裕度Phase MarginPM是最直观的稳定性判据在穿越频率处环路相位距离-180度还有多少度这个余量就是相位裕度。工程上一般要求至少45度最好是50到60度。为什么不能太少因为元件参数会漂移温度、老化、批次差异都会让相位曲线移动你设计时留了45度实际量产出货时可能只剩30度。如果只留20度基本上一批货里必然有若干台产品在特定条件下抖给你看。相位裕度不足时的现象很典型输出带上某个负载后开始振荡或者负载跳变时输出过冲很大、振铃减不下来。听声音有时候也能判断环路不稳定时电感或变压器经常发出可闻的啸叫——那不是磁性材料本身在叫而是环路在某个频率上反复“折腾”占空比让磁性元件产生了振动。增益裕度Gain MarginGM同样重要它指的是相位达到-180度的时候环路增益还低于0dB多少。工程上一般要求增益裕度大于10dB。增益裕度不足的情况比较隐蔽因为相位裕度看着还好但一旦输入电压升高或者负载变轻导致增益变大系统会在远离穿越频率的地方突然振荡起来。所以我调试环路的时候相位裕度和增益裕度会同时看缺一个都不放心。2.3 0dB穿越斜率为什么-20dB/dec是最舒服的很多刚接触环路补偿的人会问为什么所有参考设计都在强调“穿越频率处按-20dB/dec斜率穿越”道理并不复杂。如果一个系统在穿越频率附近是-20dB/dec斜率那么相位曲线在那一带的典型值大约是-90度附近也就是说从频率响应的天然关系上看这种斜率对应的相位滞后是有限且可控的留给你的相位裕度相对充裕。反过来如果穿越频率恰好在-40dB/dec的区域相位通常已经在-180度附近甚至更低了系统基本处在不稳定的边缘。3.2 Type II一个零点一个极点反激电源的主力Type II补偿是最常见的类型适合绝大多数PWM型开关电源尤其是反激和正激。它的电路结构是在Type I的基础上在反馈电容上串联一个电阻再在串联支路两端并联一个小电容。第二个零点由C3和R3产生频率大致为 fz2 ≈ 1/(2π × R3 × C3)近似它进一步给中频段增益“加油”帮助把穿越频率推高改善动态响应。第三个极点由R3和C3的串联支路与输入电阻R1配合产生频率大致在 fp2 ≈ 1/(2π × R3 × C3)近似注意这个近似前提是R3远大于R1如果两者数量级接近零点极点会靠得很近效果会打折扣。选型上Type III一般用于电压模式Buck这类LC双极点突出、又希望获得较高穿越频率的设计。反激电源因为通常利用光耦和TL431实现隔离反馈光耦本身会引入额外的延迟和极点Type III的使用场景相对少一些硬上Type III反而可能在高频段引入过多噪声。我在实际项目中用Type III的一个心得是零点不要放得太接近。如果把两个零点都堆在LC谐振频率附近中频增益会抬得很高穿越频率容易冲到开关频率的1/5以上这时候开关噪声会顺着环路跑进来反而得不偿失。通常让第二个零点比第一个零点高3到5倍频程给相位提升留出足够的“跨度”。4. RC串联零点到底是怎么“拔高”增益和相位的4.1 阻抗随频率变化从“纯电容”到“纯电阻”先看最基本的RC串联网络一个电阻R和一个电容C串在一起它的复阻抗可以写为 Z(s) R 1/(sC)。这个式子很有意思随着频率从低到高变化阻抗的性质会完全改变。低频时电容的容抗1/(jωC)很大阻抗几乎完全由电容主导表现为容性高频时容抗越来越小阻抗趋近于电阻R表现为纯阻性。在环路补偿中这个RC串联网络如果接在运放的反馈通路里它就会把一个“随频率变化”的阻抗特性引入到环路增益中。Type II补偿网络中R2和C1的串联支路就是这样工作的低频时容抗大环路增益还在积分段的-20dB/dec斜率上滑到了某个频率电阻R2的阻抗赶上并超过电容的容抗增益的下降趋势被刹住从-20dB/dec转向平坦。这个转折频率就是零点频率 fz 1/(2π × R2 × C1)。用通俗的话说频率低的时候电容“挡住了”信号电阻的作用不明显频率高了电容阻抗变小电阻开始“接管”反馈通路的阻抗等效阻抗从很大变成有限值反馈量变了增益曲线自然就拐弯了。这个“拐弯”就是零点在Bode图上的直观体现。4.2 传递函数看零点一次项带来的增益爬升从传递函数的角度看更清晰。RC串联网络的阻抗是Z(s) R 1/(sC) (1 sRC) / (sC)分子里的(1 sRC)就是一个零点零点频率是 ωz 1/(RC)或者说 fz 1/(2πRC)。当我们画幅频曲线时这个零点带来的效果是从fz附近开始增益以20dB/dec斜率上升相对原来的积分段。相位从约0.1倍fz处开始上升到fz处达到45度到10倍fz处逼近90度上限。所以为什么大家说“RC串联形成的零点能提升增益和相位”——这其实是相对于“没有这个零点、只有积分电容”的基线而言的。假如没有R2反馈通路就是纯电容C1整个环路会一直保持-20dB/dec下降、相位恒为-90度中频增益会很低穿越频率也会非常低动态响应差。加入R2之后从零点频率开始增益曲线从-20dB/dec转成平坦相当于在原有基础上额外“抬高”了增益相位也从-90度往0度方向回升在穿越频率附近往往能多给出40到60度的相位余量。来一个具体数字感受一下。取R23.3kΩ、C122nF零点频率fz 1/(2π × 3300 × 22×10⁻⁹) ≈ 2192Hz也就是说在2.2kHz附近增益曲线开始从-20dB/dec转向平坦相位开始回升。如果这个小电源的LC双极点正好在2kHz附近这个零点就能精准地“对冲”掉双极点带来的相位下跌。4.3 相位提前的直觉微分作用与超前补偿从控制理论的角度看零点带来的相位提升本质上是一种“超前”效果。零点越靠近穿越频率它对相位曲线的贡献越明显。零点可以理解为系统对输入变化的一种“预见性”它让误差放大器的输出提前对误差信号的变化趋势做出响应相当于在控制环路里加入了一点微分作用。许多工程师在调环路时发现加上零点之后相位裕度上来了但同时也注意到高频噪声变大了。这是因为零点的增益提升作用并不仅限于穿越频率附近它会让高频段增益整体抬高。这就是为什么Type II和Type III里零点后面一定要跟随极点——零点负责“抬”极点负责“压”一抬一压既拿到了相位裕度又不会让高频噪声失控。5. 实操流程从测量环路到调参完整记录5.1 用环路分析仪测Bode图的基本接法调环路最靠谱的手段还是环路分析仪常见的有Keysight E5061B、Venable国产PS1702系列等。这类仪器可以在不破坏电源闭环工作状态的前提下向反馈环路中注入一个微小正弦扰动然后测量扰动经过整个环路后的增益和相位变化直接画出Bode图。关键点是注入位置。一般选择在反馈分压电阻和误差放大器输入之间或者光耦的原边侧原则是“注入点必须处在整个环路中间并且注入路径上不能有大的阻抗突变”。仪器通过一只隔离注入变压器把一个小幅值正弦信号串联到环路里采样通道分别测注入前和注入后的信号用它们的比值和相位差来代表环路增益T(s)。测之前要把注入信号幅值调小通常先扫一个频率点看看环路响应在不在合理范围再正式扫描。测Bode图的时候有几点容易翻车。第一注入信号幅值不能太大太大会让电源工作点发生偏移测出来的增益曲线失真第二扫描频率范围要足够宽一般从10Hz或者100Hz扫到开关频率的两到三倍第三被测电源要加合适的负载最好模拟实际应用中最恶劣的工况我习惯至少分别测满载和半载两组数据因为负载轻重对功率级增益影响很大。5.2 没有环路分析仪怎么办时域评估三招环路分析仪不是每个人都有尤其在小公司或者学校实验室更多时候手边只有示波器和电子负载。这时候可以用时域方法粗略评估相位裕度虽然不是Bode图那么精确但足够判断“这个电源到底稳不稳”。第一招是负载阶跃法。用电子负载给电源加一个阶跃负载比如从1A突变到3A同时用示波器观察输出电压波形。如果输出电压出现一个明显的负向跌落然后回来时带着衰减的振荡就说明相位裕度偏小振荡次数越多、衰减越慢裕度越差。如果输出过冲适中回来时只有一次轻微振铃就稳定了通常相位裕度在45到60度之间是比较理想的状态。第二招是看恢复时间。把负载突变后的波形整个录下来算一下从突变开始到输出进入稳态所花的时间。穿越频率越低恢复时间越长。如果你觉得动态响应太慢而相位裕度又不低往往是穿越频率设计得太低了这时候要考虑把补偿网络的零点频率调高或者调整增益让穿越频率上去。第三招是观察临界稳定现象。缓慢加大负载或者缓慢改变输入电压看输出是否会出现持续的、噪声般的振荡。一旦出现记下此时的负载和输入电压条件再用小扰动验证一下是不是环路的问题。这一招说起来简单实际操作时要有耐心。5.3 参数初值计算与迭代微调实例举一个我最近调过的反激电源例子。规格是12V/3A输出开关频率100kHz反激变压器初级电感量1.2mH匝比8:1输出电容470μF电解电容实测ESR约20mΩ。先算功率级的两个关键频率。等效输出电感L_eq Lm / N² 1.2mH / 64 ≈ 18.75μHLC双极点频率f_LC 1 / (2π × √(18.75×10⁻⁶ × 470×10⁻⁶)) ≈ 1.7kHzESR零点频率f_ESR 1 / (2π × 0.02 × 470×10⁻⁶) ≈ 16.9kHz按照“穿越频率取开关频率1/10”的惯例目标fc设10kHz。原本没有补偿时10kHz处的增益大约是不够的实际测量大概-5dB左右相位也剩下不多必须靠补偿网络提升。选Type II结构。中频增益大致由R2/R1决定为了在10kHz处把环路增益顶到0dB设R12kΩR210kΩ这个组合在10kHz附近提供约14dB的平台增益。零点对准LC双极点取fz≈1.7kHz则C1 1/(2π × R2 × fz) 1/(2π × 10000 × 1700) ≈ 9.4nF取标准值10nF。零点变为 fz 1/(2π×10k×10nF) ≈ 1.59kHz差不多压着LC双极点。极点放在30kHz左右避免开关噪声放大C2 1/(2π × R2 × fp) 1/(2π × 10000 × 30000) ≈ 530pF取标准值470pF或560pF实测后再微调。用这些初值上电环路分析仪测出来的曲线和估算基本符合。实际微调时我把R2从10k调到了12k原因是输入电压最低的那档工况下原始功率级增益比估算低了一点需要补偿网络多给2dB左右的增益才能保证fc仍然落在10kHz附近。全过程记录实测数据每次只动一个元件改完就重新测一组Bode图这样最终调出的参数才是可追溯的。6. 常见问题与排查技巧实录6.1 输出振荡或啸叫先分清是环路问题还是布局问题遇到输出振荡不要第一时间就怀疑环路。我在排查中通常先做几个基础动作用示波器看MOSFET漏极波形和输出纹波确认振荡频率和开关频率的关系然后分别改变负载和输入电压观察振荡是否跟着变化。如果振荡频率远低于开关频率而且基本不随负载变化那大概率是环路问题如果振荡频率很高几MHz甚至更高而且只在MOSFET开关瞬间出现那多半是寄生参数引起的振铃跟环路没关系需要从布局、吸收电路、栅极电阻入手解决。这两种问题处理方式完全不同。把环路补偿参数改来改去去压一个寄生振铃方向就错了白费半天功夫。我自己踩过这个坑有一版反激电源在满载时一直有几十毫伏的高频纹波我反复调补偿参数结果纹波纹丝不动后来才发现是次级整流二极管的尖峰耦合到了采样电阻上加了RC吸收和滤波电容就没了。6.2 空载/轻载工作不正常模式切换后的补偿失效反激电源一个比较头疼的问题是空载或轻载不稳定。原因是电源在轻载时常常从CCM连续导通模式过渡到了DCM断续导通模式功率级的小信号特性发生了明显变化原来在CCM下设计好的补偿参数在DCM下相位裕度可能就不够了于是出现间歇性振荡或者输出电压飘忽的现象。处理思路有这么几种第一种是干脆加一个假负载让电源始终工作在CCM或至少不进入极端的DCM这是最简单粗暴但也最有效的办法代价是空载功耗略高第二种是让补偿网络在DCM条件下也有足够裕度这要求设计时把两种模式的功率级传递函数都算一遍取更恶劣的工况来定参数第三种是选用专门做过轻载优化的控制芯片有些芯片内部会自动调节环路增益比如根据负载情况改变跨导减小模式切换带来的环路跳变。我在实际项目里通常先用假负载把稳定性问题摁住再在不带假负载的前提下重新测一遍环路响应根据实测结果微调零点位置争取在两种模式下都有40度以上的相位裕度。这样“双保险”的做法虽然多花一点时间但在量产阶段能省掉很多售后麻烦。6.3 关于“打嗝”、MOS尖峰和经典书籍的几个补充UC3842等反激芯片的“打嗝”现象也是热搜常客这里简单辨析一下。打嗝Hiccup本质上是保护电路在过流或短路时触发的周期性重启电源启动一下检测到过流立刻关断过一段时间再尝试启动周而复始。这跟环路稳定性的关系不大多数是因为负载短路、变压器饱和、过流采样电阻偏小导致的。但如果你的电源在非短路状态下也出现反复打嗝那就要检查环路是否在启动阶段就振荡这时候压低穿越频率或增加软启动时间往往能解决。“如何减少MOS打开时的尖峰毛刺”也是一个高频问题。坦白说MOS开启尖峰主要是寄生电感和寄生电容在高频开关过程中产生的LC谐振跟反馈环路补偿基本没有关系。处理手段集中在三个方面一是优化PCB布局减小漏感和环路面积二是在MOS管D-S之间加RC吸收或RCD钳位三是在栅极串联电阻或使用有源米勒钳位来减缓di/dt。这些都是硬件的波形整治手段指望补偿网络去吸收开关尖峰是不现实的。最后推荐几本我自己案头常翻的书Abraham I. Pressman等人写的《开关电源设计第三版》覆盖各类拓扑和设计案例适合通读建立整体框架Sanjaya Maniktala写的《精通开关电源设计》对环路、磁性元件、噪声问题的讲述非常接地气许多工程直觉就是从这本书里学来的Christophe Basso的《开关电源控制环路设计》则更偏理论从传递函数和Bode图一路推演适合想彻底搞懂环路控制的人啃。这三本配合起来英文版加中文版对照着看基本上能把环路补偿的理论和实战补齐。环路补偿这个东西说难也难说容易也容易。难的是它涉及控制理论、功率级建模、实际测量一环套一环容易的是只要你会测Bode图会把零点和极点放到需要的位置上再积累几次“调完就好”的经验内心就会踏实很多。我个人最大的一个心得是调试环路时永远不要凭感觉乱试。先测量再计算然后一次只改一个参数记录每一次改动和结果最后你会发现自己对电源的理解会上一个台阶。下一篇我会继续补补充开关电源进阶知识的其他板块比如LLC和移相全桥的环路特点以及实际调试中更容易被忽略的采样网络设计问题。
返回列表