世纪电源网社区logo
社区
Datasheet
标题
返回顶部
未解决

移相全桥DC-DC电路,输出电压振荡

[复制链接]
查看: 12054 |回复: 16
1
wb547443498
  • 积分:300
  • |
  • 主题:2
  • |
  • 帖子:18
积分:300
LV4
初级工程师
  • 2019-7-5 14:27:30
100问答币

各位前辈,小弟是一名研二学生,现在在做移相全桥DC-DC实验时,遇到了问题,自己琢磨了很久,没能解决,特来此地求助给位前辈,希望给位前辈能为小弟指点迷津

双有源桥直流变换器双向功率流电路拓扑,如图1所示。由一个高频变压器T、电感L(包括变压器的漏感)、变压器两侧的有源全桥、输入电压源U1输出电压源U2支撑电容C1C2构成。可以根据变换器两边能量的需求关系来控制传输功率的大小和方向。
变换器工作在正向功率流时:每组桥臂的上下开关管互补导通(理想情况下忽略死区),原边全桥的对角开关管之间存在一个移相占空D1S4上升沿比S1上升沿滞后D1Ths,其中Ths为半个开关周期。副边全桥的对角开关管之间没有移相,每组对角线导通180°两个全桥之前存在移相占空D2S5上升沿比S1上升沿滞后D2Ths


二、PCB
QQ图片20190705141057.png

QQ图片20190705141123.png
1、原理图
图片4.png
2、实物图
图片5.png

图片6.png
三、主要器件参数
开关管(八个管子一样):
碳化硅管C3M0065090D  COSS =60PFtrr=30nsIrrm=7.5A   
变压器:
磁芯:铁氧体PM62/49,变比:1:1.8,原边自感:2mH,原边漏感:1.5uH,副边自感:800uH,副边漏感:500nH
电感:
L=150uHR=0.244
隔直电容:
Cgb1:CBB电容,容值为6.8u
Cgb2:CBB电容,由两个电容并联,6.85u并联10u16.85u
支撑电容:
电解电容:C1=C2=470u
开关频率及死区:
频率为50kHz,死区时间为200ns
指标:
输入电压:400VDC,输出电压:200VDC

四、实验波形
  整个实验过程采用风冷,器件温度正常。
  1、未上电时的驱动波形,从上到下依次是S1~S4,S5~S8和某一个开关的上升下降时间,可以看出驱动正常,没有波动,桥臂死区存在,开关上升和下降正常。
图片7.png

图片8.png

图片9.png

2、上电时(此时输出电压为205V,功率为1.6kW)的驱动波形,从上到下依次是S1~S4,S5~S8,电感电压VL,变压器原边中点电压VAB,变压器副边中点电压VCD。可以看出驱动在各个开关切换点出现震荡,各电压也在开关切换点出现震荡。


图片10.png

图片11.png

图片12.png


其震动点波形依次展开如下,发现震荡主要出现在开关切换点的死区内。


图片13.png

图片14.png

图片15.png



其电压应力如下,分别是S1~S4其应力大小基本正确,除了振荡点外。


图片16.png

该图从上到下依次是输入电压,输出电压,后面两个是驱动,可以看出,输出电压和输入电压都有振荡。


图片17.png

共有两种振荡,这是输出电压第一种振荡的展开,发现其振荡频率约为26MHz,不过展开另一种小的振荡并没有发现有规律的振荡频率。


图片18.png

下图是单个周期的展开和细节展开,前三个图从上到下依次是S1~S4,S5,S6,输出电压,输入电压,电感电压和电感电流。后三个图是S5关断,S6开通时刻的展开。可以发现,振荡就发生在死区之间  

图片19.png

图片20.png

图片21.png


图片22.png

图片23.png

图片24.png


五、尝试解决问题
1、怀疑输出和输入电解电容容值太小,在输出和输入电容上又并联了三个同样型号的电解电容,发现并没有解决这个问题。
2、怀疑输出和输入电解电容内阻太大,在输出和输入电容上又并联了一个10uCBB电容,发现并没有解决这个问题。
3、怀疑管子DS电容太小,同时在八个管子的DS端并联0.47n的高压电容,发现震荡的幅值略有减小,但效果并不满意,整个电路的效率下降了0.5%。还是觉得DS电容太小,重新并联4.7n的高压电容,效果还是不好。
4、怀疑隔直电容与漏感震荡,将隔直电容全部短路,发现没有效果,反而电感电流产生了很小的直流偏移。
5、怀疑是PCB布板太差,但不知道如何解决
下图是使用CLC录波器后的波形。

图片25.png

图片26.png

图片27.png


可以看出,采用CLC滤波后,输出电压振荡变小(大概只有7V左右的振荡),但是电感电压并没有变化,且效率降低了,其原因是,电解电容在50KHz时,容性太差,在开关切换时,寄生电感上由于产生电压振荡,电容后面接了LC后,振荡电压部分降落在电感上,因此输出电压振荡会减小。


ailuer_shijidianyuan
  • 积分:7859
  • |
  • 主题:20
  • |
  • 帖子:939
积分:7859
LV8
副总工程师
  • 2019-7-6 10:11:11
 
那是开关节点的震荡传出来的,震荡是由寄生电感和寄生电容引起的,这是不可避免的,只能是尽量的减小,输入输出母线距离管子较靠近的地方增加高频电容看看

评分

参与人数 121币 +5收起理由
世纪电源网-恬恬 + 5

查看全部评分

wb547443498
  • 积分:300
  • |
  • 主题:2
  • |
  • 帖子:18
积分:300
LV4
初级工程师
  • 2019-7-6 13:01:59
 
谢谢您的建议,我正打算将两端的电容靠近管子一些,另外我想问一下,用铜皮绕制的变压器是不是寄生电容比铜线绕制的变压器的寄生电容要大一些?
ailuer_shijidianyuan
  • 积分:7859
  • |
  • 主题:20
  • |
  • 帖子:939
积分:7859
LV8
副总工程师
  • 2019-7-8 09:06:30
  • 倒数10
 
是的,而且在同样的匝数和同样的截面积下,铜皮的温升高于铜线
宋小祥
  • 积分:121
  • |
  • 主题:1
  • |
  • 帖子:4
积分:121
LV2
本网技师
  • 2019-7-7 10:33:21
 
学长好,我在做单移相的时候也遇到过,直流母线加电容会好一些。我现在遇到的问题是DSP28335移相输出的驱动对不上,单移相好使,双移相就不好使了,下面附上程序,师兄帮看一眼可以么。
void InitEPwm1Example()
{
   // Setup TBCLK
   EPwm1Regs.TBPRD = 3000;           // Set timer period
   EPwm1Regs.TBPHS.half.TBPHS = 0; // Set Phase register to zero
   EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN; // Symmetrical mode
   EPwm1Regs.TBCTL.bit.PHSEN = TB_DISABLE; // Master module
   EPwm1Regs.TBCTL.bit.PRDLD = TB_SHADOW;
   EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN; // Sync down-stream module
   EPwm1Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
   EPwm1Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
   EPwm1Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; // load on CTR=Zero
   EPwm1Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO; // load on CTR=Zero
   EPwm1Regs.AQCTLA.bit.CAU = AQ_SET; // set actions for EPWM1A
   EPwm1Regs.AQCTLA.bit.CAD = AQ_CLEAR;
   EPwm1Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE; // enable Dead-band module
   EPwm1Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;      // Active Hi complementary
   EPwm1Regs.DBFED = 300;
   EPwm1Regs.DBRED = 300;
   // Interrupt where we will change the Compare Values
   EPwm1Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;     // Select INT on Zero event
   EPwm1Regs.ETSEL.bit.INTEN = 1;                // Enable INT
   EPwm1Regs.ETPS.bit.INTPRD = ET_1ST;           // Generate INT on 1st event
}
void InitEPwm2Example()
{
   EPwm2Regs.TBPRD = 3000;           // Set timer period
   EPwm2Regs.TBPHS.half.TBPHS = 800; // Phase = 300/900 * 360 = 120 deg
   EPwm2Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN; // Symmetrical mode
   EPwm2Regs.TBCTL.bit.PHSEN = TB_ENABLE; // Slave module
   EPwm2Regs.TBCTL.bit.PHSDIR = TB_UP; // Count DOWN on sync (=120 deg)
   EPwm2Regs.TBCTL.bit.PRDLD = TB_SHADOW;
   EPwm2Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN; // sync flow-through
   EPwm2Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
   EPwm2Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
   EPwm2Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; // load on CTR=Zero
   EPwm2Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO; // load on CTR=Zero
   EPwm2Regs.AQCTLA.bit.CAU = AQ_SET; // set actions for EPWM2A
   EPwm2Regs.AQCTLA.bit.CAD = AQ_CLEAR;
   EPwm2Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE; // enable Dead-band module
   EPwm2Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC; // Active Hi Complementary
   EPwm2Regs.DBFED = 300;
   EPwm2Regs.DBRED = 300;
   // Interrupt where we will change the Compare Values
   EPwm2Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;        // Select INT on Zero event
   EPwm2Regs.ETSEL.bit.INTEN = 1;                   // Enable INT
   EPwm2Regs.ETPS.bit.INTPRD = ET_1ST;              // Generate INT on 1st event
}
void InitEPwm3Example(void)
{
   // Setup TBCLK
   EPwm3Regs.TBPRD = 3000;           // Set timer period
   EPwm3Regs.TBPHS.half.TBPHS = 300; // Phase = 300/900 * 360 = 120 deg
   EPwm3Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN; // Symmetrical mode
   EPwm3Regs.TBCTL.bit.PHSEN = TB_DISABLE; // Slave module
   EPwm2Regs.TBCTL.bit.PHSDIR = TB_UP; // Count UP on sync (=240 deg)
   EPwm3Regs.TBCTL.bit.PRDLD = TB_SHADOW;
   EPwm3Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN; // sync flow-through
   EPwm3Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
   EPwm3Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
   EPwm3Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; // load on CTR=Zero
   EPwm3Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO; // load on CTR=Zero
   EPwm3Regs.AQCTLA.bit.CAU = AQ_SET; // set actions for EPWM3Ai
   EPwm3Regs.AQCTLA.bit.CAD = AQ_CLEAR;
   EPwm3Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE; // enable Dead-band module
   EPwm3Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC; // Active Hi complementary
   EPwm3Regs.DBFED = 300;
   EPwm3Regs.DBRED = 300;
   // Interrupt where we will change the Compare Values
   EPwm3Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;     // Select INT on Zero event
   EPwm3Regs.ETSEL.bit.INTEN = 1;                // Enable INT
   EPwm3Regs.ETPS.bit.INTPRD = ET_1ST;           // Generate INT on 1st event
}

