4、采样电路设计:差分放大电路设计、共模电压抑制、低通滤波器设计、ADC接口匹配
采样电路,说白了就是过流保护的「眼睛」。眼睛不好使,后面逻辑再强也白搭。我见过太多项目,保护没动作不是因为算法慢,而是采样电路先把信号搞失真了。
这一节,咱们把采样链路拆开揉碎,从差分放大到ADC接口,一个一个过。
4.1 差分放大电路设计
电机电流采样,主流方案就两种:分流电阻和霍尔电流传感器。分流电阻便宜、线性好,但信号是共模电压很高的微弱差分信号。霍尔传感器隔离好,但带宽和温漂是硬伤。
我个人习惯,中低压电机(60V以下)首选分流电阻+差分放大器。成本可控,精度也够。
4.1.1 典型拓扑
差分放大电路的核心,就是那个经典的「四电阻差动放大器」:
Vout = (Rf / Rin) * (V+ - V-)
但实际设计时,电阻匹配精度直接决定共模抑制比(CMRR)。我踩过这个坑——用了1%精度的电阻,结果CMRR只有60dB,60V共模电压下,等效到输入的失调误差能到60mV。对于1mΩ的分流电阻、100A满量程来说,这就是6%的误差,完全不可接受。
4.1.2 我常用的电路结构
下面这个拓扑,我在三个量产项目里用过,效果稳定:
分流电阻两端 → 差分输入(R1/R2)→ 差分放大器 → 输出至低通滤波器
关键参数:
- 增益:根据ADC满量程和最大电流计算
- 输入阻抗:至少10kΩ以上,避免影响分流电阻精度
- 带宽:至少10倍于PWM开关频率
嗯,这里要注意:差分放大器的输入阻抗不能太高,否则和分流电阻的寄生电感形成谐振,高频噪声会放大。我一般控制在10kΩ~100kΩ之间。
4.2 共模电压抑制
共模电压,是差分采样最大的敌人。电机驱动是典型的半桥结构,相电压在母线电压和地之间来回跳变,上升沿能到几十V/ns。这个共模跳变,会通过差分放大器的寄生电容耦合到输出端。
4.2.1 共模电压的来源
| 来源 | 幅值 | 频率 | 影响 |
|---|---|---|---|
| 母线电压 | 12V~600V | 直流 | 静态偏置误差 |
| PWM开关跳变 | 母线电压的50%~100% | PWM频率(10k~100kHz) | 瞬态共模干扰 |
| 电机反电动势 | 与转速成正比 | 基频(几Hz~几百Hz) | 低频共模波动 |
说白了,共模电压是「直流+高频跳变+低频波动」的混合体。你想想看,差分放大器要同时抑制这三种成分,难度不小。
4.2.2 提升CMRR的实战技巧
我在一个48V BLDC项目里,遇到过共模干扰导致过流保护误动作的问题。排查了三天,最后发现是PCB布局惹的祸。这里分享几个经验:
- 差分走线等长等距:两条输入线长度差不要超过1mm,间距保持一致。我习惯在差分对两侧加地线屏蔽。
- 输入加共模扼流圈:在差分放大器输入端串联一个小共模扼流圈(几十μH),对高频共模抑制效果明显。
- 使用仪表放大器:如果共模电压变化范围很大(比如母线电压从0V到600V),建议用仪表放大器,它的CMRR天生比普通差分放大器高。
4.3 低通滤波器设计
差分放大之后,信号里还混着PWM开关噪声和电机换向尖峰。这时候就需要低通滤波器出手了。
4.3.1 滤波器类型选择
我推荐用二阶有源低通滤波器,比一阶的衰减斜率更陡,又比高阶的容易调试。常用的拓扑是Sallen-Key结构:
运放 + 两个电阻 + 两个电容
截止频率 fc = 1 / (2π * √(R1*R2*C1*C2))
品质因数 Q = √(R1*R2*C1*C2) / (R1*C1 + R2*C1 + R1*C2*(1 - K))
实际项目中,我一般把截止频率设在PWM开关频率的1/10左右。比如20kHz的PWM,滤波器截止频率设在2kHz。这样既能滤掉开关噪声,又不至于把电流的基波信息(几百Hz以内)衰减太多。
4.3.2 避坑指南
我曾经在一个项目里,滤波器设计得「太完美」了——截止频率刚好卡在PWM频率的1/10,Q值设成0.707(巴特沃斯响应)。结果呢?电机低速运行时,电流波形出现明显的振铃。后来发现是滤波器对PWM边沿的瞬态响应过冲导致的。
从那以后,我学乖了:
- Q值不要超过0.707,宁可衰减慢一点,也不要过冲。
- 运放选型要注意GBW,至少是截止频率的50倍以上,否则高频段相位滞后会恶化滤波效果。
- 电容用C0G/NP0材质,X7R的电容在直流偏压下容值会下降30%~50%,滤波器特性全变了。
4.4 ADC接口匹配
信号调理完了,最后一步是喂给ADC。这一步看似简单,但匹配不好,前面所有努力都白费。
4.4.1 输入阻抗匹配
ADC的采样电容在采样瞬间会从信号源抽取电荷,如果信号源阻抗太高,采样电容来不及充满,转换结果就会偏小。这就是所谓的「采样建立时间」问题。
我一般遵循这个经验法则:
- 信号源输出阻抗 ≤ ADC输入阻抗的1/10
- 在ADC输入端加一个缓冲器(运放跟随器),阻抗问题一劳永逸
- 如果不用缓冲器,就在ADC输入端并联一个0.1μF的电容,提供电荷存储
4.4.2 电压范围匹配
ADC的输入范围通常是0~3.3V或0~5V。差分放大器的输出必须落在这个范围内。我习惯留出10%~20%的裕量:
| ADC参考电压 | 差分放大器满量程输出 | 对应电流 |
|---|---|---|
| 3.3V | 0.1V ~ 3.0V | 0A ~ 100A |
| 5.0V | 0.2V ~ 4.5V | 0A ~ 150A |
为什么要留裕量?因为运放输出不可能完全轨到轨,靠近电源轨时线性度会变差。另外,过流保护需要检测超过额定电流的故障状态,留点余量给保护阈值。
4.5 完整采样链路架构
把上面四个环节串起来,就是一条完整的电流采样链路。我画了一张图,帮你理清关系:
从分流电阻到ADC,每个环节都有自己的「脾气」。差分放大器怕共模,低通滤波器怕过冲,ADC怕阻抗不匹配。你想想看,任何一个环节出问题,最终反映到过流保护上,就是误动作或者拒动作。
我个人习惯,每次画完采样电路,都会拿着这张链路图,逐级检查参数。嗯,虽然麻烦,但值得。