在实际操作中,通常根据实际的需求参数,使用列方程的形式来求解PI控制器的参数的设计,这样才能使得设计的参数更加准确。

方程是根据波特图来进行列写,既要保证系统的稳定,又不能偏差太大。

根据波特图中的幅频曲线和相频曲线,结合幅值裕度和相角裕度列写方程。

        看波特图来确定系统的稳定性,需要看它的相角裕度和幅频裕度:

同前面记录10 电路设计及小信号分析得到的结果类似,首先得到系统的波特图:

仿真电路建立及分析参数设置,参见记录8

仿真电路如下图:

上面的电路进行小信号分析仿真,得到仿真结果,如下:

现在我们就根据得到的伯德图,设计PI闭环控制器:

开始进行设计:

首先我们将PLECS仿真电路的小信号分析结果的数据导出来,以便放在Mathematica中进行分析和计算:

仿真结果如下:

调出光标,将光标卡在我们关注的频率范围内:

然后将光标范围内的数据导出并进行并保存:

将导出后的数据导入到mathematica中,进行分析:

以上使用的时记录10的截图,方法是一样的。。。。

将数据导入mathematica中后,使用插值函数,构建幅频amp、相频phase函数:

设计PI闭环控制器的目标参数就是确定环路增益的穿越频率fc,穿越频率fc指的是增益的幅频特性穿越0DB对应的频率值,按照徐德宏电力电子建模的书上描述,穿越频率fc应当设置在开关变换器开关频率的1/10处左右,这样比较合适。

回到仿真电路中,电路中开关频率设置为10kHz,所以穿越频率fc应该设置在1000Hz附近,观察仿真电路的小信号分析模型仿真结果,

当穿越频率设置在1000Hz时,对应的相角为-169,相角裕度比较小,不太合适

因此我们需要把穿越频率设置的低一点,设置在600Hz处时,对应的相角-153°,相角裕度较大,比较合适

在此,我们将穿越频率fc定在600Hz,然后可以在mathematica中进行计算:

计算kp和ki的值:

该kp和ki对应值下,绘制出的幅频特性曲线如下:

相频特性曲线如下:

可以看到,在相频特性曲线中,穿越频率为600Hz

将计算出的kp和ki值,带入到电路中进行验证:

为Kp和Ki赋值:

进行仿真:

完整电路如下图:

现在我们再来看系统的小信号分析结果得到的波特图:

 

穿越频率fc选择的更小也是合适的,因为,随着穿越频率fc的减小,相角也在减小,相角裕度在增加,即使PI控制器能把相角拉低,但是裕度足够大,所以系统依然是趋于稳定的:

在此我们假设穿越频率设置为100Hz,再次仿真看一下结果:

 

设置fc=100Hz,在mathematica中重新计算kp和ki的值:

 

对于第二个方程,即:

对应的是PI控制器的幅频特性的转折点,这个点乘以10,相当于还是把0相角与fc重叠,这是没有必要的,因为在100Hz处,对应的相角为-5°,即使加上PI调节器的全部-90°,依然小于-180°,还有裕度,系统仍然是稳定的,

这里改成0.1,就相当于把PI的相角是-90°那一段放在穿越频率处,系统仍然稳定,所以第二个方程写为:

 

然后计算kp和ki的值:

 

将该值带入到仿真电路中:

 

运行仿真:将两个不同的kp和ki放在一起进行比较:

可以看到不同的仿真结果:

 

 

 

两个电路结果不同的原因是因为穿越频率不同,,穿越频率为600Hz的,系统更快的趋于稳定,穿越频率越高,系统的响应越快

因此在PI设计过程中,穿越频率尽量的设计高一点。当然穿越频率也是有限制的,就是不要超过开关频率的1/10.

总结:

计算PI控制器的Kp和Ki的方法总结(在Plecs中):

1、首先在Plecs绘制被控对象的电路图,然后使用小信号分析工具,得到被控对象的Bode图;

2、将Bode图中有用的数据导出,保存到excel中,另存为.csv文件。

3、将.csv文件导入到mathematica中进行处理。

4、在mathematica中将数据进行拟合,使用Interpolation[]函数,得到幅频特性曲线函数、相频特性曲线函数。

5、确定系统的穿越频率fc,该fc要≤开关频率的的1/10;

6、确定穿越频率后,列两个方程,计算Kp和Ki

方程如下:

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