wb547443498
  • 积分:300
  • |
  • 主题:2
  • |
  • 帖子:18
积分:300
LV4
初级工程师
  • 2019-7-7 12:56:15
 
对不上?   是移相角度对不上吗? 还是驱动的顺序对不上
宋小祥
  • 积分:121
  • |
  • 主题:1
  • |
  • 帖子:4
积分:121
LV2
本网技师
  • 2019-7-7 22:01:49
 
哥,你是怎么消除尖峰电压的啊
双移相电压电流.png
伟林电源
  • 积分:24167
  • |
  • 主题:199
  • |
  • 帖子:8435
积分:24167
版主
  • 2019-7-8 07:19:45
 
加吸收电路抑制尖峰,
宋小祥
  • 积分:121
  • |
  • 主题:1
  • |
  • 帖子:4
积分:121
LV2
本网技师
  • 2019-7-8 17:50:38
  • 倒数9
 
单移相正常,双移相的时候原边电压有个跌落,为了找出问题,不加变压器输出电压正常,加了传输电感与变压器,并且变压器副边什么都不加,原边输出测会有跌落。请问是什么原因呢?
0975a7f47f48a2e9a86773e2f7e2ef1.jpg
835423706
  • 积分:245
  • |
  • 主题:2
  • |
  • 帖子:33
积分:245
LV3
助理工程师
  • 2019-7-13 21:54:51
  • 倒数8
 
这个不影响功能是没什么问题的。
Russell
  • 积分:304
  • |
  • 主题:2
  • |
  • 帖子:6
积分:304
LV4
初级工程师
  • 2020-7-2 13:58:59
  • 倒数7
 
楼主你好,我最近也正在做DAB,也遇到了你说的问题:驱动波形在开关点振荡。不知道如何解决
请问你的问题解决了吗?
wb547443498
  • 积分:300
  • |
  • 主题:2
  • |
  • 帖子:18
积分:300
LV4
初级工程师
  • 2020-7-28 08:25:44
  • 倒数6
 
使用高频特性更好的电容,比如CBB;开关管的走线和电容尽量靠近
zhaodan201607js
  • 积分:435
  • |
  • 主题:1
  • |
  • 帖子:23
积分:435
LV6
高级工程师
  • 2021-1-15 15:59:35
  • 倒数5
 
请教一下,用DSP能够实现100kHz开关频率的移相全桥?
YTDFWANGWEI
  • 积分:109774
  • |
  • 主题:142
  • |
  • 帖子:45909
积分:109774
版主
  • 2021-1-15 17:19:41
  • 倒数4
 
好像大把的电源都是吧?
zhaodan201607js
  • 积分:435
  • |
  • 主题:1
  • |
  • 帖子:23
积分:435
LV6
高级工程师
  • 2021-1-19 09:27:20
  • 倒数3
 
嗯,应该不是吧,我看输出PWM的是IC芯片DSP可能是实现采样、监控、CAN通讯之类,我想用DSP实现PI控制 输出100kHz 频率PWM

YTDFWANGWEI
  • 积分:109774
  • |
  • 主题:142
  • |
  • 帖子:45909
积分:109774
版主
  • 2021-1-20 07:57:11
  • 倒数2
 
那你看到的是假的数字电源,如果是这样的话,就没必要用DSP,一个简单的单片机就搞定了。
doule123
  • 积分:1334
  • |
  • 主题:2
  • |
  • 帖子:23
积分:1334
LV6
高级工程师
最新回复
  • 2023-9-25 11:01:45
  • 倒数1
 
你好 EPS的内移相d1和外移相d2怎么闭环比较好哈 希望指点一下或者文献参考一下也可以哈
热门技术、经典电源设计资源推荐

世纪电源网总部

地 址:天津市南开区黄河道大通大厦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号