senoidal 200hz filtro

clc; close all; clear all;
load ('201hz.mat')

L=60000;%tamaño de la señal
fs=8000; % frec de muestreo
T=1/fs;
t=(0:L-1)*T;
N=60000;
% data=sin(2*pi*100*t);% frec=50
% data=data';
%%%% Ejemplo 2 filtro pasa banda
wh = 0.06 * pi; % freciana alta Frec corte pasabanda 50*wh=fh
wl = 0.05*pi; %%frecuancia baja valor del filtro 50*wh=fh
L = 128%/4%5; % Longitud
for i = 1:L+1 % Generar función de pesos pasabanda simetria coje la i comienza a gwenerar el filtro usd no va mover la vable sino va restar medios
%%variable a mover n es la vable del for
n = i-L/2 ; % Simetria
if n == 0 % la maxima punta del filtro en el dibujo
bn(i) = wh/pi - wl/pi; %% dibuja la punta del dibujo
else
bn(i) = (sin(wh*n))/(pi*n) - (sin(wl*n))/(pi*n) ; % Filtro Resp Imp %%si no es el pico maximo hace parte del resto
end
end

%bn = bn .* blackman(L+1)'; % Aplicar ventana Blackman . a .
H_data = abs(fft(data)); % Espectro de datos vable que se carga del load 2 le saca el valor absulot= aspectro de la magnitud de lsa señal

freq = (1:N/2)*fs/N; %%gerena la señal

plot(freq,H_data(1:N/2),'k'); %%coeficientes b de n la funcion de transferencia del filtro
hold on;

%%filtro fft
H = abs(fft(bn,N)); % Filtro en Frec

H = H*1.2 * (max(H_data)/max(H));%escalamiento

plot(freq,H(1:N/2),'b'); %%plot a un filtro
xlabel('Frec (Hz)'); ylabel('H(f)');

y = conv(data,bn); % Filtro usando convolución coeficinetes del filtro y la señal la señal y los datos

figure; subplot(2,1,1);

t = (1:N)/fs; %% N=1000 fs= 1000 N/fs = 1000/100 = 100

plot(t(1:N/2),data(1:N/2),'k'); grid on;
xlabel('Tiempo (Sec)'); ylabel('EEG');

subplot(2,1,2); plot (t(1:N/2), y(1:N/2),'k'); grid on;
xlabel('Tiempo (Sec)'); ylabel('EEG Filtrado');



%%fin del codigo
subir imagenes
subir imagenes
descagar
http://www.mediafire.com/?pfdx7qo92zt36yd
senoidal 200hz filtro senoidal 200hz filtro Reviewed by libros google on marzo 04, 2012 Rating: 5

No hay comentarios

Post AD

home ads