Сгенерируйте фильтр дробной задержки на основе приближения Тирана
sys
= thiran(tau
, Ts
)
дискретизирует задержку в непрерывном времени sys
= thiran(tau
, Ts
)tau
использование фильтра Thiran для аппроксимации дробной части задержки. Ts
задает шаг расчета.
|
Задержка дискретизации. |
|
Шаг расчета. |
|
Дискретное время |
Аппроксимируйте и дискретизируйте задержку времени, которая является нецелым числом, кратным целевому шагу расчета.
sys1 = thiran(2.4, 1) Transfer function: 0.004159 z^3 - 0.04813 z^2 + 0.5294 z + 1 ----------------------------------------- z^3 + 0.5294 z^2 - 0.04813 z + 0.004159 Sample time: 1
Задержка составляет 2,4 с, и шаг расчета составляет 1 с. Поэтому sys1
является передаточной функцией в дискретном времени порядка 3.
Дискретизируйте временную задержку, которая является целым числом, кратным целевому шагу расчета.
sys2 = thiran(10, 1) Transfer function: 1 ---- z^10 Sample time: 1
Если tau
является целым числом, кратным Ts
, затем sys
представляет чистую дискретную задержку z–N, с N = tau/Ts
. В противном случае sys
- фильтр БИХ (БИХ) с дискретным временем, универсальным и бесконечным порядком <reservedrangesplaceholder0>
.
thiran
аппроксимирует и дискретизирует чистую задержку времени. Чтобы аппроксимировать чистую задержку в непрерывном времени без дискретизации, используйте pade
. Чтобы дискретизировать модели в непрерывном времени с задержками, используйте c2d
.
Фильтр дробной задержки Thiran имеет следующую форму:
Коэффициенты a 0 ,..., aN заданы:
где D = τ/ Ts и N = ceil (D) - порядок фильтра. См. раздел [1].
[1] T. Laakso, V. Valimaki, «Splitting the Unit Delay», IEEE Signal Processing Magazine, Vol. 13, No. 1, p.30-60, 1996.