三极管开关作用

三极管当做开关来使用时,是利用了其要么工作在饱和区(导通),要么工作在截止区(不导通,总之就是不能工作在放大区。这个比较容易理解,如果工作在放大区,那么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,那么三极管就是工作在饱和状态的。

 

电路计算举例

1、LED灯的例子

已知条件:输入控制电压高电平为3.3V,电源电压为5V,灯的导通电流10mA,灯导通电压2V,三极管选用型号MMBT3904

也就是说只要Rb<26K,三极管就工作在了饱和状态,像这种情况,我一般取Rb=2.2K,或者是1K,4.7K,10K,这样Ib更大,更能让三极管工作在饱和状态。 

具体取多少,取决于整个板子的电阻使用情况,比如10K电阻用得多,那我就取10K,这样物料种类少,生产更方便。

2、驱动MOS开关

这个电路就是个使用三极管控制PMOS管的通断,那么里面的电阻和电容该如何选择呢?

 

工作原理:

在in为低时,三极管不导通,相当于是开路,PMOS管的Vgs为0,PMOS管也不导通,Vcc2没有电。

在in为高时,三极管导通,集电极相当于是接地GND,于是PMOS管的Vgs为-12V,PMOS管导通。

 

下面看看电阻取值:

R2接到了PMOS管的栅极,我们知道MOS管的栅极阻抗非常大,所以三极管导通稳定之后,R2基本是没有电流的,所以可以看做是开路,三极管的集电极电流主要从R3流动。

那么三极管的Ic电流该如何设定呢?

我们假设在Vin是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。

### 三极管开关电路中的电阻选择 #### 基电阻 \( R_B \) 当三极管用于开关应用时,基电阻 \( R_B \) 的主要作用是限制流入基的电流,防止过载并确保足够的驱动能力使三极管进入饱状态。对于给定条件——即发射接地、集电3.3V电源以及基3.3V信号源控制的情况: \[ I_{B} = \frac{I_{C}}{\beta } \] 这里 \( \beta \) 是直流增益系数;\( I_C \) 表示预期的最大集电电流。 为了保证可靠导通,通常取 \( I_B \geqslant \frac{I_C}{\beta _{min}} * SafetyFactor \),其中安全因子一般设为5至10倍之间以提供额外裕度[^1]。 因此, \[ R_B=\frac{(V_{CC}-V_{BE})}{(SafetyFactor*\frac {I_C}{\beta })}\approx\frac {(V_{CC}-V_{BE})}{(\frac {I_C}{\beta /SafetyFactor})} \] 此处 \( V_{BE} \) 大约为0.7伏特左右(硅材料),而具体数值取决于所使用的特定型号三极管。 #### 集电电阻 \( R_C \) 关于集电电阻 \( R_C \),其目的是设置负载线从而决定工作点位置,在此场景下主要是用来分担部分电压降以便让三极管能够完全关闭或开启而不至于损坏。基于提供的信息,可以利用下面这个简化表达式来进行估算: \[ R_C= \frac{V_{CC}-V_{CE(sat)}}{I_C} \] 这里的 \( V_{CE(sat)} \) 指的是三极管处于深度饱状态下从集电到发射之间的最小可能电压差,典型值大约在0.2~0.3V范围内变化。 ```python def calculate_resistors(Vcc, Vce_saturation, Ic_max, beta_min, safety_factor): """ 计算三极管开关模式下的RBRC 参数: Vcc : float - 供电电压[V] Vce_saturation : float - CE间饱电压[V] Ic_max : float - 最大允许IC电流[A] beta_min : int - 最小hFE/β值 safety_factor : int - 安全因数 返回: tuple(float,float): RB, RC [Ω] """ # 计算Rb Vbe = 0.7 # 默认Si晶体管的Vbe Ib_required = (safety_factor * Ic_max) / beta_min Rb = ((Vcc - Vbe) / Ib_required) # 计算Rc Rc = (Vcc - Vce_saturation) / Ic_max return round(Rb), round(Rc) # 示例调用函数 print(calculate_resistors(3.3, 0.2, 0.02, 100, 5)) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值