主要内容

多工作点的PID控制器设计族

这个例子展示了如何在Simulink®中为一个非线性装置设计一组PID控制器,该装置运行在广泛的操作点上。金宝app

开放工厂模式

该装置是一个连续搅拌槽式反应器(CSTR),在广泛的操作点上运行。单个PID控制器可以有效地利用冷却液温度在PID控制器设计的小工作范围内调节输出浓度。然而,由于被控对象是一个强非线性系统,当工作点发生显著变化时,控制性能会下降。闭环系统甚至会变得不稳定。

打开CSTR工厂模型。

mdl =“scdcstrctrlplant”;open_system (mdl)

有关此系统的更多信息,请参阅[1]。

增益调度简介

解决非线性控制问题的常见方法是使用线性控制器使用增益调度。一般来说,设计增益调度控制系统需要四个步骤。

  1. 获取每个操作区域的工厂模型。通常的做法是将装置在几个平衡工作点上线性化。

  2. 设计一系列线性控制器,例如PID控制器,用于上一步中获得的工厂模型。

  3. 实现调度机制,使得基于调度变量的值改变诸如PID增益的控制器系数。控制器之间的平滑(无浮丧和)转移是最小化对工厂操作的干扰。

  4. 用仿真评估控制性能。

有关增益调度的更多信息,请参阅[2]。

此示例侧重于设计非线性CSTR工厂的PID控制器系列。

获得多工作点的线性植物模型

输出集中C用于识别不同的操作区域。CSTR装置可以在低转化率(C=9.)和高转换率(C=2).在本例中,将操作范围划分为8个区域C=2通过9.

指定操作区域。

C = [2 3 4 5 6 7 8 9];

创建默认操作点规范数组。

op = operspec(mdl,numel(c));

通过指定输出浓度是已知值并指定输出浓度值来初始化操作点规范。

为了ct = 1:numel(c)op(ct).outputs.known = true;OP(CT).outputs.y = C(CT);结尾

计算平衡工作点对应的值C

OPOINT = SINDOP(MDL,OP,FindopOptions('displayReport'“关闭”));

在这些操作点线性化电厂。

植物=线性化(MDL,OPOINT);

由于CSTR工厂是非线性的,线性模型显示不同的特性。例如,具有高和低转换率的工厂模型稳定,而其他工厂则不是。

趋于稳定(植物,“elem”'
ans = 1x8逻辑阵列1 1 0 0 0 0 1 1

为电厂模型设计PID控制器

要批量设计多个PID控制器,请使用pidtune功能。以下命令以并行形式生成一个PID控制器数组。所需的开环交叉频率为1RAD / SEC和相位裕度是默认值60.程度。

控制器= PidTune(植物,“pidf”1);

显示控制器C=4.

控制器(::4)
ans = 1 s kp + ki * --- + kd * -------- s tf * s + 1带kp = -12.4,ki = -1.74,kd = -16,tf = 0.00875连续时间PIDF控制器以并行形式。

为了分析步骤设定点跟踪的闭环响应,首先构造闭环系统。

clsys =反馈(植物*控制器,1);

绘制闭环响应。

图保存为了ct = 1:长度(c)%从LTI数组中选择一个系统sys = clsys (:,:, ct);sys.name = [“C =”,num2str(c(ct))];sys.inputname =.“参考”%绘图步骤响应Stepplot(SYS,20);结尾传奇('展示''地点'“东南”

所有闭环都是稳定的,但不稳定的超调(C=4., 通过7.)太大了。为了改善不稳定对象模型的结果,将目标开环带宽增加到10.rad /秒。

控制器= PidTune(植物,“pidf”10);

显示控制器C=4.

控制器(::4)
ans = 1 s kp + ki * --- + kd * -------- s tf * s + 1带kp = -283,ki = -151,kd = -128,tf = 0.0183连续时间PIDF控制器以并行形式。

构造闭环系统,并对新控制器绘制闭环步骤响应。

clsys =反馈(植物*控制器,1);图保存为了ct = 1:长度(c)%从LTI数组中选择一个系统。sys = clsys (:,:, ct);集(sys,'姓名', (“C =”,num2str(c(ct))],“InputName”“参考”);%绘制阶跃响应。stepplot (sys, 20)结尾传奇('展示''地点'“东南”

所有的闭环响应现在都令人满意。为了进行比较,请检查在所有操作点使用同一控制器时的响应。创建另一套闭环系统,每个系统都使用C=2控制器,并绘制他们的回复。

clsys_flat =反馈(工厂*控制器(:,:,1),1);图Stepplot(clsys,clsys_flat,20)图例('C取依赖控制器''单控制器'

针对每种浓度分别设计的PID控制器阵列比单个控制器的性能要好得多。

然而,基于全非线性系统的线性近似来计算上面所示的闭环响应。要验证设计,请使用PID控制器块在模型中实现调度机制,如图所示实现增益调度PID控制器(金宝appSimulink Control Design)

关闭模型。

bdclose (mdl)

参考文献

戴尔·E,托马斯·f·埃德加,邓肯·a·梅利尚。过程动态和控制.第二版,John Wiley & Sons, Inc ., 2004,第34-36页。

拉夫,威尔逊J.和杰夫S.沙玛。“增益调度研究”。自动36,不。10(2000年10月):1401-1425。

也可以看看

(金宝appSimulink Control Design)|(金宝appSimulink Control Design)|

相关的话题