2、采样电阻布局:开尔文连接(四线法)原理与PCB布局要点
各位工程师朋友,咱们接着聊电流采样。上一章讲了电阻选型,但说实话,选再好的电阻,如果PCB布局一塌糊涂,那也白搭。今天我就重点说说采样电阻的布局,核心就是——开尔文连接,也叫四线法。
这玩意儿听起来高大上,其实原理特简单。我刚开始做电机驱动那会儿,也踩过不少坑,后来才明白,很多噪声问题根本不是器件本身的问题,而是布局惹的祸。
2.1 为什么需要开尔文连接?
先问大家一个问题:一个采样电阻,明明标称1毫欧,为什么你测出来的压降总是不对?
原因很简单——PCB走线本身也有电阻。你想想看,如果采样电流是10A,哪怕走线只有0.5毫欧,那额外产生的压降就是5mV。换算到电流值,误差可能高达5%甚至更多。对于电机控制这种需要精确电流环的应用,这误差根本没法忍。
更麻烦的是,走线电阻受温度影响很大。铜的温漂系数大约是0.39%/°C,温度从25°C升到85°C,走线电阻能涨20%以上。你想想,这误差会随着温度飘来飘去,电流环能稳才怪。
开尔文连接就是为了解决这个问题。它的核心思想是:把大电流路径和电压采样路径彻底分开。
核心原则:电流走电流的路,电压测电压的线。两者只在采样电阻的焊盘处交汇,其他地方老死不相往来。
2.2 开尔文连接的原理
说白了,就是四根线干两件事:
- 两根大电流线(Force线):负责流过采样电流,走线要宽、要短、要粗。
- 两根电压检测线(Sense线):负责测量电阻两端的压降,走线要细、要远离干扰。
为什么这样就能消除误差?因为Sense线上几乎没有电流流过(运放输入阻抗极高,μA级别),所以Sense线上的压降可以忽略不计。你测到的电压,就是采样电阻本体上的真实压降。
我在一个项目中遇到过这种情况:客户反馈说电流采样值在低频时很准,但一上高频(比如20kHz PWM),读数就开始乱跳。我过去一看,好家伙,Sense线直接从大电流路径上引出来的,PWM开关噪声全耦合进去了。改成开尔文连接后,问题立马解决。
2.3 PCB布局要点
原理讲完了,咱们来点干货。下面是我个人总结的几条布局铁律:
2.3.1 采样电阻的摆放位置
- 紧贴MOSFET或电感:采样电阻应该尽可能靠近功率级的输出端,减少大电流路径上的寄生电感。
- 远离噪声源:别把采样电阻放在PWM走线、高频时钟或者DC-DC电感的旁边。我见过有人把采样电阻放在开关管正下方,结果采样波形全是毛刺。
- 对称布局:如果是三相采样,三个采样电阻的布局尽量对称,这样三相电流的延迟和寄生参数一致,软件补偿起来也方便。
2.3.2 Force线和Sense线的走线规则
| 项目 | Force线(大电流) | Sense线(电压检测) |
|---|---|---|
| 线宽 | ≥ 2mm(根据电流定) | 0.25mm ~ 0.5mm |
| 线长 | 尽量短 | 尽量短,但可接受稍长 |
| 层数 | 顶层或内层大铜皮 | 顶层或内层,远离干扰 |
| 过孔 | 多个过孔并联 | 尽量少用过孔 |
| 间距 | 与Sense线保持≥1mm | 远离Force线和PWM线 |
这里有个细节:Sense线一定要从采样电阻的焊盘根部引出,而不是从Force线的中间或者末端引。我见过有人图省事,直接从Force线上打了个过孔接Sense线,结果测出来的电压包含了Force线上的压降,开尔文连接白做了。
我的习惯:在采样电阻的焊盘上,专门留两个小焊盘给Sense线。这样焊接的时候,Sense线直接焊在电阻的端子上,物理上就保证了采样点准确。
2.3.3 差分走线
Sense线是差分信号,所以两条线要平行走、等长走、紧耦合走。为什么?
- 平行走:保证两条线受到的干扰一致,共模噪声可以互相抵消。
- 等长走:避免两条线延迟不同,导致高频时相位失配。
- 紧耦合走:两条线靠得越近,抗共模干扰能力越强。
我曾经在一个项目中,因为Sense线走了不同的层,结果高频时共模抑制比直接掉了20dB。后来改成同层平行走线,问题才解决。
2.3.4 地线处理
采样电路的地线,一定要单点接地。什么意思?就是采样电阻的地端、运放的地端、ADC的地端,都通过一个点连接到系统地。千万别搞成多点接地,否则地环路会引入巨大的噪声。
具体做法:在采样电阻附近,专门铺一块小铜皮作为模拟地,然后用一根粗线连接到系统地。这块小铜皮上只放采样相关的元件,功率级的电流不要从这里走。
注意:千万不要把采样电阻的地端直接接到功率地的大铜皮上。功率地上的大电流会产生压降,这个压降会直接串到采样信号里。我见过有人这么干,结果电流采样值在负载变化时跳得跟心电图似的。
2.4 实际布局示例
光说不练假把式,我给大家画个简单的布局示意:
+--------+ +--------+
| MOSFET | | MOSFET |
+--------+ +--------+
| |
Force线(宽) Force线(宽)
| |
+--+--+ +--+--+
| Rsense| | Rsense|
+--+--+ +--+--+
| |
+--+--+ +--+--+
| Sense| | Sense|
+--+--+ +--+--+
| |
+--------+ +--------+
| 运放 | | 运放 |
+--------+ +--------+
| |
+--------+ +--------+
| ADC | | ADC |
+--------+ +--------+
注意看,Sense线是从Rsense的焊盘根部直接引出的,没有经过Force线。运放和ADC都放在采样电阻附近,走线尽量短。
2.5 避坑指南
最后,我把自己这些年踩过的坑总结一下,希望能帮大家少走弯路:
- 我曾经把Sense线走在了功率电感下面,结果采样波形上全是开关噪声,后来把Sense线绕到顶层才解决。
- 我曾经为了省空间,把两个采样电阻的Sense线共用了一段走线,结果两相电流互相串扰,电流环根本调不稳。
- 我曾经在采样电阻下面铺了完整的地铜皮,结果寄生电容太大,高频响应变差。后来改成只在焊盘周围铺地,其他地方镂空。
- 我曾经用0欧电阻代替采样电阻做调试,结果0欧电阻的寄生电感导致高频振荡。记住,调试时也要用真正的采样电阻。
总结一句话:开尔文连接不是锦上添花,而是电机控制电流采样的基本功。布局做好了,后面调软件能省一半的功夫。布局做不好,你花再多时间调PID也是白搭。
好了,这一章就讲到这里。下一章咱们聊聊运放选型,那又是一个容易踩坑的地方。各位有什么问题,欢迎随时交流。