基于实际测试 7805,7809若干特性
Posted 卓晴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于实际测试 7805,7809若干特性相关的知识,希望对你有一定的参考价值。
01 输出电压调整率
LM7805,7809 是两款串联三端稳压器。 对于其工作特性没有能够精确测试过, 下面通过 基于ESP8266-01s 增加对于FZ35恒流电子负载WiFi接口 可以测量7805,7809 若干随着输出电流不同所对应的特性。
1.1 测试方法
在面包板上搭建测试电路。 使用带有 WiFi 通讯模块的 FZ35 恒流电子负载作为 7805 的输出负载。 使用数字万用表测量 7805 在不同的输出电流下对应的输出电压的变化。
▲ 图1.1 面包板上搭建的测试电路
1.2 连接WiFi电子负载
1.2.1 设定程序
下面程序是根据前面 FZ35恒流电子负载WiFi接口 博文中给定的示例程序改写的电子负载WiFi连接程序。
from headm import *
import socket
from tsmodule.tsvisa import *
UDP_HOST = '192.168.0.116'
UDP_PORT = 8003
UDP_BUFSIZE = 0x1000
uport = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
uport.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, UDP_BUFSIZE)
uport.settimeout(0.2)
def uportsend(data):
ADDR = (UDP_HOST, UDP_PORT)
if type(data) != str:
data = str(data)
data = bytes(data, 'gbk')
uport.sendto(data, ADDR)
def uportrecv():
try:
data, ADDR = uport.recvfrom(UDP_BUFSIZE)
except socket.timeout:
printf('Meter time out.')
data = ''
if len(data) > 0:
return data.decode('utf-8')
else: return ''
def uportval():
uportsend('MEMOS')
splitstr = uportrecv().split(' ')
data = []
for val in splitstr:
if len(val) > 1:
data.append(eval(val))
return data
printf('\\a')
a = 25
uportsend('0.%02dA'%a)
1.2.2 确定IP地址
在 192.168.0.1 Tenda 设定网页中, DHCP服务器中的HDCP客户列表 查找WiFi 动态 IP 地址。
▲ 图1.1.1 确定WiFi通讯模块中的IP地址
1.3 测量结果
1.3.1 测量程序
使用电子负载吸收电流, 范围是 (0,500mA),测量对应的 7805 的输出电压。
from headm import *
import socket
from tsmodule.tsvisa import *
from tsmodule.tsstm32 import *
UDP_HOST = '192.168.0.116'
UDP_PORT = 8003
UDP_BUFSIZE = 0x1000
uport = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
uport.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, UDP_BUFSIZE)
uport.settimeout(0.2)
def uportsend(data):
ADDR = (UDP_HOST, UDP_PORT)
if type(data) != str:
data = str(data)
data = bytes(data, 'gbk')
uport.sendto(data, ADDR)
def uportrecv():
try:
data, ADDR = uport.recvfrom(UDP_BUFSIZE)
except socket.timeout:
printf('Meter time out.')
data = ''
if len(data) > 0:
return data.decode('utf-8')
else: return ''
def uportval():
uportsend('MEMOS')
splitstr = uportrecv().split(' ')
data = []
for val in splitstr:
if len(val) > 1:
data.append(eval(val))
return data
printf('\\a')
uportsend('0.00A')
time.sleep(1)
idim = []
vdim = []
for i in range(50):
uportsend('0.%02dA'%i)
time.sleep(1.5)
meter = meterval()
idim.append(i*10)
vdim.append(meter[0])
printf(meter)
tspsave('measure', idim=idim, vdim=vdim)
uportsend('0.00A')
plt.plot(idim, vdim)
plt.xlabel("Current(mA)")
plt.ylabel("Voltage(V)")
plt.grid(True)
plt.tight_layout()
plt.show()
1.3.2 测量结果
(1)测量7805
-
测试条件:
-
输入电压
:9V
负载滤波电容
:0.1uF
下面是测量结果。可以看到,输出电压 与电流之间并不是一个线性,也不是一个单调的关系。
猜测这是否 因为电子负载并不是一个纯粹的电阻,所以引起的 7805 的输出会产生震荡。
▲ 图1.2.1 7805 输出电压与负载电流
下面是记录的具体数据。
idim=[0.00,10.00,20.00,30.00,40.00,50.00,60.00,70.00,80.00,90.00,100.00,110.00,120.00,130.00,140.00,150.00,160.00,170.00,180.00,190.00,200.00,210.00,220.00,230.00,240.00,250.00,260.00,270.00,280.00,290.00,300.00,310.00,320.00,330.00,340.00,350.00,360.00,370.00,380.00,390.00,400.00,410.00,420.00,430.00,440.00,450.00,460.00,470.00,480.00,490.00]
vdim=[5.01,5.01,5.01,5.01,5.00,5.00,5.00,5.00,5.00,5.00,5.00,4.99,4.99,4.97,4.96,4.95,4.94,4.94,4.94,4.95,4.95,4.95,4.95,4.95,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96,4.96]
在测试电路中,在7805 的输出增加增加一个 100uF 的电解电容, 在 7805 的输入端再增加 一个 0.1uF的电容。再次测量,如下是测量结果。
▲ 图1.2.2 7805输出电流与电压
可以看到这一次 7805 的输出电压与电流之间呈现单调下降的关系了。
(2)测量7809
7809 没有增加散热片。输入电压:12V
-
测量条件:
-
输入电压
:12V
散热条件 :无
下面是第一次测量后的结果。
▲ 图1.3.3 7809输出电流与输出电压
下面增加散热片之后,再重新测量一遍。下面是增加有散热片之后的输出电流与电压,可以看到它的输出随着输出电流大约呈现线性下降。由此可以解释,上面的曲线在一定程度上又到 7809 芯片的温度影响,使得后期的电压下降加速。
▲ 添加有散热片之后的7809输出电压与电流
02 输入电压影响
测量 7805, 7809 的输出又到输入电压的影响。
2.1 测量方法
在 7805, 7809 输出使用一个固定的 200 欧姆的负载,测量输入电压的变化引起输出电压的变化。
下面是测试程序:
from headm import *
from tsmodule.tsvisa import *
from tsmodule.tsstm32 import *
vin = linspace(12, 24, 50)
vout = []
for v in vin:
dh1766volt(v)
time.sleep(1.5)
meter = meterval()
printff(v, meter)
vout.append(meter[0])
tspsave('measure', vin=vin, vout=vout)
'''
vin, vout = tspload('measure', 'vin', 'vout')
printf(vin, vout)
'''
printf('\\a')
plt.plot(vin, vout)
plt.xlabel("Vin(V)")
plt.ylabel("Vout(V)")
plt.grid(True)
plt.tight_layout()
plt.show()
2.2 测试结果
2.2.1 测量 7805
-
测量条件:
-
输入电压
:7-24V
负载
:220Ω
散热条件
:增加有散热片
测试结果如下图所示:
▲ 7805的输入电压与输出电压
2.2.2 测量 7809
-
测试条件:
-
输入电压
:12-24V
负载
:220Ω
散热条件
:有散热片
测试结果如下图所示:
▲ 7809输入电压与输出电压
03 GND电流
三端稳压芯片的 GND 会存在着电流,通常情况下只有几个毫安。 对于这个电流 与输出负载电流是什么关系呢? 下面通过电子负载来测试一下。
3.1 测试方法
使用一个标准的 1Ω 电流采样电阻来测量 GND 流过的电流。使用前面 WiFi 电子负载来设置不同的输出电流。绘制出输出电流与 GND 电流之间的关系。
▲ 图3.1.1 测量三端稳压器GND电流的方法
3.2 测量结果
-
测量条件:
-
输入电压
:12V
电流范围
:0-500mA
电子负载
:FZ35
3.2.1 测量7805
▲ 图3.2.1 输出电流与GND电流
3.2.2 测量7809
▲ 图3.2.2 输出电流与GND电流
通过上面测试结果来看,7805,7809 的 GND 电流与输出电流之间存在着一次线性关系。
※ 总 结 ※
常用到的三端稳压集成电路 7805, 7809,利用可编程数字电源和电子负载对于这两个电源稳压器的一些特性进行测试,基于这些数据为之后的应用奠定基础。
■ 相关文献链接:
● 相关图表链接:
- 图1.1 面包板上搭建的测试电路
- 图1.1.1 确定WiFi通讯模块中的IP地址
- 图1.2.1 7805 输出电压与负载电流
- 图1.2.2 7805输出电流与电压
- 图1.3.3 7809输出电流与输出电压
- 添加有散热片之后的7809输出电压与电流
- 7805的输入电压与输出电压
- 7809输入电压与输出电压
- 图3.1.1 测量三端稳压器GND电流的方法
- 图3.2.1 输出电流与GND电流
- 图3.2.2 输出电流与GND电流
以上是关于基于实际测试 7805,7809若干特性的主要内容,如果未能解决你的问题,请参考以下文章
@张飞老师:如何设计单片机控制的2PIN双色LED灯的驱动电路