1. 电压电流检测到底在测什么
搞硬件的人绕不开一个话题:怎么把看不见摸不着的电压和电流,变成单片机或者上位机能读懂的数字化信号。这件事听起来简单,但实际做起来,从毫伏级的小信号到几百安培的大电流,从直流到高频交流,从实验室的精密测量到工业现场的强干扰环境,每一种场景对检测方法的要求都不一样。我自己在电源开发、电机控制、电池管理这几个方向上都踩过不少坑,有些坑是选错了方案,有些坑是电路布局没做好,还有些坑纯粹是对原理理解不到位导致参数算错。
这篇文章面向的是做嵌入式硬件、电源设计、电机驱动、电池管理系统以及测试测量的工程师,也适合电子相关专业的学生作为参考。我会把电压检测和电流检测分开来讲,每种方法都从原理、电路实现、参数计算、适用场景、注意事项几个维度展开,尽量做到看完就能动手搭电路、算参数、选器件。文章里涉及的具体数值和器件型号都是基于常见工程实践给出的参考,实际项目中需要根据具体需求调整。
先说一个核心认知:电压检测的本质是把一个可能很高或者很微弱的电压信号,通过分压、放大、隔离等手段,变换到ADC(模数转换器)能够接受的范围内。电流检测的本质则是把电流通过某种物理效应转换成电压信号,再对这个电压信号进行处理。所以电流检测的最后一环往往还是电压检测,两者在信号链的末端是统一的。
注意:所有检测方案的选择都要先明确三个指标——测量范围、精度要求、带宽需求。这三个指标决定了你能用什么样的方案,而不是反过来先选方案再凑指标。
2. 电压检测的常见方法拆解
2.1 电阻分压法:最基础但最容易翻车
电阻分压是电压检测里最直观的方法,两个电阻串联,从中间取电压,送到ADC。原理简单到不需要解释,但实际用起来翻车的人不在少数。
先算参数。假设你要测一个最高60V的直流电压,ADC的参考电压是3.3V,那么分压比就是60/3.3≈18.2。选R1(上端)和R2(下端),分压比=R2/(R1+R2)=1/18.2。如果选R2=10kΩ,那么R1≈172kΩ,取标准值169kΩ或者180kΩ。这时候要验证一下实际分压比和最大ADC输入电压,确保不会超过参考电压。
但问题来了:电阻的精度直接影响测量精度。1%精度的电阻,分压比误差最坏情况可能到2%。如果要求精度高于1%,要么用0.1%的电阻,要么在软件里做校准。还有一个容易被忽略的点是电阻的温度系数。普通厚膜电阻的温度系数在100ppm/℃左右,如果工作温度变化50℃,阻值变化0.5%,测量结果就偏了0.5%。精密场合要用低温漂电阻,比如25ppm/℃甚至更低的。
另一个大坑是ADC输入阻抗。很多ADC的输入阻抗不是无穷大,比如某些SAR ADC在采样阶段会有一个等效的输入电容和开关电阻。如果分压电阻选得太大,比如几百kΩ,ADC采样时会把分压点的电压拉低,导致测量值偏小。解决办法是在分压点和ADC之间加一个电压跟随器,用运放做缓冲。运放选低输入偏置电流的,比如输入偏置电流在pA级别的CMOS运放。
还有一个实际布线的问题。分压电阻靠近ADC放置,走线尽量短。如果分压点走线很长,容易引入噪声。可以在分压点对地加一个小电容,比如100nF,做低通滤波。但电容太大会影响响应速度,需要根据信号带宽来选。
实操心得:分压电阻的功耗也要算。60V加在180kΩ+10kΩ上,电流约0.316mA,上端电阻功耗约18mW,选0603封装就够了。但如果测的是300V,同样的阻值下功耗会大很多,需要选更大封装的电阻或者增大阻值。
2.2 运放放大法:小信号检测的利器
当被测电压很小,比如毫伏级,直接送ADC分辨率不够,就需要用运放放大。最常见的两种电路是同相放大和差分放大。
同相放大适合单端信号,增益=1+Rf/Rin。比如你要测一个0到10mV的信号,放大到0到3V,增益需要300倍。单级运放做300倍增益不是不行,但带宽会严重下降,而且噪声也会被放大。更合理的做法是两级放大,每级增益约17倍,这样每级的带宽压力小很多。
差分放大适合需要抑制共模干扰的场景,比如测一个浮地的电压或者电桥的输出。标准差分放大电路用四个电阻,增益=Rf/Rin,但要求电阻匹配度很高。如果电阻不匹配,共模抑制比会急剧下降。比如四个电阻都是1%精度,最坏情况下共模抑制比可能只有40dB左右。要获得更好的共模抑制比,要么用集成差分放大器(内部电阻激光修调过),要么用仪表放大器。
仪表放大器是差分放大的升级版,输入阻抗极高,共模抑制比很好,增益通过一个外部电阻设定。比如AD620系列,增益范围1到10000,共模抑制比在增益100时能达到100dB以上。但仪表放大器也有缺点:带宽通常不高,而且价格比普通运放贵不少。选型时要看信号带宽,如果信号频率超过仪表放大器的带宽,输出会衰减。
运放电路的布局也很关键。反馈电阻和输入电阻要靠近运放引脚,走线对称。如果是差分输入,两条输入路径的走线长度和寄生电容要尽量一致,否则会破坏共模抑制比。电源引脚要加去耦电容,通常是一个100nF陶瓷电容加一个10μF钽电容,放在运放电源引脚附近。
注意:运放的失调电压会被放大同样的倍数。如果增益是300倍,运放本身的失调电压是1mV,输出端就会有一个300mV的直流偏置。对于小信号检测,要选低失调电压的运放,比如失调电压在几十μV级别的精密运放。或者用软件校准,在已知输入为零时测出输出偏置,后续减掉。
2.3 隔离检测:安全与抗干扰的平衡
在很多工业场合,被测电压和测量电路之间需要电气隔离。比如市电电压检测、电机相电压检测,如果不隔离,高压可能窜入低压电路,烧毁器件甚至危及人身安全。隔离检测的方案主要有三种:光耦隔离、电容隔离、磁隔离。
光耦隔离是最传统的方案。线性光耦比如HCNR201,内部有一个发光二极管和两个光电二极管,一个用于反馈,一个用于输出,通过反馈维持线性度。电路设计上需要两个运放,一个驱动发光二极管,一个处理反馈信号。线性光耦的精度可以做到0.1%左右,但带宽通常只有几十kHz,而且发光二极管会老化,长期稳定性一般。
电容隔离的方案比如ISO124系列,内部用调制解调的方式通过电容传输信号。精度和带宽都比光耦好,但需要外部提供隔离电源。磁隔离的方案比如基于变压器的隔离放大器,带宽可以做到很高,但电路复杂,成本也高。
选择隔离方案时,首先要确定隔离耐压等级。比如220V交流系统,通常要求隔离耐压至少2500VAC。其次要确定信号带宽,如果只是测工频电压,带宽要求不高,光耦方案就够用。如果要测PWM波形,带宽要求高,就得选电容或磁隔离方案。最后要考虑隔离电源的来源,隔离放大器通常需要双电源供电,而且隔离侧的电源必须也是隔离的。
实操心得:隔离器件的布局要特别注意爬电距离和电气间隙。PCB上隔离带两侧的走线要保证足够的间距,通常按照安规要求,2500VAC对应至少5mm的爬电距离。如果空间不够,可以在PCB上开槽增加爬电距离。
2.4 电压检测的校准与软件处理
不管用什么硬件方案,软件校准都是提高精度的关键一步。校准的基本思路是:给两个已知的输入电压,记录ADC读数,然后拟合出一条直线,得到增益和偏置。
具体操作:先用一个高精度的电压源,输出接近量程下限的电压,比如满量程的10%,记录ADC值。再输出接近量程上限的电压,比如满量程的90%,记录ADC值。然后用这两组数据算出增益和偏置,写入EEPROM或者Flash。实际测量时,用ADC原始值乘以增益再加上偏置,得到校准后的电压值。
如果要求更高,可以做多点校准,比如5点或10点,然后用最小二乘法拟合。这样可以补偿非线性误差。但大多数情况下,两点校准已经能把精度提高到接近ADC本身的分辨率极限。
软件滤波也是常用的手段。最简单的就是多次采样取平均,比如连续采16次,去掉最大值和最小值,剩下的取平均。这样能有效抑制随机噪声。如果信号变化很慢,可以用一阶低通滤波,公式是:Y(n)=α*X(n)+(1-α)*Y(n-1),α越小滤波效果越强但响应越慢。α的选取要根据信号带宽和噪声水平来权衡。
还有一个细节是ADC的参考电压。如果参考电压本身不准,所有测量都会偏。可以用一个高精度的基准源,比如REF3033,输出3.3V,精度0.05%,温漂25ppm/℃。基准源的输出要加滤波电容,并且远离发热器件。
3. 电流检测的核心方案与选型逻辑
3.1 分流电阻法:最直接但最考验布局
分流电阻法是在电流路径上串一个小电阻,测量电阻两端的压降,根据欧姆定律算出电流。这是最直接的方法,精度高、线性度好、成本低,但有一个致命问题:分流电阻会消耗功率,而且会引入额外的压降。
先算分流电阻的值。假设你要测最大10A的电流,允许的分流压降是100mV,那么分流电阻=100mV/10A=10mΩ。功耗=10A×10A×10mΩ=1W。这个功耗不小,需要选功率足够的电阻,比如2512封装或者更大。如果允许的压降更小,比如50mV,电阻就是5mΩ,功耗降到0.5W,但信号也更小,对放大器和ADC的要求更高。
分流电阻的选型有几个关键参数:阻值精度、温度系数、功率额定值、寄生电感。阻值精度通常选0.5%或0.1%,温度系数选50ppm/℃以下。功率额定值要留至少50%的余量,比如算出来1W,选2W的电阻。寄生电感在测高频电流时影响很大,要选低电感的电阻,比如四端子电阻或者金属箔电阻。
分流电阻的布局是成败的关键。首先,分流电阻要放在电流路径上,但测量引线要从电阻的焊盘内侧引出,不能从外侧引出,否则会引入焊点和走线的电阻。这就是所谓的开尔文连接。其次,测量引线要尽量短,并且对称,两条引线走在一起,减少环路面积,降低磁场干扰。再次,分流电阻附近不要放发热器件,否则温度梯度会导致电阻值变化。
放大器的选择也很重要。因为分流电阻两端的压降很小,通常需要放大。放大器要选低失调电压、低失调电压温漂、低输入偏置电流的。比如INA240系列,专门为电流检测设计,失调电压在±25μV以内,温漂0.5μV/℃。如果测的是双向电流,要选支持双向测量的放大器,或者用两个放大器分别放大正负方向的信号。
注意:分流电阻法不适合测很大的电流,比如几百安培。因为功耗太大,电阻体积也太大。这种情况下要考虑霍尔传感器或者电流互感器。
3.2 霍尔电流传感器:非接触式测量的主力
霍尔电流传感器利用霍尔效应,通过检测电流产生的磁场来测量电流。最大的优点是非接触、隔离、可以测大电流。缺点是精度不如分流电阻,而且受温度影响较大。
霍尔传感器分两种:开环和闭环。开环霍尔传感器结构简单,成本低,但精度和线性度一般,温漂也大。闭环霍尔传感器内部有一个补偿绕组,通过反馈维持磁芯的零磁通,精度和线性度都好很多,但成本高、体积大。
选型时要看几个参数:测量范围、精度、带宽、响应时间、隔离耐压。比如测100A的电流,可以选量程150A的闭环霍尔传感器,精度0.5%,带宽100kHz。如果只是测工频电流,带宽要求不高,开环的也够用。
霍尔传感器的安装也有讲究。被测电流的导线要穿过传感器的孔径,尽量居中,否则磁场分布不均匀会影响精度。如果测的是差分电流,比如电机的两相电流,可以用两个传感器分别测,然后软件算第三相。或者用三合一传感器模块,内部集成三个霍尔元件。
霍尔传感器的输出通常是电压或者电流信号。电压输出的直接接ADC,电流输出的需要接一个采样电阻转换成电压。电流输出的抗干扰能力更强,适合长距离传输。
实操心得:霍尔传感器附近不要放磁性材料,否则会干扰磁场分布。安装时要注意方向,电流方向反了输出也会反。如果测的是交流电流,要注意传感器的带宽是否覆盖你的频率范围。
3.3 电流互感器:交流电流检测的经典方案
电流互感器本质上是一个变压器,初级串联在电流路径上,次级输出一个与初级电流成比例的电流信号。只能测交流,不能测直流。优点是隔离、精度高、可以测很大的电流。缺点是体积大、有相位差、不能测直流分量。
选型时要看变比、精度等级、额定电流、负载电阻。比如一个1000:1的电流互感器,初级额定电流100A,次级输出100mA。次级接一个50Ω的采样电阻,输出电压就是5V。采样电阻的值要算好,不能太大,否则会饱和;也不能太小,否则信号太弱。
电流互感器的相位差在功率测量中很重要。如果相位差太大,有功功率的计算会偏。精密场合要选相位差小的互感器,或者用软件补偿。补偿的方法是在不同电流和功率因数下测出相位差,做成查找表,实际测量时查表补偿。
电流互感器的次级不能开路。如果开路,次级会产生很高的电压,可能击穿绝缘甚至危及安全。所以次级通常要接一个TVS管或者稳压管做保护,或者接一个固定的负载电阻。
3.4 其他电流检测方法简述
除了上面三种主流方法,还有一些特殊场景下的电流检测方法。
罗氏线圈适合测高频大电流,比如雷击电流、脉冲电流。它本质上是一个空心线圈,没有磁芯,不会饱和,带宽可以做到很高。但输出是电流的微分信号,需要积分器还原。精度一般,适合定性测量。
磁通门传感器精度很高,可以测很小的直流电流,但电路复杂、成本高,主要用于精密测量场合。
巨磁阻传感器利用巨磁阻效应,灵敏度高、体积小,但线性范围窄,适合测小电流。
光纤电流传感器利用法拉第效应,绝缘性能极好,适合高压场合,但成本很高。
选择哪种方法,核心还是看你的测量范围、精度要求、带宽需求、隔离要求和预算。没有一种方法是万能的,工程上永远是折中。
4. 从原理图到PCB的实操全流程
4.1 信号链设计:从传感器到ADC的每一步
一个完整的电压电流检测系统,信号链通常是这样:传感器或分压网络→放大/滤波→ADC→MCU处理。每一步都要仔细设计,否则前级做得再好,后级拖后腿也白搭。
先说放大和滤波。放大器的带宽要大于信号带宽,但也不能太大,否则会引入高频噪声。通常放大器的带宽选信号带宽的5到10倍。滤波器放在放大器之后,截止频率略高于信号带宽。比如信号带宽是10kHz,滤波器截止频率选15kHz到20kHz。滤波器用二阶有源滤波,比如Sallen-Key结构,运放选低噪声的。
ADC的选择要看分辨率和采样率。分辨率决定了能测到多小的变化,采样率决定了能测多快的信号。根据奈奎斯特采样定理,采样率至少是信号最高频率的2倍,实际工程中通常选5到10倍。比如信号带宽10kHz,采样率选100kHz。ADC的输入范围要和前级输出匹配,如果前级输出是0到3V,ADC的参考电压也是3V,那就正好。如果前级输出是±1.5V,ADC是单极性0到3V,就需要加一个偏置电路,把信号抬到0到3V。
ADC的接口方式也要考虑。SPI接口的ADC接线简单,但速度受限于SPI时钟。并行接口的ADC速度快,但占用引脚多。I2C接口的ADC速度慢,适合低速场合。选型时要看MCU的资源。
注意:ADC的输入阻抗和采样保持电容会影响测量精度。如果前级输出阻抗高,ADC采样时会把电压拉低。解决办法是在ADC输入前加一个缓冲器,或者选输入阻抗高的ADC。
4.2 PCB布局:细节决定成败
PCB布局是电压电流检测中最容易出问题的地方。很多电路在仿真里没问题,一上板就各种噪声、漂移、干扰。下面几条是我踩过坑之后总结的。
模拟区和数字区分开。模拟信号走线远离数字信号走线,尤其是时钟线和PWM线。如果实在避不开,垂直交叉,不要平行走线。模拟地和数字地要分开,最后在一点连接,通常是ADC的下方。
去耦电容靠近电源引脚。每个运放、每个ADC的电源引脚都要加去耦电容,100nF陶瓷电容加10μF钽电容。陶瓷电容要尽量靠近引脚,走线要短。钽电容可以稍远一点。
敏感信号走线要短、要对称。分流电阻的测量引线、差分对的走线,都要尽量短,两条线走在一起,保持对称。如果走线长度不一致,会引入额外的电阻和电感,破坏共模抑制比。
接地要干净。模拟信号的接地点要选在安静的地方,不要和大电流的接地点混在一起。大电流的接地点会有压降,如果模拟信号也接在那里,就会引入干扰。通常的做法是单点接地,所有模拟地汇聚到一点,再连接到系统的主地。
散热要均匀。分流电阻、功率器件附近不要放温度敏感的器件。如果实在避不开,可以在中间加一个隔热槽,或者在软件里做温度补偿。
实操心得:PCB打样回来之后,先不要急着焊所有的器件。先焊电源部分,测一下电压是否正常。再焊ADC和基准源,测一下基准电压是否准确。最后焊模拟部分,逐级测试。这样出了问题容易定位。
4.3 校准与测试:让数据可信
硬件做好之后,校准是必不可少的一步。校准需要一台高精度的源表或者标准源,比如六位半的数字万用表作为参考。
电压检测的校准:给分压网络输入几个已知电压,比如满量程的10%、25%、50%、75%、90%,记录ADC读数。然后用最小二乘法拟合出增益和偏置。如果非线性误差大,可以做分段校准,每段用不同的增益和偏置。
电流检测的校准:给分流电阻或者霍尔传感器通几个已知电流,记录ADC读数。同样用最小二乘法拟合。如果是霍尔传感器,还要注意零点漂移,在零电流时测出输出,作为偏置。
温度漂移的测试:把板子放进温箱,从低温到高温变化,记录输出变化。如果漂移大,要么换低温漂器件,要么在软件里做温度补偿。温度补偿的方法是在不同温度下测出增益和偏置,做成查找表,实际测量时根据温度传感器读数查表补偿。
噪声测试:输入端接一个干净的直流信号,用示波器看ADC输入端的噪声。如果噪声大,检查滤波器的截止频率是否合适,去耦电容是否足够,接地是否干净。也可以用ADC连续采样,看数据的标准差,评估噪声水平。
4.4 常见问题速查表
| 问题现象 | 可能原因 | 排查方法 | 解决措施 |
|---|---|---|---|
| 测量值偏大或偏小 | 分压电阻精度不够 | 用万用表测电阻实际值 | 换0.1%精度电阻或软件校准 |
| 测量值随温度漂移 | 电阻温漂大或运放失调温漂大 | 温箱测试,记录不同温度下的输出 | 换低温漂电阻或低失调运放 |
| 小信号时噪声大 | 放大器噪声大或滤波不足 | 示波器看输出噪声 | 换低噪声运放,增加滤波 |
| 大电流时读数不准 | 分流电阻发热导致阻值变化 | 测分流电阻温度 | 换更大功率电阻或温度补偿 |
| 交流测量相位偏差大 | 互感器相位差或滤波器相移 | 对比标准源相位 | 选低相位差互感器或软件补偿 |
| ADC读数跳动 | 参考电压不稳或接地干扰 | 测参考电压纹波 | 加基准源滤波,改善接地 |
| 隔离侧输出异常 | 隔离电源不足或隔离器件损坏 | 测隔离侧电源电压 | 检查隔离电源,更换隔离器件 |
| 霍尔传感器零点漂移 | 磁芯剩磁或温度影响 | 零电流时测输出 | 消磁处理或软件零点校准 |
5. 几个容易被忽略的工程细节
5.1 共模电压与共模抑制
在电流检测中,分流电阻通常放在高边或者低边。低边检测的共模电压接近地,对放大器要求低。高边检测的共模电压接近电源电压,比如48V系统,共模电压就是48V。这时候普通运放根本扛不住,需要选高共模电压的电流检测放大器,比如INA240支持-4V到80V的共模电压。
共模抑制比是衡量放大器抑制共模干扰能力的指标。在电机驱动中,PWM开关会产生很大的共模干扰,如果共模抑制比不够,输出就会有尖峰。提高共模抑制比的方法:选高共模抑制比的放大器,电阻匹配要好,PCB布局对称。
注意:高边检测时,放大器的电源电压要足够高,或者用隔离电源。如果放大器电源是5V,共模电压是48V,放大器会损坏。选型时一定要看共模电压范围。
5.2 带宽与响应时间
带宽决定了你能测多快的信号。如果信号是PWM波形,上升沿很陡,带宽不够就会把上升沿变缓,测出来的峰值偏小。放大器的带宽、ADC的采样率、滤波器的截止频率,三者要匹配。
响应时间是另一个指标。从输入变化到输出稳定到最终值的某个百分比,比如1%,所需要的时间。在过流保护场合,响应时间很关键。如果响应太慢,过流已经发生了,保护还没动作,器件就烧了。过流保护通常用比较器实现,比较器的响应时间在微秒级甚至纳秒级。
5.3 安全与保护
电压电流检测电路本身也需要保护。输入端要加TVS管或者压敏电阻,防止浪涌电压损坏器件。分流电阻要选抗浪涌能力强的,比如金属箔电阻。隔离器件的隔离耐压要留足余量,比如实际工作电压250V,隔离耐压至少选2500V。
如果测的是市电或者高压,一定要做好绝缘。PCB上高压区和低压区要保证足够的爬电距离和电气间隙。调试时要用隔离变压器给板子供电,避免触电风险。
实操心得:调试高压电路时,养成单手操作的习惯,另一只手不要碰任何金属。示波器要用高压差分探头,不要用普通探头直接测高压,否则会烧示波器甚至危及安全。
5.4 成本与精度的权衡
工程上永远要在成本和精度之间做权衡。如果只是做一个普通的电池电量显示,精度要求不高,用电阻分压加普通ADC就够了,成本几毛钱。如果是做电池管理系统,精度要求高,就要用专用AFE芯片,成本几块钱到几十块钱。如果是做精密测量仪器,精度要求极高,就要用高精度基准源、低温漂电阻、精密运放,成本可能上百。
选型时先明确精度要求,再倒推需要什么器件。不要盲目追求高精度,也不要为了省钱牺牲关键指标。比如过流保护,精度可以不高,但响应速度一定要快。比如电量计量,响应速度可以慢,但精度一定要高。
6. 写在最后
电压电流检测这件事,入门容易精通难。我见过太多人随便搭个分压电路就敢测高压,也见过太多人用普通运放做高边电流检测结果烧了一片。核心还是要把原理吃透,把参数算清楚,把布局做扎实。
如果你刚开始做这方面的工作,建议从低边分流电阻检测入手,电路简单,容易成功。等熟悉了再尝试高边检测、隔离检测、霍尔传感器。每换一种方案,都要重新算参数、重新布局、重新校准。不要想着一个电路打天下。
另外,测试设备很重要。一台好的数字万用表、一台带高压差分探头的示波器、一台可编程电源,能帮你省很多时间。校准的时候一定要用比你的目标精度高一个数量级的参考仪器,否则校准本身就不准。
最后分享一个小技巧:在ADC输入端加一个RC低通滤波,截止频率设在信号带宽的2到3倍。电阻选100Ω到1kΩ,电容选100nF到1μF。这个滤波能滤掉大部分高频噪声,而且不会明显影响信号。如果噪声还是大,可以在软件里再做一次滑动平均滤波。硬件滤波加软件滤波,双管齐下,效果通常很好。