exponenta event banner

набор

Установка или изменение свойств объекта MPC

Описание

Используйте элемент управления «Прогнозирование модели» Toolbox™ set назначение значений свойств контроллера MPC (см. mpc для фона).

Сведения о внедрении интерфейса Get/Set стандартного объекта MATLAB см. в разделе Реализация интерфейса Set/Get для свойств.

пример

set(MPCobj,Name,Value) задать свойства MPCobj использование одного или нескольких Name,Value аргументы пары. Например, set(mpcobj,"ControlHorizon",4) присваивает значение 3 в ControlHorizon свойство контроллера MPC MPCobj.

set(MPCobj,PropertyName) отображает допустимые значения для свойства, заданного символьным вектором Propertyname. Посмотрите mpc для обзора допустимых значений свойств MPC.

set(MPCobj) отображает все назначаемые свойства MPCobj и их допустимые значения.

Примеры

свернуть все

Чтобы изменить типы сигналов для существующего контроллера MPC, необходимо одновременно изменить любые свойства контроллера, зависящие от конфигурации типа сигнала.

Создайте модель установки с двумя выходами, одной управляемой переменной, одним измеренным возмущением и двумя неизмеренными возмущениями.

plant = rss(3,2,5);
plant.D = 0;
plant = setmpcsignals(plant,'MV',[1 2],'MD',3,'UD',[4 5]);

Создайте контроллер MPC с помощью этого завода.

MPCobj = mpc(plant,0.1);
-->The "PredictionHorizon" property of "mpc" object is empty. Trying PredictionHorizon = 10.
-->The "ControlHorizon" property of the "mpc" object is empty. Assuming 2.
-->The "Weights.ManipulatedVariables" property of "mpc" object is empty. Assuming default 0.00000.
-->The "Weights.ManipulatedVariablesRate" property of "mpc" object is empty. Assuming default 0.10000.
-->The "Weights.OutputVariables" property of "mpc" object is empty. Assuming default 1.00000.

Настройте свойства контроллера. Например, установите коэффициенты масштабирования для сигналов возмущения.

MPCobj.DisturbanceVariables(1).ScaleFactor = 10;
MPCobj.DisturbanceVariables(2).ScaleFactor = 5;
MPCobj.DisturbanceVariables(3).ScaleFactor = 20;

Предположим, что требуется изменить второе неизмеренное возмущение на измеренное. Для этого необходимо одновременно обновить DisturbanceVariables свойство контроллера, поскольку порядок его записей зависит от типов возмущений (измеренные возмущения, за которыми следуют неизмеренные возмущения).

Создание обновленного массива переменных возмущений. Для этого переместите третий элемент в положение второго элемента.

DV = MPCobj.DisturbanceVariables;
DV = [DV(1) DV(3) DV(2)];
DV(2).Name = 'MD2';

Для установки типов сигналов внутренней модели завода получите Model из контроллера, и изменить типы сигналов его Plant элемент.

model = MPCobj.Model;
model.Plant = setmpcsignals(model.Plant,'MV',[1 2],'MD',[3 5],'UD',4);

Установите обновленные значения параметров модели и переменной возмущения контроллера.

set(MPCobj,'Model',model,'DisturbanceVariables',DV);

Как правило, рекомендуется не изменять типы сигналов после создания контроллера. Вместо этого создайте и настройте новый объект контроллера с новой конфигурацией сигнала.

Входные аргументы

свернуть все

Контроллер прогнозирования модели, указанный как объект контроллера MPC. Для создания контроллера MPC используйте mpc.

PropertyName может быть полным именем свойства (например, 'UserData') или любое однозначное без учета регистра сокращение (например, 'user').

Пример: 'PredictionHorizon'

См. также

| |

Представлен до R2006a