Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: перестраиваемый фильтр
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Sneg_87
Можно ли такое сделать: известна (априори) частота сигнала и необходимо отфильтровывать все частоты не входящие в интервал [fs-5Гц,fs+5Гц].
То есть с изменением частоты сигнала и менялись ли под него вот эти интервалы фильтра.
bahurin
Цитата(Sneg_87 @ Dec 13 2009, 20:37) *
Можно ли такое сделать: известна (априори) частота сигнала и необходимо отфильтровывать все частоты не входящие в интервал [fs-5Гц,fs+5Гц].
То есть с изменением частоты сигнала и менялись ли под него вот эти интервалы фильтра.


Ну как бы проблем нет. Надо просто пересчитать к-ты фильтра.
PS каков вопрос таков ответ cranky.gif
AndeyP
Если ширина полосы фиксирована, а меняется только центральная частота, то можно использовать гетеродинный фильтр

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

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


В некоторых задачах (например для эквалайзера) используют БИХ фильтры на основе all-pass 2-го порядка. Такие фильтры очень легко пересчитываются: один коэффициент определяет ширину полосы, второй - центр, меняются независимо, на стабильность фильтра не влияют. Только надо обратить внимание чтобы вариант реализации all-pass не вносил искажений при перестройке.
bahurin
Цитата(AndeyP @ Dec 15 2009, 00:30) *
Если ширина полосы фиксирована, а меняется только центральная частота, то можно использовать гетеродинный фильтр


Если вы обратили внимание автор впроса никак не задал fs. Поэтому говорить о реализации если не задана fs собственно не приходится. Если fs = 100 Гц то это одно а если 100 МГц ... то фильтр +- 5 Гц это уже не тривиальная задача.
TSerg
Осталось выяснить степень вменяемости автора вопроса, а оттуда - каузальность фильтра. smile.gif
Sneg_87
Цитата(AndeyP @ Dec 15 2009, 02:30) *
Если ширина полосы фиксирована, а меняется только центральная частота, то можно использовать гетеродинный фильтр

Диапазон используемых частот от 0,1 до 6,5кГц.

Справится ли БИХ фильтры на основе all-pass с тем, что сигнал помимо несущей частоты может иметь побочные, которые не несут информацию и подлежат отфильтровке?
несущая частота 1кГц, также есть НЧ составляющая на частоте 10Гц и 200Гц которые подлежат отфильтровке.

Предназанчение гетеродина, насколько я помню, из дисциплины по приемникам состоит в перемещении по частоте сигнала, чтоб убрать его боковые составляющие. Думаю без перемещения по частоте можно обойтись, тк не вижу целесообразности по частоте перетаскивать.
bahurin
Цитата(Sneg_87 @ Dec 15 2009, 20:50) *
Диапазон используемых частот от 0,1 до 6,5кГц.


вот задача уже становится понятнее.

Цитата
Справится ли БИХ фильтры на основе all-pass с тем, что сигнал помимо несущей частоты может иметь побочные, которые не несут информацию и подлежат отфильтровке?

Для этого фильтры и создавались. Вам осталось задать требуемое подавление в полосе заграждения и допустимую неравномерность ЧХ в полосе пропускания.

Цитата
несущая частота 1кГц, также есть НЧ составляющая на частоте 10Гц и 200Гц которые подлежат отфильтровке.

Предназанчение гетеродина, насколько я помню, из дисциплины по приемникам состоит в перемещении по частоте сигнала, чтоб убрать его боковые составляющие. Думаю без перемещения по частоте можно обойтись, тк не вижу целесообразности по частоте перетаскивать.

А вот здесь вы ошибаетесь. Смысл применения гетеродина заключается в том что нет надобности пересчитывать фильтр. Вы один раз рассчитываете ФНЧ c требуемыми характеристиками и квадратурным гетеродином нужную частоту спускаете в 0 фильтруете ФНЧ и квадратурным модулятором возвращаете назад. На всякий случай вот ссылка как сделать гетеродин с фильтром и ссылка как вернуть назад. Т.о. вместо перестройки фильтра вы будете перестраивать сигнал, это проще.
AndeyP
Цитата
Предназанчение гетеродина, насколько я помню, из дисциплины по приемникам состоит в перемещении по частоте сигнала, чтоб убрать его боковые составляющие. Думаю без перемещения по частоте можно обойтись, тк не вижу целесообразности по частоте перетаскивать.


Вариант с гетеродином хорош прежде всего тем, что никак не ограничивает в выборе фильтра, поскольку может использоваться с любым фильтром в любой реализации, и идеально подходит для перебора вариантов решения, когда еще не ясно, какой фильтр лучше подойдет.
При пересчете фильтра возникают проблемы связанные как с устойчивостью (если БИХ), так и с необходимостью пересчитывать состояние фильтра, да и сам пересчет может оказаться сложнее чем фильтрация. Для КИХ эти проблемы решаются просто, для БИХ - намного сложнее, и all-pass пожалуй является исключением из правил.
В прикрепленной статье описание эквалайзера на основе all-pass. Полосовой (BandPass) фильтр получается как частный случай peaking фильтра. Только чтобы не было искажений при перестройке, вроде бы нужна схема с 4-мя умножителями на задержку, но если плавно менять то в принципе любая может подойти.
ANV
Цитата(Sneg_87 @ Dec 15 2009, 19:50) *
Диапазон используемых частот от 0,1 до 6,5кГц.

несущая частота 1кГц, также есть НЧ составляющая на частоте 10Гц и 200Гц которые подлежат отфильтровке.


Имеется в виду, что нужен перенастраиваемый полосовой фильтр с центральной частотой в диапазоне 0,1-6,5 кГц и шириной полосы 10 Гц?

Если да, то посмотрите на оптимальные управляемые волновые цифровые фильтры (пристегнул описание).

Нажмите для просмотра прикрепленного файла
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.