You are on page 1of 13

Prctica No.

04 a
Transformada de Fourier y Convolucin de Seales o n FUNDAMENTOS TEORICOS
El trmino convolucin signica voltear. La convolucin es una herramienta muy importante para el e o o ingeniero, porque proporciona un medio para ver y caracterizar sistemas f sicos. Por ejemplo, se usa para encontrar la respuesta y(t) de un sistema a una excitacin x(t), conociendo la respuesta del impulso del sistema o h(t). Esto se logra a travs de la integral de convolucin, denida como, e o

y(t) =

x() h(t ) d()

(1)

o simplemente y(t) = x(t) h(t) (2)

donde es una variable muda (impl cita) y el asterisco denota la convolucin. La ecuacin (1) o la (2) establecen o o que la salida es igual a la entrada convolucionada con la respuesta ante un impulso unitario. El proceso de convolucin es conmutativo: o y(t) = x(t) h(t) = h(t) x(t) o sea y(t) =

x() h(t ) d =

h() x(t ) d

Esto implica que el orden en el que las dos funciones se convolucionan es irrelevante. Se ver brevemente a cmo aprovechar esta propiedad conmutativa cuando se lleva a cabo el clculo grco de la integral de cono a a volucin. o La convolucin de dos seales consiste en invertir una de las se ales en el tiempo, deo n n splazndola y multiplicndola punto a punto por la segunda se al, e integrando el producto. a a n La ecuacin general de la integral de convolucin est dada en la ecuacin (1); y se aplica a cualquier o o a o sistema lineal. Sin embargo, , la integral de convolucin se puede simplicar si se supone que un sistema tiene o dos propiedades. Primero, si x(t) = 0 para t < 0, entonces,

y(t) =

x() h(t ) d() =


0

x() h(t ) d()

Segundo, si la respuesta al impulso del sistema es causal (es decir, h(t) = 0 para t > 0), entonces h(t) = 0, para t < 0, o bien, > t; de manera que la ecuacin anterior se convierte en o
t

y(t) = h(t) x(t) =


0

x() h(t ) d()

(3)

LEYES Y PROPIEDADES DE LA CONVOLUCION A continuacin, se listan las leyes y algunas propiedades de la integral de convolucin. o o x(t) h(t) = h(t) x(t) f (t) [x(t) + y(t)] = f (t) x(t) + f (t) y(t) f (t) [x(t) y(t)] = [f (t) x(t)] y(t) 1

1. Conmutativa. 2. Distributiva. 3. Asociativa.

4. 5. 6. 7.

f (t) (t) =

f () (t ) d = f (t)

f (t) (t to ) = f (t to )

f (t) (t) =

f () (t ) d = f (t)

f (t) u(t) =

f () u(t ) d =

f () d

Antes de aprender a evaluar la integral de convolucin en la ecuacin (3), se considerar el v o o a nculo entre la transformada de Fourier y la integral de convolucin. o Demostracin o Dadas las funciones x(t) y h(t) con transformadas de Fourier X() y H(), respectivamente, su convolucin o es [ecuaciones (1) y (2)]
t

y(t) = h(t) x(t) =


0

h() x(t ) d

Calculando la transformada de Fourier de ambos lados se obtiene:


Y () =

[h(t) x(t)] =

h() x(t ) d

ejt dt

Intercambiando el orden de integracin y factorizando h(), el cual no depende de t, se produce o


Y () =

h()

x(t ) ejt dt

Para la integral dentro de los corchetes, sea = t de modo que t = + y dt = d . Entonces,


Y () =

h()

x( ) ej( +) d

h() ej d

x( ) ej d = H()X()

Esta es una relacin importante, ya que es la razn principal para emplear la transformada de Fourier en el o o anlisis de sistemas. De la ultima expresin, podemos asegurar que, a o

Y () =

[h(t) x(t)] = H()X()

(4)

