0% encontró este documento útil (0 votos)
51 vistas12 páginas

Laboratorio 3

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 12

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

ING. ELECTRNICA Y TELECOMUNICACIONES

PROCESAMIENTO DIGITAL DE SEALES


LABORATORIO N 3
TRANSFORMADA DISCRETA DE FOURIER Y CONVOLUCIN
Presentador por: Yupanqui Ttito, Edgar S.

MARCO TEORICO Series de Fourier La idea bsica de las series de Fourier es que toda funcin peridica de periodo T puede ser expresada como una suma trigonomtrica de senos y cosenos del mismo periodo T. Algunas funciones peridicas f(t) de periodo T pueden expresarse por la siguiente serie, llamada serie trigonomtrica de Fourier.

Donde Wo=2*pi/T se denomina frecuencia fundamental.

Para obtener la serie de Fourier necesitamos calcular los coeficientes a 0, a1, a2, , b1, b2, Se realiza mediante la ortogonalidad de las funciones seno y coseno.

Ejemplo en software Matlab Se define una funcin rectangular f(t)= 1 (0 < t < pi) -1 (pi < t < 2pi) al calcular los coeficientes se obtuvo: a0=0 an=0 bn=((1/(pi*k))*((1-cos(k*pi))-(cos(k*pi)-cos(2*k*pi)))) El cdigo en matlab, para graficar esta serie es:
clear all clc a0=0; %Coeficiente de ao an=0; %Coeficiente de an w=1; n=20; %Nmero de armnicos t=0:.1:10; sum=0; for k=1:n sum=sum+a0+an*cos(w*k*t)+((1/(pi*k))*((1-cos(k*pi))-(cos(k*pi)cos(2*k*pi))))*sin(w*k*t); %Series de Fourier end plot(t,sum) grid on

Transformada de Fourier en Tiempo Discreto La transformada de Fourier X(w) de una seal en tiempo discreto x[n] se calcula mediante la expresin

y su inversa es,

La DTFT X(w) toma valores complejos y es una funcin continua y peridica en w. El periodo es 2p, representndose normalmente en el intervalo [ -p,p]. Al evaluar numricamente la DTFT se presentan dos problemas: a) La secuencia x[n] puede tener un nmero infinito de puntos. b) X(w) es una funcin continua de la frecuencia w y debe ser discretizada para trabajar en un procesador digital. Para resolver el primer problema consideraremos que la secuencia de entrada est formada por un vector de L puntos siendo 0 para los valores comprendidos entre L+ 1 e infinito. Para el segundo, consideraremos que X(w) se evala en un numero N finito de frecuencias equidistantes en el intervalo [-p,p] con incrementos de 2p/N, es decir se consideran el conjunto

discreto de frecuencias wk = 2pk/N con k=0,1,...N-1. Si se elige N lo suficientemente grande los valores X[2pk/N] se aproximan a la funcin X(w) continua origen del muestreo. Al muestrear la DTFT de esta manera se obtiene la expresin correspondiente a la trasformada discreta de Fourier DFT que en MATLAB se implementa mediante el algoritmo conocido como FFT (Fast Fourier Transform).

Convolucin Es de recordar que la suma convolucin expresa la salida de un sistema de tiempo discreto en trminos de la entrada y la respuesta al impulso del sistema. Matlab tiene una funcin llamada conv que evala la convolucin de seales de tiempo discreto de duracin finita. Si x y h son vectores representado seales, entonces el siguiente comando de Matlab genera un vector llamado y representando la convolucin de la seales representadas por x y h. y = conv(x, h) El nmero de elementos en el vector y es dado por la suma de el nmero de elementos en x y h menos uno. Ntese que se debe conocer el tiempo de origen de las seales representadas por x y h con el fin de determinar el tiempo de origen de la convolucin. En general, si el primer elemento de x corresponde al tiempo n=kx y el primer elemento de h corresponde a n=kh, entonces el primer elemento de y corresponde al tiempo n= kx+kh. Para ilustrar este hecho, considere el siguiente ejemplo: - Asuma el sistema LTI el cual tiene la siguiente respuesta al impulso.

- Determine la salida de este sistema en respuesta a la siguiente entrada.

Aqu el primer elemento diferente de cero en la respuesta al impulso del sistema ocurre en el tiempo n = -1 y el primer elemento de la entrada x ocurre en el tiempo n = 0. La anterior convolucin se puede calcular en Matlab de la siguiente manera:

>> h = [1, 2, 1]; >> x = [2, 3, -2]; >> y = conv(x,h) y= 2 7 6 -1 -2 >> n = -1:3; >> stem(n,y); El primer elemento en el vector corresponde al tiempo n = 0 + (-1 ) = -1. y

EJERCICIO 1:
n=[0:29]; x=cos(2*pi*n/10); N1=64; N2=128; N3=256; N4=30; X1=abs(fft(x,N1)); X2=abs(fft(x,N2)); X3=abs(fft(x,N3)); X4=abs(fft(x,N4)); F1=[0:N1-1]/N1; F2=[0:N2-1]/N2; F3=[0:N3-1]/N3; F4=[0:N4-1]/N4; plot(F1,X1,'-x'),title('N=64'),axis([0 1 0 20])

