电阻到底是怎么选的
该内容转载自硬件工程师炼成之路
常用的电路(NPN为例)
1、电平转换,反相
这个电路用得非常多,有两个功能。
一是信号反相,就是输入高电平,输出就是低电平;输入低电平,输出就是高电平
二是改变输出信号的电压,比如输入的电压范围是0V或者是3.3V,想要得到一个输出是0V或者是5V的电平怎么办呢?让Vcc接5V就可以了,输出高的时候,out的电平就是大约为5V的。
2、驱动指示灯
我们经常使用三极管驱动LED灯,比如下面这个电路:
3、驱动MOS开关
还一个电路也用得非常多,那就是驱动电源的PMOS开关,如下图:
在in为低时,三极管不导通,相当于是开路,PMOS管的Vgs为0,PMOS管也不导通,Vcc2没有电。
在in为高时,三极管导通,集电极相当于是接地GND,于是PMOS管的Vgs为-Vcc1,PMOS管导通,也就是Vcc1与Vcc2之间导通,Vcc2有电。
可以看到,以上三种电路,其实都一样,就是三极管是用作开关的,要不工作在饱和区(导通),要不工作在截止区(不导通),总之就是不能工作在放大区。这个比较容易理解,如果工作在放大区,那么Vce的电压就很难确定了,这会导致当你想要高低电平的时候,结果得到一个中间态。
所以,最重要的就是要保证管子的工作状态是ok的,也就是说我们要选好电路中的电阻阻值。
关于电阻的取值,有的新手就有点分不清,因为不同的人设计的电路,电阻的阻值不尽相同,问就说是“经验值”。其实哪有那么多经验值,都是有些道道在里面的。
下面来看看如何选择电阻。
如何选择电阻
我们的电路输入一般是只有两种状态,0V或者是其它的高电平(1.8V,3.3V,5V等),截止状态一般不用怎么考虑,因为如果让三极管的Vbe=0,自然就截止了,重要的是饱和状态如何保证。
那么啥叫饱和状态?
我们先假定三极管工作在放大状态,那么放大倍数就是β,
如果基极有Ib电流流过,那么集电极Ic=β*Ib,Ic也会在Rc上面产生压降Urc。
易得:Urc+Uce=Vcc,
显然,Ib越大,那么Urc=β*Ib*Rc越大,如果Ib足够大,那么Urc=Vcc时,Uce=Vcc-Urc=0。
如果我们继续增大Ib,那么Uce会变成负的吗?
Uce<0是不可能的,因为如果电压反向,那么电流也要反向,这显然是不成立的。实际Uce也就继续保持接近于0,那么也就是说此时Ic的实际电流是小于β*Ib的,此时电路已经满足不了β的放大倍数,三极管已经不是在放大状态,而是进入饱和状态了。
从以上描述我们很容易得出来,我们只需要让计算出的Urc=β*Ib*Rc>Vcc,那么三极管就是工作在饱和状态的。
不过,上面这个电路太简单,实际电路又各种各样,那么到底该如何考虑呢?
我一般是这样考虑的:就是假定三极管工作在放大状态,放大倍数为β,如果最终算得Rc两端电压大于Vcc(对应的Uce就是个负压),那么三极管就是工作在了饱和状态了。
电路计算举例
1、LED灯的例子
已知条件:输入控制电压高电平为3.3V,电源电压为5V,灯的导通电流10mA,灯导通电压2V,三极管选用型号MMBT3904
三极管饱和导通时,Vce=0V,所以Rc=(5V-2V)/10mA=300Ω。
查询芯片手册,三极管MMBT3904的的放大倍数β(hfe)如下图所示:
可以看到,在Ic=10mA时,放大倍数最小为100。
那么Ib=10mA/100=100uA,三极管导通时,Vbe约为0.7V,继而求得Rb=(3.3-0.7V)/100uA=26K。
也就是说只要Rb<26K,三极管就工作在了饱和状态,像这种情况,我一般取Rb=2.2K,或者是1K,4.7K,10K,这样Ib更大,更能让三极管工作在饱和状态。
具体取多少,取决于整个板子的电阻使用情况,比如10K电阻用得多,那我就取10K,这样物料种类少,生产更方便。
或者咱为了保险一点,比如要兼容别的三极管型号,可以取Rc=1K,这样即使别的三极管β小于100,也能工作在饱和状态。
我们也可以反向验算下,假如Rc=300Ω,Rb=10K,那么Ib=(3.3-0.7)/10K=0.26mA,那么Ic=100*0.26mA=26mA,那么Rc的压降是300Ω*26mA=7.8V,这已经超过Vcc了,所以管子肯定是工作在饱和状态的。
2、驱动MOS开关
这个电路就是个使用三极管控制PMOS管的通断,那么里面的电阻和电容该如何选择呢?
我们要知道,这个电路是如何工作的,考虑了哪些因素。
工作原理:
在in为低时,三极管不导通,相当于是开路,PMOS管的Vgs为0,PMOS管也不导通,Vcc2没有电。
在in为高时,三极管导通,集电极相当于是接地GND,于是PMOS管的Vgs为-12V,PMOS管导通。
下面看看电阻取值:
R2接到了PMOS管的栅极,我们知道MOS管的栅极阻抗非常大,所以三极管导通稳定之后,R2基本是没有电流的,所以可以看做是开路,三极管的集电极电流主要从R3流动。
那么三极管的Ic电流该如何设定呢?
我们要在in是3.3V的时候,Vce基本为0,Ic倒是没有说必须要多少合适。这个时候我们可以先定一个,比如定R3=10K,4.7K,20K等等都是可以的。
我们就先定R3=10K吧,为什么定这个,因为这个是常用电阻。不过我们需要知道,如果电阻定太小,那么Ic的电流必然会比较大,就会浪费电(功耗大,发热)
电源为12V,那么Ic=12V/10K=1.2mA。从MMBT手册知道,1mA左右,三极管的放大倍数最小是80,所以Ib=1.2mA/80=15uA。那么R1=(3.3-0.7)/15uA=173k。也就是说R1需要满足R1<173K就可以让三极管饱和导通。
因为R3已经选定了10K,那么R1也可以选择10K了(物料归一,少些种类)。
R2,C1有什么用呢?
在上电的一瞬间,因为电容两端的电压不能突变,所以C1会将MOS管的Vgs钳制在0V,让MOS管不会误导通,C1通常可以选择100nF左右。
那么R2有什么用呢?
R2可以限制三极管的Ic电流,因为in的电压突然变化的时候,三极管状态突然改变,Vce电压会突然改变,需要对电容C1进行充放电,这个电流可以通过R2来限制。
我们也可以通过R2和C1一起来调节PMOS管的导通时间,其实本质就是RC的充放电。如果没有严格的时间要求,R2和C1的选择很宽泛,像我一般用100nF和100K。