12011年全国大学生电子设计竞赛设计报告开关电源模块并联供电系统(A题)摘要:本供电系统采用开关电源芯片TPS5430为核心制作的两路DC-DC开关电源,由ATmega16作为系统的主控制电器。利用MAX531加电压放大器接入TPS5430的电压反馈端口,通过单片机控制MAX531改变电路的反馈端,自动控制调节稳定输出电压。进而改变电流,使电流实现自动分配。该系统电路简洁,输出电压稳定,输出电流可调且稳定可靠,纹波小,高效率,具有输出过流保护功能等特点。在实际应用中能解决电流自动分配的问题,具有一定的实用价值。关键词:DC-DCTPS5430自动分配电流高效率2一、系统的方案论证1.电源变换拓扑方案论证方案一、采用单片机PWM控制采用单片机产生PWM波,控制N-MOSFET的导通与截止。根据A/D采样反馈电压程控改变占空比,使输出电压稳定在设定值。负载电流在金属壳电阻上取样经A/D后输入单片机,当该电压达到一定值时关闭开关管,形成过流保护。该方案主要由软件实现,控制算法比较复杂,速度慢,而且输出电压不稳定实现起来比较困难。方案二、采用脉宽调制控制器TL494该芯片可推挽或单端输出,最高工作频率为300KHz,输出电压可达40V,内有5V的电压基准,输出级的拉、灌电流可达200mA,驱动能力较强。芯片内部有两个误差比较器,能实现电流模式控制,方便做过流保护。但由于BUCK型拓扑的MOS管驱动需外加上管驱动芯片IR2110,而IR2110会有0.2W左右的功耗,会降低系统的效率。方案三、采用TPS5430采用TI公司的BUCK型DC/DC芯片TPS5430,其最大输出电流3A,内部集成有驱动电路和1.221V基准源,固定工作频率500KHz,效率高达95%。用TPS5430可使电路结构简单,只需要配合少许外部元件便可精确、稳定地得到输出电压,可靠性高,且在高的工作频率减小了对电容和电感的要求。综合比较,为了能使系统具有较高的效率和可靠性,所以我们采用更为可靠、稳定的TPS5430芯片作为DC-DC模块的主器件。2电流方案论证与选择方案一、下垂法下垂法(又叫斜率法)是最简单的一种均流方法,电路结构如图1。其原理是利用电流反馈信号或者直接输出串联电阻,改变模块单元的输出电阻,使外特性的斜率趋于一致,达到均流。由图2可见,下垂法的均流精度取决于各模块的电压参考值、外特性曲线平均斜率及各模块外特性的差异程度。但此方法小电流时均流效果差,随着负载增加均流效果有所改善;对本系统而言,我们希望外特性斜率越小越好,而下垂法则以降低电压调整率为代价来获取均流,该法只适合应用在均流精度大于或等于10%的场合;很难达到5%的均流效果。图1图2方案二、主从均流法环内调整结构的主从均流法。把主模块作为基准模块,从模块接入电压放大3器接成跟随器的形式,工作于电流源方式。控制MAX531输出的电压使电压放大器调节从模块的反馈电压降低,从而调整输出电压使之稳定在规定的范围内。所以不管负载电流如何变化,各模块的电压总是保持相等的。采用这种均流法,精度很高,控制结构简单,模块间联线少,易于控制。综合比较,方案二只需通过单片机控制MAX531输出电压改变电压放大器,从而改变模块的反馈电压,使模块通过调整电压达到输出范围,进而改变电流,实现自动分配。因此,我们采用方案二。3.A/D转换芯片的比较与选择方案一、采用MAX187MAX187是串行12位模数转换器可以在单5V电源下工作,接受0-5V的模拟输入。MAX187为逐次逼近式ADC,快速采样/保持(1.5uS),片内时钟,高速3线串行接口。MAX187转换速度为75Ksps。通过一个外部时钟从内部读取数据,并可省却外部硬件而与绝大多数的数字信号处理器或微控制器通讯。MAX187有内部基准,优异的AC特性和极低的电源消耗,能应用于对电源消耗和空间极为苛刻的地方。方案二、采用ATmega16内部ADCATmega16内部带有一个10位的逐次逼近型ADC。ADC与一个8通道的模拟多路复用器连接,对来自端口A的8路单端输入电压进行采样。单端电压输入以0V(GND)为基准。另外还支持16路差分电压输入组合,但精度不高。综合比较,使用MAX187精度远远超过要求,但本系统需要进行4路A/D采样,需要4片MAX187,成本较高,而且电路设计重复,降低了效率。因此,我们采样方案二,既节省了资源,也符合题目精度在4%左右的要求。二、理论分析与计算1.DC-DC电源的设计与计算经过分析题目后,我们决定做两路对称的DC/DC模块电源给后级供电。题目要求输入电压为24V,输出电压为8.0V,由于BUCK电路要求接入负载后输出的电压压差小于0.4V,所以采用TI公司的开关电源芯片TPS5430,其开关频率为500KHz,内部基准电压1.221V,通过控制基准电压调整输出电压,使输出稳定,可获得较高效率。电压变换的单路电路如图3所示。输出电压计算公式:R1+ResTap1Vo=1.221*(1+———————)R22.电流电压检测的设计网络标签TPS5430_Vsense为TPS5430反馈端,AV为电压放大器的输出端口,RL为负载(滑动变阻器)。电路通过调整输出电压的高低来影响TPS5430的反馈电路,从而使电路的输出进行调节到稳定,如图4所示。4图4电流电压检测原理图3.均流方法的设计TPS5430反馈电路加R2到地,通过MAX531控制电压放大器降低电压。此时有附加电流流过R1后,Rf点电压下降,从而基准电压也下降,而不再是1.221V。为了使VSENSE恢复到1.22V,TPS5430将增加PWM脉冲宽度,增加Uout从而使输出电压稳定,然后提高该路电流输出,达到自动流的目的。图3输出电压稳压原理图4.纹波测试方法两路电源独立工作,上电后接上负载,将示波器的两探头分别接到两路电源的输出端,调节示波器至mV档,然后将负载从轻载缓慢的调至重载,记录下示波器5显示的最大峰峰值Vpp,即最大纹波。测试结果见表1。表1纹波系数检测测试点200mA618mA973mA1152mA1647mA2024mV主路20mV20mV24mV25mV25mV27mV从路20mV20mV24mV25mV25mV27mV并联20mV20mV24mV25mV25mV27mV4.过流保护电路的设计本供电系统的过流保护电路主要通过软件来控制。预先设定一个电流4.5A过流保护点,通过A/D采样,把数据传送到单片机上,计算电路的流过负载电流值。当电流达到过流保护点时,单片机控制DC-DC模块的使能,使芯片停止工作,同时使蜂鸣器导通发出警报。当故障点解除后,电路自动恢复工作。三、系统设计1.总体系统框架设计DC-DC电源模块输出的电压通过A/D转换器进行取样,把数据送到单片机。假如输出电压减少,单片机控制D/A转化器调节控制电压放大器,使电源模块的反馈端发生改变,TPS5430进行自动调节使电压稳定。另外,可通过按键来键入电流比例。系统总体框架如图5所示。6图5系统总体设计框架图2.硬件部分(1)主控制电路DC-DC电源模块OUTATmega16单片机按键LCD显示D/A转换器A/D转换器电压放大器7图6主控制电路原理图由ATmega16单片机作为主控芯片,片内资源丰富,方便扩展外围电路。使用ISP在线下载方便程序下载调试。采用LCD12864显示。(2)DC-DC电源模块电路图7DC-DC电源模块原理图以TPS5430作为核心芯片,通过改变外围器件的数值,改变电压电流,使之达到题目要求的指标。8(3)调节控制电路图8调节控制电路通过单片机控制MAX531的输出电压,改变电压放大器的电压,使之与DC-DC模块的反馈端产生电压差,从而改变模块的输出电压。3.软件设计软件实现可电压调节,实现电压稳定,电路自动分配的流程图。9图9电压稳定,电路自动分配的流程图4.测试结果(1)输出电压Uo:8000±180mV。(2)输出电流调节范围:最小输出电流最大输出电流主路100mA2.5A从路100mA2.5A并联200mA4.5A(保护)(3)自动分配电流偏差测试结果;次数主路输出电流mA从路输出电流mA并联输出电流mA11241242482418418835375575615104102410242046513071310261961618162132407204520444095主程序开始系统初始化自动分流按键按下显示结果符合要求NY调整反馈电压控制输出电压检测与比较达到自动分流10四、结论综上所述,经过对系统的检测,我们小组的作品实现了题目的大部分要求,在某些方面系统性能还超过了题目的要求,比如输出电压误差绝对值范围在0.1V以内,纹波系数远低于普通的开关电源纹波系数等。但由于时间紧,工作量大,系统还存在许多可以改进的地方,比如电路布局和抗干扰方面还有待提高,相信经过改进之后效率会有进一步的提升。本次比赛让我们得到了锻炼的机会,极大地提高各方面的能力。尽管在比赛中我们遇到了很多困难和障碍,但总体上是成功与失败交替,希望与困难并存。经过这次比赛,我们知道了自己的不足,我们将继续努力,争取获得更大的进步。五、参考文献[1]康华光.电子技术基础-模拟部分[M].第五版.北京:高等教育出版社,2006.[2]杨龙麒.电子测量技术[M].第三版.北京:人民邮电出版社,2009.[3]铃木雅臣.晶体管电路设计[M].北京:科学出版社,2006.[5]刘海成.AVR单片机原理及测控工程应用[M].北京:北京航空航天大学出版社,2008附录一:11图10ATmega16控制电路原理图12图11TPS5430开关电源模块附录二:主要元器件清单开关电源TPS5430单片机ATmega16LCD12864液晶MAX531金属壳电阻1N5822LM2596100uH绕线电感等附录三:单片机主程序#includeiom16v.h#includemacros.h#includemath.h#defineucharunsignedchar#defineuintunsignedint#defineulongunsignedlonguinttime1=0;ucharflage=0,flage1=0;#includescan.h#includelcd12864.c#includead.c#includemax531.c#includetimer1.h13#includeinit.hvoidsys_init(){DDRB|=0xB3;DDRD|=17;DDRA|=17;DDRA|=16;PORTD|=(17);PORTA|=(17);PORTA|=(16);SPCR=0x50;init12864();desplay12864chars(1,2,欢迎使用);desplay12864chars(3,1,开关电源模块);desplay12864chars(4,1,并联供电系统);delay(300);init12864();timer1_init();desplay12864chars(1,0,输出电压:);desplay12864chars(1,7,mV);desplay12864chars(2,0,电流1:);desplay12864chars(2,7,mA);desplay12864chars(3,0,电流2:);desplay12864chars(3,7,mA);desplay12864chars(4,0,I1:I2=);desplay12864chars(4,6,:);}voidtimer1_init(void){TCCR1B=0x00;//停止定时器TIMSK|=0x04;//中断允许TCNT1H=0xC2;TCNT1L=0xF7;//初始值TCCR1A=0x00;TCCR1B=0x04;//启动定时器SEI();//开全局中断}#pragmainterrupt_handlertimer1_ovf_isr:9voidtimer1_ovf_isr(void){