电流采样电路
问题
在电路工作中,面临电流监控的问题。如何搭建一个电流采样的电路,来实现电流采样的目的呢?
具体电路
电流采样,基于欧姆定理。电流流过电阻,在电阻两端产生压降。用电阻两端的电压除以电阻,就可以计算出电流:
图 1 欧姆定律简单示意
在实际使用中,采样电阻是比较小的(mohm),这导致电阻两端的压将也会比较小。如果直接传递到ADC采样部分,不太合适。可以对采样的电压进行放大处理,具体的电路:
图 2 放大电路及采样电路
理论推导
Uout电压经过RC滤波电路,与TVS管保护,输入到MCU的ADC保护模块,获取电压值。进而得到流经Rref两端的电压值。之后,可以计算出电流值。
由图 2所示,采样的电流等于:
由于放大器的虚短与虚断特性,以上电路有以下特点:
虚断:流经放大器的正负极的电流I≈0
则流经电阻R1与R3的电流基本相等。流经R2与R4的电流基本相等。
放大器负极的电压U-,可以计算为:
而放大器正极U+的电压,可以计算为:
虚短:U-≈U+
这里假设R1=R2,R3=R4
则R1+R3=R2+R4
可以化简为:
安全电路
如图 2所示,安全电路有两处。第一个是低通滤波RC电路,第二个是TVS管安全电路,将高压钳位至安全电压。
第一个,RC滤波电路,实现将高频干扰滤除,避免Uout变化过快。但是理论上会引起一些影响。电阻R与MCU的内阻实现分压,则实际上MCU的采样电压要比Uout小一些。针对这部分,可以在代码层面进行补偿。
第二个,TVS保护电路。MCU的管脚输入电压有上限值,使用TVS钳位,避免出现过高电压输入到MCU管脚,造成GPIO损坏。
选型原则
这里放大电路的放大倍数等于K=R3/R1,
采样电阻Rref
当MCU的ADC电压达到最大值,这里取3.0v
这里如果
取K=100,Rref=0.001ohm,则满载电流最大:Imax=3.0/(100*0.001)=30A
取K=100,Rref=0.005ohm,则满载电流最大:Imax=3.0/(100*0.005)=6A
取K=50,Rref=0.005ohm,则满载电流最大:Imax=3.0/(50*0.005)=12A
取K=50,Rref=0.001ohm,则满载电流最大:Imax=3.0/(50*0.001)=60A
选型的时候,主要考虑满载的电流损耗。选择具体的采样电阻与放大倍数组合。