set

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

Синтаксис

set(MPCobj,Property,Value)
set(MPCobj,Property1,Value1,Property2,Value2,...)
set(MPCobj,Property)
set(sys)

Описание

set функция используется, чтобы установить или изменить свойства контроллера MPC (см. mpc для фона на свойствах MPC). set имя свойства использования, пары Значения, чтобы обновить значения свойств.

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

set(MPCobj,Property1,Value1,Property2,Value2,...) наборы несколько значений свойств с отдельным оператором. Каждое имя свойства, пара Значения обновляет одно конкретное свойство.

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

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

Примеры

свернуть все

Чтобы изменить типы сигнала для существующего контроллера 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);

В общем случае это - лучшая практика не изменить типы сигнала после создания контроллера. Вместо этого создайте и сконфигурируйте новый объект контроллера с новой настройкой сигнала.

Смотрите также

| |

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