已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的太阳能充电系统的设计基于单片机的太阳能充电系统的设计 摘要 化石能源的日益枯竭、人们对环境保护问题的重视程度也在不断提高,寻找洁净的替代能源问题变得越来越迫切。太阳能作为一种再生能源它具有取之不尽、用之不竭和清洁安全等特点,有着广阔的应用前景。因此,本论文设计太阳能充电系统,整个系统由电源变换电路、采样电路、处理器、脉宽调制控制器和电池组组成。该设计通过太阳能电池板将太阳能转化为电能,经过dc/dc变换电路处理后,为蓄电池充电。系统通过脉宽调制对电池充电过程进行智能控制,从而提高太阳能电池输出功率及电池的使用效率,达到延长电池使用寿命的目的。关键词 太阳能;充电;cuk变换器;单片机design of solar-electric charging system based on mcuabstract: with the depletion of fossil energy, people pay more and more attention to environmental protection. looking for clean alternative energy becomes more urgent. solar energy as a renewable energy it has an inexhaustible and clean and safe and so on,so have a broad application prospects. therefore, this thesis, a solar charging system, the entire system consist of the power conversion circuit, sampling circuit, processor, pulse width modulation controller and battery pack composition. this design solar by way of panels convert solar energy into electricity, through dc / dc converter circuit processing, charging the battery. the process of charging the battery is controlled by pulse width modulation, thereby output power of the solar cell and battery life are improved, extend the battery service life.key words:朗读显示对应的拉丁字符的拼音字典 solar energy; charge; cuk converter; scm33目 录1 引言11.1课题研究的背景和意义11.2 太阳能光伏电池的工作原理21.3 开关电源介绍.21.3.1 开关电源和线性电源的区别.21.3.2 开关电源的工作原理.31.4 本论文所做的主要工作.42 系统设计方案.52.1 整体设计方案.52.2 各模块方案设计.52.2.1 直流dc-dc电源转换电路选择52.2.2 生成pwm波方式选择72.2.3 模数转换adc采样电路选择83 系统的硬件设计与实现93.1 主处理模块93.2 dc-dc变换(cuk电路) 93.2.1 cuk电路工作原理93.2.2 参数设计.133.3 模数转换模块设计143.3.1模数转换原理及主要技术指标143.3.2 adc0809介绍153.3.3 adc0809与单片机的接口电路163.4 按键电路设计.173.5 显示电路184 系统的软件设计.194.1 系统整体程序框架194.2 电路启动初始化.194.3 按键采集程序204.4 数码管显示子程序214.5 数据采集及模数转换程序224.6 充电子程序的设计234.7 电源子程序的设计23结束语25参考文献26附录27致谢321 引言1.1课题研究的背景和意义当电力、煤炭、石油等不可再生能源频频告急,能源问题日益成为制约国际社会经济发展的瓶颈时,越来越多的国家开始实行“阳光计划”,开发太阳能资源,寻求经济发展的新动力。太阳能电池是利用太阳光和材料相互作用直接产生电能,不需要消耗燃料和水等物质,使用中不释放二氧化碳在内的任何气体,是对环境无污染的可再生能源。这对改善生态环境,缓解温室气体的有害作用具有重大意义。目前,太阳能电池的应用已从军事领域、航天领域进入工业、商业、农业、通信、家用电器以及公用设施等部门,尤其可以分散地在边远地区、高山、沙漠、海岛和农村使用,以节省造价很贵的输电线路。但是,从长远来看,随着太阳能电池制造技术的改进以及新的光电转换装置的发明,各国对环境的保护和对再生清洁能源的巨大需求,太阳能电池仍将是利用太阳辐射比较切实可行的方法,可为人类未来大规模地利用太阳能开辟广阔的前景。1.2 太阳能光伏电池的工作原理图1 光电效应太阳能电池的工作原理图太阳能光伏板组件是一种暴露在阳光下便会产生直流电的发电装置,由几乎全部以半导体物料(例如硅)制成的薄身固体光伏电池组成。由于没有活动的部分,故可以长时间操作而不会导致任何损耗。原理如图1太阳光照在半导体p-n结上,形成新的空穴-电子对,在p-n结电场的作用下,空穴由n区流向p区,电子由p区流向n区,接通电路后就形成电流。1.3 开关电源介绍开关电源就是利用电子开关器件(如晶体管、场效应管、可控硅闸流管等),通过控制电路,使电子开关器件不停地“接通”和“关断”,让电子开关器件对输入电压进行脉冲调制,从而实现dc/ac、dc/dc电压变换,以及输出电压可调和自动稳压。开关电源一般有三种工作模式:频率、脉冲宽度固定模式,频率固定、脉冲宽度可变模式,频率、脉冲宽度可变模式。前一种工作模式多用于dc/ac逆变电源,或dc/dc电压变换;后两种工作模式多用于开关稳压电源。另外,开关电源输出电压也有三种工作方式:直接输出电压方式、平均值输出电压方式、幅值输出电压方式。同样,前一种工作方式多用于dc/ac逆变电源,或dc/dc电压变换;后两种工作方式多用于开关稳压电源。1.3.1 开关电源和线性电源的区别(1) 线性电源:线性电源主要包括工频变压器、输出整流滤波器、控制电路、保护电路等。线性电源是先将交流电经过变压器变压,再经过整流电路整流滤波得到未稳定的直流电压,要达到高精度的直流电压,必须经过电压反馈调整输出电压,这种电源技术很成熟,可以达到很高的稳定度,波纹也很小,而且没有开关电源具有的干扰与噪音。但是它的缺点是需要庞大而笨重的变压器,所需的滤波电容的体积和重量也相当大,而且电压反馈电路是工作在线性状态,调整管上有一定的电压降,在输出较大工作电流时,致使调整管的功耗太大,转换效率低,还要安装很大的散热片。这种电源不适合计算机等设备的需要,将逐步被开关电源所取代。(2) 开关电源:开关电源主要包括输入电网滤波器、输入整流滤波器、逆变器、输出整流滤波器、控制电路、保护电路。开关电源是将交流电先整流成直流电,在将直流逆变成交流电,在整流输出成所需要的直流电压。这样开关电源省去下线性电源中的变压器,以及电压反馈电路。而开关电源中的逆变电路完全是数字调整,同样能达到非常高的调整精度。开关电源的主要优点:体积小、重量轻(体积和重量只有线性电源的2030%)、效率高(一般为6070%,而线性电源只有3040%)、自身抗干扰性强、输出电压范围宽、模块化。开关电源的主要缺点:由于逆变电路中会产生高频电压,对周围设备有一定的干扰。需要良好的屏蔽及接地。1.3.2 开关电源的工作原理开关电源的工作过程相当容易理解,在线性电源中,让功率晶体管工作在线性模式,与线性电源不同的是,pwm开关电源是让功率晶体管工作在导通和关断的状态,在这两种状态中,加在功率晶体管上的伏-安乘积是很小的(在导通时,电压低,电流大;关断时,电压高,电流小)/功率器件上的伏安乘积就是功率半导体器件上所产生的损耗。 与线性电源相比,pwm开关电源更为有效的工作过程是通过“斩波”,即把输入的直流电压斩成幅值等于输入电压幅值的脉冲电压来实现的。脉冲的占空比由开关电源的控制器来调节。一旦输入电压被斩成交流方波,其幅值就可以通过变压器来升高或降低。通过增加变压器的二次绕组数就可以增加输出的电压组数。最后这些交流波形经过整流滤波后就得到直流输出电压。 控制器的主要目的是保持输出电压稳定,其工作过程与线性形式的控制器很类似。也就是说控制器的功能块、电压参考和误差放大器,可以设计成与线性调节器相同。他们的不同之处在于,误差放大器的输出(误差电压)在驱动功率管之前要经过一个电压/脉冲宽度转换单元。 开关电源有两种主要的工作方式:正激式变换和升压式变换。尽管它们各部分的布置差别很小,但是工作过程相差很大。所谓开关电源,顾名思义,就是这里有一扇门,一开门电源就通过,一关门电源就停止通过,那么什么是门呢,开关电源里有的采用可控硅,有的采用开关管,这两个元器件性能差不多,都是靠基极、(开关管)控制极(可控硅)上加上脉冲信号来完成导通和截止的,脉冲信号正半周到来,控制极上电压升高,开关管或可控硅就导通,由220v整流、滤波后输出的300v电压就导通,通过开关变压器传到次级,再通过变压比将电压升高或降低,供各个电路工作。振荡脉冲负半周到来,电源调整管的基极、或可控硅的控制极电压低于原来的设置电压,电源调整管截止,300v电源被关断,开关变压器次级没电压,这时各电路所需的工作电压,就靠次级本路整流后的滤波电容放电来维持。待到下一个脉冲的周期正半周信号到来时,重复上一个过程。这个开关变压器就叫高频变压器,因为他的工作频率高于50hz低频。那么推动开关管或可控硅的脉冲如何获得呢,这就需要有个振荡电路产生,我们知道,晶体三极管有个特性,就是基极对发射极电压是0.65-0.7v是放大状态,0.7v以上就是饱和导通状态, -0.1v- -0.3v就工作在振荡状态,那么其工作点调好后,就靠较深的负反馈来产生负压,使振荡管起振,振荡管的频率由基极上的电容充放电的时间长短来决定,振荡频率高输出脉冲幅度就大,反之就小,这就决定了电源调整管的输出电压的大小。那么变压器次级输出的工作电压如何稳压呢,一般是在开关变压器上,单绕一组线圈,在其上端获得的电压经过整流滤波后,作为基准电压,然后通过光电耦合器,将这个基准电压返回振荡管的基极,来调整震荡频率的高低,如果变压器次级电压升高,本取样线圈输出的电压也升高,通过光电耦合器获得的正反馈电压也升高,这个电压加到振荡管基极上,就使振荡频率降低,起到了稳定次级输出电压的稳定,太细的工作情况就不必细讲了,也没必要了解的那么细的,这样大功率的电压由开关变压器传递,并与后级隔开,返回的取样电压由光耦传递也与后级隔开,所以前级的市电电压,是与后级分离的,这就叫冷板,是安全的,变压器前的电源是独立的。 开关条件:电力电子器件工作在开关状态而不是线性状态 高频条件:电力电子器件工作在高频而不是接近工频的低频 直流条件:开关电源输出的是直流而不是交流 也可以输出高频交流如电子变压器1.4 本论文所做的主要工作本文主要研究太阳能的充电系统,整个系统由电源变换电路、采样电路、处理器、脉宽调制控制器和电池组组成。该设计通过太阳能电池板将太阳能转化为电能,经过dc/dc变换电路处理后,为蓄电池充电。第一章 引言,介绍课题研究的背景、意义,介绍太阳能电池和开关电源,这是本设计的基础。第二章 太阳能充电系统的系统方案设计,构出整体设计框架然后对各个模块进行方案设计。第三章 系统的硬件设计部分,主要对硬件电路各个模块的电路进行设计。第四章 系统的软件设计部分,主要对系统进行程序设计,画出流程图。2 系统设计方案2.1 整体设计方案太阳能电池在使用时由于太阳光的变化较大,其内阻又比较高,因此输出电压不稳定,输出电流较小,这就需要用充电控制电路将电池板输出的直流电压变换后供给电池充电。当光线条件适宜时,通过太阳能电池板吸收太阳光,将光能转换为电能。由于充电器多采用大电流的快速充电法,在电池充满后如果不及时停止会使电池发烫,过度的充电会严重损害电池的寿命。这就需要一个复杂的控制系统,51系列单片机时当前使用最为广泛的8位单片机系列,其丰富的开发资源和较低的开发成本,是51系列单片机现在以至将来都会有强大的生命力。本系统将采用89c51作为充电电路的控制器,从而以较低的成本轻松实现复杂的充电智能控制,同时也可以为其他小型电子产品提供洁净的直流电源。本系统总体设计方案如图2所示,通过太阳能电池板将太阳能转换为电能,由单片机编程实现pwm波控制开关管从而实现输出电压电流的改变,通过显示电路显示输出状态及大小,由adc0809实现数据的采集及转换并传给单片机做判断处理,从而实现电路的智能输出与控制。at89c51太阳能电池dc-dc变换电路显示电路a/d转换按键电路蓄电池图2 整体设计方案图 2.2 各模块方案设计2.2.1 直流dc-dc电源转换电路选择直流变换电路是依靠半导体开关器件的开关动作,将某一直流电压变换为另一个直流电压的电路。这里的变换电路相当于交流电源变压时的变压器,它通过控制开关器件的导通和关断时间,配合电感和电容器件以连续改变直流电压。典型的光伏直流变换电路有直流斩波器和开关型dc/dc变换器。典型装置有蓄电池充电器、直流电动驱动器和电子设备上涌的稳压电源装置。直流变换电路分为直接变换和间接变换两类,前者某一中间变压器介入,直接进行直流电压变化;后者先将直流电压变换为交流电压,经变压器转换后在变换为直流电压。方案一:buck电路降压斩波器,如图3所示。其输出平均电压uo小于输入电压ui,极性相同。图3 buck电路原理图本方案只能降压不能升压,不能完全满足需升降压的情况,故舍弃。方案二:boost电路升压斩波器,如图4所示。其输出平均电压uo大于输入电压ui,极性相同。图4 boost电路原理图本方案只能升压不能降压,不能完全满足需升降压情况,故舍弃。方案三:buckboost电路降压或升压斩波器,如图5所示。其输出平均电压uo大于或小于输入电压ui,极性相反,电感传输。图5 buck-boost电路原理图由于buck-boost变换器的电感l在中间,其输入和输出电流的脉动都很大。针对这一缺点,美国加州理工大学的slobdan cuk教授提出了单管cuk变换器,该变换器使用了两个电感,一个在输入端,一个在输出端,从而减小了电流脉动。且cuk电路既能升压又能降压,可以满足需升压或降压的情况故采用方案四cuk电路。方案四:cuk电路降压或升压斩波器,如图6所示。其输出平均电压uo大于或小于输入电压ui,极性相反,电容传输。图6 cuk电路原理图2.2.2 生成pwm波方式选择pwm是pulse width modulation(脉冲宽度调制)的简称。生成pwm脉冲的方法很多,大致可以分为3大类:第一类是完全由模拟电路生成;第二类是由专用集成芯片生成;第三类是由微处理器生成。方案一:模拟电路的方法通常由正弦调制波和三角载波比较产生,如图7所示。图中,正弦波发生器和三角波发生器分别由模拟电路组成,在异步调制方式下,三角波的频率是固定的,而正弦波的频率和幅值随调制深度的增大而线性增大。图7 模拟电路方法产生pwm波本方案原理简单而且直观,但缺点较多。如硬件开销大,系统的可靠性较低,稳定性差。方案二:微处理器生成。at89c51本身自带有生成pwm波功能,故可大大简化编程。2.2.3 模数转换adc采样电路选择单片机在控制输出占空比可调的pwm波时,是与太阳能电池板输出原电压相匹配的,由公式确定。所以,单片机需要确定vd的原值,这就必须a/d采样。由于单片机工作电压为3v,而从太阳能电池板的输出电压0-16v,可能会超出其工作电压而烧毁芯片,所以在a/d采样之前,需要精确降压才能采样。本设计uo=1/6ui。方案一:采用电阻分压法。如采用r1:r2=5:1,取r2两端电压。但如果太阳能电池帆板内阻和分压电阻数量级相差不大,那么误差将会很大。故舍弃。方案二:采用比例运算电路。如图8所示。图8 比例运放采样电路图比例运算电路能精确降压,由单片机采样结果可得到原太阳能电池板输出电压的精确值,进而控制占空比输出与原电压匹配的pwm波。故采用方案二。3 系统的硬件设计与实现3.1 主处理模块本系统单片机主要完成的任务是控制数据的采集过程,并将采集到的数据经过分析处理后生成pwm脉宽调制信号控制开关的导通与关断,从而控制输出大小。具体工作过程是上电复位,首先查询键盘,确定充电器功能,确定后继续查询键盘以确定输出电流大小,或作为普通电源的输出电压,然后转入相应子程序并分析计算pwm占空比,开始输出电流或电压,并将数据送至显示电路线路显示。在输出过程中通过单片机定时器检测输出电流或电压,与设定值比较后调节pwm占空比,使输出趋于设定值。在电池充电过程中,通过检测电流大小而确定电池充电多少,从而改变充电方式或决定是否停止充电。通过单片机编程实现了充电过程的智能控制,而且大大简化了硬件电路设计,由于单片机良好的可重用性如果需要改变电路工作状态或电路参数,只需简单的修改程序即可实现,从而使电路的升级改造变得简单易行。本设计采用at89c51作为主处理芯片。at89c51是一种带4k字节闪存可编程可擦除只读存储器(fperomflash programmable and erasable read only memory)的低电压、高性能cmos 8位微处理器,俗称单片机。at89c2051是一种带2k字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。at89c单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.2 dc-dc变换(cuk电路)3.2.1 cuk电路工作原理cuk变换器的电路形式如图9所示,在负载电流连续的条件下,工作波形如图10所示,其中l1、l2为储能电感,q为功率开关管,d为续流二极管,c1为传输能量的耦合电容,c2为滤波电容。图9 cuk变换器电路原理图及其等效电路图10 cuk变换器工作波形模式1:q导通q导通,l1储能,c1电容上的电压使d反偏置,电容通过负载z和l2传输能量,负载获得反极性电压,l2、c2储能。由电路可知,在这种电路结构中,q管和二极管d是同步工作的,q导通,d截止;q截止,d导通。l1的电流增量为: (1)从输出回路来看,在期间,c1供电,l2储能,若c1的足够大,可忽略c1上的压降,则l2上的电压为,l2中的电流以()/的速率线性上升,在期间,l2的电流增量为: (2)模式2:q关断在期间,q截止,d导通,电容c1被充电,l1通过c1和d向c1充电储能,同时l2向负载释放能量,在这种电路结构中,无论在期间还是在期间都从输入向负载传输能量,只要电感l1、l2和电容c1足够大,输入输出电流基本上是平滑的。在期间c1充电,在期间c1向负载放电,可见c1起着传递能量的作用。在期间,l1释放能量,l1上的压降,l1中的电流以()/的速率线性下降,l1的电流减量为: (3)从输出回路来看,在期间,由于d导通,l2释放能量,则l2上的电压为-,l2中的电流以的速率线性下降,在期间,l2的电流减量为: (4)在稳定状态下,电感l1电流变化量应相等: (5)l2中电流变化量应相等: (6)若c1足够大,在导通、截止期间上的电压可认为近似不变(只有很小的顶降),则有: (7)假设电路中所有的器件为理想开关,即变换器无功率损耗,输入功率等于输出功率,负载阻抗z=,输入平均电流ii即为电感l1平均电流 (8)电感l1电流的最大值: (9)电感l1电流的最小值: (10)临界电感: (11)输出平均电流即电感l2的平均电流: (12)l2电感电流的最大值: (13)电感电流的最小值: (14)临界电感: (15)下面来看电容c2的峰-峰脉动电压。假设负载电流的脉动量很小而可以忽略,即电感的峰-峰脉动电流即为电容充放电电流。 (16) (17) (18)cuk变换器输出电压可高于或低于输入电压,提供一个反极性不隔离的输出电压,其输入和输出电流都是连续的,具有较小的纹波分量,可以应用于光伏发电系统的光伏阵列最大功率点跟踪、光伏照明、光伏扬水应用等。3.2.2 参数设计(1)选择续流二极管d。续流二极管选用快恢复二极管,其额定工作电流和反向耐压必须满足电路要求,并留一定的余量。(2)选择开关管工作频率。最好工作频率大于20khz,以避开音频噪声。本设计中选择f=40khz,即t=25us进行仿真。(3)开关管可选方案:mosfet、igbt、gtr。(4)占空比d,=12v,|d|=0.42,1)|1-d|=(0,0.58(5)确定临界电感,电感选取一般为临界电感的10倍。临界电感:=故取为=5mh。同理,临界电感:=0.725mh故取为10mh。(6)确定电容。降低纹波电压,在已知d、vd、vo、和f的情况下根据上述公式可以确定c的值。故取=50uf,取。3.3 模数转换模块设计3.3.1模数转换原理及主要技术指标(1)a/d转换器的基本原理模数转换(adc)亦称模拟数字转换,与数/模(d/a)转换相反,是将连续的模拟量(如象元的灰阶、电压、电流等)通过取样转换成离散的数字量。模数转换包括采样、保持、量化和编码四个过程。如图11所示。图11 模数转换原理及过程模拟电子开关s在采样脉冲cps的控制下重复接通、断开的过程。s接通时,对c充电,为采样过程;s断开时,c上的电压保持不变,为保持过程。在保持过程中,采样的模拟电压经数字化编码电路转换成一组n位的二进制数输出。(2)主要技术指标l 分辨率a/d转换器的分辨率用输出二进制的位数表示,位数也越多,误差越小,转换精度越高。l 相对精度在理想情况下,所有的转换点应当在一条直线上。相对精度是指实际的各个转换点偏离理想特性的误差。l 转换速度转换速度是指完成一次转换所需的时间。转换时间是指从接到转换控制信号开始,到输出端得到稳定的数字输出信号所经过的这段时间。3.3.2 adc0809介绍adc0809是采样分辨率为8位的、以逐次逼近原理进行模-数转换的器件。其内部有一个8通道多路开关,他可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行a/d转换。(1)adc0809的内部逻辑结构adc0809由一个8路模拟开关、一个地址锁存与译码器、一个a/d转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用a/d转换器进行转换。三态输出锁存器用于锁存a/d转换完的数字量,当oe端为高电平时,才可以从三态输出锁存器取走转换完的数据。(2)引脚结构in0-in7:8条模拟量输入通道adc0809对输入模拟量要求:信号单极性,电压范围是0-5v,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。地址输入和控制线:4条ale为地址锁存允许输入线,高电平有效。当ale线为高电平时,地址锁存与译码器将a,b,c三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。a,b和c为地址输入线,用于选通in0-in7上的一路模拟量输入。通道选择表1所示。st为转换启动信号。当st上跳沿时,所有内部寄存器清零;下跳沿时,开始进行a/d转换;在转换期间,st应保持低电平。eoc为转换结束信号。当eoc为高电平时,表明转换结束;否则,表明正在进行a/d转换。oe为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。oe=1,输出转换得到的数据;oe=0,输出数据呈高阻状态。d7-d0为数字量输出线。clk为时钟输入信号线,因adc0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500khz,vref(+),vref(-)为参考电压输入。3.3.3 adc0809与单片机的接口电路本设计中用单片机的p0口接收来自0809的换数据,时钟信号由单片机ale端经74hc74触发器二分频后提供,单片机采用12mhz晶振,ale端经二分频后为500khz。adc0809具体工作过程为:首先p2.0、p2.1、p2.3输入3位地址,并使p2.3输出高电平,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。start上升沿将逐次逼近寄存器复位。下降沿启动a/d转换,之后eoc输出信号变低,指示转换正在进行。直到a/d转换完成,eoc变为高电平,指示a/d转换结束,结果数据已存入锁存器,这个信号可用作中断申请,而触发单片机做准备接收数据,这是使p2.5输出高电平,输出三态门打开,转换结果的数字量输出到数据总线上,单片机读取p0口后然后做下一步处理操作。接口电路如下图12。图12 adc0809与单片机的接口电路3.4 按键电路设计在单片机应用系统中,按键主要有两种形式:1、独立按键;2、矩阵编码键盘。独立按键的每个按键都单独接到单片机的一个i/o口上,独立按键则通过判断按键端口的电位即可识别按键操作;而矩阵键盘通过行列交叉按键编码进行识别。通常所用的按键为轻触机械开关,正常情况下按键的接点是断开的,当我们按压按钮时,由于机械点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而机械触点在闭合及断开的瞬间均伴随有一连串的抖动,抖动时间的长短由按键的机械特性及操作人员按键动作决定,一般为5ms-20ms;按键稳定闭合时间的长短是由操作人员的按压时间长短决定的,一般为零点几秒至数秒不等。在本设计中由于按键不是太多,故采用独立按键法,这样可以减小编程的难度,图13为本设计的按键接线图。图13 按键接线图对电路总体考虑后,将adc0809采集电路接在了单片机的p0口,并用p2口做采集控制,这样p0口仅用接收数据,不用发送数据,有p0口的硬件构成知道,其做输出的话需接上拉电阻,做输入的不用接,这样整体上减少了电路的硬件开支,而p3口要做串口传输等工作,所以在本电路中将按键接在p1口,其中p1.0是数字减键,p1.1是数字加键,p1.2为确定键,p1.3为过电流保护指示灯,p1.4、p1.5为输出功能选择键,按下p1.4代表给手机电池充电,按下p1.5则做普通直流电源使用,其中5v输出可直接用usb连接线给手机充电。3.5 显示电路at89c51单片机内有一个串行i/0端口,通过引脚rxd和txd可与外部电路进行全双工的串行异步通信,发送数据时由txd端送出,接收时数据由rxd端输入。串口有四种工作方式,通过编程设置,可以使其工作在任一方式以满足不同的场合。其中,方式0是8位移位寄存器输入/输出方式,多用于外接移位寄存器以扩展i/o端口。串口的工作方式可以参看相关的书籍,此处不做详细介绍。方式0的输出是8位串行数据,通过移位寄存器可将8位串行数据变成8位并行数据输出,也可以将外部的 8位并行数据变成8位串行数据输入。因此外接一个移位寄存器就可以扩展一个8位的并行输入/输出接口,如果想多扩展几个并口就需要在外部级连几个移位寄存器。本设计采用基于串口的led数码管静态显示电路,在串口扩展中最常用的就是基于串口的led数码管显示电路。在单片机应用系统中,led数码管的显示常用两种方法:静态显示和动态扫描显示。所谓静态显示,就是每一个显示器都要占用单的具有锁存功能的i/o接口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,在发送新的字型码,因此,使用这种方法单片机中cpu的开销小。可以提供单独锁存的i/o接口电路很多,常用的就是通过串口外接串并转换器74ls164,扩展并行的i/o口。需要几个数码管就扩展几个并行接口,数码管直接接在74ls164的输出脚上,单片机通过串口将要显示数据的字形码逐一的串行移出至74ls164的输出脚上数码管就可以显示相应的数字。电路图如图14所示。图14 数码管驱动电路单片机at89c51的串口外接1片74ls164作为led显示接口,把at89c2051的rxd作为数据输出线,txd作为移位时钟脉冲。q0-q7(第3-6和10-13引脚)并行输出端分别接led显示器的dp-a各段对应的引脚上。本设计采用的是共阳极数码管,因而各数码管的公共极接电源vcc,本电路有lm7805提供,并采用三只串联的二极管降压,而非电阻降压,这样保证各数码管段的亮度一致,要显示某字段则相应的移位寄存器74ls164的输出线必须是低电平。当有按键按下时,有单片机处理编码后送到数码管上显示。4 系统的软件设计4.1 系统整体程序框架本设计整体工作主要由单片机程序控制实现,其工作过程为:电路启动初始化,电路功能选择,输出选择并确定输出,单片机采集计算输出pwm信号,定时采集数据并处理调节pwm信号占空比等,程序整体框架如图15所示。开始初始化电池充电?充电子程序电源子程序结束n按键采集数据采集及模数转换数码显示y图15 程序整体框架流程4.2 电路启动初始化初始化是为单片机的运行设置初始的运行环境,主要完成以下工作:清片内,每次单片机加电时,都将引起单片机的上电复位操作。复位操作完成后,单片机的寄存器会被置以不同的值,这些值中有相当一部分是未知的值。这些未知的值在单片机复位完成,正式运行以后,会产生无法让程序设计人员掌握的后果,甚至会造成系统的损坏。因此,在单片机运行以后,首先清0使之置初始参数设定,便于程序人员掌握,以利系统的工作。设置系统运行所需的各个参数,设置定时器和中断设定。图16为初始化程序流程。图16 初始化程序流程4.3 按键采集子程序键盘子程序用于探测开关,是否处于在有效的开关状态,以决定是否启动系统运转。读线、读取、相连的端口,并将其值判断处理后存于相关缓存中。其中读取端口后要做一定的延时以排除键抖引起的误动作。图17为按键子程序结构流程图。入口读i/o口延时?处理后存入缓存返回yn图17 按键子程序结构流程图4.4 数码管显示子程序开机时,初始化数码管,通过串口将“0”的字型码输出使数码管显示“0”,然后判断p1口是否有键按下,如果没键按下继续判断。显示子程序首先初始化串口,使串口工作在方式0,再读取显示缓冲区内的数据(显示缓冲区主要是用来存放即将要显示的数据),然后通过查表的方式找到对应的字形码,最后把字形码写入串口寄存器sbuf通过串口方式0发送出去。当8个时钟脉冲后,字型码都移至74ls164的q0-q7,数码管就显示相应按键的编码。显示子程序是怎么将显示缓冲区中的数据变成相应的字型码呢?具体的方法是将每个数字码以16进制数从小到大的次序依次存放在存储器中的固定区域中,构成显示代码表。当要显示某字符时,把表格的起始地址送入数据指针寄存器dptr中作为基址,将显示缓冲区内的数据作为偏移量送入变址寄存器a,执行查表指令“movca,a+dptr”,则累加器a中得到的结果即表格中取出的对应数字的字形码。对于电路中的74ls164共阴极数码管数据位和字形的对应关系如下表。由于单片机在以下方式0串行发送数据的时候数据从rxd引脚从低位到高位依次输出,而最先输出的数据经过74ls164串转并后到达q7,也就是说单片机内的d0通过串口发送并经过74ls164到达74ls164的q7脚即数码管的a脚,因此在单片机内字型码与74ls164所对应的字型码正好相反,所以共阳极数码管在单片机内0-9所对应的字型码分别是:01h、4fh、12h、06h、4ch、24h、20h、0fh、00h、04h。4.5 数据采集及模数转换程序数据采集主要由单片机控制adc0809完成,程序分为数据初始化,发送启动转换命令,等待转换结束,接收数据,处理并存入缓存,程序流程如图18所示。入口初始化启动转换转换结束?处理存储返回yn图18 数据采集子程序结构流程图4.6 充电子程序的设计充电过程分两阶段进行,第一阶段为恒流充电,充电电流可设定,当充电电压达到4v时转入第二阶段,即4.2v的恒压充电方式,恒压充电电流会随着时间的推移而逐渐降低,待充电电流降到0.1ma时,表明电池充电会慢慢降低到零,电池完全充满。充电过程中,“充电”指示灯亮;充满时,“充饱”指示灯亮,“充电”指示灯灭。通过按键设置可控制充电时间。充电子程序流程图如图19所示。.入口采集电压恒流充电电压4v?电流0.1ma?充电结束恒压充电nyyn图19 充电子程序结构流程图4.7 电源子程序的设计本设计与传统太阳能充电系统相比,最大的优点就是不仅能直接给电池充电,还能作为普通的直流电源使用,其输出电压0到5v可调,数字显示,并有完善的过电流保护功能,从而确保电子产品的安全使用。电源子程流程图如图20所示。入口采集电压电流过电流?输出电压判断减小占空比跳过增大占空比返回关断输出yn小大相等图20 电源子程序流程图结束语本太阳能充电系统的设计分为硬件电路设计软件,程序设计两个部分,硬件电路设计属于前期的主要工作,通过方案论证与可行性分析,最终确定由89c51单片机完成主电路的控制与设计,并展开外围电路与控制硬件电路设计,硬件电路的设计主要是电路原理图的绘制以及参数的确定。在硬件电路设计上遇到了一些问题,关于dc/dc转换的pwm脉宽他调制信号的产生问题,经过反复论证,最后用确定用单片机通过编程来实现,这样将大大降低硬件的成本。软件的设计采用模块化的程序设计方法,分为主程序部分、按键采集模块、数码管显示模块、ad转换采集模块以及pwm脉宽信号产生模块等。程序的设计既参考了一些资料里的内容,也有相当的自我设计,比如说pwm脉宽调制信号的产生程序,就是参考了网友提供的标志位加定时器实现的方法,但主程序中有关数据处理计算的则是自己的设计,因为这些东西涉及到具体的硬件电路,是找不到相关资料的,在数据处理中有简单的单字节算法,也有双字节的,有点则采用巧妙的算法有效避免出现双字节,从而使程序设计变得简单。参考文献1 蒋鸿飞,胡舒婷 绿色能源太阳能充电器j,上海应用技术学院报(自然科学版),2007.2:147-1492 蔡朝洋.单片机控制实习与专题制作m.北京航空航天大学出版社,2006.11:125-1273 张红梅,尹云华. 太阳能电池的研究现状与发展趋势j. 水电能源科学,2008. 6:193-1974 李朝青.单片机原理及接.技术m. 北京航空航天大学出版社,2005.05:44-525 滨川圭弘. 太阳能光伏电池及应用m. 北京:科学出版社,2008.7:36-476 童诗白. 华成英. 模拟电子技术基础m.北京:高等教育出版社,2001.4:253-2678 张毅刚. 单片机原理及应用m.北京:高等教育出版社,2006.6:56-789 董文博. 吴知非.数字化智能充电器的设计j.电子技术应用,2006.2:14-3510 刘超. 基于单片机的智能手机电池充电系统j.长春理工大学学报(高教版),2007.1:24-5011 李鹏. 基于单片机的太阳能充电装置设计j.高校理科研究,2006.2:48-6612 陈坚,电力电子学电力电子变换和控制技术j,高等教育出版社,2002.1:13315213 苗裕,郑喜凤,许开欢,王瑞光. 单片微型机原理、应用与实验m.复旦大学出版社,2000.5:215-24414 艾红,王捷,厉虹,万明明.基于串行接口的汉字液晶显示模块应用与开发j.液晶与显示,2006.3:215-21915 zhang nannun, new control principle(in chinese)m, defence industry publishing house, beijing, 2005.1:150-167 16 l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 绿色营销 课件
- 西京学院《电工电子实训》2022-2023学年期末试卷
- 西华师范大学《中学历史教学论》2022-2023学年第一学期期末试卷
- 西华师范大学《知识产权法学》2023-2024学年期末试卷
- 西华师范大学《艺术采风》2023-2024学年第一学期期末试卷
- 2024-2025学年高中物理举一反三系列专题2.1 温度和温标(含答案)
- 西华师范大学《平面设计基础》2023-2024学年第一学期期末试卷
- 西华师范大学《个人理财实务》2021-2022学年第一学期期末试卷
- 西华师范大学《创业管理》2022-2023学年第一学期期末试卷
- 西昌学院《英汉笔译实践》2023-2024学年第一学期期末试卷
- 奋战冬三月励志主题班会课件
- 人 大 代 表 履 职 档 案
- C25喷射混凝土配合比设计与使用
- 企业经营模拟实训知到章节答案智慧树2023年华南农业大学
- 如何做好幼儿园家长工作课件
- 胆总管囊肿护理查房
- 高中化学学业水平考试合格考知识点总结
- 《Matlab语言与及其应用》实验报告
- 电气防雷接地装置隐检与平面示意图表
- 2023年全国中学生语文能力竞赛样题
- YY/T 0471.5-2017接触性创面敷料试验方法第5部分:阻菌性
评论
0/150
提交评论