Синхронизируйте изменения модели Simulink с техническими требованиями рабочей точки

Изменение вашей модели Simulink® может измениться, добавить или удалить состояния, входные параметры или выходные параметры, который изменяет рабочую точку. Можно синхронизировать существующие объекты спецификации рабочей точки отразить изменения в модели.

Синхронизируйте изменения модели Используя Steady State Manager

Если вы изменяете свою модель 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 .

Синхронизируйте изменения модели Используя Model Linearizer

Если вы изменяете свою модель 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)
 Operating point specification for the Model scdspeedctrl.
 (Time-Varying Components Evaluated at time t=0)

States: 
----------
(1.) scdspeedctrl/External Disturbance/Transfer Fcn
	 spec:  dx = 0,  initial guess: 0
	 spec:  dx = 0,  initial guess: 0
(2.) scdspeedctrl/PID Controller/Filter/Cont. Filter/Filter
	 spec:  dx = 0,  initial guess: 0
(3.) scdspeedctrl/PID Controller/Integrator/Continuous/Integrator
	 spec:  dx = 0,  initial guess: 8.98
(4.) scdspeedctrl/Reference Filter/State Space
	 spec:  dx = 0,  initial guess: 200
(5.) scdspeedctrl/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar
	 spec:  dx = 0,  initial guess: 0.544
(6.) scdspeedctrl/Vehicle Dynamics/w = T//J w0 = 209 rad//s
	 spec:  dx = 0,  initial guess: 209

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:
---------------------------------

 Operating point search report for the Model scdspeedctrl.
 (Time-Varying Components Evaluated at time t=0)

Operating point specifications were successfully met.
States: 
----------
(1.) scdspeedctrl/External Disturbance/Transfer Fcn
      x:             0      dx:             0 (0)
      x:             0      dx:             0 (0)
(2.) scdspeedctrl/PID Controller/Filter/Cont. Filter/Filter
      x:             0      dx:             0 (0)
(3.) scdspeedctrl/PID Controller/Integrator/Continuous/Integrator
      x:          8.98      dx:     -4.51e-14 (0)
(4.) scdspeedctrl/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar
      x:         0.544      dx:      2.94e-15 (0)
(5.) scdspeedctrl/Vehicle Dynamics/w = T//J w0 = 209 rad//s
      x:           209      dx:     -1.52e-13 (0)
(6.) scdspeedctrl/Reference Filter/State Space
      x:             0      dx:             0 (0)
      x:            20      dx:             0 (0)

Inputs: None 
----------

Outputs: None 
----------

После того, как вы обновите объект спецификации рабочей точки, алгоритм оптимизации успешно находит рабочую точку.

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

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте