Text Material Preview
Atividade Prática: Filtros digitais
Emerson Junior da Silva Pereira RU1546496
ATIVIDADE
Um determinado sistema digital tem a função de transferência (resposta em
frequência) definida por 𝐻(𝑧) mostrada na equação (1).
O sinal de entrada corresponde ao seu RU cujo segundo número corresponde
à amostra em como mostrado no exemplo a seguir:
Exemplo RU: 1546496
RU1 RU2 RU3 RU4 RU5 RU6 RU7
1 5 4 6 4 9 6
Sendo:
𝑎 = 𝑅𝑈2 (adotar 1 se o RU for igual a zero)
𝑎 = 5
𝑏 = 𝑅𝑈3/10 ((adotar b=0,1 se ele for igual a zero)
𝑏 = 4/10
𝑏 = 0,4
𝑐= 𝑅𝑈7/10, (adotar c=0,2 se ele for igual a zero)
𝑐 = 6/10
𝑐 = 0,6
O sinal de entrada corresponde ao seu RU cujo segundo número corresponde
à amostra em 𝑛 = 0 como mostrado no exemplo a seguir:
𝑥[𝑛] = [𝑅𝑈1 𝑹𝑼𝟐 𝑅𝑈3 𝑅𝑈4 𝑅𝑈5 𝑅𝑈6 𝑅𝑈7]
𝑥[𝑛] = [1, 5, 4, 6, 4, 9, 6]
Usando o ambiente matemático Scilab calcular o sinal de saída 𝑦[𝑛] definido
por:
𝑦[𝑛] = 𝑥[𝑛] ∗ ℎ[𝑛] (2)
Onde ℎ[𝑛] é a resposta ao impulso (domínio do tempo) correspondente à 𝐻(𝑧)
(domínio da frequência). E o sinal de saída 𝑦[𝑛] é resultante da convolução
entre o sinal de entrada 𝑥[𝑛] e a resposta ao impulso do sistema ℎ[𝑛].
---------------------------------------------------------------------------------------------------------
Atividade
Desenvolvimento matemático:
Algoritmo:
function [y]=impulso(x)
y=zeros(1,length(x));
y(find(x==0))=1;
endfunction//Função Impulso
function [y]=degrau(x)
y = zeros(1, length(x));
y(find(x>=0)) = 1;
endfunction//Função Degrau
RU1=1;RU2=5;RU3=4;RU4=6;RU5=4;RU6=9;RU7=6; //RU 1546496
clc//limpa console
clf()//limpa janela gráfica
f=gcf()//manipulador de gráficos
n= [-20:1:20]; //geração do Vetor n
n1= [-40:1:40]; //geração do Vetor n1
x=RU1*impulso(n+1)+RU2*impulso(n)+RU3*impulso(n-1)+RU4*impulso(n-2)+RU5*impulso(n-
3)+RU6*impulso(n-4)+RU7*impulso(n-5);//x[n]
u=degrau(n);//Função para u[n]
for i=-20:20//geração do vetor h[n]
h(i+21)=(-20.83*impulso(i))-(((-0.4)^(i))*13.90*u(i+21))+(((0.6)^(i))*(7.93)*u(i+21));//h[n]
end
y=conv(x,h);//Convolução
//Gráficos
subplot(311)
plot2d3(n,x,style=5)//Sinal de entrada
f.children.children(1).children.thickness=2;//controla a grossura da linha
title('x[n]')
xlabel('amostra')
ylabel('amplitude')
subplot(312)
plot2d3(n,h,style=1)//Resposta ao impulso
f.children.children(1).children.thickness=2;//controla a grossura da linha
title('h[n]')
xlabel('amostra')
ylabel('amplitude')
subplot(313)
plot2d3(n1,y,style=7)
title('y[n]')//sinal de saída do sistema
f.children.children(1).children.thickness=2;//controla a grossura da linha
xlabel('amostra')
ylabel('amplitude')
Gráfico: