lp2bp

Преобразуйте lowpass аналоговые фильтры к полосно-пропускающим

Синтаксис

[bt,at] = lp2bp(b,a,Wo,Bw)
[At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw)

Описание

lp2bp преобразовывает аналоговые прототипы фильтра lowpass с сокращением угловая частота 1 рад/с в полосовые фильтры с желаемой пропускной способностью и центральная частота. Преобразование является одним шагом в процессе создания цифровых фильтров для butter, cheby1, cheby2, и ellip функции.

lp2bp может выполнить преобразование на двух различных представлениях линейной системы: форма передаточной функции и форма пространства состояний. В обоих случаях входная система должна быть аналоговым прототипом фильтра.

Форма передаточной функции (полином)

[bt,at] = lp2bp(b,a,Wo,Bw) преобразовывает аналоговый прототип фильтра lowpass, данный полиномиальными коэффициентами в полосовой фильтр с центральной частотой Wo и пропускная способность Bw. Векторы-строки b и a задайте коэффициенты числителя и знаменатель прототипа в убывающих степенях s.

B(s)A(s)=b(1)sn++b(n)s+b(n+1)a(1)sm++a(m)s+a(m+1)

Скаляры Wo и Bw задайте центральную частоту и пропускную способность в модулях рад/с. Для фильтра с ребром нижней полосы w1 и ребро верхней полосы w2, используйте Wo = sqrt(w1*w2) и Bw = w2-w1.

lp2bp возвращается преобразованная частота просачиваются векторы-строки bt и at.

Форма пространства состояний

[At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw) преобразует пространство состояний непрерывного времени прототип фильтра lowpass в матрицах ABCD показанный ниже

x˙=Ax+Buy=Cx+Du

в полосовой фильтр с центральной частотой Wo и пропускная способность Bw. Для фильтра с ребром нижней полосы w1 и ребро верхней полосы w2, используйте Wo = sqrt(w1*w2) и Bw = w2-w1.

Полосовой фильтр возвращен в матрицах At, Btct dt .

Алгоритмы

lp2bp очень точная формулировка пространства состояний классического аналогового преобразования частоты фильтра. Рассмотрите систему в пространстве состояний

x˙=Ax+Buy=Cx+Du

где u является входом, x является вектором состояния, и y является выход. Преобразование Лапласа первого уравнения (принимающий нулевые начальные условия)

sX(s)=AX(s)+BU(s)

Теперь, если полосовой фильтр должен иметь центральную частоту ω0 и пропускная способность B w, стандартный s - доменное преобразование

s=Q(p2+1)/p

где Q = ω0/Bw и p = s/ω0. Заменение этим для s в Лапласе преобразовали уравнение пространства состояний и рассмотрение оператора p как d/dt результаты в

Qx¨+Qx=A˙x+Bu˙

или

Qx¨A˙xBu˙=Qx

Теперь задайте

Qω˙=Qx

который, когда подставлено, приводит к

Qx˙=Ax+Qω+Bu

Последние два уравнения дают уравнения состояния. Напишите им в стандартной форме и умножьте дифференциальные уравнения на ω0, чтобы восстановить время/частотное масштабирование, представленное p и найти матрицы состояния для полосового фильтра:

Q = Wo/Bw; [ma,m] = size(A);
At = Wo*[A/Q eye(ma,m);-eye(ma,m) zeros(ma,m)];
Bt = Wo*[B/Q; zeros(ma,n)];
Ct = [C zeros(mc,ma)];
Dt = d;

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

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| | | |

Представлено до R2006a