Control System Toolbox™ предлагает несколько методов дискретизации и интерполяции для преобразования динамических моделей системы между непрерывным временем и дискретным временем и для повторной дискретной дискретизации моделей времени. Некоторые методы, как правило, обеспечивают лучшее совпадение частотного диапазона между исходной и преобразованной системами, в то время как другие обеспечивают лучшее совпадение во временном интервале. Используйте следующую таблицу, чтобы помочь выбрать метод, который лучше всего подходит для вашего приложения.
Метод дискретизации | Использовать когда |
---|---|
Удержание нулевого порядка | Вы хотите получить точную дискретизацию во временном интервале для входов лестницы. |
Удержание первого порядка | Вы хотите получить точную дискретизацию во временном интервале для кусочно-линейных входов. |
Импульсно-инвариантное отображение (только непрерывное-дискретное преобразование) | Вы хотите получить точную дискретизацию во временном интервале для входов импульсного обучения. |
Тастин Приближение |
|
Эквиваленты, совпадающие с нулями полюсов |
|
Наименьшие квадраты (только непрерывное-в-дискретное преобразование) |
|
Для получения информации о том, как задать метод преобразования в командной строке, см. c2d
, d2c
, и d2d
. Можно интерактивно экспериментировать с различными методами дискретизации в Live Editor с помощью задачи Преобразовать скорость модели (Convert Model Rate).
Метод удержания нулевого порядка (ZOH) обеспечивает точное соответствие между системами непрерывного и дискретного времени во временном интервале для входов лестницы.
Следующая блок-схема иллюстрирует Hd дискретизации с удержанием нулевого порядка (z) линейной модели H (s) в непрерывном времени.
Блок ZOH генерирует входной сигнал u (t) в непрерывном времени, удерживая каждое значение дискретизации u (k) постоянным в течение одного периода дискретизации:
u (t) сигнала является входом в непрерывную систему H (s). Выходной y [k] является результатом дискретизации y (t) каждые Ts секунды.
И наоборот, учитывая дискретную систему Hd (z), d2c
формирует непрерывную системную H (s). Дискретизация ZOH H (s) совпадает с Hd ( z).
Дискретное преобразование ZOH в непрерывное имеет следующие ограничения:
d2c
невозможно преобразовать модели LTI с полюсами при z = 0.
Для моделей LTI в дискретном времени с отрицательными реальными полюсами, ZOH d2c
преобразование создает непрерывную систему с более высоким порядком. Порядок модели увеличивается, потому что отрицательный действительный полюс в z области преобразуется в чистое мнимое значение в s области. Такое отображение приводит к модели в непрерывном времени со комплексными данными. Чтобы избежать этой проблемы, программное обеспечение вместо этого вводит сопряженную пару сложных полюсов в s области. См. пример преобразования системы дискретного времени в непрерывное.
Можно использовать метод ZOH, чтобы дискретизировать модели SISO или MIMO в непрерывном времени с задержками времени. Метод ZOH дает точную дискретизацию для систем с входом задержками, выходом задержками или задержками транспорта.
Для систем с внутренними задержками (задержки в циклах обратной связи) метод ZOH приводит к приблизительной дискретизации. Следующий рисунок иллюстрирует систему с внутренней задержкой.
Для таких систем, c2d
выполняет следующие действия для вычисления приблизительной дискретизации ZOH:
Разлагает задержку с .
Поглощает дробную задержку в H (s ).
Дискретизирует H (s) к H (z).
Представляет целочисленный фрагмент kTs задержки как внутреннюю задержку в дискретном времени z–k. Окончательная дискретизированная модель появляется на следующем рисунке:
Метод удержания первого порядка (FOH) обеспечивает точное соответствие между системами непрерывного и дискретного времени во временном интервале для кусочно-линейных входов.
FOH отличается от ZOH базовым механизмом удержания. Чтобы превратить входные выборки u [k] в непрерывную входную u (t), FOH использует линейную интерполяцию между выборками:
В целом, этот метод более точен, чем ZOH для систем, управляемых плавными входами.
Этот метод FOH отличается от стандартного причинного FOH и более уместно называется triangle approximation (см. [2], стр. 228). Метод также известен как наклонно-инвариантное приближение.
Можно использовать метод FOH, чтобы дискретизировать модели SISO или MIMO в непрерывном времени с задержками времени. Метод FOH обрабатывает задержки так же, как и метод ZOH. Смотрите метод ZOH для систем с задержками по времени.
Импульсно-инвариантное отображения создает модель в дискретном времени с той же импульсной характеристикой, что и непрерывная система времени. Для примера сравните импульсную характеристику непрерывной системы первого порядка с импульсно-инвариантной дискретизацией:
G = tf(1,[1,1]);
Gd1 = c2d(G,0.01,'impulse');
impulse(G,Gd1)
График импульсной характеристики показывает, что импульсные характеристики непрерывных и дискретизированных систем совпадают.
Можно использовать импульсно-инвариантное отображения, чтобы дискретизировать модели SISO или MIMO в непрерывном времени с задержками во времени, за исключением того, что метод не поддерживает ss
модели с внутренними задержками. Для поддерживаемых моделей импульсно-инвариантное отображения приводит к точной дискретизации временной задержки.
Tustin или билинейное приближение приводит к лучшему соответствию частотного диапазона между непрерывной и дискретизированной системами. Этот метод связывает s передаточные функции -область и z-domain с помощью приближения:
В c2d
преобразования, Hd дискретизации (z) непрерывной передаточной функции H (s) является:
Точно так же d2c
преобразование полагается на обратное соответствие
При преобразовании модели пространства состояний с помощью метода Тастина состояния не сохраняются. Преобразование состояния зависит от матриц пространства состояний и от того, имеет ли система задержки во времени. Например, для явной (E = I) модели в непрерывном времени без временных задержек, вектор состояния w [k] дискретизированной модели связан с вектором состояния в непрерывном времени x (t) как:
Ts является шагом расчета модели в дискретном времени. A и B являются матрицами пространства состояний модели непрерывного времени.
Приближение Тастина не задано для систем с полюсами в z = -1 и плохо обусловлено для систем с полюсами около z = -1.
Если ваша система имеет важную динамику на определенной частоте, которую вы хотите сохранить преобразование, можно использовать метод Тустина с предварительной обработкой частоты. Этот способ обеспечивает соответствие между непрерывными и дискретными временными характеристиками на предварительной частоте.
В приближении Тастина с предварительной обработкой частоты используется следующее преобразование переменных:
Это изменение переменной обеспечивает соответствие частотных характеристик непрерывного и дискретного времени на предваренной частотной ω из-за следующего соответствия:
Можно использовать приближение Тастина, чтобы дискретизировать модели SISO или MIMO в непрерывном времени с задержками времени.
По умолчанию метод Tustin округляет любую задержку до ближайшего кратного шага расчета. Поэтому для любой временной задержки tau
, целочисленный фрагмент задержки, k*Ts
, преобразуется в задержку k
периоды дискретизации в дискретизированной модели. Этот подход игнорирует остаточную дробную задержку, tau
-
k*Ts
.
Можно аппроксимировать дробный фрагмент задержки дискретным полнопроходным фильтром (фильтром Thiran) заданного порядка. Для этого используйте FractDelayApproxOrder
опция c2dOptions
. См. «Повышение точности дискретизированной системы с временной задержкой» для примера.
Чтобы понять, как метод Тастина обрабатывает системы с задержками времени, рассмотрите следующую модель пространства состояний SISO G (s). Модель имеет входные τi задержки, выходные τo задержки и внутренние τ задержки.
Следующий рисунок показывает общий результат дискретизации G (s) с использованием метода Тустина.
По умолчанию, c2d
преобразует задержки в целочисленные задержки. c2d
команда вычисляет задержки целого числа путем округления каждой временной задержки до ближайшего кратного шага расчета Ts. Таким образом, в случае по умолчанию mi = round (τi/ Ts), mo = round
(τo/ Ts), и m = round
(τ / Ts). Также в этом случае Fi (z) = Fo (z) = F (z) = 1.
Если вы задаете FractDelayApproxOrder
к ненулевому значению, c2d
аппроксимирует дробный фрагмент временных задержек фильтрами Thiran Fi (z), Fo (z) и F ( z).
Фильтры Thiran добавляют дополнительные состояния к модели. Максимальное количество дополнительных состояний для каждой задержки FractDelayApproxOrder
.
Для примера для входа τi задержки порядок фильтра Thiran Fi (z) следующий:
order
(Fi (<reservedrangesplaceholder1>)) = max
(ceil
(τi / Ts), FractDelayApproxOrder
).
Если ceil
(τi / Ts) <FractDelayApproxOrder
, Fi фильтра Thiran (z) аппроксимирует весь входной τi задержки. Если ceil
(τi / Ts)> FractDelayApproxOrder
, фильтр Thiran только аппроксимирует фрагмент задержки входа. В этом случае, c2d
представляет оставшуюся часть входа задержки как цепь модуля задержек z–mi, где
mi = ceil
(τi / Ts) – FractDelayApproxOrder
c2d
использует фильтры и FractDelayApproxOrder
Thiran аналогичным образом аппроксимировать выходные τo задержки и внутренние τ задержки.
Когда вы дискретизируетеtf
и zpk
моделирует с использованием метода Тастина, c2d
сначала объединяет все входные, выходные и транспортные задержки в одну задержку передачи τ TOT для каждого канала .c2d
затем аппроксимирует TOT τ качестве фильтра Thiran и цепи единичных задержек таким же образом, как описано для каждой из временных задержек вss
модели.
Для получения дополнительной информации о фильтрах Thiran, смотрите thiran
страницу с описанием и [4].
Этот метод преобразования, который вычисляет эквиваленты соответствия нулевого полюса, применяется только к системам SISO. Непрерывные и дискретизированные системы имеют совпадающие усиления постоянного тока. Их полюса и нули связаны преобразованием:
где:
zi - i-й полюс или нуль системы дискретного времени.
si - i-й полюс или нуль системы непрерывного времени.
Ts является шагом расчета.
Для получения дополнительной информации см. раздел [2].
Можно использовать соответствие нулевого полюса, чтобы дискретизировать модели непрерывного времени SISO с временной задержкой, за исключением того, что метод не поддерживает ss
модели с внутренними задержками. Метод соответствия нулевого полюса обрабатывает задержки так же, как приближение Тастина. Смотрите приближение Тастина для систем с задержками по времени.
Метод наименьших квадратов минимизирует ошибку между частотными характеристиками систем непрерывного времени и дискретного времени до частоты Найквиста с помощью метода оптимизации с подгонкой векторов. Этот метод полезен, когда вы хотите захватить быструю динамику системы, но должны использовать больший шаг расчета, например, когда вычислительные ресурсы ограничены.
Этот метод поддерживается только c2d
и только для систем SISO.
Как и при приближении Тастина и совпадении с нулями, метод наименьших квадратов обеспечивает хорошее соответствие между частотными характеристиками исходной системы непрерывного времени и преобразованной системы дискретного времени. Однако при использовании метода наименьших квадратов с:
Тот же шаг расчета, что и приближение Тастина или соответствие нулевого полюса, вы получаете меньшее различие между непрерывной и дискретной частотными характеристиками.
Более низкий шаг расчета, чем то, что вы использовали бы с Tustin приближения или соответствие нули полюсов, вы все еще можете получить результат, который удовлетворяет вашим требованиям. Это полезно, если вычислительные ресурсы ограничены, поскольку более медленный шаг расчета означает, что процессор должен работать меньше.
[1] Öström, K.J. and B. Wittenmark, Computer-Controlled Systems: Theory and Design, Prentice Hall, 1990, pp. 48-52.
[2] Franklin, G.F., Powell, D.J., and Workman, M.L., Digital Control of Динамические Системы (3-е издание), Prentice Hall, 1997.
[3] Smith, J.O. III, «Impulse Invariant Method», Physical Audio Signal Processing, August 2007. https://www.dsprelated.com/dspbooks/pasp/Impulse_Invariant_Method.html
.
[4] T. Laakso, V. Valimaki, «Splitting the Unit Delay», IEEE Signal Processing Magazine, Vol. 13, No. 1, p.30-60, 1996.
c2d
| c2dOptions
| d2c
| d2cOptions
| d2d
| d2dOptions
| thiran