Страница 1 из 18

Целочисленное проектирование фильтров

Добавлено: 08 апр 2015, 14:41
Santik
Тема появилась благодаря пользователю Vlad27, предоставившему ссылки на ряд интересных статей:
07-04-2015_11-13-05.zip
(7.47 МБ) 585 скачиваний
Попытаемся оценить, насколько хороши предложенные фильтры.
Пока опираться буду на статью "ctat_3.pdf", где подробно описаны характеристики фильтра.
Gauss2.JPG
Для начала я планирую посмотреть, что собой представляют "звенья" этого фильтра.
Для каждого звена посмотрим H(z).
Потом "тупо" умножим полиномы и посмотрим, что из себя представляет полученный фильтр 16 порядка...

Может он ничем от Кауэра 10 порядка ( с округлёнными коэффициентами) и не отличается? :D :D :D
(Это моё такое скептическое предположение :D :D :D ) Надеюсь, что я не прав!

Re: Целочисленное проектирование фильтров

Добавлено: 08 апр 2015, 19:30
Santik
Ну вот, начало положено:
1_звено.JPG
О, как интересно - 1 звено - "расходящийся фильтр" :D

Re: Целочисленное проектирование фильтров

Добавлено: 08 апр 2015, 20:39
Santik
Вот характеристики фильтра по звеньям:
Звено1-8.JPG
Результат перемножения H1(z)...H8(z):
Результат.JPG
ЦНП.JPG
Интересно, что "фильтром" на частоту близкую к 0.5 являются только звенья с номерами 1,3,8.
Значит остальные 5 звеньев "заняты" линеаризацией ФЧХ ?

Надо будет еще ФЧХ построить.... :D

Re: Целочисленное проектирование фильтров

Добавлено: 08 апр 2015, 21:22
Santik
И вот сейчас появились вопросы к Vlad27:
1. Хотелось бы увидеть фильтр не на 0.5
Дело в том, что частота 0.5 - имеет некий "сакральный" смысл... :D И все нечётные коэффициенты "классических" полосовых фильтров (Баттерворта, Чебышева, Кауэра) на этой частоте равны 0. Т.е. число "реальных" коэффициентов почти в 2 раза меньше.
2. Хотелось бы увидеть фильтр с полосой, хотя бы 0.2 (и на центральную частоту не равную 0.5)

Re: Целочисленное проектирование фильтров

Добавлено: 09 апр 2015, 05:54
Santik
Конечно интересно сравнить ЦНП-фильтр с другими известными типами фильтров, ну например:
Фильтр 1:
b0=1. b1=0. b2=0.939
a0=6.98E+5 a1=0. a2=6.98E+5
Сравнение фильтров.JPG

Re: Целочисленное проектирование фильтров

Добавлено: 10 апр 2015, 17:22
Vlad27
Конечно, Александр, гауссов фильтр можно синтезировать на любую
частоту, а не только 0,5. При 0,5 можно перейти к фильтру Бесселя
без боковых лепестков вообще - синтезировать его гораздо проще.
Когда я решал эту залдачу (довольно давно) серединка была выбрана
случайно, по умолчанию что-ли. Но сужать полосу фильтра уже не удаётся,
даже более высоким порядком фильтра. Сейчас получено решение
двухполосного гауссова фильтра, позволяющего осуществлять гауссову
фильтрацию сразу двух сигналов. :)

Re: Целочисленное проектирование фильтров

Добавлено: 10 апр 2015, 18:12
Santik
Vlad27 писал(а):Конечно, Александр, гауссов фильтр можно синтезировать на любую
частоту, а не только 0,5....
Это понятно. Вопрос в том , если с теми же параметрами фильтр создать не на частоту 0.5, а на 0.3 у него порядок 16 сохраниться? Или порядок получится более высокий?

Re: Целочисленное проектирование фильтров

Добавлено: 13 апр 2015, 11:15
Vlad27
В ЦЦФ, как и в ЦФ ведь всё наоборот по сравнению с аналоговыми фильтрами.
В аналог.фильтрах - чем выше частота, тем сложнее получить хорошую селективность
(прямоугольность АЧХ) . А в ЦЦФ - чем меньше угол (цифровая частота), тем сложнее.
То есть при той же ширине полосы пропускания гауссова фильтра, его легче реализовать
на более высоких цифровых частотах, чем на малых углах (или с меньшим порядком).
А сдвинуть можно куда угодно, главное подавить боковые лепестки АЧХ.

Re: Целочисленное проектирование фильтров

Добавлено: 13 апр 2015, 19:06
Santik
Да я понял теперь. Всё равно Ваша H(z) - это произведение Hn(z) - сдвинутых относительно 0.5, причем ни одна на частоту 0.5 не попадает (все а1, b1 не нулевые)!
Было бы интересно для фильтра 0.5 "насильно" задать в одном из звеньев а1, b1 =0 и оптимизировать все остальные коэффициенты. :shock:

Re: Целочисленное проектирование фильтров

Добавлено: 15 апр 2015, 16:32
Santik
Продолжаем "рассматривать" фильтр:
Gauss8.JPG