3. 电流采样电路设计:霍尔传感器选型、采样电阻计算、信号调理电路

各位同学,咱们今天聊点实在的。过流保护能不能做好,一半的功夫在采样电路上。你想想看,如果采回来的电流信号本身就是歪的,那后面C2000里的算法再牛,也是白搭。

我刚开始做电机驱动那会儿,就吃过这个亏。采样电阻选小了,信号噪声大得离谱;选大了,发热又扛不住。后来才慢慢摸清楚这里面的门道。今天我把这些经验掰开了讲给你听。

核心思路:电流采样电路的目标,就是把母线或相线上的大电流,精确、安全、低延迟地转换成C2000的ADC能接受的0~3.3V电压信号。

3.1 霍尔传感器选型:隔离与非隔离的抉择

先说传感器。你可能会问:为什么非要用霍尔?直接用采样电阻不行吗?

行,当然行。但有个前提——你的系统是否需要隔离。如果母线电压高(比如超过60V),或者你希望强弱电彻底分开,那霍尔电流传感器就是首选。

我个人的习惯是:高压场合(DC 300V以上)必用霍尔,低压场合(48V以下)才考虑直接电阻采样。为什么?安全第一,调试的时候少烧几块板子比什么都强。

选型时,我主要看这几个参数:

  • 额定电流(IPN):选电机额定电流的1.5~2倍。比如电机额定10A,就选15A或20A的传感器。
  • 响应时间(tr):一般要求< 5μs。过流保护需要在几个微秒内做出反应,太慢的传感器会耽误事。
  • 线性度:最好在0.1%以内。非线性会直接导致保护阈值不准。
  • 带宽:至少200kHz以上,否则高频电流分量会被滤掉。
参数 推荐值 我的经验
额定电流 1.5~2倍电机额定电流 选小了容易饱和,选大了分辨率不够
响应时间 < 5μs 我一般选2~3μs的型号,留点余量
线性度 < 0.1% 0.5%的也能用,但保护精度会差一些
带宽 > 200kHz 做FOC控制时,带宽低了相电流会失真

一个小技巧:选型时多看看传感器的输出类型。有的输出是电压(如ACS712),有的是电流(如LEM的LA系列)。电压输出型用起来方便,直接进ADC;电流输出型需要外接采样电阻,但抗干扰能力更强。

3.2 采样电阻计算:精度与功耗的平衡

如果你决定用电阻采样(低压场合),那采样电阻的计算就是关键。说白了,就是要在信号幅度和电阻功耗之间找个平衡点。

我记得有一次,一个同事为了追求大信号,用了0.1Ω的采样电阻。结果10A电流下,电阻功耗是10A² × 0.1Ω = 10W!那电阻烫得能煎鸡蛋。后来他换成了1mΩ,功耗降到0.1W,但信号也小了很多,需要加一级运放放大。

所以,我的计算步骤是这样的:

  1. 确定最大采样电流:Imax = 电机峰值电流 × 1.2(安全余量)
  2. 确定ADC满量程电压:C2000的ADC是3.3V,但为了留余量,我一般只用到3.0V。
  3. 计算采样电阻:Rsense = Vadc_max / Imax
  4. 验算功耗:P = Imax² × Rsense,确保小于电阻额定功率的80%。
// 举个例子:电机峰值电流20A,ADC用3.0V满量程
// R_sense = 3.0V / 20A = 0.15Ω
// 功耗 P = 20² × 0.15 = 60W —— 这显然不行!

// 所以实际做法是:先选小电阻,再用运放放大
// 选 R_sense = 0.005Ω (5mΩ)
// 最大信号电压 = 20A × 0.005Ω = 0.1V
// 运放增益 = 3.0V / 0.1V = 30倍
// 功耗 P = 20² × 0.005 = 2W —— 选个3W的电阻就稳了

注意:采样电阻一定要用四端开尔文接法(Kelvin connection)。我见过太多人直接把电阻焊在PCB上,结果走线电阻比采样电阻还大,测出来的电流全是错的。四端接法能消除焊盘和走线电阻的影响,精度完全不一样。

3.3 信号调理电路:运放与滤波器

信号调理,说白了就是把传感器出来的小信号,整成C2000 ADC喜欢的样子。这里有两个关键点:放大和滤波。

3.3.1 运放选型与电路设计

运放这块,我踩过的坑不少。最典型的就是:用了普通运放,结果带宽不够,高频电流信号全衰减了。

做电机控制,尤其是FOC,相电流里有很多高频分量。如果运放的增益带宽积(GBP)不够,信号就会失真。我一般要求:

  • GBP > 10MHz:对于20kHz的PWM开关频率,10MHz的GBP能保证100倍增益下还有100kHz带宽。
  • 轨到轨输出:C2000的ADC输入范围是0~3.3V,运放必须能输出接近0V和3.3V。
  • 低失调电压:最好< 1mV,否则零点偏移会累积成很大的电流误差。

我个人常用的运放型号:OPA4376(四通道,GBP=5.5MHz,轨到轨)或TLV2374(功耗更低)。

电路结构上,我推荐差分放大。为什么?因为采样电阻两端的共模电压可能很高(尤其是高端采样),差分结构能有效抑制共模干扰。

// 差分放大电路增益计算
// Vout = (V+ - V-) × (Rf / Rin)
// 假设 Rf = 30kΩ, Rin = 1kΩ
// 增益 = 30倍
// 如果采样电阻信号是 ±0.1V,输出就是 ±3.0V
// 但ADC只能接受0~3.3V,所以需要加一个1.65V的偏置电压

3.3.2 滤波器设计:抗混叠与噪声抑制

滤波器这块,我的原则是:能少用就少用,但该用的时候别省。

为什么?因为滤波器会引入相位延迟。在过流保护中,延迟意味着反应慢,可能烧管子。但在ADC采样前,又必须加一个抗混叠滤波器,否则高频噪声会折叠到低频段,造成误触发。

我的做法是:

  • 一阶RC低通滤波器:放在运放输出和ADC输入之间。截止频率 fc = 1 / (2πRC)。
  • 截止频率选择:一般设为PWM开关频率的1/10。比如20kHz PWM,就设2kHz。
  • R和C的选择:R取1kΩ~10kΩ,C根据公式计算。R太大,ADC的采样保持电容充电会变慢;R太小,滤波效果不够。
// 一阶RC滤波器计算示例
// 目标截止频率:2kHz
// 选 R = 1kΩ
// C = 1 / (2π × 1kΩ × 2kHz) ≈ 79.6nF
// 取标称值 82nF
// 实际截止频率 f_c = 1 / (2π × 1kΩ × 82nF) ≈ 1.94kHz —— 可以接受

我的经验:如果系统对延迟特别敏感(比如过流保护需要在1μs内响应),可以考虑在C2000内部做数字滤波。C2000的ADC模块自带数字比较器,可以直接比较原始采样值,绕过滤波器延迟。我一般会同时保留硬件滤波(抗混叠)和软件滤波(去毛刺),两者配合使用。

3.4 差分信号 vs 单端信号:怎么选?

这个问题,很多初学者会纠结。我直接说结论:

  • 单端信号:简单、省成本、占用的ADC通道少。适合低噪声环境、短距离传输。
  • 差分信号:抗共模干扰能力强、精度高。适合长距离传输、高噪声环境(比如变频器旁边)。

在电机控制中,我的选择标准是:

场景 推荐方式 原因
低压电机(< 48V) 单端 噪声小,成本低,PCB走线短
高压电机(> 220V) 差分 共模电压高,差分能有效抑制
传感器远离控制板 差分 长线传输抗干扰能力强
C2000内部ADC 单端 C2000的ADC是单端输入,差分信号需要先转单端

你可能会问:差分信号怎么进C2000的ADC?答案是:用差分转单端电路。其实就是前面说的差分放大器,把差分信号转换成对地的单端信号,再送给ADC。

避坑指南:我曾经在一个项目里,直接把差分信号的正端接ADC,负端接地。结果共模电压直接把ADC烧了。记住:差分信号不能直接接单端ADC,必须经过转换!

3.5 整体电路结构图

说了这么多,咱们用一张图把整个采样链路串起来。下面这张SVG图,展示了一个典型的电流采样电路结构:从霍尔传感器到C2000 ADC的完整信号链。

电流采样电路整体结构图 电流采样电路整体结构 霍尔电流传感器 ACS712 / LA55-P 采样电阻 5mΩ / 四端接法 差分放大器 增益30倍 / OPA4376 低通滤波器 1阶RC / 2kHz 电平偏移 +1.65V 偏置 C2000 ADC 0~3.3V / 12bit 关键说明 1. 霍尔输出为电压信号 2. 采样电阻用四端接法 3. 差分放大抑制共模 4. 滤波器截止频率2kHz 5. 电平偏移至1.65V中心 6. ADC采样范围0~3.3V 7. 整体延迟< 5μs

从这张图可以看得很清楚:信号从霍尔传感器出来,经过采样电阻、差分放大器、低通滤波器、电平偏移,最后进入C2000的ADC。每一步都有它的作用,缺一不可。