完整版基于单片机的数控直流稳压电源的设计_第1页
完整版基于单片机的数控直流稳压电源的设计_第2页
完整版基于单片机的数控直流稳压电源的设计_第3页
完整版基于单片机的数控直流稳压电源的设计_第4页
完整版基于单片机的数控直流稳压电源的设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于单片机的数控直流稳压电源的设计作者姓名电气工程及其自动化讲师专业指导教师姓名专业技术职务摘要1第一章引言11.1. 数控电源的开展史 11.2. 数控电源的应用范围21.3. 数控电源的优点 2第二章系统的设计要求和方案选择 32.1. 设计要求 32.2. 方案论证与比较 32.2.1 稳压电源的选择3.2.2.2 数字显示方案4.第三章系统硬件设计43.1. 系统设计 43.2. 微限制器模块53.2.1 8051 单片机的性能 6.3.2.2 8051 单片机的最小系统63.3. 电源模块 73.3.1 单片机供电模块7.3.3.2 整流滤波电路和+5v供电模块 73.4. W117

2、电阻网络和继电器驱动电路 83.5. 显示电路 103.6. 键盘电路 10第四章软件114.1. 主程序114.2. 扫描键盘程序 174.3. 显示驱动程序 18第五章总结23第六章附件电路图 24参考文献25致谢26数控直流稳压源就是能用数字来限制电源输出电压的大小,而且能使输出的直流电压能保持稳定、精确的直流电压源;数控电源是针对传统电源的缺乏设计 的,数字化能够减少生产过程中的不确定因素和人为参与的环节数,有效地解决电源模块中诸如可靠性、智能化和产品一致性等工程问题,极大地提升生产效率 和产品的可维护性,市场前景广阔.在本文中限制局部主要以8051单片机为核心制作限制电路,稳压局部主

3、要以 w117为核心制作三端稳压电路,显示局部采 用数码管显示,输入采用键盘式输入再加一个驱动电路; 通过软件编程有效的实 现可控、可显的电源输出.关键词:直流稳压电源;8051单片机; 数码管显示.第一章引言1.1, 数控电源的开展史电源技术尤其是数控电源技术是一门实践性很强的工程技术,效劳于各行各业.电力电子技术是电能的最正确应用技术之一. 当今电源技术融合了电气、电子、 系统集成、限制理论、材料等诸多学科领域.随着计算机和通讯技术开展而来的 现代信息技术革命,给电力电子技术提供了广阔的开展前景, 同时也给电源提出 了更高的要求.随着数控电源在电子装置中的普遍使用, 普通电源在工作时产生的

4、误差,会 影响整个系统的精确度.电源在使用时会造成很多不良后果,世界各国纷纷对电 源产品提出了不同要求并制定了一系列的产品精度标准.只有满足产品标准,才能够进入市场.随着经济全球化的开展,满足国际标准的产品才能获得进出的通 行证.数控电源是从80年代才真正的开展起来的,期间系统的电力电子理论开始 建立.这些理论为其后来的开展提供了一个良好的根底.在以后的一段时间里, 数控电源技术有了长足的开展.但其产品存在数控程度达不到要求、分辨率不高、 功率密度比较低、可靠性较差的缺点.因此数控电源主要的开展方向,是针对上 述缺点不断加以改善.单片机技术及电压转换模块的出现为精确数控电源的开展 提供了有利的

5、条件.新的变换技术和限制理论的不断开展, 各种类型专用集成电 路、数字信号处理器件的研制应用.到90年代,己出现了数控精度到达 0.05V的数控电源,功率密度到达每立 方英寸50W勺数控电源.从组成上,数控电源可分成器件、主电路与限制等三部分.目前在电力电子器件方面,几乎都为旋纽开关调节电压,调节精度不高,而 且经常跳变,使用麻烦.数字化智能电源是针对传统电源的缺乏设计的,数字化 能够减少生产过程中的不确定因素和人为参与的环节数,有效地解决电源模块中诸如可靠性、智能化和产品一致性等工程问题,极大地提升生产效率和产品的可 维护性.1.2, 数控电源的应用范围在家用电器和其他各类电子设备中,通常都

6、需要电压稳定的直流电源供电. 但在实际生活中,都是由220V的交流电网供电.这就需要通过变压、整流、滤 波、稳压电路将交流电转换成稳定的直流电.滤波器用于滤去整流输出电压中的 纹波,一般传统电路由滤波扼流圈和电容器组成, 假设由晶体管滤波器来替代,那么 可缩小直流电源的体积,减轻其重量,且晶体管滤波直流电源不需直流稳压器就 能用作家用电器的电源,这既降低了家用电器的本钱,又缩小了其体积,使家用 电器小型化.传统的直流稳压电源通常采用电位器和波段开关来实现电压的调节 并由电压表指示电压值的大小,因此,电压的调整精度不高,读数欠直观,电位器 也易磨损,而基于单片机限制的直流稳压电源能较好地解决以上

