Фильтр Баттерворта - почему я получаю такие странные коэффициенты? - PullRequest
1 голос
/ 02 июля 2010

У меня есть код для расчета коэффициентов фильтра БИХ, но они, кажется, приводят к действительно странному выводу.Вот как выглядят данные: выборка с частотой 1 кГц с колебанием возбуждения 7 Гц сверху.Я хотел бы сделать фильтр так, чтобы он фильтровал с частотой среза 1 Гц.

Исходя из того, что я прочитал в Интернете, для расчета частоты среза в долях ПИ уравнение составляет 2 * фк / фс, что приводит к частоте среза 0,002.Во-первых, это правильно?Это значение дает мне коэффициенты, которые приводят к значениям, которые примерно на три порядка меньше, чем я ожидал.Во-вторых, когда я строю вывод фильтра на массиве из 250 точек, я ожидаю (в основном) плоскую линию, но я получаю нечто, что на самом деле выглядит как экспонента в отрицательной.Это не может быть правдой ... не так ли?

Я прошу прощения за то, что не знал так много о фильтрах здесь.Было бы хорошо, если бы у кого-нибудь был ответ.

Спасибо - Роберт

Ответы [ 2 ]

2 голосов
/ 02 июля 2010

Во-первых, да, нормализованная частота равна 0,002, если fs = 1 кГц и fc = 1 Гц.

Вы не говорите, какое программное обеспечение вы использовали для расчета коэффициентов, какие на самом деле коэффициенты и какую форму IIR вы используете для реализации фильтра. Обратите внимание, что фильтры могут быть хитрыми, когда fc << fs, хотя - попробуйте сначала более разумный fc, например. 100 Гц, чтобы увидеть, будет ли это вести себя приемлемо - это скажет вам, являются ли ваши методы здоровыми и / или взрываются ли вещи, когда fc становится слишком маленьким. </p>

0 голосов
/ 05 ноября 2010

Другое возможное решение состоит в том, чтобы использовать фильтр более высокого порядка и разделить его на биквады, что требует некоторой аналитической работы или большего количества поисков ;-).Моя реализация расчета коэффициента фильтра Баттерворта может быть найдена здесь: http://baumdevblog.blogspot.com/2010/11/butterworth-lowpass-filter-coefficients.html

Если ваша пропускная способность важнее, чем некоторая пульсация, я бы также посмотрел на различные типы фильтров (например, эллиптические)!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...