两路开关电源并联均流:最大电流法与LM2576反馈注入实践
简介:这份文档是2011年全国电子设计大赛A题“开关电源模块并联供电系统”的参赛论文,面向准备电子设计竞赛、关注直流均流与并联供电方案的高校学生及指导教师。压缩包内仅含1个docx文件,约617KB,正文围绕MSP430单片机与LM2576电源芯片展开,完整收录题目要求、方案论证、均流方法比较、硬件电路与测试结果等内容。文中对主从法、平均电流自动均流法、热应力自动均流法和最大电流均流法进行了取舍分析,并给出输出电压UO=8.0±0.4V、IO=1.0A/1.5A/4.0A按比例自动分配、过流保护及自动恢复等指标的设计与调试思路。已有804人学习,适合需要参考赛题论文结构、均流控制策略和电源模块选型的读者。通过这份论文可快速了解从赛题指标拆解到方案落地、从理论比较到测试验证的完整脉络,为同类并联供电系统设计提供可借鉴的框架与参数依据。
1. 并联供电:为什么两路电压调成一样,电流还是会跑偏
把两台开关电源的输出端直接拧在一起,再把空载电压调到只差 30mV,很多人会以为电流自然就对半分了。实际带载到 4A 时,一路跑到 2.8A,另一路只剩 1.2A,差值超过一倍,模块温度在一个小时内拉开十几度。这个反直觉现象是并联供电系统最容易被忽略的地方:电压源并联,决定电流分配的不是电压设定值,而是两路的输出阻抗、采样增益和反馈环的离散性。均流环是一个独立于电压环的控制维度,它不解决“输出几伏”,只解决“这一路出多少安”。搞懂这件事,才能理解后面为什么要在 LM2576 的反馈节点上动刀子,为什么最大电流法能在四种方案里被选中。
2. 均流机制:最大电流法凭什么在四种方案里胜出
均流方法的选择,本质上是在选“故障时系统怎么活”。竞赛题要求两路模块在外接负载变化时自动分配电流,还要求 1:1、1:2 以及 0.5~2.0 范围内任意比例可调,相对误差压到 2% 以内。这个指标不算苛刻,但加上“负载短路保护及自动恢复”,方案就不能只看稳态精度,还要看单模块失效、母线异常、轻载这些边界场景。
2.1 主从法、平均电流法、热应力法的失效模式
主从法最简单:指定一路为主模块,工作在电压源模式,其余为从模块,工作在电流源模式,电流值由主模块或上位机给定。稳态精度可以做得很高,因为从模块的电流是直接设定的。问题在于“主”是硬指定,主模块一坏,整个系统失去电压参考,直接从模块也撑不住。题目虽然没明确要求冗余,但短路保护动作后要自动恢复,主从结构在恢复瞬间容易出现主模块还没建立、从模块已经满输出的倒挂。
平均电流法走的是另一条路:每个模块把自己的电流采样电压 Ui 通过一个电阻接到公共均流母线 CSB,母线电压 Ub 就是 N 个 Ui 的平均值。每个模块拿自己的 Ui 和 Ub 比较,误差放大器输出调节自己的输出电流,最终大家向平均值靠拢。它的精度取决于电阻匹配和母线噪声,理论上可以很准。致命伤在母线:CSB 一旦短路,Ub 被拉到零,所有模块都以为自己电流偏大,拼命下调输出电压,系统直接掉到下限;某个模块不工作时,它的 Ui 消失,母线平均值被剩下模块拉高,同样会引起集体误动作。这是一种共模故障,单点问题会放大成系统问题。
热应力法监测每个模块的温度,温度高的少出力,温度低的多出力。它的出发点不是电流精度,而是寿命均衡。温度传感器的时间常数通常是秒级,负载突变时根本来不及响应;再加上温度到电流的映射是非线性的,做 2% 的电流误差非常吃力。这种方法适合长期满载、负载变化缓慢的场合,不适合竞赛题里那种电子负载来回扫的场景。
| 均流方法 | 稳态精度 | 动态响应 | 单模块失效影响 | 实现复杂度 |
|---|---|---|---|---|
| 主从法 | 高 | 快 | 系统崩溃,无冗余 | 低 |
| 平均电流法 | 高 | 中 | 母线电压被拉偏,可能集体下调 | 中 |
| 热应力法 | 低 | 慢 | 影响较小 | 中 |
| 最大电流法 | 中高 | 快 | 自动由次大电流模块接管 | 中 |
这张表里,最大电流法的“单模块失效影响”一栏是它胜出的关键。它的母线电压不是平均值,而是最大值:谁输出电流最大,谁就把自己的 Ui 送上 CSB,Ub 等于当前最大电流对应的电压。从模块拿自己的 Ui 和 Ub 比,发现自己比最大值小,就调大输出电流,直到大家都顶到同一水平。主模块故障退出时,CSB 会自动落到剩下模块中的最大者身上,系统不需要切换逻辑,也不需要主从身份,冗余是结构自带的。
2.2 最大电流法的模拟原型:二极管最大值选择器与 CSB 母线
模拟实现的最大电流法,核心是一个二极管最大值选择电路。每个模块的电流采样电压 Ui 经过一只二极管接到 CSB,CSB 对地接一个下拉电阻。所有二极管阴极连在一起,阳极各自接 Ui,只有 Ui 最高的那一路二极管正向导通,其余反偏截止。于是 Ub ≈ Ui_max - Vd,Vd 是二极管正向压降,硅管大约 0.6~0.7V,肖特基管 0.3V 左右。
这个 Vd 就是模拟方案的原生误差。假设电流采样增益是 1V/A,0.6V 的压降相当于 0.6A 的固定偏差;如果增益只有 0.1V/A,偏差会放大到 6A,完全不可用。所以模拟最大电流法要么用运放加二极管构成“理想二极管”来消除 Vd,要么在误差放大器输入端做匹配补偿。前者增加电路复杂度,后者依赖器件一致性,批量生产时很头疼。
误差放大器的接法也有讲究。把 Ui 接同相端、Ub 接反相端,误差放大器输出上升时,模块的电压参考被调高,输出电流增大;当 Ui 追上 Ub,误差归零,模块稳定。输出电流最大的那个模块,Ui 略高于 Ub(因为它是母线来源),误差放大器输出饱和到下限,不再调节,相当于自动成为“主”。这正是最大电流法不需要指定主模块的原因:主是被母线电压动态选出来的。
CSB 上的下拉电阻和分布电容构成一个低通环节,决定了均流环的响应速度。电阻太小,母线驱动能力过强,模块之间的微小差异会被放大成振荡;电阻太大,母线建立时间变长,负载突变时均流环跟不上。常见的取法是让均流环的穿越频率比电压环低 5~10 倍,保证电压先稳、电流后调,否则两个环会互相打架。
2.3 数字版最大电流法:把比较器搬进单片机
本系统没有用模拟二极管母线,而是把最大值比较搬进了 MSP430。两路电流分别经过 INA270 高侧检测、ADS1232 采样,送进单片机,软件比较 I1 和 I2,取较大者作为“当前最大电流”,再按题目给定的比例算出两路的目标电流。这个做法保留了最大电流法的冗余特性:哪一路电流大,哪一路就是参考,另一路向它靠拢;同时避开了二极管压降,精度瓶颈从 Vd 转移到 ADC 的噪声和基准稳定性上。
数字实现的关键是“同步”。如果两路 ADC 不是同一时刻采样,动态过程中 I1 采的是旧值、I2 采的是新值,软件会误判谁是最大值,均流方向来回翻转,表现就是电流表指针左右摆。ADS1232 是双通道 ΔΣ ADC,内部有模拟开关切换,严格说不是同时采样,但它的输出速率可以压到 10SPS,配合软件在同一轮循环里连续读两个通道,对于负载阶跃在百毫秒级的场景足够用。真要做得更稳,可以在硬件上让两路 INA270 的输出分别进两路 ADC,或者用采样保持器对齐。
软件比较还有一个好处:比例可以任意改。题目要求 I1:I2 在 0.5~2.0 范围内按指定比例分配,模拟母线只能做到“向最大者看齐”,也就是隐式 1:1;要做 1:2,必须在从模块的误差放大器前面加一个分压网络,把 Ub 衰减后再比较,而这个衰减网络会引入新的误差。数字方案直接算目标值:已知总电流 IO 和比例 k,目标 I1 = IO × k1/(k1+k2),I2 = IO - I1,两个减法就完成了,比例系数存在单片机的参数区里,键盘改一下就行。
3. 闭环实现:ADS1232 采样、DAC7811 注入与 LM2576 的 FB 节点
均流算法再漂亮,最终要落到两个物理量上:一路是电流采样值,一路是 DAC 输出电压。前者决定单片机“看到”的电流准不准,后者决定单片机“指挥”电源改多少。这两条链路的增益、零点和噪声,直接决定 2% 的误差能不能守住。
3.1 高侧电流采样链路:INA270 与 ADS1232 的匹配
电流检测放在高侧,分流电阻串在电源输出和负载之间,优点是地线完整,不会因为分流电阻把地电位抬起而影响后级采样。INA270 的共模输入范围是 -16V 到 +80V,输出 8V 的电源系统完全覆盖。它的内部增益是 20V/V,分流电阻上的压降被放大 20 倍后送出。题目里的电流范围是 0.5~4.5A,如果分流电阻取 20mΩ,满量程压降 90mV,放大后 1.8V,正好落在 ADS1232 的输入范围内,也不会让分流电阻的功耗太大(4.5A 时 0.4W,需要选 1W 以上的合金电阻)。
这里有个容易被忽略的细节:INA270 的数据手册会给出输入失调电压,折算到分流电阻上就是几毫伏的零点误差。20mΩ 上 1mV 对应 50mA,两路各差 1mV,均流误差就是 100mA,在 1A 总电流下已经 10%,直接吃掉 2% 的指标。所以软件必须做零点校准:在继电器断开负载、两路都关断的时候,读一次 ADS1232 的原始码,存成 offset,之后每次采样都减掉。校准要在系统上电初始化时做一次,环境温度变化大时再补一次。
ADS1232 的基准用 MC1403,2.5V。它的 24 位分辨率听起来很奢侈,但 ΔΣ ADC 的有效位数受噪声限制,增益设为 1、输出速率 10SPS 时,有效位数大概 20 位左右,折算到 2.5V 满量程,最小分辨约 2.4μV。分流电阻 20mΩ、增益 20,对应电流分辨约 6μA,远远够用。真正限制精度的是基准温漂和 INA270 的增益误差,前者靠选低漂移基准,后者靠软件两点校准。
3.2 DAC 注入反馈节点:12 位分辨率怎么变成 2% 均流精度
LM2576 的反馈引脚 FB 在闭环时稳定在 1.23V,芯片内部把这个节点当成“虚短”点,外部只要用 R1、R2 分压,输出电压就是 Vout = 1.23 × (1 + R2/R1)。FB 引脚的输入电流是纳安级,正常分压计算可以认为它不吸电流。DAC7811 的作用,就是往这个节点注入一股可控电流,把分压比“带偏”。
具体接法是:DAC7811 输出 0~2.5V,经过 TL082 缓冲,再串一个电阻 R3 接到 FB 节点。FB 节点电压固定 1.23V,于是注入电流 Iinj = (Vdac - 1.23) / R3。这股电流要么流进 FB 节点、要么从节点抽走,等效于改变了上臂 R1 的电流。节点电流方程写出来:
(Vout - 1.23)/R1 + (Vdac - 1.23)/R3 = 1.23/R2整理得到:
Vout = 1.23 × (1 + R2/R1) - (Vdac - 1.23) × R2/R3Vdac 升高,Vout 下降;Vdac 降低,Vout 上升。R3 决定调节深度:R3 越小,同样的 DAC 电压变化能撬动更大的输出电压。假设 R1=10k、R2=5.5k,基准输出 8.0V;R3 取 100k,DAC 从 1.23V 变到 2.5V,注入电流 12.7μA,输出电压变化约 0.7V,覆盖 8.0±0.4V 绰绰有余。DAC 是 12 位,2.5V 基准下最小步进 0.61mV,折算到输出约 0.034mV,分辨率不是问题;问题是 DAC 的积分非线性(INL)和缓冲运放的失调,这些要靠软件闭环去吞掉。
注意:DAC 输出直接接 FB 节点会破坏反馈环的相位裕度,R3 和 FB 节点的寄生电容构成一个极点,取值太小可能引起开关波形抖动。常见的做法是 R3 取 50k~200k,并在 DAC 输出加一级 RC 低通,截止频率压在 1kHz 以下。
3.3 增量式调节流程与抗积分饱和
软件主循环按 100ms 一轮跑:读两路 ADS1232、减零点、滑动平均、比较大小、算目标电流、算误差、更新 DAC 码。用增量式 PI 而不是位置式,是为了避免上电瞬间积分项从零开始爬、输出长时间饱和。下面这段是核心调节逻辑的简化写法,寄存器名按 MSP430 风格,实际工程里还要加看门狗和超时保护。
#define I_TOTAL_TARGET 1000 /* 目标总电流,单位 mA */ #define RATIO_K1 1 /* I1 比例系数 */ #define RATIO_K2 1 /* I2 比例系数 */ #define KP_Q8 96 /* 比例系数,Q8 定点 */ #define KI_Q8 12 /* 积分系数,Q8 定点 */ static int32_t dac1_code = 2048, dac2_code = 2048; static int32_t err1_sum = 0, err2_sum = 0; void current_loop(int32_t i1_ma, int32_t i2_ma) { int32_t i_max = (i1_ma > i2_ma) ? i1_ma : i2_ma; int32_t i1_target, i2_target, err1, err2, delta1, delta2; /* 按比例分配目标电流,i_max 只用于判断哪一路是参考 */ i1_target = (int32_t)I_TOTAL_TARGET * RATIO_K1 / (RATIO_K1 + RATIO_K2); i2_target = (int32_t)I_TOTAL_TARGET - i1_target; err1 = i1_target - i1_ma; err2 = i2_target - i2_ma; /* 积分分离:误差大于 150mA 时不积分,防止饱和 */ if (err1 < 150 && err1 > -150) err1_sum += err1; if (err2 < 150 && err2 > -150) err2_sum += err2; /* 积分限幅,对应 DAC 码的调节余量 */ if (err1_sum > 8000) err1_sum = 8000; if (err1_sum < -8000) err1_sum = -8000; if (err2_sum > 8000) err2_sum = 8000; if (err2_sum < -8000) err2_sum = -8000; delta1 = (KP_Q8 * err1 + KI_Q8 * err1_sum) >> 8; delta2 = (KP_Q8 * err2 + KI_Q8 * err2_sum) >> 8; /* DAC 码限幅,防止把反馈节点拉出线性区 */ dac1_code += delta1; dac2_code += delta2; if (dac1_code > 3800) dac1_code = 3800; if (dac1_code < 300) dac1_code = 300; if (dac2_code > 3800) dac2_code = 3800; if (dac2_code < 300) dac2_code = 300; dac7811_write(DAC_CH1, (uint16_t)dac1_code); dac7811_write(DAC_CH2, (uint16_t)dac2_code); }i_max在这个版本里只用来判断参考方向,目标值由总电流和比例算出来,这样 1:1 和 1:2 共用一套代码,改RATIO_K1、RATIO_K2就行。KP_Q8和KI_Q8是定点系数,右移 8 位相当于除以 256,避免浮点运算拖慢 8MHz 的主循环。积分分离的阈值 150mA 是调试出来的:误差大的时候只靠比例项快速拉回,误差小的时候再让积分项磨掉静差。DAC 码限幅在 300~3800,对应 0.18~2.32V,留出上下各约 0.3V 的余量,防止 DAC 饱和后反馈环失去调节能力。
这段代码没有处理“两路采样不同步”的问题。如果 ADS1232 的通道切换延迟没算准,i1_ma和i2_ma可能来自不同时刻,比例分配就会抖。常见的补法是连续读三次取中值,或者在通道切换后加 50ms 延时再读,用时间换稳定。
4. LM2576 内部:52kHz 开关、1.23V 基准与效率账本
LM2576 是这套系统的执行器,它的内部结构决定了外部电路能怎么改。把它当成一个“黑盒降压模块”也能用,但要想让 DAC 注入不翻车、效率算得清、纹波压得住,得知道它内部那几个比较器和振荡器在干什么。
4.1 降压拓扑的占空比、电感与电容取值
LM2576 是固定频率降压型开关稳压器,内部振荡器 52kHz,开关管是 3A 的 NPN,外部需要续流二极管和电感电容构成 Buck 拓扑。开关导通时,输入通过电感向负载供电,电感电流线性上升;开关关断时,电感通过续流二极管续流,电流线性下降。稳态下电感电流的上升量等于下降量,占空比 D ≈ Vout / Vin。输入 23.7V、输出 8V 时,D ≈ 0.34,开关管 34% 的时间导通。
电感取值决定电流纹波。公式是 L = (Vin - Vout) × D / (ΔI × f),ΔI 一般取输出电流的 20%~40%。以 2A 输出、ΔI 取 0.6A 为例,L = (23.7 - 8) × 0.34 / (0.6 × 52000) ≈ 171μH,取标准值 150μH 或 220μH。电感额定电流要大于输出电流加上一半纹波,2A 输出至少选 3A 以上的功率电感,饱和电流不够会导致电感量骤降、电流尖峰直接把开关管顶到限流。
输出电容看的是 ESR,不是容量。纹波电压近似等于 ΔI × ESR,ESR 从 100mΩ 降到 20mΩ,纹波直接缩水五倍。常见的做法是电解电容并联陶瓷电容,电解负责储能,陶瓷负责高频旁路。PCB 上电容要贴近 LM2576 的 1 脚和 3 脚,续流二极管要贴近 2 脚和地,这个环路的面积越小,辐射和振铃越轻。原文里提到“电容 C1 贴近 1、3 管脚,稳压管贴近管脚 2”,说的就是这件事,只是表述上把续流二极管叫成了稳压管。
4.2 FB 引脚 1.23V 虚短与 R1/R2 的传递函数
LM2576-ADJ 的输出电压由 FB 引脚的分压网络设定。芯片内部有一个 1.23V 的带隙基准和一个误差放大器,误差放大器把 FB 电压和 1.23V 比较,输出控制 PWM 的占空比。闭环稳定后,FB 被强行拉到 1.23V,这就是“虚短”的由来。FB 引脚的输入偏置电流很小,手册上给的是纳安级,所以分压公式可以按理想情况算:
Vout = 1.23 × (1 + R2 / R1)要输出 8.0V,R2/R1 = 5.5。R1 取 10k,R2 取 55k,或者 R1 取 1k,R2 取 5.5k。R1 太小会白白消耗电流,1k 时约 1.23mA,对效率有一点影响;R1 太大又容易受 FB 引脚漏电流和噪声干扰,10k 左右是比较稳的选择。R2 用 1% 精度的金属膜电阻,温度系数控制在 100ppm/℃ 以内,否则环境温度一变,输出电压就漂出 ±0.4V 的窗口。
把 DAC 注入考虑进来之后,传递函数变成前面 3.2 节那个式子。R3 的取值要同时满足两个约束:调节深度够(能覆盖 ±0.4V 的输出范围)和分辨率够(DAC 一个码对应的输出电压变化小于 1mV)。R3=100k 时,DAC 满摆幅 1.27V 对应输出变化约 0.7V,12 位分辨率对应 0.17mV,两个约束都满足。R3 再小,调节深度变大但分辨率变粗,而且注入电流过大会让 FB 节点的寄生电容更容易起振;R3 再大,调节深度不够,DAC 打到满码也拉不回 8V。
| 参数 | 取值 | 作用 |
|---|---|---|
| R1 | 10kΩ | 分压下臂,决定基准电流 |
| R2 | 55kΩ | 分压上臂,设定 8.0V 输出 |
| R3 | 100kΩ | DAC 注入电阻,决定调节深度 |
| C1 | 100μF 电解 + 10μF 陶瓷 | 输出储能与高频旁路 |
| L1 | 150μH / 3A | 储能电感,纹波约 0.6A |
| D1 | 肖特基 3A/40V | 续流,降低反向恢复损耗 |
4.3 效率分解:开关损耗、续流损耗与线性稳压的对比
题目要求额定输出功率下效率不低于 60%,这个指标对开关电源来说不算高,但对线性稳压来说是天堑。输入 23.7V、输出 8V、电流 2A,线性稳压的损耗是 (23.7 - 8) × 2 = 31.4W,输出 16W,效率只有 33.8%,而且 31.4W 全变成热,散热片小一点就热保护。LM2576 是开关型,损耗分成几块:开关管导通损耗、开关损耗、续流二极管损耗、电感铜损和驱动损耗。导通损耗是 Iout² × Rds(on) × D,开关损耗和频率成正比,52kHz 下每个周期切换一次,开关损耗大约占总损耗的 20%~30%,续流二极管用肖特基比用普通整流管少掉 0.3V 左右的正向压降,2A 下就是 0.6W 的差别。
把原文的三组测试数据按输入功率和输出功率重算,得到下面这张表。原文的效率列和功率列有轻微对不上,这里以电压电流乘积为准,能看趋势就够了。
| 负载 | 输入电压/电流 | 输出电压/电流 | 输入功率 | 输出功率 | 效率 |
|---|---|---|---|---|---|
| 10Ω | 23.7V / 0.32A | 8.2V / 0.82A | 7.58W | 6.72W | 88.6% |
| 5Ω | 23.7V / 0.63A | 8.03V / 1.6A | 14.93W | 12.85W | 86.1% |
| 3Ω | 23.7V / 0.96A | 7.99V / 2.4A | 22.75W | 19.18W | 84.3% |
负载越重,效率越低,原因是导通损耗和电感铜损都随电流平方增长。84%~88% 的区间,对于一颗 52kHz 的老式降压芯片来说是正常水平。想再往上提,换同步整流的芯片能把续流二极管那 0.4~0.6V 的压降省掉,效率能到 92% 以上,但同步整流芯片的成本和外围复杂度也上去了。竞赛题里效率只要求 60%,LM2576 的余量足够,选它更多是看中 3A 输出、外围器件少、内部限流和热关断齐全,调试时不容易炸管。
5. 避坑与排查:五条从调试现场带回来的记录
5.1 1:2 均流比例调不准,电流来回跳
现象:键盘设成 I1:I2=1:2,总电流 1.5A,理论上应该是 0.5A 和 1.0A,实际读出来在 0.65A/0.85A 附近来回摆,比例怎么调都稳不住。
原因:两路电流环的增益不一致。INA270 的增益误差、分流电阻的阻值偏差、ADS1232 两个通道的增益误差叠在一起,同样的 DAC 码在两路产生的电流不一样。比例项系数按同一套参数写死,一路调得快、一路调得慢,就会出现“快的先到位、慢的还在爬”,快到位的被目标值拉回,慢的又冲过头,形成低频振荡。
解决:先做单路标定。断开另一路,让 DAC 码从 300 扫到 3800,每隔 200 码记录一次实际电流,拟合出每路的“码-电流”直线,把斜率和截距存进参数区。均流环启动时用标定值算初值,再让 PI 去修残差。比例系数也分开给,增益大的那路 KP 小一点,增益小的那路 KP 大一点。改完之后,1:2 的误差能压到 3% 以内,再配合积分项磨一磨,进 2% 不难。
5.2 采样显示值与万用表对不上
现象:液晶显示 1.02A,串联的万用表读 0.95A,差了 70mA,换一块表差得更多。
原因:分流电阻的接法不是开尔文接法。20mΩ 的电阻,焊盘和走线各贡献几毫欧,电流流过时这些寄生电阻上的压降也被 INA270 采进去,读数自然偏大。另一个来源是地线:ADS1232 的模拟地和功率地共用一段走线,2A 电流在地线上产生几毫伏压降,折算到采样通道就是几十毫安的误差。
解决:分流电阻用四线开尔文焊盘,电压采样点从电阻体的两端引出,不走大电流路径。模拟地和功率地在电源入口处单点连接,ADS1232 的 AGND 只连模拟地。软件上做零点校准,关断时读一次 offset,运行中每 10 分钟在轻载点再校一次。校准之后,显示值和万用表的差值能压到 20mA 以内,相对 1A 是 2%,刚好卡在指标线上。
5.3 短路保护误触发,或者触发后不恢复
现象:负载电流刚到 4.2A,保护就动作了,题目允许的阈值是 4.5A±0.2A;另一种情况是短路移除后,输出一直关着,必须断电重启。
原因:保护判断用的是单次采样值,开关电源的电流纹波叠加在平均电流上,4.2A 的平均电流加上 0.4A 的纹波峰值就到 4.6A,单次采样正好撞上峰值。不恢复是因为关断后没有重试逻辑,ON/OFF 引脚拉低之后就停在那里,软件没有延时重启的状态机。
解决:保护判断改成连续 N 次采样超阈值才动作,N 取 5~10,按 100ms 一轮算,相当于确认 0.5~1 秒,躲开负载突变的尖峰。动作后拉低 ON/OFF,延时 300ms 让输出电容放电,再拉高重启,重启时 DAC 码从低往上爬,做软启动,爬升时间 200ms。如果重启后 1 秒内又超阈值,就再关断,形成打嗝模式。这样短路移除后系统能自己恢复,也不会在持续短路时反复大电流冲击。
5.4 两路并联后一路几乎不出力
现象:两路单独调都是 8.0V,并联带 3A 负载,一路 2.7A、一路 0.3A,低压那路的电感几乎不发热。
原因:两路的电压环在“抢主导”。输出高的那路把母线电压顶住,输出低的那路发现自己反馈电压高于 1.23V,误差放大器拼命降低占空比,直到输出电流掉到接近零。均流环如果比电压环慢太多,还没来得及把电流拉平,电压环已经把工作点锁死了。
解决:均流环的带宽必须低于电压环,但不能低太多,常见的比例是 1/5 到 1/10。具体到这套系统,电压环的穿越频率在 LM2576 内部已经定死(52kHz 开关频率下大概几 kHz),均流环的调节周期取 100ms,相当于 10Hz 左右,比例合适。另一个办法是给每路加一点下垂(droop),输出电流越大,电压参考略降,两路自然分配负载,但下垂会牺牲负载调整率,题目要求 8.0±0.4V,下垂量要算着给,不能超过 0.2V。
5.5 纹波超标、效率卡在 80% 以下
现象:输出 8V/2A 时,示波器上看纹波 150mV 峰峰值,电感发烫,效率只有 80%。
原因:输出电容的 ESR 太大,电解电容老化或者用了低成本的普通品;续流二极管用成了普通整流管,反向恢复时间长,开关瞬间产生尖峰;电感饱和,电流波形出现尖顶,有效值变大,铜损增加。
解决:输出电容换成低 ESR 的电解并联 10μF 陶瓷,纹波能压到 50mV 以内。续流二极管换肖特基 3A/40V,反向恢复时间从几百纳秒降到几十纳秒,开关尖峰明显减小。电感选饱和电流 5A 以上的型号,绕线用多股线降低集肤效应。PCB 上把输入电容、开关管、续流二极管构成的功率环路面积压到最小,反馈走线远离电感,这几条做完,效率能回到 85% 左右。
6. 设计取舍:均流环带宽、保护阈值与验证方法
这套系统里最值得回味的取舍,是“数字均流”和“模拟均流”的分界线。模拟最大电流法用一只二极管和一条母线就能实现冗余,响应是微秒级,但二极管压降和母线噪声把精度锁在 5% 左右;数字方案把比较搬进单片机,精度能做到 2%,代价是采样延迟和软件复杂度。选数字不是因为它更先进,而是题目要求 0.5~2.0 的任意比例,模拟母线做比例分配要加衰减网络,每改一次比例就得动硬件,数字方案改两个系数就行。这是一种“用软件换灵活性”的典型取舍。
保护阈值的设定也是同理。题目给的是 4.5A±0.2A,额定最大电流 4.0A,中间只有 0.5A 的余量。阈值设高了,短路时电流冲到 5A 才动作,LM2576 的内部限流可能先触发,表现为输出电压塌陷而不是干净关断;阈值设低了,4.0A 满载时的纹波峰值就可能误触发。最后的做法是硬件比较器做快速粗保护(5A 关断),软件做 4.5A 的精确保护,两级配合,既不让尖峰漏过去,也不让正常负载误动作。
验证均流精度不能只看一个点。我的习惯是用电子负载从 1.5A 扫到 3.5A,每 0.25A 停 30 秒,记录两路电流和总电流,算每路的相对误差,画成曲线。1:1 和 1:2 各扫一遍,再看 0.5~2.0 比例范围内取 5 个点做抽查。只看额定点会漏掉轻载时采样噪声占比大、均流环增益不足的问题,而轻载恰恰是最大电流法最容易翻车的地方。
| 对比项 | 模拟最大电流法 | 数字最大电流法 |
|---|---|---|
| 均流精度 | 5% 左右,受二极管压降限制 | 2% 左右,受 ADC 噪声限制 |
| 比例可调 | 需改硬件衰减网络 | 改系数即可 |
| 动态响应 | 微秒级 | 百毫秒级 |
| 冗余能力 | 二极管母线自动接管 | 软件比较自动接管 |
| 调试难度 | 模拟参数试凑 | 可在线看采样值 |
从那以后我每次做并联电源,都强制先跑一遍“单路标定 + 阶梯扫描”,不看到两路误差曲线落在 2% 以内,绝不往下调均流环参数。这个习惯救过我好几次,也让我明白均流不是调出来的,是标定出来的。希望帮到你。
本文还有配套的精品资源,点击获取