exponenta event banner

Преобразовать модельную скорость

Преобразование моделей между непрерывным временем и дискретным временем и повторная выборка моделей в интерактивном редакторе

Описание

Команда Преобразовать скорость модели (Convert Model Rate) позволяет интерактивно преобразовывать модель LTI между непрерывным временем и дискретным временем. Его также можно использовать для повторной выборки модели дискретного времени. Задача автоматически генерирует код MATLAB ® для сценария в реальном времени.

Чтобы начать работу с задачей Преобразовать скорость модели (Convert Model Rate), выберите модель, которую требуется преобразовать. Можно также указать целевое время выборки, метод преобразования и другие параметры. Задача создает преобразованную модель в рабочей области MATLAB и может создать график отклика, позволяющий отслеживать соответствие между исходной и преобразованной моделями при эксперименте с параметрами преобразования.

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

Функция «Преобразовать скорость модели» генерирует код с помощью следующих функций.

Convert Model Rate task in Live Editor

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

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

  • На вкладке Live Editor выберите Task > Convert Model Rate.

  • В блоке кода в сценарии введите соответствующее ключевое слово, например convert, rate, или c2d. Выбрать Convert Model Rate из предложенных завершений команды.

Примеры

развернуть все

Используйте задачу Преобразовать скорость модели (Convert Model Rate) в интерактивном редакторе для интерактивного преобразования модели из непрерывного времени в дискретное время. Экспериментируйте с различными методами, опциями и графиками ответа. Задача автоматически генерирует код, отражающий выбранные значения. Откройте этот пример для просмотра предварительно настроенного сценария, содержащего задачу «Преобразовать модельную скорость».

Создайте модель функции переноса непрерывного времени.

G = tf([1 -50 300],[1 3 200 350]);

Чтобы дискретизировать эту модель, откройте задачу «Преобразовать скорость модели» в интерактивном редакторе. На вкладке Live Editor выберите Task > Convert Model Rate. В задаче выберите G в качестве модели для преобразования.

Задача автоматически дискретизирует модель, используя время выборки по умолчанию, 0,2 с, и метод преобразования по умолчанию, Zero-order hold. Также создается график Боде, позволяющий сравнивать отклики исходной и преобразованной моделей.

Вертикальная линия на графике показывает частоту Найквиста, связанную со временем выборки по умолчанию. Предположим, вы хотите использовать время выборки 0,15 секунды. Измените время выборки, введя новое значение в поле Время выборки. График ответа автоматически обновляется для отражения нового времени выборки.

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

Метод Тустина может обеспечить лучшее совпадение в частотной области, чем метод удержания нулевого порядка по умолчанию. (См. раздел Методы непрерывного дискретного преобразования.) В окне «Выбор метода преобразования» выберите Bilinear (Tustin) approximation. Первоначально результирующее совпадение частотной области хуже, чем при использовании метода удержания нулевого порядка.

Можно улучшить соответствие с помощью предвоенной частоты. Эта опция вынуждает дискретно-временной отклик совпадать с заданной частотой. Резонанс G пиков примерно при 14 рад/с. Введите это значение для предвоенной частоты. Матч действительно улучшается вокруг резонанса. Однако резонанс очень близок к частоте Найквиста для времени выборки 0,15 с, что ограничивает, насколько близко может быть совпадение.

Задача Преобразовать модельную скорость (Convert Model Rate) может генерировать другие типы графиков ответа. Например, чтобы сравнить ответы во временной области исходной и преобразованной модели, в поле График вывода (Output Plot) выберите step или impulse.

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

По умолчанию созданный код использует sysConverted в качестве имени выходной переменной. Преобразованная модель в рабочем пространстве MATLAB ® с таким именем. Чтобы указать другое имя выходной переменной, введите новое имя в строке сводки в верхней части задачи. Например, измените имя на sys_d.

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

[u,t] = gensig('square',4,10,0.15);
lsim(sys_d,u,t)

Параметры

Выберите модель LTI. Список содержит все подходящие динамические системные модели непрерывного или дискретного времени в рабочей области MATLAB, включая:

  • Числовые модели LTI, такие как tf, ss, или zpk модели.

  • Идентифицированные модели LTI, такие как idss и idtf. (Для использования идентифицированных моделей требуется лицензия на Toolbox™ идентификации системы.)

Можно преобразовать модели SISO или модели MIMO с задержками времени или без них, хотя некоторые методы преобразования доступны только для моделей SISO (см. описание параметра метода). Нельзя использовать функцию «Преобразовать скорость модели» для преобразования обобщенных моделей LTI, таких как genss или uss, модели данных частотного отклика, такие как frdили модели процессов (idproc).

Укажите время выборки преобразованной модели в единицах 1/TimeUnit, где TimeUnit является TimeUnit свойства входной модели.

  • Для дискретизации модели непрерывного времени или повторной выборки модели дискретного времени введите целевое время выборки.

  • Чтобы преобразовать модель дискретного времени в непрерывное время, введите 0.

Выберите метод пересчета курсов. Доступные методы:

  • Zero-order hold

  • First-order hold

  • Impulse-invariant discretization (только непрерывное-дискретное преобразование моделей SISO)

  • Bilinear (Tustin) approximation

  • Zero-pole matching method

  • Least-squares method (только непрерывное-дискретное преобразование моделей SISO)

Сведения о выборе метода преобразования см. в разделе Методы непрерывного дискретного преобразования.

При преобразовании скорости модели с временной задержкой Bilinear (Tustin) approximation или Zero-pole matching method методы округляют временную задержку до ближайшего целого числа, кратного времени выборки. Это округление может ухудшить точность динамики, особенно вблизи частоты Найквиста.

Задайте для параметра Порядок задержки ненулевое целое число, чтобы параметр Преобразовать модельную скорость (Convert Model Rate) аппроксимировал дробную часть задержки с помощью фильтра Тирэна вместо округления. Используйте наименьшее значение, которое дает достаточно точную динамику изменения скорости для приложения. Дополнительные сведения о фильтрах Thiran см. в разделе thiran.

При дискретизации модели непрерывного времени, если система имеет важную динамику на определенной частоте, которую необходимо сохранить при преобразовании курса, можно использовать Bilinear (Tustin) approximation СПОСОБ С ПРЕВАЛИРОВАНИЕМ ЧАСТОТЫ. Этот метод обеспечивает соответствие между исходными и преобразованными откликами на указанной частоте предварительного действия. См. раздел Методы непрерывного дискретного преобразования.

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

  • Bode

  • Step

  • Impulse

  • Pole-Zero

Код, сгенерированный задачей, включает код для создания выбранного графика ответа. Чтобы опустить график ответа, выберите None.

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