Почему режекторный фильтр не может удалить частоту 50 Гц? - PullRequest
0 голосов
/ 01 июня 2019

Я реализовал режекторный фильтр с использованием функции Matlab Butter enter image description here

Код

Fs=5000;
Wp = [36/(Fs/2) 71/(Fs/2)];
Ws = [46/(Fs/2) 55/(Fs/2)];
Rp_db=-20*log10(.95);
Rs_db=-20*log10(.05);
[order,wn] = buttord(Wp,Ws,Rp_db,Rs_db);
[B,A]=butter(order,wn,'stop');

(при частоте 50 Гц модуль фильтра равен 0,004)

Затем я использую функцию фильтрат, и вот спектральный анализ исходного и отфильтрованного сигналов. (Примечание: если я использую функцию фильтра, у меня та же проблема) enter image description here

enter image description here

Почему мой фильтр увеличивает частоту 50 Гц? Есть ли у вас какие-либо подсказки? Спасибо

...