操纵变量阻塞
操纵变量阻塞是更简单的控制水平概念的替代方案(参见选择采样时间和范围),而且它有许多相同的好处。操纵变量阻塞:
提供更多的调优灵活性
能否平滑操纵变量调整
可以提高控制器的鲁棒性
指定阻塞间隔长度
若要使用操纵变量块,请将预测层划分为一系列块间隔,方法是将控制层指定为块大小的向量,[米1,米2,……)。块大小的总和必须与预测水平相匹配p.如果你指定一个向量,它的和是:
小于预测水平,则控制器增加一个阻塞间隔。这个区间的长度使得区间长度之和为p.例如,如果p=
10
你指定一个控制视界米=[1 2 3]
,则控制器使用四个具有长度的间隔[1 2 3 4]
.大于预测水平,则间隔被截断,直到间隔长度的和等于p.例如,如果p=
10
你指定一个控制视界[1 2 3 6 7]
,则控制器使用四个具有长度的间隔[1 2 3 4]
.
控制器计算米自由移动,其中米是阻塞间隔的个数。第一个自由动作适用于时代k通过k+米1-1,第二次自由移动适用于时间k+米1通过k+米1+米2-1,等等。在这里,k当前控制间隔。
默认情况下,控制器会在每个块中保持被操纵的变量不变;也就是说,控制移动在每个区间上是分段常数。例如,下图显示了控制视界的最优控制移动米=[2 3 2]
和预测范围p=7
.
对于每个块,被操纵的变量,u,为常数,即:
u(0) =u(1)
u(2) =u(3) =u(4)
u(5) =u(6)
推荐的阻塞方法是将预测水平划分为3到5个块,并使用以下阻塞替代方案之一:
相同的块大小(预测范围的五分之一到三分之一,p)
块大小增加。例如,用p=
20.
,你可以尝试三个积木,间隔长度分别为3、7和10。
为了测试不同操纵变量阻塞配置的效果,在以下条件下进行闭环仿真测试:
没有约束
无预测误差;即控制器预测模型应与工厂模型相同
要测试每个控制器的稳定性和鲁棒性问题,请使用审查
函数。
非线性MPC的插值块移动
与线性MPC控制器一样,当您使用操纵变量阻塞时,非线性MPC控制器默认使用分段常量阻塞间隔。对于最优路径规划应用程序来说,这种方法通常限制太大。为了产生一个限制更少、条件更好的非线性规划问题,您可以指定分段线性操作变量阻塞间隔。要这样做,请设置优化。米VInterpolationOrder
您的财产nlmpc
控制器对象1
.
下图为控制层的最优控制移动米=[2 3 2]
预测范围p=7
.
在默认的分段常量情况下,的计算操作变量值1
,3.
,2
在各自的阻塞间隔上是常数。
在分段线性情况下,计算得到的操纵变量值对前两个阻塞间隔进行线性插值,并对最后一个间隔保持恒定。
有关非线性MPC控制器的更多信息,请参见非线性MPC.
请注意
隐式、自适应或增益调度MPC控制器不支持阻塞移动的线性插值。金宝app