首页/文章/ 详情

Boost 变换器 PI参数设计举例

1年前浏览6369
简介
小编想给大家介一个用于simulink中调PI参数的工具,即PID Tuner。好多人问我PID参数都是咋调的,我还能咋调,我也是瞎调的呗。但哥这次要说的这个工具箱,有时候可能会对你调PI参数管点用,但貌似直接用在电力相关的模型中不太好使,But,whatever...
说明
使用PID Tuner可以对Simulink模型中的PID控制器,离散PID控制器,两自由度PID控制器,两自由度离散PID控制器进行调参,实现控制性能和健壮性的良好平衡。在使用PID Tuner的时候,它会自动做一些工作:

自动计算被控装置的线性模型。PID Tuner会将PID控制块输入和输出之 间所有Simulink块的组合看作为一个被控装置,因此被控装置将会包括控制环中所有块体,不仅仅是控制器本身。
       自动给出一个经过控制性能和鲁棒性(健壮性)平衡的初始PID控制设计。这个过程基于经过线性化的被控装置模型的开环频率响应特性。
       提供交互性工具和响应曲线来帮助设计满足要求的PID控制系统。

模块使用

正常我们既可以通过matlab APP找到它的位置,也可以通过PID Controller模块直接使用。

工具箱位置

通过PID Controller模块打开工具箱

PID Tuner 的设计流程

为更加方便地说明该工具最常用的使用流程,本次以一个matlab自带的最简单的例子来进行举例说明。
(1)打开demo模型,在matlab 命令窗口输入 open_system('scdspeedctrlpidblock')

模型打开

(2)打开模型并运行当前默认PI参数下模型,如下,从仿真波形我们可以判定,PI参数可能还有进一步优化的空间。

整体模型

模型对应仿真结果

(3)双击点开PI模块,模块可设置参数如下图所示

PID模块属性设置界面

其中标出的数字:1可以设置调节器的类型;2可以选择调节器是连续还是离散模式;3可以设置PID两种不同的表达式(具体如下图所示);4处可以对PID进行一些设置,比如初始值、复位条件、输出限幅等;5处为具体PID参数数值。


两种不同表示方式对应的数学公式

(4)调整PID参数,在已经打开的模块属性最下方,选择合适的调整校验方法,大部情况下选第一个基于传递函数的方法即可,然后点击后边的Tune按钮。

基于传递函数的设计方法

(5)弹出界面如下,根据需求通过下图中1位置添加对应的观测曲线,拖动2处调节按钮,参考下边plot曲线,调整合适的参数,通过3处显示或自动更新调整后的参数。

参数调整及曲线显示界面

(6)运行更新后的模型,并再次查看仿真结果通过改后的结果可以看出明显比改前的波形好。

更新后PI参数及仿真结果

本次主要通过matlab自带的一个demo演示PID模块参数的一个整定方法,个人觉得在某些模型上使用起来还是挺方便的,对模型调试有一定的帮助。

说明

PI或PID参数整定是一个经常困扰我们的问题,之前小编介绍过通过PID Tuner工具调整参数,另外我们还可以通过System Identification工具箱(MATLAB系统辨识工具箱 System Identification),将复杂系统等效成传递函数,再结合PID Tuner加速参数的设计。本次作者介绍通过PID Tuner的IO 数据来设计PID参数,因为很多模型,当我们通过PID controller点开设计工具时,界面是如下图所示的,我们无法通过拖动参数条来调节参数。


PID Tuner界面


针对上图所示的情况,我们应该如何调继续调整PI参数是一个问题。通过小编的研究,可通过I/O数据的方式进行调整,鉴于作者水平有限,请大家择优品鉴,随时交流。
应用举例
本次以一个相对比较简单的boost电路进行举例说明调节参数的方法及步骤。整体模型如下图所示,boost电路输入直流电压Vin=30V,电感L=0.1mH,电容C=100uf,负载为50Ω的纯电阻,开关频率10kHZ,控制采用直流电压控制,给定电压参考值开始为60V,0.5s后变为80V,采用PI控制器,在默认PI参数下,仿真结果见下图右侧。


boost电路及默认PI参数仿真结果


操作步骤
上述结果很明显PI参数是不合理的,我们可以通过以下步骤对PI参数进行重新设计。
(1)通过PID Controller模块打开PID Tuner工具箱;


打开PID Tuner界面

(2)识别系统:在打开的PID Tuner界面Plant 下拉菜单中选择Identify new  plant,如下图所示;

识别系统


(3)获取I/O数据:在新打开的PLANT IDENTIFICATION界面Get I/O Data下拉菜单中选择Simulate Data选项;


获取I/O数据

(4)设置系统输入:在新打开的SIMULATION I/O DATA界面设置相应的输入参数;


设置输入参数

5)依次进行下图1,2,3操作过程;

显示输入及误差等情况


(6)设置极点个数:上述(5)过程完成后,点击Close,回到PLANT IDENTIFICATION界面,并选择极点情况,此处我们先选择Underdamped Pair,后续我们再选一次Two Real Poles进行一下两种情况的对比。不同的选择对应的传递函数形式可以参考该设置项的右侧公式;



配置极点情况


(7)自动生成传递函数:依次点击Auto Estimate和Apply,这样界面左边就会自动更新跟踪参考曲线;

生成传递函数

(8)调整参数:回到PID Tuner界面,拖动参数调节条,整定参数,合适后,点击Update Block自动更新模型中的PI参数;

参数调整

(9)运行模型:PI参数更新完毕后,我们可以运行模型,观测控制结果,如果结果与你预期有差别,可以再次调整,更新,直至达到满意的结果,也可以在步骤(6)中选择其他的极点配置设置,对比不同情况的结果,选择比较好的参数。

仿真结果


步骤(6)选择Two Real Poles选项


选择Two Real Poles选项仿真结果



本次介绍了一种设计PI参数的方法,个人认为对于相对简单的系统或电路相对较为实用对于复杂多PI的系统,还有待进一步研究实践。

说明:本文来源网络;文中观点仅供分享交流,不代表本公 众 号立场,转载请注明出处,如涉及版权等问题,请您告知,我们将及时处理。

来源:电力电子技术与新能源
System燃料电池电源电路汽车电力电子MATLAB新能源Simulink电机太阳能控制Plant
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-05-20
最近编辑:1年前
获赞 155粉丝 267文章 2068课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