3. 过流现象与危害
采样电阻把电流变成了毫伏级的电压信号,但MCU的ADC可没法直接吃这种小信号。中间这层“翻译”工作,就是信号调理电路要干的活。说白了,就是把微弱的差分信号放大、滤除高频噪声、再抬到ADC能采样的电压范围内。
这一节我带你把这四个环节拆开揉碎了讲:运放怎么选、差分放大怎么搭、低通滤波器截止频率定多少、偏置电压怎么加才不引入误差。每个点我都会结合自己踩过的坑来说。
核心思路:信号调理 = 差分放大 + 低通滤波 + 电平搬移。三个环节环环相扣,任何一个出问题,过流保护都会误动或拒动。
3.1 运放选型:别只看价格,要看共模范围和带宽
运放是调理电路的心脏。我见过不少工程师随便抓个LM358就用,结果共模电压一高,输出直接饱和,保护电路形同虚设。
选型时我重点关注三个参数:
- 共模输入范围(Vcm):必须覆盖母线电压的一半。比如母线300V,分压后共模电压可能到150V,普通运放根本扛不住。这时候得用高压运放或差分运放。
- 增益带宽积(GBP):放大倍数×信号频率不能超过GBP。电机电流里常有几十kHz的PWM纹波,如果放大10倍,GBP至少得500kHz以上。我习惯留3倍余量。
- 失调电压(Vos):直接影响电流检测精度。1mV的失调,放大50倍后就是50mV,折算到电流可能就是0.5A的误差。过流保护阈值设得再准也没用。
| 参数 | 推荐值 | 选型陷阱 |
|---|---|---|
| 共模输入范围 | ≥ 母线电压 × 分压比 + 2V | 忽略共模电压,运放内部饱和 |
| 增益带宽积 | ≥ 放大倍数 × 信号最高频率 × 3 | 带宽不够,高频增益下降,保护延迟 |
| 失调电压 | ≤ 0.5mV(高精度场景) | 失调过大,低电流时误触发保护 |
| 压摆率 | ≥ 2V/μs | 压摆率太低,输出跟不上电流突变 |
我的习惯:电机控制里我常用TI的OPA2197或ADI的AD8606,共模范围到±20V,Vos典型值25μV,GBP 10MHz,基本通吃大部分低压电机驱动。高压场景我会选ISO1640隔离运放,或者用电阻分压+隔离放大器。
3.2 差分放大电路设计:共模抑制比是命门
采样电阻两端电压差很小,但共模电压可能很高。差分放大电路的核心任务就是“只放大差模,抑制共模”。
经典的四电阻差分放大器结构,我用了很多年。但这里有个坑:电阻匹配精度直接决定共模抑制比(CMRR)。
举个例子:四个电阻都是10kΩ,但精度只有1%,CMRR可能掉到40dB以下。共模电压100V时,差模输出误差能到1V,这还怎么测电流?
我个人的做法是:
- 用0.1%精度的电阻,或者直接用集成差分运放(如INA系列)
- PCB布局时让四个电阻走线等长,温度梯度一致
- 如果共模电压特别高(比如>50V),我会加一级电压跟随器做缓冲
下面是我常用的单运放差分电路结构:
// 差分放大电路参数计算
// 假设:R1 = R3 = 10kΩ, R2 = R4 = 100kΩ
// 放大倍数 = R2 / R1 = 10倍
// Vout = (V+ - V-) × 10 + Vref
// 实际选型时,R1~R4必须用同一批次0.1%电阻
// 如果共模电压超过运放供电轨,必须加分压或隔离
我曾经踩过的坑:有一版设计用了0402封装的电阻,焊接后热应力导致阻值漂移,CMRR从80dB掉到50dB。后来全部换成0805,并且做了老化筛选。小封装电阻的温度系数和应力敏感性,在精密电路里是隐形杀手。
3.3 低通滤波器设计:截止频率怎么定?
电机电流里除了基波,还有PWM开关纹波、死区效应产生的高频分量。这些噪声如果不滤掉,过流保护会频繁误触发。
低通滤波器就是干这个的。但截止频率设高了滤不干净,设低了又会延迟保护响应时间。
我一般按这个逻辑来定:
- 先看PWM频率:比如PWM 20kHz,纹波基频就是20kHz,谐波在40kHz、60kHz...
- 再看保护响应时间要求:过流保护通常要求在10μs内动作,滤波器延迟不能超过5μs。
- 折中取值:截止频率f_c = 1 / (2πRC)。我习惯取PWM频率的1/5到1/10,也就是2kHz~4kHz。这样纹波衰减20dB以上,同时延迟在几十微秒级别。
一阶RC滤波器最简单,但衰减斜率只有-20dB/dec。如果噪声特别大,我会用二阶有源滤波器,衰减斜率-40dB/dec,滤波效果更好。
| 滤波器阶数 | 衰减斜率 | 延迟(@fc=3kHz) | 适用场景 |
|---|---|---|---|
| 一阶RC | -20dB/dec | ~53μs | 噪声不大,成本敏感 |
| 二阶有源 | -40dB/dec | ~75μs | PWM纹波严重,需要干净信号 |
| 三阶有源 | -60dB/dec | ~100μs | 极高噪声环境,但延迟大 |
我的经验:大多数低压电机驱动,一阶RC滤波就够了。R取1kΩ~10kΩ,C取10nF~100nF,算下来截止频率在1.6kHz~16kHz之间。我习惯先焊一个可调电阻,调试时用示波器看纹波大小,再固定阻值。
3.4 偏置电压处理:把双极性信号变成单极性
电机电流是双向的——正转时电流正向,反转时电流反向。但MCU的ADC只能采0~3.3V的单极性信号。所以必须给信号加一个偏置电压,把双极性信号“抬”到ADC的输入范围内。
偏置电压怎么加?我见过三种做法:
- 电阻分压加跟随器:用两个电阻从参考电压分压,再用运放跟随输出。精度高,但多一个运放。
- 运放同相端直接加偏置:在差分放大电路的同相输入端通过电阻接参考电压。省器件,但会降低CMRR。
- 用集成偏置芯片:比如REF3033,输出3.3V,精度0.2%。省心,但贵几毛钱。
我个人的选择:
如果ADC参考电压是3.3V,我会把偏置设在1.65V。这样正向电流对应1.65V~3.3V,反向电流对应0V~1.65V。满量程利用率最高。
偏置电压的噪声必须低。我曾经用LDO的输出直接做偏置,结果LDO的纹波耦合到信号里,导致过流保护阈值抖动。后来换成独立的精密参考源,问题解决。
// 偏置电压计算示例
// 假设:采样电阻0.001Ω,最大电流±50A
// 差分放大倍数 = 50倍
// 满量程差模电压 = ±50A × 0.001Ω × 50 = ±2.5V
// 偏置电压 = 1.65V
// ADC输入范围 = 1.65V ± 2.5V = -0.85V ~ 4.15V
// 注意:负电压会削底!需要调整放大倍数或偏置
// 实际调整:放大倍数改为20倍
// 满量程差模电压 = ±50A × 0.001Ω × 20 = ±1.0V
// ADC输入范围 = 1.65V ± 1.0V = 0.65V ~ 2.65V
// 完美匹配0~3.3V ADC范围
注意:偏置电压的参考点必须和ADC的参考点一致。如果ADC用内部参考,偏置也用同一个参考源。否则参考点漂移,测量误差会直接叠加到过流保护阈值上。我见过有人用3.3V电源直接分压做偏置,结果电源波动1%,过流阈值也跟着漂1%,这在100A的系统中就是1A的误差。
3.5 整体电路结构:一张图看懂信号调理
下面这张图把差分放大、低通滤波、偏置电压三个环节串起来了。你可以看到信号从采样电阻出来,经过三级处理,最终进入ADC。