Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Гребенчатый фильтр
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Абырвалг
Надо сделать гребенчатый фильтр (peak filter). Он должен выделить несколько первых нечетных гармоник некоторой частоты. Можно посчитать через fdesign.comb, можно через fdatool, и все бы замечательно,
но считая таким образом, желая получить пики на нужных частотах, можно играться только с порядком фильтра и частотой семплирования. Порядок ещё ладно, но частота семплирования другая, делать передескритизацию очень не хочется.

При расчете фильтра с одним пиком можно и частоту семплирования и частоту пика задавать произвольно. Нельзя ли как-то отдельно посчитать секции второго порядка, поставить их последовательно и чтобы это нормально работало?
Самурай
Цитата(Абырвалг @ May 24 2012, 15:58) *
Надо сделать гребенчатый фильтр (peak filter). Он должен выделить несколько первых нечетных гармоник некоторой частоты. Можно посчитать через fdesign.comb, можно через fdatool, и все бы замечательно,
но считая таким образом, желая получить пики на нужных частотах, можно играться только с порядком фильтра и частотой семплирования. Порядок ещё ладно, но частота семплирования другая, делать передескритизацию очень не хочется.


Если "несколько" это сэмь-восэмь или меньше, то банк фильтров наверно проще, если больше, то надо смотреть, возможно по ресурсам будет уже выгоднее делать гребенку + передискретизацию. Ну и собственно, а почему бы не работать на той частоте, которая удобна, или на нее завязано еще что-то?

Опять-таки, если нужно только несколько гармоник, то помимо гребенчатого фильтра потребуется еще как минимум и ФНЧ, дабы отсечь лишние гармоники, банк фильтров скорее всего будет проще.

Цитата(Абырвалг @ May 24 2012, 15:58) *
При расчете фильтра с одним пиком можно и частоту семплирования и частоту пика задавать произвольно. Нельзя ли как-то отдельно посчитать секции второго порядка, поставить их последовательно и чтобы это нормально работало?


Можно, только поставить их не последовательно, а параллельноsm.gif И получить простейший банк фильтров. Выходы фильтров можно просуммировать (тогда это будет аналог гребенчатого фильтра), а можно и не суммировать, если нужны значения отдельных гармоник.

Абырвалг
Цитата(Самурай @ May 24 2012, 19:48) *
Если "несколько" это сэмь-восэмь или меньше, то банк фильтров наверно проще, если больше, то надо смотреть, возможно по ресурсам будет уже выгоднее делать гребенку + передискретизацию. Ну и собственно, а почему бы не работать на той частоте, которая удобна, или на нее завязано еще что-то?


Несколько - это от 3 до 6, еще не решил точно. На существующей частоте одновременно работают другие фильтры.

Цитата(Самурай @ May 24 2012, 19:48) *
Опять-таки, если нужно только несколько гармоник, то помимо гребенчатого фильтра потребуется еще как минимум и ФНЧ, дабы отсечь лишние гармоники, банк фильтров скорее всего будет проще.


Я видимо чота не понимаю. Расчитаный в mathlab "peak filter" в виде секций второго порядка, судя по всему, просто включенные последовательно секции и то, что не попадает им в полосу ими же отсекается.

Цитата(Самурай @ May 24 2012, 19:48) *
Можно, только поставить их не последовательно, а параллельноsm.gif И получить простейший банк фильтров. Выходы фильтров можно просуммировать (тогда это будет аналог гребенчатого фильтра), а можно и не суммировать, если нужны значения отдельных гармоник.


Так и сделаю, скорее всего. Спасибо!
Абырвалг
Ещё нюанс. При последовательном включении секций внеполосные сигналы давятся сильнее. При параллельном мало того что хуже давятся, ещё их после складывать надо будет.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.