Перейти к содержанию
    

Расчет цифровых фильтов

< Меня и интересует зависимость уровня пульсаций от ширины переходной полосы и числа коэффициентов импульсной характеристики и как производится выбор и этого числа на практике.>

Это я не скажу.

 

Теперь по поводу того, вследствии чего у Вас возникло чувство что мы спорим.

Мне кажется что из всех решений Вы выбрали самое сложное. Если это ради академического интереса, разговора нет. Но если собираетесь это в деле применить, не забывайте, простое решение работает гораздо надежней. Вполне может выйти так, будете наблюдать за работой своего устройства, а про себя "Ну слава богу еще час проработало". Хотя конечно неспорю, что все можно отладить и в конце концов будет работать как часы. (пускай и китайские ;))

 

<В качестве ликбеза скажите какие параметры мы задаем на входе функции по расчету цифровых фильтров, а какие получаем на выходе.>

Эту утилтку можно использовать и без каких-либо параметров. Просто запускаете и получаете визард фильтров, хоть по порядку, хоть по граничным частотам и затуханиям (алгоритм чего Вас и интересует, может чего сможете там откапать). При этом БИХ или КИХ фильтр, по барабану. Например можно создать эллиптический фильтр порядка эдак 8, а при переключении на КИХ он ругнется что порядок КИХ переваливает ХХХХХХ. Далее можно импортировать входной сигнал, пропустить его через фильтр, посмотреть результат. Экспортировать можно все чем опреировали, коэфф. фильтра, данные и т.п.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Академический интерес" в небольшой (а может быть и в большей) степени присутствует. Данную программу, помимо в реальной системе, предполагается использовать в студенческих лабораторных работах.

 

В принципе Вашу точку зрения я понял и кое в чем согласен. Но, как я уже говорил, было принято решение, что использование MatLaba параллельно работающей программе в данном случае не подходит. Кроме того алгоритм вычисления коэффициентов несложен, не раз апробирован и сама фильтрация работает устойчиво. Единственно, число коэффициентов оператор вводит сам, хотя некоторое оценочное значение N ему предлагается. Но формула, по которой вычисляется это значение, притом что взята из книги, вызывает некоторые сомнения.

 

По поводу утилиты в MatLab - я правильно понял? Мы выбираем фильтр, можем его опробировать, а утилита выдает нам коэффициенты импульсной характеристики. То есть порядок фильтра N является выходной величиной и мы его изменить не можем. Единственно как мы можем повлиять на него это изменить характеристику фильтра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

<То есть порядок фильтра N является выходной величиной и мы его изменить не можем....>

 

<...Просто запускаете и получаете визард фильтров, хоть по порядку, хоть по граничным частотам и затуханиям ...>

Изменять там можно все что угодно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для 3.14

 

Чувствую для того, чтобы доконца разобраться надо самому с головой заняться MatLab-oм.

Из нашего общения я получил для себя пользу - не знал об утилите MatLab-a. Теперь при разработке фильтра для определенного сигнала с заданным спектром непременно воспользуюсь Вашим советом.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прочитал по диагонали и галлопом.

 

Поэтому, что-то возможно пропустил. Но несколько важных практических замечаний.

 

1. Если система адаптивная, то забудьте про БИХи. Сразу и навсегда. Или до того момента, пока очень серьезно не погрузитесь в математику.

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

3. Длина импульсной характеристики КИХ-фильтра прямопропорциональна его добротности или, грубо говоря, ширине его полосы пропускания.

4. И есчо... Есть такие вещи как окна Кайзера, Чебышева, Хэминга... Если их не применять - нарветесь на эффэкт Гиббса.

5. ДПФ можно делать скользящим.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

to st256

Мы плохо начали знакомство, давайте исправим.

 

<2. Судя по всему, отца русской демократии, спасет не абстранктный перерасчитываемый каждый раз фильтр, а банальный эквалайзер, где перерасчитывать ничего не надо, а только подставляй коэффициенты для полос.>

Немного не понял, это не ДПФ? Можно поподробнее?

 

<3. Длина импульсной характеристики КИХ-фильтра прямопропорциональна его добротности или, грубо говоря, ширине его полосы пропускания.>

А если рассуждать так: импульсная - Фурье-преобразование полосы пропускания, т.е. содержит в себе и ширину полосы включительно. Представим, для простоты, себе импульсную в виде пол периода синуса, далее 0. Исходя из чего получается надо выбирать интервал который будет дискретизироваться и кол-во коэффициентов?

 

<5. ДПФ можно делать скользящим.>

Можете пояснить?

Например на вычисление одного отсчета ДПФ требуется 1000 "операций", т.е. как ни крути эту 1000 все равно прийдется считать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мы плохо начали знакомство, давайте исправим.

 

А чо исправлять? Я человек добрый...

 

<2. Судя по всему, отца русской демократии, спасет не абстранктный перерасчитываемый каждый раз фильтр, а банальный эквалайзер, где перерасчитывать ничего не надо, а только подставляй коэффициенты для полос.>

Немного не понял, это не ДПФ? Можно поподробнее?

Нет. Это совсем не ДПФ. Попробую пояснить на примере.

 

Путь у Вас есть три полосовых КИХ-фильтра с импульсными характеристиками одинаковой длины N:

 

{ K1-1, K1-2, ..., K1-N }

{ K2-1, K2-2, ..., K2-N }

{ K3-1, K3-2, ..., K3-N }

 

Как Вы понимаете, К1-1 это первый коэффициент первого фильтра.

 

Из этих трех импульсных характеристик Вы формируете результирующую

 

K1 = a*K1-1 + b*K2-1 + c*K3-1

K2 = a*K1-2 + b*K2-2 + c*K3-2

..............................................

KN = a*K1-N + b*K2-N + c*K3-N

 

a,b,c - коэффициенты для каждой из полос эквалайзера.

 

Это следствие принципа суперпозиции, применимого для импульсных характеристик цифровых фильтров.

 

Все, у Вас нормальный КИХ фильтр длины N, который есть взвешенная гребенка из трех полосовых КИХ-фильтров

 

<3. Длина импульсной характеристики КИХ-фильтра прямопропорциональна его добротности или, грубо говоря, ширине его полосы пропускания.>

А если рассуждать так: импульсная - Фурье-преобразование полосы пропускания, т.е. содержит в себе и ширину полосы включительно. Представим, для простоты, себе импульсную в виде пол периода синуса, далее 0. Исходя из чего получается надо выбирать интервал который будет дискретизироваться и кол-во коэффициентов?

 

Не понял, что Вы хотели сказать... Частотная характеристика описанного Вами фильтра - смещенный спектр прямоугольного импульса. Т.е. про какую-то полосу там вообще говорить не имеет смысла.

 

<5. ДПФ можно делать скользящим.>

Можете пояснить?

Например на вычисление одного отсчета ДПФ требуется 1000 "операций", т.е. как ни крути эту 1000 все равно прийдется считать.

 

Там есть возможность сократить вычисления, но у меня нет под рукой необходимой литературы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для st256

 

По пунктам.

 

1. Использование БИХ - фильтров не планировалось. Обсуждение велось для расширения кругозора.

2. За "отца..." спасибо. Предложенный метод конечно изящный, но мне мой больше нравится.

3. Это понятно. Проблема описать все это формулой.

4. Про эти вещи знаю. Без коментариев.

5. Не понял, что понимается под словом "скользящий". Если имеется в виду секционная свертка с использованием ДПФ, то про нее я писал выше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

=== 2. За "отца..." спасибо.

 

Мда... Вам в Макдоналдс...

Это Ильф и Петров. "12 стульев". Как написано на www.amazon.com русский язык надо выучить только для того, чтобы прочитать эту книгу в оригинале. Но данная книга не пользуется спросом у просвещенного человечества. Сейчас ее уценили и пытаются впарить вместе с "Мастером и Маргаритой"

 

В мое время, человек не понявший эту шутку, должен был повеситься в безакцептном порядке в течении 24 часов... Здесь можно смеяться. Или плакать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

to st256

Спасибо запример. Только я даже на здоровую голову не понял как из трех импульсных получить одну. А сейчас еще и голова трещит ...

 

Теперь насчет числа коэфф. импульсной.

Все мы знаем что порядок БИХ фильтра - количество децибел на декаду, а у КИХ - количество коэфф. импульсной. Но ни в одном учебнике не приводится метода по которой можно определить необходимое кол-во коэфф. импульсной КИХ фильтра при заданной степени искажений АЧХ/ФЧХ. И потом, сама импульсная бесконечна, как выбирать временной интервал. Забавно, я сам рекомендовал человеку способ реализации, и сам же щас пытаюсь выяснить как это правильно делать :) (думал капнет и все выяснит, но похоже нюанс оказался заковыристее). Я сам, и по этой причине тоже, никогда не связывался с КИХ, за исключением способа описанного Вами в статье, но там все "однозначнее".

 

[flame on]

<Но данная книга не пользуется спросом у просвещенного человечества.>

Я думаю это временно, снимут новую "модную" экранизацию, и гладишь соплячки снова за "ДА УШ"кают, будут возмущатся над стоимостью "сосисек" и рваться "в номера" :) Забавно, я сам знаю практически наизусть обе экранизации, но книгу не читал, сечас супруга иногда мне почитывает ее перед сном в слух :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

=== Спасибо запример. Только я даже на здоровую голову не понял как из трех импульсных получить одну. А сейчас еще и голова трещит ...

 

Так не берите в голову! С Новым Годом!

 

 

=== Теперь насчет числа коэфф. импульсной.

Все мы знаем что порядок БИХ фильтра - количество децибел на декаду, а у КИХ - количество коэфф. импульсной.

 

Мы знаем неправильно. Порядок как КИХ так и БИХ фильтра - это максимальная степень в полиноме z-преобразования фильтра и ничего более.

 

 

=== Но ни в одном учебнике не приводится метода по которой можно определить необходимое кол-во коэфф. импульсной КИХ фильтра при заданной степени искажений АЧХ/ФЧХ.

 

Ну неправда Ваша... Бессмертные Рабинер и Гоулд или сэр Matlab прекрасно могут помочь в этом вопросе.

 

 

=== Но данная книга не пользуется спросом у просвещенного человечества.>

Я думаю это временно, снимут новую "модную" экранизацию, и гладишь соплячки снова за "ДА УШ"кают, будут возмущатся над стоимостью "сосисек" и рваться "в номера" :) Забавно, я сам знаю практически наизусть обе экранизации, но книгу не читал, сечас супруга иногда мне почитывает ее перед сном в слух :)

 

Молодежь! Вы чего??? Неужели гамбургеры столь губительно действуют на техничесеую интелегенцию?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

<=== Спасибо запример. Только я даже на здоровую голову не понял как из трех импульсных получить одну. А сейчас еще и голова трещит ...

 

Так не берите в голову! С Новым Годом!>

:) Ну, шутки шутками, но на самом деле не понял.

 

<Ну неправда Ваша... Бессмертные Рабинер и Гоулд или сэр Matlab прекрасно могут помочь в этом вопросе.>

Искренне рад, если приспичит, буду искать там...!

 

<Молодежь! Вы чего??? Неужели гамбургеры столь губительно действуют на техничесеую интелегенцию?>

Если Вы мне, то я с роду гамбургеров не пробовал, а какие они на вкус ;) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для st256

человек не понявший эту шутку

Шутку я понял (причем воспринял ее нормально) и классику узнал. Так что насчет Максдональса напрасно.

 

Возвращаясь к теме цифровой фильтрации, у Рабинера и Голда число коэффициетов описано как N и подход для его вычисления явно не указан.

Если не сложно, опишите порядок вычисления.

 

И еще по вопросу о "скльзящем" ДПФ. Опять же если несложно поясните что имелось в виду.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Порядок фильтра определяется для того алгоритма, которым он будет расчитываться, т.е. однозначного подхода нет

2. Порядок фильтра (КИХ) зависит в первую очередь от его крутизны и для первого приближения может быть оценен по формуле 4/df, где df-нормированная переходная полоса фильтра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насколько помню теорию, для определения оптимального порядка нерекурсивного фильтра(FIR КИФ ) используется частота дискретизации равная верхней частоте полосы фильтра, умноженной на 4-5. Для существенного уменьшения колебаний АЧХ порядок фильтра необходимо увеличить. Есть программы QED2000 v6.3.4 и ScopeFIR v.3.7a, при помощи которых можно легко рассчитать фильтр нужного порядка и проконтролировать его частотные и временные характеристики. Кроме того расчитанные коэффициенты фильтра выдаются в форме удобной для применения в DSP, для работы в реальном масштабе времени.

Если кому нужно могу выслать таблетки для лечения указанных программ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...