【一款基于单片机的电源切换控制系统设计11000字(论文)】_第1页
【一款基于单片机的电源切换控制系统设计11000字(论文)】_第2页
【一款基于单片机的电源切换控制系统设计11000字(论文)】_第3页
【一款基于单片机的电源切换控制系统设计11000字(论文)】_第4页
【一款基于单片机的电源切换控制系统设计11000字(论文)】_第5页
已阅读5页,还剩22页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

一款基于单片机的电源切换控制系统设计该文章设计了一款基于单片机的电源切换控制器,将电压作为检测对象,主要对电源的欠压和过压故障进行判别并完成故障电源的切换。另外为了保证设计的过程之中,除了能够用在一般电路上,也可以用在一些重点外备电源上,当设备的电压降低/提高至超出正常范围时,不仅仅显示屏显示故障,并且实现故障电源的切换,同时故障时进行蜂鸣器报警。同时本文也介绍了将电流与频率作为对象的其他电源故障检测方式。本课题要求掌握电源切换控制器(自动转换开关)设计方法。主要完成控制器硬件电路和软件系统设计。通过模数转换器将收集到的电压数据进行模数转换后输入单片机。根据控制要求将输入信号与预设标准信号进行对比,如果不符,单片机控制继电器进行电源切换,同时发出报警。完成硬件的设计,选择合适的器件;进行软件的编写;依据功能要求完成实物的焊接并且进行功能调试。关键词电源切换控制器,单片机,A/D转换,软件系统,硬件电路目录TOC\o"1-2"\h\z\u1绪论 11.1课题研究目的意义 11.2国内外研究现状及发展前景 11.3课题研究主要内容 22总体方案分析设计 22.1系统功能及设计要求 22.2单片机介绍 32.3单片机选型 42.4系统总体方案设计 43硬件电路设计 53.1单片机最小系统 53.2采集子模块 73.3按键子模块与声光报警子模块 103.424C02C存储及液晶显示屏子模块 123.5主、备用电源切换子模块 134软件模块设计 144.1模块化编程 144.2软件设计主流程图 144.3A/D转换采样子程序流程 154.4显示子程序流程 164.5方式选择子程序 175仿真与调试 185.1仿真注意事项 185.2仿真调试 196实物焊接与调试 21总结 24参考文献 26附录1 27附录2 28

1绪论1.1课题研究目的意义第二次工业革命中西门子发明了发电机,标志着我们的社会正式步入了电气时代。随着一系列基于电气设备的产业链兴起,我们对电能的依赖性变得越来越大,电能的运用与我们的生活息息相关,在现代的社会中已经无法回到离开电能生活了。而在一些特殊的场合,例如医院、国防设施、工厂、银行等更是需要不间断的供电,在这些场所一旦出现断电的情况即使是几分钟的断电都有可能导致严重的后果。因此在这些场所,一般都会采取使用多路电源供电,以增加用电效能,保证供电连续性。而一般情况下使用到的设备会采用手动这种低工作效率的方法对故障电源进行切换,由于无声光指示更是需要耗费人力实时留意电源是否故障,并且难以在发生重大故障前发现。因此,为了改变现状本课题设计了一种能自行对故障检测并切换的设备,拥有声光指示,能自动检测、切换故障电源的功能。该设计对持续供电有很大的帮助。1.2国内外研究现状及发展前景在科技水平不断提高的情况下,在国外该类检测切换装置发展的速度非常快,进一步的加入了现代材料、机电、控制、测量和计算机技术。在双电源转换开关的产品上,依旧在不停迭代,产品内部结构和技术含量都在不断的升级创新,科技水平的上升使得其逐渐朝着高分断的方向前进。美国Zenith这家公司的ZST系列的已经将高级微处理控制器采用到了电源转换开关上,其主要通过把该控制器和网络通讯结合的方式,有效的提供了对系统的参数研究和报警功能进行控制的能力,在数据的采集上更加的直观方便,可以对整个系统展开直接的控制。而我国在市场上对此类开关也同样有很大的需求量,但由于当时刚起步自身技术并不发达,因此部分企业从国外一些公司引进了这一类有着更先进技术的器件,借此丰富了我国电器元件的种类。对先进产品的引进在很大程度上促进了我国在这个方面上的技术水平同国际先进水平的接轨。现阶段我国的自动转换开关已经实现了由模拟到数字控制的提升。不仅设计简单方便,占用空间小而且智能方面有显著的增强。当前能达到先进水准的转换开关都具有以下的各种优点:体积小、容量大、智能化、切换迅速且准确、安全性有保障等。1.3课题研究主要内容在达成了基本要求的情况下,此课题可以考虑减少成本方面的问题,以及对其他电源故障情况下的检测及电源切换研究。本设计主要研究内容:1.学习并了解双电源自动切换控制器在国内外的发展现状以及对未来的展望。根据任务要求对设计思路、具体方案进行构思,在完成基本功能的情况下对本设计进行补充,完善。2.对电压信号的采集。最终目的是通过对电源电压的实时监测,达成电源故障的精确检测。采用滑动变阻器模拟电源电压的变化,通过A/D转换将收集到的信号传至单片机,由该信号判断是否出现欠压,过压故障。3.硬件电路设计。根据设计可分为控制核心单片机模块,电压采集子模块,显示子模块,报警子模块,系统电源,阈值设置及手动切换模块。4.软件程序设计。主程序,A/D转换,显示子程序,阈值设置,报警子程序。2总体方案分析设计2.1系统功能及设计要求本论文拟定完成电源的欠压和过压检测,能在检测到电源故障时及时进行相互切换,故障时在显示屏上报告故障电路,同时能对主备用电源的故障进行声光报警,在完成基本功能的情况下可以试着研究以检测电流来判断电源是否损坏。由于各个设备工作时的正常电流各不相同,需要阈值设定功能来满足不同设备的检测要求。(1)基本设计要求如下:1)、通过两个滑动变阻器+A/D转换采集两个电源的电压,将得到的两个值显示在显示屏上,并且分为主电源和备用电源2)、当主电源监测的电压不在正常电压范围内时,切换到备用电源,优先主电源3)、采用继电器+LED灯方式来体现切换的过程,LCD也显示当前使用的电源名字4)、可以手动切换电源5)、当电源异常时,启动蜂鸣器,且LCD显示警告信息【目前使用中的电源以及故障的电源】(2)功能及设计说明:1)电压采样:仿真方面采用两个滑动变阻器模拟电压变化,使用5V电压输入降低实物设计的难度,保证调试实物时的安全性。在实际情况下以220V交流为正常电压,并依据规定在波动超过±15%Un时(即欠压,过压)切换电源。2)输入/输出控制信号:输入:以两个滑动变阻器模拟电压的变化,A/D转换2路电压的数字信号;输入:STC单片机P2口阈值设定以及手/自动切换按键;输出:与单片机直接相连的蜂鸣器及LED灯光报警电路;输出:1602液晶显示屏;输出:主、备用电源切换控制,及手动切换;输出:24C02C存储芯片,用于存储阈值设定值。3)工作方式:分为手动和自动工作,手动工作模式在未故障时也可切换电源,此功能主要应用于主电源进行定期检修时,在此时可以手动切换使用另一个电源进行供电,但备用电源一般仅作紧急供电使用,也可以在检测电路中元器件出现损坏无法正确判断电源故障并且故障较为明显时作为应急预案使用;自动工作时以主电源供电为默认供电方式,仅在发生故障时自动切换至备用电源,并且在检测到主电源故障被修复后迅速切换回主电源进行供电。可通过改变阈值更改检测范围,有较好的灵活性可以应对更多的检测需求。2.2单片机介绍基于任务书的要求,本文仅需要考虑以单片机为核心的电源转换开关控制器设计方案。作为一类集成电路芯片,单片机近似于一台微型电脑。因此它的功能也是十分齐全,与真正的计算机相比仅仅是缺少了输入/输出设备。想要学习计算机甚至可以先从单片机入门。单片机发展到现在,其工艺相较以往已经有了长足的进步,现在它的体积更小、功能更全、价格更经济。在这些优势的帮助下,单片机得以在现代工业中普及。但单片机也有其缺点,比如说必须要设计硬件电路并编程之后才能进行实物的焊接及调试,并且需要经过多次调试才能得到最终的实物,否则无法确定实物是否能正常运作,当然单片机的普及也说明了这些缺点并不能掩盖它的优势。2.3单片机选型关于单片机芯片部分我最终选择的是51单片机系列的STC89C52,它包含了STC89C51单片机的优点,并且存储量更大,它的具体优点如下:资料多,书本多,性能、IO、flash在普通的竞技比赛中已经够用,并且相对简单容易入门。价格低廉,封装大,而且可以直接在万用板中使用不一定需要运用到PCB板,使用起来简单方便。主要特征:8位;正常工作情况下电压为5V;8kb的可编程闪存;具有10位精度ADC功能,共8路;可使用串口(P3.0/P3.1)就可以将程序载入,可在短时间内完成一片。STC89C52用的程序跟其他C51系列的单片机兼容,所以转到其他C51单片机的学习成本很低。现在有很多便宜的51单片机,完全可以先学习STC89C52再转到其他单片机。比如新唐等。这样的芯片十分廉价,能完成的功能却很多。因此学习51单片机还是很有必要的。机器周期:STC89C52单片机的基本操作周期,是指它在一周期中完成的,一项基本操作。它由12个时钟周期组成。2.4系统总体方案设计在本章当中,所讨论到的硬件电路主要包含了系统控制核心单片机最小系统、采集子模块、显示子模块、按键子模块和报警子模块五大部分。采集到的电压数据通过A/D转换电路传输到单片机,再由单片机上传至显示屏中,并且由单片机根据所编写的程序判定是否需要进行故障报警并切换故障电源。硬件电路基本框图,如图2-1所示。图2-1硬件原理框图3硬件电路设计3.1单片机最小系统单片机最小系统包括控制器STC89C52单片机、单片机时钟电路及单片机复位电路,下图为它的硬件电路图部分。在主要芯片的选择问题上,我对AT89C51和STC89C52单片机进行了比较,由于STC单片机在功能上更为丰富,它包含了AT89C51单片机的所有功能并且在价格方面也并不比AT89C51单片机高出太多,因此我最终选择了使用STC单片机。图3-1单片机最小系统电路图3.1.1单片机时钟电路STC89C52单片机的时钟电路指的是根据材质为石英的振荡器的特性,通过在它的两极加上变化的电场,采取这样的方法让它产生机械形变;反之振荡器通过外加的机械力使其内部发生变化电场。即在外加变化电场频率在一定值时,它的机械振动就会产生比较明显的振幅—压电谐振。通过压电谐振这种方式使控制器单片机STC89C52电路产生振荡,这样的电路即为振荡电路。它包含了外部以及内部这两种方式。其中,外部方式是将单片机的XTAL1端口接地,而另一端口接外部振荡器,但采用这种方式会使得产生的振荡信号不稳定,所以本文的时钟电路采取的是内部方式。内部时钟电路是外接石英晶体及电容,其电路图如图3-2所示,其中图上的C4、C5在一般情况下会选择使用30PF±10PF本设计中电容采用了1nF,用于振荡器的快速起振及稳定,它的振荡频率我采用了11.0592MHz,此时产生的信号相对而言是比较稳定的。图3-2晶振电路3.1.2单片机复位电路STC89C52单片机的复位电路是指通过复位操作电路对单片机进行复位,使其恢复至初始化状态。单片机STC89C52的这一部分的电路控制线需要连接单片机复位输入端RESET。在STC89C52单片机稳定工作状态下,若想让它进行复位操作,需要单片机STC89C51复位输入RESET端口的电平由低变高且两个机器周期以上,即RESET端处于两个及以上机械周期的高电平时,从第二个有效的高电平开始对单片机进行复位操作。单片机STC89C52复位电路工有两种不同的形式,这两种形式中的上电自动复位是以直接闭合/断开供电电源对单片机实现复位操作的开始/结束,直接断开或闭合电源容易造成系统电路中元器件烧坏,本文不采用此方式;而手动复位是通过借助保护电阻、按钮开关、电容等组成复位电路,如图3-3所示,该复位方式能有效保护复位元器件,是本设计中进行复位操作的最优选择。图3-3复位电路3.2采集子模块3.2.1电压采集子模块电压采集电路需要对主电源及备用电源的6路的相电压实时检测。通过写入STC89C52中的程序,对电源是否发生故障进行分辨。因此在整个电源切换控制系统当中电压采集子模块都属于最为重要的部分。如果采样中得到的数据足够精确可以帮助系统更好的鉴别故障,有利于减小它的误差。经过查阅文献发现电流切换控制器的故障检测部分大多以电压检测为主,因此可以选择使用电阻分压或电压互感器这两种方式中的一种,其中第一种方式设计方便,也有利于节省经费,但在经过它的转换得到的数值不够精准。而且此电路中没有做到电气隔离,电气连接部分存在问题。考虑到电阻会因为升温给测量结果带来偏差导致不能准确检测出电源故障,所以电阻分压式电压采样电路并不适合被应用在电源自动切换控制器的设计之中,我最终选择使用电压互感器进行采样。它的连接方法为:把三相的头和尾进行相连,不过最初和末尾一项不能连接,以此来产生开口,当它们运作时能得到一个为0的向量和,因此开口的电压矢量和为0,而当电路中有接地时,三相电压的向量和不为零了,有电压产生。图3-4电压采样电路为了能检测更多不同种类的电源故障使检测结果更为精确,该设计中还可以加入其他检测手段,;例如加入电流采样电路对工作电流进行查验,在下图可以看出,采样电阻的R62大小是50mΩ,当电流流过这个电阻的时候,也就是由电流变换成了一个较小的电压,经差分放大(若电流值是1A,在R62的两端是50mV的电压,在通过差分放大,则它的放大倍数会是24k/2.49k≈9.64(倍),因此经过了转换后可以得到大小大概为0.482V的电压。),滤波后输入至模数转换器之中,再将它输送给单片机。图3-5电流采样电路在仿真中电源电压的变化则由滑动变阻器来模拟。它的工作原理十分简单,只需要变化在电路之中的它的电阻线的长短,就可以达到改变当前电阻值大小的目的,进而以此来改变其两端的电压值,最后得出相应的电压的数据。电压滑动变阻器主要由电阻丝、金属杆和滑片组成。其中,电阻丝一般由熔点高、电阻大的镍铬合金制成,电阻丝的粗细及长短会影响电阻丝的大小;为了减小误差,金属杆、滑片由电阻比较小的金属制成。在本系统的电路设计中,为了方便电压被采集且显示在显示器上,所以采用了两个电压滑动变阻器分别对主电源和备用电源进行电压的控制与显示。其电路图如图3-6所示。图3-6电压滑动变阻器3.2.2A/D转换器本设计采用的是ADC0832转换芯片,因为仅需要传输两路的电压数据,所以没有必要使用ADC0809转换芯片。该芯片引脚的功能分别是:1.CS_片选芯片,低电平芯片使能。2.CH0模拟输入通道0,或当作输入+/-。3.CH1模拟输入通道1,或当作输入+/-。4.GND0电位(地)。5.DI数据信号输入,选择通道控制。6.DO数据信号输出,转换、数据输出。7.CLK时钟信号输入。8.Vcc/REF电源输入及参考电压输入。在一般的状态下该存储器和单片机一共有4个接口,但DO与DI端与单片机接口为双向关系,并且在运行时它们有先后关系,因此它们可以并联使用解决I/O口不足的问题。在本设计中将DO与DI并联完成了数据信号输入至单片机的功能。具体电路图如图3-7所示。图3-7A/D转换电路3.3按键子模块与声光报警子模块3.3.1按键子模块按键模块连接于STC89C52单片机的P2口并且与排阻RP4相连,按键S1,S2,S3,S4的功能分别为:S1:设定阈值(默认上限)按一下切换到(下限)再按下“退出”,与24C02C共同使用可以防止因意外断电而丢失设定值。S2:"+",阈值上下限的增加,每次增加0.1。S3:"-",阈值上下限的减少,每次减少0.1。S4:模式按键;默认状态下为自动状态(即内部进行检测电源是否正常,然后自动进行切换电源的操作);按键按下一次,此时进入(手动模式,并且手动指示灯点亮),手动状态下,默认主电源供电;再次按下切换到备用电源。再次按下(第3次)退出手动模式,并且指示灯熄灭。在自动模式下,其功能与任务书功能一致。当前使用的电源发生问题时,可以自行切换至备用端并报警。同时检测备用电源,备用电源故障也进行报警。按键电路如图3-8所示。图3-8按键电路3.3.2声光报警子模块报警子模块属于本系统中最简单的模块部分,它们分别被接在P2.0与P2.1口,当系统检测端检测到有不符合双电源自动切换控制器系统预设定的值出现时,系统会自动启动系统中的声音报警和显示屏提示,显示屏会提示正在使用的电源和故障电源。即当检测到本设计中电压值不符合原定的数值时蜂鸣器会进行报警。而灯光为手/自动切换提示用来配合S4按键,当D6绿灯常亮表明现在为手动模式。其电路图为图3-9。图3-9声光报警3.424C02C存储及液晶显示屏子模块3.4.124C02C存储子模块24C02C是一种储存芯片,它属于EEPROM,24系列。02是2K的意思。容量:0~0xFF,即256byte大小。24C02C是一种5V的I2C接口串行EEPROM存储芯片。它的封装形式共有两类,并且它们的引脚数量相同为8个引脚,其中Vss接地,SDA串行数据线,SCL串行时钟,Vcc接+4.5到5.5V电源,A0、A1、A2为片选信号,WP是硬件写保护,本设计中A0至A2全部接地,其余3个引脚接于P1口的2~4。该模块完成的任务是存储断电前设定的阈值,防止因为意外断电而丢失预先设置好的阈值。电路如图3-10。图3-1024C02C存储3.4.2LCD1602液晶显示屏子模块本系统显示子模块采用的是一种工业字符型液晶显示器LCD1602,它的工作原理是由电压对屏幕部分进行操控,进而显示出图形以及各种类型的字符。它的内部存在192个字符发生器,并且通过点阵的形式进行显示,总共显示两行,且每个行、列的点与点之间存在一定的间隔。液晶显示器LCD1602正常工作电压范围为4.5-5.5V,字符尺寸为2.95×4.35(W×H)mm,是一款低功耗、性价比高的器件,主要应用于各个系统中的液晶显示电路中。下图中与VEE相连的滑动变阻器可通过调节使显示屏实物显示的内容得以正常显示。其工作本质是单片机对LCD1602中的HD44870芯片进行控制,再由该芯片对LCD1602进行控制并显示。液晶显示器LCD1602内部电路结构中包含16个引脚,如图3-11所示,其各个引脚的功能如表3-1所示。图3-111602液晶显示类别引脚号端口电源线1接地端VSS2电源输入端VCC15LCD背光电源正极端16LCD背光电源正极端,使用时需接地控制线3对比调整电压端VEE4数据/指令寄存器选择端RS5指令或数据读/写端R/W6使能信号端E数据线7-14数据I/O端口表3-1LCD1602引脚功能表3.5主、备用电源切换子模块为了实现设计中的主、备电源的手动切换,在设计中使用到了两个单刀双掷开关,两个开关中各有一路为断路,当手动切换至备用电源时,主电源开关切换至断路。两个LED灯提示现在正使用的电源,同时也这两个灯的亮灭来模拟电源的切换。图3-12主、备用电源切换4软件模块设计4.1模块化编程在软件的编写过程中我使用到了模块化编程,它属于一种软件设计技术,它将程序的功能都划分为独立并可相互替换的部分,使每个模块都包括了执行所需要功能的一方面必要的一切。它被应用在各种不同语言的编程当中。使用模块化编程,可以将关注点分离,从而使模块执行逻辑上离散的功能,并通过定义明确的界面进行交互。在编写程序的过程中可以给各部分分别编写.c与.h文件并将它们放进同一个工程当中,在主函数main.c文件中将它们写入头文件,进行整合并关联起来即可。使用这种方法可以使整个程序的结构更加清晰,在修正程序中的错误时,可以针对性得更改出错模块,而不是在几百甚至上千行的完整代码中寻找可能仅有一行的错误。同时使用这种方法也有利于在完成一个复杂的工程时进行分工合作。模块化编程使得编程更加轻松,便于调试与修改。4.2软件设计主流程图本文设计的双电源自动切换控制器在软件设计部分主要以单片机最小系统为控制核心,对各个子模块以指令控制。在软件设计方面,通过编程软件编写与修改主程序和子模块程序写入进单片机控制系统中,最后实现控制系统并实现系统预设功能。本部分主要包括主程序设计、电压采集子程序、A/D转换模数转换子程序、显示子程序以及报警及联动子程序等流程。本系统软件设计部分主流程图如图4-1所示。图4-1主程序流程图当该程序开始运行时,默认为自投自复,可以选择是否切换手动档。开始运行时电压检测判断程序检测常用电是否正常,若故障则备用电合闸同时对常用电的故障进行蜂鸣器报警,直到它恢复正常完成合闸为止。若常用电正常,可同时检测备用电源是否完好,故障则报警直到问题被处理。4.3A/D转换采样子程序流程A/D模数转化是双电源自动切换开关控制器比较关键的部分,采集端对数据信息采集后并不能直接被单片机所识别,需要经过A/D转换器处理,将模拟的电压信号转化为数字电压信号进行传输,最后换算为数字的形式在LCD上显示,常用与备用电源都需要被显示。其流程如图4-2所示。图4-2A/D转换流程图4.4显示子程序流程这部分程序使用到了写命令以及写数据模式(即RS与RW在00,10两种状态下),LCD液晶显示屏在启动时首先进行一次初始化,初始化编程采用固定的4句编程。然后显示屏自动调用16列2行显示模式,然后对屏幕进行清屏操作,最后执行相应的显示数据程序进行数据显示。最终效果为第一行显示主电源以及备用电源电压,第二行用来显示正在运行的电源,以及处于故障之中的电源。其流程图如图4-3所示。图4-3显示子程序流程图4.5方式选择子程序在本设计中有两种运行方式,分别为自动运行(即自投自复)和手动切换,这两种工作方式由一个按键(S4)进行控制。当第一次按下S4,程序进入手动模式,默认以主电源供电为主。但在此模式下若主电源出现故障仅有蜂鸣器报警以及显示屏警告,不会进行电源的自动切换,需要第二次按下S4按键才能切换至备用电源。当第三次按下S4按键,系统回到自动模式。在自动模式下以主电源为主,对两个电压进行检测只要检测出故障系统就能进行报警并且自动完成故障电源的切换,并在故障消失后切回主电源进行下一次的循环。流程图如图3-4所示。图4-4运行方式选择子程序5仿真与调试5.1仿真注意事项由于本课题是基于单片机的实物设计,因此在制作实物前需要先进行硬件与软件部分的仿真确认程序的正确性,本设计使用到的仿真以及编程程序分别为Proteus8.11以及Keil4,因此在使用时有许多的注意事项。(1)在编程软件中Keiluvision4完成程序的编译后输出的.hex文件,在程序修改过后需要对其进行重新编译;(2)编写程序时注意仿真电路中每部分程序对应的端口;(3)每个子程序部分编写完成后注意对使用到的参量进行定义;(4)使用自己绘制的电路图仿真时,一定要注意自己的mcu的晶振时钟的添加,当然一般情况下不需要进行更改;(5)在参考他人仿真程序时注意版本问题,低版本无法兼容更高的版本;(6)使用Proteus开始仿真前一定要查看是否在单片机中加载了.hex文件,.hex文件位置发生改变时也需要重新加载,否则没有程序的支持仿真是完全无法运行的;(7)仿真前仔细检查各器件的参数,避免出现因参数设置错误而导致电路无法导通。5.2仿真调试5.2.1硬件仿真利用Proteus对设计进行仿真,仿真图如下图5-1.Protues是一种用于仿真的工具,它的功能相当全面,并且可以根据需求在库中建立出新的器件。它不仅能够进行电路部分的仿真,而且也可以对虚拟模型进行仿真,同时它还拥有绘制PCB设计的功能。并且考虑到在编译方面它支持Keil,MATLAB等一系列的编译器,因此我选择了使用它来进行硬件部分的仿真,并且进行软硬件联调仿真。在此仿真中使用了两个滑动变阻器模拟主、备用的电压变化,电源的切换采用两个LED灯的亮灭来替代,程序中也拥有复位功能,主要是对液晶显示屏进行复位。该仿真拥有阈值设定以及手自动切换功能,LED灯D6的亮灭为手自动切换的标志,设定值储存在24C02C存储器中可以有效防止因为意外断电导致的数据丢失。1602液晶显示屏显示检测对象电压值,以及正在被使用中的电源和故障中的对象。图5-1Proteus仿真电路图5.2.2软件仿真在程序部分的编程上,我使用了Keil,因为在学校的课程中学习过了这个软件的使用方法所以上手比较容易,并且在写入程序时使用到的也是熟悉的代码,这样能为我的设计节省不少时间。同时它可以检测程序编写中的错误,输出供单片机芯片使用的.hex文件,通过与Proteus程序的联调完成完整的仿真调试确定程序是否能完成指定的任务,并且给实物的制作提供思路。程序调试结果如图5-2所示。图5-2软件编译6实物焊接与调试完成仿真的调试后我参考仿真中运用到的器件确定下了需要购买的材料,元器件清单如下表:类型名称33P无极性贴片电容LED0发光二极管1N4001整流二极管10UF/16V直插电解电容SRD-05VDC-SL-C5V一组转换HDR-1X22P接插件LCD1602LCD1602红色直插3mmLEDDC5V蜂鸣器SS8050高频放大-NPN型10K贴片电阻200贴片电阻1K贴片电阻103贴片网络排阻201贴片电阻1K贴片电阻200贴片电阻10K插件单联电位器SW-PB微动开关SW-1P1路编码开关HDR-1X44P接插件AT89C52STC单片机AT24C02EEROM存储器TLC0832IDR8-Bit,22kSPSADCSerialOut,MicroprocessorPeripheral/Standalone,MuxOptionwithSerialorDifferential,2Channel,-40to85degC,8-pinSOIC(D8),Green(RoHS&noSb/Br)USB-5P微型USB母座12MHz2脚无源脚晶振表1.元器件清单在实物的焊接过程中,其中排阻元件焊接难度较高经过了多次重新焊接,最后使用到了同学的焊台及其他专业工具才解决了这个问题,连接电源的USB接口由于结构比较特殊,多次尝试后焊接依旧未能成功,只能选择使用TTL下载电路与电源进行连接供电以这种方式解决了这个问题。完成焊接后我使用了STC单片机烧录软件,将开发板与电脑进行连接,选择正确的单片机型号,选定需要烧录进单片机的程序并且设置好正确的com端口(串口号可从控制面板中设备管理器的端口查看),点击下载按钮等待下载完成即可。在焊接完成并将.hex文件下载进实物后,在后续的测试过程中也还是不可避免的出现了一些问题,首先第一次上电后,发现屏幕没有任何显示,经检查后发现芯片插反了方向,好在该操作未对芯片造成严重损坏,重新插上芯片并调整接于屏幕VEE端的滑动变阻器之后屏幕上的内容得以清晰显示。接下去的上电测试又发现屏幕上检测到的电压值始终为0V,对于这个问题我首先想到了模数转换器有虚焊的可能性,并采用了万用表对ADC0832的引脚1、5、6、7以及相对应单片机的P1.5至P1.7引脚之间的电压进行了测量,结果显示出的工作电压为接近5V的正常工作电压,因此我判断出问题并非是出现于焊接方面,最终我尝试着将备用的模数转换器替换下了该芯片,再次测试后发现检测到的电压值能够正常显示,所以出现该问题的原因是原本使用的ADC0832芯片可能在焊接前或经过焊接后已经损坏。在解决了上述问题之后再进行的上电测试中,我对该实物需要完成的检测故障并自动切换的能力进行检验,通过试验发现该实物能做到的功能与仿真结果一致,除电源连接方面略有瑕疵外实物制作基本完成。实物成品图如下图所示。图5-3实物图

总结我的文章主要设计的是由单片机来控制的电源切换控制器,一般情况下该设计常用的故障检测方法主要是通过测量电压进行切换控制,我设计的初衷就是能够通过电压来判断

温馨提示

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

最新文档

评论

0/150

提交评论