求助-11年电赛,开关电源并联供电系统

求助 :distorted_face:——开关电源并联供电

简介

复刻立创开源平台zeruns博主的项目 DCDC开关电源并联均流输出8V( 2011电赛电源题) - 立创开源硬件平台
我更换了主控芯片STM32F103CBT6,原项目采用国产AIR32F103CCT6,代码方面删减了U8g2的字库,其他没改。


测试方法和数据

左下角输入端24V输入,右下角输出端串联万用表和负载,用另一台万用表测量输出。
输出直流电压8V,电流2只有0.2A.
采样电阻两端电压0.2mV,INA199A1理论增益50倍,但是测试下来在2到200倍之间随机变化

疑问点

1、INA199A1反馈系数不对,已经排除虚焊和型号不对的问题(我手里也没有多的,过两天换两块再测试一下)。
2、OLED显示的数据不对,电流2还接近,电流1简直离谱,而且在OFF状态下还有1A左右的总电流,电压为0,我不理解,采样电阻没有用开尔文画法,不知道是不是因为这个误差。
3、想知道这个方案的可行性,需不需要换方案。如果能行,该怎么调出来。

这个项目已经很久了,早就忘了,而且也不太完善,建议参考着自己优化修改一下

当时这方案能用吗

我都用这方案通过校赛了,你说能用吗

了解了,感谢博主

老哥你好,复刻电赛经典的电源题遇到这种“玄学”问题太正常了,这道题可是当年折磨了不少人的“大坑”。搞开关电源的模拟部分,尤其是并联均流,布局走线和干扰往往比原理图本身更致命。

结合你提供的原理图、现象以及替换主控的情况,我帮你逐一盘一盘,希望能帮你理清思路:

1. 关于 INA199A1 放大倍数“随机变化”和 0.2mV 的疑问

你提到:电流 0.2A,采样电阻两端 0.2mV,放大倍数乱飘。
这里有一个很明显的欧姆定律冲突:
原理图上 R3、R12 采样电阻是 20mΩ (0.02Ω)。如果你实际电流是 0.2A,那么电阻两端的压降应该是:0.2A * 0.02Ω = 0.004V (即 4mV)
你用万用表只测到了 0.2mV,这说明以下几种可能:

  • 万用表被高频开关噪声干扰了: XL4015 的开关频率在 180kHz 左右,输出纹波很大。INA199 输入端(R1/R2/C1)的那个低通滤波器截止频率太高了(算下来在兆赫兹级别),根本滤不掉 180kHz 的开关噪声。万用表测带有极高交流纹波的直流微小电压时,读数是不可信的。
  • 电流并没有完全流过采样电阻: 检查一下是不是铺铜或者走线导致电流旁路了。

放大倍数为什么乱飘? 这几乎可以肯定是开关噪声耦合 + 接地不良引起的。万用表看到的“输出电压”其实是叠加了巨大开关毛刺的信号,你用一个不准的输出除以一个不准的输入,算出来的增益当然是 2~200 之间乱跳。建议:借个示波器看看 INA199 的输出引脚,你大概率会看到一片全是毛刺的波形,而不是平滑的直流。

2. 关于 OLED 显示数据离谱、OFF状态下还有 1A 电流

  • 没有用开尔文接法的致命伤: 你的采样电阻是 20mΩ。PCB 上 1 盎司的铜箔,几毫米的走线电阻可能就有几个毫欧!如果没有用开尔文接线法(即从采样电阻的焊盘内侧单独引出两条细线到 INA199,不走大电流),大电流在焊锡和走线上的压降会被一起放大,这就导致了你说的“电流 1 简直离谱”。
  • OFF 状态下有 1A 的“幽灵电流”: * 运放的零点偏置: INA199 的 REF 脚是接地的,单电源供电下,运放输出不可能做到绝对的 0V(通常有几十毫伏的下限)。比如输出卡在 50mV,ADC 读到后除以 50 倍增益,再除以 20mΩ,系统就会误以为有 50mA 的底电流。
    • 地线电平反弹(Ground Bounce): 在你关断某一路输出(或者空载)时,AGND 和 PGND(功率地)之间的电位差如果没有处理好,地线上几毫伏的电位差对 INA199 来说就会被放大。
    • STM32 与 Air32 的 ADC 差异: 虽然你改了主控,但两者的 ADC 内部参考电压精度、输入阻抗以及默认配置可能有微小差别。原作者的代码里可能有针对他那块板子底噪的“软件清零”或校准系数,换了 MCU 后,ADC 读到的本底噪声变了,直接被代码换算成了 1A。

3. 这个方案可行吗?该怎么调?

结论是:方案绝对可行,这也是当年电赛的经典解法(恒压源作主,恒流源作从,误差放大器调节)。但极其吃 PCB 布局(Layout)。

既然板子已经做出来了,给你提供一套 “控制变量法” 的硬件调试步骤,别急着改代码,先确认硬件模拟链路是好的:

  1. 静态注入测试(排除开关噪声干扰):
    把板子断电。找一个外部稳压电源,设定在恒流模式(比如输出固定的 1A 电流),直接把这 1A 电流强行灌入你的采样电阻 R3
    然后给 INA199 和 MCU 单独供 3.3V/5V。用万用表测量 INA199 的输出脚。如果这时候输出是稳定的 1A \times 0.02\Omega \times 50 = 1V,说明 INA199 没坏,型号没搞错,且纯直流下工作完美。那问题100%出在开关电源的纹波和布局上。
  2. 飞线改造“伪开尔文接法”:
    既然 PCB 没画开尔文,那就动手“割板子”。把 INA199 的 IN+ 和 IN- 连到大电流铺铜的走线割断,用两根极细的漆包线,直接飞线焊在 20mΩ 采样电阻的金属本体根部。这能极大改善电流测量偏大的问题。
  3. 软件消抖与校准(针对 STM32):
    • 在代码里把 ADC 的采样周期拉长。
    • 做一个开机校准: 在确保负载断开(OFF状态)时,读取此时的 ADC 值作为 Offset(零点偏移)。后续所有的电流计算公式改为:Actual_Current = (ADC_Read - Offset) * 系数。这能直接杀掉你那个“OFF下还有1A”的幽灵电流。
  4. 检查地线(GND):
    原理图里有 AGND 和 GND。这两个地是在哪里交汇的?如果是随意乱连的,大电流回流会干扰模拟地。正确做法是单点接地(在 XL4015 的输入电容负极附近单点连接)。

下一步建议:
如果你手头没有示波器,强烈建议先做上面的第 1 步和第 3 步(特别是软件写一个开机去底噪的校准逻辑)。老哥你先按照第一步的“静态注入法”测一下 INA199,看看纯直流下增益对不对,测试完了我们可以接着排查。

感谢大哥,周末实验室不开放,等下周一我按照你的建议排查一下