|
Цифровые фильтры, помогите разобраться |
|
|
|
Nov 10 2010, 13:33
|
Участник

Группа: Участник
Сообщений: 54
Регистрация: 1-12-06
Пользователь №: 23 016

|
Все вроде понятно по фильтрам. Задаешь частоты расчитываешь коэффициенты. Поэтому вопросы у меня как обычно чисто практические...
x(n)=входной массив выборок АЦП (n=0…1023) y(n)=выходной массив
стандартная формула Баттерворта на которую натыкаешься всюду:
y(n)=( a0*x(n)+a1*x(n-1)+a2*x(n-2) - (b1*y(n)+b2*y(n-1)) )
так вот не могу понять как при начальном значении первого(нулевого) значения выборки по адресу x(0) может быть a1*x(n-1) запрашивается значение из массива x(0-1) этот же выход из диапазона массива? Массив от 0 до 1023 –> 1024 выборки сделал значения по порядку:
y(n)=( a0*x(n)+a1*x(n+1)+a2*x(n+2) - (b1*y(n)+b2*y(n+1)) )
все заработало для ФВЧ, а для ПФ не работает толи коэффициенты не правильно подставляю, толи формула другая для ПФ там просто коэффициентов больше 5 вроде поэтому делаю так
y(n)=( a0*x(n)+a1*x(n+1)+a2*x(n+2)+ a3*x(n+3)+ a4*x(n+4) - (b1*y(n)+b2*y(n-1)+ b3*y(n+2)+b3*y(n+3)))
видел и такую формулу где-то:
y(n)=( a0*x(n)+2*a1*x(n-1)+a2*x(n-2) - (b1*y(n)+b2*y(n-1)) )
В общем полная каша в голове, может для Чебышева иначе делается, подскажите плиз…
Сообщение отредактировал TViT - Nov 10 2010, 13:34
|
|
|
|
|
 |
Ответов
|
Nov 13 2010, 08:24
|
Участник

Группа: Участник
Сообщений: 54
Регистрация: 1-12-06
Пользователь №: 23 016

|
Вам язык почесать негде? Или я что-то грубое сказал???
|
|
|
|
|
Nov 14 2010, 06:02
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(bahurin @ Nov 13 2010, 13:36)  бегите еще быстрее ... в сторону matlab ...а еще никаДДа не используйте GCC... Ведь всем известно, что настоящие гуру от DSP используют исключительно кошерные решения - в виде готовых примеров поставляемых с IDE Цитата(bahurin @ Nov 13 2010, 13:36)  GNU Octave. ...это жалкая пародия как на матлаб так и на скайлаб... Цитата(bahurin @ Nov 13 2010, 13:36)  Что касается dsp - matlab можно считать эталоном. да-да... Как дэлфи-кодер - эталоном программиста... P.S.: по-ходу у аФФтАра глючит исходник, а мы тут "холиварим"...
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
Nov 14 2010, 06:31
|

Местный
  
Группа: Участник
Сообщений: 240
Регистрация: 20-09-08
Пользователь №: 40 347

