Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
El resultado es el esperado puesto que la FFT de x(t) es calculada con un tiempo de 32 ciclos justos , lo que hace que el efecto rendija no muestre los lbulos de la transformada, obtenindose slo dos barras.
La frecuencia de muestreo es 200 [Hz], por lo que la frecuencia de corte de puntos para la trasformada es la mitad 100, entonces la escala tomada coincide con la escala de frecuencias. Por lo que se deben observar dos barras una en f=0 y otra en f=25. Pero la FFT es la transformada de Fourier multiplicada por el nmero de puntos y el tiempo de la ventana, o muestra.
Para el caso de f=25 , la amplitud es 10 debe ser Para el caso de f=0, el valor debe ser 3T, por lo que su amplitud:
El efecto rendija slo mostrar 3 lneas pues el numero de ciclos muestreado es entero. Por lo tanto se observa lo esperado
10 8 Xmax/10 6 4 2 0 0 10 20 30 40 50 60 Frecuencias 70 80 90 100 TransformadadeFourier
Ejercicio 2
Lo esperado es lo mismo que en el punto anterior, pero evaluado en barras distintas, es decir aqu el efecto rendija permite ver los "cerros" de la transformada, esto ocurre porque, el nmero de ciclos muestreados no es entero, es decir:
TransformadadeFourier
4 Xmax/10
10
20
30
40 50 60 Frecuencias
70
80
90
100
Ejercicio 3
Evaluando la expresin de la transformada de Fourier de x(t)
y superponindola en la misma escala se nota que las barras no estn evaluadas en las partes donde la funcin de la ventana se hace cero, lo que es correcto, pero la amplitud de la trasformada calculada por la FFT no corresponde con la analtica. Es de notar que las barras que estn al lado de 25 ver grfico de abajo- no tienen el mismo alto, lo que es incorrecto, pues la funcin analtica es simtrica con respecto a este punto.
10 8 6 4 2 0 0 TransformadadeFourier TransformadaAnaltica FFT
Xmax/10
10
20
30
40 50 60 Frecuencias
70
80
90
100
Acercando ms
TransformadadeFourier TransformadaAnaltica FFT
8 6 4 2 0
Xmax/10
22
23
24
25 26 Frecuencias
27
28
29
Ejercicio 4
En esta parte se comparan los resultados obtenidos con las ventanas cuadradas y Hanning. La ventana cuadrada tiene fugas laterales, pues el nmero de ciclos no es entero.
La ventana Cuadrada comparadas con la Hanning tiene valores ms cercanos a los que deberan dar si no hubiesen fugas laterales graficados con un cuadrado-. Sin embargo la ventana Hanning posee menos fugas laterales, por lo que si no se conoce la frecuencia de las seales a medir y se requiere hacer un anlisis espectral es mejor ocupar la ventana Hanning.
FFTVentanaCuadrada
8 6 4 2 0 0 10 20 30 |X|
8 6 4 2 0 0 10 20 30 |X|
50 60 Frecuencia FFTVentanaHanning
40
70
80
90
100
40
50 60 Frecuencia
70
80
90
100
Ejercicio 5
La seal ser peridica de perodo 50 y amplitud 10.
La FFT de est seal no muestra los cerros de la transformada de Fourier, pues la seal muestreada tiene 32 ciclos enteros
La serie de Fourier tendr solo componentes en los senos pues es par, y tendr valor del coeficiente libre, este es:
Comparando el valor libre de la serie de Fourier con el valor de la FFT en f=0 el resultado es el mismo. La serie de Fourier tendr coeficientes cada nf trminos, lo que se ve en el espectro como barras en las frecuencias 50, 100, 150, y 200. El resto de las frecuencias es cero, por lo que el resultado es esperado.
TransformadadeFourier
20
40
60
80
140
160
180
200
Ejercicio 6
La seal ser no peridica:
La transformada de 0 es 0 pues la integral dar como resultado 0. Por lo que se espera obtener la transformada de la ventana cuadrada con una amplitud igual a 100T
El grfico se ve de la forma de la transformada de la ventana, pero su amplitud difiere del valor esperado, debiendo dar A=10000 resulta A=11000. Adems da distinto el perodo de los cerros, esto se aprecia al superponer el grfico con la transformada analtica en el espectro. Esto se debe a que la Frecuencia de muestreo es muy pequea, el tiempo es muy grande, y en la parte donde la funcin cambia de valor, queda una recta con pendiente. Ese detalle no es considerado en la transformada analtica. (Ver grfico temporal en t=100). Esta afirmacin se confirma pues al subir la frecuencia de muestreo la amplitud del "cerro" en cero se va acercando al valor 100T.
SealTemporal
100
50
100
200
300
400
800
900
1000
0.005
0.01
0.015
0.035
0.04
0.045
0.05
Ejercicio 7
El espectro de la seal aleatoria no tiene frecuencia constante, por lo que resultar ser la integral entre la seal aleatoria y la exponencial, y esto puede ser cualquier cosa, sin tener significado fsico, hay que considerar que el ruido fue muestreado con la ventana rectangular, lo que agrega ms desorden al espectro.
TransformadadeFourierparaSealAleatoria
0.2 0.18 0.16 0.14 0.12 0.1 0.08 0.06 0.04 0.02 0 0 10 |X|
20
30
40
50 60 Frecuencia
70
80
90
100
Ejercicio 8
En esta parte se calcula el espectro promedio de 50 seales aleatorias y de 50 seales aleatorias y una senoidal. La senoidal ser:
Los espectros promedios para la parte aleatoria son aleatorios y mantienen esta condicin. Si se compara con el promedio de la parte aleatoria ms la sinusoidal se vera que a medida que se sube el nmero de espectros considerados , se notar ms la diferencia entre la amplitud de la senoidal, en este caso 10, y el ruido. El ruido ira variando poco respecto de los valores anteriores, pero se notara en el espectro como un valor constante para cada frecuencia.
TransformadadeFourierparaRuido
25 30 35 40 Frecuencia TransformadadeFourierparaRuidoSealSenoidal
10
15
20
45
50
10
15
20
25 30 Frecuencia
35
40
45
50
Ejercicio 9
En esta parte se calcula el espectro promedio de 50 seales aleatorias y de 50 seales aleatorias y una senoidal con dos frecuencias de muestreo Fs=100 y Fs=1000. La senoidal ser: En los promedios para las seales aleatorias se ve que para mayor frecuencia de muestreo el valor medio del ruido es menor. Bajando en una dcima parte, con una Fs 10 veces mayor. Para la los promedios de la seal aleatoria ms la senoidal, se tiene observa que el valor medio del ruido tambin baja, pero un la cuarta parte, no tanto como en el caso de la seal aleatoria sola. La amplitud de la senoidal no se ve mayormente afectado por el cambio de Fs.
TransformadadeFourierparaRuidoFs=100
0.2
0.1
|X|
10
25 30 35 40 Frecuencia TransformadadeFourierparaRuidoFs=1000
15
20
45
50
100
150
350
400
450
500
TransformadadeFourierparaRuidoySealSenoidalFs=100
X=20 Y=0.40495
25 30 35 40 45 Frecuencia TransformadadeFourierparaRuidoySealSenoidalFs=1000
10
15
20
50
50
100
150
350
400
450
500
Ejercicio 10
Se busca el tiempo de la muestra para obtener una resolucin en frecuencias de 5 Hz
De ahi que:
Se espera encontrar 3 lneas para las tres sinusoides de frecuencia 49.5, 50 y 50,5. La FFT calculada con una resolucin de en frecuencia de 5 [Hz] slo muestra la amplitud del seno de 50 Hz. Este debe tener una amplitud de
Sin embargo la amplitud que muestra es 2.8721, mucho mayor. La resolucin que debe tener para poder mostrar las 3 barras es de 0.5 Hz esta se logra con un Tiempo de muestra de:
En este caso la amplitud de la transformada es igual a la amplitud del seno, esto por que el tiempo de muestre es 2.
El resultado es lo esperado, las 3 barras con amplitudes de 8, 10 y 12, para las frecuencias 49.5, 50 y 50.5 respectivamente, y como el numero de ciclos es entero, no hay fugas laterales: ;
Ejercicio 11
La influencia de la exponencial en la multiplicacin con una senoidal cambiando el coeficiente de amortiguamiento.
Para el anlisis se ocultan los cerros, para ello se toman T=3 para dar un nmero entero de ciclos.
Si se tuviera solo la senoidal se tendra una barra en f=10 con una amplitud de 15, pero en estos casos se observan lneas rodeando a la de f=10 y amplitudes mayores al caso sin exponencial. En el caso de ms amortiguamiento se observan ms lneas que en el de menos y tambin el pico tiene 10000 veces ms amplitud que en el caso con menor amortiguamiento. Adems el caso con mayor amortiguamiento tiene en las frecuencias cercanas a 0 valores distintos de 0, comparndolas con la de menor amortiguamiento.
TransformadadeFourier =0.05
40 30 20 10 0 0 x10
6
|X|
10
15
4 3 2 1 0 |X|
20
40
45
50
10
15
20
25 30 Frecuencia
35
40
45
50
Ejercicio 12
Para producir "aliasing" se busca no satisfacer el Criterio de Nyquist que dice que la frecuencia a analizar debe ser como mximo igual a la frecuencia de muestreo.
Entonces con una Fs=10 creamos una sinusoidal de frecuencia f0=8 que es mayor que Fs/2=5.
Observamos que la FFT muestra como si fuese una sinusoidal de amplitud 6, pues:
En el grafico temporal vemos el error de muestreo la senoidal de frecuencia 8 es tomada como una de frecuencia 2.
10 5 0 5 10 x
SealTemporal
0.5
2.5
2.5 3 Frecuencia
3.5
4.5
Ejercicio 13
Para tomar 32+3/4 de ciclo calculamos el tiempo de la muestra que satisface esta condicin
Evaluando en f=25.19 y en |X| =5.883 . Luego despejando clculo anterior se obtiene la frecuencia y amplitud verdadera:
8 6 4 2 0 |X|
TransformadadeFourier
X:25.19 Y:5.883
10
20
30
40
50 60 Frecuencia
70
80
90
100
Se grafica la solucin analtica superpuesta a la FFT y en las siguientes figuras se ve corresponden los puntos de la constante en f=0 y del seno en f=25, por lo que estn correctas.
TransformadadeFourier 6 5 4 |X| 3 2 1 0
20
22
24 26 Frecuencia TransformadadeFourier
28
30
4 3.5 3 2.5 |X| 2 1.5 1 0.5 0.5 1 1.5 2 2.5 3 Frecuencia 3.5 4 4.5 5
Apndice
Funciones utilizadas para los clculos I Funcin para calcular la FFT
function [ff,tfx]=solfft(x,Fs) % Calcula la transformada de Fourier de x, muestreado con % unafrecuencia Fs, % ademas grada la escala de frecuencias N=length(x); T=(N)/Fs; tfx=abs(fft(x)); %Nmero de muestras %Tiempo de la muestra %saca el modulo de los %complejos
ff=linspace(0,(N-1)/N*Fs,length(tfx));%Se definen las frecuencias tfx=tfx(1:ceil((N+1)/2)); ff=ff(1:ceil((N+1)/2)); tfx=tfx*T/N; end % se trunca la transformada % Dimensionaliza por el tiempo
Ejercicio 1
Fs=200; t=0:1/Fs:1.28-1/Fs; N=length(t); x=3+10*sin(50*pi*t); n=N/2+1; %Indice del punto final para frecuencias tfx=abs(fft(x)); tfx=tfx(1:n); f=linspace(0,100,length(tfx)); df=f(2); T=1.28; stem(f,tfx/max(tfx)*10) title('Transformada de Fourier') xlabel('Frecuencias') ylabel('X_{max}/10')
Ejercicio 2 y 3
t=0:5e-3:1.295; Fs=200; N=length(t) T=t(end); x=3+10*sin(50*pi*t); n=N/2+1; tfx=abs(fft(x)); tfx=tfx(1:n)/N; %La Fs es 200
yv1=5*afft(25,1.28,0,100,.01); %Transformada analitica del seno yv2=3*afft(0,1.28,0,100,.01); yv3=yv1+yv2; hold on vmax=max([yv3 tfx]); %plot(linspace(0,100,length(yv3)),yv3*10/vmax,'g') stem(linspace(0,100,length(tfx)),tfx*10/vmax) title('Transformada de Fourier') xlabel('Frecuencias') ylabel('X_{max}/10')
Ejercicio 4
f0=25; A=10; B=3; Fs=200; t=0:1/Fs:1.295; N=length(t); T=t(end); x=B+A*sin(2*f0*pi*t); VH=1/2*(1-cos(2*pi*t/T)); xh=x.*VH; n=N/2+1; [ff,tfc]=solfft(x,Fs); [ff,tfh]=solfft(xh,Fs);
%Ventana Hanning %Aplica la ventana %Indice del punto final para frecuencias %Clculo de Frecuencias y escala Cuadrada %Clculo de Frecuencias y escala Cuadrada
subplot(2,1,1) stem(ff,tfc),hold on title('FFT Ventana Cuadrada') xlabel('Frecuencia') ylabel('|X|') plot([0,25],[B*T,A*T/2],'s') subplot(2,1,2) stem(ff,tfh),hold on title('FFT Ventana Hanning') xlabel('Frecuencia') ylabel('|X|') plot([0,25],[B*T,A*T/2],'s')
Ejercicio 5
Fs=1/2.5e-3; %Frecuencia de Muestro t=0:2.5e-3:.64-1/Fs; %La Fs es 200 N=length(t); %Numero de puntos x=10*abs(sin(50*pi*t)); n=N/2+1; %Indice del punto final para frecuencias [ff,tfx]=solfft(x,Fs); %Clculo de Frecuencias y escala T=1/ff(2); %Tiempo de la muestra stem(ff,tfx) %Grfico title('Transformada de Fourier') xlabel('Frecuencia') ylabel('|X|')
Ejercicio 6
Fs=1/10; %Frecuencia de Muestro t=0:1/Fs:1e3-1/Fs; %La Fs es 200 N=length(t); %Numero de puntos for i=1:length(t) if t(i)<=1e2 x(i)=100; else x(i)=0; end end n=N/2+1; %Indice del punto final para frecuencias [ff,tfx]=solfft(x,Fs); %Clculo de Frecuencias y escala T=1/ff(2); %Tiempo de la muestra % yv=afft(f0,T,vi,vf,paso) yv=100*afft(0,100,ff(1),ff(end),1e-4); subplot(2,1,1) plot(t,x,'-x') title('Seal Temporal') xlabel('Tiempo') ylabel('x') subplot(2,1,2) stem(ff,tfx) %Grfico title('Transformada de Fourier') xlabel('Frecuencia') ylabel('|X|') hold on plot(ff(1):1e-4:ff(end),yv,'k')
Ejercicio 7
t=0:5e-3:1.28-5e-3; %La Fs es 200 Fs=200; %Frecuencia de Muestro N=length(t); %Numero de puntos x=randn(size(t)); n=N/2+1; %Indice del punto final para frecuencias [ff,tfx]=solfft(x,Fs); %Clculo de Frecuencias y escala T=1/ff(2); %Tiempo de la muestra stem(ff,tfx) %Grfico title('Transformada de Fourier para Seal Aleatoria') xlabel('Frecuencia') ylabel('|X|')
EJERCICIO 8
Inicio
clear all close all clc f=10; Fs=100; t=0:1/Fs:2-1/Fs; x=sin(2*pi*f*t); S=0; %con sinusiode Sr=0; %solo ruido for i=1:50; xx=x+3*randn(size(t)); xr=randn(size(t)); [ff,tfx]=solfft(xx,Fs); [ff,tfr]=solfft(xr,Fs); S=S+tfx; Sr=Sr+tfr; end T=1/ff(2); S=S/50; Sr=Sr/50; subplot(2,1,1),stem(ff,Sr,'-x') title('Transformada de Fourier para Ruido') xlabel('Frecuencia') ylabel('|X|') subplot(2,1,2),stem(ff,S,'-x') title('Transformada de Fourier para Ruido Seal Senoidal') xlabel('Frecuencia') ylabel('|X|')
EJERCICIO 9
f=10; Fs=100; t=0:1/Fs:2-1/Fs; x=sin(2*pi*f*t); S=0; %con sinusiode Sr=0; %solo ruido for i=1:50; xx=x+3*randn(size(t)); xr=randn(size(t)); [ff100,tfx]=solfft(xx,Fs); [ff100,tfr]=solfft(xr,Fs); S=S+tfx; Sr=Sr+tfr; end T100=1/ff100(2); S100=S/50; Sr100=Sr/50; %Parte 2 Fs=1000; t=0:1/Fs:2-1/Fs; x=sin(2*pi*f*t); S=0; %con sinusiode Sr=0; %solo ruido for i=1:50; xx=x+3*randn(size(t)); xr=randn(size(t)); [ff1000,tfx]=solfft(xx,Fs); [ff1000,tfr]=solfft(xr,Fs); S=S+tfx; Sr=Sr+tfr; end T1000=1/ff1000(2); S1000=S/50; Sr1000=Sr/50; figure(1) subplot(2,1,1),stem(ff100,Sr100,'-x') title('Transformada de Fourier para Ruido Fs=100') xlabel('Frecuencia') ylabel('|X|') subplot(2,1,2),stem(ff1000,Sr1000,'-x') title('Transformada de Fourier para Ruido Fs=1000') xlabel('Frecuencia') ylabel('|X|') figure(2) subplot(2,1,1),stem(ff100,S100,'-x') title('Transformada de Fourier para Ruido y Seal Senoidal Fs=100') xlabel('Frecuencia') ylabel('|X|') subplot(2,1,2),stem(ff1000,S1000,'-x') title('Transformada de Fourier para Ruido y Seal Senoidal Fs=1000') xlabel('Frecuencia') ylabel('|X|')
Ejercicio 10
Fs=400; T1=.2; t1=0:1/Fs:T1-1/Fs; N1=length(t1); x1=10*sin(100*pi*t1)+8*sin(99*pi*t1)+12*sin(101*pi*t1); n1=N1/2+1; %Indice del punto final para frecuencias [ff1,tf1]=solfft(x1,Fs); %Clculo de Frecuencias y escala Cuadrada Fs=1000; T2=2; t2=0:1/Fs:T2-1/Fs; N2=length(t2); x2=10*sin(100*pi*t2)+8*sin(99*pi*t2)+12*sin(101*pi*t2); n2=N2/2+1; %Indice del punto final para frecuencias [ff2,tf2]=solfft(x2,Fs); %Clculo de Frecuencias y escala Cuadrada subplot(2,1,1) stem(ff1,tf1),hold on title('FFT con Resolucin 5') xlabel('Frecuencia') ylabel('|X|') subplot(2,1,2) stem(ff2,tf2),hold on title('FFT con Resolucin 0.5') xlabel('Frecuencia') ylabel('|X|') T1/2*max(tf1) T2/2*[tf2(100),tf2(101),tf2(102)]
Ejercicio 11
Fs=100; t=0:1/Fs:3-1/Fs; %Frecuencia de Muestro N=length(t); x1=10.*exp(10*0.05*t).*sin(2*10*pi*t); x2=10.*exp(10*0.5*t).*sin(2*10*pi*t); n=N/2+1; frecuencias [ff,tfx1]=solfft(x1,Fs); escala [ff,tfx2]=solfft(x2,Fs); escala T=1/ff(2); T/(1/10); %La Fs es 200 %Numero de puntos
%Indice del punto final para %Clculo de Frecuencias y %Clculo de Frecuencias y %Tiempo de la muestra
Ejercicio 12
f0=8; Fs=10; t=0:1/Fs:3-1/Fs; %Frecuencia de Muestro N=length(t); x=6*sin(2*pi*f0*t); n=N/2+1; frecuencias [ff,tfx]=solfft(x,Fs); T=1/ff(2); tt=linspace(t(1),t(end),1000); xx=6*sin(2*pi*f0*tt); subplot(2,1,1) plot(t,x,'-o');hold on plot(tt,xx,'r') title('Seal Temporal') xlabel('Tiempo') ylabel('x') subplot(2,1,2) stem(ff,tfx) title('Transformada de Fourier') xlabel('Frecuencia') ylabel('|X|') %La Fs es 200 %Numero de puntos %Indice del punto final para %Clculo de Frecuencias y escala %Tiempo de la muestra
Ejercicio 13
Fs=200; f0=25; t=0:1/Fs:131/100-1/Fs; N=length(t); x=3+10*sin(2*f0*pi*t); n=N/2+1; frecuencias [ff,tfx]=solfft(x,Fs); T=1/ff(2);
%Indice del punto final para %Clculo de Frecuencias y escala %Tiempo de la muestra
tf1=5*afft(f0,T,ff(1),ff(end),1e-3); %Transformada analtica del seno tf2=3*afft(0,T,ff(1),ff(end),1e-3); %Transformada analtica de 3 tfa=tf1+tf2; stem(ff,tfx) %Grfico hold on plot(linspace(ff(1),ff(end),length(tfa)),tfa,'k') title('Transformada de Fourier') xlabel('Frecuencia') ylabel('|X|')