• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

探讨开关电源PID控制及参数设置

  在设计环路补偿时,如果不清楚被控电路的模型或者没有bode图的话一般可以采用PID法来补偿。用仿真验证了一下,PID补偿法确实可以很方便的实现补偿不过存在几个疑惑。

1PID补偿只是满足了稳定和动态响应,其它特性不能清晰的显现出来。

2PID中的微分项D好像并不适合开关电源控制。

3PI可以用于部分开关电源控制不过性能达不到最佳。

全部回复(60)
正序查看
倒序查看
yuyuyu5
LV.8
2
2018-07-10 09:03
沙发,,,,,,,,,,,,
0
回复
2018-07-10 18:32

以峰值电流模式的反激为例,基本参数:输入最低电压100V,初级电感1mH,输出12V/2A,输出电容6000uF,开关频率60kHz

第一步,将比例P调成1:1,观察电源上电启动波形。

                               图1-1 只有比例P且P=1时的启动波形

0
回复
2018-07-10 18:45
@boy59
以峰值电流模式的反激为例,基本参数:输入最低电压100V,初级电感1mH,输出12V/2A,输出电容6000uF,开关频率60kHz。第一步,将比例P调成1:1,观察电源上电启动波形。[图片]                图1-1只有比例P且P=1时的启动波形

第二步,增加积分项,从大到小调节积分电容,当出现欠阻尼震荡即可。

                              图1-2 功率级电路穿越频率判断

测量欠阻尼震荡的周期,此时的震荡频率约等于功率级电路的穿越频率。

0
回复
2018-07-10 19:04
@boy59
第二步,增加积分项,从大到小调节积分电容,当出现欠阻尼震荡即可。[图片]                图1-2功率级电路穿越频率判断测量欠阻尼震荡的周期,此时的震荡频率约等于功率级电路的穿越频率。
跟贴学习
0
回复
2018-07-10 19:07
@boy59
第二步,增加积分项,从大到小调节积分电容,当出现欠阻尼震荡即可。[图片]                图1-2功率级电路穿越频率判断测量欠阻尼震荡的周期,此时的震荡频率约等于功率级电路的穿越频率。

第三步,上一步推测的功率级电路穿越频率约为1000/1.8999=526Hz,最终的目标穿越频率设为8Khz,此时调制比例系数P=8000/526=15(斜率有可能是-1-2的组合所以P的取值范围15~30)。重复上述第二步调积分电容使震荡波形达到满意状态为止。

                                  图1-3 最终的启动波形

0
回复
2018-07-10 19:09
@boy59
第三步,上一步推测的功率级电路穿越频率约为1000/1.8999=526Hz,最终的目标穿越频率设为8Khz,此时调制比例系数P=8000/526=15(斜率有可能是-1和-2的组合所以P的取值范围15~30)。重复上述第二步调积分电容使震荡波形达到满意状态为止。[图片]                  图1-3最终的启动波形

如果有必要可以继续调小积分电容来验证穿越频率是否在8Khz附近。

                                    图1-4 穿越频率8Khz

0
回复
brsys
LV.7
8
2018-07-10 19:10
@boy59
第二步,增加积分项,从大到小调节积分电容,当出现欠阻尼震荡即可。[图片]                图1-2功率级电路穿越频率判断测量欠阻尼震荡的周期,此时的震荡频率约等于功率级电路的穿越频率。

这个要看看。

0
回复
2018-07-12 15:10
@boy59
如果有必要可以继续调小积分电容来验证穿越频率是否在8Khz附近。[图片]                   图1-4穿越频率8Khz
分享不错,赞一个。
0
回复
2018-07-12 15:59
好东西
0
回复
2018-07-19 22:04

TypeⅡ型要比PI补偿多出一个高频极点,多出的这个极点可以衰减高频噪声比如开关噪声,见下图

                                                  2-1 PITypeⅡ对比

PI补偿中由于没有高频衰减补偿电路的输出Vcont=Vo*R2/R1所以比例PR2/R1)不能设置的过高,TypeⅡ型则不用考虑这个问题可以更灵活些,当取高频极点无穷远时TypeⅡ型就等同于PI补偿。

0
回复
2018-07-19 22:24
@boy59
TypeⅡ型要比PI补偿多出一个高频极点,多出的这个极点可以衰减高频噪声比如开关噪声,见下图[图片]                          图2-1PI与TypeⅡ对比PI补偿中由于没有高频衰减补偿电路的输出Vcont=△Vo*R2/R1所以比例P(R2/R1)不能设置的过高,TypeⅡ型则不用考虑这个问题可以更灵活些,当取高频极点无穷远时TypeⅡ型就等同于PI补偿。

PID补偿虽然能提供+90度的相位补偿但其会放大高频噪声,所以这种补偿只适用于大惯性(双极点)没有高频噪声的场合。在数字开关电源控制中用的比较多的是PI型还有2P2ZTypeⅡ)和3P3ZTypeⅢ)等。

0
回复
seawalker
LV.3
13
2018-07-20 17:05
@boy59
PID补偿虽然能提供+90度的相位补偿但其会放大高频噪声,所以这种补偿只适用于大惯性(双极点)没有高频噪声的场合。在数字开关电源控制中用的比较多的是PI型还有2P2Z(TypeⅡ)和3P3Z(TypeⅢ)等。
不错,来支持学习
0
回复
zhang0326
LV.1
14
2018-07-20 21:27
来占个位置,跟版主大人学习一下
0
回复
jsapin
LV.5
15
2018-07-21 08:22
@zhang0326
[图片]来占个位置,跟版主大人学习一下
感谢楼主的无私分享!PI调节一直不懂,请问比例积分设定时,开关电源的开关频率和功率级的穿越频率,以及开关电源的输出电容大小和负载特性之间相互有什么关系,怎样进行PI参数的预计算?
0
回复
2018-07-22 09:28
@jsapin
感谢楼主的无私分享!PI调节一直不懂,请问比例积分设定时,开关电源的开关频率和功率级的穿越频率,以及开关电源的输出电容大小和负载特性之间相互有什么关系,怎样进行PI参数的预计算?

穿越频率一般要低于1/5开关频率。如果是带光耦隔离的反激,考虑光耦有个8~10KHz的极点反激有个几十KHz的右半平面零点所以穿越频率一个不高于8KHz(穿越频率越低越容易补偿)。

输出电容可以看纹波,如果输出纹波是100mV那么比例P最好在10倍以内。

0
回复
jsapin
LV.5
17
2018-07-22 17:17
@boy59
穿越频率一般要低于1/5开关频率。如果是带光耦隔离的反激,考虑光耦有个8~10KHz的极点反激有个几十KHz的右半平面零点所以穿越频率一个不高于8KHz(穿越频率越低越容易补偿)。输出电容可以看纹波,如果输出纹波是100mV那么比例P最好在10倍以内。
感谢大师,
0
回复
2018-07-23 11:16

采用上面的方法想要得到最佳参数并不太容易,所以最好还是要找出功率级电路的bode图。

在不使用环路分析仪的前提下尝试采用一种特殊的环路补偿电路来反算功率级bode图的方法。

0
回复
2018-07-23 11:28
@boy59
采用上面的方法想要得到最佳参数并不太容易,所以最好还是要找出功率级电路的bode图。在不使用环路分析仪的前提下尝试采用一种特殊的环路补偿电路来反算功率级bode图的方法。

根据之前的实验现象,当电路发生震荡或者欠阻尼震荡时可以通过震荡周期和次数来判断出当前的穿越频率和相位余量,通过不断调整穿越频率点并结合当前已知的补偿参数就可以推算出功率级电路的bode图。

在实际电路中有很多情况下相位余量是大于90度的甚至接近180度(电流模式的反激),想让电路在宽频率范围内都发生震荡或欠阻尼震荡显然不太容易,所以设想一个补偿环节可以使相位从0-180度之间任意变化而增益恒为1

0
回复
2018-07-23 12:30
@boy59
根据之前的实验现象,当电路发生震荡或者欠阻尼震荡时可以通过震荡周期和次数来判断出当前的穿越频率和相位余量,通过不断调整穿越频率点并结合当前已知的补偿参数就可以推算出功率级电路的bode图。在实际电路中有很多情况下相位余量是大于90度的甚至接近180度(电流模式的反激),想让电路在宽频率范围内都发生震荡或欠阻尼震荡显然不太容易,所以设想一个补偿环节可以使相位从0到-180度之间任意变化而增益恒为1。

右半平面零点后的增益是逆时针旋转,左半平面极点后的增益是顺时针旋转,二者的相位都滞后0-90度,如果右零点、左极点重合则可以实现增益恒定而相位0-180变化的目的,见下图:

                          2-1 右半平面零点和左半平面极点重合bode

