set

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

Описание

Используйте Model Predictive Control Toolbox™ set функционируйте, чтобы присвоить значения свойств контроллера MPC (см. mpc для фона).

Чтобы реализовать интерфейс Get/Set стандартного объекта MATLAB, смотрите, что Реализация Устанавливает/Получает Интерфейс для Свойств.

пример

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