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

Все что касается фильтрации
Vlad27
Сообщения: 86
Зарегистрирован: 06 апр 2015, 10:09
Откуда: г, Нижний Новгород (rif27@bk.ru)

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

Сообщение Vlad27 »

Santik писал(а):Да я понял теперь. Всё равно Ваша H(z) - это произведение Hn(z) - сдвинутых относительно 0.5, причем ни одна на частоту 0.5 не попадает (все а1, b1 не нулевые)!
Было бы интересно для фильтра 0.5 "насильно" задать в одном из звеньев а1, b1 =0 и оптимизировать все остальные коэффициенты. :shock:
Зафиксировать можно любые коэфф-ты, и а1, и b1 - но при данном порядке фильтра
СКО реализации гауссовой кривой может резко возрасти. Вообще то исследуемое
решение очень "древнее". Я скоро пересинтезирую эту задачу с учётом
новых обстоятельств.
Последний раз редактировалось Vlad27 28 окт 2015, 11:45, всего редактировалось 3 раза.

Аватара пользователя
Santik
Сообщения: 609
Зарегистрирован: 28 дек 2010, 08:04
Откуда: Мирный (Якутия)
Контактная информация:

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

Сообщение Santik »

Для меня особой роли не играет - "древнее" или нет...
"Обкатать" свои "инструменты" даже лучше на "древних" фильтрах :D
Матлабом я не пользуюсь - всё по старинке :D

Vlad27
Сообщения: 86
Зарегистрирован: 06 апр 2015, 10:09
Откуда: г, Нижний Новгород (rif27@bk.ru)

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

Сообщение Vlad27 »

Новое решение по гауссовому ЦНП-фильтру с произвольной частотой основного лепестка.
Есть ли у кого желание поисследовать это решение?
Forum.gif

Vlad27
Сообщения: 86
Зарегистрирован: 06 апр 2015, 10:09
Откуда: г, Нижний Новгород (rif27@bk.ru)

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

Сообщение Vlad27 »

Целочисленное решение 10-битового ФВЧ с линейной фазой ;)
Вложения
Дисперсионная хар-ка фильтра
Дисперсионная хар-ка фильтра
DISP.gif (7.19 КБ) 4696 просмотров
forum.gif
Последний раз редактировалось Vlad27 19 июн 2015, 12:20, всего редактировалось 1 раз.

Аватара пользователя
Santik
Сообщения: 609
Зарегистрирован: 28 дек 2010, 08:04
Откуда: Мирный (Якутия)
Контактная информация:

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

Сообщение Santik »

Красиво!
К сожалению сейчас времени нет, чтобы это всё подробно рассмотреть...
А что-нибудь есть более "глобальное"? :shock: (В честь наступающего праздника - Дня Радио! :D :D :D )
(Можно только картинку, без коэффициентов)
Например - фильтр Гильберта?
Вроде совсем немного осталось... :D :D :D
На 0.15 сдвинуть влево...

Vlad27
Сообщения: 86
Зарегистрирован: 06 апр 2015, 10:09
Откуда: г, Нижний Новгород (rif27@bk.ru)

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

Сообщение Vlad27 »

Santik писал(а):Красиво!
К сожалению сейчас времени нет, чтобы это всё подробно рассмотреть...
А что-нибудь есть более "глобальное"? :shock:
(Можно только картинку, без коэффициентов)
Например - фильтр Гильберта?
Вроде совсем немного осталось... :D :D :D
На 0.15 сдвинуть влево...
Пишу сейчас большую статью под названием "Сложноселективные задачи
целочисленной цифровой фильтрации". Приведённые примеры (по узкополосному
гауссу и ФВЧ) - из неё. Также там будут: двухполосный гауссов фильтр и
ЦНП-фильтр тракта УПЧИ телеприёмника. Привожу результаты измерений их АЧХ:
Вложения
ТЕЛЕ УПЧ.png
10zv_opt2_DUMP.GIF

Vlad27
Сообщения: 86
Зарегистрирован: 06 апр 2015, 10:09
Откуда: г, Нижний Новгород (rif27@bk.ru)

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