如图2-1,可以任意改变频率fpz从而调整环路的相位余量而不影响环路的增益曲线(穿越频率不变),可以任意改变比例P从而调整环路的增益(改变穿越频率)而不影响环路的相位曲线。这样实现了相位和增益的分离使调试变的容易了。

0
回复
2018-07-23 13:39
@boy59
右半平面零点后的增益是逆时针旋转,左半平面极点后的增益是顺时针旋转,二者的相位都滞后0-90度,如果右零点、左极点重合则可以实现增益恒定而相位0-180变化的目的,见下图:[图片]              图2-1右半平面零点和左半平面极点重合bode图如图2-1,可以任意改变频率fpz从而调整环路的相位余量而不影响环路的增益曲线(穿越频率不变),可以任意改变比例P从而调整环路的增益(改变穿越频率)而不影响环路的相位曲线。这样实现了相位和增益的分离使调试变的容易了。
0
回复
2018-07-23 14:03
@boy59
右半平面零点后的增益是逆时针旋转,左半平面极点后的增益是顺时针旋转,二者的相位都滞后0-90度,如果右零点、左极点重合则可以实现增益恒定而相位0-180变化的目的,见下图:[图片]              图2-1右半平面零点和左半平面极点重合bode图如图2-1,可以任意改变频率fpz从而调整环路的相位余量而不影响环路的增益曲线(穿越频率不变),可以任意改变比例P从而调整环路的增益(改变穿越频率)而不影响环路的相位曲线。这样实现了相位和增益的分离使调试变的容易了。

图2-1还存在两个问题,

1、开关电源的输出带有开关噪声,如果比例比较大则PWM发生器会饱和既发生大信号现象。

2、BoostBuck-boost(反激)类的电路都存在右半平面零点,如果增益比较大则增益曲线不会过零(在开关频率内),意味着穿越频率将高于开关频率。

                       2-2 右半平面零点限制了增益的提高

鉴于这两个问题额外增加一个固定的高频极点环节,这个高频极点可取开关频率的1/10或者低于功率级电路的右半平面零点。

 

                        2-3 100-100kHz震荡bode

如图2-3总的开环bode图频率从100Hz-100kHz电路都可以发生震荡具备了反相推导功率级bode图的条件。

0
回复
2018-07-23 14:04
@电源网-fqd
[图片]

0
回复
2018-07-25 07:20
@boy59
图2-1还存在两个问题,1、开关电源的输出带有开关噪声,如果比例比较大则PWM发生器会饱和既发生大信号现象。2、Boost或Buck-boost(反激)类的电路都存在右半平面零点,如果增益比较大则增益曲线不会过零(在开关频率内),意味着穿越频率将高于开关频率。[图片]                       图2-2右半平面零点限制了增益的提高鉴于这两个问题额外增加一个固定的高频极点环节,这个高频极点可取开关频率的1/10或者低于功率级电路的右半平面零点。[图片]                         图2-3100-100kHz震荡bode图如图2-3总的开环bode图频率从100Hz-100kHz电路都可以发生震荡具备了反相推导功率级bode图的条件。

Saber软件对上述推论进行验证,在验证过程中发现当高增益时单个高频极点虑不掉开关噪声所以需要设置双重极点(双重极点20kHz,开关频率60kHz,右半平面零点30kHz),仿真和计算的结果对比如下:

                                                  2-4-1 1kHz震荡

                                                 2-4-2 10kHz震荡

0
回复
2018-07-27 23:10
@boy59
用Saber软件对上述推论进行验证,在验证过程中发现当高增益时单个高频极点虑不掉开关噪声所以需要设置双重极点(双重极点20kHz,开关频率60kHz,右半平面零点30kHz),仿真和计算的结果对比如下:[图片]                          图2-4-11kHz震荡[图片]                         图2-4-210kHz震荡

用这种方法反推功率级bode图的结果如下:

 

                     2-4-3 反推反激bode图及同理论bode图对比

如图2-4-3这种反推法增益偏差不大,相位上临界和阻尼状态会有几十度的偏差。

0
回复
2018-07-29 14:02
@boy59
用这种方法反推功率级bode图的结果如下:[图片]                      图2-4-3反推反激bode图及同理论bode图对比如图2-4-3这种反推法增益偏差不大,相位上临界和阻尼状态会有几十度的偏差。

在图2-4-3中低频段由于发生了次谐波震荡导致出现较大偏差,当给电路加入斜坡补偿后偏差可以消除。

