Вычислите действие оптимального управления для нелинейного контроллера MPC
mv = nlmpcmove(nlmpcobj,x,lastmv)
mv = nlmpcmove(nlmpcobj,x,lastmv,ref)
mv = nlmpcmove(nlmpcobj,x,lastmv,ref,md)
mv = nlmpcmove(nlmpcobj,x,lastmv,ref,md,options)
[mv,opt] = nlmpcmove(___)
[mv,opt,info] = nlmpcmove(___)
задает дополнительные опции во время выполнения для вычисления перемещений оптимального управления. Используя mv
= nlmpcmove(nlmpcobj
,x
,lastmv
,ref
,md
,options
)options
, вы можете задать исходные предположения для состояния и управляли переменными траекториями, настраивающими весами обновления при ограничениях, или измените параметры модели прогноза.
Во время симуляций с обратной связью это - лучшая практика к горячему запуску нелинейный решатель при помощи предсказанного состояния и управляло переменными траекториями от предыдущего интервала управления как исходные предположения для текущего интервала управления. Использовать эти траектории в качестве исходных предположений:
Возвратите выходной аргумент opt
при вызове nlmpcmove
. Этот объект nlmpcmoveopt
содержит любые опции во время выполнения, которые вы задали в предыдущем вызове nlmpcmove
, наряду с исходными предположениями для состояния (opt.X0
) и управляли переменной (opt.MV0
) траектории.
Передайте этот объект в как входной параметр options
к nlmpcmove
для следующего интервала управления.
Эти шаги являются лучшой практикой, даже если вы не задаете никакие другие опции во время выполнения.