Вычислите действие оптимального управления и обновите состояния контроллера
Используйте эту команду, чтобы симулировать контроллер MPC в с обратной связью с моделью объекта управления дискретного времени. Вызвать mpcmove неоднократно в цикле for, чтобы вычислить переменную, которой управляют, и обновить состояния контроллера на каждом временном шаге.
возвращает оптимальное перемещение mv = mpcmove(MPCobj,xc,ym,r,v)mv и обновляет состояния xc контроллера MPCobj.
Переменная mv, которой управляют, в текущее время вычисляется данный:
объект контроллера, MPCobj,
текущее предполагаемое расширенное состояние, xc,
измеренный объект выходные параметры, ym,
выходные ссылки, r,
и измеренный вход воздействия, v.
Обновленное состояние контроллера возвращено во входном параметре xc.
[___] = mpcmove(___, ограничения значения по умолчанию переопределений и веса в options)MPCobj со значениями, заданными в Options, mpcmoveopt объект. Используйте Options обеспечить корректировку во время выполнения ограничений и весов во время симуляции с обратной связью.
mpcmove обновления xc, даже при том, что это - входной параметр.
Если ymR или v задан как [], mpcmove использует соответствующий MPCobj.Model.Nominal значение вместо этого.
Чтобы просмотреть предсказанное оптимальное поведение для целого горизонта предсказания, постройте соответствующие последовательности, обеспеченные в Info.
Чтобы определить состояние оптимизации, проверяйте Info.Iterations и Info.QPCode.
Использование sim поскольку объект не сочетается и шумовая симуляция если не с помощью ограничений во время выполнения или изменений веса.
Используйте приложение MPC Designer, чтобы в интерактивном режиме спроектировать и симулировать прогнозирующие контроллеры модели.
Используйте блок MPC Controller в Simulink и для генерации кода.
Использование mpcmoveCodeGeneration для генерации кода.
getEstimator | mpc | mpcmoveopt | mpcstate | review | setEstimator | sim