Задайте дискретные передаточные функции в формате DSP
sys = filt(num,den)
sys = filt(num,den,Ts)
sys = filt(M)
В цифровой обработке сигналов (DSP) принято записывать передаточные функции как рациональные выражения в z−1 и упорядочить числитель и знаменатель терминов в возрастающих степенях z−1. Для примера:
Функция filt
предусмотрена для облегчения спецификации передаточных функций в формате DSP.
sys = filt(num,den)
создает передаточную функцию в дискретном времени sys
с числителем (ами) num
и знаменатель (ы) den
. Значение шага расчета остается неопределенным (sys.Ts = -1
) и выхода sys
является объектом TF.
sys = filt(num,den,Ts)
далее определяет значение шага расчета Ts
(в секундах).
sys = filt(M)
задает статический фильтр с матрицей усиления M
.
За любым из предыдущих синтаксисов могут следовать пары имя/значение свойства вида
'Property',Value
Каждая пара задает конкретное свойство модели, например, входные имена или переменную передаточной функции. Для получения информации о доступных свойствах и их значениях смотрите tf
страница с описанием.
Для передаточных функций SISO, num
и den
Векторы-строки содержат коэффициенты числителя и знаменателя, упорядоченные в возрастающих степенях z−1. Для примера, den = [1 0.4 2]
представляет полином 1 + 0,4 z−1 + 2 z−2.
Передаточные функции MIMO рассматриваются как массивы передаточных функций SISO (по одному на канал ввода-вывода), каждая из которых характеризуется числителем и знаменателем. Входные параметры num
и den
являются тогда массивами ячеек векторов-строк, так что:
num
и den
иметь столько строк, сколько выходов, и столько столбцов, сколько входов.
Их (i, j) значения num{i,j}
и den{i,j}
задайте числитель и знаменатель передаточной функции от входа j
для вывода i
.
Если все записи SISO имеют одинаковый знаменатель, можно также установить den
в представление векторов-строк этого общего знаменателя.
Создайте цифровой фильтр с двумя входами с входными именами 'channel1'
и 'channel2'
:
num = {1 , [1 0.3]}; den = {[1 1 2] ,[5 2]}; H = filt(num,den,'inputname',{'channel1' 'channel2'})
Этот синтаксис возвращает:
Transfer function from input "channel1" to output: 1 ----------------- 1 + z^-1 + 2 z^-2 Transfer function from input "channel2" to output: 1 + 0.3 z^-1 ------------ 5 + 2 z^-1 Sample time: unspecified
filt
ведет себя как tf
с Variable
значение свойства установлено в 'z^-1'
. См. tf
запись ниже для получения дополнительной информации.