Trabajo Colaborativo 1 Procesamiento Digital De Señales
Enviado por totin75 • 15 de Mayo de 2013 • 777 Palabras (4 Páginas) • 851 Visitas
ACTIVIDAD 6 TRABAJO COLABORATIVO 1
Pedro Antonio Peña Medina
Código 88213765
Grupo Colaborativo 299004_24
PRESENTADO A:
Faiber Robayo
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA - UNAD
Programa: Ingeniería de Telecomunicaciones
Curso: Procesamiento Digital de Señales
Pamplona Norte de Santander
Abril de 2012
EJEMPLOS DE MATLAB TRANSFORMADA DISCRETA DE FOURIER
Function [] = fftej1(N,D)
% fftej1(N,D)
% Ejemplo de una FFT de una señal sinusoidal de 20Hz sumada una señal
% tipo chirp con un desplazamiento desde 5 hasta 40 Hz en un tiempo D.
% N es el número de puntos de la función. Elegir preferiblemente valores
% que sean potencias de 2
ts=D/N;
d=ts/2;
t=0:ts:D-d;
x=sin(2*pi*20*t)+chirp([5 40]*D/N,N);
X=fft(x);
%Reordenar X
M=N/2;
Xaux=X;X(M+1:N)=Xaux(1:M);
X(1:M)=Xaux(M+1:N);
Xm=abs(X)/N;
Xf=unwrap(angle(X))*180/pi;
%Reordenar los ¡ndices k
faux(M+1:N)=0:M-1;faux(1:M)=-M:-1;
f=faux/D;
figure;plot(t,x,'-g');zoom;
xlabel('Tiempo (s)');ylabel('x(t)');
title('x(t)=sin(2•Pi•20•t)+chirp(5-40)');
figure;lines(f,Xm,'oc5','-c5');zoom;
xlabel('Frecuencia (Hz)');ylabel('|X[k]|');
title('Módulo de Coeficientes Espectrales |X[k]|');
figure;lines(f,Xf,'xc3','-c3');zoom;
xlabel('Frecuencia (Hz)');ylabel('Fase (º)');
title('Fase de Coeficientes Espectrales X[k]');
% Reconstrucción de la señal a partir de los X[k]
% Utilizamos un mayor número de puntos fs=500 Hz
fs=500;
ts=1/fs;
d=ts/2;
t=0:ts:D-d;
Ns=length(t);
x=sin(2*pi*20*t)+chirp([5 40]*ts,Ns);
xr=zeros(1,Ns);
for i=1:Ns
for k=1:N
xr(i)=xr(i)+X(k)*exp(j*2*pi*f(k)*ts*(i-1))/N;
end
end
figure;plot(t,x,'g-');hold on;plot(t,xr,'r--');zoom;
title('Comparación entre x(t) y su reconstrucción a partir de X[k]');
xlabel('Tiempo (t)');ylabel('x(t)');
function [] = fftej2(N,D)
% Ejemplo de una FFT de una se¤al exponencial sumada a una se¤al
% tipo chirp con un desplazamiento desde 60 hasta 100 Hz en 1 segundos.
% N es el n£mero de puntos de la funci¢n. Elegir preferiblemente valores
% que sean potencias de 2
ts=D/N;
d=ts/2;
t=0:ts:D-d;
df=100-60;
x=exp(-2*t)+0.2.*chirp([60 60+df*D]*ts,N);
X=fft(x);
%Reordenar Y
M=N/2;
Xaux=X;X(M+1:N)=Xaux(1:M);X(1:M)=Xaux(M+1:N);
Xm=abs(X)*ts;
Xf=unwrap(angle(X))*180/pi;
%Reordenar los ¡ndices k
faux(M+1:N)=0:M-1;faux(1:M)=-M:-1;
f=faux/D;
figure;plot(t,x,'-r');zoom;
xlabel('Tiempo (s)');ylabel('x(t)');
title('x(t)=exp(-2t)+0.2•chirp(60-100)');
figure;lines(f,Xm,'oc5','-c5');zoom;
xlabel('Frecuencia (Hz)');ylabel('|X[k]|');
title('Módulo de los coeficientes espectrales |X[k]|');
figure;lines(f,Xf,'oc3','-c3');
xlabel('Frecuencia (Hz)');ylabel('Fase(X[k]) (º)');
title('Fase de los coeficientes espectrales X[k]');
% Reconstrucción de la señal a partir de los X[k]
% Utilizamos un mayor número de puntos fs=500 Hz
fs=500;
ts=1/fs;
d=ts/2;
t=0:ts:D-d;
Ns=length(t);
x=exp(-2*t)+0.2.*chirp([60 60+df*D]*ts,Ns);
xr=zeros(1,Ns);
for i=1:Ns
for k=1:N
xr(i)=xr(i)+X(k)*exp(j*2*pi*f(k)*ts*(i-1))/N;
end
end
figure;plot(t,x,'g-');hold on;plot(t,xr,'r--');zoom;
title('Comparación entre x(t) y su reconstrucción a partir de X[k]');
xlabel('Tiempo (t)');ylabel('x(t)');
function [X,f] = fftej3(N,D)
% fftej3(N,D)
% Ejemplo de una FFT de una se¤al exponencial modulada en amplitud
% con una frecuencia portadora de 200Hz.
% N es el n£mero de puntos de muestreo durante D seg. de señal.
% Elegir preferiblemente valores que sean potencias de 2
% Hacer notar que al ser la frecuencia portadora de 200Hz,
% necisitamos una frecuencia de muestreo de por lo menos
% 400Hz, por lo que N/D > 400
ts=D/N;
d=ts/2;
t=0:ts:D-d;
x=exp(-2*t).*sin(2*pi*200*t);
X=fft(x);
%Reordenar X
M=N/2;
Xaux=X;X(M+1:N)=Xaux(1:M);X(1:M)=Xaux(M+1:N);
Xm=abs(X)*ts;
Xf=unwrap(angle(X))*180/pi;
%Reordenar los ¡ndices k
faux(M+1:N)=0:M-1;faux(1:M)=-M:-1;
f=faux/D;
figure;plot(t,x,'-g');zoom;
title('x(t)=exp(-2t)•sin(2•pi•200•t)');
xlabel('Tiempo (t)');ylabel('x(t)');
figure;lines(f,Xm,'oc5','-c5');zoom;
title('Módulo de los coeficientes espectrales de x(t)');
xlabel('Frecuencia (Hz)');ylabel('|X[k]|');
figure;lines(f,Xf,'oc3','-c3');zoom;
title('Fase de los coeficientes espectrales X[k]');
xlabel('Frecuencia (Hz)');ylabel('Fase X[k]');
function [] = fftej4(N,D)
% fftej4(N,D)
% Ejemplo de una FFT de una se¤al sinusoidal de 2Hz modulada en
% frecuencia con una frecuencia portadora de 200Hz.
% N es el n£mero de puntos de muestreo durante D seg de señal.
% Elegir preferiblemente valores que sean potencias de 2
% Hacer notar que al ser la frecuencia portadora de 200Hz,
% necisitamos una frecuencia de muestreo de por lo menos
% 400Hz, por lo que N/D > 400
ts=D/N;
d=ts/2;
t=0:ts:D-d;
...