Filtro Média Móvel
Filtro Média Móvel
RENAN DIAS
JUIZ DE FORA
2013
RENAN DIAS
PROCESSAMENTO DIGITAL DE SINAIS
Filtro Média Móvel
Trabalho apresentado à Faculdade de
Engenharia Mecatrônica como requisito parcial da disciplina de Processamento
Digital de Sinais
Professor Thiago Oliveira
JUIZ DE FORA
2013
Código executado no matlab
%Renan Dias Alves - 111364 clear all close all clc m = 3000; % Número de amostras fs = 2*pi; % Frequência do sinal de entrada
F = 1000; % Frequêcia de amostragem
T = 1/F; % Período de amostragem
I = (0:m-1)/F; % Intervalo de amostragem
N = 20; % Ordem do filtro
N2 = 10; % Ordem 2 do filtro
% Geração do Sinal de Entrada sinal = cos(fs*I); figure(1) plot(sinal); title('Sinal de Entrada'); xlabel('Número de amostras'); ylabel('Amplitude'); % Criação do filtro 1 filtroM = ones(N,1)/N; impulso = [1 zeros(1,m)]; % Impulso filtroMM = filter(filtroM, 1, impulso); figure(2) freqz(filtroMM); %Característica do filtro 1 title('Dados do filtro 1');
% Geração de ruído 1 com desvio padrão de 0.4 ruido1= 0.4*randn(1,m); % Ruído 1 com desvio padrão de 0.4 sinalruido1 = sinal + ruido1;
%Somando o sinal ao ruído 1 de 0.4 figure(3) plot(sinalruido1) title('Sinal com ruído 1'); xlabel('Número de amostras'); ylabel('Amplitude'); % Filtragem através de conv do ruído 1 de 0.4 sinalfiltconv1 = conv(sinalruido1, filtroMM); figure(4) plot(sinalfiltconv1); title('Sinal com ruído 1 filtrado através de conv'); ylabel('Amplitude'); xlabel('Quantidade de amostras');
% Filtragem através de filter do ruído 1 de 0.4 sinalfiltrado1 = filter(filtroM,1,sinalruido1); figure(5) plot(sinalfiltrado1); title('Sinal do ruído 1 filtrado através de filter'); ylabel('Amplitude'); xlabel('Quantidade de amostras');
% Criação do filtro 2 filtroM2 = ones(N2,1)/N2; impulso2 = [1 zeros(1,m)]; % Impulso filtroMM2 = filter(filtroM2, 1, impulso2);
figure(6) freqz(filtroMM2); %Característica do