plot(F2,X2,'-x'),title('N=128'),axis([0 1 0 20])

plot(F3,X3,'-x'),title('N=256'),axis([0 1 0 20])

plot(F4,X4,'-x'),title('N=30'),axis([0 1 0 20])

Conclusin: La seal se va tornando mas ntida al incrementar el nmero de muestras tomadas a la seal original.

EJERCICIO 2
n=[0:29]; x1=cos(2*pi*n/10); x2=[x1 x1]; x3=[x1 x1 x1]; N=2048; X1=abs(fft(x1,N)); X2=abs(fft(x2,N)); X3=abs(fft(x3,N)); F=[0:N-1]/N; subplot(3,1,1) plot(F,X1),title('3 periodos'),axis([0 1 0 50]) subplot(3,1,2) plot(F,X2),title('6 periodos'),axis([0 1 0 50]) subplot(3,1,3) plot(F,X3),title('9 periodos'),axis([0 1 0 50])

Conclusin: Se puede apreciar que al variar los periodos, la seal va aumentando la amplitud y se puede apreciarla mejor. A mayor periodo, la amplitud de la seal se incrementa. EJERCICIO 3
n=[0:149]; x1=cos(2*pi*n/10); N=2048; X=abs(fft(x1,N)); X=fftshift(X); F=[-N/2:N/2-1]/N; plot(F,X), xlabel('frequency/fs')

TAREA 2012-I i)
function fousen(N) x=0:0.001:6; sumparcial=0; N=10; b=zeros(1,N); for k=1:N b(k)=2/(k*pi); sumparcial=sumparcial+b(k)*sin(k*x*2*pi/2); end f=(x<0).*(-1-x/2)+(x>=0).*(1-x/2); plot(x,f,'b',x,sumparcial,'r'),shg

1.5

0.5

-0.5

-1

-1.5

-2 0

Conclusin: La suma de senos obtenidos al reemplazar la variable N da como resultado la seal mostrada en la parte superior. Tiene una forma similar a la de un diente de sierra con notables rasgos de funciones seno. ii)
function fou(N) x=-1:0.001:3; N=2; a=zeros(1,N); sumparcial=1/3; for k=1:N a(k)=quadl(@fun,-1,1,1e-9,[],k); sumparcial=sumparcial+a(k)*cos(k*x*pi); end f=x.^2; plot(x,f,'b',x,sumparcial,'r'),shg grid function y=fun(t,n) y=(t.^2).*cos(n*pi*t);

0 -1

-0.5

0.5

1.5

2.5

Conclusin: En la imagen se puede ver que los N=10 primeros nmeros se aproximan a los coeficientes de la serie de Fourier. La imagen tiene la forma de un seno desfasado 90 grados con T=[-1,1] dados como dato. iii) CONVOLUCION = Columns 1 through 15 0 0 0 0 0 0 0 Columns 16 through 30 0 0 0 0 0 0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

Columns 31 through 45 0 0 0 0 0 0 0 Columns 46 through 60 0 0 0 0 0 0 0 Columns 61 through 75 1 3 5 7 9 11 13 Columns 76 through 90 31 33 35 37 39 41 Columns 91 through 105 41 41 41 41 41 41 Columns 106 through 120 41 41 41 41 41 41 Columns 121 through 135 41 41 41 41 41 41 Columns 136 through 150 41 41 41 41 41 41 Columns 151 through 165 41 41 41 41 41 41 Columns 166 through 180 41 41 41 41 41 41 Columns 181 through 195 41 41 41 41 41 41 Columns 196 through 210 41 41 41 41 41 41 Columns 211 through 225 41 41 41 41 41 41 Columns 226 through 240 41 41 41 41 41 41 Columns 241 through 255 41 41 41 41 41 41 Columns 256 through 270 41 41 41 41 41 41 Columns 271 through 285 41 41 41 41 41 41 Columns 286 through 300 41 41 41 41 41 41 Columns 301 through 315 41 41 41 41 41 41 Columns 316 through 330 41 41 41 41 41 41 Columns 331 through 345 41 41 41 41 41 41 Columns 346 through 360 41 41 41 41 41 41 Columns 361 through 375 41 41 41 41 41 41 Columns 376 through 390 41 41 41 41 41 41

0 0

0 0

0 0

0 0

0 0

0 0

0 0

0 0

15 17 19 21 23 25 27 29 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41

Columns 391 through 405 41 41 41 41 41 41 Columns 406 through 420 41 41 41 41 41 41 Columns 421 through 435 41 41 41 41 41 41 Columns 436 through 450 41 41 41 41 41 41 Columns 451 through 465 41 41 41 41 41 41 Columns 466 through 480 32 30 28 26 24 22 Column 481 2

41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 40 38 36 34 20 18 16 14 12 10 8 6 4

Conclusin: Mediante convolucin hemos sido capaces de determinar la respuesta del sistema a una seal de entrada a partir de la respuesta del sistema a una entrada impulso. No se pudo obtener la grafica de la operacin. Solo se muestra la operacin matemtica realizada en matlab.

También podría gustarte