开关稳压电源全国大学生电子设计竞赛全国一等奖.docx
《开关稳压电源全国大学生电子设计竞赛全国一等奖.docx》由会员分享,可在线阅读,更多相关《开关稳压电源全国大学生电子设计竞赛全国一等奖.docx(16页珍藏版)》请在冰豆网上搜索。
开关稳压电源全国大学生电子设计竞赛全国一等奖
开关稳压电源
全国大学生电子设计竞赛全国一等奖
摘要:
本系统从使用简单、测试方便、功能完备、成本低廉,用户界面友好出发,以BoostDC/DC变换器作为主要功能模块,通过电压反馈实现电压的稳定输出。
采用Atmaga16单片机,开发了全程中文菜单操作环境,具有全中文提示和电压电流显示,通过键盘实现输出电压的步进调整,并且有时间和温度显示。
输出电压30-36V可调,最大输出电流达2A,并且具有过流保护和自动恢复的功能。
输出噪声纹波电压峰-峰值小于1V,变换器效率超过85%。
关键词:
开关电源,电压可调,过流保护,高效率。
Abstract:
Wedesignoursystematthestandingpointoftheuseofsimple,convenienttesting,afullyfunctioning,low-costanduser-friendly.ThekeyfunctionmoduleofoursystemisaBoostDC/DCconverter,anditachievedstableoutputvoltagethroughvoltagefeedback.WedevelopedawhollyChinesedevelopingandoperatingenvironmentusingaATmaga16MCU.Thesystemcandisplaythevalueofoutputcurrentandvoltage,andtheoutputvoltagecanbeadjustedfrom30Vto36Vthroughthekeyboard,andthemaximumoutputcurrentis2A.Thesystemhasafunctionofover-currentprotection,anditcanreturntothenormalstateautomaticallywhenthecurrentisunderthethresholdvalue.Theoutput-voltageripplenoiseofthesystemislowerthan1V,andtheconverterefficiencyofover85%.
Keywords:
SwitchingPowerSupply,Voltageadjustable,Over-currentprotection,Highefficiency
1.方案论证
根据设计要求,本系统主要由前级滤波部分、交流降压部分、整流滤波部分、DC/DC转换部分、PWM产生及输出反馈部分、控制部分、保护部分等组成。
为较好的实现各模块的功能,我们分别设计了几种方案并分别进行了论证。
DC-DC主回路
方案一:
采用半桥型DC/DC变换器。
半桥型DC/DC变换器高频变压器利用率高、抗不平衡能力强,但是该变换器输出脉冲电压的顶部呈倾斜状态,并且输出功率较小。
方案二:
采用Boost变换器。
Boost变换器又称升压变换器、三端开关型升压稳压器。
该变换器仅由开关器件、电感、电容、二极管组成,最大的特点是系统结构简单、成本低、效率高。
但Boost变换器升压范围有限,并且只能一路输出。
考虑到题目要求的升压率不是很高,Boost变换器已经可以满足要求,并且综合考虑成本,我们采用了方案二,高频变压器工作频率设计为150Khz,DC-DC主回路如图1所示:
图1Boost变换主电路拓扑
PWM信号的产生和输出反馈采样
开关电源的关键在于利用脉冲控制高频变压器的开关,实现能量的转换。
因此,脉冲信号的产生和输出信号的反馈决定了整个系统的稳定性。
我们经过对比论证,采用集成控制芯片TL494。
TL494是美国德州仪器公司生产的一种性能优良的电压驱动型脉宽调制器件,内置有5V±5%的基准电源,末级输出级的最大电流可达250mA,有死区时间可调控制端,可对它的锯齿波振荡器的工作状态执行外同步控制,末级输出可采用双端对称输出或单端输出的工作方式。
TL494的PWM信号最高频率可以达到500KHZ,并且具有两路误差比较放大器,可以方便的采集反馈电压,并自动进行PWM调整。
该芯片满足作品的设计要求,TL494的外围电路如附图Ⅰ所示。
微控制器模块
采用Atmel公司的Atmaga16L单片机作为主控制器。
Atmaga16L是一个低功耗,高性能的8位单片机,片内含16k空间的可反复擦写100,000次的Flash存储器,具有1Kbytes的随机存取数据存储器(RAM),32个IO口,2个8位可编程定时计数器,1个16位可编程定时计数器,四通道PWM,内置8路10位ADC,硬件SPI和TWI,可编程看门狗电路,抗干扰能力强,可在电磁干扰环境下工作。
且Mega系列的单片机可以在线编程、调试,方便地实现程序的下载与整机的调试。
单片机最小系统的电路如附图Ⅱ所示。
1.4提高效率的方案设计
开关电源的效率与电源的工作频率有直接关系。
一般说来,工作频率越高,开关电源的效率越高,但是,较高的频率对系统硬件电路的要求和元器件的性能也相应的提高,同时,感性元件在过高的频率下工作,对外辐射的电磁波也相应的增加,考虑到以上问题,兼顾成本因素,我们将DC/DC模块的工作频率定位150KHz。
在Boost模型中,能量主要消耗在快恢复二极管和大功率开关管上,因此,对以上两种器件参数的选择将直接影响到整个模块的效率。
对于两种器件参数的详细计算和功耗的讨论请见本文2.1和2.3部分。
1.5系统总体方案
以Boost电路为核心,ATmega16为主控制器,通过TL494产生高速PWM控制Boost电路,辅以DA、AD、键盘、液晶实现电压的测量以及控制,输入和显示,用DS1302、18B20实现时间和温度的实时显示。
系统结构框图如图2所示:
图2:
系统结构框图
1电路设计与参数计算
2.1Boost变换器的设计和各参量分析
Boost变换器的主电路拓扑如图1所示,为了减小Vs电源瞬间电流的要求,实际升压变压器,多数在输入处加上一个L1,C1组成的滤波器。
L1,C1的数值由
(1)、
(2)、(3)确定。
(1)
(2)
(3)
下面,结合系统的要求,就本作品中各主要器件的选择和参数计算进行详细阐述:
(1)输入输出参数的设计
根据系统设计,DC/DC转换器的输入电压范围确定为18V~32V,输出电压36V,设计输出电流范围0.5~2.5A,开关频率150KHz,纹波电流<0.2A,纹波电压<0.06V。
电路工作在连续电流模式。
(2)电感L参数的确定
首先计算占空比调节范围:
(4)
求得
=0.5,
=0.33
要求电感工作在连续电流模式,电感值需满足(5)式:
(5)
系统中L取68μH。
(3)电容C2参数的确定
为了使系统的纹波电压在设计允许的范围内,对电容值的最小要求由(6)式确定。
(6)
系统选用的电容C2容值为330μF,耐压值为60V。
(7)
(8)
其中,D1为最大占空比,本系统设计为0.5,下同。
(4)二极管D1参数的计算
(9)
(10)
另外,二极管D1需要承受较高的反向击穿电压和较快的开关速度,综合考虑,系统选择的二极管为SR500,反向击穿电压60V,最大承受电流150A,并且为肖特基二极管,开关速度完全满足要求。
2.2控制电路设计与参数选择
系统采用TL494产生PWM脉冲,输出脉冲通过控制MOSET驱动芯片IR2101驱动功率MOSETIFR3205。
TL494接成单端输出方式,两路驱动脉冲为同频同相。
系统通过单片机Atmaga16控制D/A芯片产生基准电压,接到TL494误差比较放大器1的反向输入端(2号脚),通过输出电压的电阻分压得到输出反馈信号接到TL494误差比较放大器1的同向输入端(1号脚),反馈信号和基准信号通过芯片内部的误差放大器进行比较放大,芯片自动调整输出信号的占空比,从而调节输出电压。
这样就组成了闭环单回路控制网络。
系统控制电路设计如附图Ⅰ所示。
2.3效率的分析及计算
在典型Boost电路的应用中,开关损耗主要集中在两种器件上:
一种是快恢复二极管的损耗,另一种是开关管的损耗。
其中快恢复二极管对整机的性能指标和可靠性影响比较大。
(1)快恢复二极管的损耗
快恢复二极管的损耗主要由三部分组成:
一部分是开通损耗PON,一部分是通态损耗PCON,另一部分是关断损耗POFF。
根据二极管的电压电流导通特性、正向电流和管压降特性和快恢复二极管关断特性,可以求得快恢复二极管的开通损耗PON、通态损耗PCON和关断损耗POFF。
可得出快恢复二极管的总开关损耗PD为:
(11)
式中fC为MOSET的开关频率(150KHz),ID(AV)是二极管电流的平均值,ID(RMS)为二极管电流的有效值,Kf为二极管反向恢复电流ID(RM)的温度系数,当二极管结温为100℃,Kf=1.1
(2)开关管的损耗
开关管的损耗由3个部分组成,开通损耗PON、通态损耗PCON和关断损耗POFF。
其一般的损耗表达式为:
(12)
式中:
IQ(RMS)—开关管的电流有效值;RQ—开关管在给定温度下的导通电阻;IL—电感L的电流,且IL=IIN;tfr—开关管开通上升时间;COSS—开关管的输出电容;U—开关管漏源之间变化的电压;UIN—开头管漏源之间的额定电压。
(3)计算结果与实际对比
实验测试时实际测得DC/DC模块在额定功率下的效率为87.46%(详见测试部分4.6),根据(11)式以及2.1确定的Boost转换器的参数,可以算出快恢复二极管的总损耗为:
=0.062+0.798+1.45=2.31W
根据(15)式,可以确定开关管的功率损耗为:
=0.66+1.82+2.21+1.37=6.06W
计算得到系统的效率
可见理论分析得到的效率与实际基本相符。
2.4保护电路设计与参数计算
系统通过采样电阻分压获取输出电压的当前值,通过A/D采样将电压值读到单片机中,通过采样电阻上的电压值计算得到输出回路的电流,当电流超过动作电流时,单片机向转换器开始端的继电器发出命令,断开整个转换回路,当电流减小后,程序控制继电器吸合,电路恢复工作。
这样,也可以通过程序方便的调整动作电流值(动作电流不能超过某阈值)。
另外,在输出回路串联2.5A的自恢复保险丝,做到过流保护的双保险。
(采样电路和保护电路如附图Ⅰ所示)
采样电阻选择0.1Ω、3W的康铜电阻丝,A/D采样选择AVR单片机内置10位A/D转换器。
2.5数字设定及显示电路的设计
数字设定通过4*4矩阵键盘设定,全中文菜单提示,操作简单,使用方便,稳定性好。
显示部分通过12864图形液晶实现,采用串行连接方式,仅占用两个IO口,所有设定的值实时显示到液晶上,AD采样结果通过中断方式及时刷新显示区域。
2.6实时时钟与温度的显示
本系统使用DS1302精确时钟芯片实现时间显示,通过DS18B20测温系统温度,用作电源温度过高报警。
2系统软件设计
由于系统的脉宽信号产生、反馈等都是通过TL494实现,单片机只是负责基准信号的产生和人机交互,因此软件流程比较简单,系统软件流程图请见附件二,主要源程序见附件三。
3测试方法与数据
4.1测试仪器及设备(见表1)
表1:
测试仪器及设备
仪器名称
型号
用途
数量
PC机
联想昭阳E260
调试程序
1
4位半数字万用表
山创DT9203L
检查电路、测量电压、电流
1
4位电感表
胜利VC6043
测量电感值
1
5位半数字万用表
UNI-TUT850
精确测量电压、电阻值
1
水泥电阻
100Ω,100W
作为负载使用
2
可调水泥电阻
0~100Ω,100W
作为负载使用
2
数字示波器(带宽60MHz)
TDS1002
观看波形、测量UOPP
1
调压变压器
TDGC2-0.5
变压
1
输出电压UO可调范围测试
用调压变压器将输入电压U2调至18VAC,将水泥电阻接到输出端,利用键盘设定电源的输出电压,利用4位半数字表的200V直流电压档测量输出电压,最小设定值为28V,最大设定值为36V,步进值为1V。
4.2输出电流和过流保护测试
将输出电压调节到36V,将数字万用表调至直流10A档,与可调水泥电阻串联后接入输出端,减小水泥电阻的阻值,这时观察到电流值上升。
测试表明,电流值可以达到2A。
继续减小电阻值,使电流值继续增加,当电流值达到2.53A时,继电器自动关断,这时,输出电压为0,液晶屏显示过流警告,并伴有声音报警信号,这时,通过系统的温度传感器测量到的MOSET管温度为43摄氏度,温度比正常时偏高。
当系统电流回归到安全值后,继电器吸合,系统自动恢复工作。
4.3电压调整率测试
用调压变压器将输入电压U2调至18VAC,将输出电压调节到36V,输出电流2A(通过负载电阻调节)测量输出电压,UO=36.03V;用调压变压器将输入电压U2调至15VAC,测量这时的输出电压值UO1=35.96V;用调压变压器将输入电压U2调至21VAC,测量这时的输出电压值UO1=36.07V。
这时计算SU=(36.07-35.96)/36=0.31%。
用同样的方式多次测量,求平均值,得到系统的平均电压调整率为0.27%。
4.4负载调整率测试
用调压变压器将输入电压U2调至18VAC,空载时将输出电压调节到36V,测量这时的输出电压UO1=36.02V;接入负载,使电源满负荷运行(输出电流2A),测量输出电压UO2=35.89V,这时,计算得到负载调整率S1=(36.02-35.86)/36.02=0.36%。
多次测量,求平均值。
得到系统的负载调整率为0.37%。
4.5效率测试
用调压变压器将输入电压U2调至18VAC,将输出电压UO调节到36V,然后在输出端连接可调水泥电阻。
测量输入端电压和输出端电压,测得UIN=22.3V,IIN=3.67A,测得UO=36.03V,IO=2.01A,根据=PO/PIN,计算得=88.49%。
同样的方法,将UO调至35V,测得效率=84.02%。
多次测量,求平均值,得到系统在36V-2A时的效率为87.46%。
4.6输入与显示测试
系统上电后,在液晶上显示中文菜单;按下按键1进入电压设定模式,液晶上显示出当前电源输出值,设定值为0;按数字键输入3、6、0,然后按确认,液晶显示设定值36.0V,输出38.9V;按下星号键,系统回到主界面。
4测试结果分析
经过反复的测试,系统在额定工作状态(36V,2A)时的效率大于87%,满足了题目的基本部分和发挥部分的要求;电压调整率的平均值为0.27%,满足了基本部分的要求,但离发挥部分还有差距;负载调整率平均值为0.37%,小于发挥部分的要求0.5%,达到了设计要求;另外,我们实现了题目中要求的输出电压的调整、电压电流显示、过流保护等功能,基本上实现了题目的设计要求。
系统使用DS1302和18B20实现了时间和温度的显示。
另外,我们开发了全中文操作菜单,进行全程的中文提示,对于过流保护状态,还添加了语音提示的功能,在电源的后部,我们还将电源通过USB接口与上位机连接,可以通过电脑控制电源的输出。
误差分析:
由于我们的电路全部由手工焊接而成,对于高频信号的屏蔽不是很理想。
另外,回路中起关键作用的电感也是通过手工绕制而成,虽然我们精心的进行了调试,但还是存在一定程度的偏差,并且有漏磁现象。
我们选择了频率不是太高的开关脉冲信号(150KHz),对于效率的进一步提高有一定的限制。
如果在时间允许的情况下进行PCB制版,对于信号线采取更有效的屏蔽,用更为专业的工具对电感进行绕制,我们的系统将会更加理想。
5参考文献
[1].王水平史俊杰田庆安.开关稳压电源——原理、设计及应用电路.西安电子科技大学出版社
[2].周志敏周纪海.开关电源实用技术设计与应用.人民邮电出版社
[3].张占松蔡宣三.开关电源的原理与设计(修订版).电子工业出版社
[4].梁远文李新张淳.大电流多输出开关稳压电源的研究.重庆大学
[5].吴争荣李晓明.单片机控制系统开关电源接地问题研究.武汉大学电气工程学院
[6].于军,翟玉文,孙陆梅.L494脉宽调制器集成电路的研究.吉林化工学院学报,第22卷,第三期.2005年6月
附件一:
系统各部分电路图
附图Ⅰ系统主电路图
附图Ⅱ单片机最小系统和12864电路图
附图Ⅲ矩阵键盘电路图
附件二:
软件流程图
附图Ⅳ软件流程图
附件三:
关键程序段
/********************************************************************************
**工程名称:
开关稳压电源设计
**功能描述:
采用Mega16做主控芯片,通过TL494和MAX538以及变压器和人机
接口实现多功能人性化开关稳压电源。
**硬件使用:
TL494,TL431A,DAC7512,矩阵键盘,Boost电路,12864液晶,DS1302,18B20
**软件模块:
初始化,定时,键盘,SPI,DAC7512,AD,LCD,DS1302,18B20
**说明:
如有硬件改动,直接修改*.h里的设置即可。
**注意:
连线时要仔细;系统采用了硬件SPI和片内AD转换,请保留好IO口。
**********************************************************************************/
voidmain(void)
{
uint8key=0;
init_devices();//参数初始化,包括IO口,SPI,键盘,液晶,DS1302,18B20,AD转换
goto_default_screen();//默认屏幕
DA_SPI_config_uint16(0x0FFF);//DAout5.00v
while
(1)
{
key=key_scan();
if(key!
=0){
if(state==0)//默认状态
{
if(key=='1')goto_V_mod();
elseif(key=='2')goto_I_mod();
elseif(key=='3')goto_TEMP_mod();
}
elseif(state==1)//电压设定模式
{
if(key=='A'){Vset++;update_V(Vset);}
elseif(key=='B'){Vset--;update_V(Vset);}
elseif((key>0x29)&&(key<0x40))Vset=(Vset%100)*10+key-0x30;
disp_insert_V_update(Vset);
if(key=='#')update_V(Vset);//将Vset中的值,更新到输出,并且更新设定值显示
if(key=='*')goto_default_screen();//返回
}
elseif(state==2)//电流设定模式
{
if(key=='A'){Iset++;update_I(Iset);}
elseif(key=='B'){Iset--;update_I(Iset);}
elseif((key>0x29)&&(key<0x40))Iset=(Iset%100)*10+key-0x30;
disp_insert_I_update(Iset);
if(key=='#')update_I(Iset);//将Iset中的值,更新到输出,并且更新设定值显示
if(key=='*')goto_default_screen();//返回
}
elseif(state==3)//温度时间显示
{
if(key=='*')goto_default_screen();//返回
if(key=='#')SET1302();//设置时间
}
}//endkey!
=0
if((AD_done==1)&&(state==1))//AD转换结束并且在电压模式下
{
AD_done_add++;
if(AD_done_add==100)//100次转换显示一次
{
update_V_get();//更新
AD_done_add=0;
}
AD_done=0;
}
if(state==3)
{
goto_TEMP_mod();//温度时间显示模式需要不断更新
delay_ms(50);
}
}//endwhile
(1)
}