我已经实现了一个恒流源,它工作得很好,但我只是希望尝试更多地理解它!这是有问题的电路:
我尝试在网上进行一些搜索,发现很难在该电路上找到任何解释实际情况的理论知识。我确实发现通过晶体管的电流可以简单地通过使用 $$I_{E}=\frac{V_{\text{set}}}{R_{\text{set}}}$$ 找到比我开始寻找之前所知道的要多得多。但现在我想知道实际发生了什么,以及即使负载上的负载/电压发生变化,它如何保持恒定电流输出。
如果有人能够对此有所了解,我将不胜感激。
我已经实现了一个恒流源,它工作得很好,但我只是希望尝试更多地理解它!这是有问题的电路:
我尝试在网上进行一些搜索,发现很难在该电路上找到任何解释实际情况的理论知识。我确实发现通过晶体管的电流可以简单地通过使用 $$I_{E}=\frac{V_{\text{set}}}{R_{\text{set}}}$$ 找到比我开始寻找之前所知道的要多得多。但现在我想知道实际发生了什么,以及即使负载上的负载/电压发生变化,它如何保持恒定电流输出。
如果有人能够对此有所了解,我将不胜感激。
该电路采用负反馈并利用运算放大器的极高增益。由于增益非常高,运算放大器将尝试将其非反相和反相输入保持在相同的电压 \$V_{\text{set}}\$。然后根据欧姆定律
$$I_{\text{set}} = \frac{V_{\text{set}}}{R_{\text{set}}}$$
负反馈使运算放大器调整晶体管基极电压,使 \$I_{\text{set}}\$ 即使在负载变化的情况下也保持不变。如果负载变化导致 \$I_{\text{set}}\$ 暂时增加,则运算放大器反相输入端的电压将暂时高于非反相输入端。这会导致运算放大器的输出降低,从而降低晶体管的 \$V_{BE}\$ 并因此降低其 \$I_{C} \approx I_{\text{set}}\$。
同样,如果负载变化导致 \$I_{\text{set}}\$ 暂时降低,则运算放大器反相输入端的电压将暂时低于非反相输入端。这会导致运放输出增加,从而增加晶体管的\$V_{BE}\$和\$I_{C}\$。
运算放大器充当单位增益缓冲器,尽管它可能并不明显:
运算放大器的规则是输出会做任何事情来保持两个输入相等,前提是它当然不会削波(遇到自己的电源并停在那里)。
晶体管用作射极跟随器,其中射极电压跟随基极电压减去来自其 PN 结的二极管压降。
将这两者放在一起,您会看到 Rset 顶部的电压与 Vset 相同。已知电阻上的已知电压等于通过该电阻的已知电流。在大多数晶体管中,基极对发射极电流的贡献可以忽略不计,因此无论其电源电压或电阻如何,您都可以通过负载获得几乎相同的电流。但是,如果您将它用于严肃的设计,那么用您的特定部件验证这种可忽略性并没有什么坏处。
我喜欢将其可视化的方式是将晶体管视为运算放大器自动调整的可变电阻器,以保持运算放大器 - 输入端的电压等于其 + 输入端的电压。
这样,由于串联电路中的电流在任何地方都相同,因此负载中的电流、晶体管 CE 结和 Rset 必须相同,并且如果 Rset 顶部的电压永远不会改变,因为运算放大器迫使它等于到 Vset,那么它的电流永远不会改变,通过负载的电流也不会改变。
另一种简单但准确的方法是使用反馈理论:
运算放大器的输出只是运算放大器的增益 (A) 乘以输入电压之差。如果我们将电阻上的电压称为\$V_x\$(因为我们还不知道它是什么),那么运算放大器的输出就是:
$$V_o = A \cdot (V_{\text{set}}-V_x)$$
现在,我们知道当晶体管导通时,基极-发射极结上有一个恒定电压 \$V_{\text{be}}\$,所以我们可以写成:
$$V_x = V_o - V_{\text{be}}$$
将其代入 \$V_o\$ 方程,我们得到:
$$V_o = A \cdot (V_{\text{set}} - (V_o - V_{\text{be}})) = A \cdot (V_{\text{set}} + V_{\text{be }}) - 一个 \cdot V_o$$
要么:
$$(A + 1) \cdot V_o = A \cdot (V_{\text{set}} + V_{\text{be}})$$
所以,重新排列我们得到:
$$V_o = \frac{A \cdot (V_{\text{set}} + V_{\text{be}})}{A+1}$$
现在,我们知道对于运算放大器,A 非常大,因此,随着 A 向无穷大增长,我们可以看到 \$\frac{A}{A+1}\$ 趋向于统一:
$$\frac{A}{A+1} \to 1$$
因此:
$$V_o=V_{\text{set}}+V_{\text{be}}$$
但是,我们在上面写道:
$$V_x=V_o-V_{\text{be}}$$
用这个表达式代替上面的 \$V_o\$ 我们得到:
$$V_x=(V_{\text{set}}+V_{be})-V_{\text{be}}\$ 或 \$V_x=V_{\text{set}}$$
很明显,\$I_{\text{set}}=\frac{V_{\text{set}}}{R_{\text{set}}}\$,你已经知道了。