做过电源、电机驱动或者电池管理的人,一定绕不开电流检测。测电流的方法无非就那么几种,但如果你需要在负载不接地的情况下测电流,那就必须上High-Side Current Sensing(高边电流检测)。这些年我经手过的板子,不管是做无刷电机的相线电流采样,还是做电池包的充放电监控,几乎都用了高边方案。今天就把这个技术从原理到实操彻底聊透,包括你可能会踩的坑。
1. 高边电流检测的整体设计思路
1.1 什么是高边电流检测,为什么非用它不可
电流检测有两种基本位置:一种是“低边”(Low-Side),把采样电阻串联在负载和地之间;另一种就是“高边”(High-Side),采样电阻串联在电源正极和负载之间。这两种位置决定了截然不同的设计难度。
低边检测最简单,采样电阻两端对地电压都接近0V,用普通的运算放大器就能处理,成本低、实现容易。但它有一个非常致命的缺点:采样电阻上的压降直接把负载的地电位抬高了,这就破坏了系统里的“公共地”。如果你的系统中还有其他电路需要和负载共用参考地,低边检测就会导致逻辑电平错乱,甚至在电机控制或者通信电路里产生严重的共模干扰。
高边检测就没有这个问题,采样电阻在电源端,负载依然可以可靠接地。这对汽车电子、工业控制这类对安全要求极高的场景尤其重要,因为负载的一端直接接底盘地,你不可能为了测个电流把它断开。
高边检测的难点在于采样电阻两端的电压,它的共模电压非常高。例如在48V系统中,采样电阻两端的电压可能都在45V到48V之间,你需要的只是在几百毫伏甚至几十毫伏的差分电压里提取出电流信号。要用普通运放做这件事,需要对共模电压有极强的抑制能力,这正是高边电流检测放大器这类专用芯片存在的意义。
1.2 方案选型背后的逻辑:通用运放、集成检测放大器与数字检测芯片
做高边检测的时候,很多人第一反应是“我直接用个运放搭一个差分放大电路不就行了”,这个思路本身没错,但真做起来会有一堆麻烦事。设计得当的分立方案性能非常好,但需要精心选型和调试;集成的高边检测放大器则省心得多,几乎不需要额外的电路设计;而数字电流检测芯片则直接输出数字信号,连ADC都省了。选哪个方案完全看你的项目需求——精度要求、成本预算、PCB面积以及研发时间都是决定因素。
我在做量产产品时,除非是极低成本、极高批量的消费类产品,否则几乎不会选择分立方案。不是说分立方案做不出来,而是调试成本太高了。现在主流的高边电流检测芯片,比如TI的INA240、INA281,或者ADI的AD8210,内部集成了精密的电阻网络和放大器,共模抑制比(CMRR)能做得很高,从几十倍到上百倍于普通运放,而且温漂极小。你只需要选好增益、算好限流电阻,布好板,基本一次就能跑通。
2. 核心细节解析与实操要点
2.1 采样电阻的选择,不是随便放一个就行的
高边检测的第一个核心元件是分流电阻。这个电阻的性能直接决定了整个测量系统的精度,它的选择有几个关键指标。
首先是电阻值。电阻值越大,在同等电流下产生的压降就越大,信号越强,信噪比越高。但电阻值太大,又会带来两个问题:一是功耗直线上升,二是电阻上的压降会降低负载端的实际供电电压。比如一个5mΩ的电阻流过20A电流,压降是100mV,功耗是2W;如果你用500mΩ,压降就变成10V,这显然不行。所以电阻值的选择通常要兼顾灵敏度和压降预算。对于大多数应用,在大电流路径上,电阻值选择在0.1mΩ到10mΩ之间比较常见,小电流场景则可以用几百毫欧。
其次是电阻的材质。电流检测电阻要求低温度系数(TCR),一般要小于50ppm/°C,好的能做到15ppm/°C甚至更低。普通的贴片电阻温度系数可能高达几百ppm/°C,这意味着温度变化几十度,电阻值就可能漂移百分之几,测量精度根本没法保证。常见的合金电阻(如锰铜、康铜)、金属箔电阻是首选。
还有非常容易被忽略的一点:电阻的焊盘和引线也会产生额外的电阻,这些“寄生电阻”同样会进入采样回路,导致测量误差。在做精密测量时,必须用开尔文四线制接法,也就是专门用两根独立的走线将采样电阻两端的电压引到放大器输入端,避免大电流流过走线产生的压降叠加到信号上。
2.2 运放的共模抑制比是核心中的核心
高边检测场景里,输入信号有两个特征:极高的共模电压和极小的差分电压。如果使用普通运放搭建差分放大电路,运放的共模抑制比(CMRR)就决定了你能达到的精度上限。
举个实际例子,假设你的电源电压是24V,采样电阻上的满量程差分电压是100mV,你需要将整个24V的共模电压全部抑制掉,才能准确放大100mV的信号。普通运放CMRR是60dB到80dB,在共模输入24V时,折算到输入的误差可能达到几个毫伏甚至几十毫伏,直接就把100mV的信号淹没掉了。而专用的高边电流检测放大器,CMRR通常能做到100dB以上,甚至120dB,这样同样的24V共模输入下,误差只有微伏级别,整套系统精度可以稳定在1%以内。
如果你是坚持用分立方案,那就必须用仪表放大器或者采用隔离式放大器或者差分运放,并且需要做严格的电阻比例匹配。其实“严格匹配”这个词听起来简单,实际做到非常难。最好的办法就是选用厂商标定好的集成方案——内部激光微调过的电阻网络,精度在0.01%级别,你再用分立电阻去追,很难追得上。
2.3 增益计算与输出摆幅细节
高边电流检测放大器的增益是固定的,常见的有20V/V、50V/V、100V/V等几个档位。选择增益的时候,要根据ADC的输入范围来反向推算。
比如你选了一颗10mΩ的采样电阻,被测电流最大10A,那么满量程差分电压就是100mV。如果ADC的参考电压是3.3V,那么放大器的增益选20V/V就够了,因为100mV乘以20等于2V,在ADC的量程范围内,又能留出一定的余量。如果你选了50V/V,满量程输出就是5V,远超3.3V,ADC直接饱和,这种情况下你需要把电阻改小或者降低增益。
这里有一个实操中的“坑”:很多数据手册里标注的增益精度很高,但实际输出在接近正电源轨或负电源轨时会进入非线性区。也就是说,你算出来的满量程电压如果是3V,而放大器供电是3.3V,实际输出到2.8V左右可能就已经“顶到天花板”了,完全没法保持线性。所以我一般会让满量程输出在供电电压的70%到80%以内,留足余量,这也是为什么上面例子里2V的输出幅值其实比3.3V更合理的原因。
3. 实操过程与核心环节实现
3.1 方案一:集成高边电流检测放大器(最推荐)
如果你接手一个项目,首要目标是快速实现、稳定运行,我建议直接用集成方案。下面以TI的INA240为例,讲一下从选型到出结果的全过程。
选型时,首先根据系统共模电压范围确定芯片。INA240的共模输入范围是-4V到80V,适用于绝大多数电源和电机驱动场景。如果是更高电压的工业电机母线或者电动车电池包,可能需要选隔离式电流放大器,比如AMC1300系列。
确定好芯片之后,接一个三线制负载电路:电源正极进采样电阻,采样电阻另一端接负载,采样电阻两端各引一根细线到芯片的IN+和IN-。芯片的OUT引脚直接连MCU的ADC,无需额外放大电路。
最关键的一步是选择增益档位。INA240有多个版本,A1是20V/V,A2是50V/V,A3是100V/V。我常使用的A2版本配合10mΩ采样电阻,量程就是0到2A对应0到1V输出,非常适合小电流精密测量。如果测大电流,如30A的电机驱动,2.5mΩ采样电阻配合A1档,满量程差分电压75mV,输出1.5V,非常合适。
整个电路原理图大概10个元件以内就能画完,外围只需要处理电源去耦电容和输入端的RC滤波。驱动长线负载时,输入端串联100Ω电阻能有效抑制振铃。
3.2 方案二:分立差分运放方案(适合学习和低成本)
如果你只是做概念验证、或者批量成本压力很大,需要一个非常便宜的高边检测方案,分立方案仍然值得了解一下。典型电路是两个电阻分压加一个运放差分放大。
具体实现上,我建议至少在差分输入端加一级RC低通滤波,截止频率不要太高,通常500kHz到1MHz就够用了。因为电流信号变化速度远没有开关噪声快,过高的带宽只会把开关噪声和振铃引进ADC。
3.3 方案三:数字电流检测芯片(简化系统设计)
如果不想用模拟信号,直接上数字电流检测芯片,比如I2C接口的INA219、INA226,或者SPI接口的电流传感器。这些芯片有的内部集成采样电阻,有的需要外接,但共同点是直接输出数字电流值,MCU直接读取寄存器就行。
我要提醒的是,数字检测芯片的采样率通常不高,INA226大概能做到每秒上千次采样,但对于FOC电机控制这样的高速应用是不太够的,这类场景还是需要模拟信号直接进MCU的ADC。数字方案更适合电池电量监测、电源系统状态监控这类不需要超高实时性的应用。
4. 常见问题与排查技巧实录
4.1 问题一:测量电流整体偏高或偏低
这是最多人碰到的现象。如果你的系统用的是集成检测放大器,排除芯片本身损坏的可能后,首先要检查采样电阻的阻值是否准确。很多标称5mΩ的采样电阻实际误差可能有±1%,在只校准增益的系统中会直接反映到输出里。
另一个更隐蔽的原因是PCB走线电阻。我见过一块板子,采样电阻旁边就是大电流走线,两个过孔之间的铜箔电阻也能有个零点几毫欧,这在20A电流下就是几十毫伏的误差,直接被放大器完完整整地放大了。此时必须检查开尔文连接是否从采样电阻中心点引线,而不是从焊盘的边缘引线。
4.2 问题二:空载时有非零读数
这在高边检测中很常见,特别是在环境比较恶劣的工业现场。空载时电流应该是0A,但ADC读数显示在0.5A甚至更高,最常见原因是输入端存在偏置电流或失调电压。
对集成放大器来说,失调电压(Vos)往往被标在数据手册里,一般在几十微伏到几百微伏之间。如果你的采样电阻只有1mΩ,那么100μV的失调电压就意味着100mA的误差。这在小电流测量时是完全不可接受的。解决办法是选择低失调的芯片型号,或者在软件里做零点校准——系统上电后、负载未开启时,先记录一次ADC读数作为偏置,在后续测量中减去。
4.3 问题三:输出信号毛刺大、波动剧烈
如果你测的是电机供电电流,输出波形毛刺大是常态。电机是强感性负载,PWM开关瞬间会在采样电阻上产生极高的dv/dt和di/dt,这些尖峰会通过寄生电容耦合到放大器的输入端,在输出端形成毛刺。
解决思路有三个方向:一是降低放大器带宽,用RC低通滤波把高频分量滤掉;二是在输入端加一个共模滤波电容,直接滤除高频共模噪声;三是优化PCB布局,让采样电阻到放大器的走线尽量短、尽量直,避免形成环天线。
4.4 问题四:放大器输出总是满幅
这种故障通常意味着放大器已经饱和,实际输入信号超出了线性范围。此时优先确认采样电阻的压降是否在芯片允许的范围内,特别是瞬态电流尖峰是否超过设计值。电机的启动电流往往是额定电流的好几倍,如果设计时没考虑到,瞬态压降就可能击穿芯片的输入级。
另外还有一个常见的原因:芯片输入引脚接反了。IN+和IN-接反,输出会直接反相,如果不小心输出低电平,看起来像满幅输出,其实是接反了。
5. 实操中的几点个人体会
多说几句我在实际项目中沉淀下来的经验。第一,PCB布局在高边电流检测中占了至少一半的成败。采样电阻到放大器的走线,必须走差分线,并且尽量紧贴在一起;下方尽量保持完整的参考地平面,减少环路面积。第二,焊接采样电阻时,注意不要用太厚的焊锡,否则焊锡本身的电阻也会引入误差。第三,如果你做的是车载或者工业产品,务必在采样电阻两端并联一个小电容,比如100pF到1nF,防止高频电磁干扰进入检测环路。
关于高边电流检测的应用场景,其实远不止我上面提到的电机和电池。只要是涉及电源管理、DC-DC转换器输出监测、光伏逆变器、通信基站供电的设备,几乎都能用到。想深入的朋友,强烈建议去仔细读一读TI或者ADI的电流检测放大器数据手册,尤其是其中关于输入共模范围的说明和典型应用电路图,这对理解这个技术非常有帮助。