ToR_TDA 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба Здравствуйте форумчане! Некоторое время бьюсь над задачей коррекции аналогового сигнала цифровым фильтром КИХ. Столкнулся с рядом трудностей и не до конца понимаю, как подобные задачи решаются. Суть задачи рассчитать коэффициенты КИХ фильтра(ов) для получения желаемой АЧХ из заданной. Скорость выборок входного сигнала ≈500нс (2.048МГц). Количество коэффициентов ограничено: сейчас 14 коэф, возможно при оптимизации кода получится 15-16. На рисунке представляю суть проблемы. Канал1, канал2 - варианты заданной АЧХ. Кор1, Кор2 - ачх корректоров. Сейчас правильно работающую систему я получил при сочетании Канала2, Кор2 и ФНЧ2 (применяется два КИХ фильтра). Вопрос в том, как оперативно и точно рассчитывать все коэф. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба Параметрический эквалайзер на основе всепропускающего фильтра Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToR_TDA 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба Параметрический эквалайзер на основе всепропускающего фильтра Спасибо, читал эту статью. Такие эквалайзеры будут эффективны при устранении неравномерности в полосе пропускания. В моем случае АЧХ имеет условно равномерный спад к высоким частотам, и применение такого рода коррекции боюсь малоэффективно. Особенно если учесть серьезные ограничения в вычислительной мощности. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bahurin 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба Насколько стабильны характеристики каналов? Можно ли один раз рассчитать корректор или надо в реальном времени вести подстройку? ь Если у вас есть измеренная АЧХ Hm(w) и идеальная АЧХ H0(w), то АЧХ фильтра корректора H(w) = H0(w) / Hm(w). Т.о. вы получили АЧХ фильтра корректора. Разумеется в измеренной АЧХ не должно быть нулей, иначе все будет разваливаться. Судя по вашим картинкам проблем быть не должно, т.к. АЧХ каналов монотонно падают. Для расчета КИХ фильтра надо помимо АЧХ задать ФЧХ. Можно задать линейную ФЧХ и считать КИХ фильтр корректор методом частотной выборки. Разумеется необходимо потом взвесить окном. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToR_TDA 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба Насколько стабильны характеристики каналов? Можно ли один раз рассчитать корректор или надо в реальном времени вести подстройку? ь Подстройка в реальном времени желательна, но реализация ее сильно затруднена текущими вычислительными возможностями. Таким образом, канал во время работы считается стабильным, но при необходимости его характеристика может быть измерена повторно и произведена перенастройка. Если у вас есть измеренная АЧХ Hm(w) и идеальная АЧХ H0(w), то АЧХ фильтра корректора H(w) = H0(w) / Hm(w). Т.о. вы получили АЧХ фильтра корректора. Разумеется в измеренной АЧХ не должно быть нулей, иначе все будет разваливаться. Судя по вашим картинкам проблем быть не должно, т.к. АЧХ каналов монотонно падают. Для расчета КИХ фильтра надо помимо АЧХ задать ФЧХ. Можно задать линейную ФЧХ и считать КИХ фильтр корректор методом частотной выборки. Разумеется необходимо потом взвесить окном. Я пытался применить для своей задачи алгоритм вычисления коэффициентов методом Ремеза в Matlab, но из-за малого числа допустимых коэффициентов и сложного характера АЧХ (на некоторых участках) это не увенчалось успехом. Я не уверен, что подход аппроксимации к желаемой АЧХ корректора применим здесь. Неравномерность, требуемая в полосе 8-128кГц, составляет ±0.1Дб в полосе 128-256кГц ±1Дб, подавление в полосе заграждения должно быть максимальное исходя из выполнения первых 2х условий. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба А если сделать IIR эквалайзер с адаптацией по RLS алгоритму например ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bahurin 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба из-за малого числа допустимых коэффициентов и сложного характера АЧХ (на некоторых участках) это не увенчалось успехом. Я не уверен, что подход аппроксимации к желаемой АЧХ корректора применим здесь. Неравномерность, требуемая в полосе 8-128кГц, составляет ±0.1Дб в полосе 128-256кГц ±1Дб, подавление в полосе заграждения должно быть максимальное исходя из выполнения первых 2х условий. 1. Почему не увенчалось успехом? Не удалось сделать ifft в матлабе и умножить на окно? 2. Увеличивая длину фильтра и применяя окно Кайзера вы сможете добиться требуемых характеристик. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
petrov 6 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба Здравствуйте форумчане! Некоторое время бьюсь над задачей коррекции аналогового сигнала цифровым фильтром КИХ. Столкнулся с рядом трудностей и не до конца понимаю, как подобные задачи решаются. Суть задачи рассчитать коэффициенты КИХ фильтра(ов) для получения желаемой АЧХ из заданной. Скорость выборок входного сигнала ≈500нс (2.048МГц). Количество коэффициентов ограничено: сейчас 14 коэф, возможно при оптимизации кода получится 15-16. На рисунке представляю суть проблемы. Канал1, канал2 - варианты заданной АЧХ. Кор1, Кор2 - ачх корректоров. Сейчас правильно работающую систему я получил при сочетании Канала2, Кор2 и ФНЧ2 (применяется два КИХ фильтра). Вопрос в том, как оперативно и точно рассчитывать все коэф. http://lord-n.narod.ru/walla.html#uidrouAOC Адаптивная Обработка Сигналов - Уидроу, Стирнз стр. 195 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToR_TDA 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба 1. Почему не увенчалось успехом? Не удалось сделать ifft в матлабе и умножить на окно? 2. Увеличивая длину фильтра и применяя окно Кайзера вы сможете добиться требуемых характеристик. При расчете коэффициентов КИХ методом частотной выборки, описанной в статье, производится дискретизация комплексного коэффициента передачи на равностоящей сетке частот. Таким образом, если принять, что задержки в фильтре равны ≈1мкс (1.024МГц), а кол-во коэф. равно 16, то в интересующей меня полосе коррекции 8 - 256кГц окажутся только 4 узла дискретизации. При таком подходе приближение к моим параметрам осуществилось бы при увеличении числа коэф. до 100. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToR_TDA 0 15 сентября, 2011 Опубликовано 15 сентября, 2011 · Жалоба А если сделать IIR эквалайзер с адаптацией по RLS алгоритму например ? Безусловно, БИХ фильтр более эффективен при одинаковом числе коэффициентов чем КИХ, но, к сожалению, он имеет целый ряд недостатков которые не позволяют мне его использовать. Недопустимо бы возросли требования к разрядности коэффициентов, проблема устойчивости, переполнение аккумулятора и т.д. БИХ имеют лучшие показатели при проектировании типовых фильтров, а для моей задачи с АЧХ по точкам они малопригодны. По поводу адаптации по RLS можно сказать, что программа расчета и обновления коэффициентов займет все вычислительное время, что у меня есть и его не останется на саму свертку. Хотя читал про интересные варианты LMS с переменным шагом сходимости. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alexey Lukin 0 16 сентября, 2011 Опубликовано 16 сентября, 2011 · Жалоба При расчете коэффициентов КИХ методом частотной выборки, описанной в статье, производится дискретизация комплексного коэффициента передачи на равностоящей сетке частот. Именно так. Для тонкой коррекции в указанном частотном диапазоне нужны длинные КИХ-фильтры. Ремез вам существенно не поможет, т.к. частотное разрешение КИХ-фильтра зависит от его длины, а не от способа проектирования. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToR_TDA 0 16 сентября, 2011 Опубликовано 16 сентября, 2011 · Жалоба Для тонкой коррекции в указанном частотном диапазоне нужны длинные КИХ-фильтры. Ремез вам существенно не поможет, т.к. частотное разрешение КИХ-фильтра зависит от его длины, а не от способа проектирования. Полностью согласен. Путь по которому пошел я это создание нелинейно фазового корректора. Малым числом коэффициентов мы устраняем большое затухание АЧХ на высоких, если оно равномерно. В этой статье похожая идея. Adaptive_FIR_Equalizer.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться