电流镜电路
01 电流镜电路
一、前言
这是一个电流镜电路, 广泛应用在集成电路设计中。 在两个晶体管完全对称的情况下, 电源通过电阻R1给两个晶体管提供相同的偏置电流。 这样它们集电极电流也相同。 这种对称性也是该电路作为电流镜的名称来源。 下面通过实验验证一下这个电路的特性。
二、搭建电路
这里有一盒子不同型号的三极管。 选择两个BC547作为实验中的三极管。 利用晶体管助手测量它们的电流放大倍数。 选择两个数值都在 300 多的三极管, 一个是 315。 一个是 340, 电流放大倍数相差7%左右。 利用它们搭建电流镜电路。 它们在电流放大倍上有一定的差异。 利用面包板搭建测试电路。 电路比较简单, 很快就可以搭建完成。 为了便于改变电流的大小, 这里使用了一个电阻箱 QR10, 当做第一个三极管的集电极电阻, ·通过对它的修改, 可以设置不同的电流。
三、测量结果
使用万用表FLUKE45 测量R1上的电压, 这样便可以计算出 参考电流。 使用DM3068的电流档串联在T2的集电极, 可以测量到输出电流。 通过调整R1的大小, 可以改变参考电流大小, 进而可以对比电流镜输出电流与参考电流之间的关系了。
在工作电压为 5V的情况下, 改变电阻箱QR10 从 10k欧姆变化到 1M 欧姆。 测量不同参考电流下输出电流的大小。 从测量结果来看, 参考电流与输出电流之间呈现非常完美的线性比例关系。 这个电流范围从 5微安到450微安。 绘制出输出电流与参考电流之间的比值。 在450微安范围内, 这个比值变化了 0.5% 左右。 为什么后面比值会随着参考电流增加而上升, 这的确有点奇怪, 也许是因为万用表测量带来的误差。 参考电流与输出电流相差7% 左右, 猜测是因为两个三极管的电流放大系数不同而造成的。
▲ 图1.3.1 输入和输出电流
rdim=[10000.0000,20000.0000,30000.0000,40000.0000,50000.0000,60000.0000,70000.0000,80000.0000,90000.0000,100000.0000,110000.0000,120000.0000,130000.0000,140000.0000,150000.0000,160000.0000,170000.0000,180000.0000,190000.0000,200000.0000,210000.0000,220000.0000,230000.0000,240000.0000,250000.0000,260000.0000,270000.0000,280000.0000,290000.0000,300000.0000,310000.0000,320000.0000,330000.0000,340000.0000,350000.0000,360000.0000,370000.0000,380000.0000,390000.0000,400000.0000,410000.0000,420000.0000,430000.0000,440000.0000,450000.0000,460000.0000,470000.0000,480000.0000,490000.0000,500000.0000,510000.0000,520000.0000,530000.0000,540000.0000,550000.0000,560000.0000,570000.0000,580000.0000,590000.0000,600000.0000,610000.0000,620000.0000,630000.0000,640000.0000,650000.0000,660000.0000,670000.0000,680000.0000,690000.0000,700000.0000,710000.0000,720000.0000,730000.0000,740000.0000,750000.0000,760000.0000,770000.0000,780000.0000,790000.0000,800000.0000,810000.0000,820000.0000,830000.0000,840000.0000,850000.0000,860000.0000,870000.0000,880000.0000,890000.0000,900000.0000,910000.0000,920000.0000,930000.0000,940000.0000,950000.0000,960000.0000,970000.0000,980000.0000,990000.0000,1000000.0000]
idim=[0.4391,0.2206,0.1475,0.1109,0.0888,0.0741,0.0636,0.0556,0.0495,0.0446,0.0406,0.0372,0.0344,0.0319,0.0298,0.0280,0.0263,0.0249,0.0236,0.0224,0.0213,0.0204,0.0195,0.0187,0.0180,0.0173,0.0166,0.0160,0.0155,0.0150,0.0145,0.0141,0.0136,0.0132,0.0129,0.0125,0.0122,0.0119,0.0116,0.0113,0.0110,0.0107,0.0105,0.0102,0.0100,0.0098,0.0096,0.0094,0.0092,0.0090,0.0089,0.0087,0.0085,0.0084,0.0082,0.0081,0.0079,0.0078,0.0077,0.0076,0.0074,0.0073,0.0072,0.0071,0.0070,0.0069,0.0068,0.0066,0.0066,0.0065,0.0064,0.0063,0.0062,0.0061,0.0060,0.0060,0.0059,0.0058,0.0057,0.0057,0.0056,0.0055,0.0055,0.0054,0.0053,0.0053,0.0052,0.0052,0.0051,0.0050,0.0050,0.0049,0.0049,0.0048,0.0048,0.0047,0.0047,0.0046,0.0046,0.0045]
vdim=[4.3913,4.4117,4.4236,4.4352,4.4380,4.4452,4.4523,4.4510,4.4558,4.4579,4.4610,4.4639,4.4677,4.4685,4.4710,4.4735,4.4761,4.4783,4.4805,4.4806,4.4834,4.4854,4.4844,4.4885,4.4896,4.4887,4.4902,4.4937,4.4925,4.4937,4.4954,4.4964,4.4977,4.5006,4.4997,4.5009,4.5041,4.5053,4.5045,4.5057,4.5077,4.5056,4.5091,4.5099,4.5078,4.5094,4.5096,4.5128,4.5137,4.5150,4.5151,4.5164,4.5174,4.5153,4.5178,4.5162,4.5169,4.5181,4.5207,4.5490,4.5169,4.5214,4.5236,4.5439,4.5197,4.5267,4.5337,4.5204,4.5264,4.5283,4.5236,4.5249,4.5296,4.5249,4.5258,4.5264,4.5278,4.5317,4.5332,4.5291,4.5330,4.5347,4.5300,4.5342,4.5355,4.5315,4.5329,4.5369,4.5329,4.5338,4.5397,4.5339,4.5354,4.5398,4.5352,4.5363,4.5409,4.5426,4.5376,4.5409]
outdim=[0.4959,0.2478,0.1651,0.1237,0.0986,0.0821,0.0704,0.0615,0.0546,0.0492,0.0447,0.0410,0.0379,0.0352,0.0328,0.0308,0.0290,0.0274,0.0260,0.0247,0.0235,0.0225,0.0215,0.0206,0.0198,0.0190,0.0183,0.0177,0.0171,0.0165,0.0160,0.0155,0.0150,0.0146,0.0142,0.0138,0.0134,0.0131,0.0128,0.0125,0.0122,0.0119,0.0116,0.0114,0.0111,0.0109,0.0107,0.0105,0.0103,0.0101,0.0099,0.0097,0.0095,0.0093,0.0092,0.0090,0.0089,0.0087,0.0086,0.0085,0.0083,0.0082,0.0081,0.0080,0.0078,0.0077,0.0076,0.0075,0.0074,0.0073,0.0072,0.0071,0.0070,0.0069,0.0068,0.0068,0.0067,0.0066,0.0065,0.0064,0.0064,0.0063,0.0062,0.0062,0.0061,0.0060,0.0060,0.0059,0.0058,0.0058,0.0057,0.0057,0.0056,0.0056,0.0055,0.0055,0.0054,0.0053,0.0053,0.0052]
#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST1.PY -- by Dr. ZhuoQing 2024-01-28
#
# Note:
#============================================================
from headm import *
import serial
from _ast import Or
from serial.serialutil import SerialException
from tsmodule.tsstm32 import *
from tsmodule.tsvisa import *
#------------------------------------------------------------
qr10 = serial.Serial()
qr10.baudrate = 115200
qr10.timeout = 0.05
try:
qr10.port = 'COM5'
except:
printf('Set qr10 port COM5 error. ')
try:
qr10.open()
except serial.serialutil.SerialException:
printf('Open qr10 port COM5 error.')
else:
printf('Open qr10 port COM5 Ok.')
#------------------------------------------------------------
dm3068open()
rdim = linspace(10e3, 1e6, 100)
outdim = []
idim = []
vdim = []
for r in rdim:
qr10.write(b'AT+USER.SP=%5.1f\n'%r)
time.sleep(2)
out = dm3068cdc()*1e3
meter = meterval()
v = meter[0]
i = v/r*1e3
printff(r, v, i, out)
outdim.append(out)
idim.append(i)
vdim.append(v)
tspsave('measure', rdim=rdim, idim=idim, vdim=vdim, outdim=outdim)
plt.plot(idim, outdim, lw=3)
plt.xlabel("Input(mA)")
plt.ylabel("Output(mA)")
plt.grid(True)
plt.tight_layout()
plt.show()
#------------------------------------------------------------
# END OF FILE : TEST1.PY
#============================================================
▲ 图1.3.2 在不同的参考电压下输出电流 与输入电流的比值
下面固定R1为10k欧姆, 输入端电压保持5V不变。 输出端的电流从 0.5V 变化到10V, 测量不同集电极电压下, 输出电流的变化。 测量结果出乎我的意料。 居然在2.5V左右, 输出电流变化分成了两个阶段。 前面, 输出电流随着集电极电压增加而下降, 之后, 变随着集电极电压的升高而上升了。 这里面的弯弯绕可能需要进一步理论分析。 不过, 给我们一个实践上的建议, 那就是在2.5V左右, 输出电流会更加稳定。
▲ 图1.3.3 不同集电极电压输出电流的变化
※ 总
本文对于三极管组成的电流镜电路进行了测试, 对比了不同参考电流下, 输出电流的变化, 输出电流与参考电流之间的比值基本上维持一个常量。 这个比值似乎与两个晶体管的电流放大倍数的差异性有关系。 在2.5V下, 输出电流最为稳定。
■ 相关文献链接:
● 相关图表链接:
- 图1.3.1 输入和输出电流
- 图1.3.2 在不同的参考电压下输出电流 与输入电流的比值
- 图1.3.3 不同集电极电压输出电流的变化