exponenta event banner

ellipord

Минимальный порядок для эллиптических фильтров

Описание

пример

[n,Wn] = ellipord(Wp,Ws,Rp,Rs) возвращает наименьший порядок, n, цифрового эллиптического фильтра не более Rp дБ пульсации полосы пропускания и не менее Rs дБ затухания в полосе останова. Wp и Wsсоответственно частоты полосы пропускания и границы полосы останова фильтра, нормализованные от 0 до 1, где 1 соответствует δ рад/выборка. Скаляр (или вектор) соответствующих частот отсечения, Wn, также возвращается. Чтобы создать эллиптический фильтр, используйте выходные аргументы n и Wn в качестве входных данных для ellip.

[n,Wn] = ellipord(Wp,Ws,Rp,Rs,'s') находит минимальный заказ n и частоты отсечки Wn для аналогового эллиптического фильтра. Укажите частоты Wp и Ws в радианах в секунду. Полоса пропускания или полоса останова может быть бесконечной.

Примеры

свернуть все

Для данных 1000 Гц сконструировать фильтр нижних частот с менее чем 3 дБ пульсации в полосе пропускания, определяемой от 0 до 40 Гц, и по меньшей мере 60 дБ пульсации в полосе останова, определяемой от 150 Гц до частоты Найквиста, 500 Гц. Найдите порядок фильтрации и частоту отсечки.

Wp = 40/500;
Ws = 150/500;
Rp = 3;
Rs = 60;
[n,Wp] = ellipord(Wp,Ws,Rp,Rs)
n = 4
Wp = 0.0800

Задайте фильтр в разрезах второго порядка и постройте график частотной характеристики.

[z,p,k] = ellip(n,Rp,Rs,Wp);
sos = zp2sos(z,p,k);
freqz(sos,512,1000)
title(sprintf('n = %d Elliptic Lowpass Filter',n))

Figure contains 2 axes. Axes 1 with title n = 4 Elliptic Lowpass Filter contains an object of type line. Axes 2 contains an object of type line.

Сконструировать полосовой фильтр с полосой пропускания от 60 Гц до 200 Гц с не более 3 дБ пульсации и затуханием не менее 40 дБ в пробках. Укажите частоту дискретизации 1 кГц. Иметь стопорные полосы шириной 50 Гц с обеих сторон полосы пропускания. Найдите порядок фильтров и частоты отсечения.

Wp = [60 200]/500;
Ws = [50 250]/500;
Rp = 3;
Rs = 40;

[n,Wp] = ellipord(Wp,Ws,Rp,Rs)
n = 5
Wp = 1×2

    0.1200    0.4000

Задайте фильтр в разрезах второго порядка и постройте график частотной характеристики.

[z,p,k] = ellip(n,Rp,Rs,Wp);
sos = zp2sos(z,p,k);

freqz(sos,512,1000)
title(sprintf('n = %d Elliptic Bandpass Filter',n))

Figure contains 2 axes. Axes 1 with title n = 5 Elliptic Bandpass Filter contains an object of type line. Axes 2 contains an object of type line.

Входные аргументы

свернуть все

Угловая (отсечная) частота полосы пропускания, заданная как скаляр или двухэлементный вектор со значениями от 0 до 1, с 1, соответствующим нормированной частоте Найквиста, δ рад/выборка.

  • Если Wp и Ws являются скалярами и Wp < Ws, то ellipord возвращает порядок и частоту отсечения фильтра нижних частот. Полоса останова фильтра находится в диапазоне от Ws до 1, а полоса пропускания находится в диапазоне от 0 до Wp.

  • Если Wp и Ws являются скалярами и Wp > Ws, то ellipord возвращает порядок и частоту отсечения фильтра верхних частот. Полоса останова фильтра находится в диапазоне от 0 до Ws а полоса пропускания находится в диапазоне от Wp на 1.

  • Если Wp и Ws являются как векторами, так и интервалом, указанным Ws содержит значение, указанное Wp (Ws(1) < Wp(1) < Wp(2) < Ws(2)), то ellipord возвращает частоты порядка и отсечки полосового фильтра. Полоса останова фильтра находится в диапазоне от 0 до Ws(1) и от Ws(2) на 1. Диапазон пропускания: Wp(1) кому Wp(2).

  • Если Wp и Ws являются как векторами, так и интервалом, указанным Wp содержит значение, указанное Ws (Wp(1) < Ws(1) < Ws(2) < Wp(2)), то ellipord возвращает порядковые и пороговые частоты полосового фильтра. Полоса останова фильтра находится в диапазоне от Ws(1) кому Ws(2). Полоса пропускания находится в диапазоне от 0 до Wp(1) и от Wp(2) на 1.

Типы данных: single | double

Примечание

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

Угловая частота стоп-полосы, заданная как скаляр или двухэлементный вектор со значениями от 0 до 1, с 1, соответствующим нормированной частоте Найквиста, δ рад/выборка.

Типы данных: single | double

Пульсация полосы пропускания, заданная как скаляр, выраженный в дБ.

Типы данных: single | double

Затухание полосы останова, указанное как скаляр, выраженный в дБ.

Типы данных: single | double

Выходные аргументы

свернуть все

Наименьший порядок фильтра, возвращаемый как целочисленный скаляр.

Частоты отсечения, возвращаемые как скаляр или вектор.

Алгоритмы

ellipord использует формулу предсказания порядка эллиптического фильтра нижних частот, описанную в [1]. Функция выполняет свои вычисления в аналоговой области как для аналогового, так и для цифрового случая. Для цифрового случая он преобразует частотные параметры в s-область перед оценкой порядка и собственных частот, а затем преобразует их обратно в z-область.

ellipord первоначально разрабатывает прототип фильтра нижних частот путем преобразования частот полосы пропускания требуемого фильтра в 1 рад/с (для фильтров нижних и верхних частот) и в -1 и 1 рад/с (для полосовых и полосовых фильтров). Затем вычисляется минимальный порядок, необходимый для фильтра нижних частот в соответствии со спецификацией стоп-полосы.

Ссылки

[1] Rabiner, Лоуренс Р. и B. Золото. Теория и применение цифровой обработки сигналов. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1975.

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

.

См. также

| | |

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