Здравствуйте.
Хочу задать вопрос по проектированию рекурсивных цифровых фильтров.
Нужно спроектировать ФНЧ (любой) с полосой пропускания до 500 герц.
Для этого использую MatLab6.1. С помощью инструмента FDAtool получаю коефициенты фильтра. Проблема заключается в том , что при любой частоте сигнал на выходе равен сигналу на входе. Не могу понять в чем проблема.
Fs = 10000;
t = 1e-6:1e-6:1e-2;
f = 500; %Hz
x = sin(2*pi*t*f);
plot(t,x);
xlabel('Samples(1 sample = 10 us)');
ylabel('Magnitude');
grid on;
a = [6.4889e-2,1.2977e-1,6.4889e-2];
b = [1.1615,-4.21066e-1];
for k = 1:1:Fs;
if(k == 1);
y(1) = a(1)*x(1);
end;
if(k == 2);
y(2) = x(2)*a(1) + x(1)*a(2) + y(1)*b(1);
end;
if(k > 2);
y(k) = x(k)*a(1) + x(k-1)*a(2) + x(k-2)*a(3) + y(k-1)*b(1) + y(k-2)*b(2);
end;
end;
figure;
plot(t,y);