基于单片机的可调直流稳压电源设计Word格式文档下载.docx
《基于单片机的可调直流稳压电源设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的可调直流稳压电源设计Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
1引言
随着电力电子技术的迅速发展,直流电源应用非常广泛,其好坏直接影响着电气设备或控制系统的工作性能。
直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。
传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。
而基于单片机控制的直流稳压电源能较好地解决以上传统稳压电源的不足。
直流稳压电源已广泛地应用于许多工业领域中。
在工业生产中(如电焊、电镀或直流电机的调速等),需要用到大量的电压可调的直流电源,他们一般都要求有可以方便的调节电压输出的直流供电电源。
目前,由于开关电源效率高,小型化等优点,传统的线性稳压电源、晶闸管稳压电源逐步被直流开关稳压电源所取代。
开关电源主要的控制方式是采用脉宽调制集成电路输出PWM脉冲,采用模拟PID调节器进行脉宽调制,这种控制方式,存在一定的误差,而且电路比较复杂。
本文设计了一种以高性能单片机为控制核心的输出电压大范围连续可调的功率开关电源,由单片机直接产生PWM波,对开关电源的主电路执行数字控制,电路简单,功能强大。
因此本次课程设计安排对学生的专业知识的学习有很大的意义。
课程设计应强调能力培养为主,在独立完成设计任务的同时,还要注意其他几方面能力的培养与提高,如独立工作能力与创造力;
综合运用专业及基础知识的能力,解决实际工程技术问题的能力;
查阅图书资料、产品手册和各种工具书的能力;
工程绘图的能力;
书写技术报告和编制技术资料的能力。
在专业知识与研究方法方面为日后的毕业设计乃至毕业后的工作奠定良好的基础。
本次课设主要适用于自动化、电气工程及其自动化、测控与仪器等专业,要求学生们具备数字电路、模拟电路、电路基础、自动控制、电力电子、C语言、电气控制相关课程的知识,并具备一些基本的实践操作水平,为以后的就业打好一定的基础。
2设计任务及要求
2.1设计目的
1.学习基本理论在实践中综合运用的初步经验,掌握模拟电路结合单片机设计电路的基本方法、设计步骤,培养综合设计与调试能力。
2.学会直流稳压电源的设计方法和性能指标测试方法,巩固单片机的学习应用。
3.培养实践技能,提高分析和解决实际问题的能力。
2.2设计内容
设计数显式直流稳压电压源,要求完成以下主要技术指标:
1.当输入交流电压为220v±
10%时,输出电压在0~13V连续可调;
2.额定电流为1A,且纹波不大于1mV;
3.使用按键设置电压,同时具有常用电平快速切换功能(3V、5V、6V、9V、12V),设定后按键可以锁定,防止误触动;
4.显示设定电压和测量电压,显示精度为0.01V,显示方式LCD液晶显示;
扩展要求:
两级过流保护功能:
当电流超过额定值的20%达到5秒时,电路做断电操作;
当电流超过额定值的50%时,电路立即断开,并带有报警提示;
掉电以后可记忆上一次的设定值
2.3设计步骤
1.查阅有关资料,完成总体设计框图
2.完成设计框图各个部分的详细设计,并选择合适参数的电子元器件完成各部分电路,绘制电路原理图。
统计所有元器件的参数和数量,购买元器件。
3.将元器件依照电路原理图焊接至电路板上,完成电源的实物制作。
4.调试电路,根据需要调节元件参数,必要时,替换个别元件。
5.完成设计报告。
3电源系统硬件介绍
3.1电源的介绍
随着电子技术的发展,人们对如何提高电源的转换效率,增强对电网的适应性,缩小体积,减轻重量进入了深入的研究。
开关电源应运而生。
七十年代,便应用于电视机的接收,现在已经广泛用于彩电,录像机,计算机,通讯设备,医疗器械,气象等行业。
其中电源是电子设备的心脏部分,其质量的好坏直接影响着电子设备的可靠性与稳定性,而且电子设备的故障60%来自电源,因此作为电子设备的基础元件,电源受到越来越多的重视。
现代电子设备使用的电源大致有线性稳压电源和开关稳压电源两大类[1]。
所谓线性稳压电源,是指在稳压电源电路中的调整管是工作在线性放大区。
将220V、50Hz的工频电压经过线性变压器降压以后,经过整流、滤波和稳压,输出一个直流电压。
线性稳压源的优点是:
电源稳定度及负载稳定度较高;
输出纹波电压小;
瞬态响应速度快;
线路结构简单,便于维修;
没有开关干扰。
缺点是:
功耗大、效率低,其效率一般只有35~60%;
体积大、质量重、不能微小型化;
必须有较大容量的滤波电容。
其中,交换效率低下是线性稳压电源的重要缺点,造成了资源的严重浪费。
在这种背景下,开关稳压电源应运而生。
任何电子设备均需直流电源来供给电路工作。
特别是采用电网供电的电子产品。
为了适应电网电压波动和电路的工作状态变化,更需要具备适应这种变化的直流稳压电源。
稳压电源的调整管工作在开关状态,主要优越性是交换效率可高达70~95%。
开关稳压电源的优越性还体现在:
功耗小、效率高。
晶体管在激励信号的激励下,交替的工作在导通-截止的开关状态,转换速度很快,频率一般为50kHz左右。
开关晶体管的功耗很小,电源的效率可以大幅度的提高,达到80%以上。
体积小、重量轻。
开关稳压电源里没有采用笨重的工频变压器[2]。
调整管上的耗散功率大幅度降低以后,省去了较大的散热片。
而且稳压范围宽。
开关电源的输出电压是由激励信号的占空比来调节的,输入信号电压的变化可以通过调频或调宽来控制,在工频电网电压变化较大时,它仍能保证有效的稳定输出电压。
开关稳压电源实现稳压的方法也较多,可以根据实际应用的要求,灵活的选用各种类型的开关稳压电源。
电路形式灵活多样。
稳压电源的主要问题是电路比较复杂。
输出纹波电压较高,瞬态响应差,并且存在较为严重的开关干扰。
当今,开关稳压电源的进一步推广应用的困难是它的制作技术难度大,维修麻烦和成本较高。
稳压电源的效率是与开关管的变换速度成正比的。
开关稳压电源中采用了开关变压器,使之由一组输入,得到极性,大小各不相同的多组输出。
要进一步提高效率,必须提高电源的工作频率。
但是,当频率提高以后,对整个电路元器件的要求,有了进一步的提高。
这是需要解决的第二个问题。
工作在线性状态的稳压电源,具有稳压和滤波的双重作用,因而串联线性稳压电源不产生开关干扰,且纹波电压输出较小。
但是,在开关稳压电源中的开关管工作在开关状态,其交变电压和输出电流会通过电路中的元器件产生较强的尖峰干扰和谐振干扰。
这些干扰会进入市电电网,影响邻近的电子设备的正常工作。
克服这一缺点,进一步提高它的使用范围,是要解决的第三个问题。
3.2AT89S52单片机
AT89S52单片机为ATMEL所生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flsah存储器[3]。
3.2.1AT89S52的功能介绍
1、拥有灵巧的8位CPU和在系统可编程Flash。
2、晶片内部具时钟振荡器(传统最高工作频率可至12MHz)。
3、内部程序存储器(ROM)为8KB。
4、内部数据存储器(RAM)为256字节。
5、32个可编程I/O口线。
6、8个中断向量源。
7、三个16位定时器/计数器。
8、三级加密程序存储器。
9、全双工UART串行通道。
3.2.2AT89S52的个引脚功能
图1at89s52单片机引脚图
VCC:
AT89S52电源正端输入,接+5V。
VSS:
电源地端。
XTAL1:
单芯片系统时钟的反相放大器输入端。
XTAL2:
系统时钟的反相放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一20PF的小电容,可以使系统更稳定,避免噪声干扰而死机。
RESET:
AT89S52的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
EA/Vpp:
"
EA"
为英文"
ExternalAccess"
的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。
因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。
如果是使用8751内部程序空间时,此引脚要接成高电平。
此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(Vpp)。
ALE/PROG:
ALE是英文"
AddressLatchEnable"
的缩写,表示地址锁存器启用信号。
AT89S52可以利用这支引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0~A7)锁进锁存器中,因为AT89S52是以多工的方式送出地址及数据。
平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。
此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。
PSEN:
此为"
ProgramStoreEnable"
的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。
AT89S52可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。
PORT0(P0.0~P0.7):
端口0是一个8位宽的开路汲极(OpenDrain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。
其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。
如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。
设计者必须外加一锁存器将端口0送出的地址栓锁住成为A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址总线,而定址到64K的外部存储器空间。
PORT2(P2.0~P2.7):
端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。
P2除了当做一般I/O端口使用外,若是在AT89S52扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当做I/O来使用了。
PORT1(P1.0~P1.7):
端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LSTTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。
如果是使用8052或是8032的话,P1.0又当做定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。
PORT3(P3.0~P3.7):
端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。
其引脚分配如下:
P3.0:
RXD,串行通信输入。
P3.1:
TXD,串行通信输出。
P3.2:
INT0,外部中断0输入。
P3.3:
INT1,外部中断1输入。
P3.4:
T0,计时计数器0输入。
P3.5:
T1,计时计数器1输入。
P3.6:
WR:
外部数据存储器的写入信号。
P3.7:
RD,外部数据存储器的读取信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
反向振荡放大器的输入及内部时钟工作电路的输入。
来自反向振荡器的输出。
3.3数码管显示
本次设计显示设备采用四位数码管来显示输出电压。
3.3.1数码管结构及原理
下图为典型的数码管:
图27段LED数码管
如上图,LED显示器又称为数码管,LED显示器由8个发光二极管组成。
中7个长条形的发光管排列成“日”字形,另一个贺点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。
LEDD显示器有两种不同的形式:
一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED显示器;
另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED显示器[4]。
如下图所示。
图3共阴与共阳极LED显示器
LED显示器可分为共阳和共阴两种结构,如上图所示。
图上为共阴结构。
即把8个发光二极管阴极连在一起。
这时如果需要点亮a到g中的任何一盏灯,只需要在相应的端口输入高电平即可;
输入低电平则截止。
比如我们现在要显示数字“3”,则只要在对应的a、b、c、d、g段送入高电平,在其他端送入低电平即可,点亮为“3”。
共阴和共阳结构的LED显示器各笔划段名和安排位置是相同的。
当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示的各种字符。
8个笔划段hgfedcba对应于一个字节(8位)的D7D6D5D4D3D2D1D0,于是用8位二进制码就可以表示欲显示字符的字形代码。
例如,对于共阴LED显示器,当公共阴极接地(为零电平),而阳极hgfedcba各段为0111011时,显示器显示"
P"
字符,即对于共阴极LED显示器,“P”字符的字形码是73H。
如果是共阳LED显示器,公共阳极接高电平,显示“P”字符的字形代码应为10001100(8CH)。
下表列出了共阳极与共阴极LED显示器显示数字、字母与显示代码之间的对应关系。
表1共阳共阴LED常见字符对应段码表
显示字符
共阴极段码
共阳极段码
3FH
C0
8
7FH
80H
1
06H
F9
9
6FH
90H
2
5BH
A4
A
77H
88H
3
4FH
B0
B
7CH
83H
4
66H
99H
C
39H
C6
5
6DH
92H
D
5EH
A1H
6
7DH
82H
E
79H
86H
7
07H
F8
F
71H
8EH
3.3.2数码管显示方式
点亮LED显示器有两种方式:
一是静态显示;
二是动态显示。
在本次设计中,采用的是静态显示。
所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。
这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小。
这种电路的优点在于:
在同一时间可以显示不同的字符;
但缺点就是占用端口资源较多。
从下图可以看出,每位LED显示器需要单独占用8根端口线,因此,在数据较多的时候,往往不采用这种设计,而是采用动态显示方式。
图4动态显示图
所谓动态显示,就是将要显示的多位LED显示器采用一个8位的段选端口,然后采用动态扫描一位一位地轮流点亮各位显示器。
下图为4位LED显示器动态显示电路。
图5静态显示图
在此电路中,单片机的P0口用于控制4位LED的段选码:
P1口的P1.0~~P1.3用于控制4位LED位选码。
由于所有的段选码连在一起,所以同一瞬间只能显示同一种字符。
但如果要显示不同字符,则要借助位选码来控制。
(如果LED为共阴则P2.0~~P2.3输出为高电平,如果LED为共阳则P1.0~~P1.3输出为低电平。
)
例如,现在要显示5678四个数字,则首先应该将“5”的显示代码(共阴LED显示器的显示代码为6DH,共阳LED显示器的显示代码为92H)由P1.0送出,然后P2.0~~P2.3输出相应位码(LED为共阴则P2.0~~P2.3输出1000,)LED为共阴则P2.0~~P2.3输出0111)时,则可以看到在数码管1上显示的数字为“5”。
再将显示的数字“5”延时5~10ms,以造成视觉暂留效果;
同时代码由P1.0送出。
用同样的方法将其余3个数字“678”送数码管2,3,4显示,于是最后则可以在4位LED显示器上看到“5678”四个数字。
为了使显示效果更加稳定,可以使每个数码管显示的数字不断的重复,但其中重复频率达到了一定的程度的时候,加之人眼睛本身的视觉暂留效果的作用,便可以看到相当稳定的“5678”四个数字。
3.4TLC1543AD转换芯片
TLC1543美国TI司生产的多通道、低价格的模数转换器。
采用串行通信接口,具有输入通道多、性价比高、易于和单片机接口的特点,可广泛应用于各种数据采集系统。
TLC1543为20脚DIP装的CMOS[5]。
10位开关电容逐次A/D逼近模数转换器,引脚排列下图所示。
其中A0~A10(1~9、11、12脚)为11个模拟输入端,REF+(14脚,通常为VCC)和REF-(13脚,通常为地)为基准电压正负端,CS(15脚)为片选端,在CS端的一个下降沿变化将复位内部计数器并控制和使能ADDRESS、I/OCLOCK(