148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
||||||
1 | ||||||
Реализация полосового фильтра Баттерворта 3 порядка04.05.2015, 13:40. Показов 6110. Ответов 12
Метки нет Все метки)
(
Использование z-преобразования Ннч(S)--> Hпф(z) с получением соответствующей матрицы, позволяет значительно упростить алгоритм вычисления коэффициентов полосового фильтра.
Для примера привожу программу вычисления коэффициентов полосового фильтра Баттерворта 3 порядка:
0
|
|
04.05.2015, 13:40 | |
Ответы с готовыми решениями:
12
Расчет порядка нормированного прототипа ФНЧ при расчете полосового фильтра Алгоритм полосового фильтра Блэкмана fdatool. Расчет полосового фильтра
Реализация преобразования Гильберта с использованием КИХ-фильтра первого порядка |
04.05.2015, 15:28 | 2 |
...значительное упрощение предполагает избавление от готового фарша в виде вычисления корней квадратных и косинусов. Например, через таблицы или подбором через умножение для целочисленной арифметики.
0
|
148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
|
04.05.2015, 16:46 [ТС] | 3 |
Такое мнение может принадлежать человеку, который в своей жизни ни одного коэффициента полосового фильтра не вычислял.
![]() Согласен - проще брать готовые коэффициенты. Но как тогда построить элементарный "следящий" фильтр?
0
|
04.05.2015, 17:14 | 4 |
A_Santik, не делайте далеко идущих выводов и не расписывайтесь за других. Вы пользуетесь математикой Фортрана, это мощный инструмент, спору нет как и в случае с Матлабом. Но для ЦОС актуальна реализация в железе, а это ПЛИС и МК. Нет там никаких Фортранов. Сразу видно в железе никогда не реализовывали ни одного фильтра.
p.s.: и мое имхо, будьте толератнее и воспринимайте критику адекватно.
0
|
148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
|
04.05.2015, 17:37 [ТС] | 5 |
Классический алгоритм расчёта коэффициентов ФНЧ Баттерврота описан в Реализация ФНЧ Баттерворта
Но лично я эту программу не стал бы и пытаться в микроконтроллер "запихивать"! Добавлено через 17 минут А где Вы там увидели "мощную математику Фортрана"??? ![]() В приведенной программе практически только алгебраические формулы, которые "без напряга" переведутся на любой язык. Там даже циклов нет!!! На microC Вам программу перевести, чтобы было понятней? ![]() Да, меня удивляет "критика" от человека, который "не совсем в теме" вопроса. Призывы к "толерантности" явно излишни.
0
|
04.05.2015, 18:19 | 6 |
...ну да, ну да, а тангенсы, косинусы и корни квадратные святым духом конечно же вычисляются. Меня удивляет неадекватность топик-стартера, который завяз в математических пакетах и не видит дальше теории.
0
|
148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
|
06.05.2015, 22:45 [ТС] | 7 |
Кроме того:
1. Матрица z-преобразования не зависит от типа фильтра! Можно использовать коэффициенты Hфнч(S) фильтров Чебышева 1 и 2 рода, Кауэра, Бесселя и т.п. 2. Режекторный фильтр можно получить элементарными преобразованиями матрицы полосового фильтра (перестановкой столбцов). "...уже есть онлайн-генератор готового Си-кода http://www-users.cs.york.ac.uk... /trad.html " Но: генератор "генерит" рекурентрую формулу фильтра. Т.е. пригоден только для создания одного фильтра. Если понадобится изменить частоту фильтра нужно зайти на сайт , "сгенерить" новый код и "запихнуть" его в микроконтроллер. Предлагается "генерить" коэффициенты прямо в микроконтроллере! И изменять частоту/полосу фильтра можно будет просто "кнопками" микроконтроллера (практически без ограничений). Вот пример полосового фильтра Чебышева 2 рода: Левая картинка - входной сигнал (белый шум)
0
|
148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
|
19.05.2015, 15:04 [ТС] | 9 |
0
|
148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
|
20.05.2015, 10:20 [ТС] | 11 |
Эксперимент. Вычисление коэффициентов полосового фильтра Баттерворта 3 порядка на ATmega8.
С Фортрана переписал на Си CodeVisionAVR. Особых трудностей не испытал, кроме как многочисленные замены () на [] в массивах. Но это я в "блокноте" заменил ![]() Результаты:При частоте 8 МГц: Инициализация полосы: 2 мс Изменение центральной частоты: 1мс Результаты меня не устраивают, поэтому сейчас бегу в ближайший ларёк за STM32 ![]()
0
|
148 / 129 / 18
Регистрация: 29.04.2015
Сообщений: 626
|
|
04.06.2015, 11:51 [ТС] | 12 |
Статья о простой методике расчёта КИХ фильтров
https://www.cyberforum.ru/post7988076.html
0
|
399 / 337 / 103
Регистрация: 27.05.2017
Сообщений: 1,892
|
|
17.12.2022, 12:40 | 13 |
Уважаемый A_Santik, попробовал реализовать в Excel ПФ 3 порядка, реализованный вами в этой статье, может, я не понимаю, как работают фильтры, но результат получился не тот, на который я рассчитывал.
На входе фильтра синусоидальный сигнал определенной частоты. На выходе после фильтрации я ожидал такой же синусоидальный сигнал, но действительность оказалась другой. Почему?
0
|
17.12.2022, 12:40 | |
17.12.2022, 12:40 | |
Помогаю со студенческими работами здесь
13
Реализация ФНЧ Баттерворта Расчет полосового фильтра на базе ОУ Рабочая схема полосового фильтра Полосовой фильтр третьего порядка (Баттерворта) для звуковой частоты на пассивных элементах LC Проверка полосового фильтра Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |