调整权重
模型预测控制器设计通常需要对代价函数权值进行一些调整。介绍调优技巧。看到优化问题关于成本函数方程的详细信息。
最初的调优
这里,MV是一个植物操纵变量,和nu为mv的个数。OV是一个植物输出变量,和ny为OVs数。最后,p是预测范围内的步数。
如果权重数组包含n<p行,控制器复制最后一行以获得一个完整的数组p行。默认的(n= 1)使要调优的参数数量最小化,因此推荐使用。看到使用MPC设计器设置时变权重和约束另一种选择。
设置OV权重的技巧
考虑到ny假设是OVsnyc必须保持在或接近参考值(设定值)。如果我OV不在这个组中,集合
Weights.OV(:,我)
= 0。如果nu≥nyc,在稳态下,通常可以实现零OV跟踪误差nycmv不受约束。默认的
权重。机汇= ones(1,ny)
这是一个很好的开始。如果nu>nyc但是,你有多余的自由度。因此,除非采取预防措施,否则即使OVs接近参考值,mv也可能漂移。
最常见的预防措施是为你拥有的多余mv数量定义参考值(目标),nu- - - - - -nyc.这样的目标可以代表经济上或技术上理想的稳定状态值。
另一种方法是设定w∆u>至少是0nu- nyc以阻止控制器改变它们。
如果nu<nyc,你没有足够的自由度同时保持所有ov在一个设定值。在这种情况下,考虑优先级引用跟踪。为此,设置
Weights.OV(:,i) > 0
属性的优先级我机汇。这方面的大致指导方针如下:0.05 -低优先级:大跟踪误差可接受
0.2 -低于平均优先级
1 -平均优先级-默认值。使用此值,如果nyc= 1。
5 -高于平均优先级
20 -高优先级:期望小的跟踪误差
MV权重设置技巧
默认情况下,权重。MV= zeros(1,nu)
.如果某些MV有目标,对应的MV参考跟踪权值必须非零。否则,目标将被忽略。如果MV目标数小于(nu- - - - - -nyc),试着用相同的重量。建议值为0.2,与低于平均OV跟踪相同。这个值允许mv暂时离开他们的目标,以改善OV的跟踪。
否则,MV和OV参考跟踪目标很可能发生冲突。通过设置Weights.MV(:,我)
值,其方式类似于所建议的权重。机汇
(见上图)。典型的做法是将平均MV跟踪优先级设置为低于平均OV跟踪优先级(例如,0.2 < 1)。
如果我MV没有目标,设定Weights.MV(:,我)
= 0(默认值)。
设置MV速率权重的技巧
默认情况下,
权重。MVRate= 0。1*ones(1,nu)
.这种默认的原因包括:如果工厂是开环稳定的,那么大量的增量是不必要的,而且可能是不可取的。例如,当模型预测是不完美的,在实践中总是如此,更保守的增量通常提供更健壮的控制器性能,但更差的参考跟踪。
这些值迫使QP黑森矩阵是正定的,这样,如果没有约束是活动的,QP有一个唯一的解。
来鼓励控制器使用更小的增量我th MV,增加
Weights.MVRate(:,我)
价值。如果电厂是开环不稳定的,你可能需要降低平均值
重量。MVRate
值,允许充分快速的反应,以中断。
设置ECR权重的技巧
看到约束软化有关权重。ECR
财产。
测试和改进
为了专注于调整单个成本函数权重,请在以下条件下执行闭环模拟测试:
使用参考和测量扰动信号(如果有)的变化来强制动态响应。根据每个测试的结果,考虑改变所选权重的大小。
一个建议的方法是使用常量Weights.OV(:,i) = 1
指示“平均OV跟踪优先级”,并将所有其他权重调整为相对于此值。使用灵敏度
指挥引导。使用审查
命令检查典型的调优问题,例如缺乏闭环稳定性。
看到调整干扰和噪声模型用于测试控制器的抗扰能力。
鲁棒性
一旦你有了在上述条件下工作良好的权重,检查对预测错误的敏感性。有几种方法:
如果您的系统有一个非线性的植物模型,例如Simulink万博1manbetx®模型,模拟除LTI预测模型应用外的其它工作点的闭环性能。
或者,运行闭环模拟,其中表示植物的LTI模型不同于MPC预测模型中使用的LTI模型(如结构或参数值)。这两个MPC设计师应用程序和
sim卡
函数提供了在这些条件下进行模拟的选项。有关示例,请参见使用MPC设计器测试MPC控制器的鲁棒性.
如果与没有预测错误的测试相比,控制器性能似乎显著下降,对于开环稳定的工厂,考虑使控制器不那么激进。
在MPC设计师,在调优选项卡,可以使用闭环性能滑块。
向更鲁棒的控制方向移动会降低OV和MV权重,并增加MV Rate权重,这将导致输出控制的放松和更保守的控制移动。
在命令行中,您可以进行以下更改以降低控制器的攻击性:
增加所有
重量。MVRate
值乘以2阶的乘法因子。减少所有
重量。机汇
而且重量。MV
除以相同的因子。
调整权重后,重新评估有或没有预测误差的性能。
如果现在两者都可以接受,那么停止调整权重。
如果有改善,但仍然有太多的退化与模型误差,进一步增加控制器的鲁棒性。
如果更改没有显著提高性能,则恢复原始权重并专注于状态估计器调优(请参阅调整干扰和噪声模型).
最后,如果调优更改不能提供足够的健壮性,请考虑以下选项之一: