〇、概述
本文主要介绍一些利用运放与三极管构建电流源的思路与方案。
文章从负反馈机制出发,从简单典型的电压跟随电路,剖析其运作机制并深化扩展,从而构建压控电流源、电流放大器、电压线性控制4-20mA电流源的应用方案。本文可以加深初学者对运放反馈机制的理解,在设计类似4-20mA输出器的电路时,也有一定的参考价值。
图0.1 电压控制4-20mA输出器,只保留关键器件。保护与改良设计可以根据实际情况酌情添加。供电电压12~30V,VIN为电压输入端,R6代表传输线上的不确定阻值(比如接收端采样电阻),其中流过的电流大小满足:
其中: :输出电流大小,单位为 mA。
:输入电压大小,单位为 V。
一、三极管电流源及其非线性问题
图1.1 基于三极管的电流源实验电路
提到电流源,利用三极管基极电流控制射极电流,是一种常见的方案,也是很多电流源电路的核心原理。在这个实验电路中,三极管只需要从基极抽取很小的电流,即可将其放大,同时具有一些很好的控制电流的机制。
- 电流控制电流:VCC足够大且射极负载足够小时,三极管工作在放大区,此时三极管起到限制射极电流大小的作用,电流大小仅与基极输入电流有关。并且根据基尔霍夫电流定律,由于基极电流
很小,相对射极电流可以忽略不计,因此射极电流与集电极电流大小大致相等。
- 电压控制电流:VCC足够大且射极负载足够小,阻值为定值时,在基极施加一个适宜的电压,则会在基极-射级-负载-地回路内产生大致与电压呈正比的基极流入电流
。假如忽略基极射级压降
,可以用欧姆定律得到确定的基极电流(等于基极电压VIN 除以 射极负载电阻R1)。根据上一条电流控制电流的机制,此时如果在集电极与电源之间插入一个任意阻值,不是很大的电阻或者用电器件R2,那么无论这个电阻阻值如何,甚至不是线性的(比如灯泡、半导体器件等),通过其中的电流必然和射极电流保持一致,为
。这就是最简易的恒流源原理了。
但是三极管属于半导体器件,其非线性特性我们不能忽略。首先是基极射级压降,两极之间存在一个PN结,进而会产生压降,硅管0.6~0.7V,锗管0.2~0.3V。而且这个压降并不是固定的,它会随流过此处的电流变化而非线性变化,管子与管子间也有差异。对于放大系数β也是同理。此外,三极管长时间运作还会产生温度变化导致β改变,输出电流大小会漂移。在电压控制电流的机制中,电路设计阶段
、
的精确值根本无从确定,无法获得确定的输入电压与输出电流的关系。因此这个方案只能用在简易恒流源这类不需要后期调控的电路中,当涉及到输出电流可变、电流大小可以精确控制时,这套方案不可用。
但是以上方案并非一无是处,有一点是可以确定的:集电极电流与射极电流几乎相等。我们可以利用这个特点。如果可以利用一些方法,将R1上的电压确定下来,使其能被某个输入电压精确控制,那么R1中的电流,也就是射极电流,就能确定下来,电流源输出电流(集电极电流)自然也能确定了。
二、电压跟随器的机制及其进阶理解
电压跟随器是一种很常用的运放使用案例,相信读者都会搭。在负反馈的作用下,输出端电压值由同相输入端的电压值决定。究其具体过程,则是将输出电压直接引入反相输入端,不断比较输出电压与输入电压的大小并调控输出电压,使输出电压(也就是反相输入端电压)与同相输入端电压相等,也就是负反馈下所谓的“虚短”状态。
图2.1 电压跟随器
初学者很容易只看到电压跟随器的效果,认为是运放输出了一个与输入相同的电压,其实很容易忽略掉负反馈调节的本质。
电压跟随器实际上做的事情是:将引出反馈处的电压调控到与输入相同。而实现这种调控的方式是根据需要自动改变运放输出端的电压。仔细观察一下电压跟随器的构造,就不难发现这种说法的精妙之处。
这个时候,我们就不由地把目光转到上一章节末尾的需求上来了。
......如果可以利用一些方法,将R1上的电压确定下来,使其能被某个输入电压精确控制,那么R1中的电流,也就是射极电流,就能确定下来,电流源输出电流(集电极电流)自然也能确定了。
三、电流环(Current Loop)
笔者也不知道所谓Current Loop到底是什么,只是经常在芯片数据手册涉及到电流输出的时候,见到将运算放大器与三极管组合输出电流的做法,文中有时会称其为Current Loop,姑且将其翻译为电流环,指的是类似这样的结构:
图3.1 使用NPN三极管构造的 Current Loop 压控电流源
在这个电路中,运算放大器所做的事情,是将引出反馈处,即R3上端的电压,调控到与输入VIN相同。运放会根据实际情况自动调节输出端的电压,穿过三极管基极发射极间的PN结,对定值电阻R3上的电压进行控制。不再考虑、β的非线性和不确定性,不再考虑三极管的温度漂移,甚至也不再过多考虑三极管的选型(只要是NPN,电流电压指标在安全范围内,β足够大)。可以确定,定值电阻R3两端的电压即为运放同相输入电压VIN,R3流过的电流即可用欧姆定律确定,与VIN成正比。而负载R4的电流
等于R3流过的电流(β足够大),与R4具体阻值无关,从而达到电压线性控制电流的效果。输出电流与输入电压的关系为:
其中::Current Loop 压控电流源输出电流,单位为 A。
:控制电压,单位为 V。
这个电路有一个缺陷:负载R4的低电位并不是0V。如果需要负载电阻的低电位为0V,方便一些采样应用的话,可以使用PNP三极管搭建Current Loop,负载自然就置于低端了。
图3.2 使用PNP三极管构造的 Current Loop 压控电流源
本电路中,运放的作用是将R6下端的电压调控到与输入VIN相同。输出电流大小为:
其中::Current Loop 压控电流源输出电流,单位为 A。
:控制电压,单位为 V。
:电源正电压。
本电路也具有一个缺陷:需要电源电压已知且稳定才能发挥作用。通过一些组合设计,只要在最终的电流输出公式中消去VCC,这个问题也可以得到解决。接下来,笔者将会设计这样的电流源电路:电源电压可以不确定,输出电流正比于输入电压,负载低端电压为0。
四、电流放大器思路及其应用:一种4-20mA输出器方案
既然我们获得了受电压线性控制的电流源,那么电流放大的原理也不难理解。以下展示一种电流放大器的思路:
- 将电流通过一个一端电压确定的采样电阻,在电阻的另一端获得一个确定的电压(正比于原电流大小)。
- 将此电压输入到一个另一个压控电流源中,按比例输出所需大小的电流(也正比于原电流大小)。
将第三章节描述的两种 Current Loop 电流源组合起来,就可以得到一种电流放大器了,同时还可以解决每种 Current Loop 电流源的缺陷。至此,我们也就得到了一个电压线性控制电流、比例可配置,负载低端接地的压控电流源,可以用在4-20mA传输等应用场景。
第一级Current Loop输出的电流大小:
电流通过采样电阻R1,R1下端的电压输出到第二级Current Loop:
第二级Current Loop输出最终的电流:
R1、R2、R5宜选用精密电阻,运算放大器宜选用精密运放,三极管的β值(hfe)尽可能大。本电路中 R1、R2、R5分别选择1K、2K、100Ω阻值,R6代表传输线与负载,输出电流大小:
其中: :输出电流大小,单位为 mA。
:输入电压大小,单位为 V。
实际使用时,可以用一个DAC装置输出0~5V,供电电源电压可以选12V,即可驱动本电流源电路输出0~25mA(理论值),覆盖4-20mA的输出需求。
五、总结
本文详细介绍了使用运算放大器和三极管搭建压控线性电流源的设计思路,并给出了一些实用设计方案。请多指点!