7、传统稳压电源的 缺乏.从上世纪九十年代末起,随着对系统更高效率和更低功耗的需求,电信与数据通讯设备的技术更新推动电源行业中直流 /直流电源转换器向更高灵活性和智 能化方向开展.整流系统由以前的分立元件和集成电路限制开展为微机限制,从而使直流电源智能化,根本实现了直流电源的无人值守.直流稳压电源是最常用的仪器设备,在科研及实验中都是必不可少的.数控电源采用按键盘,可对输 出电压进行设置,输出由单片机通过 D/A,限制驱动模块输出一个稳定电压.同 时稳压方法采用单片机限制,单片机通过A/D采样输出电压,与设定值进行比 较,假设有偏差那么调整输出,越限那么输出报警信号并截流.工作过程中,稳压电源 的

8、工作状态(输出电压、电流等各种工作状态)均由单片机输出驱动 LCD显示, 由键盘限制进行动态逻辑切换.以单片机为核心的智能化高精度简易直流电源的 设计,电源采用数字调节、输出精度高,特别适用于各种有较高精度要求的场合.1.3, 数控电源的优点(1)易于采用先进的限制方法和智能限制策略,使电源模块的智能化程度更 高,性能更完美.(2)限制灵活,系统升级方便,甚至可以在线修改限制算法,而不必改动硬 件线路.(3)限制系统的可靠性提升,易于标准化,可以针对不同的系统(或不同型号的产品,采用统一的限制板,而只是对限制软件做一些调整即可.第二章系统的设计要求和方案选择2.1. 设计要求系统电压调节范围为

9、012V,最大输出电流1A,具有过载和短路保护功能. 输出电压可用1602LCDJ晶显示.键盘设有6个键,复位键,步进增减1V两个键, 步进增减0.1V两个键以及确认键.复位键用于启动参数设定状态5V,步进增 减键用于设定参数数值,确认键用于确认输出设定值 .电源开机设定电压输出默认值为 5V.通过步进增减按键功能选择可在不同 的设定参数之间切换,再按确认键进入设定电压输出状态. 假设按复位键,那么电压 输出恢复5V.系统设有自动识别功能,将不接受超出使用范围012V的设 定值2.2. 方案论证与比较2.2.1 稳压电源的选择方案一:简单的并联型稳压电源并联型稳压电源的调整元件与负载并联,因而

10、具有极低的输出电阻,动态特性好,电路简单,并具有自动保护功能;负载短路时调整管截止,可靠性高,但 效率低,尤其是在小电流时调整管需承受很大的电流,损耗过大.方案二:串联型稳压电源并联稳压电源有效率低、输出电压调节范围小和稳定度不高这三个缺点.而 串联稳压电源可以预防这些缺点, 同时串联稳压电源可以通过三端稳压实现,而且这类芯片内部都有过流和过热的保护电路, 例如W117其额定电流可达1.5A, 输出电压的调节范围为1.2-37V ,内部有过流和过热保护电路,而且价格也的相 当廉价如图2.1所示,所以综合考虑采用方案二.图2.1三端稳压器2.2.2 数字显示方案方案一:液晶显示器显示利用单片机的

11、软硬件资源实现高精度高速 A/D转换,转换精度和转换速度可 以通过软件来改变.但是对软件局部要求非常高不易实现.方案二:数码管显示数码管显示分为静态显示和动态显示两种,但是不管哪种显示都具有结构简 单、易于实现等优点.同时采用 3位数码管完全可以满足本设计的要求.在用 8051限制的同时,可以简化软件程序,快速实现.所以本设计中采用数码管显 示.第三章系统硬件设计3.1, 系统设计由于本设计的输入为220V的交流电电压,所以必须先经过整流滤波电路然 后经过三端稳压器的处理输出直流稳定的电压,当然在输出前还得有单片机的控制才可以输出.在限制中单片机通过接受来自键盘的指令信号,并且通过数码显示器显

12、示当前值,然后由单片机发出限制信号限制接口和驱动电路来限制稳压器 的输出,通过数码显示器显示输出值.具体的系统图如图 3.1所示.图3.1系统流程图3.2, 微限制器模块3.2.1 8051单片机的性能AT89S51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory )的低电压,高性能 CMOS粒微 处理器,俗称单片机.该器件采用ATMEIM密度非易失存储器制造技术制造,与 工业标准的MCS-51指令集和输出管脚相兼容.由于将多功能 8位CPUW闪烁存 储器组合在单个芯片中,ATMEL勺AT8

13、9S51是一种高效微限制器,为很多嵌入式 限制系统提供了一种灵活性高且价廉的方案.主要特性为:(1)与MCS-51兼容(2) 4K字节可编程闪烁存储器(3)寿命:1000写/擦循环(4)数据保存时间:10年(5)全静态工作:0Hz-24Hz(6)三级程序存储器锁定(7) 128*8 位内部 RAM(8) 32可编程I/O线(9)两个16位定时器/计数器(10) 5个中断源(11)可编程串行通道(12)低功耗的闲置和掉电模式(13)片内振荡器和时钟电路3.2.2 8051单片机的最小系统对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源模块的稳定可靠是系统平稳运行的前提和根

14、底.51单片机虽然使用时间最早、应用范围最广,但是在实际使用过程中,一个和典型的问题就是相比其 他系列的单片机,51单片机更容易受到干扰而出现程序跑飞的现象,克服这种 现象出现的一个重要手段就是为单片机系统配置一个稳定可靠的电源供电模块.在次最小系统中包含了复位电路、振荡电路和供电电路.如图3.2所示.3.3. 电源模块3.3.1 单片机供电模块为了满足单片机的正常工作,必须给其提供 +5v的直流电源,所以设计一个 可以使用usb的5V直流供电电路,具体电路如图3.3.1所示.图3.3.1单片机供电图3.3.2 整流滤波电路和+5v供电模块整流电路采用桥式电路,整流管采用普遍使用桥堆.根据使用

15、手册可知W7805勺输入端电压为9V, W117勺输入电压为25V,具体电路如图3.3.2所示L.图3.3.2辅助电源模块3.4. W117电阻网络和继电器驱动电路根据w117的根本功能,调压电阻网络可采用如图 3.4.1所示电路.这里的 电阻网络采用分立元件组成的8为权电阻串联式网络,而开关采用舌簧式继电器 的触点.为了使 W117正常工作,要求流过 R1的电流不小于5mA而R1两端的 电压为恒定的1.25v,所以假设取流过 R1的电流为5mA那么R1=1.25V/5mA=250 为了满足调节单位为0.1v ,故R=0.1/5mA=2Q那么可以求得该网络的其他电阻值.图3.4.1W117的调

16、压电阻网络和驱动电路3.5. 显示电路在显示电路中分为静态显示和动态显示,由于本设计是要求采用三位数码管,而静态显示无法满足设计的需要,故在本设计中采用并联动态显示.图 3.5 是动态显示的原理图,只要有一位接通过单片机的扫描让每位选线轮流选通, 同 时在段选线上送出该位要显示的段位码.图3.5系统显示电路3.6. 键盘电路键盘限制电路分为独立式和矩阵式,由于本设计的要求不是特别的高,加上 独立式按键结构电路简单易于实现的特点,所以在本设计中采用独立式按键结 构.电路结构如图3.6.图3.6独立按键式结构图第四章软件4.1.主程序C语言程序如下:#include <REGX51.H>

17、;Unsigned charIed15=0x6f,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f,0x39,0x52,0x64,0x37,0x0e;/9876543210void main()主函数void ledout(unsigned char ATA,char add,char j);void delays(unsigned char t);unsigned char odata,key,temp;unsigned int F,f=0x100; / 初始频率char add=0,j=1;odata = 155; 电压初值为 5vj=1;while

