Преобразуйте неявный контроллер MPC в явный контроллер MPC
Учитывая традиционное Образцовое Прогнозирующее Проектирование контроллера в неявной форме, преобразуйте его в явную форму для приложений реального времени, требующих быстрого шага расчета.
EMPCobj = generateExplicitMPC(MPCobj,range)
EMPCobj = generateExplicitMPC(MPCobj,range,opt)
преобразовывает традиционный (неявный) контроллер MPC в эквивалентный явный контроллер MPC, с помощью заданных границ параметра. Это вычисление обычно требует значительного вычислительного усилия, потому что мультипараметрическая проблема квадратичного программирования решена во время преобразования.EMPCobj
= generateExplicitMPC(MPCobj
,range
)
Используя Явный MPC, вы, скорее всего, достигнете лучшей производительности в небольших проблемах управления, которые включают небольшие числа входных параметров/выходных параметров/состояний объекта, а также количество ограничений.
Протестируйте неявный контроллер полностью прежде, чем делать попытку преобразования. Это помогает определить область значений состояний контроллера, и другие параметры должны были сгенерировать явный контроллер.
Моделируйте производительность явного диспетчера с помощью sim
или команд mpcmoveExplicit
или блока Explicit MPC Controller в Simulink®.
generateExplicitMPC
отображает сообщения о ходе выполнения в командном окне. Используйте mpcverbosity
, чтобы выключить отображение.
generateExplicitOptions
| generateExplicitRange
| mpc
| simplify