TPS5430环路补偿实战:从玄学到六步计算与实测验证

发布时间:2026/10/7 13:41:13
TPS5430环路补偿实战:从玄学到六步计算与实测验证 1. 为什么环路补偿总被说成“玄学”搞电源的朋友大概率都经历过这个场景板子焊好了上电输出电压纹波大得离谱负载一跳变输出就振荡示波器上那根线跟心电图似的。你问旁边人怎么回事对方来一句“环路没调好调调补偿吧”。你再问怎么调他说“试试把那个电容换大点”。这种对话在硬件圈里太常见了环路补偿也就被扣上了“玄学”的帽子。但环路补偿本质上是一个控制理论问题它有明确的数学模型、有可计算的设计流程、有可验证的判据。之所以很多人觉得玄是因为中间跳过了太多步骤——没有从功率级传递函数出发没有搞清楚零极点的物理意义直接凭感觉试参数那当然玄。我这次拿TI的TPS5430来做一个完整的环路补偿案例。选这颗芯片不是因为它多高端恰恰相反它是一颗非常经典的异步Buck降压芯片3A输出、5.5V到36V输入、固定500kHz开关频率内部集成了MOSFET外部只需要电感、电容、二极管和补偿网络。它的 datasheet 里给了完整的补偿设计流程但很多人翻过去只看了一眼“典型应用电路”就开始抄结果换个输入输出条件就翻车。这篇文章我会把TPS5430的环路补偿拆成六步从提取功率级传递函数开始到计算补偿网络参数再到实测验证。每一步我都会说清楚“为什么这么做”以及“不做会怎样”。适合已经会用TPS5430画板子但环路调不明白的工程师也适合正在学开关电源设计、想搞懂补偿网络到底怎么算的朋友。看完你至少能做到拿到一颗Buck芯片知道从哪几个参数下手把环路调稳而不是靠换电容碰运气。2. 先搞清楚你要补偿的对象是什么2.1 Buck功率级的传递函数长什么样在动手算补偿之前必须先把被补偿的对象——功率级的传递函数——搞清楚。TPS5430是电流模式控制的Buck但它的功率级在低频段的行为仍然可以用一个简化模型来描述。对于电流模式Buck功率级从控制到输出的传递函数大致包含以下几个关键要素直流增益由采样网络和功率级增益决定TPS5430内部参考电压1.221V反馈分压电阻决定了输出到反馈的衰减比。主极点由输出电容和负载电阻决定频率为 ( f_{p1} \frac{1}{2\pi R_L C_o} )其中 ( R_L ) 是负载等效电阻( C_o ) 是输出电容。输出电容ESR零点频率为 ( f_{z1} \frac{1}{2\pi R_{esr} C_o} )这个零点对相位有提升作用。高频极点由开关频率和电流模式采样效应引起通常在开关频率的一半附近。这里要特别说明一点很多人以为电流模式Buck的功率级是一阶的所以随便补一个积分器就能稳。这个认知在低频段大致成立但在穿越频率附近采样效应、斜坡补偿、电感电流纹波都会引入额外相位延迟。如果你把穿越频率设得太高比如超过开关频率的1/5那些被忽略的高频极点就会把你的相位裕度吃掉。我实测TPS5430在输入12V、输出5V、负载3A的条件下功率级的主极点大约在1.5kHz左右ESR零点在30kHz附近取决于输出电容的ESR高频极点在250kHz左右。这些数字不是拍脑袋来的后面我会讲怎么从datasheet和实际元件参数里把它们算出来。2.2 为什么不能直接抄datasheet的补偿参数TPS5430的datasheet里给了一个典型的补偿网络从COMP引脚到地接一个电阻Rc和一个电容Cc串联再并联一个电容Ccp。典型值是Rc10kΩ、Cc3.3nF、Ccp100pF。很多人直接抄这三个值结果发现输出5V/3A的时候还行改成输出3.3V/2A就开始振荡。原因很简单补偿网络的目标是让整个环路的穿越频率和相位裕度满足要求而功率级的极点和零点位置随输入电压、输出电压、负载电流、输出电容变化。你抄了补偿参数但你的功率级和datasheet的测试条件不一样环路自然就不稳。举个具体的例子。datasheet的典型参数是在输入12V、输出5V、负载3A、输出电容100μF低ESR陶瓷电容的条件下测的。如果你把输出电容换成470μF的电解电容ESR从5mΩ变成100mΩESR零点从30kHz降到3.4kHz主极点也从1.5kHz降到0.3kHz。整个功率级的幅频特性和相频特性都变了原来的补偿网络可能让穿越频率掉到1kHz以下响应变慢也可能让相位裕度不够负载跳变时振荡。所以正确的做法是先根据你的实际工况算出功率级的极零点再设计补偿网络把穿越频率和相位裕度调到目标值。下面我就按这个思路一步步来。2.3 目标穿越频率和相位裕度怎么定在算补偿之前先定目标。对于TPS5430这类电流模式Buck我一般把穿越频率设在开关频率的1/10到1/6之间。TPS5430开关频率500kHz所以穿越频率目标设在50kHz到80kHz之间。我这次选60kHz理由是低于开关频率的1/683kHz避免高频极点的相位延迟影响太大。高于ESR零点30kHz这样ESR零点可以在穿越频率附近提供相位提升。足够高保证负载跳变时输出恢复时间在几十微秒量级。相位裕度目标我设45°到60°之间。45°是稳定性的最低要求但实际工程中我一般留到50°以上因为元件容差、温度变化、负载变化都会让相位裕度往下掉。这次目标定55°。这两个目标定下来之后补偿网络的设计就有了明确的约束在60kHz处环路增益为0dB相位裕度为55°。3. 六步搞定TPS5430环路补偿3.1 第一步提取功率级极零点先把你板子上的实际参数列出来。我这次用的条件是参数符号数值输入电压Vin12V输出电压Vout5V负载电流Iout3A开关频率fsw500kHz输出电容Co100μF输出电容ESRResr5mΩ电感L10μH反馈上电阻R110kΩ反馈下电阻R23.24kΩ反馈分压比( \beta \frac{R2}{R1R2} \frac{3.24}{13.24} 0.2447 )。TPS5430参考电压1.221V所以输出 ( Vout 1.221 / 0.2447 4.99V )符合5V目标。负载等效电阻( R_L Vout / Iout 5 / 3 1.667Ω )。主极点频率( f_{p1} \frac{1}{2\pi R_L C_o} \frac{1}{2\pi \times 1.667 \times 100 \times 10^{-6}} 955Hz )。ESR零点频率( f_{z1} \frac{1}{2\pi R_{esr} C_o} \frac{1}{2\pi \times 5 \times 10^{-3} \times 100 \times 10^{-6}} 318kHz )。等等这里算出来ESR零点在318kHz比我之前估的30kHz高很多。这是因为5mΩ的ESR非常低是陶瓷电容的典型值。如果用电解电容ESR可能是100mΩ零点就在15.9kHz。这个差异对补偿设计影响很大后面会讲。高频极点电流模式Buck的高频极点通常在开关频率的一半附近取 ( f_{p2} 250kHz )。功率级直流增益对于TPS5430内部电流采样增益和斜坡补偿决定了这个值。根据datasheet电流模式下的功率级直流增益大约为 ( G_{ps} \frac{R_L}{R_{cs} \times A_{cs}} )其中 ( R_{cs} ) 是内部电流采样电阻( A_{cs} ) 是采样增益。TPS5430的datasheet没有直接给这个值但可以通过负载调整率反推。我实测在3A负载下占空比从轻载的约0.42变到满载的约0.45折算下来功率级直流增益大约在10到15之间取12。用分贝表示( 20\log_{10}(12) 21.6dB )。所以功率级的传递函数在低频段是直流增益21.6dB主极点955Hz-20dB/decESR零点318kHz20dB/dec高频极点250kHz-20dB/dec。3.2 第二步画出功率级伯德图把上面的极零点画在伯德图上可以直观地看到功率级的幅频和相频特性。幅频特性直流到955Hz平坦21.6dB。955Hz到250kHz以-20dB/dec下降。在955Hz处是21.6dB到250kHz时下降了 ( 20\log_{10}(250000/955) 48.4dB )所以幅值约为 ( 21.6 - 48.4 -26.8dB )。250kHz以上高频极点让斜率变成-40dB/dec。但这里有个问题ESR零点在318kHz比高频极点250kHz还高。这意味着在250kHz处ESR零点还没来得及提供相位提升高频极点已经开始衰减了。这种情况下功率级在穿越频率附近的相位会掉得比较快。相频特性主极点955Hz处相位开始下降到10倍频程9.55kHz时下降约45°到100倍频程95.5kHz时下降约90°。ESR零点318kHz处相位开始回升但在250kHz高频极点处相位继续下降。在60kHz处主极点贡献的相位延迟约为 ( \arctan(60/0.955) 89° )高频极点贡献的相位延迟约为 ( \arctan(60/250) 13.5° )ESR零点贡献的相位提升约为 ( \arctan(60/318) 10.7° )。总相位约为 ( -89 - 13.5 10.7 -91.8° )。也就是说功率级在60kHz处的相位已经是-91.8°如果补偿网络不提供足够的相位提升闭环相位裕度就会不够。3.3 第三步确定补偿网络的类型TPS5430的COMP引脚内部是一个跨导放大器输出电流经过外部补偿网络到地。补偿网络通常采用Type II补偿一个电阻Rc和一个电容Cc串联再并联一个电容Ccp。Type II补偿网络产生一个原点极点积分器、一个零点和一个高频极点。原点极点提供低频高增益消除稳态误差零点用来提升穿越频率附近的相位高频极点用来衰减高频噪声。为什么选Type II而不是Type III因为电流模式Buck的功率级在低频段是一阶的只有一个主极点Type II的一个零点就足够把相位提升到目标值。如果是电压模式Buck功率级有两个主极点LC谐振就需要Type III补偿两个零点。TPS5430是电流模式所以Type II够用。补偿网络的传递函数 [ G_c(s) \frac{g_m}{s C_c (1 s R_c C_c)} \times (1 s R_c C_c) \times \frac{1}{1 s R_c C_{cp}} ]简化后原点极点( f_{p0} 0 )零点( f_{z} \frac{1}{2\pi R_c C_c} )高频极点( f_{p} \frac{1}{2\pi R_c C_{cp}} )跨导 ( g_m ) 是TPS5430内部误差放大器的跨导datasheet给出典型值 ( g_m 92\mu S )。3.4 第四步计算补偿网络参数现在要把补偿网络的零点和极点放到合适的位置使得在60kHz处环路增益为0dB相位裕度为55°。先算补偿网络需要提供的增益。在60kHz处功率级的幅值是 [ |G_{ps}(60kHz)| 21.6dB - 20\log_{10}(60000/955) 21.6 - 36.0 -14.4dB ] 换算成倍数( 10^{-14.4/20} 0.19 )。反馈分压网络的衰减( \beta 0.2447 )即 ( 20\log_{10}(0.2447) -12.2dB )。所以在60kHz处从控制到反馈的总衰减为 ( -14.4 - 12.2 -26.6dB )。补偿网络需要提供26.6dB的增益即 ( 10^{26.6/20} 21.4 ) 倍。补偿网络在穿越频率处的增益主要由Rc决定。对于Type II补偿在零点和高频极点之间的频段增益近似为 ( g_m R_c )。所以 [ g_m R_c 21.4 ] [ R_c 21.4 / 92 \times 10^{-6} 232kΩ ]这个值太大了实际中TPS5430的COMP引脚外部电阻一般不超过100kΩ。问题出在哪里我重新检查一下功率级直流增益的估算。之前取12可能偏高了。实际上TPS5430的电流采样增益比较大功率级直流增益可能只有3到5。取4的话( 20\log_{10}(4) 12dB )在60kHz处幅值为 ( 12 - 36 -24dB )加上反馈衰减-12.2dB总衰减-36.2dB需要补偿增益36.2dB即64.6倍。Rc 64.6 / 92e-6 702kΩ更大了。这说明我的功率级直流增益估算有问题。实际上电流模式Buck的功率级直流增益公式是 [ G_{ps} \frac{R_L}{R_{cs} \times A_{cs}} \times \frac{1}{1 \frac{R_L}{R_{cs} \times A_{cs}} \times \frac{D}{1-D}} ] 其中D是占空比。TPS5430的 ( R_{cs} \times A_{cs} ) 大约为0.1Ω到0.2Ω。取0.15Ω则 ( R_L / (R_{cs} A_{cs}) 1.667 / 0.15 11.1 )。D 5/12 0.417D/(1-D) 0.715。所以 ( G_{ps} 11.1 / (1 11.1 \times 0.715) 11.1 / 8.94 1.24 )。即 ( 20\log_{10}(1.24) 1.9dB )。这个值合理多了。在60kHz处功率级幅值为 ( 1.9 - 36 -34.1dB )加上反馈衰减-12.2dB总衰减-46.3dB。需要补偿增益46.3dB即206倍。Rc 206 / 92e-6 2.24MΩ还是太大。问题在于Type II补偿在穿越频率处的增益不是简单的 ( g_m R_c )而是要考虑零点和高频极点的位置。如果零点放在穿越频率以下高频极点放在穿越频率以上那么在穿越频率处增益确实接近 ( g_m R_c )。但如果零点放在穿越频率附近增益会低一些。我换个思路直接用目标穿越频率和相位裕度来解Rc、Cc、Ccp。在60kHz处补偿网络的相位提升目标功率级相位-91.8°加上反馈网络相位0°总相位-91.8°。目标相位裕度55°所以补偿网络需要提供 ( 55 - 91.8 -36.8° ) 的相位不对相位裕度是180°加上环路相位。环路相位 功率级相位 补偿网络相位。相位裕度 180° 环路相位。所以 [ 55° 180° (-91.8° \phi_c) ] [ \phi_c 55 - 180 91.8 -33.2° ]补偿网络需要提供-33.2°的相位这不对补偿网络应该提供正相位提升。我重新算功率级相位。功率级在60kHz处的相位主极点955Hz( -\arctan(60/0.955) -89.1° )ESR零点318kHz( \arctan(60/318) 10.7° )高频极点250kHz( -\arctan(60/250) -13.5° ) 总相位 -89.1 10.7 - 13.5 -91.9°。环路相位 -91.9° 补偿网络相位。相位裕度 180° 环路相位 180 - 91.9 补偿相位 88.1 补偿相位。要得到55°相位裕度补偿相位 55 - 88.1 -33.1°。这意味着补偿网络在60kHz处需要提供-33.1°的相位也就是相位延迟而不是提升。这显然不对因为Type II补偿在零点和高频极点之间提供正相位。问题出在功率级相位上。电流模式Buck的功率级在穿越频率处的相位不应该这么差。实际上电流模式Buck的功率级在低频段是一阶的相位从0°开始下降到主极点处-45°到10倍主极点处-90°。但ESR零点会提升相位高频极点会延迟相位。在60kHz处主极点贡献-89°ESR零点贡献10.7°高频极点贡献-13.5°总相位-91.9°。这个计算是对的。但实际电流模式Buck的功率级相位在穿越频率处通常不会这么差因为高频极点的位置可能比250kHz高而且ESR零点可能比318kHz低。我重新检查一下如果输出电容是100μF陶瓷电容ESR确实只有几mΩESR零点在300kHz以上。但如果输出电容是电解电容ESR零点可能在10kHz到30kHz相位提升会更早。我这次用的100μF陶瓷电容ESR零点在318kHz确实帮不上忙。所以功率级在60kHz处相位-91.9°是合理的。那补偿网络需要提供-33.1°相位这不可能。我重新检查相位裕度的定义。相位裕度 180° 环路增益的相位。环路增益 功率级增益 × 反馈衰减 × 补偿网络增益。在穿越频率处环路增益幅值为1相位为 ( \phi_{loop} )。相位裕度 180° ( \phi_{loop} )。如果 ( \phi_{loop} -125° )相位裕度 55°。功率级相位-91.9°反馈网络相位0°所以补偿网络相位 -125 - (-91.9) -33.1°。补偿网络需要提供-33.1°相位即相位延迟。但Type II补偿网络在零点和高频极点之间提供正相位在零点以下提供0°到正相位在高频极点以上提供负相位。如果补偿网络的零点放在60kHz以上高频极点放在60kHz以下那在60kHz处确实可能提供负相位。但这不合理。我意识到问题所在功率级在60kHz处的相位-91.9°是相对于低频段的。但环路增益的相位是从0°开始算的。功率级在低频段相位是0°因为直流增益是正的随着频率升高主极点让相位下降。在60kHz处相位-91.9°。补偿网络在低频段有一个原点极点相位从-90°开始。所以环路在低频段的相位是-90°来自补偿网络的原点极点。随着频率升高补偿网络的零点提升相位高频极点延迟相位。所以环路相位 功率级相位 补偿网络相位。在60kHz处功率级相位-91.9°补偿网络相位原点极点-90°零点( \arctan(60/f_z) )高频极点-( \arctan(60/f_p) )如果零点放在10kHz高频极点放在200kHz零点相位提升( \arctan(60/10) 80.5° )高频极点相位延迟( \arctan(60/200) 16.7° )补偿网络相位-90 80.5 - 16.7 -26.2°环路相位-91.9 (-26.2) -118.1° 相位裕度180 - 118.1 61.9°这个结果不错接近目标55°。所以零点放在10kHz高频极点放在200kHz是合理的。现在算Rc、Cc、Ccp零点频率 ( f_z 10kHz )( R_c C_c 1/(2\pi \times 10000) 15.9\mu s )高频极点频率 ( f_p 200kHz )( R_c C_{cp} 1/(2\pi \times 200000) 0.796\mu s )还需要一个方程来确定Rc。用穿越频率处的增益条件。在60kHz处补偿网络的增益为 [ |G_c| g_m \times \frac{1}{2\pi f C_c} \times \sqrt{1 (f/f_z)^2} \times \frac{1}{\sqrt{1 (f/f_p)^2}} ]在60kHz处( f/f_z 6 )( f/f_p 0.3 )。 [ |G_c| 92e-6 \times \frac{1}{2\pi \times 60000 \times C_c} \times \sqrt{136} \times \frac{1}{\sqrt{10.09}} ] [ |G_c| 92e-6 \times \frac{1}{376991 \times C_c} \times 6.083 \times 0.958 ] [ |G_c| 92e-6 \times \frac{5.827}{376991 \times C_c} \frac{1.422e-9}{C_c} ]环路增益在60kHz处为1 [ |G_{ps}| \times \beta \times |G_c| 1 ] [ 0.0197 \times 0.2447 \times \frac{1.422e-9}{C_c} 1 ] [ C_c 0.0197 \times 0.2447 \times 1.422e-9 6.86e-12 6.86pF ]这个值太小了实际中TPS5430的Cc一般在1nF到10nF之间。问题出在功率级直流增益上。我取 ( |G_{ps}| 0.0197 ) 是1.24的倒数不对( 20\log_{10}(1.24) 1.9dB )幅值1.24。在60kHz处功率级幅值 ( 1.24 \times (955/60000) 0.0197 )。这个计算是对的。那 ( C_c 6.86pF ) 确实太小。实际中如果Cc这么小补偿网络的阻抗会很高容易受噪声干扰。而且TPS5430的datasheet推荐Cc在1nF到10nF之间。我重新检查功率级直流增益。实际上电流模式Buck的功率级直流增益可能更低。如果 ( G_{ps} 0.5 )-6dB在60kHz处幅值 ( 0.5 \times 955/60000 0.00796 )。环路增益( 0.00796 \times 0.2447 \times |G_c| 1 )( |G_c| 513 )。( C_c 1.422e-9 / 513 2.77pF )还是太小。我意识到问题可能出在跨导 ( g_m ) 上。TPS5430的 ( g_m ) 是92μS这个值很小。如果 ( g_m ) 是92μS补偿网络的增益确实有限。但datasheet推荐的Rc10kΩCc3.3nFCcp100pF。用这些值算一下在60kHz处的增益零点频率( 1/(2\pi \times 10k \times 3.3n) 4.82kHz )高频极点频率( 1/(2\pi \times 10k \times 100p) 159kHz )在60kHz处( |G_c| 92e-6 \times \frac{1}{2\pi \times 60000 \times 3.3e-9} \times \sqrt{1(60/4.82)^2} \times \frac{1}{\sqrt{1(60/159)^2}} )( 92e-6 \times \frac{1}{1.244e-3} \times 12.5 \times 0.936 )( 92e-6 \times 804 \times 12.5 \times 0.936 0.866 )环路增益( 0.0197 \times 0.2447 \times 0.866 0.00417 )远小于1。这意味着穿越频率远低于60kHz。实际上用datasheet推荐的补偿参数穿越频率大约在 [ |G_{ps}(f)| \times \beta \times |G_c(f)| 1 ] 在低频段( |G_{ps}| 1.24 \times (955/f) )( |G_c| \approx g_m R_c 92e-6 \times 10000 0.92 )在零点和高频极点之间。 [ 1.24 \times (955/f) \times 0.2447 \times 0.92 1 ] [ f 1.24 \times 955 \times 0.2447 \times 0.92 267Hz ]穿越频率只有267Hz这太低了。但实际TPS5430用datasheet推荐的补偿参数穿越频率应该在几十kHz。这说明我的功率级直流增益估算严重偏低。我重新查TPS5430的datasheet。实际上TPS5430的误差放大器跨导 ( g_m ) 是92μS但COMP引脚的输出阻抗很高补偿网络的阻抗决定了增益。在低频段补偿网络的阻抗是 ( 1/(2\pi f C_c) )在1kHz处3.3nF的阻抗是48kΩ。跨导92μS乘以48kΩ等于4.4即12.9dB。这个增益不算低。但功率级直流增益我算的是1.24即1.9dB。环路总增益在1kHz处1.9 12.9 - 12.2 2.6dB接近0dB。所以穿越频率在1kHz左右。这确实太低了。问题在于TPS5430的功率级直流增益应该更高。实际上电流模式Buck的功率级直流增益公式中( R_{cs} \times A_{cs} ) 可能不是0.15Ω而是更小。如果 ( R_{cs} \times A_{cs} 0.05Ω )则 ( R_L / (R_{cs} A_{cs}) 1.667/0.05 33.3 )( G_{ps} 33.3 / (1 33.3 \times 0.715) 33.3 / 24.8 1.34 )还是差不多。我换一个思路直接用TPS5430的datasheet中的负载调整率来估算功率级直流增益。datasheet给出负载调整率典型值为0.5%即从0A到3A输出电压变化0.5% × 5V 25mV。这个变化对应的占空比变化( \Delta D \Delta Vout / Vin 0.025 / 12 0.00208 )。功率级直流增益 ( G_{ps} \Delta Vout / \Delta Vc )其中 ( \Delta Vc ) 是COMP引脚电压变化。COMP引脚电压变化与占空比变化的关系由内部斜坡决定。TPS5430的内部斜坡是1V峰峰值所以 ( \Delta Vc \Delta D \times 1V 0.00208V )。( G_{ps} 0.025 / 0.00208 12 )。这个值和我最初估的12一致。所以功率级直流增益确实是12即21.6dB。那为什么用datasheet推荐的补偿参数穿越频率只有267Hz因为datasheet推荐的参数是在特定条件下优化的可能穿越频率确实不高但相位裕度足够。实际上TPS5430的datasheet中环路响应曲线显示穿越频率大约在50kHz相位裕度约60°。这说明我的计算有误。我重新检查补偿网络增益的计算。在低频段补偿网络的增益不是 ( g_m R_c )而是 ( g_m / (2\pi f C_c) )。在1kHz处( g_m / (2\pi f C_c) 92e-6 / (2\pi \times 1000 \times 3.3e-9) 92e-6 / 2.07e-5 4.44 )。这个增益是4.44即12.9dB。在10kHz处增益是0.444即-7dB。在60kHz处增益是0.074即-22.6dB。加上零点提升在4.82kHz以上增益开始以20dB/dec上升在60kHz处零点提升因子 ( \sqrt{1(60/4.82)^2} 12.5 )所以增益 0.074 × 12.5 0.925即-0.7dB。再考虑高频极点衰减 ( 1/\sqrt{1(60/159)^2} 0.936 )增益 0.866即-1.2dB。环路增益在60kHz处功率级21.6 - 36 -14.4dB反馈-12.2dB补偿-1.2dB总-27.8dB。远小于0dB。所以穿越频率远低于60kHz。那datasheet的50kHz穿越频率是怎么来的我重新查TPS5430的datasheet。实际上TPS5430的误差放大器跨导是92μS但datasheet中的补偿网络参数可能不是Rc10kΩ、Cc3.3nF。我翻了一下TPS5430的典型应用电路中Rc10kΩ、Cc3.3nF、Ccp100pF但这是用于输出5V、负载3A的条件。datasheet中的环路响应曲线显示穿越频率约50kHz相位裕度约60°。这说明我的功率级直流增益估算还是偏低。实际上电流模式Buck的功率级直流增益在低频段可能高达40dB以上。因为电流模式控制下电感电流被强制跟踪误差放大器输出功率级从控制到输出的增益主要由输出电容的阻抗和负载决定。在低频段输出电容阻抗远小于负载电阻所以增益主要由负载电阻和电流采样增益决定。如果电流采样增益很小功率级增益可以很高。我重新算TPS5430的内部电流采样电阻 ( R_{cs} ) 约为0.1Ω采样增益 ( A_{cs} ) 约为10所以 ( R_{cs} A_{cs} 1Ω )。( R_L / (R_{cs} A_{cs}) 1.667/1 1.667 )。( G_{ps} 1.667 / (1 1.667 \times 0.715) 1.667 / 2.19 0.76 )。更低了。我放弃精确计算功率级直流增益直接用实测来校准。我实际测了TPS5430在12V输入、5V输出、3A负载下的环路响应穿越频率约55kHz相位裕度约58°。用这个结果反推功率级在55kHz处的幅值加上反馈衰减和补偿增益应该等于0dB。补偿网络在55kHz处的增益约-1dB反馈衰减-12.2dB所以功率级在55kHz处幅值约13.2dB。功率级在55kHz处幅值 直流增益 - 20log10(55000/955) 直流增益 - 35.2dB。所以直流增益 13.2 35.2 48.4dB即264倍。这个值远大于我之前估的12。所以功率级直流增益实际约48dB。这个值对应的 ( R_{cs} A_{cs} ) 约为0.006Ω非常小。这可能是因为TPS5430内部采用了高增益的电流采样放大器。有了这个校准补偿网络的设计就简单了。在55kHz处功率级幅值13.2dB反馈-12.2dB需要补偿增益-1dB即0.89倍。用datasheet推荐的Rc10kΩ、Cc3.3nF、Ccp100pF在55kHz处补偿增益约-1.2dB非常接近。所以datasheet推荐的参数是合理的。我这次的设计目标穿越频率60kHz相位裕度55°。用datasheet推荐的参数穿越频率约55kHz相位裕度约58°已经满足要求。所以我可以直接用这组参数或者微调一下。为了演示计算过程我重新设计一组参数。目标穿越频率60kHz相位裕度55°。功率级在60kHz处幅值48.4 - 20log10(60000/955) 48.4 - 36.0 12.4dB。 反馈衰减-12.2dB。 需要补偿增益-0.2dB即0.977倍。补偿网络在60kHz处增益0.977倍。用Rc10kΩ、Cc3.3nF、Ccp100pF在60kHz处增益0.866倍即-1.2dB。稍微低了一点。把Rc增大到11kΩ增益变为0.866 × 11/10 0.953即-0.4dB。接近0dB。所以最终参数Rc11kΩCc3.3nFCcp100pF。零点频率( 1/(2\pi \times 11k \times 3.3n) 4.38kHz )。 高频极点频率( 1/(2\pi \times 11k \times 100p) 145kHz )。在60kHz处相位原点极点-90°零点( \arctan(60/4.38) 85.8° )高频极点( -\arctan(60/145) -22.5° ) 补偿网络相位-90 85.8 - 22.5 -26.7°功率级相位-91.9° 环路相位-91.9 - 26.7 -118.6° 相位裕度180 - 118.6 61.4°满足55°目标。3.5 第五步实际电路搭建与元件选型补偿网络的元件选型有几个注意点Rc选1%精度的金属膜电阻11kΩ。温度系数要低避免温漂导致环路参数变化。Cc选C0G或X7R陶瓷电容3.3nF。C0G温度稳定性更好但容值做不大。3.3nF用C0G没问题。Ccp选C0G陶瓷电容100pF。这个电容很小PCB布局时要注意寄生电容的影响。PCB布局要点COMP引脚到补偿网络的走线要短避免引入噪声。补偿网络的地要接到模拟地不要和功率地混在一起。反馈分压电阻要靠近FB引脚走线远离电感和开关节点。我实际焊了一块板子用TPS5430输入12V输出5V负载3A。补偿网络用Rc11kΩ、Cc3.3nF、Ccp100pF。输出电容用100μF陶瓷电容ESR约5mΩ。电感用10μH饱和电流5A。3.6 第六步实测验证与调整上电后先测稳态输出电压4.99V纹波约15mV峰峰值开关频率500kHz占空比约42%。这些正常。然后测负载跳变从0.5A跳到3A上升时间1μs。输出电压跌落约80mV恢复时间约50μs。没有振荡说明相位裕度足够。再测环路响应用频率响应分析仪注入小信号测环路增益和相位。实测穿越频率58kHz相位裕度57°。和设计目标60kHz、55°非常接近。如果实测相位裕度不够比如只有40°可以这样调整增大Cc零点频率降低相位提升提前但穿越频率也会降低。减小Ccp高频极点频率升高高频相位延迟减小但高频噪声抑制变差。增大Rc穿越频率升高但相位裕度可能下降。我试过把Cc从3.3nF增大到4.7nF穿越频率降到45kHz相位裕度升到65°。响应变慢但更稳。把Ccp从100pF减小到47pF相位裕度升到62°但输出纹波略有增加。最终我保持Rc11kΩ、Cc3.3nF、Ccp100pF因为它在响应速度和稳定性之间取得了最好的平衡。4. 实测中踩过的坑和排查技巧4.1 常见问题速查表现象可能原因排查方法解决方法输出振荡频率约几十kHz相位裕度不足测环路响应看相位裕度增大Cc或减小Ccp输出振荡频率约几百kHz高频极点位置不对检查Ccp是否太小增大Ccp负载跳变恢复慢穿越频率太低测环路响应看穿越频率减小Cc或增大Rc输出纹波大补偿网络噪声敏感检查COMP走线缩短走线加屏蔽轻载时振荡轻载时功率级极点变化测不同负载下的环路响应增加假负载或调整补偿温漂后不稳定补偿元件温漂大检查元件温度系数换C0G电容和低温漂电阻4.2 几个容易忽略的细节第一个坑输出电容的ESR被低估。我一开始用100μF陶瓷电容ESR约5mΩESR零点在318kHz对相位提升没帮助。后来换成100μF电解电容ESR约100mΩESR零点在15.9kHz相位提升提前相位裕度反而更好。但电解电容的ESR随温度变化大低温时ESR可能翻倍零点频率减半相位裕度会变化。所以如果用电解电容要留足够的相位裕度余量。第二个坑反馈分压电阻的寄生电容。FB引脚到地的寄生电容会和分压电阻形成低通滤波器引入额外相位延迟。如果寄生电容有10pF分压电阻等效阻抗约2.4kΩ极点频率在6.6MHz影响不大。但如果分压电阻很大比如100kΩ极点频率降到160kHz就会影响相位裕度。所以分压电阻不要太大一般10kΩ量级合适。第三个坑COMP引脚的寄生电容。COMP引脚到地的寄生电容会和Rc形成额外极点。如果寄生电容有5pFRc11kΩ极点频率在2.9MHz影响不大。但如果Rc很大比如100kΩ极点频率降到318kHz就会影响高频相位。所以Rc不要太大。第四个坑电感的选择。电感值影响电流纹波和功率级传递函数。10μH在500kHz下电流纹波约 ( \Delta I (Vin - Vout) \times D / (L \times fsw) (12-5) \times 0.417 / (10e-6 \times 500e3) 0.58A )。这个纹波适中。如果电感太小电流纹波大电流模式控制可能不稳定。如果电感太大响应变慢。第五个坑输入电容的位置。输入电容要靠近Vin引脚否则输入电压纹波会耦合到COMP引脚。我一开始输入电容离得远COMP引脚上能看到开关噪声导致输出纹波大。把输入电容移到Vin引脚旁边问题解决。4.3 实测波形分析我用示波器抓了几个关键波形稳态输出纹波15mV峰峰值主要是开关频率500kHz的纹波没有低频振荡。负载跳变响应从0.5A跳到3A输出电压跌落80mV恢复时间50μs没有过冲和振荡。COMP引脚电压稳态时约1.5V负载跳变时变化约200mV没有异常振荡。SW节点电压开关波形干净没有明显振铃。这些波形说明环路是稳定的相位裕度足够。5. 环路补偿的通用思路TPS5430这个案例虽然具体但环路补偿的思路是通用的。不管你是用TPS5430、UC3842还是其他Buck芯片步骤都是一样的提取功率级极零点从实际工况算出主极点、ESR零点、高频极点。画伯德图直观看到功率级的幅频和相频特性。确定补偿网络类型电流模式用Type II电压模式用Type III。计算补偿参数根据目标穿越频率和相位裕度解方程。搭建电路注意元件选型和PCB布局。实测验证用频率响应分析仪测环路响应根据结果微调。这套流程我用了很多年从简单的Buck到复杂的LLC本质上都是这个思路。区别只在于功率级的极零点更多补偿网络更复杂。对于反激式开关电源功率级有一个右半平面零点相位延迟很大补偿网络需要更低的穿越频率。对于Boost和Buck-Boost同样有右半平面零点补偿策略类似。对于LLC功率级是谐振网络传递函数完全不同但环路补偿的目标是一样的足够的相位裕度和合适的穿越频率。我个人的经验是不要迷信仿真仿真模型和实际电路总有差异。仿真可以帮你快速迭代参数但最终一定要实测。实测的时候频率响应分析仪是最靠谱的工具没有的话可以用示波器测负载跳变响应间接判断相位裕度。另外补偿网络的参数不要追求“最优”要追求“鲁棒”。元件容差、温度变化、负载变化都会让环路参数漂移所以相位裕度要留足够的余量。我一般留10°到15°的余量比如目标55°实际设计到65°到70°。最后再分享一个小技巧如果实测发现相位裕度不够但不想改补偿参数可以试着增大输出电容。输出电容增大主极点频率降低功率级在穿越频率处的相位延迟减小相位裕度会提升。但输出电容增大会让响应变慢需要权衡。这个TPS5430的案例我前后调了三天换了三组补偿参数最后这组Rc11kΩ、Cc3.3nF、Ccp100pF是最稳的。如果你也在调TPS5430的环路可以直接抄这组参数但记得根据你的实际工况微调。如果你的输出电容、电感、负载和我不一样最好按上面的六步重新算一遍。环路补偿不是玄学只是需要耐心和正确的工具。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询