电流采样基础:相电流采样原理与三种方式对比
做FOC控制,第一关就是电流采样。我见过不少新手,算法写得漂亮,一上电机就抖成筛子——查到最后,往往是采样环节出了问题。说白了,你算得再准,采进来的电流是错的,那全是白搭。
这一章,咱们就把相电流采样的底牌翻个底朝天。单电阻、双电阻、三电阻,这三种方案我都在项目里踩过坑,今天一次性讲透。
相电流采样到底在采什么?
FOC的核心是控制定子磁场,而定子磁场由三相电流合成。所以你得知道每一相电流的瞬时值。但实际采样时,我们通常只采两相,第三相靠基尔霍夫定律算出来:
I_c = -(I_a + I_b)
嗯,这里要注意:这个公式只在电机中性点不接地时成立。我遇到过有人把中性点接了地的系统,那第三相就不能这么算了——不过那是极少数情况,咱们先按常规来。
采样时机呢?一般选在PWM周期的中点或边沿。为什么?因为那里电流纹波最小,采到的值最接近真实平均值。这个细节后面章节会展开,先记住结论。
三种采样方式的电路原理
三种方式的区别,说白了就是「用几个采样电阻、放在什么位置」。我画了张图,帮你快速建立整体认知:
单电阻采样:省钱但费心
单电阻采样只在直流母线负端放一个采样电阻。你想想看,一个电阻搞定三相电流,成本确实低。但代价是什么?
它需要根据当前PWM开关状态,从母线电流中「重构」出相电流。具体来说:
- 当某一相上管导通、下管关断时,母线电流等于该相电流
- 当两相上管同时导通时,母线电流等于两相电流之和
- 通过不同开关组合的采样值,解方程算出各相电流
听起来挺巧妙对吧?但坑也在这里。我做过一个低压风机项目,用的就是单电阻。调试时发现,在调制比低于15%的区域,采样窗口短到ADC根本来不及转换——采出来的数据全是乱的。电机在低速轻载时抖得厉害,后来不得不加了一段「最小采样窗口保护」逻辑才稳住。
- 低调制比区域(<15%)采样窗口不足
- 过调制区域(>95%)同样失效
- 需要复杂的时序补偿算法
- 对ADC采样速度要求高(通常需要>1Msps)
双电阻采样:工程中的「万金油」
双电阻采样在两相下桥臂各放一个采样电阻。我个人习惯在大多数项目中优先考虑这个方案。为什么?因为它平衡了成本和性能。
工作原理很简单:直接采两相电流,第三相用基尔霍夫定律算。采样时机选在下管导通时,也就是PWM低电平区间。这个窗口通常足够宽,不像单电阻那么捉襟见肘。
我曾经在一个伺服驱动器项目里用过双电阻。当时电机额定电流30A,峰值60A。我选了2mΩ的采样电阻,配合差分运放,在满量程下信噪比做到了75dB以上。效果相当不错。
- 电阻值:根据最大电流和运放输入范围计算,通常1~10mΩ
- 功率:按I²R计算,留2倍裕量
- 精度:±1%起步,要求高时用±0.5%
- 温漂:<50ppm/℃,否则电流采样会随温度飘移
三电阻采样:性能至上
三电阻采样在三相下桥臂各放一个采样电阻。每相独立采样,互不干扰。精度最高,但成本也最高——三个电阻、三路运放、三路ADC通道。
什么时候必须用三电阻?我遇到过两种情况:
- 大功率驱动:电流上百安时,单电阻的采样窗口问题会被放大,三电阻更可靠
- 高精度要求:比如医疗设备、精密伺服,电流纹波必须控制在1%以内
但三电阻也有个麻烦:三路增益必须严格匹配。我曾经在一个项目里用了三颗标称1%的电阻,结果三路增益偏差导致电流波形出现了明显的「三相不对称」——电机转起来嗡嗡响。后来换了0.1%的配对电阻才解决。
三种方式的硬核对比
下面这张表是我自己整理的,项目选型时直接拿来用:
| 对比项 | 单电阻 | 双电阻 | 三电阻 |
|---|---|---|---|
| 采样电阻数 | 1个 | 2个 | 3个 |
| 运放通道数 | 1路 | 2路 | 3路 |
| ADC通道数 | 1路 | 2路 | 3路 |
| 采样窗口 | 窄(受调制比限制) | 宽(下管导通区间) | 最宽(每相独立) |
| 低调制比性能 | 差(<15%失效) | 好 | 好 |
| 电流重构算法 | 需要 | 不需要 | 不需要 |
| 增益匹配要求 | 低 | 中 | 高 |
| 典型成本 | 低 | 中 | 高 |
| 适用功率 | <500W | 500W~5kW | >5kW |
| 典型应用 | 风扇、水泵、小家电 | 伺服、机器人、电动工具 | 大功率伺服、电动汽车 |
选型决策:我的一般原则
说了这么多,到底怎么选?我个人的经验是:
- 先看功率:500W以下,成本敏感,单电阻可以试试。但要做好低调制比补偿的心理准备。
- 再看精度:如果电流环带宽要求>2kHz,建议直接上双电阻或三电阻。单电阻的重构延迟会限制带宽。
- 最后看成本:双电阻是性价比最优解。我80%的项目都用的双电阻。
一句话总结:
- 想省钱、不怕折腾 → 单电阻
- 求稳、性价比优先 → 双电阻
- 要性能、不计成本 → 三电阻