Синхронизируйте изменения модели 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 .

Синхронизируйте изменения модели Используя Linear Analysis Tool

Если вы изменяете свою модель Simulink, в то время как Linear Analysis Tool открыт, необходимо синхронизировать спецификации рабочей точки в Linear Analysis Tool, чтобы отразить изменения в модели.

Откройте модель Simulink.

sys = ('scdspeedctrl');
open_system(sys)

Чтобы открыть Linear Analysis Tool, в окне модели Simulink, в галерее Apps, нажимают Model Linearizer.

В Linear Analysis Tool, в 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 
----------

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

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

Похожие темы