exponenta event banner

Сокращение заказа модели

Уменьшение сложности линейных моделей с инвариантным временем (LTI) в интерактивном редакторе

Описание

Задача Уменьшить порядок моделей (Reduce Model Order) позволяет интерактивно вычислять аппроксимации моделей высокого порядка с уменьшенным порядком при сохранении характеристик модели, важных для приложения. Задача автоматически генерирует код MATLAB ® для сценария в реальном времени. Дополнительные сведения о задачах Live Editor в целом см. в разделе Добавление интерактивных задач в сценарий Live.

Работа с моделями более низкого порядка может упростить анализ и управление конструкцией. Более простые модели также легче понять и манипулировать. Можно уменьшить модель завода, чтобы сосредоточиться на соответствующей динамике перед проектированием контроллера для завода. Можно также использовать сокращение модели для упрощения контроллера полного заказа. Дополнительные сведения о сокращении модели и о том, когда это полезно, см. в разделе Основы сокращения модели.

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

  • Balanced Truncation - Вычислите аппроксимацию модели более низкого порядка, удалив состояния с относительно небольшим количеством энергии.

  • Mode Selection - Выберите режимы, указав интересующий диапазон частот.

  • Pole-Zero Simplification - Исключить отменяющие или почти отменяющие пары полюс-ноль.

Связанные функции

Код сокращения модели, генерируемый командой Уменьшить порядок модели, использует следующие функции.

Reduce Model Order task in Live Editor

Открыть задачу

Чтобы добавить задачу «Уменьшить порядок моделей» в живой сценарий в редакторе MATLAB, выполните следующие действия.

  • На вкладке «Интерактивный редактор» выберите «Задача» > «Уменьшить порядок моделей».

  • В блоке кода в сценарии введите соответствующее ключевое слово, например reduce, balred, или minreal. Выбрать Reduce Model Order из предложенных завершений команды.

Параметры

Выберите модель для сокращения. Список доступных моделей включает соответствующие tf, ss, или zpk в рабочей области MATLAB. Модель может быть SISO или MIMO, непрерывной или дискретной.

  • Модели непрерывного времени не могут иметь временных задержек. Чтобы уменьшить модель непрерывного времени с временными задержками, сначала используйте pade для аппроксимации временных задержек в качестве динамики модели.

  • Модели дискретного времени могут иметь задержки по времени. Для Balanced Truncation метод сокращения, использование задачи absorbDelay преобразование задержки в полюса при z = 0 перед уменьшением модели.

Примечание

«Уменьшить порядок моделей» предполагает, что единица времени модели (указанная в TimeUnit свойство модели) - секунды. Для Balanced Truncation и Mode Selection методы, если в модели нет TimeUnit = 'seconds', использовать chgTimeUnit для преобразования модели в секунды.

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

  • Balanced Truncation - Вычислите аппроксимацию модели более низкого порядка, удалив состояния с относительно небольшим количеством энергии. Чтобы использовать этот метод, укажите количество состояний (порядок) в уменьшенной модели. График сингулярного значения Ханкеля визуализирует относительный вклад энергии каждого состояния в исходной модели. Задача отбрасывает состояния с меньшей энергией, чем состояние, выбранное на этом графике. Этот метод генерирует код, который использует balred команда.

    Для модели дискретного времени, имеющей задержки по времени, используется команда «Уменьшить порядок моделей». absorbDelay преобразование задержки в полюса при z = 0 перед уменьшением модели путем сбалансированного усечения. Дополнительные состояния отражены в графике ответа и графике сингулярного значения Ханкеля.

  • Mode Selection - Выберите режимы, указав интересующий диапазон частот. Задача отбрасывает динамику, которая выходит за пределы области, указанной на графике частотно-отклика. Этот метод генерирует код, который использует freqsep команда.

  • Pole-Zero Simplification - Исключить отменяющие или почти отменяющие пары полюс-ноль. Задача отбрасывает пары полюс-нуль, которые отменяются с порогом, заданным параметром Tolerance. Увеличьте допуск, чтобы отменить большее количество состояний. Этот метод генерирует код, который использует minreal команда.

Параметры сбалансированного усечения

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

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

По умолчанию команда Уменьшить порядок моделей (Reduct Model Order) анализирует сингулярные значения Hankel на всех частотах. Ограничение этого анализа определенным диапазоном частот полезно, если известно, что модель имеет режимы вне области, представляющей интерес для конкретного приложения. При применении ограничения частоты параметр Уменьшить порядок модели (Reduce Model Order) определяет, какие состояния являются состояниями с низкой энергией для усечения на основе их вклада в энергию только в указанном диапазоне частот.

Чтобы ограничить анализ вкладов государства определенным диапазоном частот, проверьте диапазон частот. Затем перетащите вертикальные курсоры на графике отклика, чтобы указать интересующий диапазон частот. Можно также ввести минимальную и максимальную частоты в текстовые поля. Единица измерения: rad/s. Если модель не имеет TimeUnit = 'seconds', использовать chgTimeUnit для преобразования модели в секунды.

Команда Уменьшить порядок моделей (Reduct Model Order) показывает сравнение частотных откликов между исходной и уменьшенной моделями. Этот график можно использовать для контроля соответствия между исходной моделью и моделью уменьшенного порядка во время эксперимента со значениями параметров уменьшения модели. Доступны следующие графики сравнения:

  • Model response - Частотная характеристика исходной и уменьшенной моделей, показанная как график Боде для моделей SISO и график сингулярного значения для моделей MIMO.

  • Absolute error plot - Сингулярные значения G-Gr, где G является исходной моделью и Gr является текущей уменьшенной моделью. (Для моделей SISO график сингулярного значения является величиной частотной характеристики.)

  • Relative error plot - Сингулярные значения (G-Gr)/G. Этот график полезен, когда модель имеет очень высокий или очень низкий выигрыш в области, важной для приложения. В таких регионах абсолютная ошибка может вводить в заблуждение.

Параметры выбора режима

Укажите нижнюю и верхнюю границы диапазона частот для сохранения динамики. Можно также использовать вертикальные курсоры на графике ответа для задания диапазона. Команда «Уменьшить порядок моделей» отменяет динамику за пределами указанного диапазона.

Дополнительные сведения об этом методе см. в разделе Уменьшение модели выбора режима.

Команда Уменьшить порядок моделей (Reduct Model Order) показывает сравнение частотных откликов между исходной и уменьшенной моделями. Этот график можно использовать для контроля соответствия между исходной моделью и моделью уменьшенного порядка во время эксперимента со значениями параметров уменьшения модели. Доступны следующие графики сравнения:

  • Model response - Частотная характеристика исходной и уменьшенной моделей, показанная как график Боде для моделей SISO и график сингулярного значения для моделей MIMO.

  • Absolute error plot - Сингулярные значения G-Gr, где G является исходной моделью и Gr является текущей уменьшенной моделью. (Для моделей SISO график сингулярного значения является величиной частотной характеристики.)

  • Relative error plot - Сингулярные значения (G-Gr)/G. Этот график полезен, когда модель имеет очень высокий или очень низкий выигрыш в области, важной для приложения. В таких регионах абсолютная ошибка может вводить в заблуждение.

Параметры упрощения полюсов и нулей

Укажите поле для отмены нулевого полюса. Пары полюс-ноль, которые отменяются в пределах этого допуска, удаляются из уменьшенной модели. С помощью ползунка можно изменить допуск и наблюдать результаты на графике ответа.

Параметры результатов

Команда «Уменьшить порядок моделей» создает код, отображающий отклик исходной и сокращенной систем на указанный тип графика. Доступные графики включают в себя:

  • Ответ на шаг

  • Импульсная характеристика

  • График Боде

  • График сингулярного значения (сигма)

  • Полюсно-нулевой график

См. также

Функции

Приложения

Представлен в R2019b