[an error occurred while processing this directive]
Требуется подсказка по цифровой фильтрации(+)
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено misyachniy 24 ноября 2004 г. 13:04

Решил помочь товарищу в разработке ЕКГ монитора.
http://www.analog.com/library/analogDialogue/archives/37-11/ecg.pdf
По скольку цифровой фильтрацией пока не занимался,
то решил в начале повторить чужое :-) и спросить у знающих.
И так исходная задача цифровой фильтрации.
На вход АЦП поступает сигнал ограниченый аналоговым фильтром
с полосой 0..250 герц.
АЦП захватывает сигнал с частотой 500 герц.
Затем в пропускается через два фильтра.
Пятизвенный фильтр состоящий из звеньев второго порядка (0,05..100)
и двухзвенный фильтр пробку тоже из звеньев второго порядка на 50Герц
c шириной задержания 10.

Нужно проверить/рассчитать коэффициенты фильтра приведенные в указаном выше документе.

Поставил MATLAB, начал изучать.
Полосовой фильтр указан точно Butterworth.
Напбрал в окошке команд:

>> [B,A] = BUTTER(1,100/250)
B = 0.4208 0.4208
A = 1.0000 -0.1584

Расхождение с приведенными в примере 0,002 то есть все сходится.

Фильт пробка IIR pole-zero placement method.
В книжке А.Б. Сергиенко не нашел pole-zero placement method.
Но нашел что IIR это тот же Баттерворт, два типа Чебышева и эллиптический.
Нашел также функцию iirnotch
Вот что у меня получилось:
;---------------------------------------------
>> Wo=50/(500/2);
>> WB=Wo/5;
>> [b,a] = iirnotch(Wo,WB)
b = 0.9695 -1.5687 0.9695
a = 1.0000 -1.5687 0.9391
;----------------------------------------------------
>> WN=[45/250 55/250]; [B,A] = BUTTER(1,WN,'stop')
B = 0.9408 -1.5253 0.9408
A = 1.0000 -1.5253 0.8816
;----------------------------------------------------
>> [B,A] = CHEBY1(1,10,WN,'stop')
B = 0.8412 -1.3638 0.8412
A = 1.0000 -1.3638 0.6824
;----------------------------------------------------
>> [B,A] = CHEBY2(1,10,WN,'stop')
B = 0.8412 -1.3638 0.8412
A = 1.0000 -1.3638 0.6824
;----------------------------------------------------
>> [B,A] = ELLIP(1,0.5,20,WN)
B = 0.1526 0 -0.1526
A = 1.0000 -1.3738 0.6948

Наиболее похожы на приведенный в указаном выше документе
коэфициенты iirnotch;

В примере
1 -1,618 1
1 -1,5164 0.8783

Как мне получить такие же цифры?
Какую функцию использовать?

Спасибо за внимание :-)

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru