news 2026/10/21 20:03:10

电压电流检测方案全解析:从电阻分压到隔离采样与霍尔传感器选型指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
电压电流检测方案全解析:从电阻分压到隔离采样与霍尔传感器选型指南

1. 电压电流检测到底在测什么

搞硬件的人绕不开一个话题:怎么把看不见摸不着的电压和电流,变成单片机或者上位机能读懂的数字化数值。这件事听起来简单,实际动手的时候坑特别多。我在实验室带过几个新人,几乎每个人第一次做电流采样都会遇到“读数跳得厉害”“零点漂移”“大电流下线性度崩了”这类问题。所以这篇内容我打算把电压检测和电流检测这两条线彻底捋一遍,从最基础的电阻分压一直讲到隔离采样和霍尔方案,把选型逻辑、参数计算、实操细节和踩坑经验都摊开来说。

不管你是刚入门的电子相关专业学生,还是做了几年嵌入式想补一补模拟前端知识的工程师,又或者是做电池管理、电机驱动、电源模块的从业者,这篇内容应该都能帮你把思路理清楚。我不会只告诉你“用运放搭个差分电路”就完事,而是会把每种方案的适用场景、精度边界、成本区间和实际调试中会遇到的问题都讲透。毕竟检测电路是整个控制环路的地基,地基没打好,后面的算法再花哨也是白搭。

先给一个全局认知:电压检测的核心思路是“把高电压按比例缩小到ADC能接受的范围”,电流检测的核心思路是“把电流转换成电压再测量”。所有方案都是围绕这两个基本逻辑在做变形和优化。理解了这一点,后面看任何电路都不会迷路。

2. 电压检测方案全拆解

2.1 电阻分压:最基础但最容易翻车

电阻分压是所有人接触电压检测的第一个方案。两个电阻一串,中间抽头接到ADC引脚,完事。原理简单到不需要解释,但实际用起来翻车率极高。

先说参数计算。假设你要测一个最高60V的电压,ADC参考电压是3.3V,那分压比就是3.3/60≈0.055。选R1=1MΩ,R2=56kΩ,分压比就是56/(1000+56)≈0.053,满量程时ADC端电压约3.18V,留了一点余量,这个设计是合理的。但问题来了:ADC输入阻抗通常只有几十kΩ甚至更低,它和R2并联之后,实际分压比就变了。很多人算完电阻值直接焊上去,发现读数偏低,就是因为忽略了这个并联效应。

解决办法有两个:一是在分压点和ADC之间加一个电压跟随器,用运放做缓冲,输入阻抗做到MΩ级别,对分压电路几乎没有影响;二是把R1和R2的阻值整体降低,比如R1=100kΩ、R2=5.6kΩ,这样ADC输入阻抗的影响就小很多,但代价是静态功耗上去了。60V加在100kΩ上,静态电流0.6mA,功耗36mW,对于电池供电的设备来说这个功耗不能忽略。

注意:分压电阻的精度直接决定检测精度。普通5%精度的碳膜电阻,分压比误差可能到10%以上。要精度至少用1%的金属膜电阻,要求更高就用0.1%的精密电阻。另外电阻的温度系数也要关注,两个电阻温漂方向不一致的话,温漂带来的误差会更大。

还有一个容易忽略的点:分压电阻的耐压。0603封装的电阻额定电压通常只有50V,0805是150V,1206是200V。你要测60V,至少用0805封装,而且R1最好用两个1206电阻串联,分摊电压应力。我见过有人用0402电阻做100V分压,上电直接炸了,电阻表面烧出一个坑。

2.2 运放差分放大:精度和灵活性的平衡

电阻分压只能测对地电压,如果要测一个浮地的电压,比如电机相电压或者桥式电路中的电压,就需要差分放大电路。经典的四电阻差分放大器结构,用一只运放加四个电阻就能实现。

这个电路的核心参数是共模抑制比和增益误差。四个电阻的匹配度决定了共模抑制比,如果电阻不匹配,共模电压会串到输出端造成误差。假设四个电阻都是1%精度,最差情况下共模抑制比大约只有40dB左右,也就是说100V的共模电压会在输出端产生1V的误差,这完全不可接受。所以差分放大电路里的电阻要么用0.1%的匹配电阻对,要么用集成好的差分放大器芯片。

集成差分放大器芯片内部电阻是激光修调过的,匹配度可以做到0.01%以下,共模抑制比轻松超过80dB。比如常见的INA系列、AD系列都有这类产品。价格比自己搭贵一些,但省心太多。我自己在做电机电流检测的时候,一开始想省成本自己搭差分电路,调了整整两天,共模抑制比怎么都上不去,后来换了集成差分放大器,一次就过了。

差分放大器的另一个关键参数是共模输入范围。有些差分放大器要求在特定的共模电压范围内工作,比如只能处理比电源正轨低1.5V以内的共模电压。如果你的被测信号共模电压很高,比如上百伏,那就不能直接用差分放大器,需要先用电阻分压把共模电压降下来,再做差分放大。这个顺序不能反,先分压再差分,否则运放直接损坏。

2.3 隔离电压检测:安全第一

涉及到市电或者高压系统的电压检测,隔离是必须的。隔离方案主要有三种:光耦隔离、电容隔离和变压器隔离。

光耦隔离的线性度是个大问题。普通光耦的电流传输比一致性很差,而且随温度变化明显,直接用来传模拟信号精度根本不够。要用线性光耦,比如那种内部有两个匹配光耦的器件,一个用来反馈补偿,一个用来传输信号。这种方案电路复杂,调试麻烦,但成本相对低。

电容隔离和变压器隔离通常集成在隔离放大器芯片里。这类芯片一边是输入侧,一边是输出侧,中间用二氧化硅电容或者微型变压器做隔离屏障,隔离电压可以做到几千伏。输入侧的模拟信号被调制到高频载波上,穿过隔离屏障后在输出侧解调还原。这种方案精度高、体积小、使用简单,缺点是价格贵,而且需要两侧独立供电。

提示:隔离放大器的输入侧供电是个容易被忽略的问题。如果输入侧和输出侧共用一个电源,那隔离就形同虚设。必须用隔离电源模块给输入侧单独供电,或者用芯片自带的隔离电源输出。这一点在布线的时候就要规划好,不然后面改板很麻烦。

2.4 电压检测的ADC选型与布局要点

检测方案定了之后,ADC的选型也很关键。逐次逼近型ADC速度快但分辨率一般,适合动态信号采集;ΔΣ型ADC分辨率高但速度慢,适合静态或缓变信号测量。如果你要测电池电压这种变化很慢的信号,用ΔΣ型ADC可以做到24位有效分辨率,测mV级别的变化都没问题。

布局方面,分压电阻要尽量靠近ADC引脚,走线要短而粗,避免引入噪声。ADC的参考电压源要干净,最好单独用一颗LDO供电,不要和数字电路共用电源。模拟地和数字地要分开走,最后在ADC下方单点连接。这些是老生常谈,但真正做到的人不多,我见过太多因为地线处理不当导致ADC读数跳动的案例。

3. 电流检测方案深度剖析

3.1 分流电阻法:最直接但最考验布局

分流电阻法是在电流回路上串一个小电阻,测量电阻两端的压降,根据欧姆定律算出电流。这是最直接、精度最高的电流检测方法,但也是最考验硬件设计功力的方案。

分流电阻的选型要考虑三个参数:阻值、功率和温度系数。阻值决定了满量程压降,通常选择让满量程压降在50mV到100mV之间。压降太小,信噪比差;压降太大,功耗高而且会影响负载正常工作。假设你要测最大10A的电流,选10mΩ的分流电阻,满量程压降就是100mV,功耗是10A×10A×0.01Ω=1W。这个功耗不小,电阻封装至少要用2512或者更大型号。

温度系数是分流电阻的核心指标。普通厚膜电阻的温度系数在100ppm/℃以上,温度变化50℃阻值就漂移0.5%,对应电流读数误差也是0.5%。要精度必须用合金电阻,温度系数可以做到50ppm/℃以下,好的能到10ppm/℃。合金电阻的价格是普通电阻的几十倍,但在这个位置上省不得。

分流电阻的布局有个经典问题:开尔文连接。电流检测走的是四线制,两根线走电流,两根线取电压信号。取信号的两根线必须从电阻焊盘的内侧引出,不能从走电流的线上分叉,否则走线上的压降会叠加到测量结果里。这个细节在原理图上体现不出来,但在PCB布局时至关重要。我见过一个设计,分流电阻焊盘上直接引出信号线,结果10A电流下走线压降贡献了5mV的误差,对应0.5A的测量偏差。

3.2 电流检测放大器:集成方案的优势

分流电阻两端的压降通常很小,需要放大后才能给ADC采集。专用电流检测放大器就是干这个的。这类芯片内部集成了差分放大电路,共模输入范围可以超过电源电压,比如电源是5V,共模输入范围可以到30V甚至更高。

