exponenta event banner

Проверка рабочей точки по спецификациям

При вычислении рабочей точки на основе спецификаций ввода, вывода или состояния программа Simulink ® Control Design™ показывает, были ли спецификации успешно выполнены в процессе обрезки. Если обрезка не удалась, для определения спецификаций, которые не могут быть выполнены, необходимо сверить отсеченную рабочую точку с исходными спецификациями.

Проверка рабочей точки в менеджере устойчивого состояния

При вычислении рабочей точки с помощью Диспетчера устойчивого состояния (Steady State Manager) программа создает объект отчета об операционных точках и подсвечивает любые значения рабочих точек, нарушающие ограничения спецификации.

Например, рассмотрим scdairframeTRIM модель. Откройте модель и задайте параметры скорости и угла падения.

sys = 'scdairframeTRIM';
open_system(sys)

alpha_ini = -0.21;
v_ini = 933;

Чтобы открыть Диспетчер устойчивого состояния (Steady State Manager), в окне модели Simulink в галерее Apps щелкните Диспетчер устойчивого состояния (Steady State Manager).

Создайте спецификацию обрезки для модели. На вкладке Устойчивое состояние (Steady State) щелкните Отсечь спецификацию (Trim Specification).

В документе spec1 укажите, какие состояния известны, а какие находятся в устойчивом состоянии.

Чтобы обрезать модель, на вкладке Спецификация (Specification) щелкните Обрезать (Trim). Программа создает Play buttonотчет об операционных точках и в соответствующем отчете1 выделяет все нарушения ограничений красным цветом.

При поиске оптимизации не удалось найти рабочую точку, удовлетворяющую спецификациям. Как показано в Steady State Manager, три состояния, которые должны находиться в устойчивом состоянии, не являются. Выделенные значения состояния нарушают указанные ограничения более чем на значение допуска, указанное на вкладке Отчет (Report) в поле Допуск проверки (Validation Tolerance). Для стационарных условий ограничения dx Minimum и dx Maximum равны нулю; то есть скорость изменения для каждого состояния равна нулю. В отсеченной рабочей точке фактические значения dx нарушают эти ограничения.

Для этой модели указание второго состояния положения, которое должно находиться в установившемся состоянии, накладывает чрезмерную нагрузку на систему, делая невозможным решение в установившемся состоянии.

Чтобы снять это установившееся ограничение, обновите спецификацию. В документе spec1 в столбце «Устойчивое состояние» очистите соответствующую строку.

На вкладке Спецификация (Specification) щелкните Обрезать (Trim). Программа обрезает Play buttonмодель и открывает соответствующую вкладку Отчет (Report). Результирующий отчет показывает отсутствие нарушений ограничений.

Можно также проверить существующую операционную точку по набору спецификаций. Например, чтобы проверить, удовлетворяют ли исходные условия модели требованиям в spec1сначала создайте рабочую точку на основе исходных условий модели. На вкладке Устойчивое состояние (Steading State) щелкните Рабочая точка (Operating Point). Программа создает рабочую точку и открывает соответствующий документ op1.

Проверка этой рабочей точки по спецификациям в spec1, на вкладке «Операционная точка» в разделе «Проверка по» выберите spec1.

Программа создает отчет об операционной точке и открывает соответствующий отчет3.

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

Проверка рабочей точки в линеаризаторе модели

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

Если обрезать модель из предыдущего примера Диспетчера устойчивого состояния (Steady State Manager), используя те же спецификации в линеаризаторе модели, программа создает рабочую точку в браузере данных в рабочем пространстве линейного анализа.

Чтобы проверить, удовлетворяет ли рабочая точка указанным ограничениям, в Обозревателе данных в рабочем пространстве линейного анализа дважды щелкните рабочую точку.

В диалоговом окне «Редактирование» для трех стационарных спецификаций усеченные значения состояния в столбце «Actual dx» нарушают нулевые желательные значения dx.

Проверка рабочей точки в командной строке

При вычислении рабочей точки в командной строке findop по умолчанию функция выводит отчет об операционной точке в окно команд. Можно также вернуть отчет об операционной точке в качестве выходного аргумента. Дополнительные сведения см. в разделе findop. Чтобы проверить рабочую точку по спецификациям, необходимо проверить, соответствуют ли значения рабочей точки ограничениям.

Например, откройте scdairframeTRIM и задайте параметры модели.

sys = 'scdairframeTRIM';
open_system(sys)

alpha_ini = -0.21;
v_ini = 933;

Создайте объект спецификации операционной точки и укажите, какие состояния известны, а какие находятся в установившемся состоянии.

opspec = operspec(sys);
opspec.States(1).Known = [1;1];
opspec.States(1).SteadyState = [0;1];
opspec.States(3).Known = [1;1];
opspec.States(3).SteadyState = [0;1];
opspec.States(2).Known = 1;
opspec.States(2).SteadyState = 0;
opspec.States(4).Known = 0;
opspec.States(4).SteadyState = 1;

Обрезать модель.

op = findop(sys,opspec);
 Operating point search report:
---------------------------------

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

Could not find a solution that satisfies all constraints.  Relax the constraints to find a feasible solution.
States: 
----------
(1.) scdairframeTRIM/Airframe Model/EOM/ Equations of Motion (Body Axes)/Position
      x:             0      dx:           913
      x:     -3.05e+03      dx:          -194 (0)
(2.) scdairframeTRIM/Airframe Model/EOM/ Equations of Motion (Body Axes)/Theta
      x:             0      dx:             0
(3.) scdairframeTRIM/Airframe Model/EOM/ Equations of Motion (Body Axes)/U,w
      x:           913      dx:          25.3
      x:          -194      dx:           273 (0)
(4.) scdairframeTRIM/Airframe Model/EOM/ Equations of Motion (Body Axes)/q
      x:             0      dx:          31.2 (0)

Inputs: 
----------
(1.) scdairframeTRIM/delta
      u:             0    [-Inf Inf]

Outputs: 
----------
(1.) scdairframeTRIM/alpha
      y:         -0.21    [-Inf Inf]
(2.) scdairframeTRIM/V
      y:           933    [-Inf Inf]
(3.) scdairframeTRIM/q
      y:             0    [-Inf Inf]
(4.) scdairframeTRIM/az
      y:           263    [-Inf Inf]
(5.) scdairframeTRIM/gamma
      y:          0.21    [-Inf Inf]

В отчете по поиску рабочей точки dx значения для указанных стационарных состояний имеют нулевые ограничения, как указано 0 значение в скобках. Поиск оптимизации не обнаружил установившейся рабочей точки, так как все три этих состояния нарушают ограничения.

См. также

Функции

Приложения

Связанные темы