|
Цитата(DRUID3 @ Nov 14 2010, 09:02)  ...а еще никаДДа не используйте GCC... Ведь всем известно, что настоящие гуру от DSP используют исключительно кошерные решения - в виде готовых примеров поставляемых с IDE  GCC вполне приличный компилятор. Вот именно желание использовать готовые решения и приводит к тому что фильтр считаются в сайлабе а потом переносятся на вижуал бэйск. Аш муражки пробивают. Цитата(DRUID3 @ Nov 14 2010, 09:02)  ...это жалкая пародия как на матлаб так и на скайлаб... Неправда GNU Octave практически полный аналог матлаба, совершенно бесплатный, с великим множенством тулбоксов. Оданко вы не найдете тормозных симулинков в октаве и красивого интерфейса, но что касается функций и их использования, то пожалуй октава ничем не хуже матлаба. Цитата(DRUID3 @ Nov 14 2010, 09:02)  да-да... Как дэлфи-кодер - эталоном программиста... Сдается мне, что вы, батенька, троль  Результатам расчетов в матлабе я доверяю, ибо им пользуются миллионы. чего не скажешь о скайлабе.
|
|
|
|
|
Nov 14 2010, 07:17
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(bahurin @ Nov 14 2010, 08:31)  Неправда GNU Octave практически полный аналог матлаба, совершенно бесплатный, с великим множенством тулбоксов. Оданко вы не найдете тормозных симулинков в октаве и красивого интерфейса, но что касается функций и их использования, то пожалуй октава ничем не хуже матлаба. ...нет, там функций много меньше... И еще вопрос - что лучше отсутствие функций вообще или наличие аналогов, но немного с другими параметрами или потребность разбиения одной функции на несколько... Цитата(bahurin @ Nov 14 2010, 08:31)  Сдается мне, что вы, батенька, троль  Результатам расчетов в матлабе я доверяю, ибо им пользуются миллионы. чего не скажешь о скайлабе. Вы правы - я троль... но вернемся к вопросу. Миллиарды... Им пользуются миллиарды... В столице Украины при десятках тысяч работающих программистов хорошо если есть сотня активно юзающих математические пакеты. Кстати массы добровольных тестировщиков не всегда есть критерий безошибочности. Ошибку в quickSort во FreeBSD подправили пару лет назад - а если историю жизни проекта умножить на количество пользователей как раз и получатся трилиарды гуманоидов в мирриадах звездных систем  . Скайлаб в эпоху своей молодости тоже был коммерческим продуктом с радиотехническим уклоном! Для математики он юзает известные вычислительные библиотеки которыми пользуются все и далеко не только в этом проекте. Вряд ли у него есть ошибки в вычислительном ядре. Кстати, никто и нигде не дает гарантий что их нет в Матлаба  . Еще с помощью Скайлаба очень удобно тестировать свои DSP исходники(вычислительную часть) не знаю как с этим в "матлабе"... Давайте говорить честно - матлаб это модно. Столько функций, а главное дофига всего в книгах и интернете - почти не надо думать. Токо копируй и в консоль, или как там оно зовеЦЦо у него, вставляй...
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
Сообщений в этой теме
TViT Цифровые фильтры Nov 10 2010, 13:33 Джеймс Алгоритм одинаковый что для ФВЧ, что для ПФ. Меняю... Nov 10 2010, 18:07 TViT Джеймс Да вобщем и у меня так там последовательно ... Nov 10 2010, 19:53 DRUID3 Цитата(TViT @ Nov 10 2010, 15:33) так вот... Nov 11 2010, 02:11 TViT ...Понимаю что гдето моя ошибка... Продумаю по вни... Nov 11 2010, 08:05 TViT Все разобрался просто игнорирую ошибку выход из ди... Nov 11 2010, 10:45 TSerg Занятное решение. Nov 11 2010, 11:39 TViT TSerg Это если быстро сказать. На самом деле приве... Nov 12 2010, 07:34 bahurin Цитата(TViT @ Nov 12 2010, 10:34) TSerg Э... Nov 13 2010, 06:40 TSerg Я - пас.
Мой мозг отказался перевести сообщение №8... Nov 13 2010, 08:20     bahurin Цитата(DRUID3 @ Nov 14 2010, 10:17) Давай... Nov 14 2010, 08:01 TViT ЦитатаЭто что еще за агрессия? Вообще то это у вас... Nov 14 2010, 12:35 bahurin Цитата(TViT @ Nov 14 2010, 15:35) А что м... Nov 14 2010, 13:17 TViT В том то и дело что Матлаб не купленый... Мне поку... Nov 14 2010, 13:56 bahurin Код понять не могу, т.к. на VB не пишу. Но одно к... Nov 14 2010, 14:32  AlikM Цитата(bahurin @ Nov 14 2010, 17:32) Но о... Nov 16 2010, 21:40 TViT вот тот же код на Си из AVR32 DSPlib:
Код {
int... Nov 14 2010, 15:02 bahurin Не видел таких конструкций.
не понятен смысл
Код... Nov 14 2010, 15:21 TViT Как ни странно все работает. Думаю так для произво... Nov 15 2010, 16:01 bahurin NUM[MWSPT_NSEC][3] это B (числитель)
DEN[MWSPT_NS... Nov 15 2010, 16:27 PetrovichKR ЦитатаИнтересно, это где же так принято и по каким... Nov 17 2010, 04:44 TViT Ребят кто разбирается в Scilab помогите еще, нужно... Dec 18 2010, 05:55 lisstret ЦитатаУ фильтра принято обозначать к-ты числителя ... Dec 19 2010, 20:52 TViT Все понятно с коэффициентами. Подскажите по сущест... Dec 20 2010, 13:24 TViT Нашел функцию casc — cascade realization of filter... Dec 22 2010, 04:17 PetrovichKR ЦитатаМне кажется что он писал так, как было приня... Dec 22 2010, 07:38 bahurin Цитата(PetrovichKR @ Dec 22 2010, 13:38) ... Dec 23 2010, 05:01 TViT Вот описание функции:
Кодfunction cels=casc(x,... Dec 23 2010, 16:48
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|