реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Применение функции fir_interp_fr16 в VDSP++, Применение функции fir_interp_fr16 не дало желаемого результата
Евгений Игоревич
сообщение May 1 2012, 19:21
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 4-05-07
Пользователь №: 27 520



Здравствуйте коллеги. Поздравляю Вас с майскими праздниками.

А теперь вопрос.
Понадобилось применить интерполирующий фильтр на 4. В MAtlab рассчитал коэффициенты для входных данных
после увеличения количества отчетов, запускаю функцию fir_interp_fr16, на выходе фильтра белеберда.
Начинаю разбираться, оказывается интерполятор построен на полифазных структурах. Поднимаю литературу
и описание библиотеки, согласно которым рассчитываю новый фильтр, который описывает параметры полосы
пропускания и задержки до интерполяции и записываю коэф-ты фильтра 4 раза подряд (согласно описания
на библиотеку). Запускаю, получаю выходной сигнал похожий на входной (синус в полосе пропуская), но выглядит
он, как если бы я просто увеличил кол-во отчетов, повторяя каждый 4 раза, т.е. ступеньками - фильтр не работает.

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

В целях собственного развития и возможности дальнейшего применения fir_interp_fr16, кто-нибудь поделиться секретом
мастерства? Может для данной ф-ции требуется программа расчета коэф-тов или другой порядок их записи в файл?

С уважением Евгений
Go to the top of the page
 
+Quote Post
Alexey Lukin
сообщение May 2 2012, 07:48
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 159
Регистрация: 3-01-11
Пользователь №: 62 000



http://ez.analog.com/thread/1927
Go to the top of the page
 
+Quote Post
Евгений Игоревич
сообщение May 4 2012, 18:44
Сообщение #3





Группа: Участник
Сообщений: 7
Регистрация: 4-05-07
Пользователь №: 27 520



Спасибо за ссылку!
Получил сглаженный проинтерполированный сигнал на выходе, правда его амплитуда обратно пропорциональна коэффициенту интерполяции.
Go to the top of the page
 
+Quote Post
Alexey Lukin
сообщение May 5 2012, 06:04
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 159
Регистрация: 3-01-11
Пользователь №: 62 000



Это потому, что сигнал разбавляется нулями, а затем фильтруется НЧ-фильтром с H(0) = 1.
Умножьте фильтр на коэффициент интерполяции.

Сообщение отредактировал Alexey Lukin - May 5 2012, 06:04
Go to the top of the page
 
+Quote Post
Евгений Игоревич
сообщение May 6 2012, 17:33
Сообщение #5





Группа: Участник
Сообщений: 7
Регистрация: 4-05-07
Пользователь №: 27 520



Чтобы увеличить сигнал на выходе в 4 раза, необходимо увеличивать или входной сигнал в 4 раза или коэф-ты фильтра, но это не возможно, так как есть и те и другие больше 8192. Странно что этот эффект не учли те кто реализовывал данный алгоритм в ADI.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 11:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01355 секунд с 7
ELECTRONIX ©2004-2016