1. 电流采样基础:采样电阻选型、共模电压与差模电压、采样精度与分辨率

电流采样,说白了就是要把流过负载的电流,转成咱们MCU能读懂的电压信号。这一步要是没做好,后面滤波算得再漂亮也是白搭。我刚开始做电源项目那会儿,就吃过采样电阻选型的亏,今天咱们把这几个基础点掰开揉碎了讲清楚。

1.1 采样电阻选型——别小看这颗小电阻

采样电阻,也叫检流电阻(shunt resistor)。它的核心任务就是:把电流 I 变成电压 V = I × R。选型时我主要看四个参数:

  • 阻值 R:决定了压降大小。阻值越大,信号越强,但功耗也大。
  • 额定功率 P:P = I² × R,别让电阻烧了。
  • 精度与温漂:1% 还是 0.1%?50ppm/°C 还是 10ppm/°C?
  • 电感量:高频采样时,寄生电感会搞事情。
我的习惯:先算最大电流下的压降,控制在 50mV~200mV 之间。压降太小,信噪比差;压降太大,功耗和散热吃不消。比如 5A 电流,选 10mΩ 电阻,压降 50mV,功耗 0.25W——嗯,这个量级比较舒服。

我在一个电机驱动项目里遇到过:用了普通贴片电阻做采样,结果波形上全是毛刺。后来换成四端开尔文连接的精密电阻,毛刺直接消失。你想想看,电流路径上的寄生电感,在高频 PWM 下就是个小天线。

参数 推荐范围 我的避坑建议
阻值 1mΩ ~ 100mΩ 根据最大电流算压降,别超过 200mV
额定功率 实际功耗 × 2 以上 留余量,散热不好的地方 ×3
精度 0.1% ~ 1% 普通检测 1% 够用,高精度选 0.1%
温漂 ≤ 50ppm/°C 宽温环境必须 ≤ 25ppm/°C
封装 2512 / 1206 / 0805 大电流用 2512 或四端封装
我曾经踩过的坑:用普通 0805 电阻做 3A 采样,焊盘散热不足,电阻发热后阻值漂了 5%,电流检测直接偏了。后来换成 2512 封装 + 四端开尔文连接,问题解决。记住:采样电阻的焊盘散热设计,直接影响精度。

1.2 共模电压与差模电压——搞混了会出大事

这两个概念,我见过不少工程师搞混。咱们用最简单的方式理解:

  • 差模电压 Vdiff:采样电阻两端的电压差,就是 V+ - V-。这个才是我们想要的信号。
  • 共模电压 Vcm:采样电阻两端电压的平均值,就是 (V+ + V-) / 2。这个是我们不想要的干扰。

举个例子:高端电流采样,负载电压 12V,采样电阻压降 100mV。那么 V+ = 12V,V- = 11.9V。差模电压 = 100mV,共模电压 = 11.95V。你看,共模电压比差模大了 100 多倍!

核心要点:运放的共模抑制比(CMRR)决定了它能从多大共模电压里,准确提取出差模信号。CMRR 越高,越能抑制共模干扰。我一般选 CMRR ≥ 80dB 的运放做电流采样。

为什么会这样?因为实际电路中,共模电压会随着负载波动、电源纹波、地弹噪声而变化。如果运放的 CMRR 不够,这些共模变化就会耦合到输出端,变成测量误差。

我建议:低端采样(电阻在负载和地之间),共模电压接近 0V,运放要求低。高端采样(电阻在电源和负载之间),共模电压高,必须用高 CMRR 的差分运放或专用电流检测放大器。

采样方式 共模电压 推荐方案 注意事项
低端采样 接近 0V 普通运放 + 同相放大 注意地回路干扰,别让大电流走信号地
高端采样 电源电压附近 差分运放 / 专用电流检测 IC CMRR 要够高,输入共模范围要覆盖

1.3 采样精度与分辨率——别把概念搞混了

这两个词经常被混用,但它们是两码事。我简单解释一下:

  • 分辨率:ADC 能分辨的最小电压变化。12 位 ADC,参考电压 3.3V,分辨率 = 3.3V / 4096 ≈ 0.8mV。
  • 精度:实际测量值与真实值的偏差。受 ADC 的 INL、DNL、失调、增益误差、温漂、噪声等影响。

说白了:分辨率是 ADC 的「眼力」,精度是 ADC 的「准头」。眼力好不一定准头好。我见过有人用 16 位 ADC 做采样,结果精度还不如 12 位——因为前端噪声太大,低几位全是无效跳动。

我的经验:有效位数(ENOB)才是真正能用的分辨率。比如 16 位 ADC,如果噪声太大,ENOB 可能只有 12 位。选 ADC 时别只看标称位数,要看数据手册里的 ENOB 曲线。

精度怎么算?举个例子:采样电阻 10mΩ,最大电流 5A,压降 50mV。用 12 位 ADC,参考 3.3V,分辨率对应电流 = 3.3V / 4096 / 0.01Ω ≈ 80mA。如果 ADC 的 INL 误差 ±2LSB,那精度就是 ±160mA。再加上电阻温漂、运放失调……嗯,实际精度可能只有 ±300mA。

参数 计算公式 示例(12位ADC,3.3V参考)
分辨率 Vref / 2N 3.3V / 4096 ≈ 0.8mV
电流分辨率 分辨率 / Rshunt 0.8mV / 10mΩ = 80mA
理论精度 ±(INL + 失调 + 噪声 + 温漂) ±2LSB ≈ ±160mA
实际可用精度 考虑所有误差源 ±300mA 左右
注意:不要为了追求高分辨率而忽略精度。16 位 ADC 配一个噪声很大的前端,结果可能比 12 位还差。我习惯先算好整个链路的噪声预算,再反推需要的 ADC 位数。

1.4 知识体系总览

下面这张图,把咱们这一章的核心逻辑串起来了。从采样电阻开始,到共模/差模的理解,再到精度与分辨率的权衡——每一步都影响最终采样质量。

电流采样基础 · 知识体系 采样电阻选型 阻值 / 功率 精度 / 温漂 封装 / 电感量 共模电压 Vcm 差模电压 Vdiff CMRR 是关键 分辨率 vs 精度 ENOB 有效位数 噪声预算分析 低端采样 共模≈0V,普通运放 高端采样 共模高,需差分运放 专用电流检测 IC 集成度高,省心 设计要点总结 ① 采样电阻压降控制在 50~200mV ② 共模电压决定运放选型,CMRR 是关键指标 ③ 别迷信 ADC 位数,ENOB 和噪声预算才是真功夫

这张图把咱们这一章的核心逻辑串起来了。从采样电阻开始,到共模/差模的理解,再到精度与分辨率的权衡——每一步都影响最终采样质量。我个人习惯在项目开始时,先画一张类似的链路图,把每个环节的误差预算标上去,这样后面设计起来心里有底。