Выбор модели устраняет полюсы, которые падают вне заданной интересующей области значений частот. Этот метод полезен, когда вы хотите сфокусировать свой анализ на конкретном подмножестве динамики системы. Например, если вы работаете с системой управления с полосой пропускания, ограниченной динамикой привода, можно отменить динамику более высокой частоты на объекте. Исключение динамики вне интересующей области значений частот уменьшает числовую сложность вычислений с моделью. Существует два способа вычислить модель пониженного порядка путем выбора режима:
В командной строке, используя freqsep
команда.
В Model Reducer, используя метод Mode Selection.
В задаче Reduce Model Order в Live Editor используйте Mode Selection
способ.
Для получения дополнительной общей информации о снижении сложности модели, см. «Основы снижения сложности модели».
Model Reducer предоставляет интерактивный инструмент для выполнения снижения сложности модели и исследования и сравнения ответов исходных и пониженных моделей. Чтобы аппроксимировать модель выбором режима в Model Reducer:
Откройте приложение и импортируйте модель LTI, чтобы уменьшить. Например, предположим, что существует модель с именем Gms
в MATLAB® рабочей области. Следующая команда откроется Model Reducer и импортирует модель.
modelReducer(Gms)
В Data Browser выберите модель для сокращения. Нажмите Mode Selection.
На вкладке Mode Selection Model Reducer отображает график частотной характеристики исходной модели и сокращенную версию модели. Приложение также отображает карту ноль полюсов обеих моделей.
Карта ноль полюсов помечает местоположение полюсов x
и нулевые местоположения с o
.
Примечание
Частотная характеристика является диаграммой Боде для моделей SISO и графиком с сингулярным значением для моделей MIMO.
Model Reducer устраняет полюса, которые находятся вне заштрихованной области. Измените затененную область, чтобы захватить только динамику, которую вы хотите сохранить в уменьшенной модели. Есть два способа сделать это.
На графике отклика или на карте с нулем полюса перетащите контуры затененной области или самой затененной области.
На вкладке Mode Selection введите нижнюю и верхнюю частоты отсечения.
Когда вы изменяете затененные области или частоты отсечения, Model Reducer автоматически вычисляет новую модель пониженного порядка. Все полюса, сохраненные в уменьшенной модели, попадают в заштрихованную область на карте ноль полюсов. Уменьшенная модель может содержать нули, которые попадают за пределы затененной области.
Опционально рассмотрим абсолютную или относительную погрешность между исходной и упрощенной моделью. Выберите тип вывода ошибок с помощью кнопок на вкладке Mode Selection.
Для получения дополнительной информации об использовании графиков анализа смотрите Визуализация моделей пониженного порядка в приложении Model Reducer.
Когда у вас есть одна или несколько сокращенных моделей, которые вы хотите хранить и анализировать дальше, нажмите. Новая модель появится в Data Browser.
После создания уменьшенной модели в Data Browser можно продолжить корректировку области выбора режима, чтобы создать уменьшенные модели с различными порядками для анализа и сравнения.
Теперь можно выполнить последующий анализ с помощью уменьшенной модели. Для примера:
Исследуйте другие отклики редуцированной системы, такие как переходные характеристики или график Николса. Для этого используйте инструменты на вкладке Plots. Смотрите Визуализацию Моделей Пониженного Порядка в Приложении Model Reducer для получения дополнительной информации.
Экспортируйте уменьшенные модели в рабочее пространство MATLAB для последующего анализа или системы управления. На вкладке Model Reducer нажмите Export.
Чтобы создать скрипт MATLAB, можно использовать для дальнейших задач снижения сложности модели в командной строке, нажмите Create Reduced Model и выберите Generate MATLAB Script.
Model Reducer создает скрипт, который использует freqsep
команда для выполнения снижения сложности модели с параметрами, установленными на вкладке Mode Selection. Скрипт откроется в редакторе MATLAB.
Чтобы уменьшить порядок модели путем выбора режима в командной строке, используйте freqsep
. Эта команда разделяет модель динамической системы на медленные и быстрые компоненты вокруг заданной частоты.
В данном примере загружает модель Gms
и исследуйте его частотную характеристику.
load modeselect Gms bodeplot(Gms)
Gms
имеет два набора резонансов, один на относительно низкой частоте, а другой на относительно высокой частоте. Предположим, что вы хотите настроить контроллер для Gms
, но привод в вашей системе ограничен шириной полосы около 3 рад/с, между двумя группами резонансов. Для упрощения вычисления и настройки с помощью Gms
, можно использовать выбор режима, чтобы исключить высокочастотную динамику.
[Gms_s,Gms_f] = freqsep(Gms,30);
freqsep
разлагается Gms
в медленные и быстрые компоненты, такие что Gms = Gms_s + Gms_f
. Все режимы (полюса) с собственной частотой менее 30 находятся в Gms_s
, и более высокочастотные полюсы находятся в Gms_f
.
bodeplot(Gms,Gms_s,Gms_f) legend('original','slow','fast')
Медленный компонент, Gms_s
, содержит только более низкочастотные резонансы и соответствует усилению постоянного тока исходной модели. Исследуйте порядки обеих моделей.
order(Gms)
ans = 18
order(Gms_s)
ans = 10
Когда высокочастотная динамика неважна для вашего приложения, можно использовать 10-й порядок Gms_s
вместо исходной модели 18-го порядка. Если пренебрежение низкочастотной динамикой подходит для вашего приложения, можно использовать Gms_f
. Чтобы выбрать режимы, которые находятся между низкочастотным и высокочастотным отключением, используйте дополнительные вызовы, чтобы freqsep
.