世纪电源网社区logo
社区
Datasheet
标题
返回顶部
原创 【你还不知道吗】第九期·技术经验分享原创大赛开始啦!

基于STM32的推挽升压电源设计

[复制链接]
查看: 5804 |回复: 29
1
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-5 17:29:54
  本人是一名刚毕业的本科生,刚步入社会的菜鸟,偶然间看到此次活动,想趁此平台总结分享一下毕业设计,当然此电源设计仅仅只是作品,并不是公司做的项目所以在很多方面都存在不足的地方,希在此平台得到各位工程师大佬的建议以及指正!

  设计出基于STM32的推挽升压电源,要求其系统性能指标具体如下:
1、   输入直流电压12-18V,输出电压为48-60V可调,输出电流1A;
2、   电压纹波<3%
3、   负载调整率<1%;
4、   有显示功能 输出电压、电流。误差不超过1%;
5、   具有1.2A过流保护功能;
6、   效率不得低于85%。

  先上一张实物图如下所示,
其部分功能测试如下所示:

  
  其整体设计方案主要由 STM32主控电路、DC-DC推挽升压主电路、UCC27424驱动电路、TPS54231稳压电路、INA193电流检测电路、OLED显示电路等部分组成。

  一、DC-DC推挽升压主电路设计为推挽逆变与全桥整流形式的拓扑电路。其原理图如下所示
  对于推挽电路的工作原理此处就不做详细的描述。主要关键的就是两个开光管不能同时导通,每个开关管各自的占空比不能超过50%,且还要留有死区。对于开关管的PWM控制此次设计是由STM32做数字处理器发出脉冲再做后续的相关信号处理,这将会在之后的STM32主控电路中再做详述。此处先提出之前在设计主电路中所遇到的疑难问题。
  1、当初设计方案时也是疑问重重,对于整流电路的考虑选取,当输出电压较低、输出电流较大时,通常为了减小整流电路的通态损耗,一般采用全波整流;而此次设计输出电压较高、输出电流较小,考虑到全波整流电路对二极管耐压要求较高,且变压器次级端绕组有中心抽头给制造带来麻烦。因此本设计采用全桥整流电路,以降低整流管的电压定额,同时简化变压器绕组结构,利于变压器绕制与小型化,虽会带来整流电路的功耗增加,但由于输出电流小,所增加的功耗对整机效率应该不会造成太大的影响。

  2、 说到变压器的绕制与小型化考虑,对于高频变压器的设计也是此设计的关键之处。对于磁芯结构选取考虑的因数主要有降低漏磁和漏感、增加线圈散热面积、线圈绕线容易、装配接线方便等。之前做其他电源设计用过EE系列的磁芯,其适用范围广、工作频率高、工作电压范围宽、输出功率大,而此次设计选用PQ系列的磁芯,相对EE型,PQ型磁芯的设计优化了磁芯体积、优化了表面积与绕线面积之间的比率,使得用最小的磁芯能提供最大的电感量和最大化的绕制面积,此外PQ型磁芯还具有损耗小、温升低、屏蔽效果强、抗干扰性能好等优点。根据设计要求经一系列计算出:因变压器原边有中心抽头故绕组匝数为2*2=4匝,原边绕线选取0.1x50股的丝包线;副边绕组匝数为15匝,副边绕线选取0.1x160股的丝包线。绕制完成后测试相关数据如下所示:

  
收藏收藏6
埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-8 08:57:24
 
赞!
弄点波形看看~
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-8 21:25:26
 
驱动波形吗?之前找寻了很久有关STM32输出任意相位差波形配置,后来经指导老师指点,生成了适用于推挽电路的PWM,其PWM如下图所示:

wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-8 21:37:09
 
之前调试驱动波形的时候也遇到过异常,不知什么原因造成了波形的振荡还是什么问题,波形如下所示:
还望大佬帮忙解答下疑惑

埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-9 08:35:56
 
