数控直流稳压源的课程设计.docx
《数控直流稳压源的课程设计.docx》由会员分享,可在线阅读,更多相关《数控直流稳压源的课程设计.docx(19页珍藏版)》请在冰豆网上搜索。
数控直流稳压源的课程设计
数控直流稳压源的设计
1系统描述即设计要求
数控直流稳压电源是将家用电220V的交流电转换成直流电压,然后通过微控
制器将直流电压分成不同的范围进行输出,即实现多范围直流电压输出。
本次试验将220V的家用交流电转换成5V直流电压,再通过微控制器将5V的直流电压分成不同的范围输出,如:
1V,2V,3V,4V,5V。
1.1数控直流稳压电压的作用
现在社会电子器件使用的电源基本上都是直流电源,范围一般在0——12V左右,例如小孩的玩具车,开发板的供电电压等等。
然而我们生活中用电为220V的交流电,绝对不能作为电子器件的电源。
因此,这就需要我们备有直流电源,但是直流电源的型号很多,有时只需一种无法满足我们的需要,为了克服这个问题,数控直流电源就孕育而生。
它基本上能够满足绝大多数电子器件的供电要求。
因此学会制作数控稳压直流电源对生活的用处很大。
1.1.1实现目标
数控直流稳压电源主要有稳压电路和控制电路两部分组成。
稳压电路主要完成的任务是将220V的交流电压稳定的输出为5V的直流电压;控制电路的主要任务是将5V的直流电压通过控制器分别输出0.5V,1.0V,1.5V,2.0V,2.5V,3.0V,3.5V,4.0V,4.5V,5V的直流电压。
2方案论证
实现数控直流稳压电源的方法有很多,根据要求的精度来分大致可以分为简易数控直流稳压电源和高精度数控直流稳压电源。
我所设计的为简易数控直流稳压电源,其精度不很高。
开始为制定的大致方案分为两类:
开环式数控直流稳压电源和闭环式数控直流稳压电源。
2.1开环式数控直流稳压电源和闭环式数控直流稳压电源
开环式数控直流稳压电源,顾名思义,就是整个系统没有形成一个环路,是开放的。
它通过微控制器控制一个数模转换器件(DAC)将5V的直流电压转换成不等范围的直流电压直接输出,而没有再通过模数转换器(ADC)反馈到微控制器去控制数码管的输出,此时数码管的输出主要有测量好电压的程序控制。
此方案简单容易操作,成本比较低,然而数码管显示的电压与实际输出的电压有误差。
闭环式数控直流稳压电源不仅用到数模转换器件输出电压,而且输出的电压还要经过模数转换器反馈到为控制器中去控制数码管的显示。
这样数码管显示电压与实际数模转换器件输出的电压相符合,其精度高,误差小,但是由于另加了模数转换器使其成本增加。
模数和数模转换器易受到外界的影响,加上手工焊接工艺,受到外界的影响更大,出现不稳定。
考虑到制作成本和对精度的要求以及整个系统的稳定性,我选用开环式数控直流稳压电源的设计方案。
3硬件设计
开环式数控直流稳压电源主要稳压电路和控制电路两部分组成。
稳压电路主要有变压器、整流桥、稳压器件(7805)组成来实现交流变直流的功能;稳压电路主要有单片机(89C51)、数模转换器(ADC0832)、数码管组成来实现直流电压的步进输出。
3.1系统的原理方框图
降压明
11V
~220V
整流和滤波
7805
5V
89C51
DAC0832
控制
步进
显示
开环式数控直流稳压电源框图
稳压电路各部的波形如下:
220V交流电降压后的波形
整流后波形滤波后的波形
从上面的波形的变化可以看出:
220V的交流电经过降压器降低幅度(U1=Ui/N),然后经过整流桥变成变化的直流电(U2=0.9*U1),在经过滤波电路形成变换缓慢的直流电(U3=1.2*U1),最后经过稳压器件输出稳定的5V直流电压。
微控制器通过程序控制DAC0832的输出,从而实现步进电压的输出,然后通过数码管显示。
3.2元器件选型
按照实验的要求,稳压电路输出的为5V的直流电压,因此稳压管选用7805。
稳压器件(7805)输出的为5V直流电压,其输入电压一般为9-15V之间。
假设降压器的输出为U1,滤波电容的耐压值应大于
,而滤波后的平均电压为1.2*U1,通过计算U1的值大约在7.5~9.5之间,及降压器的匝数比N=220/(7.5~9.5)。
一般取稳压器件的输入电压为11V左右,因而选用降压器的匝数比为24。
滤波电容的耐压值至少为15V,因此我选择的滤波电容为100uf,耐压值为25V。
而整流桥选用的是用4个1n4001二极管组成的整流桥。
控制电路的微控制器选用的为单片机89C51,数模转换器件使用的为DAC0832。
DAC0832是8分辨率的D/A转换集成芯片,与微处理器完全兼容。
此DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。
D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
由于DAC0832输出的是电流,而要求输出的为电压,因此需要外接运算放大器或电阻将电流输出转换成电压输出,而采用外接电阻是,输出的电压很难控制,因为不好找到一种对应的线性关系。
为了量测方便我选用合适的外接运算放大器。
由于显示电压精确到小数点后一位,因为我选用2个共阴极的数码管来显示输出电压。
在整个电路中,稳压管7805输出的电压要与DAC0832的参考电压VREF引脚相连。
其DAC的输出值为
,其中D为D0—D7对应的十进制数。
DAC0832
7805的部分参数:
参数
符号
测试条件
最小值
典型值
最大值
单位
输出电压
Vo
Tj=25℃
4.8
5.0
5.2
V
5.0mA<1o<1.0A,Po<15W
Vi=7.5vto20v
4.75
5.00
5.25
V
线性调整率
△Vo
Tj=25℃,Vi=7.5Vto25V
4.0
100
mV
Tj=25℃,Vi=8Vto12V
1.6
50
mV
负载调整率
△Vo
Tj=25℃,lo=5.0mAto1.5A
9
100
mV
Tj=25℃,lo=250mAto750mA
4
50
mV
静态电流
IQ
Tj=25℃
5.0
8
mA
静态电流变化率
△IQ
lo=5mAto1.0A
0.03
0.5
mA
Vi=8Vto25V
0.3
0.8
mA
输出电压温漂
△Vo/△T
lo=5mA
0.8
mV/
℃
输出噪音电压
VN
f=10Hzto100KHz,Ta=25℃
42
μV
纹波抑制比
RR
f=120Hz,Vi=8Vto18V
62
73
dB
输入输出电压差
Vo
lo=1.0A,Tj=25℃
2
V
输出阻抗
Ro
f=1KHz
15
mΩ
短路电流
1SC
Vi=35V,Ta=25℃
230
mA
峰值电流
1PK
Tj=25℃
2.2
A
DAC0832的主要参数:
分辨率为8位;
1.电流稳定时间1us;2.可单缓冲、双缓冲或直接数字输入;
3.只需在满量程下调整其线性度;4.单一电源供电(+5V~+15V);
5.低功耗,20mW。
3.3硬件主电路
数控直流稳压电源由稳压电路和控制电路两部分组成。
稳压电路电路图如下图所示:
7805
滤波电容
降压器
整流桥
控制电路电路图如下如所示:
注:
将稳压电路中7805的输出引脚与控制电路中DAC0832的VREF引脚相连即可组成完整的数控直流稳压电源电路。
4软件设计
实现直流电压的步进输出主要靠软件完成。
DAC0832输出的电压为
其中D为D0—D7对应的十进制数。
因此D0—D7的值控制着DAC0832的输出,而0832又由单片机89C51控制,控制D0—D7引脚的程序直接控制着08532的输出。
4.1软件设计思想及主流程
程序直接控制着0832的D0—D7的引脚,因此引脚驱动程序不同,0832的输出就不一同。
因此只要编写的程序控制着不同引脚输出就可以达到步进输出的目的。
由于本实验的步进0.5,及把5V的电压成9个不同的输出。
然而D0—D7共有256种组合,只要在这256种组合中挑选合适的9种组合即可。
首先经过编程测试找出符合要求的9种组合,然后通过按钮式输出不同的组合,从而控制0832的输出,并用数码管进行显示。
4.2流程框图及关键代码
开始
启动D/A转换
N
有键按下
Y
电压转换
LED数码管显示电压值
结束
DAC0832数/模转换程序流程图
程序代码:
#include
#defineucharunsignedchar
intflag,m,n;
sbitkey1=P1^0;
ucharcodetable[]={
0xbf,0x86,0xdb,0xcf,
0xe6,0xed,0xfd,0x87,
0xff,0xef};
ucharcodetable1[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f};
voiddelay(ucharz);
voiddisplay(ucharnum);
voidmain()
{
P0=0x00;
P2=0x00;
P3=0xff;
while
(1)
{
if(key1==0)
{
delay(5);
if(key1==0)
{
flag++;
}
while(!
key1);
}
if(flag==1)
{
P0=0x19;//0.5V
display(5);
}
if(flag==2)
{
P0=0x33;//1V
display(10);
}
if(flag==3)
{
P0=0x4d;//1.5V
display(15);
}
if(flag==4)
{
P0=0x67;//2V
display(20);
}
if(flag==5)
{
P0=0x81;//2.5V
display(25);
}
if(flag==6)
{
P0=0x9a;//3V
display(30);
}
if(flag==7)
{
P0=0xb4;//3.5V
display(35);
}
if(flag==8)
{
P0=0xcd;//4V
display(40);
}
if(flag==9)
{
P0=0xe7;//4.5V
display(45);
}
if(flag==10)
{
P0=0xff;//5V
display(50);
}
if(flag==11)
{
P0=0x00;//0V
flag=0;
P3=0xff;
P2=0x00;
}
}
}
voiddelay(ucharz)//延迟程序
{
ucharx,y;
for(x=z;x--;x>0)
for(y=110;y--;y>0);
}
voiddisplay(ucharnum)//数码管显示程序
{
n=num/10;
m=num%10;
P3=0xfe;
P2=table[n];
delay(5);
P3=0xfd;
P2=table1[m];
delay(5);
}
程序主要有DAC0832的驱动程序、数码管的显示程序和按键的扫描程序构成。
5系统调试
电子设计中最要的一个环节就是仿真。
而仙现在实现电子电路仿真的软件非常多,我用的仿真软件是Proteus。
刚开始我把设计的原理图手工画在作业纸上,可是无法判断其是否正确,因此这就需要在Proteus进行仿真。
由于这个软件用的不太熟练,在软件中找到正确的元器件对于我来说就有点困难。
只好在图书馆借相关的书籍进行查询。
找到正确的元器件后,就需要我们手动设计元件的参数,如交流电压的幅度:
220*1.414,降压器的匝数比,滤波电容的参数等等。
等把所有的后续工作完成后,我开始布线进行仿真阶段。
可是仿真的结果却让我失望,稳压管(7805)输出的电压不是5V,而是非常低的一个值。
根据这个问题我开始软件中自带的电压表对7805的输入端进行测量,发现其输入的电压值远远低于规定值。
于是我初步判断应该是变压器的参数设置的不太合理。
我打开变压的属性框,发现有些地方的参数设置的不对。
修改后再次测试7805的输出为稳定的5V。
为了直观判断稳压管是否有电压输出,我在其输出的两侧接了一个指示灯和限流电阻,用来提示稳压管是否正常工作。
稳压电路仿真成功后,接下来做的是控制电路的仿真。
控制电路主要由单片机和DAC0832以及两个共阴极的数码管组成。
待把控制电路布线好之后,不能进行仿真,这是由于单片机中还没有下载驱动程序。
接下来就是写驱动程序,程序中主要有两个模块组成,一个是DAC0832的驱动程序,另一个是数码管现实的驱动程序。
由于使用的数/模转换为并行口,因此其程序比较简单。
数码管驱动用的是动态扫描程序,这样可以节省单片机的I/O端口。
刚开始使用的是若干开关去控制DAC0832的输出,可是这样开关比较多,扫描程序教复杂且成本增加。
于是我更改为一个开关的复用,通过对一个开关的操作,就可以是实现直流电压的步进输出。
待把程序写好之后,便可把其下载到单片机中,同时测试程序与电路的正确性。
通过开关的控制逐次每次的输出是否符合要求。
发现部分显示不正常,那是程序的问题,通过不断地修改和完善程序,最终使数码管的显示和DAC0832的输出相符合。
即控制电路完成。
值得注意的是,在仿真电路中,单片机可以没有时钟电路和复位电路,可是在实际的电路中必须含有单片机的时钟电路和复位电路。
最后把7805的输出端接到0832的VREF端,整个电路就完成了。
设计心得
数控直流稳压电源在我们生活中的用处非常多,诸如小孩的玩具、生活小的家用电器、我们学习用的开发板……当把简易的数控直流稳压电流设计出来时,内心
有成就感,感觉到自己所学的知识运用到实际的生活中去,感觉到知识的力量。
它需要我们留心观察和细心思索,努力探索生活中实物的本质,并结合我们所学得知识分析它到达改善和创新的目的。
电子的制作尽可能做仿真,这样能保障我们设计的原理正确,按照仿真图去焊接实物。
当我们的电路出现问题时,不要心慌,而是静下心来慢慢思索。
根据电路的原理和出错的现象估计出错的模块电路,如果不容易找到,一般采用万用表逐点测量,知道查找到错误的地方为止。
在写控制电路的驱动程序时,要注意分层,这样易于理解和修改。
而且我们要有耐心,因为我们要在256中组合中找出合适的9种组合,这就需要我们不断地测试和修改。
整个程序写好之后,还要对程序进行优化,使程序尽可能的简练。
总之一句话,在制作电子器件的过程中要细心和耐心。
我所设计的数控稳压直流电源比较完善。
基本上能满足小型电子器件的供电要求,精度可以达到小数点后一位,步进为0.5。
而且数码管的显示和数/模转换实际的输出符合一致。
但是面对较大型号的电子器件它不能满足电源要求,需要进一步改进变化范围,而且整个电路输出的电压为负值,在我们外接电路时要时刻注意,不能接错引脚,这就给人们的正常思维带来不便。
这个简易的数控直流稳压电源虽然能满足小电子器件的要求,但总体来说不能精确,输出范围不能大,数码管和实际的输出有误差。
因此如果想要得到理想的输出效果,需要我们进一步的改进。
生活中我们要勤动手与勤思考,把我们所学的知识尽可能的运用到实践中去。
参考文献
[1]童诗白,华成英.模拟电子技术基础(第四版).清华大学电子学教研组,高等教育出版,2006
[2]阎石.数字电子技术基础(第五版).清华大学电子学教研组,高等教育出版,2005
[3]肖看,李群芳.单片机原理、接口及应用,北京:
清华大学出版社,2010
[4]陈中平.基于Proteus的51系列单片机设计与仿真(第2版),北京:
电子工业出版社,2012
运行结果:
稳压电路运行结果
稳压电路运行结果