【show】12V5A输出的三种拓扑,反激,正激,推挽!
本文延续了“【讨论】各位高手大师进来看看,此贴必火!”这个帖子,在那个帖子中讨论了方案,大家说出了自己对此设计的看法。首先,感谢chenyankun,老梁头,ta7698,rj44444,wanghaiting,xd285070,yueyunno1,zhenxiang,wangjiudan,
,singer2002各位大师的解答与建议。还有一位非常热心的哥哥,那就是那个“坑蒙拐骗”我的单片机的“”新月GG“”。其次,大家在讨论中,都提到了正激的效率会比反激的效率高,我也查了相关的资料,确实如此。但是由于在知道这个正激效率高的信息的时候,我已经向电源CBD区020徐大哥买了一款芯片,ME8202,这款芯片有许多的好处,讲究的办事,不能出尔反尔,所以,我打算先用反激做做看。并不是否定大家意见的意思。老实说,这是我们大学本科组的一个电子设计大赛的电源题目,我正在做,由于时间比较长,有一个月的时间,很充分,所以又一次决定先用反激做一下看看,效率会有多少。之后该方案,做个正激,两个比较着学习。第三,那就是为了我的《开关电源设计(第3版)》,干掉电源网80楼,感谢大家可以热心回复此帖子。先谢谢大家!
电源设计题目如下:
DC-DC开关稳压电源
一、任务
设计并制作如图1所示的开关稳压电源。
图1电源框图
二、要求
在电阻负载条件下,使电源满足下述要求:
1.基本要求
(1) 输出电压VO:12V;
(2) 额定输出电流ION:5A;
(3) Vin从DC41V变到DC57V时,电压调整率SU≤2%(IO=5A);
(4) IO从0变到5A时,负载调整率SI≤5%(Vin=48V);
(5) 输出噪声纹波电压峰-峰值VOPP≤1V(Vin=48V,VO=12V,IO=5A);
(6) DC-DC变换器的效率≥70%(Vin=48V,Vo=12V,IO=5A);
(7) 具有过流保护功能,动作电流IO(th)=6±0.2A;
2.发挥部分
(1) 进一步提高电压调整率,使SU≤0.5%(IO=5A);
(2) 进一步提高负载调整率,使SI≤1%(Vin=48V);
(3) 进一步提高效率,使≥85%(Vin=48V,UO=12V,IO=5A);
(4) 排除过流故障后,电源能自动恢复为正常状态;
(5) 具有输出电压、电流的测量和数字显示功能。
(6) 其他。
原理图已经画好如下。参数都已经设计完,由于是比赛的题目,所以此次设计并没有考虑成本和体积的要素,更加注重了效率,所以元器件选择的时候都比较贵一些,但是,一分钱一分货,确实有它的好处。同时还要感谢电源网这个平台,我一直都没注意到的一个页面就是Elecshop.com。这里面的好多元器件的选型,元器件的价格以及主参数都已经列出,可以买的不大头,也可以比较选择更加适合的元器件。TKS TO DIANYUANWANG.
由于买的mosfet和diode没有邮寄到,所以焊接过程要等两天,这些参数大家可以帮忙参考一下,有什么不足之处,大家一起讨论。谢谢大家
变压器采用了PQ5050,这个变压器个头确实好大,买的时候18元一个。听很多的前辈说,变压器大点对效率提高有好处,所以此次特别选择了大个的变压器,来试试是不是真的。
PQ5050:原边10匝4股0.67mm并饶
副边4匝20股0.67并饶
原边10匝4股0.67mm并饶
辅助绕组5匝0.33mm
采用三明治绕法,有效降低漏感。
个人感觉最好用丝包线 绞合线来绕 避免趋肤效应 丝包线?是漆包线么?就是多股线。
恩,多股并饶~不是多股并饶,是多股线。
我看来看去一直都是你自己在那里回复 写的不好,关注的人少,以后定加倍努力学习,写一些大家感兴趣的东西。谢谢兄弟! 期待你的大作,坐等图文并茂的讲解。 PQ5050反激能上200多W了,用于60W太奢了吧?恩,是的。我想验证一下是不是变压器体积大点,会不会提升效率,由于不是产品,就做一套而已,所以并没有考虑到体积和成本问题。谢谢你的指导
变压器的个头都比别人60W的电源大啦 是啊,嘿嘿 太浪费了。而且这个方案效率做不高。 恩,批评接受。做完这个方案在做正激试试 有没有这个说法呢?变压器个头大,综合损耗小? 铁损和铜损都会降低,这个好理解啊。。。。 哈哈,英雄所见略同,我的一个哥哥也是这么认为铜损降低是必然的,铁损我认为可不一定。我的观点是一定范围内,大点铁损会小。尺寸大了,可以取较小的Bm值,但是磁芯的重量也大了,相应也会增加铁损。
恩好的 自已動手,看到了多股紫銅線在針腳上散開,怎么不帶個套呢,又安全又好看! 恩,说的是,下次记得弄 用了这么大的变压器。。。楼主是土豪。。。。 哈哈 错了 土豪,60W用5050的 好棒~ 等待学习干货更新,由于在黑龙江,大部分电子元器件,比较优质的MOSFET,DIODE没有卖的,所以只能在网上买了MOSFET和DIODE,由于顺丰也不给力了,两天还没到(有可能是商家没发货),所以这两天抽出空来解决一下单片机显示问题,由于普通51单片机内部没有ADC功能,所以本次设计采用了STM8单片机,是STM32的前身,STM8内部自带ADC,不用外接ADC模块,比如ADC0832.Stm8内部有16个转换通道,10位的采样精度,所以基于此优点,本次选择此芯片。把进步向大家发出来:现在完成一路的采样,电压采样:
精度还可以,有1mV的误差,可以允许的。
下面把程序发出来让大家审核,有什么完善的地方我一定做到,希望大家给出宝贵意见。
/** ****************************************************************************** * @file Project/main.c * @author MCD Application Team * @version V2.0.0 * @date 25-February-2011 * @brief Main program body ****************************************************************************** * @attention * * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. * * <h2><center>© COPYRIGHT 2011 STMicroelectronics</center></h2> ****************************************************************************** */ /* Includes ------------------------------------------------------------------*/ #include "stm8s.h" /* Private defines -----------------------------------------------------------*/ unsigned char const shumaguan[] = {0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90}; //ADCValue数组存放A/D采样值,voltageADC为数字滤波后的结果 unsigned int ADCValue[20] = {0},voltageADC = 0; //voltage为电压计算结果,单位mV unsigned int voltage = 0; /* Private function prototypes -----------------------------------------------*/ void ADConvert(void); void DigitalFiltering(void); void Display(void); void Delay(unsigned int t); /* Private functions ---------------------------------------------------------*/ void main(void) { unsigned char i; //PG口数码管段选,PE口数码管位选 GPIO_Init(GPIOG,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST); GPIO_Init(GPIOE,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST); /*ADC2配置为: -连续转换模式 -通道0(PB0) -fADC = fmaster/2 -触发模式为定时器 -触发关 -数据右对齐 -选择通道0上的施密特触发器 -施密特触发器关*/ ADC2_Init(ADC2_CONVERSIONMODE_CONTINUOUS, ADC2_CHANNEL_0, ADC2_PRESSEL_FCPU_D2, ADC2_EXTTRIG_TIM, DISABLE, ADC2_ALIGN_RIGHT, ADC2_SCHMITTTRIG_CHANNEL0, DISABLE); /* Infinite loop */ while (1) { //连续转换20次 ADConvert(); //数字滤波 DigitalFiltering(); i = 200; while(i --) Display(); } } void ADConvert(void) { unsigned char count = 0; //连续转换 ADC2->CR1 |= 0x02; ADC2_StartConversion(); while(count < 20) { //等待转换结束 while(ADC2_GetFlagStatus() == RESET); //清除转换结束标志位 ADC2_ClearFlag(); ADCValue[count] = ADC2_GetConversionValue(); count++; } //关闭连续转换 ADC2->CR1 &= ~0X02; } void DigitalFiltering(void) { unsigned char i,j; unsigned int temp; //对数组排序 for(i = 20;i >= 1;i--) { for(j = 0;j<(i-1);j++) { if(ADCValue[j] > ADCValue[j+1]) { temp = ADCValue[j]; ADCValue[j] = ADCValue[j+1]; ADCValue[j+1] = temp; } } } //舍弃最大和最小的两个数,然后求平均值 voltageADC = 0; for(i = 2;i<=17;i++) voltageADC += ADCValue[i]; voltageADC /= 16; } void Display(void) { unsigned char displayArray[4],i; voltage = (unsigned int)((unsigned long)voltageADC * 3161UL / 1023UL); //拆分数据,使用数码管显示 displayArray[3] = voltage / 1000; displayArray[2] = (voltage % 1000) / 100; displayArray[1] = (voltage % 100) / 10; displayArray[0] = voltage % 10; //使用数码管显示电压值,单位mV for(i = 0;i < 4;i++) { GPIOG->ODR = shumaguan[displayArray[i]]; GPIOE->ODR = ~(0X01 << i); Delay(100); GPIOE->ODR = 0XFF; } } void Delay(unsigned int t) { while(t--); } #ifdef USE_FULL_ASSERT /** * @brief Reports the name of the source file and the source line number * where the assert_param error has occurred. * @param file: pointer to the source file name * @param line: assert_param error line source number * @retval : None */ void assert_failed(u8* file, u32 line) { /* User can add his own implementation to report the file name and line number, ex: printf("Wrong parameters value: file %s on line %drn", file, line) */ /* Infinite loop */ while (1) { } } #endif /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
不错 学习中! 嘿嘿,跟老师你学习~ 不错希望楼主早点把细节更新出来我们都学学! 大师你太低调了,嘿嘿 两路AD采样程序怎么写?求帮助,求指点 单片机正在学习中 。。 程序弄不懂啊。。 加油!一起努力 设备不错嘛 用的都是福禄克万用表 让你发现了 后生可畏呀 哥,好久不见啊,是你领我入门的吧
求助:现在空载已经稳定12V,但是变压器吱吱的响,MOSFET波形如下图,求大家帮忙解决。电路图已在2楼贴出,芯片采用ME8202,下面有资料。
ME8202应用指导.pdf ME8202__电压检测芯片.pdf 变压器吱吱的响,变压器你没滴502固定死,会响的 餿主意 不是馊主意,很好的提醒啊,能给与我帮助的人我都要感谢! 变压器没固定好?这个貌似不是真正的原因。
新的电路图,图中补偿电阻电容值怎么算啊?求大神给个RC值,本人功力太浅,看了好多书并没有什么成效。
希望好心大神给予帮助。
测试时,现在空载电压稳,变压器也不吱吱响,但是加到1A的时候,变压器响,改变不同RC的值时候,有些改变,所以感觉是RC值的影响。
整流桥呢。。 没有看到。 还有保险丝 滤波器 X电容 整流桥。都没有。。 注意题目,是DC-DC,当然不需要整流桥了 看看我这个帖子,有RC参数,你看下是否可以参考!! 谢谢 好吧。。没看清楚。。 哈哈,求解各位师傅 4个0。5R限流电阻调小点,应该可以 谢谢环路不稳
干嘛不用单片机直接驱动?
那样这个开关电源芯片也可以省了
而且还可以提高效率
单片机的时间、空间资源可能不够。
我用一款PIC16F883做太阳能MPPT充电和LED恒流驱动,程序空间只用了80%不到
你这纯粹做个输出还会怕空间不够
电流控制部分是用电流峰值采样做的。如果用单片机做,就要改电流控制方案了。
单片机做必须采样电压电流
这个是你程序处理问题
做个电流均值采样就够了
其实硬件电路没啥区别
是啊,要采用电流均值采样了,而不是峰值,就是要采用不同控制方案了。这样主电路传函也会有本质不同,因此环路补偿也会不同,也要重新设计了。主电路硬件电路自然没啥区别。
题目还是1贴的题目。
由于反激的环路补偿不是很顺利,先慢慢调试,打算在做一个推挽,比比效率和优化程度。原理图已经推出,大家看看给点意见有没有什么需要改进的参数?还有一个位置,就是TL431补偿的问题,图中没有画出,不知道这个参数怎么选取,感谢大神给个参数,说明下理由。小弟不胜感激~~
这个问题,用的半波整流,1N4148,给7812,能搞定么?
输入41-57VDC,输出12V,芯片的供电是个问题,打算用一个按键轻触一下触发,不知道这个方法可行不,或者说有更好的启动方法?
还有一个更棘手的问题是,输出6A的时候要过流保护,还要有自恢复的功能,求大家给意见,怎么做到。前提是不使用其他供电设备。
DC-DC变换器(含控制电路)只能由VN端口供电,不得另加辅助电源。
你的变压器最好得多加一个辅助供电的绕组,要不然有点麻烦,如果非隔离也能行,隔离又不加辅助绕组还是有点麻烦! 辅助绕组有了,给7812了,看58帖子我看了很多设计
如果是交流就有个变压器整流后给VCC供电
如果是直流就要设计个单独的VCC电源个PWM芯片供电,隔离或非隔离都有
还没看到过你这个样的用输出给输入供电
输入电容有错误,25V耐不住的。已经换掉 此法以证明不可行,由于输入工作是41-57V,所以12V的时候按键触发的话,不会有作用的,现在做反激辅助电源。 辉煌~你没有感谢我。。。。哈哈哈哈哈 加油 期待你也变成大师的那一天 哈哈哈 哈哈,你们友好而热心的客服当然是要感谢的了,谢谢好吃的,哈哈对我来说,旅长和师长都是大师。
我的推挽上电了,空载输出12V,稳稳地。但是一带负载,输出跌落。 PC817光耦1,2脚电压为0.02V,光耦信号没过去。为什么呢? 原理图在56帖 问题解决了,副边整流二极管有一端未接!!!马虎大意!实物图,输入48V,输出12V,5A。效率90%。还有什么可以提高效率的方法?
主要就是主电路的变压器,开关管上的损耗比较大。可以在这方面降功耗。
同步整流二极管 做課題同步整流才是.. 恩恩。 单独用个12V给VCC供电看看有效果没? 单独12V,反激吧、现在正在进行。辅助绕组反激供电
还是用回UC384X系列了。
是啊,新的芯片能力不足,搞不定啊。继续学习,慢慢探索有些疑惑,我设计的反激辅助电源输入和输出是共地的?
反激输入和推挽输入共地,推挽输入和SG3525共地,反激输出和SG3525共地,那么反激输出和反激输入共地。
想这么多做啥呀,隔离不就行了。
现在是输入输出不是隔离的 谢谢兄弟! 不错,80楼到了,把实测数据也分享一下! 谢谢。现在在寝室呢,实验室断电断水了,要不就把数据发出来了。现在是辅助电源单独用12V供电,推挽输出效率12V,5A时候,90.01%。辅助反激电源正在进行。断电了,烙铁带不起来了~ 输出二极管采用同步整流吧。。。效率上升两个点是有的。。。你这打个PCB的样也很简单呀
干嘛搞的这么累呀
谢谢啊,嘿嘿 图上的7812基本上无用了~做反激辅助电源反激已经做好,如图。
虽然已经做好,但是现在有些问题疑惑,希望各路大神来为小弟解答。
我的反激相当于是三路输出。第一路,给3843供电,用的7812,12V。第二路,主输出,12V给3525。第三路,用的TL431稳压,输出5V,给单片机供电。 第一个问题:两个12V是不是多余了?可不可以用输出的12V给主控芯片3843工作? 输入输出时公地的 自己解答一下不知道对不对~ 用输出给3843供电会存在起不来的现象 第二个问题:给3843供电用7812稳压么?不用可以么? 可以不用
第三个问题:TL431给单片机,能给力么?
不给力~ TL431给单片机供电有点力不从心,作为稳定的参考源还是不错的哦! 推挽主电路调试好,辅助电源也调试好,现在开始调试过流保护。由于输出要求6A的过流保护功能,所以采用LM358双运放加一个555定时器构成的单稳态触发器,来搭建所谓的打嗝电路。仿真图已经做好。 运放改成OP-07
推挽整机效率85.4%,输入电压48V,输入电流1.46A,输出电压11.97V,输出电流5A。
过流保护6A已经调好,随后将整体电路贴出来。
有一个问题,我的过流保护是用滑动变阻器调的,调的直蛋疼,不精准啊。有什么好的方法改进么?
输出时用一大堆小电阻并联,感觉是不是不太好,有什么好的建议么?
推挽原理图贴出来,大家帮忙看看有什么还可以改进的措施和方法?距离比赛还有16天了。
最主要就是提高效率。
空载12.04V
5A的时候12.01V。
怎么让5A的时候12.04?最新数据:输入48V,1.42A,输出12.02V,5A。
效率,88.175%
效率还能提高么? 顶一个,要做大神可要给指点啊 。。。我可不是什么大神~ 怎么我看来看去都是你一个人在回复 写的不好,关注的人少,以后定加倍努力学习,写一些大家感兴趣的东西。谢谢兄弟! 反激失败了,推挽还算不错,整机最后的效率能达到88%多。又做了个正激
原理图已经上传,调试完毕。
效率85.6%不太高,不太好,没有推挽好。其中也遇到了许多的问题,例如我设计的是连续模式,没有加斜率补偿,加上斜率补偿就稳定多了!
此走线图是没有加粗原边副边的。感觉为啥正激效率不高啊,我看他们有做反激,效率达到86%,我的才85.6%。表示压力好大啊。我的还有没加保护呢。也没有显示。 好贴,得顶! 支持
输出肖特基太差了。。。
换超低压降20A60V的。DIODES的。。。
谢谢谢谢,非常感谢!肖特基的缺点是什么啊?主要是二极管有个0.5~0.6的导通压降。。。。对效率影响很大。。。
如果要高效率。同步整流上要下工夫。。。
是的,同步整流不错。超低压降20A60V的。DIODES的压降大概多少V?
军长给推荐几种超低的DIODE,谢谢
肖特基上的反压多少?
常用的:
SBR40U45CT(40A45V)
SBR40U60CT(40A60V)
SBR40U100CT(40A100V)
你应该对成本不要求,就上最好的,估计可以提高3%的效率。。。。
谢谢,讲究!是的,不要求成本控制 SBR10U60CT手里有这个 想法不错,不知道效率如何,期待楼主拿正激做一个 正激做完了啊,132帖子里面有你需要的东西 大作,顶一个!!! 看帖回帖好习惯