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