用压控震荡VCO作为控制器来搭建LLC电路如下:


                                      2-5-1 VCO控制的LLC电路

输入:400V,匝比n=1Lr=72uHLm=216uHCr=35nF,输出电容Co=100uFESR=0.5,输出电压200V输出负载Ro=138欧姆。压控振荡器VCO的频率变化范围40kHz-160kHz

同样用上述电路来反推LLC得到的bode如下:

                                                2-5-2 LLC功率级电路bode

0
回复
2018-07-29 14:14
@boy59
在图2-4-3中低频段由于发生了次谐波震荡导致出现较大偏差,当给电路加入斜坡补偿后偏差可以消除。用压控震荡VCO作为控制器来搭建LLC电路如下:[图片]                    图2-5-1VCO控制的LLC电路输入:400V,匝比n=1,Lr=72uH,Lm=216uH,Cr=35nF,输出电容Co=100uF,ESR=0.5,输出电压200V,输出负载Ro=138欧姆。压控振荡器VCO的频率变化范围40kHz-160kHz。同样用上述电路来反推LLC得到的bode如下:[图片]                         图2-5-2LLC功率级电路bode图

2-5-2反推的bode图是否准确?由于没有LLC电路的小信号模型就直接采用tdsa扫频来获得bode图并进行对比如下:

                           2-5-3 LLC电路两种方法获得的bode图对比

2-5-3的对比显示对于LLC电路反推法一样适用。

0
回复
2018-07-29 20:46
@boy59
图2-5-2反推的bode图是否准确?由于没有LLC电路的小信号模型就直接采用tdsa扫频来获得bode图并进行对比如下:[图片]               图2-5-3LLC电路两种方法获得的bode图对比图2-5-3的对比显示对于LLC电路反推法一样适用。

有了功率级bode图后剩下的补偿就容易实现了,采用图解法设置目标穿越频率20kHz相位余量45度得出的Type Ⅲ型补偿电路各参数如下:

R1=19.4kHzR2=423R3=830C1=13nFC2=306nFC3=6.386nF

动态波形仿真结果如下:

                           2-5-4 LLC动态波形(20kHz穿越频率,45度相位余量)

2-5-4LLC输出动态波形及局部放大图,在刚上电时为大信号状态环路未起作用,后面当环路起作用后负载的动态特性较理想(负载138-1380欧姆0.01mS突变)。

0
回复
EDSTRNDDF
LV.4
29
2018-08-01 10:50
学习了
0
回复
2018-08-01 12:32
@boy59
有了功率级bode图后剩下的补偿就容易实现了,采用图解法设置目标穿越频率20kHz相位余量45度得出的TypeⅢ型补偿电路各参数如下:R1=19.4kHz,R2=423,R3=830,C1=13nF,C2=306nF,C3=6.386nF。动态波形仿真结果如下:[图片]              图2-5-4LLC动态波形(20kHz穿越频率,45度相位余量)图2-5-4为LLC输出动态波形及局部放大图,在刚上电时为大信号状态环路未起作用,后面当环路起作用后负载的动态特性较理想(负载138-1380欧姆0.01mS突变)。
反推bode图法在实际电路中操作起来是很方便的,首先将特殊的比例+右零点、左极点+固定高频极点的补偿电路接入电路形成闭环,具体操作步骤如下:
1、预先设置一个比例P(比如P=0.1)
2、将右零点、左极点从高频向低频调节(调节双联电容),直到输出电压出现持续震荡为止(欠阻尼震荡也可,但需额外0-30度的相位补偿)
3、记录下当前输出的震荡频率,由比例P和电容大小可算出补偿电路的增益|G|和相位θ,可以得出功率级电路的增益为1/|G|、相位-180-θ。
4、改变比例P(相当于改变穿越频率),重复步骤2、步骤3,直到将目标频段的bode图的趋势都描绘出来
0
回复
2018-08-04 16:55

数字PID是通过AD采样输出电压再经过芯片的逻辑运算来实现的,在Saber软件中没用过MCU类的芯片如果纯粹用分立逻辑电路来搭电路会过于庞大,这里采用模拟运算器来模拟数字信号的处理,电路如下:

                                                3-1 数字PI电路

上图采用的是位置式PI算法,从右至左分别是提取变量u,模拟AD采样过程的“量化”处理,累加实现积分及乘法器实现的比例运算,最后是P+I合成。

0
回复