como se esperaba; la ecuacin (4) indica que la convolucin en el dominio temporal corresponde a la o o multiplicacin en el dominio de la frecuencia (PROPIEDAD DE CONVOLUCION). o Para ilustrar la propiedad de convolucin, supngase que h(t) y x(t) son pulsos rectangulares idnticos, como o o e se muestra en la gura 4.1(a) y 4.1(b). Recurdese que las transformadas de Fourier de los pulsos rectangulares e son las funciones de muestreo, como se muestra en la gura 4.1(c) y 4.1(d). Segn la propiedad de convolucin, u o el producto de las funciones muestra (o tambin, llamada sinc)debe proporcionar la convolucin de los pulsos e o 2

Figura 4.1 Ilustracin grfica de la propiedad de convolucin.

E.O. Brigham, The Fast Fourier Transform [Englewood Cliffs, NJ: Prentice Hall, 1974], p.60

DESARROLLO
1. Graficar el espectro de la funcin mostrada en la Figura 4.2. a) Usando el resultado analtico. b) Usando la funcin fft.

Figura 4.2

Solucin a) La funcin est definida de la siguiente manera ( ) Obtenemos la transformada de Fourier de f (t)
( ) ( ) ( ) [ ]

[ ( )

)]

)]

Cdigo en MATLAB
Ahora, introducimos esta funcin en MATLAB y graficamos en un determinado intervalo
%AUTOR: ZERON HERNANDEZ ALEJANDRO RAUL %EJERCICIO 1a clear all clc close all w=-20:pi/100:20; Fw=(j.*w.*20.*((sin(w)).^2))./(w.^2); anterior plot(w,abs(Fw),LineWidth,2) xlabel('') ylabel('F()') title('Espectro de la seal f(t)') GRUPO: 4BV2

%Intervalo %Transformada de Fourier del anlisis %Graficacin del espectro

Figura 4.3 Espectro de Frecuencias de la seal f(t), a partir de la funcin F()


calculada analticamente y graficada en MATLAB

b) Para este inciso, nos pide que utilicemos la funcin fft(f,n) de MATLAB [Fast Fourier Transform]. Para ello se define, primeramente, la funcin f(t) y despus se calcula el espectro con la funcin mencionada y se grafica F(). Pero es preciso aclarar que el vector de valores de espectro se tuvieron que reacomodar para obtener un espectro semejante a la figura 4.3. (Dicha grfica que se gener, se muestra en la Fig. 4.4).

Cdigo de MATLAB
%AUTOR: ZERON HERNANDEZ ALEJANDRO RAUL %EJERCICIO 1b GRUPO: 4BV2

clear all clc close all t=-3:.01:3; f=zeros(size(t)); tam1=100; tam2=301; tam3=501; for k=tam1:tam2 f(k)=5; end for k=tam2:tam3 f(k)=-5; end plot(t,f) axis([-3 3 -6 6]) xlabel('t') ylabel('f(t)') title('Funcin f(t)') %Hasta aqu, se define y se grafica la funcin f(t) t = -6:.1:5.9; tam_1=length(t);tam_2=length(t)/2; for k=1:tam_2 f(k)=5; end for k=tam_2+1:(2*tam_2) f(k)=-5; end F=abs(fft(f./27,tam_1)); %Clculo de la transformada de Fourier (normalizada) %Reordenar los puntos en el eje X. Fx=F; F(tam_2+1:tam_1)=Fx(1:tam_2); F(1:tam_2)=Fx(tam_2+1:tam_1); figure(2) plot(t,F) %Grfica del espectro de frecuencias F() xlabel('Frecuencia ') ylabel('F()') title('Espectro de Frecuencia de f(t)')

Figura 4.4 Funcin f(t)

Figura 4.5 Espectro de Frecuencias F() mediante la funcin


fft(f,n) de MATLAB

2. Repetir (1) para la seal mostrada en la Figura 4.6. Solucin. a) Definimos la funcin f(t)

( )

Figura 4.6

La transformada de Fourier se encuentra si se utiliza, de manera directa su ecuacin general, sin

Figura 4.7 Derivada 1a de f(t)

embargo, es mucho ms fcil calcularla utilizando la propiedad de diferenciacin en el tiempo. As que, la primera derivada de la funcin f(t) es

( )

Y su segunda derivada es

( )

( )

)
Figura 4.8 Derivada 2a de f(t)

Al obtener la transformada de Fourier en ambos lados,

( )

( ( )

Cdigo en MATLAB
Introducimos sta funcin en MATLAB y observemos la grfica generada. (Figura 4.9)
%ZERON HERNANDEZ ALEJANDRO RAUL GRUPO: 4BV2 %EJERCICIO 2a clear all clc close all =-8:pi/100:8; %Intervalo para graficar Fw=6.*((sin()).^2./.^2); %(Transformada de Fourier) Funcin obtenida analticamente

plot(w,Fw,'LineWidth',2.1) axis([-8 8 0 7]) xlabel('Frecuencia ') ylabel('F()') title('Espectro de f(t)')

%Grfica del espectro de f(t)

Figura 4.10 Espectro de frecuencia de f(t), utilizando la respuesta analtica.

b) Ahora utilizando la funcin fft(f,n) de MATLAB se escribi este cdigo y se observan las grficas. Cdigo en MATLAB
%ZERON HERNANDEZ ALEJANDRO RAUL %EJERCICIO 2b clear all clc close all t1=-2:.01:0; t2=0:.01:2; y1=(3/2).*t1+3; y2=(-3/2).*t2+3; plot(t1,y1,'LineWidth',2.3) hold on axis([-2.1 2.1 0 3.1]) plot(t2,y2,'LineWidth',2.3) xlabel('t') ylabel('f(t)') title('Funcin f(t)') t=-10:.1:9.9; tam1=length(t); tam2=length(t)/2; for k=1:tam2 f(k)=(3/2)*t(k)+3; end for k=tam2+1:(2*tam2) f(k)=(-3/2)*t(k)+3; end F=abs(fft(f./150,tam1)); %Reordenamos las abcisas Fx=F; F(tam2+1:tam1)=Fx(1:tam2); F(1:tam2)=Fx(tam2+1:tam1); figure(2) plot(t,F,'LineWidth',2.2); axis([-8 8 0 7]) xlabel('w') ylabel('F(w)') title('Espectro de Frecuencia') GRUPO: 4BV2

%Se defini y grafic la funcin f(t)

%Se grafic el espectro de frecuencia F(w) usando fft

Figura 4.11 Grfica de la seal f(t)

Figura 4.12 Espectro de frecuencias F(), mediante la funcin fft(f,n) de MATLAB

Obsrvese que el espectro de frecuencias utilizando la funcin fft(f,n) de MATLAB y acomodando el vector de valores dados por sta funcin, se obtuvo una seal semejante a la que se gener con la transformada de Fourier que se calcul analticamente.

3. Usando la funcin conv(a,b) de MATLAB, graficar la convolucin de las seales mostradas en la Figura 4.13 y Figura 4.14.

Figura 4.13 Funcin h(t)

Figura 4.14 Funcin x(t)

Justificar el resultado generado con MATLAB Solucin. Para obtener la solucin a la integral de convolucin, se siguieron la serie de pasos que se marcaron en la seccin de FUNDAMENTOS TERICOS. Observe las siguientes grficas, para entender mejor el proceso de convolucin.

Estas son las seales originales a convolucionar.

(1) Se reflej la funcin h(t), con respecto al eje de las ordenadas, para obtener la nueva funcin h(-). Y como se va a desplazar a lo largo del eje , y superponer con la funcin x() que es x(t) mantenida fija, la funcin se definir como h(t- ). Por tanto, obtenemos el primer valor de la integral de convolucin. (Figura A)

Figura A

Para

, la integral de convolucin es:

, porque no hay se traslapan las seales.

(2) Ahora, para

, la integral de convolucin es: (Figura B)

Figura B

( ) (

( )( )

(3) Entonces, para , la integral de convolucin es como se muestra en la Figura C. Ntese que mientras va saliendo la funcin desplazada h(t- ) del pulso positivo de la funcin x(), tambin se va superponiendo con el pulso negativo de la misma funcin, por tanto, se tienen que evaluar 2 integrales de convolucin.

Figura C

( )( )

)( )

(4) As, para

, la integral de convolucin es como se muestra en la Figura D.

Figura D ( )( )

(5) Por ltimo, para seales. (Figura E)

, la integral de convolucin es:

, debido a que no se superponen las

Figura E Por tanto, la seal de salida y(t) del sistema mediante la convolucin de las seales x(t) y h(t) es: ( ) ( )

10

Ingresando esta funcin definida a trozos en MATLAB, se gener la siguiente grfica: (Figura 4.15)

Ahora, se utilizar la funcin conv(f1,f2), de MATLAB para hallar la convolucin de funciones. CODIGO DE MATLAB
%AUTOR: ZERON HERNANDEZ ALEJANDRO RAUL GRUPO: 4BV2 %EJERCICIO 3 clear all clc close all t=-2:0.01:4; %Se define un rango de graficacin x=zeros(size(t)); %Para construir la grfica de la funcin x(t) tam1=100; tam2=301; tam3=501; h=zeros(size(t)); %Para construir la grfica de la funcin h(t) tam4=300; tam5=501; tam6=601; for k=tam4:tam5 h(k)=1; end figure(1) plot(t,h,'r','LineWidth',2) %Grfica de la seal h(t) axis([-2 4 -1 2]) xlabel('t') ylabel('h(t)') title('Funcin h(t)') for k=tam1:tam2 x(k)=1; end for k=tam2:tam3 x(k)=-1; end figure(2) plot(t,x,'LineWidth',2) %Grfica de la seal x(t) axis([-2 4 -2 2]) xlabel('t') ylabel('x(t)') title('Funcin x(t)') figure(3) y=conv(h,x)/100; %Vector de Convolucin NORMALIZADO u=length(y); j=12/u; c=0:j:12-j; %Rango de graficacin en el eje de abcisas plot(c-5,y,'g','LineWidth',2.2) %Grfica de la convolucin. xlabel('t') ylabel('y(t)') title('Convolucin de x(t)*h(t)')

11

Las grficas que se generaron fueron las siguientes.

Figura 4.16 Funcin h(t) definida en MATLAB

Figura 4.17 Funcin x(t) definida en MATLAB

Figura 4.18 Convolucin x(t)*h(t) utilizando la funcin conv(f1,f2) de MATLAB

Como podemos observar, en la figura 4.18, con la funcin conv(a,b) se obtuvo la misma grfica de convolucin que se hay de forma analtica.

OBSERVACIONES Y COMENTARIOS En los ejercicios 1 y 2, se tuvo que normalizar la transformada de Fourier dada por la funcin fft(f) de MATLAB, debido a que esta funcin, en realidad trata valores discretos de tiempo, siendo en s la transformada Discreta de Fourier. Por tal motivo, toma muestras pequeas y discretas, que despus se graficaron. En el ltimo ejercicio, tambin se tuvo que normalizar la convolucin obtenida con la funcin conv(a,b) de MATLAB, a causa de que los valores se exceden de magnitud, por tal motivo, se modific el cdigo para disminuir dichos valores, y obtener lo ms prximo al resultado analtico desarrollado.

12

CONCLUSIONES

Podemos decir que la transformada rpida de Fourier FFT en MATLAB es una herramienta eficaz para calcular la transformada de Fourier, pero en realidad, es la transformada discreta de Fourier (tiempos discretos) de una seal. En s, la transformada de Fourier ayuda a calcular el espectro de frecuencias de una seal que nos ayudar en el tratamiento de seales.

Tambin, es importante destacar que la convolucin de seales es una herramienta fundamental para entender y aplicar el concepto de modulacin, y que mejor que MATLAB contenga una funcin indispensable para todo ingeniero que estudie el tratamiento de seales, dicha funcin es conv(a,b).

REFERENCIAS

[1] CHARLES, K. ALEXANDER & SADIKU, MATHEW N. O., Fundamentos de Circuitos Elctricos, 3ra. Edicin, McGraw-Hill, Mxico, 2007. Cap. 15 (pgs. 697 a 700) y Cap. 18 Transformada de Fourier pgs. 821 a 824. [2] LATHI, B.P., Modern Digital and Analog Communication Systems, 3rd. Ed., Oxford University Press, New York, 1998; pgs. 97 a 99. [3] [4] LATHI, B. P., Introuccion a la Teora y Sistemas de Comunicacin, LIMUSA Gpo. Noriega Editores, Mxico, 2003; pgs. 87 a 94. HSU, HWEI P., Anlisis de Fourier, 1ra. Edicin, Pearson Eduacin, Mxico, 1998.

13

You might also like