开源FOC专用电流探头:低成本高带宽差分放大方案

📅 发布时间:2026/10/9 7:11:41
开源FOC专用电流探头:低成本高带宽差分放大方案
1. 为什么我要做一支FOC专用电流探头搞电机控制的人都有一个共同的痛点你想看相电流波形手头只有示波器标配的电压探头。拿电压探头去测采样电阻两端的压差理论上不是不行但实际操作中你会遇到一堆麻烦——共模干扰大、地环路噪声、探头地线夹引入的寄生电感让波形全是毛刺PWM开关瞬间的尖峰根本看不清真实电流长什么样。尤其是做FOC磁场定向控制的时候电流环的带宽直接决定了整个系统的动态响应你连电流波形都测不准调参基本靠猜。市面上的高带宽电流探头比如那种能测几十兆赫兹的价格动辄大几千甚至上万对于个人开发者和小团队来说门槛太高。而低频的霍尔电流传感器模块带宽又不够测个几十千赫兹的PWM载波就已经力不从心了。所以我花了大概两个月的时间从原理图设计到PCB打样做了一支专门针对FOC电机控制场景的电流探头核心指标是带宽覆盖常见FOC应用的PWM频率范围精度满足采样电阻上的毫伏级压差测量成本控制在两百块以内。所有资料——原理图、PCB源文件、BOM、焊接说明、调试记录——全部开源。这支探头能干什么简单说它可以串在电机相线上做非侵入式电流测量也可以直接跨接在采样电阻两端做差分测量输出标准的电压信号给示波器。适合谁做无感FOC调试的嵌入式工程师、搞电机驱动开发的硬件工程师、参加电子设计竞赛的学生以及任何需要观察电机相电流波形但预算有限的开发者。不管你是刚接触FOC的新手还是已经调过好几版电流环的老手这支探头都能帮你把波形看清楚。2. 电流探头的整体设计思路与方案选型2.1 为什么不用霍尔传感器而选分流电阻加差分放大做电流测量第一步要决定的是传感方案。常见的有三种霍尔效应传感器、电流互感器、分流电阻加差分放大器。霍尔方案的好处是隔离测量没有插入损耗但带宽普遍偏低而且温漂大线性度在大量程下会明显变差。电流互感器只能测交流直流分量直接丢失FOC控制里相电流是带直流偏置的正弦波用互感器等于把最关键的信息砍掉了。分流电阻加差分放大器的方案核心优势在于带宽可以做得很高而且直流精度取决于电阻和放大器的匹配程度只要选型得当线性度非常好。缺点是插入损耗但对于FOC调试场景来说电机相线上串一个毫欧级的电阻压降通常在几十毫伏以内对电机运行的影响可以忽略。我最终选的是差分放大器加分流电阻的方案具体来说是用一颗低失调电压、高共模抑制比的差分放大器配合一个四线制接法的分流电阻。这里有个关键点分流电阻的选型。阻值太大会导致功耗和发热阻值太小则输出信号太弱信噪比上不去。我用的是一颗1毫欧、精度1%、温度系数50ppm/℃的合金电阻额定功率3瓦。假设电机相电流峰值20安培那么电阻上的压降是20毫伏功耗是0.4瓦远低于额定值温升可控。20毫伏的差分信号经过放大器100倍增益后变成2伏正好落在示波器最舒服的测量区间。2.2 差分放大器的选型逻辑与关键参数计算差分放大器的选型我对比了三种方案分立运放搭差分电路、集成差分放大器、隔离放大器。分立方案成本最低但电阻匹配精度要求极高普通1%精度的电阻会导致共模抑制比严重下降算下来得不偿失。隔离放大器性能最好但价格直接翻了好几倍而且需要额外的隔离电源电路复杂度陡增。最终我选了一颗集成差分放大器它的关键参数是这样的共模抑制比在直流到100千赫兹范围内大于80分贝增益误差小于0.1%失调电压小于200微伏。这几个参数为什么重要共模抑制比决定了你能否在PWM开关噪声中提取出有用的差分信号80分贝意味着共模干扰被衰减一万倍。增益误差影响的是测量精度0.1%的误差在20安培量程下对应20毫安的偏差对于FOC调试来说完全够用。失调电压决定了零电流时的输出偏移200微伏除以1毫欧等于200毫安的等效输入失调这个值在软件里做一次零点校准就能消除。增益电阻的计算过程是这样的差分放大器的增益公式是G等于1加Rf比Rg我需要100倍增益所以Rf比Rg等于99。选Rg为1千欧Rf就是99千欧取标准值100千欧实际增益约101倍。增益电阻的精度直接影响增益误差我用的都是0.1%精度的薄膜电阻温度系数25ppm/℃。这里有个细节Rf和Rg的比值精度比绝对值更重要所以选电阻的时候要关注匹配精度而不是单个电阻的精度。2.3 电源方案与PCB叠层设计探头需要正负双电源供电因为差分放大器的输出要能围绕零点上下摆动。我用的是两节锂电池串联加一个虚拟地电路或者直接外接正负5伏的实验室电源。虚拟地电路的核心是一颗轨到轨运放做缓冲把电池的中点电压稳定在正负2.5伏。这里要注意的是虚拟地运放的输出电流能力差分放大器的静态电流加上负载电流总共不超过20毫安所以选一颗输出电流50毫安以上的运放就绰绰有余了。PCB叠层我设计的是四层板顶层走信号线第二层是完整的地平面第三层是电源平面底层走电源线和低速控制线。为什么用四层而不是两层因为差分信号对地的完整性要求很高两层板很难保证差分线下方有连续的地平面一旦地平面被割裂共模抑制比会急剧恶化。四层板的成本比两层板高不了太多但对于这种高共模抑制比的应用来说多出来的钱花得值。差分线的走线规则也值得说一下。差分对的两根线必须严格等长误差控制在5个密耳以内线间距保持一致全程包地处理。差分线的阻抗我控制在100欧姆这个值不是随便定的而是根据放大器的输入阻抗和分流电阻的走线长度综合权衡的结果。走线太长会引入寄生电感影响高频响应走线太短又不好布置。最终差分线长度控制在15毫米以内寄生电感大约15纳亨在1兆赫兹频率下的感抗约0.1欧姆相对于1毫欧的分流电阻来说仍然偏大所以我又在放大器输入端加了RC低通滤波截止频率设在500千赫兹把高频干扰滤掉。3. 原理图设计与关键电路解析3.1 差分输入级与共模滤波电路原理图的第一级是差分输入保护电路。分流电阻两端先经过一对串联的10欧姆电阻然后并联一个100纳法的电容再进入差分放大器的输入端。这对10欧姆电阻的作用是限流防止电机相线上的浪涌电流烧毁放大器输入级。100纳法电容和10欧姆电阻组成一个截止频率约160千赫兹的低通滤波器把PWM开关产生的高频尖峰滤掉。这里有个容易踩坑的地方电容的选型。普通陶瓷电容有压电效应在机械振动下会产生噪声电压而电机运行时的振动是不可避免的。所以我用的是C0G材质的电容这种电容的压电效应极小温度稳定性也好。电容的耐压值选50伏虽然实际工作电压只有几十毫伏但电机相线上可能出现瞬态高压留足余量是必要的。差分放大器的输入端还并联了一对反向串联的肖特基二极管做钳位保护。当输入电压超过正负0.3伏时二极管导通把电压钳在安全范围内。为什么用肖特基而不是普通硅二极管因为肖特基的导通压降更低响应速度更快能在纳秒级的时间内把瞬态高压泄放掉。二极管的结电容要小我选的型号结电容小于5皮法对高频信号的影响可以忽略。3.2 增益级与输出缓冲的设计细节增益级的核心就是那颗差分放大器但外围元件的布局很有讲究。增益电阻Rf和Rg必须紧贴放大器的引脚放置走线越短越好。为什么因为增益电阻的走线如果太长会引入寄生电感和电容在高频下导致增益下降和相位偏移。我实测过增益电阻走线从5毫米增加到20毫米100千赫兹处的增益下降了约3%虽然不大但对于追求精度的测量来说能避免就避免。输出缓冲级我用了一颗单位增益稳定的运放配置成电压跟随器。为什么要加缓冲因为差分放大器的输出阻抗通常在几十欧姆量级直接接示波器的50欧姆输入阻抗会形成分压导致测量值偏低。缓冲运放的输出阻抗在闭环状态下小于1欧姆可以轻松驱动50欧姆负载。缓冲运放选的是轨到轨输入输出的型号带宽至少是差分放大器的两倍保证整个信号链的带宽不被缓冲级限制。输出端还串联了一个50欧姆的电阻这个电阻的作用是阻抗匹配。示波器的输入阻抗通常是1兆欧并联十几皮法的电容串联50欧姆电阻后从探头输出端看进去的阻抗接近50欧姆和同轴电缆的特性阻抗匹配可以减少信号反射。这个电阻的功率选0.25瓦就够了因为输出信号幅度最大也就正负2伏50欧姆上的功耗最大80毫瓦。3.3 电源滤波与虚拟地电路的实现电源部分我设计了三级滤波。第一级是磁珠把高频噪声挡在电源入口外面。第二级是10微法的钽电容提供低频储能。第三级是100纳法的陶瓷电容滤除高频纹波。三级滤波的截止频率依次降低形成一个宽频带的滤波网络。磁珠的选择要注意额定电流差分放大器和缓冲运放的总电流约15毫安磁珠的额定电流选100毫安以上直流电阻小于1欧姆避免在磁珠上产生太大的压降。虚拟地电路的核心是一颗运放加两个等值电阻的分压网络。两个10千欧的电阻串联在正负电源之间中点电压就是虚拟地。运放接成电压跟随器输出端就是低阻抗的虚拟地。这里的关键是分压电阻的精度两个电阻的误差会导致虚拟地偏离真正的电源中点引入直流偏移。我用的是0.1%精度的电阻虚拟地偏差控制在正负2.5毫伏以内。运放选的是低失调电压的型号失调电压小于100微伏对虚拟地的影响可以忽略。虚拟地电路还有一个细节输出端要加一个10微法的电容做去耦。这个电容的作用是吸收负载电流的瞬态变化保持虚拟地电压稳定。电容的等效串联电阻要小我用的是一颗X5R材质的陶瓷电容等效串联电阻小于10毫欧。电容的耐压值选10伏虽然虚拟地电压只有2.5伏但留足余量总是好的。4. PCB布局布线与焊接调试实操4.1 四层板的叠层参数与阻抗控制PCB叠层我用的是一张常见的四层板结构顶层铜厚1盎司介质层厚度0.2毫米第二层铜厚1盎司芯板厚度1.2毫米第三层铜厚1盎司介质层厚度0.2毫米底层铜厚1盎司。总厚度约1.6毫米和常见的FR4板材一致。介质层的介电常数取4.4这是FR4在1兆赫兹下的典型值。差分线的阻抗计算我用的是微带线模型。线宽0.2毫米线间距0.2毫米介质层厚度0.2毫米介电常数4.4算出来的差分阻抗约100欧姆。这个计算过程可以用在线的阻抗计算工具完成但要注意工具里的参数单位线宽和间距通常用密耳介质厚度用毫米单位搞错了结果会差很多。我实际打样后测过TDR差分阻抗在95到105欧姆之间和设计值吻合得不错。地平面的处理是四层板的关键。第二层是完整的地平面不做任何分割。为什么因为差分信号的回流路径就在地平面上如果地平面被割裂回流路径被迫绕行会形成大的环路面积引入额外的电感和辐射。第三层是电源平面也尽量保持完整只在必要的地方打过孔连接。顶层和底层的信号线换层时旁边必须伴随一个地过孔保证回流路径连续。4.2 关键元件的布局原则与走线技巧差分放大器的布局是整块板子的核心。放大器芯片放在板子中央偏左的位置分流电阻的输入端放在板子最左侧输出端放在最右侧信号流向从左到右避免输入输出之间的耦合。增益电阻紧贴放大器引脚走线长度控制在3毫米以内。反馈走线要远离输入走线防止输出信号耦合回输入端引起振荡。差分对的走线我用的是紧耦合方式两根线之间的间距等于线宽这样可以让差分信号的能量集中在两根线之间减少对外辐射和对外部干扰的敏感度。差分对的两根线必须严格等长我用的是蛇形绕线来补偿长度差绕线的弯曲半径至少是线宽的3倍避免阻抗突变。差分对下方不允许有其他的信号线穿过地平面必须完整。电源走线要足够宽。差分放大器和缓冲运放的总电流虽然只有15毫安但电源走线的宽度我用了0.5毫米对应的载流能力约1安培余量充足。电源走线从电源入口到各个芯片的路径要尽量短避免形成大的电源环路。每个芯片的电源引脚旁边都放一个100纳法的去耦电容电容的接地端通过过孔直接连到地平面过孔到电容焊盘的距离小于1毫米。4.3 焊接顺序与调试步骤实录焊接这块板子我的顺序是这样的先焊最小的元件再焊大的。具体来说先焊0402封装的电阻电容再焊SOT23-5封装的运放最后焊连接器和分流电阻。为什么先焊小的因为小元件对热风枪的温度更敏感先焊完小元件后焊大元件时可以用较低的温度减少对小元件的热冲击。分流电阻是2512封装的合金电阻体积大热容量也大放在最后焊用大功率烙铁加焊锡膏确保焊点饱满。焊接完成后第一步是目视检查。用放大镜看每个焊点有没有虚焊、连锡、立碑。特别是差分放大器的引脚间距只有0.65毫米很容易连锡。发现连锡用吸锡线清理清理后重新补焊。第二步是测电源对地阻抗用万用表测正负电源对地的电阻正常值应该在几百欧姆以上如果接近零欧姆说明有短路必须排查清楚再上电。上电调试分三步走。第一步只焊虚拟地电路不焊差分放大器和缓冲运放上电测虚拟地电压是否在正负2.5伏左右。如果偏差超过50毫伏检查分压电阻的精度和运放的失调电压。第二步焊差分放大器输入端短接到地测输出端的失调电压。理想情况下输出应该在零伏附近实际会有几十毫伏的偏移这个偏移在软件里做零点校准就行。第三步焊缓冲运放输入端接一个已知的直流电压测输出端电压是否跟随。如果输出不跟随或者振荡检查缓冲运放的反馈走线是否太长或者负载电容是否太大。5. 实测波形分析与常见问题排查5.1 用示波器观察FOC相电流的真实波形探头调试完成后我把它接到一台无感FOC驱动的无刷电机上做实测。电机参数是24伏供电额定电流5安培极对数7PWM频率20千赫兹。分流电阻串在U相下桥臂和地之间探头跨接在分流电阻两端。示波器用的是1兆欧输入阻抗带宽限制在20兆赫兹采样率100兆采样点每秒。实测波形非常干净。在电机低速运行时相电流是标准的正弦波频率和电机电角度同步。PWM载波频率20千赫兹在波形上看不到明显的纹波因为探头的500千赫兹低通滤波器把载波滤掉了。电流峰值约3安培对应分流电阻上的压降3毫伏经过101倍放大后是303毫伏示波器上显示得很清楚。高速运行时相电流频率升高到500赫兹波形仍然保持正弦形状没有明显的相位延迟说明探头的带宽足够。有一个细节值得注意在PWM开关瞬间波形上还是能看到一些高频振铃频率大约在5兆赫兹左右。这是分流电阻的寄生电感和探头输入电容形成的谐振。振铃的幅度不大约50毫伏峰峰值相对于300毫伏的信号来说占15%左右。如果要做高精度的电流环分析可以在软件里做数字滤波或者把探头的低通滤波器截止频率再降低一些但那样会影响相位裕度需要权衡。5.2 常见问题速查表与排查思路现象可能原因排查方法解决方案输出始终为零电源未接通或放大器损坏测放大器电源引脚电压检查电源连接更换放大器输出饱和到正负电源轨增益电阻虚焊或短路测增益电阻阻值重新焊接或更换电阻波形上有高频振荡缓冲运放负载电容过大在输出端串联小电阻加22欧姆隔离电阻共模干扰严重差分线不等长或地平面割裂检查差分线长度和地平面重新走线保证地平面完整零点漂移大虚拟地不稳定或放大器温漂测虚拟地电压和放大器温度加强虚拟地去耦更换低漂移放大器带宽不足低通滤波器截止频率太低计算RC截止频率减小滤波电容或电阻这张表里的每一个现象我都实际遇到过。比如输出饱和到电源轨这个问题我第一次打样的时候增益电阻的一个焊盘虚焊导致反馈回路断开放大器开环工作输出直接饱和。排查的时候用万用表测增益电阻两端的阻值发现是无穷大重新补焊后问题解决。还有一次是波形上有高频振荡频率约10兆赫兹原因是缓冲运放的输出端直接接了一根长同轴电缆电缆的电容约100皮法和运放的输出阻抗形成了相位裕度不足。在输出端串联一个22欧姆的电阻后振荡消失。5.3 提升测量精度的几个实操技巧第一个技巧是四线制接法。分流电阻的走线要从电阻的焊盘内侧引出而不是从焊盘外侧。为什么因为焊盘本身有电阻如果从外侧引出焊盘的电阻会被算进分流电阻里导致测量值偏大。四线制接法把电流路径和电压测量路径分开电压测量路径上几乎没有电流焊盘电阻的影响可以忽略。具体做法是在分流电阻的每个焊盘上引出两根线一根走电流一根走电压测量。第二个技巧是温度补偿。分流电阻的阻值随温度变化虽然合金电阻的温度系数只有50ppm/℃但在大电流下电阻自身发热温升可能达到20到30摄氏度阻值变化约0.1%到0.15%。对于精度要求高的场合可以在分流电阻旁边贴一个热敏电阻用软件做温度补偿。或者更简单的办法是让分流电阻的功率余量足够大实际功耗远低于额定功率温升控制在10摄氏度以内。第三个技巧是零点校准。每次上电后在电机不转的情况下采一次输出端的电压把这个值作为零点偏移后续的测量值都减去这个偏移。零点偏移主要来自放大器的失调电压和虚拟地的偏差这两个值都会随温度变化所以零点校准最好在探头预热10分钟后进行。我实测过预热前后的零点偏移相差约5毫伏对于300毫伏的信号来说占1.7%做一次校准就能消除。6. 开源资料说明与二次开发建议6.1 开源文件清单与使用说明所有开源文件我整理成了四个部分。第一部分是原理图格式是PDF和源文件两种PDF方便直接查看源文件可以用主流的EDA工具打开修改。第二部分是PCB源文件包含四层板的叠层设置、走线规则、元件封装可以直接导出Gerber文件去打样。第三部分是BOM表包含元件型号、封装、精度、温度系数、推荐供应商BOM里还标注了哪些元件是关键元件不能随意替换。第四部分是调试记录包含实测波形截图、问题排查过程、参数调整记录方便复现和参考。使用这些文件的时候有几点要注意。原理图和PCB的源文件是用特定版本的EDA工具创建的版本不兼容的话可能打不开建议用最新版本的工具。BOM里的元件型号是经过实测验证的替换元件时要注意关键参数比如差分放大器的共模抑制比和失调电压增益电阻的精度和温度系数这些参数直接影响测量精度。调试记录里的波形是在特定条件下测的你的测试条件不同的话波形可能有差异这是正常的。6.2 不同应用场景下的参数调整建议这支探头的设计是通用的但不同的应用场景可能需要调整一些参数。比如你测的电机电流更大峰值到50安培那么分流电阻的阻值要减小到0.5毫欧否则功耗会超过额定值。阻值减小后输出信号也减半需要把增益提高到200倍或者换一颗失调电压更低的放大器。再比如你测的PWM频率更高到100千赫兹那么低通滤波器的截止频率要相应提高否则电流波形的高频成分会被滤掉。截止频率提高后高频噪声也会进来需要在软件里做数字滤波。还有一个场景是测三相电流。这支探头是单通道的测三相需要三支探头。三支探头的零点偏移和增益误差要匹配否则三相电流的对称性会受影响。匹配的方法是在软件里对每支探头单独做校准记录每支探头的零点偏移和增益系数测量时分别修正。如果不想用三支探头也可以用一个多路复用器切换三路信号但切换速度要足够快至少在PWM周期内完成三次采样。6.3 后续可以扩展的方向这支探头目前是模拟输出的后续可以加一个ADC和单片机做成数字输出的版本。数字输出的好处是可以直接通过USB或者串口把数据传输到电脑上用软件做实时分析和记录。ADC的选型要注意采样率和分辨率FOC的电流环带宽通常在1到5千赫兹根据奈奎斯特采样定理采样率至少是带宽的两倍实际工程中取10倍以上比较稳妥所以采样率至少50千采样点每秒。分辨率选12位以上对应300毫伏的信号量化误差小于0.1毫伏完全够用。另一个扩展方向是加隔离。目前的探头是直接连接的分流电阻和示波器共地。如果电机驱动器的地和示波器的地之间有电位差会形成地环路引入干扰。加一个隔离放大器或者数字隔离器可以切断地环路提高测量的可靠性。隔离方案的代价是成本增加和带宽可能受限需要根据具体应用权衡。如果电机驱动器和示波器用同一个电源插座地电位差通常不大不隔离也能用。如果两者距离很远或者电机驱动器是浮地供电的隔离就很有必要了。我个人在实际操作中的体会是这支探头最大的价值不在于它的性能有多极致而在于它把FOC电流测量的门槛降到了足够低。你不需要花大几千买商用探头也不需要复杂的隔离电源用两百块的成本和两个周末的时间就能得到一支带宽和精度都够用的探头。踩过的坑主要集中在PCB布局和焊接上差分线的等长和地平面的完整性怎么强调都不为过焊接时的虚焊和连锡是调试阶段最常见的故障源。最后再分享一个小技巧调试的时候先用一个已知的直流电流源做校准比如用一节电池串联一个功率电阻产生一个稳定的直流电流测出来的值和你用万用表测的值对比偏差在1%以内就说明探头工作正常了。