Изменение вашего Simulink® модель может измениться, добавить или удалить состояния, входные параметры или выходные параметры, который изменяет рабочую точку. Можно синхронизировать существующие объекты спецификации рабочей точки отразить изменения в модели.
Если вы изменяете свою модель Simulink, в то время как Steady State Manager открыт, необходимо синхронизировать технические требования рабочей точки в Steady State Manager, чтобы отразить изменения в модели.
Откройте модель Simulink.
sys = ('scdspeedctrl');
open_system(sys)
Чтобы открыть Steady State Manager, в окне модели Simulink, в галерее Apps, нажимают Steady State Manager.
Чтобы создать операционную спецификацию на основе настройки текущей модели, в Steady State Manager, на вкладке Steady State, нажимают Trim Specification.
В документе spec1 блок Reference Filter имеет одно состояние.
В окне модели Simulink дважды кликните блок Reference Filter. Измените Numerator передаточной функции к 100
, и измените Denominator в [1 20 100]
.
Нажмите OK.
Это изменение увеличивает порядок фильтра, добавляя состояние в модель Simulink.
Чтобы обновить технические требования рабочей точки, чтобы отразить изменения модели, в Steady State Manager, на вкладке Specification, нажимают Sync from Model.
Обновления программного обеспечения технические требования. Блок Reference Filter теперь имеет два состояния.
Чтобы найти рабочую точку, которая выполняет этим техническим требованиям на вкладке Specification, нажимают Trim .
Если вы изменяете свою модель Simulink, в то время как Model Linearizer открыт, необходимо синхронизировать технические требования рабочей точки в Model Linearizer, чтобы отразить изменения в модели.
Откройте модель Simulink.
sys = ('scdspeedctrl');
open_system(sys)
Чтобы открыть Model Linearizer, в окне модели Simulink, в галерее Apps, нажимают Model Linearizer.
В Model Linearizer, в Operating Points выпадающий список, выбирают Trim Model
.
В Обрезке диалоговое окно модели блок Reference Filter содержит одно состояние.
В окне модели Simulink дважды кликните блок Reference Filter. Измените Numerator передаточной функции к 100
, и измените Denominator в [1 20 100]
.
Нажмите OK.
Это изменение увеличивает порядок фильтра, добавляя состояние в модель Simulink.
Чтобы обновить технические требования рабочей точки, чтобы отразить изменения модели, в Обрезке диалоговое окно модели, нажимают Sync with Model.
Обновления программного обеспечения технические требования. Блок Reference Filter теперь имеет два состояния.
Чтобы найти рабочую точку, которая выполняет этим техническим требованиям, нажмите Start trimming
В этом примере показано, как обновиться, существующая спецификация рабочей точки возражают с изменениями в модели Simulink®.
Откройте модель.
sys = 'scdspeedctrl';
open_system(sys)
Создайте спецификацию рабочей точки, основанную на объектах на настройке текущей модели.
opspec = operspec(sys)
opspec = Operating point specification for the Model scdspeedctrl. (Time-Varying Components Evaluated at time t=0) States: ---------- <strong>x</strong> <strong>Known</strong> <strong>SteadyState</strong> <strong>Min</strong> <strong>Max</strong> <strong>dxMin</strong> <strong>dxMax</strong> <strong>_______</strong> <strong>_____</strong> <strong>___________</strong> <strong>____</strong> <strong>___</strong> <strong>_____</strong> <strong>_____</strong> (1.) scdspeedctrl/External Disturbance/Transfer Fcn 0 false true -Inf Inf -Inf Inf 0 false true -Inf Inf -Inf Inf (2.) scdspeedctrl/PID Controller/Filter/Cont. Filter/Filter 0 false true -Inf Inf -Inf Inf (3.) scdspeedctrl/PID Controller/Integrator/Continuous/Integrator 8.9768 false true -Inf Inf -Inf Inf (4.) scdspeedctrl/Reference Filter/State Space 200 false true -Inf Inf -Inf Inf (5.) scdspeedctrl/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar 0.54363 false true -Inf Inf -Inf Inf (6.) scdspeedctrl/Vehicle Dynamics/w = T//J w0 = 209 rad//s 209.44 false true -Inf Inf -Inf Inf Inputs: None ---------- Outputs: None ----------
Измените передаточную функцию блока Reference Filter. Установите параметр Числителя на 100
и параметр Знаменателя к [1 20 100]
.
set_param('scdspeedctrl/Reference Filter','N',"100"); set_param('scdspeedctrl/Reference Filter','D',"[1 20 100]");
Поскольку параметры модели изменились, пытаясь найти рабочую точку, которая выполняет техническим требованиям в opspec
используя следующую команду генерирует ошибку.
op = findop(sys,opspec);
Обновите объект спецификации рабочей точки отразить изменения в модели.
opspec = update(opspec);
Найдите рабочую точку, которая выполняет обновленным техническим требованиям.
op = findop(sys,opspec);
Operating point search report: --------------------------------- opreport = Operating point search report for the Model scdspeedctrl. (Time-Varying Components Evaluated at time t=0) Operating point specifications were successfully met. States: ---------- <strong>Min</strong> <strong>x</strong> <strong>Max</strong> <strong>dxMin</strong> <strong>dx</strong> <strong>dxMax</strong> <strong>____</strong> <strong>_______</strong> <strong>___</strong> <strong>_____</strong> <strong>___________</strong> <strong>_____</strong> (1.) scdspeedctrl/External Disturbance/Transfer Fcn -Inf 0 Inf 0 0 0 -Inf 0 Inf 0 0 0 (2.) scdspeedctrl/PID Controller/Filter/Cont. Filter/Filter -Inf 0 Inf 0 0 0 (3.) scdspeedctrl/PID Controller/Integrator/Continuous/Integrator -Inf 8.9768 Inf 0 -4.5077e-14 0 (4.) scdspeedctrl/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar -Inf 0.54363 Inf 0 2.9365e-15 0 (5.) scdspeedctrl/Vehicle Dynamics/w = T//J w0 = 209 rad//s -Inf 209.44 Inf 0 -1.5226e-13 0 (6.) scdspeedctrl/Reference Filter/State Space -Inf 0 Inf 0 0 0 -Inf 20 Inf 0 0 0 Inputs: None ---------- Outputs: None ----------
После того, как вы обновите объект спецификации рабочей точки, алгоритм оптимизации успешно находит рабочую точку.