(论文)基于8051单片机的数控串联联系稳压电源最新优秀毕业论文资料搜集呕血奉献_第1页
(论文)基于8051单片机的数控串联联系稳压电源最新优秀毕业论文资料搜集呕血奉献_第2页
(论文)基于8051单片机的数控串联联系稳压电源最新优秀毕业论文资料搜集呕血奉献_第3页
(论文)基于8051单片机的数控串联联系稳压电源最新优秀毕业论文资料搜集呕血奉献_第4页
(论文)基于8051单片机的数控串联联系稳压电源最新优秀毕业论文资料搜集呕血奉献_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

工 学 院 毕 业 设 计( 论 文 )题 目: 数控串联稳压电源专 业:班 级: 姓 名: 学 号: 指导教师: 日 期:27-目录1.引言21.1.数控电源的发展史21.2.数控电源的应用范围31.3.数控电源的优点32.系统的设计要求和方案选择42.1.设计要求42.2.方案论证与比较43.系统硬件设计53.1.系统设计53.2.微控制器模块53.3.电源模块73.4.调压电阻网络73.5.显示电路83.6.键盘电路94.软件104.1.主程序104.2.扫描键盘程序184.3.显示驱动程序195.总结246.致谢257.参考文献268.附件(电路图)26数控串联型稳压电源的设计电子信息工程专业 许学文 指导老师 闫改珍摘要:数控直流稳压源就是能用数字来控制电源输出电压的大小,而且能使输出的直流电压能保持稳定、精确的直流电压源;数控电源是针对传统电源的不足设计的,数字化能够减少生产过程中的不确定因素和人为参与的环节数,有效地解决电源模块中诸如可靠性、智能化和产品一致性等工程问题,极大地提高生产效率和产品的可维护性,市场前景广阔。在本文中控制部分主要以8051单片机为核心制作控制电路,稳压部分主要以w117为核心制作三端稳压电路,显示部分采用数码管显示,输入采用键盘式输入再加一个驱动电路;通过软件编程有效的实现可控、可显的电源输出。关键词:直流稳压电源;8051单片机;数码管显示1. 引言1.1. 数控电源的发展史 电源技术尤其是数控电源技术是一门实践性很强的工程技术,服务于各行各业。电力电子技术是电能的最佳应用技术之一。当今电源技术融合了电气、电子、系统集成、控制理论、材料等诸多学科领域。随着计算机和通讯技术发展而来的现代信息技术革命,给电力电子技术提供了广阔的发展前景,同时也给电源提出了更高的要求。随着数控电源在电子装置中的普遍使用,普通电源在工作时产生的误差,会影响整个系统的精确度。电源在使用时会造成很多不良后果,世界各国纷纷对电源产品提出了不同要求并制定了一系列的产品精度标准。只有满足产品标准,才能够进入市场。随着经济全球化的发展,满足国际标准的产品才能获得进出的通行证。数控电源是从80年代才真正的发展起来的,期间系统的电力电子理论开始建立。这些理论为其后来的发展提供了一个良好的基础。在以后的一段时间里,数控电源技术有了长足的发展。但其产品存在数控程度达不到要求、分辨率不高、功率密度比较低、可靠性较差的缺点。因此数控电源主要的发展方向,是针对上述缺点不断加以改善。单片机技术及电压转换模块的出现为精确数控电源的发展提供了有利的条件。新的变换技术和控制理论的不断发展,各种类型专用集成电路、数字信号处理器件的研制应用。到90年代,己出现了数控精度达到0.05V的数控电源,功率密度达到每立方英寸50W的数控电源。从组成上,数控电源可分成器件、主电路与控制等三部分。目前在电力电子器件方面,几乎都为旋纽开关调节电压,调节精度不高,而且经常跳变,使用麻烦。数字化智能电源是针对传统电源的不足设计的,数字化能够减少生产过程中的不确定因素和人为参与的环节数,有效地解决电源模块中诸如可靠性、智能化和产品一致性等工程问题,极大地提高生产效率和产品的可维护性。1.2. 数控电源的应用范围 在家用电器和其他各类电子设备中,通常都需要电压稳定的直流电源供电。但在实际生活中,都是由220V 的交流电网供电。这就需要通过变压、整流、滤波、稳压电路将交流电转换成稳定的直流电。滤波器用于滤去整流输出电压中的纹波,一般传统电路由滤波扼流圈和电容器组成,若由晶体管滤波器来替代,则可缩小直流电源的体积,减轻其重量,且晶体管滤波直流电源不需直流稳压器就能用作家用电器的电源,这既降低了家用电器的成本,又缩小了其体积,使家用电器小型化。传统的直流稳压电源通常采用电位器和波段开关来实现电压的调节,并由电压表指示电压值的大小. 因此,电压的调整精度不高,读数欠直观,电位器也易磨损.而基于单片机控制的直流稳压电源能较好地解决以上传统稳压电源的不足。从上世纪九十年代末起,随着对系统更高效率和更低功耗的需求,电信与数据通讯设备的技术更新推动电源行业中直流/直流电源转换器向更高灵活性和智能化方向发展。整流系统由以前的分立元件和集成电路控制发展为微机控制, 从而使直流电源智能化, 基本实现了直流电源的无人值守。直流稳压电源是最常用的仪器设备, 在科研及实验中都是必不可少的。数控电源采用按键盘,可对输出电压进行设置, 输出由单片机通过D/A,控制驱动模块输出一个稳定电压。同时稳压方法采用单片机控制, 单片机通过A/D 采样输出电压, 与设定值进行比较, 若有偏差则调整输出, 越限则输出报警信号并截流。工作过程中, 稳压电源的工作状态(输出电压、电流等各种工作状态) 均由单片机输出驱动LCD显示, 由键盘控制进行动态逻辑切换。以单片机为核心的智能化高精度简易直流电源的设计,电源采用数字调节、输出精度高, 特别适用于各种有较高精度要求的场合。1.3. 数控电源的优点(1)易于采用先进的控制方法和智能控制策略,使电源模块的智能化程度更高,性能更完美。(2)控制灵活,系统升级方便,甚至可以在线修改控制算法,而不必改动硬件线路。(3)控制系统的可靠性提高,易于标准化,可以针对不同的系统(或不同型号的产品),采用统一的控制板,而只是对控制软件做一些调整即可。2. 系统的设计要求和方案选择2.1. 设计要求系统电压调节范围为012V,最大输出电流1A,具有过载和短路保护功能。输出电压可用1602LCD液晶显示。键盘设有6个键,复位键,步进增减1V两个键,步进增减0.1V两个键以及确认键。复位键用于启动参数设定状态(5V),步进增减键用于设定参数数值,确认键用于确认输出设定值.电源开机设定电压输出默认值为5V。通过步进增减按键功能选择可在不同的设定参数之间切换,再按确认键进入设定电压输出状态。若按复位键,则电压输出恢复5V。系统设有自动识别功能,将不接受超出使用范围(012V)的设定值2.2. 方案论证与比较2.2.1稳压电源的选择方案一:简单的并联型稳压电源并联型稳压电源的调整元件与负载并联,因而具有极低的输出电阻,动态特性好,电路简单,并具有自动保护功能;负载短路时调整管截止,可靠性高,但效率低,尤其是在小电流时调整管需承受很大的电流,损耗过大。方案二:串联型稳压电源并联稳压电源有效率低、输出电压调节范围小和稳定度不高这三个缺点。而串联稳压电源可以避免这些缺点,同时串联稳压电源可以通过三端稳压实现,而且这类芯片内部都有过流和过热的保护电路,例如W117,其额定电流可达1.5A,输出电压的调节范围为1.2-37V,内部有过流和过热保护电路,而且价格也的相当便宜(如图一所示)。所以综合考虑采用方案二。 图一:三段稳压器W117稳压电路2.2.2 数字显示方案方案一:液晶显示器显示利用单片机的软硬件资源实现高精度高速A/D转换,转换精度和转换速度可以通过软件来改变。但是对软件部分要求非常高不易实现。方案二:数码管显示 数码管显示分为静态显示和动态显示两种,但是不管哪种显示都具有结构简单、易于实现等优点。同时采用3位数码管完全可以满足本设计的要求。在用8051控制的同时,可以简化软件程序,快速实现。所以本设计中采用数码管显示。3. 系统硬件设计3.1. 系统设计由于本设计的输入为220V的交流电电压,所以必须先经过整流滤波电路然后经过三端稳压器的处理输出直流稳定的电压,当然在输出前还得有单片机的控制才可以输出。在控制中单片机通过接受来自键盘的指令信号,并且通过数码显示器显示当前值,然后由单片机发出控制信号控制接口和驱动电路来控制稳压器的输出,通过数码显示器显示输出值。具体的系统图如图一所示。3.2. 微控制器模块3.2.1 8051单片机的性能AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特性为:(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单片机的最小系统对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源模块的稳定可靠是系统平稳运行的前提和基础。51单片机虽然使用时间最早、应用范围最广,但是在实际使用过程中,一个和典型的问题就是相比其他系列的单片机,51单片机更容易受到干扰而出现程序跑飞的现象,克服这种现象出现的一个重要手段就是为单片机系统配置一个稳定可靠的电源供电模块。在次最小系统中包含了复位电路、振荡电路和供电电路。如图3-2所示。3.3. 电源模块3.3.1单片机供电模块为了满足单片机的正常工作,必须给其提供+5v的直流电源,所以设计一个可以使用usb的5v直流供电电路,具体电路如图3-.3所示。3.3.2整流滤波电路和+5v供电模块整流电路采用桥式电路,整流管采用普遍使用桥堆。根据使用手册可知W7805的输入端电压为9V,W117的输入电压为25V,具体电路如图3-4所示。3.4. 调压电阻网络3.4.1W117的调压电阻网络根据w117的基本功能,调压电阻网络可采用如图3-5所示电路。这里的电阻网络采用分立元件组成的8为权电阻串联式网络,而开关采用舌簧式继电器的触点。为了使W117正常工作,要求流过R1的电流不小于5mA,而R1两端的电压为恒定的1.25v,所以若取流过R1的电流为5mA,则R1=1.25V/5mA=250,为了满足调节单位为0.1v,故R=0.1/5mA=20,则可以求得该网络的其他电阻值。3.4.2继电器的驱动电路由于要驱动8个继电器,而继电器的吸合电流可达10mA,触点吸合时间为12ms,所以每个继电器可采用一个晶体管来驱动,不再详细计算,具体电路如图3-6所示。3.5. 显示电路在显示电路中分为静态显示和动态显示,由于本设计是要求采用三位数码管,而静态显示无法满足设计的需要,故在本设计中采用并联动态显示。图3-4是动态显示的原理图,只要有一位接通过单片机的扫描让每位选线轮流选通,同时在段选线上送出该位要显示的段位码。3.6. 键盘电路键盘控制电路分为独立式和矩阵式,由于本设计的要求不是特别的高,加上独立式按键结构电路简单易于实现的特点,所以在本设计中采用独立式按键结构。电路结构如图3-5。4. 软件4.1. 主程序C语言程序如下:#include Unsigned charled15=0x6f,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f,0x39,0x52,0x64,0x37,0x0e;/ 9 8 76 5 4 32 1 0 void 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; /电压初值为5v j=1; while(1) for(F=f;F0x110;F+) P3=0xff; key=P3; if (key!=0xff) unsigned char i; for(i=0;i10;i+) ledout(odata,add,j); delays(10); ledout(odata,add,-j); delays(10); key=P3; if (key=0xff) break; for(i=0;i57) odata=odata-2; /电压加0.1V break; case 0xbf: if (add=0) if(odata0;t-) for(s=0;s255;s+); 4.2. 扫描键盘程序C语言程序如下:#include void key_deal(void)unsigned char Key_value; / 按键键值P1 |= 0x07;/ P1.0P1.2为输入端口Key_value = P1 & 07;/ 屏蔽P1口高5位,取键值switch (Key_value)case 6: Sub_S1();break;/ S1按键按下,执行对应子程序 case 5: Sub_S2();break;/ S2按键按下,执行对应子程序 case 3: Sub_S3();break;/ S3按键按下,执行对应子程序 default: break;4.3. 显示驱动程序C语言程序如下:#include #include #include code uchar disp_seg=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7c,0x39,0x5f,0x79,0x71,0x40,0x00,0xff,0xf3;/ 0 1 2 3 4 5 6 7 8 9 a b c d e f - 全灭, 全亮, P./定义显示缓冲区(由定时中断程序自动扫描)uchar DispBuf8; /8位数码管显示的数字码(显示段码的偏移量)uchar bdata key_flag=0; /定义键盘状态标志位sbit key_first_flag = key_flag0;sbit key_delay_flag = key_flag1;sbit key_valid_flag = key_flag2;uchar key_value; /key_value=0: no key, or key_value=1-8 stand for key1-key8void DispInit(); /数码管扫描显示初始化void DispClear(); /清除数码管的所有显示void DispP(); /显示P. /在数码管位置x(07)处显示字符c(仅限十进制数字和减号)/void DispChar(unsigned char x, unsigned char y);/显示指定位置x(07)处的小数点/void DispDotOn(unsigned char x);/*函数:T1INTSVC()功能:定时器T0的中断服务函数 */void T1INTSVC() interrupt 1 using 1 / interrupt 3 for T1 code 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:50ms TL0 = 0xcd; P1 = 0xFF; /暂停显示 if ( (DispBufn&0x80) = 0x80 ) /带小数点显示 DispBufn = DispBufn&0x7f; LED_OUT = (disp_segDispBufn | 0x80);/更新扫描数据 else LED_OUT = disp_segDispBufn;/更新扫描数据 P1 = comn; /重新显示 if(key_first_flag=0) key_in = KEY_IN; if(key_in!=0xff) /初次检测到有键按下 for(i=0; i1; if( (key_in&0x01)=0x00 )/若键按下,对应KEY_IN的输入口读入状态位为0 key_first_flag = 1;/置标志 key_value_temp = i;/暂存 else if(key_delay_flag=0 & n=key_value_temp) key_in = KEY_IN; for(i=0; i1; if( (key_in&0x01)=0x00 ) /经过一轮扫描后(8*2ms=16ms),第一次按下的键仍被按下 key_delay_flag = 1; else if(key_delay_flag=1 & n=key_value_temp) key_in = KEY_IN; for(i=0; i1; if( (key_in&0x01)=0x01 ) /再经过一轮扫描后,按键已释放:则为有效键 key_valid_flag = 1; key_value = key_value_temp+1; n+; n &= 0x07; -/-; TR0 = 1;/*函数:DispClear()功能:清除数码管的所有显示*/void DispClear() unsigned char i; for ( i=0; i8; i+ ) DispBuf = 0x11; /0x00; /*函数:DispP()功能:显示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 Tab = 0x3F,0x06,0x5B,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; / 0xfc66:1ms for 11.0592MHz, oxf8cd:2ms, 0xB800:20ms, 0x4C00:50ms TL0 = 0xcd; TR0 = 1; ET0 = 1; EA = 1;5. 总结在本次设计的过程中,我发现很多的问题,给我的感觉就是很难,很不顺手,看似很简单的电路,要动手把它给设计出来,是很难的一件事,主要原因是我们没有经常动手设计过电路,还有资料的查找也是一大难题,这就要求我们在以后的学习中,应该注意到这一点,更重要的是我们要学会把从书本中学到的知识和实际的电路联系起来,这不论是对我们以后就业还是学习,都会起到很大的促进和帮助,我相信,通过这次的毕业设计,在以后的学习中我会更加努力,力争把这门课学好,学精。同时,通过本次毕业设计,巩固了我们学习过的专业知识,也使我们把理论与实践从真正意义。在本次设计过程中,对纹波也没有提出严格要求,所以常用的稳压集成电路就可以满足要求。在电路中采用了模拟器件和数字器件所以需要+5V、和-15V 电源供电。本设计输出的电压稳压精度高,可以用在对直流电压要求较高的设备上,或在科研实验室中当作实验电源使用。同时,通过本次毕业设计,巩固了我们学习过的专业知识,也使我们把理论与实践从真正意义上相结合了起来;考验了我们借助互联网络搜集、查阅相关文献资料和组织材料的综合能力;从中可以自我测验,认识到自己哪方面有欠缺、不足,以便于在日后的学习中得以改进、提高;通过使用电路CAD 软件Multisim , 也让我们了解到计算机辅助设计(CAD)的智能化,有利于提高工作效率。题目是非常重要的,要选择一个好的题目,就要满足适合我们这组制作,并且也要考虑到自身能力,还有就是容易找到相关的参考资料等条件。只有符合以上所说的条件才能做出一个好的设计,所以我们就选择了数控串联型稳压电源的设计课程。我们查找了大量这方面的相关参考资料,如电子电路实验及仿真,电路与电子技术实验教程等,还查阅了各种所需芯片的管脚资料。在这些参考资料的基础上构想了几个设计方案,并且确定了最后的设计

温馨提示

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

评论

0/150

提交评论