18、(1)for(F=f;F<0x110;F+)P3=0xff;key=P3;if (key!=0xff)unsigned char i;for(i=0;i<10;i+)ledout(odata,add,j);delays(10);ledout(odata,add,-j);delays(10);key=P3;if (key=0xff) break;for(i=0;i<10;i+)ledout(odata,add,j);delays(10);ledout(odata,add,-j);delays(10);)if(add=0) temp=odata;switch(key)(case

19、0x7f: if (add=0)if(odata>57)odata=odata-2;break;case 0xbf: if (add=0)if(odata<255)odata=odata+2;break;case 0xdf: if(add=0)(f=0x100;odata=155;add=1;)else if(add=1)(/f=f*200;f=0x100;odata=55;add=200;)else if(add=-1)(/f=f*200;f=0x100;odata=55;add=200;/记录当前电压值电压力口 0.1V三角波/1时为频率最高,最大允许方波频率跟随256)els

20、e if(add=200)/直流电压add=0;odata=temp; 电压记忆恢复)elseadd=0;odata=temp;)break;case 0xef: if(add!=0)f=f/2;/频率频率加if (f=1)if(add=1)f=0x100;else f=0x3200;)break;)if(odata=255)add=-add;odata=odata+add;if(odata=55)add=-add;P0=odata;/ 送数据)ledout(odata,add,j);/送显示j=-j;)void ledout(unsigned char ATA,char add,char j

21、)(unsigned char DH,DL,temp;switch(add)(case 0:(temp=(ATA-55)/2)-1;十进制转换DH=temp/10;DL=temp%10;break;case 1:(DH=11;DL=12;break;case -1:(DH=11;DL=12;break;case 200:(DH=13;DL=14;break;case -200:(DH=13;DL=14;break;switch(j)(case 1:送数码管高位显示动态显示(P1=ledDH;P1_7=1;break;case -1:P1=ledDL;/送数码管低位显示break; void d

22、elays(unsigned char t) ( unsigned char s; for(;t>0;t-) for(s=0;s<255;s+); 4.2,扫描键盘程序C语言程序如下:/按键键值#include <reg51.h> void key_deal(void) unsigned char Key_value;/ P1.0P1.2 为输入端口/屏蔽P1 口高5位,取键值/ S1按键按下,执行对应子程序/ S2按键按下,执行对应子程序/ S3按键按下,执行对应子程序P1 |= 0x07;Key_value = P1 & 07; switch (Key_va

23、lue) case 6: Sub_S1();break; case 5: Sub_S2();break; case 3: Sub_S3();break;default:break;4.3.显示驱动程序C语言程序如下:#include <reg51.h>#include <absacc.h>#include <Adc_Temp.h>code uchar disp_seg=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7c,0x39,0x5 f,0x79,0x71,0x40,0x00,0xff,

24、0xf3;/ 0 1 2 3 4 5 6 7 8 9 a b c d ef - 全灭,全亮,P./定义显示缓冲区(由定时中断程序自动扫描)uchar DispBuf8; /8位数码管显示的数字码(显示段码的偏移定义键盘状态标志位uchar bdata key_flag=0; / sbit key_first_flag = key_flagA0;sbit key_delay_flag = key_flagA1; sbit key_valid_flag = key_flagA2;/数码管扫描显示初始化 去除数码管的所有显示 显示"P."uchar key_value; /key

25、_value=0: no key, or key_value=1-8 stand for key1-key8 void DispInit();void DispClear();void DispP();/在数码管位置x (0-7)处显示字符c (仅限十进制数字和减号) /void DispChar(unsigned char x, unsigned char y);/显示指定位置x (0-7)处的小数点/void DispDotOn(unsigned char x);/*函数:T1INTSVC()功能:定时器T0的中断效劳函数*/void T1INTSVC() interrupt 1 usin

26、g 1/ interrupt 3 for T1code uchar com = 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;static uchar key_value_temp, n = 0;uchar key_in,i;TR0 = 0;TH0 = 0xf8;/ 0xfc66:1ms for 11.0592MHz, oxf8cd:2ms,0xB800:20ms, 0x4C00:50msTL0 = 0xcd;P1 = 0xFF;/暂停显示if ( (DispBufn&0x80) = 0x80 ) /带小数点显示 DispBufn = DispBufn

27、&0x7f;LED_OUT = (disp_segDispBufn | 0x80);/更新扫描数据)elseLED_OUT = disp_segDispBufn;/ 更新扫描数据P1 = comn; /重新显示if(key_first_flag=0)key_in = KEY_IN;if(key_in!=0xff) /初次检测到有键按下for(i=0; i<n; i+) /n:当前扫描键key_in = key_in>>1;if(key_in&0x01)=0x00 )/ 假设键按下,对应 KEY_IN的输入口读入状态位为0key_first_flag = 1;/

28、置标志key_value_temp = i;/暂存) 一 一) )else if(key_delay_flag=0 && n=key_value_temp)一一key_in = KEY_IN;for(i=0; i<n; i+)key_in = key_in>>1;if( (key_in&0x01)=0x00 ) /经过一轮扫描后(8*2ms=16ms,第一次按下的键仍被R下key_delay_flag = 1;) 一 一else if(key_delay_flag=1 && n=key_value_temp)一一key_in = KEY

29、_IN;for(i=0; i<n; i+)key_in = key_in>>1;if( (key_in&0x01)=0x01 ) /再经过一轮扫描后,按键已释放:那么为有薪键key_valid_flag = 1;key_value = key_value_temp+1;)一一0x07;n+;n&=-/;TR0 = 1; ) /*函数:DispClear()功能:去除数码管的所有显示*/void DispClear()(unsigned char i;for ( i=0; i<8; i+ )(DispBuf = 0x11; /0x00;)/*函数:Disp

30、P()功能:显示"P.",即最高为显示"P.",其余显示灭*/void DispP()(DispClear();DispBuf7 = 0x13; /0xf3;)/*函数:DispChar()功能:在数码管上显示字符参数:x :数码管的坐标位置(07, 0为高位,7为低位)y :要显示的字符,c=019 (仅限十进制数字和减号)*/*void DispChar(unsigned char x, unsigned char y)(/0123456789,-, 全灭,全亮的数码管字型数据/code unsigned char Tab0x3F,0x06,0x5B

31、,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40,0x00,0xff);DispBufx = disp_segy; /Tabx;).*/*函数:DispDotOn()功能:显示指定位的小数点参数:x为数码管坐标*/*void DispDotOn(unsigned char x)DispBuf7-x |= 0x80;)*/ /*函数:DispInit()功能:数码管扫描显示初始化*/void DispInit() DispClear();EA = 0;TMOD &= 0xf0; /0x0F;TMOD |= 0x01; /0x10;TH0 = 0xf8;/

32、0xfc66:1ms for 11.0592MHz, oxf8cd:2ms,0xB800:20ms, 0x4C00:50msTL0 = 0xcd;TR0 = 1;ET0 = 1;EA = 1;)第五章总结在本次设计的过程中,我发现很多的问题,给我的感觉就是很难,很不顺手, 看似很简单的电路,要动手把它给设计出来,是很难的一件事,主要原因是我没 有经常动手设计过电路,还有资料的查找也是一大难题,这就要求我在以后的学 习中,应该注意到这一点,更重要的是我要学会把从书本中学到的知识和实际的 电路联系起来,这不管是对我以后就业还是学习,都会起到很大的促进和帮助, 我相信,通过这次的毕业设计,在以后的学

