公司动态

高边电流检测全解析:原理、方案选型与工程实践

📅 2026/8/26 7:17:03
高边电流检测全解析:原理、方案选型与工程实践
做硬件这些年我发现自己踩得最深的坑往往不在芯片选型而在最基础的测量方式上。有次调一个12V直流无刷电机驱动器想监控母线电流做堵转保护刚开始顺手把采样电阻放在了负载下面做低边检流结果电机一转MCU的ADC采集数据乱跳板子上的传感器读数也跟着飘折腾了一整天最后才发现问题出在检流位置。把电阻挪到电源正端换成High-Side Current Sensing整个系统瞬间安静了。从那时起我就意识到电流检测的电阻放哪比用哪颗芯片重要得多。High-Side Current Sensing也就是高边电流检测翻译过来就是把采样电阻串在电源正端和负载之间通过测量电阻两端微小压差来算出电流。听上去很简单但它背后牵扯到共模电压处理、放大器选型、PCB布局、精度校准一堆问题。这篇文章我把自己这些年在高边检流上积累的实现方案、设计思路、调试经验全部整理出来从原理讲到器件选型再到实测排错希望能让你少走点弯路。1. 为什么非要测高边低边方案解决不了的真实问题1.1 低边检流的“地弹”不是简单把电阻换位置就能理解先说低边电流检测。它的做法是把采样电阻放在负载和系统地之间负载电流经过电阻回到GND电阻上产生压降用一个放大器去测这个压降。因为电阻两端都在地附近放大器的输入共模电压很低对芯片的要求也低电路做起来很简单很多低成本方案都会优先选它。但这里有个致命问题负载的“地”不再是真正的0V。当电流流过采样电阻时负载那一端的地电位被抬高了I×R。如果电流是5A电阻是10mΩ那这个地就会被抬高50mV。听起来不大但在电机驱动这类有高频开关电流的场景里这个地变成了一个上下波动的“脏地”。MCU的ADC参考地、模拟前端的地、甚至逻辑芯片的参考地如果和它共用后果就是采样值乱跳、传感器输出异常、通信偶尔误码。还有一类场景是负载必须直接接地的比如负载是金属外壳的设备、某些必须单点接地的电路或者需要短路保护到地的应用低边检流根本没有位置放采样电阻。这些问题不是换个更低阻值的电阻或者换个放大器能解决的是拓扑结构本身决定的。1.2 高边检流的真正难点在于共模电压高边检流的结构正好反过来采样电阻放在电源正端和负载之间负载一端直接接系统地。这样负载的地是干净的但代价是——采样电阻两端的电压都处于电源电位附近。比如12V供电的系统采样电阻一端是12V另一端是12V减去I×R通常只有几毫伏到几百毫伏的压差。你要检测的差分信号很小但放大器两个输入端的共模电压都在12V附近。如果电源是48V、60V呢共模电压也跟着变成48V、60V。这就像一个场景你手里拿着一根在高压电线上测两个接线柱之间几毫伏差的电压表你的手放大器的输入端已经搭在高压上了。普通放大器的输入共模范围远不够轻则输出不准重则直接烧芯片。所以高边检流的核心技术难点从来不是“怎么放大几十毫伏的小信号”而是“在高压共模的前提下精确放大几十毫伏的小信号”。1.3 哪些场景真正离不开高边检流我刚入行时觉得低边检流够用就行直到碰到的项目越来越多才发现高边检流在很多场景是刚需。直流无刷电机控制BLDC/PMSM需要监测母线电流做堵转保护、过流保护、力矩估算采样电阻只能放在高端。电池充放电管理充电和放电都要检测电流而且电池包的负端要直接作为系统地充电器和负载都要以它为参考只能用高边。开关电源输出侧恒流控制电源输出端的负端通常就是系统地负载设备都挂在系统地上检流电阻必须放在输出正端。汽车电子和工业设备工作电压多为12V/24V甚至更高还伴有大量瞬态干扰低边检流引入的地噪声会污染整个系统。在这些场景里高边检流不是“更好的选择”而是“唯一的选择”。理解了为什么必须测高边接下来最自然的问题就是怎么测。2. 实现方案的取舍从运放搭差分到专用检测放大器2.1 通用运放搭差分放大能跑但坑很深很多工程师的第一反应是用一个通用运放搭差分放大电路。原理很简单四个等值电阻接成桥式差分结构将采样电阻两端的差分电压放大。这个方案确实能工作但只限于“要求不高”的场合。第一个坑是电阻匹配精度。这四个电阻的匹配度直接决定共模抑制比CMRR。用1%精度的电阻CMRR只有大约40dB。什么意思呢在一个12V系统里共模电压是12V假设共模变化是1V那么1V除以40dB对应的100倍衰减就有10mV的等效误差混进信号里。而你的真实信号可能只有50mV误差占了20%。要想把CMRR做到80dB以上电阻匹配度要优于0.01%这意味着要用精密网络电阻或者逐个筛选成本一下子上去了。第二个坑是输入共模范围。通用运放的输入共模范围大多限制在电源轨以内如果你用5V供电的运放去测12V高边共模早就超范围了。解决办法是先电阻分压衰减共模再进运放可一分压差分信号也跟着衰减信噪比急剧恶化。所以我的建议是通用运放搭差分只适合实验验证和学校课程设计用在产品上性价比很低还容易给自己埋雷。2.2 专用电流检测放大器目前的主流方案相比用通用运放自己搭现在最主流的做法是选一颗专用的电流检测放大器Current Sense AmplifierCSA。这类芯片内部做了三件事高精度匹配的电阻网络、电平转换电路、低失调放大级。它们专门为高边检流设计输入引脚可以直接接在电源电压上输出是相对地的低电压信号可以直接送给ADC。芯片内部把共模处理、精密电阻匹配这些问题都解决了大大降低设计难度。实际设计中我常用的几颗型号共模电压范围增益选项失调电压突出特点INA240-4V ~ 80V20/50/100/200 V/V±25µV典型增强PWM抑制适合电机驱动INA282-14V ~ 80V50 V/V±10µV典型零漂移REF引脚可做双向检流AD82102V ~ 65V20 V/V±1mV汽车级性价比高MAX40804.5V ~ 76V5/20/60 V/V±0.6mV静态电流低这里要特别提一下INA240。它的内部集成了增强型PWM抑制技术当高边共模电压受PWM开关影响剧烈跳变时输出依然能保持平稳。这在电机驱动场景里太关键了我后面会专门展开讲。2.3 需要隔离时怎么办隔离放大器与霍尔电流传感器在某些场景里高边检流还不只是共模电压高的问题而是整个高边区域和大电流回路需要和低压控制侧电气隔离。这时候有两种常见选择。隔离放大器比如AMC1300、AMC1200这类。它们的输入端连接高边采样电阻内部通过电容隔离栅把模拟信号数字化后传输到输出侧输出侧以低压控制侧地作为参考。隔离电压可以做到几千伏非常适合电机驱动里的三相电流采样、光伏逆变器、或者需要保证人不接触高压的工业设备。另一种是霍尔电流传感器比如ACS712、ACS724以及各种开环、闭环霍尔模块。霍尔传感器直接穿过被测电流不需要采样电阻因此没有插入损耗同时自带隔离。用起来非常简单接上供电和输出就能测。但代价是精度和带宽通常不如采样电阻加检测放大器的方案特别小电流时失调比较明显大电流场景下体积和成本也会上去。2.4 四类方案横向对比我把上面几种方案整理成一个表方便你做快速选型方案优点缺点典型场合通用运放分立电阻成本低、电路熟悉CMRR差、受共模限制、精度差学习验证、精度要求极低专用电流检测放大器精度高、共模高、设计简单需要采样电阻、需考虑功耗电机驱动、电源、电池管理隔离放大器电气隔离、抗干扰、耐高压成本高、带宽有限高压电机驱动、光伏、工业霍尔电流传感器插入损耗低、自带隔离、使用方便精度一般、带宽受限、小电流不准电流较大、精度要求中等的系统选型逻辑其实不复杂优先选专用电流检测放大器绝大多数高边检流需求它都能覆盖如果系统要求隔离再考虑隔离放大器或者霍尔通用运放搭差分基本可以排除。3. 手把手搭一个12V系统的高边检流电路3.1 采样电阻选型阻值、功率、温漂一个都不能少以最常见的场景为例12V供电最大负载电流5A用INA240增益50档做高边检流输出直接接3.3V ADC。第一步是算采样电阻阻值。3.3V ADC满量程是3.3V但实际我不会让输出太接近满量程通常留10%-15%余量按2.7V算。INA240增益50倍那么满量程对应的输入差分电压是2.7V / 50 54mV。要测5A满量程采样电阻就是54mV / 5A 10.8mΩ。取整选10mΩ实际满量程输出是5A × 0.01Ω × 50 2.5V非常合适。第二步是算电阻功率。P I²R 5² × 0.01 0.25W。这只是理论值实际选型我会至少要留2倍以上余量也就是选0.5W到1W的电阻。如果电路可能长时间工作在接近满量程的状态建议直接选1W因为采样电阻的温升会直接影响阻值和测量精度温度高还会降低可靠性。第三步是看温度系数。普通贴片电阻的温度系数一般在100ppm/°C以上而精密合金采样电阻可以做到50ppm/°C以内甚至更低。比如10mΩ电阻温升50°C100ppm/°C的电阻阻值会变化5%这个误差足以让高边检流整体失准。所以在电流检测这种场景里优先选专门为检流设计的合金贴片采样电阻别为了省几毛钱去用普通电阻。3.2 放大器接法与关键外围元件INA240的典型接法并不复杂。IN和IN-分别接采样电阻的两端注意方向要对应电流流向交换接法会导致输出反向。OUT接ADCGND接地VS接工作电压。这里必须重点强调一个容易翻车的点INA240的工作电压VS范围是2.7V到5.5V它虽然有80V的共模输入能力但芯片本身的供电并不高。在你的系统电源是12V的情况下VS绝对不能直接接12V必须接3.3V或5V的低压电源。我第一次用这颗芯片时就差点在这翻车当时想着“既然感应对象是12V那就用12V供电”幸好画板前看了眼数据手册。外围元件主要有三个。一是VS脚的去耦电容0.1µF陶瓷电容尽量贴近芯片引脚摆放。二是输入端滤波电容在IN和IN-之间加一个差模电容同时在每个输入引脚对地加共模电容作用是滤除采样电阻上叠加的高频噪声。三是输出端的RC低通滤波用于平滑送给ADC的信号典型值取100Ω串联电阻加1nF对地电容对应的截止频率约1.6MHz足够平滑PWM电流纹波又不会明显拖慢响应。具体参数根据你的PWM频率和目标带宽调整。3.3 双向电流检测怎么搭很多场景需要检测双向电流比如电池充放电、电机四象限运行。这时候就需要用到带REF引脚的电流检测放大器INA282就是典型例子。原理很简单把REF引脚设置到输出量程的中点当被测电流为零时输出等于REF电压正向电流使输出高于REF反向电流使输出低于REF。以INA282为例增益固定为50REF接1.65V那么输出范围是0到3.3V时输入差分电压范围是-33mV到33mV对应10mΩ采样电阻就是±3.3A的双向量程。REF电压的来源需要注意。理想情况下零点精度完全取决于REF电压的精度所以REF不能直接从MCU的IO口拉最好用精密基准源或者从ADC的基准电压分压后加一个运放buffer来驱动。我早期偷懒直接用了电阻分压结果零点偏差了几十毫安在小电流充电时误差被放得很大后来改成从ADC基准分压加buffer问题才解决。4. 实测波形毛刺多的根因排查共模瞬态与PCB布局4.1 高dv/dt PWM共模瞬态干扰电路搭好之后很多人会发现一个头痛的问题静态测试时输出很干净一跑起来比如电机转起来输出波形全是毛刺看起来完全不像电流波形。这个问题的根因往往不是电路原理错了而是高边共模电压在PWM开关瞬间发生了大斜率跳变。在电机驱动或开关电源里开关节点SW的电压以极高的dv/dt在电源轨和地之间切换高边采样电阻两端的共模电压也跟着瞬间跳变。普通的电流检测放大器即使静态CMRR标得很高在高频共模跳变面前内部电路的平衡速度跟不上输出端就会出现尖峰或振荡。解决思路有两条路。第一是从芯片层面解决选带增强PWM抑制功能的检测放大器这就是INA240存在的核心价值。它在内部通过特殊设计把PWM开关切换瞬间的干扰抑制掉实测下来电机运行时的输出干净很多不再是一堆毛刺。如果你的设计已经流过一版舍不得换芯片第二条路只能在输入端加滤波把进入放大器的共模瞬态信号带宽压下来但代价是检测带宽变窄限流保护的响应速度会变慢需要权衡。4.2 输入滤波和输出滤波怎么加刚才提到了滤波这里把细节展开一下。输入端滤波有两种位置效果完全不同。在IN和IN-之间并联一个电容就是差模滤波它主要滤除采样电阻两端的差模噪声比如电流纹波噪声。但同时它也会和采样电阻一起构成一个低通滤波器影响电流检测的带宽。电容值根据PWM频率来选择如果PWM是20kHz选择1nF到10nF的差模电容对应的截止频率大约在几十kHz到几百kHz可以在保留电流纹波信息的同时滤掉大部分辐射噪声。另一种是共模滤波在每个输入引脚对地分别加一个电容。这种接法对共模瞬态的抑制效果比差模电容好得多因为PWM开关带来的干扰本质上就是共模信号。我自己的经验是如果遇到输入干扰严重的情况优先加共模电容往往比盲目加大差模电容有效。输出端的RC低通也需要结合ADC采样时间常数来设计。比如ADC的采样时间是1µs那么RC低通的截止频率最好不低于ADC采样的奈奎斯特频率否则会拖慢信号响应。具体参数可以在实际调试时用示波器观察以“波形平滑且不过度变形”为准。4.3 PCB布局Kelvin连接和返回路径处理搞高边检流的PCB布局最重要的一个原则是采样电压的走线必须采用开尔文Kelvin接法。什么是开尔文接法就是采样电压的采样走线不直接从大电流通路中间取而是直接从采样电阻的两个端点上引出两条细线把电压信号单独送到放大器输入端。这样做的原因是“铜箔也有电阻”如果电压采样点选在大电流走线中间采样走线上会叠加一段铜箔的压降造成测量误差。实际操作中要注意几点采样走线要尽量短差分信号的两根线要保持等长、靠近走形成一个小的差分对这样可以减少差模磁场的耦合采样走线要远离开关节点和栅极驱动走线这些地方的高频干扰非常强放大器芯片本身要靠近采样电阻放置输入引脚到采样电阻焊盘的距离越短越好还有采样电阻下面不要铺大块地铜否则会引入不必要的寄生电容。另外大电流路径本身也要注意采样电阻的两个焊盘之间是大电流流经的区域要保证大电流路径能承载5A以上的电流走线宽度要足够必要时加开窗加锡。不要让大电流走线绕到放大器的下面再回来让大电流回路尽量紧凑减小辐射环路面积。5. 校准、精度以及几个容易翻车的操作5.1 误差来源拆解即使电路搭对了也还是要有误差意识。高边检流的误差来源主要有这几块失调电压Vos放大器本身固有的零点偏移。比如INA240典型失调25µV在10mΩ电阻上折算成电流误差就是25µV / 10mΩ 2.5mA。看似不大但如果要测几十mA的小电流误差占比就上来了。增益误差芯片内部增益的偏差典型在0.1%到0.5%左右。共模抑制比CMRR共模电压越高CMRR有限导致的误差越大。CMRR 100dB意味着10V共模变化会引入100µV的等效输入失调。采样电阻温漂和精度前面说的这是误差的大头之一。REF电压误差双向检流时直接决定零点。把这些误差合成起来不校准的话整体精度能做到3%到5%就算不错了。如果系统对电流精度有更高要求就得上校准。5.2 校准方法单点校准和两点校准校准不需要复杂仪器一个精确的恒流源或者一台过得去的电子负载就够了。我一般分两步。先做单点校准。在系统零电流状态下断开负载记录ADC的输出值这个值就是零点偏移。把这个值保存到固件里运行时从ADC值里减去就完成了失调校准。再做两点校准。用一个较低电流比如0.5A记录ADC输出再用一个接近满量程的电流比如4A记录ADC输出。用这两个点求出一条线性关系实际电流 k × ADC值 b。k是增益系数b是零点偏置。把这两个参数写进固件之后每次测量都用这个公式换算精度会大幅提升。实际操作中有一个小建议两点校准选择低电流点时不要选得太小最好在满量程的10%以上否则失调波动会影响拟合结果。校准数据建议写入Flash并在产线完成而不是依赖芯片的典型参数做理论学习。5.3 几个容易让高边检流失效的操作这些年见过不少同行踩坑整理几个最典型的你直接对照排查用普通低压运放直接接高边共模芯片要么不工作要么烧坏电路上来就冒烟的情况很常见。用电阻分压把共模电压衰减后再进运放分压电阻的不匹配直接破坏CMRR而且分压本身会从采样电阻抽取电流导致测量值系统性偏差。采样电阻额定功率不足电阻过热后阻值漂移严重时直接烧断系统失去电流检测能力。INA240这类芯片的VS脚直接接12V前面强调过它的供电范围只有2.7到5.5V接12V大概率直接损坏。增益档选太大导致输出削波小电流时精度是好了但大电流时输出直接顶到电源轨电流信号被削平限流保护也跟着失效。在高dv/dt的电机驱动里用普通CSA输出毛刺严重电流波形完全不可用。如果你遇到高边检流不准或者波形异常先按这几点排查比漫无目的地换芯片效率高得多。5.4 进阶思路用MOSFET的RDS(on)做无采样电阻检流最后聊一个进阶思路。如果电流非常大比如几十安培采样电阻即使是1mΩ功耗也到了几瓦发热和压降都不可接受。这时候有一种替代方案利用功率MOSFET导通时的漏源导通电阻RDS(on)作为采样电阻通过检测VDS来间接计算电流。这个方案的结构是不需要外部采样电阻直接用MOSFET自身的导通电阻测量漏极和源极之间的压差。优点是没有额外插入损耗大电流下优势明显。很多DC-DC的逐周期限流和锂电池保护芯片内部就是用这个思路。但这个方案的缺点也很明显。RDS(on)受温度影响极大常温下有标称值温度升高后可能变化50%甚至更多还受栅极驱动电压影响不同门极电压下RDS(on)差异也很大。再加上MOSFET只有在导通期间才有有效电流信号死区时间内测量不到电流。所以它的精度天花板很低只适合做粗略的过流保护判断不适合做高精度电流计量。如果你的系统需要精确监测电流老老实实上采样电阻加专用放大芯片别在这个方案上硬省成本。在我实际测试中高边检流做到最后拼的往往不是芯片多高级而是采样电阻选型认不认真、PCB布局规不规范、校准流程有没有落地。如果你现在要开始一个新设计我的建议很直接高边检流直接上专用电流检测放大器采样电阻用合金贴片开尔文电阻布局时严格按Kelvin接法走线量产前做一次两点校准。这套组合下来电流检测部分基本不会再给你添麻烦。