选电流检测放大器要看几个关键指标:增益误差、失调电压和共模抑制比。增益误差决定了大电流下的精度,失调电压决定了小电流下的精度。失调电压尤其重要,因为分流电阻上的压降本来就小,如果放大器失调电压有1mV,对应到10mΩ电阻上就是0.1A的误差,小电流根本测不准。

双向电流检测需要放大器支持双向输出,通常输出以某个电压为基准,比如电源电压的一半。这样正电流输出高于基准,负电流输出低于基准。基准电压的精度直接影响双向检测的零点精度,所以基准源要选好的。

注意:电流检测放大器的输出通常要接一个RC低通滤波器再进ADC,截止频率根据信号带宽来定。但滤波电容不要直接接在放大器输出端,要在放大器和电容之间串一个小电阻,否则电容的容性负载可能导致放大器振荡。这个电阻一般在10Ω到100Ω之间,具体看放大器的容性负载能力。

3.3 霍尔电流传感器:非接触式检测

霍尔电流传感器利用霍尔效应,通过检测电流产生的磁场来间接测量电流。最大的优势是非接触,不需要断开电路,也没有分流电阻的功耗问题。

霍尔传感器分开环和闭环两种。开环方案简单便宜,但精度受温度影响大,线性度一般在1%左右。闭环方案内部有补偿绕组,精度可以做到0.1%甚至更高,但价格贵、体积大、功耗也高。

霍尔传感器的响应带宽通常比分流电阻方案窄,普通霍尔传感器带宽只有几十kHz,适合测直流和低频交流。如果要测高频电流,比如开关电源的电流波形,霍尔传感器就跟不上了,还是得用分流电阻加高速放大器。

还有一个实际问题:霍尔传感器对磁场干扰敏感。如果附近有变压器、电感或者大电流走线,外部磁场会直接影响测量结果。安装时要远离这些干扰源,必要时加磁屏蔽罩。我在一个电机控制器项目里用过霍尔传感器,一开始读数总是偏,后来发现是旁边的一根大电流母线产生的磁场干扰,把传感器转了个方向就好了。

3.4 电流互感器:交流电流检测的专用方案

电流互感器只能测交流,原理和变压器一样,一次侧串在电流回路里,二次侧感应出按比例缩小的电流。优点是隔离、无功耗、成本低,缺点是只能测交流,而且低频响应差。

电流互感器的选型主要看变比和精度等级。变比决定了二次侧电流大小,通常选让二次侧电流在额定值时接近但不超过额定负载电流。比如100A/5A的互感器,一次侧100A时二次侧5A,接一个1Ω的采样电阻就能得到5V电压。

电流互感器有个危险工况:二次侧开路。一次侧有电流时,如果二次侧开路,二次侧会感应出极高的电压,可能击穿绝缘甚至危及人身安全。所以电流互感器的二次侧绝对不能开路,接线时要确保采样电阻可靠连接,或者用短路端子短接。

4. 从模拟到数字:ADC采集与数据处理

4.1 ADC选型的关键参数

电压电流检测最终都要落到ADC上。选ADC的时候,分辨率、采样率、输入范围和接口类型是四个核心参数。

分辨率决定了能分辨的最小变化。12位ADC在3.3V满量程下的最小分辨电压是3.3V/4096≈0.8mV。如果你用10mΩ分流电阻,0.8mV对应0.08A的电流分辨率。要测更小的电流就需要更高分辨率的ADC,或者增大分流电阻阻值,或者加一级放大器。

采样率决定了能捕捉多快的信号变化。根据奈奎斯特采样定理,采样率至少是被测信号最高频率的两倍。但实际工程中通常取5到10倍,因为还需要考虑抗混叠滤波器的过渡带。测电池电压这种缓变信号,采样率1kHz都嫌多;测电机相电流,采样率至少要几十kHz。

输入范围要和前级电路的输出范围匹配。如果前级输出0到3.3V,ADC输入范围也是0到3.3V,那正好。如果前级输出有负电压,要么用双极性ADC,要么在ADC前加偏置电路把负电压抬到正电压范围。

4.2 采样时序与滤波处理

ADC采样不是瞬间完成的,内部采样保持电容需要充电时间。如果前级电路的输出阻抗太高,采样保持电容充不满,读数就会偏低。所以ADC数据手册里都会标注最大输入阻抗,超过这个值就需要加缓冲器。

软件滤波是提高读数稳定性的常用手段。最简单的滑动平均滤波,取最近N次采样的平均值。N越大越稳定,但响应越慢。对于电池电压这种慢变信号,N取32甚至64都没问题;对于电流环控制,N取4到8就够了,再大就会影响控制带宽。

中值滤波适合去除脉冲干扰。连续采N次,去掉最大值和最小值,剩下的取平均。这种方法对偶发的尖峰噪声特别有效,比如电机换向时产生的电流尖峰。我通常会把中值滤波和滑动平均结合起来用,先中值去尖峰,再平均平滑。

提示:ADC的参考电压噪声直接影响测量精度。如果参考电压有10mV的噪声,12位ADC的读数就会有十几个字的跳动。参考电压源要选低噪声的,输出端并一个10μF钽电容加一个0.1μF陶瓷电容,能显著改善噪声表现。

4.3 校准方法与零点漂移处理

任何检测电路都有误差,校准是绕不开的环节。校准分两点校准和单点校准。两点校准是在零点和满量程点各测一次,算出增益误差和失调误差,然后在软件里做线性补偿。单点校准只测零点,修正失调误差,增益误差靠器件精度保证。

零点漂移是电流检测中最头疼的问题。运放的失调电压随温度变化,分流电阻的温漂,ADC的零点漂移,这些因素叠加起来,零点可能漂移几十个字。处理办法有几种:一是选低温漂器件,从源头减少漂移;二是定期校准零点,比如每次上电时测一次零点;三是用斩波稳零运放,失调电压可以做到μV级别。

我在一个电池管理项目里遇到过零点漂移问题。设备在常温下校准好,放到高温环境里零点漂了0.5A。后来换了低温漂运放,又把分流电阻换成合金电阻,漂移降到了0.05A以内。这个教训告诉我,电流检测的精度瓶颈往往不在ADC,而在模拟前端的温漂。

5. 实操案例:一个双向电流检测电路的设计过程

5.1 需求分析与方案选型

假设要设计一个电机驱动器的电流检测电路,需求如下:最大电流20A,双向检测,精度要求1%以内,带宽至少10kHz,成本控制在合理范围。

分流电阻方案最合适。20A电流选1mΩ分流电阻,满量程压降20mV,功耗0.4W。1mΩ的合金电阻,2512封装,温度系数50ppm/℃,满足要求。电流检测放大器选双向型,增益50倍,满量程输出1V,失调电压小于100μV。ADC用12位,采样率100kHz,满足10kHz带宽要求。

5.2 电路参数计算与器件选型

分流电阻:1mΩ,2512封装,合金材质,精度1%,温度系数50ppm/℃。功耗校核:20A×20A×0.001Ω=0.4W,2512封装额定功率1W,降额使用没问题。

电流检测放大器:增益50V/V,双向输出,输出基准为电源电压的一半即1.65V。满量程正电流时输出1.65V+1V=2.65V,负电流时输出1.65V-1V=0.65V,都在0到3.3V范围内。

ADC:12位,参考电压3.3V,最小分辨电压0.8mV。对应电流分辨率0.8mV/(50×0.001Ω)=0.016A,满足要求。

抗混叠滤波器:截止频率设为20kHz,比信号带宽高一倍。放大器输出串100Ω电阻,对地接100nF电容,截止频率1/(2π×100×100e-9)≈16kHz,接近目标值。

5.3 PCB布局与调试记录

布局要点:分流电阻放在电机电流回路的最近处,开尔文连接信号线从焊盘内侧引出。电流检测放大器紧靠分流电阻放置,信号走线尽量短。放大器输出到ADC的走线远离功率走线,避免耦合噪声。模拟地和功率地分开,在ADC下方单点连接。

调试过程:上电后先测放大器输出,零电流时应该是1.65V。实测1.648V,偏差2mV,对应电流偏差0.04A,可以接受。然后加10A负载,输出应该是1.65V+0.5V=2.15V,实测2.142V,偏差8mV,对应电流偏差0.16A,误差0.8%,满足1%要求。

问题记录:一开始ADC读数跳动很大,峰峰值有20个字。检查发现是放大器输出到ADC的走线太长,而且和PWM走线平行了一段。重新布线后跳动降到5个字以内。另外发现高温下零点漂移明显,后来在软件里加了上电零点校准,问题解决。

6. 常见问题与排查技巧实录

6.1 读数跳动大怎么办

读数跳动是最常见的问题。排查顺序如下:先用示波器看放大器输出,确认是模拟端噪声还是ADC端噪声。如果模拟端就有噪声,检查电源纹波、地线布局和滤波电容。如果模拟端干净但ADC读数跳,检查参考电压噪声和ADC采样时序。

常见原因和解决办法:

现象可能原因解决办法
读数随机跳动电源噪声耦合加LC滤波,模拟电源单独LDO供电
读数周期性跳动PWM干扰远离PWM走线,加屏蔽,调整采样时刻避开开关瞬间
读数随温度漂移器件温漂换低温漂器件,加软件温度补偿
读数随负载变化地线压降开尔文连接,分离模拟地和功率地

6.2 小电流测不准怎么破

小电流测不准的根本原因是失调电压和噪声。失调电压决定了零点附近的死区,噪声决定了最小可分辨信号。解决办法:选低失调运放,比如斩波稳零运放,失调电压可以做到10μV以下;增大分流电阻阻值,但要注意功耗和压降;加软件滤波,降低噪声带宽。

还有一个技巧:如果只需要测小电流,可以用两级放大。第一级增益不要太高,避免饱和;第二级再放大,同时加高通滤波去掉直流失调。这样小信号被放大到ADC满量程附近,分辨率大幅提升。

6.3 高压侧检测和低压侧检测怎么选

低压侧检测是把分流电阻放在负载和地之间,共模电压接近地,电路简单。但缺点是破坏了负载的接地,可能引入地环路问题,而且无法检测负载短路到地的故障。

高压侧检测是把分流电阻放在电源和负载之间,共模电压接近电源电压,需要电流检测放大器支持高共模输入。优点是负载可以可靠接地,能检测短路故障。缺点是电路复杂,成本高。

选择原则:如果负载可以浮地,优先用低压侧检测,简单便宜。如果负载必须接地,或者需要检测短路故障,用高压侧检测。电机驱动通常用高压侧检测,因为电机外壳通常接地,低压侧检测会破坏接地。

6.4 隔离检测的供电问题

隔离放大器的输入侧供电是个容易被忽略的坑。很多人以为隔离放大器芯片内部会生成输入侧电源,实际上大多数隔离放大器需要外部提供输入侧电源。如果输入侧和输出侧共用一个电源,隔离屏障就被短路了,隔离功能失效。

解决办法:用隔离电源模块给输入侧供电,比如5V转5V的隔离电源,隔离电压要高于系统要求的隔离等级。或者用带隔离电源输出的隔离放大器,这类芯片内部集成了微型变压器,可以从输出侧取电传到输入侧,省掉外部隔离电源。

注意:隔离电源模块的隔离电压和隔离放大器的隔离电压要匹配。如果隔离电源只有1kV隔离,而隔离放大器有5kV隔离,那系统的隔离等级只有1kV。另外隔离电源的耦合电容会影响共模瞬态抗扰度,选型时要关注这个参数。

7. 器件选型对照与成本考量

不同应用场景对电压电流检测的要求差异很大,选型时要在精度、成本、体积和复杂度之间做权衡。下面这张表是我根据实际项目经验整理的对照参考。

方案精度成本隔离适用场景
电阻分压中极低无低压对地电压检测
差分放大中高低无浮地电压检测
隔离放大器高高有高压安全隔离检测
分流电阻+电流检测放大器高中无低压侧/高压侧电流检测
霍尔传感器中中高有大电流非接触检测
电流互感器中低有交流电流检测

成本方面,电阻分压方案几毛钱就能搞定,差分放大方案几块钱,隔离放大器和霍尔传感器要几十块甚至上百块。选型时不要盲目追求高精度,够用就行。很多应用1%的精度就足够了,没必要花十倍成本做到0.1%。

我个人在实际操作中的体会是,电压检测的难点在布局和地线处理,电流检测的难点在器件选型和温漂控制。把这两个难点解决了,整个检测电路就稳了。另外,不管什么方案,校准环节都不能省,再好的器件也有误差,软件校准是最后一道防线。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/21 20:00:57

12位并行R-2R乘法DAC AD7945原理、时序与实战设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/21 20:00:21

AI重构嵌入式框架实战:从全局变量到结构体封装的架构演进

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/21 20:00:14

ESO+无模型预测电流控制:PMSM参数失配与扰动抑制实战方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/21 19:58:18

MCP协议详解:模型上下文协议架构与AI工具集成实践

如果你最近在做AI应用集成,或者只是随手配置过几款带智能功能的开发工具,大概率已经碰到过“MCP”这个词。它不是什么产品代号,而是模型上下文协议(Model Context Protocol)的缩写,一个针对大模型与外部数据…

作者头像 李华
网站建设 2026/10/21 19:58:14

Java内存模型JMM深度解析:从底层原理到并发实战

1. 为什么每本Java书都躲不开JMM 做Java开发多年,一开始我对并发编程的认知基本停留在"用synchronized加锁、用volatile修饰共享变量"这种操作层面。真正被逼着去啃JMM(Java Memory Model,Java内存模型),是在…

作者头像 李华