这个例子展示了如何获得无约束MPC控制器的LTI表示党卫军
.您可以使用它来分析控制器的频率响应和性能。
定义一个植物模型。对于这个例子,使用CSTR模型使用MPC设计器设计控制器.
A = [-0.0285 -0.0014;-0.0371 - -0.1476);B = [-0.0850 0.0238;0.0802 - 0.4462);C = [0 1;1 0];D = 0 (2, 2);装运箱= ss (A, B, C, D);CSTR.InputGroup.MV = 1;CSTR.InputGroup.UD = 2; CSTR.OutputGroup.MO = 1; CSTR.OutputGroup.UO = 2;
使用相同的采样时间、预测范围和调优权重,为定义的设备创建MPC控制器在命令行上设计MPC控制器.
MPCobj = mpc(装运箱,1 15);
mpc对象的"ControlHorizon"属性为空。假设2。- - - >“权重。mpc对象的操纵变量属性为空。假设默认的0.00000。- - - >“权重。mpc对象的操控变量率属性为空。假设默认的0.10000。- - - >“权重。mpc对象的属性为空。 Assuming default 1.00000. for output(s) y1 and zero weight for output(s) y2
MPCobj.W.ManipulatedVariablesRate = 0.3;MPCobj.W.OutputVariables = [1 0];
提取控制器的LTI状态空间表示。
MPCss = ss (MPCobj);
——>模型转换为离散时间。——>”模式。“mpc”对象的干扰属性为空:假设未测输入干扰#2为综合白噪声。假设对测量的输出通道#1没有增加任何干扰。——>”模式。mpc对象的Noise属性为空。假设每个测量输出通道上都有白噪声。
将原装运箱
采用与MPC控制器相同的采样时间将模型转换为离散形式。
CSTRd =汇集(装运箱,MPCss.Ts);
使用。创建闭环系统的LTI模型反馈
.使用操纵变量和测量输出作为反馈,表示一个正反馈循环。使用负反馈会导致闭环系统不稳定,因为MPC控制器被设计为使用正反馈。
CLsys =反馈(CSTRd MPCss 1, 1, 1);
然后您可以分析得到的反馈系统。例如,确认所有闭环极点都在单位圆内。
波兰人= eig (CLsys)
波兰人=6×1复杂0.5513 + 0.2700i 0.5513 - 0.2700i 0.6131 + 0.1110i 0.6131 - 0.1110i 0.9738 + 0.0000i 0.9359 + 0.0000i
还可以查看系统频率响应。
波德(CLsys)