驱动波形有毛刺很正常,主要跟layout相关。
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-9 22:02:04
 
  应该确实和pcb走线布局有莫大的关系,当初做毕设的时候时间有些急促,对PCB Layout也没有太深入的考究,所以没考虑有些干扰或是其他的问题因素,下图是驱动部分的pcb图,选用的是TI的双端低侧栅极功率驱动器UCC27424,还望前辈帮忙分析指正下有关pcb不足的地方!

舒行科
  • 积分:3482
  • |
  • 主题:17
  • |
  • 帖子:536
积分:3482
LV8
副总工程师
  • 2018-8-9 16:34:30
 
振荡有点明显哦,可以加一些去除振荡的电路,看看波形效果图。
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-9 22:08:00
 
  之前有查阅过相关的问题,有相关解答说增大驱动电阻,增大阻尼可以减弱振荡,最初取的10欧的驱动电阻,后来改为20欧,波形好像略有优化,不过也仍有振荡。其波形如下所示:

  前辈所说的去除振荡的电路具体有哪些方案电路呢?可以详细说明讲解一下吗?
舒行科
  • 积分:3482
  • |
  • 主题:17
  • |
  • 帖子:536
积分:3482
LV8
副总工程师
  • 2018-8-9 16:35:12
 
你这是有两路波形信号吧?
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-9 22:10:40
 
  对,是两路波形,就是推挽电路中两个MOS管的驱动波形,两路波形频率幅值相同,只是相差180°相位,且波形占空比是同步变化的
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-8 22:00:41
 
  二、STM32主控制电路


  STM32主控作为数字处理控制器,由主控发出两路带死区的同步相位差为180°的互补PWM给DC-DC推挽主电路,再通过INA193检测模块进行AD采样,将其信号反馈给主控处理,主控根据反馈信号对PWM信号做出相应的调整以实现可调稳压输出,同时将相关信息数据显示在液晶屏幕上并实时同步更新。当输出检测电流超过最大阈值时将停止整个电路的工作从而实现过流保护。这种方案实现起来较为灵活,虽然对于系统的调试相对比较复杂但可以通过调试针对本身系统做出配套的优化。


  1、对于数字处理控制器的选择,选用STM32F103C8T6,对于此设计中IO口功能的应用绰绰有余,而且考虑当初毕业设计的经费也在情理之中。况且STM32F103x8系列同样有高性能的ARM® Cortex™-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。对于设计的功能应用,简化其最小系统原理图及PCB图如下图所示:


  2、对于整个控制电路的设计程序思路已简单阐述,其程序主流程图如下所示:




埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-9 08:38:10
 
构成电压闭环了,环路带宽多大?这个PI参数是试凑出来的还是经过详细建模然后数学手段推导出来的?
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-9 22:16:00
 
  前辈说的是模拟PI运放里的环路带宽吗?很惭愧我对这块并不是很了解,而且对于反馈控制系统也只知皮毛罢了。设计的这个推挽电源确实是构成电压闭环了,只不过是STM32的数字PI调节的,当初程序里面的PI参数也是试凑出来的,至于具体的参数也是在学长他们之前调试的经验基础上做修改调整的,没有经过详细的建模推断。对于环路带宽和环路稳定性这一类问题还要向前辈多多请教才是,还望不吝赐教。
埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-10 09:29:34
 
一起学习
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-10 23:21:06
 
  对于整个主程序框架还是简单明了,只是当初对于PWM发生源的设计思考确实折腾了许久,所以此处对于PWM发生源的控制设计作一些自己的看法和总结,如有不对和需改进的地方,希各位大佬多多建议指正!
  用过STM32的都知道,用它的定时器可以很容易实现PWM输出,使用高级定时器的TIMx_CHy和TIMx_CHyN也可以轻易实现互补PWM波形的输出。
  当初误以为推挽和半桥电路的工作模式类似,想着直接用一高级定时器就可以实现一路带死区的互补PWM,然而对于此推挽电路,用高级定时器产生的两路互补带死区的PWM信号不能满足此电路应用的需求(两路互补属于一个通道),因为对于推挽电路,除了两个开关管不能同时导通之外,每个开关管各自的占空比不能超过50%。所以能让此推挽电路正常运行工作的PWM波形必须是同步相位差为180°的互补PWM,然后要考虑用STM32定时器的两个通道产生了。
  后来参照SG3525和TL494的驱动波形,再查阅相关输出任意相位差的波形配置程序,仔细搜罗最终确定了两种发案可以实现,这两种方式具有异曲同工之妙但也有各自的不同。相同之处在于同采用定时器计数的中央对齐模式,不同就在于输出选择的模式和极性不同。最后STM32生成的波形仿真如下图所示:


  其相关定时器配置如下:
1)配置定时器的计数器为中间对齐计数,即先向上计数再向下计数。
2)在该定时器上选择2个通道,并分别配置为输出不同的PWM模式,或配置不同的输出极性
3)配置自动重装载寄存器TIMx_ARR为要求输出频率的一半。
4)假定CC1为第一个输出信号的通道,再假定第一个信号的正脉冲宽度对应为Duty,则配置TIMx_CCR1为Duty。
5) 同4),假定CC2为第二个输出信号的通道,则正脉冲宽度对应配置TIMx_CCR2为TIMx_ARR - Duty。

  此设计我要产生频率为50khz,初始占空比为20%的两路PWM信号,则配置相关计算如下:
  TIMx_ARR=72Mhz/50khz/2=720;
  TIMx_CCR1=720*0.2=144;
  TIMx_CCR2=720-720*0.2=576;
  其部分配置如下图所示:




wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 13:06:34
 
  对于整个主程序框架还是简单明了,只是当初对于PWM发生源的设计思考确实折腾了许久,所以此处对于PWM发生源的控制设计作一些自己的看法和总结,如有不对和需改进的地方,希各位大佬多多建议指导!
  用过STM32的都知道,用它的定时器可以很容易实现PWM输出,使用高级定时器的TIMx_CHy和TIMx_CHyN也可以轻易实现互补PWM波形的输出。
  当初差些误以为推挽和半桥电路的工作模式类似,想着直接用一高级定时器就可以实现一路带死区的互补PWM,然而对于此推挽电路,用高级定时器产生的两路互补带死区的PWM信号不能满足此电路应用的需求(两路互补属于一个通道),因为对于推挽电路,除了两个开关管不能同时导通之外,每个开关管各自的占空比不能超过50%。所以能让此推挽电路正常运行工作的PWM波形必须是同步相位差为180°的互补PWM,然后要考虑用STM32定时器的两个通道产生PWM了。后来参照SG3525和TL494的波形,再查阅相关输出任意相位差的波形配置程序,仔细搜罗最终确定了两种发案可以实现,这两种方式具有异曲同工之妙但也有各自的不同。相同之处在于同采用定时器计数的中央对齐模式,不同就在于输出选择的模式不同(对TIM_CCMRX寄存器中OCXM位进行配置)。最后STM32生成的波形仿真如下图所示:



程序相关定时器配置如下:
1)配置定时器的计数器为中间对齐计数,即先向上计数再向下计数。
2)在该定时器上选择2个通道,并分别配置为输出不同的PWM模式,或配置不同的输出极性
3)配置自动重装载寄存器TIMx_ARR为要求输出频率的一半。
4)假定CC1为第一个输出信号的通道,再假定第一个信号的正脉冲宽度对应为Duty,则配置TIMx_CCR1为Duty。
5) 同4),假定CC2为第二个输出信号的通道,则正脉冲宽度对应配置TIMx_CCR2为TIMx_ARR-Duty。

此设计我要产生频率为50khz,初始占空比为20%的两路PWM信号,则配置相关计算如下:TIMx_ARR=72Mhz/50khz/2=720;
TIMx_CCR1=720*0.2=144;TIMx_CCR2=720-720*0.2=576;
其定时器部分参数配置如下图所示:





埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-12 20:52:39
  • 倒数8
 
我记得当时做某个逆变器,后级用的是STC12C5608AD,当时为了调出一个互补的50%占空比100Hz方波(全桥驱动),摆弄了两天PCA模块,还没调出来。。最后还是调两个定时器互相关断才搞定的,哈哈哈
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-14 20:25:46
  • 倒数5
 
之前只简单用过传统的51哈哈,没有用过增强型的,记得传统51定时器好像没有PWM功能的
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-14 20:28:55
  • 倒数4
 
前辈做的是单相全桥逆变吗?逆变好像不是需要SPWM调制吗?还是我哪里理解有误,哈哈,还望前辈详尽说明一下
埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-14 21:44:48
  • 倒数3
 
我一开始想做SPWM的,上网随便找了一个单对角桥臂调制的程序,出来的波形效果不好,索性做修正波的逆变器了。
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-14 22:32:28
  • 倒数2
 
逆变这类之前有过一点了解,但不是很清楚修正波,想问下前辈,修正波相对于纯正弦波,它的应用范围和优势在哪些方面啊?还有就是逆变出来的修正波它的相关性能参数如何,例如THD一般能控制在什么范围呢?
埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
最新回复
  • 2018-8-15 08:18:12
  • 倒数1
 

唯一的优势就是简单,其他全是劣势。

wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 16:02:19
 
三、反馈控制回路的设计
  此反馈回路的设计主要是对推挽电源输入端及输出端的电压和电流进行采样并反馈至主控STM32,主控再根据反馈信号对PWM信号做出相应的调整以实现可调稳压输出。
  对输入和输出电压的采集都直接采用电阻分压的方式,后级再加上电压跟随器。
  电压跟随器一般作用是进行电路的阻抗匹配变换,电压跟随器的输入阻抗大,输出阻抗小。在STM32进行AD采样转换前加上电压跟随器即是降低前级电路的输出阻抗(即前级内阻),如此前级可有效驱动的负载能力越大,ADC即是一负载,ADC采样的电压更接近理想值。其输入电压采样电路如下所示:

  对输出电流的采集选用TI公司INA19x系列的电流感应功率/电流监控器。INA19x系列是电压输出分流监测计,能够在-16V至+80V范围内的共模电压下感测分流器两端的压降。通过一个外部检测电阻器两端的压降来监视单向电流,这使得INA193能够起一个高压侧电流检测监视器的作用。
  INA93芯片外接一个50毫欧的采样电阻,通过检测此电阻两端的电压压降经芯片内部放大信号反馈给主控,其提供输出电压级别为G=20V/V,与INA193电源电压无关。其输出反馈电压计算公式为 。当额定输出1A时,反馈电压为 ,即转换比例为1V/A。其应用电路如下图所示:



wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 17:46:39
  • 倒数10
 
  对于TI的INA193芯片,作为电流监控器,对其检测的电流与对应电压的线性转换是比较关注的数据,其部分测试如下图所示;

可见其线性度转换较良好
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 16:41:01
 
四、辅助电源设计
  一般开关电源都要需有辅助电源,辅助电源为控制、保护等显示电路提供能量。开关电源的启动,首先应启动辅助电源,且辅助电源的输出功率是消耗掉的,不参与能量传输,其直接影响开关电源的转换效率。因此,要求辅助电源启动可靠,效率高,控制容易且成本低。
  此设计中辅助电源是为STM32F103C8T6主控、UCC27424驱动及INA193电流测控单元提供稳定的工作电压,其中为主控提供+5V电压,为驱动及电流测控模块提供+10V电压。此次辅助电源设计采用开关式降压稳压转换器,根据电路相关应用参数,选取TI公司的非隔离式DC-DC开关降压型稳压芯片TPS54231。其芯片固定开关频率为570KHz,宽输入电压范围为3.5-28V,最大输出连续电流为2A。之前也刚学习了TI的WEBENCH软件,故正好用此软件做初步的设计,其相关的部分参数如下图所示:

  图中+5V与+10V稳压设计电路结构相同,包括使能电路、补偿电路等,唯一不同的就是输出电感与输出分压电阻的取值不同。
  此芯片内部的基准电压为 Vref=0.8V,其稳压输出电压为Vo=Vref*(1+Rfbt/Rfbb) 。

  再根据实际参数作了部分相关的调整修改,完善其辅助电源pcb图如下图所示:

  其次对此辅助电源做初步的测试,其数据如下所示

  数据表明其开关降压型稳压的工作效率良好,开关功率损耗基本不影响主电路整体运行,作为辅助电源其性能足够可以对驱动电路、电流测控电路以及主控电路提供稳定的工作电压。


wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 17:16:51
 
  对辅助电源空载运行时的测试如下所示:


wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 17:37:49
 
五、测试方案与数据分析  根据整个设计系统的可靠性、稳定性以及安全性,列出以下测试方案:  1.        测试电流测控电路相关性能指标;
  2.        测试辅助电源稳压电路相关性能指标;
  3.        测试主变压器相关性能指标;
  4.        测试主电路相关性能指标。

  此前已添加上部分的测试图和测试数据,重复的就不再啰嗦,最后再总结分析下整个主电路的相关测试数据。

1.转换效率的测试
  分别测试主电路在输入电压分别为+12V、+15V、+18V,输出电流在1A的工作状态,其效率均大于85%,工作效率均满足性能指标。其相关数据如下所示:

2.负载调整率的测试
  分别测试主电路在输入电压分别为+12V、+15V、+18V,输出电流在1A以及0.8A的工作状态,其负载调整率均小于1%,其相关数据如下所示:

3.OLED显示误差的测试
  分别测试主电路在输入电压分别为+12V、+15V、+18V,输出电流在1A的工作状态,其液晶的显示误差均小于1%,其相关数据如下所示:

4.纹波电压的测试
  分别测试主电路在输入电压分别为+12V、+15V、+18V,输出电流在1A的工作状态,采用数字示波器在耦合交流、带宽限制20M、探头10x的测试条件下,其主电路输出纹波电压与输出电压比均小于输出电压的3%,均满足性能指标。其相关数据如下所示:

纹波电压波形测试如下图所示:





wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-11 18:01:17
  • 倒数9
 
  之前在测试运行正常工作状态下,对温度进行过测试,有发现变压器和整流二极管处温度较高,其温度测试如下所示:
  不知是否是变压器损耗过大还是有其他的影响因素所致,还有对应变压器其温升散热等问题有什么有效的解决方案,还望各位前辈指点迷津!

埃_维_针1
  • 积分:8783
  • |
  • 主题:13
  • |
  • 帖子:548
积分:8783
LV8
副总工程师
  • 2018-8-12 20:54:53
  • 倒数7
 
44°C不高了,一般这个温度都可以做到89%的效率了。
wks123
  • wks123
  • 离线
  • LV3
  • 助理工程师
  • 积分:275
  • |
  • 主题:0
  • |
  • 帖子:25
积分:275
LV3
助理工程师
  • 2018-8-14 20:19:58
  • 倒数6
 
那可能是我做的这个变压器太low了哈哈,效率也才刚刚85%左右,之前在想会不会是变压器偏磁的问题,可是设计的时候没有预留引脚,后来想测下变压器电流波形没法测才是尴尬了
热门技术、经典电源设计资源推荐

世纪电源网总部

地 址:天津市南开区黄河道大通大厦8层

电 话:400-022-5587

传 真:(022)27690960

邮 编:300110

E-mail:21dy#21dianyuan.com(#换成@)

世纪电源网分部

广 东:(0755)82437996 /(138 2356 2357)

北 京:(010)69525295 /(15901552591)

上 海:(021)24200688 /(13585599008)

香 港:HK(852)92121212

China(86)15220029145

网站简介 | 网站帮助 | 意见反馈 | 联系我们 | 广告服务 | 法律声明 | 友情链接 | 清除Cookie | 小黑屋 | 不良信息举报 | 网站举报

Copyright 2008-2024 21dianyuan.com All Rights Reserved    备案许可证号为:津ICP备10002348号-2   津公网安备 12010402000296号