Сообщение Vlad27 »

Вопрос по дисперсии. Здесь имеется в виду не дисперсия шумов квантования
(или щумов нормировки в ЦЦФ), а частотная дисперсия сигнала, проходящего
через ЦЦФ, - как производная времени групповой задержки по частоте. :)
Такой показатель всегда присутствует во всех системах передачи или обработки
широкополосных сигналов. Мы ввели его в программу параметрического синтеза
ЦЦФ и можем теперь синтерировать фильтр прямо с учётом его дисперсионной
характеристики в полосе пропускания ЦЦФ. При классическом расчёте БИХ-фильтра
по аналоговому прототипу решение получается с чрезвычайно большой частотной
дисперсией, обычно положительной (то есть высокочастотные составляющие
спектра обрабатываемого сигнала приходят на выход фильтра позже низкочастотных).
Но можно вполне синтезировать цифровой фильтр и с отрицательной частотной
дисперсией. Обычно в техзадании требуется обеспечить минимальную
частотную дисперсию широкополосного сигнала в рабочей полосе.

Vlad27
Сообщения: 86
Зарегистрирован: 06 апр 2015, 10:09
Откуда: г, Нижний Новгород (rif27@bk.ru)

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

Сообщение Vlad27 »

Завершено измерение характеристик приведённого выше узкополосного
гауссова ЦНП-фильтра с частотой резонанса 700 Гц (0,35 в f/Fд).
Реализация на МК MSP430F1611 под Fд=2 кГц
Привожу данные измерений и благодарю тех, кто задаёт вопросы
по эл.почте (rif27@bk.ru). Попозже отвечу на эти вопросы по целочисленным
цифровым фильтрам :)
Вложения
Forum2.gif
Последний раз редактировалось Vlad27 28 окт 2015, 11:46, всего редактировалось 1 раз.

Аватара пользователя
Santik
Сообщения: 609
Зарегистрирован: 28 дек 2010, 08:04
Откуда: Мирный (Якутия)
Контактная информация:

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

Сообщение Santik »

Исследуем ФВЧ с линейной ФЧХ в полосе пропускания 10-го порядка.
Тупо умножим многочлены числителя и знаменателя H(z)







и поделим все на коэффициент Ao:
Таблица 1.JPG
Для начала сделаем самое простое преобразование: ФВЧ - ФНЧ.
Для этого изменим знаки нечётных коэффициентов Ai, Bi (отмечены в таблице жёлтым цветом) на противоположные.
На этом расчёт ФНЧ с частотой среза Fsфнч=(1-Fsфвч) закончен!
ФВЧ-ФНЧ.JPG
Заметим, что мы пришли бы точно к такому же результату, если бы изменили знаки коэффициентов a1, b1 во всех звеньях исходного фильтра!
Таблица 2.JPG
Таким образом удаётся элементарными преобразованиями превратить исходный ФВЧ в ФНЧ с частотой среза Fs= 1-Fsфвч, сохранив линейность ФЧХ в полосе пропускания и целочисленность коэффициентов.
В дальнейшем мы попытаемся изменить частоту среза ФНЧ на произвольную величину.

Аватара пользователя
Santik
Сообщения: 609
Зарегистрирован: 28 дек 2010, 08:04
Откуда: Мирный (Якутия)
Контактная информация:

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

Сообщение Santik »

Рассчитаем матрицу z- преобразования Нфнч(S) --> Hфвч(z) 10 порядка:
К10ФВЧ.JPG
Пусть К - матрица z- преобразования ФВЧ 10 порядка; а,b - векторы коэффициентов H(S); A,B - векторы коэффициентов H(z);
K a= A ; K b = B
По известным значениям A,B легко найти коэффициенты аналогового фильтра-прототипа а,b:
a=K?? A ; b= K?? B , где K??- обратная матрица
Для матриц z- преобразования ФВЧ 10 порядка K??= (1/1024) K
Окончательно получим выражения для коэффициентов H(S):
a= (1/1024) K A ; b= (1/1024) K B

Окончательно:
К10AB.JPG
Множитель 1/1024 можно отбросить.

Ответить