33、习中我会更加努力,力争把这专业学 好,学精.在本次设计过程中,对纹波也没有提出严格要求,所以常用的稳压集成电路 就可以满足要求.在电路中采用了模拟器件和数字器件所以需要 +5M和-15V电 源供电.本设计输出的电压稳压精度高,可以用在对直流电压要求较高的设备上, 或在科研实验室中当作实验电源使用.同时,通过本次毕业设计,稳固了我学习过的专业知识, 也使我把理论与实 践从真正意义上相结合了起来;考验了我借助互联网络搜集、查阅相关文献资料 和组织材料的综合水平;从中可以自我测验,熟悉到自己哪方面有欠缺、缺乏, 以便于在日后的学习中得以改进、 提升;通过使用电路CAD软彳Multisim ,也 让我

34、了解到计算机辅助设计CAD的智能化,有利于提升工作效率.题目是非常重要的,要选择一个好的题目,就要满足适合我这组制作,并且 也要考虑到自身水平,还有就是容易找到相关的参考资料等条件. 只有符合以上 所说的条件才能做出一个好的设计,所以我就选择了?数控串联型稳压电源?的 设计课程.我查找了大量这方面的相关参考资料,如?电子电路实验及仿真?,«电路与电子技术实验教程?等,还查阅了各种所需芯片的管脚资料. 在这些参 考资料的根底上设想了几个设计方案,并且确定了最后的设计方案.当确定了最终的设计方向以后,我就开始着手完善它的理论方案.根据设计 方案的内容我画出了具体的原理图, 进行逻辑分析和

35、理论计算,然后去电子市场 根据设计要求购置了大量所需的原器件, 准备好了设计所需的一切材料.在焊接 问题上,我也出了很多问题.首先,你必须知道那个电路版哪几条线是通的,这 样对布线和摆放都有好处.再者,焊接的时候,注意焊锡焊接的逻辑对不对,这 里我犯了很多错误,比方说2个触点本来是不连的,但是不小心就会焊接起来, 花了我很多时间找错误.有了这次难忘的经历,我觉得自己充实了许多,学到了很多东西,更重要的 是我学会了如何协同合作,学会了遇到问题应该如何解决.这将在我以后的学习 和工作中起着重要的作用.第六章 附件电路图参考文献1微型计算机接口,许兴存、曾琪琳,电子工业出版社, 2003年.2单片机应用技术教程,张洪润、易涛,清华大学出版社,2003年.3单片机微型计算机原理与接口技术,陈光东,华中理工大学出版社,1999年.Abstract: The NC is a DC source can be used to control the power numbers the size of the output voltage and output DC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论