1d0825a089a748b2b24828a7cf2389b6?from=pc.jpg
电源开关电路,经常用在各“功能模块”电路的电源通断控制,是常用电路之一。

、电路说明
电源开关电路,尤其是MOS管电源开关电路,经常用在各“功能模块”电路的电源通断控制,如下框图所示。
3e3516b32c6d43fea105301cbc0c28c5?from=pc.jpg
▲ 框图中“1个MOS管符号”代表“1个完整的MOS管电源开关电路”

在设计时,只要增加一个电容(C1),一个电阻(R2),就可以实现软开启(soft start)功能。
df58267c36db4659b64fd39cf5ef1c1e?from=pc.jpg
▲ 电容C1、电阻R2实现软开启(soft start)功能

软开启,是指电源缓慢开启,以限制电源启动时的浪涌电流。
在没有做软开启时,电源电压的上升会比较陡峭。
d77d88ab648f4f0a920dacf45e8003b1?from=pc.jpg
▲ 没有做软开启时,电源电压上升沿比较陡峭

加入软开启功能后,电源开关会慢慢打开,电源电压也就会慢慢上升,上升沿会比较平缓。
e4e765dd22aa4c6f9a6b56898e547837?from=pc.jpg
▲ 加入软开启功能,电源电压上升沿比较平缓

浪涌电流可能会令电源系统突然不堪重负而掉电,导致系统不稳定。严重的可能会损坏电路上的元器件。
e8bc1ef4f2424805b1d6b1a34391d765?from=pc.jpg
▲ 浪涌电流时常导致系统不稳定,并可能损坏电路元器件

电源上电过快过急,负载瞬间加电,会突然索取非常大的电流。比如在电源电压是5V,负载是个大容量电容的时候,电源瞬间开启令电压瞬间上升达到5V,电容充电电流会非常大。如果同样的时间内电源电压只上升到2.5V,那么电流就小得多了。下面从数学上分析一下。
电量 = 电容容量 * 电容两端的电压,即:
Q = C * U
同时 电量 = 电流 * 时间,即:
Q = I * t
所以电流:
I = (CU) / t
从公式可以看出,当电容容量越大,电压越高,时间越短,电流就会越大,从而形成浪涌电流。
大电容只是形成浪涌电流的原因之一,其他负载也会引起浪涌电流。

、原理分析

1、控制电源开关的输入信号 Control 为低电平或高阻时,三极管Q2的基极被拉低到地,为低电平,Q2不导通,进而MOS管Q1的Vgs = 0,MOS管Q1不导通,+5V_OUT 无输出。电阻R4是为了在 Control 为高阻时,将三极管Q2的基极固定在低电平,不让其浮空。
84846f1abd04479d9c2556f70aed2fd8?from=pc.jpg
2、当电源 +5V_IN 刚上电时,要求控制电源开关的输入信号 Control 为低电平或高阻,即关闭三极管Q2,从而关闭MOS管Q1。因 +5V_IN 还不稳定,不能将电源打开向后级电路输出。此时等效电路图如下。
1d1404cf03d64d4bba3385ca27baa4ea?from=pc.jpg
此时电源 +5V_IN 刚上电,使MOS管G极与S极等电势,即Vgs = 0,令Q1关闭。

3、电源 +5V_IN 上电完成后,MOS管G极与S极两端均为5V,仍然Vgs = 0。

4、此时将 Control 设为高电平(假设高电平为3.3V),则:
ac98a19edb4b426293379b0a29c5a5ba?from=pc.jpg

  • ①三极管Q2的基极为0.7V,可算出基极电流Ibe为:
(3.3V - 0.7V) / 基极电阻R3 = 0.26mA

  • ②三级管Q2饱和导通,Vce ≈ 0。电容C1通过电阻R2充电,即C1与G极相连端的电压由5V缓慢下降到0V,导致Vgs电压逐渐增大。
  • ③MOS管Q1的Vgs缓慢增大,令其缓慢打开直至完全打开。最终Vgs = -5V。
  • ④利用电容C1的充电时间实现了MOS管Q1的缓慢打开(导通),实现了软开启的功能。

MOS管打开时的电流流向如下图所示:
b5ba402b6bb7474c828a1fff8a5a20d4?from=pc.jpg
5、电源打开后,+5V_OUT 输出为5V电压。此时将 Control 设为低电平,三极管Q2关闭,电容C1与G极相连端通过电阻R2放电,电压逐渐上升到5V,起到软关闭的效果。软关闭一般不是我们想要的,过慢地关闭电源,可能出现系统不稳定等异常。过程如下图。
32e255c695e24e8db408976a16ed4412?from=pc.jpg
过慢地开启和关闭电源都可能导致电路系统异常,这个MOS管电源开关电路及其参数已经过大批量使用验证,一般情况下可以直接照搬使用。

、电路参数设定说明
调整C1、R2的值,可以修改软启动的时间。值增大,则时间变长。反之亦然。