SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
1
                                         Señales y Análisis de Fourier
                             En esta práctica se pretende revisar parte de la materia del tema 2 de la asignatura desde la
                             perspectiva de un entorno de cálculo numérico y simulación por ordenador. El objetivo
                             fundamental es familiarizarse con la definición, manipulación y representación de señales en
                             MATLAB. Para ello, en primer lugar, repasaremos y consolidaremos las nociones de MATLAB
                             adquiridas en la práctica anterior; en particular la definición, operación y representación de
                             señales en el dominio del tiempo. Posteriormente, utilizaremos algunas de las funciones que
                             ofrece MATLAB para el Análisis de Fourier así como para la manipulación de señales en los
                             dominios del tiempo y la frecuencia,




1. Introducción
                      Como ya estudiamos en diversos ejemplos de la práctica anterior, MATLAB es
                      muy utilizado en la definición, manipulación y representación de señales
                      analógicas. Siendo rigurosos, el procedimiento seguido en esos ejemplos no es
                      adecuado para el análisis de señales analógicas; es más, en general, MATLAB
                      no permite analizar señales analógicasi. Esto se debe a que la forma natural de
                      representar una señal en MATLAB es definir una secuencia finita de valores
                      mediante un vector fila. Así, como veremos en el siguiente ejercicio, podemos
                      definir la secuencia de instantes de tiempo equidistantes (intervalo 1 ms) entre 0
                      y 0.25s. Y del mismo modo, definimos una señal sinusoide como una secuencia
                      de valores.

Ejercicio 1


                      Genere una secuencia de instantes de tiempo que parta de t=0s y llegue hasta
                      t=0.25s en intervalos de 1ms. Construya una función seno en esa base de
                      tiempo de amplitud 1 y frecuencia 5Hz. Use plot para dibujar la forma de onda.
                      Además, destaque cada punto de la gráfica con *.

                         >> Tinicial=0;                           % Definimos el tiempo inicial
                         >> Tfinal=0.25;                          % Definimos el tiempo final
                         >> step=0.001;                           % Definimos el paso entre instantes de tiempo
                         >> t=Tinicial:step:Tfinal-step;          % Se genera el vector de tiempos
                         >> y=1*sin(5*2*pi*t);                    % Se genera y
                         >> plot(t,y); hold on;                   % Dibujamos y
                         >> plot(t,y,’*’);                        % Dibujamos las muestras de y



  i. Salvo que se usen bloques funcionales o toolboxes
Señales y Análisis de Fourier                                                                       2



                      Por tanto, siendo estrictos, en MATLAB toda señal es discreta en tiempo, mien-
                      tras que en amplitud puede ser discreta (cuantizada) o continua (aunque limi-
                      tada por la precisión de los tipos numéricos). No obstante, si los intervalos
                      temporales entre valores son suficientemente pequeños y el rango temporal en
                      el que se define la señal es suficientemente amplio, la secuencia de valores
                      empleada para representar la señal y las operaciones realizadas para su análisis
                      proporcionan una buena aproximación a los resultados teóricos. En el caso más
                      simple y frecuente, los valores se toman en instantes equiespaciados, intervalo
                      que no debe confundirse con el periodo de muestreo. De momento, ignoraremos
                      el efecto de la discretización de señales (utilizaremos intervalos de tiempo sufi-
                      cientemente pequeños, de modo que los efectos sean despreciables). Asimismo,
                      la amplitud de las señales está sometida a una discretización que, dada la pre-
                      cisión de los tipos numéricos empleados en MATLAB, podemos ignorar.

1.1. Señales especiales.

                      Vamos a ver una posible forma de representar en MATLAB algunas señales
                      analógicas típicas.
                      SEÑAL ESCALÓN
                         % Ejemplo de señal escalon
                         >> t=-10:0.01:10;
                         >> f_escalon=[zeros(1,1000),ones(1,1001)];
                         >> plot(t,f_escalon);

                      SEÑAL PULSO
                         % Ejemplo de señal pulso
                         >> t=-10:0.01:10;
                         >> f_pulso=[zeros(1,950),ones(1,101),zeros(1,950)];
                         >> plot(t,f_pulso);

                      SEÑAL SAMPLING
                         % Ejemplo de señal sampling
                         >> t=-10:0.01:10;
                         % Señal sampling nula en t=n*pi, n=1,2,...
                         >> f_sampling=sin(t)./t;
                         >> plot(t,f_sampling);
                         % Señal sinc nula en t=n, n=1,2,...
                         >> f_sinc=sinc(t);
                         >> plot(t,f_sinc);

                      SEÑAL IMPULSO O DELTA DE DIRAC
                         % Ejemplo de señal impulso
                         >> t=-10:0.01:10;
                         >> f_impulso=[zeros(1,1000),1,zeros(1,1000)];
                         >> plot(t,f_impulso);

                      SEÑAL DIENTE DE SIERRA
                         % Ejemplo de señal diente de sierra de periodo 0.1Hz
                         % sawtooth(x,width) señal en diente de sierra con periodo 2*pi para los
                         % elementos del vector x. El parámetro “width” es un escalar entre
2. Análisis de Fourier                                                                                  3



                            % 0 y 1, y describe la fracción del periodo 2*pi en el que ocurre el
                            % máximo.
                            >> t=-10:0.01:10;
                            >> width=0.10;
                            >> f_sierra=sawtooth(2*pi*0.1*t,width);
                            >> plot(t,f_sierra);

                         SEÑAL TRIANGULAR
                            % Ejemplo de señal triangular de periodo 0.1Hz
                            % Es un caso particular de señal diente de sierra con width=0.5
                            >> t=-10:0.01:10;
                            >> f_triangular=sawtooth(2*pi*0.1*t,0.5);
                            >> plot(t,f_triangular);

                         SEÑAL EXPONENCIAL
                            % Ejemplo de señal exponencial decreciente
                            >> t=-10:0.01:10;
                            % tau: constante de tiempo (RC)
                            >> tau=200e-2;
                            >> f_expon=exp(-t/tau);
                            >> plot(t,f_expon);

                         SEÑAL CUADRADA
                            % Ejemplo de señal cuadrada de frecuencia 0.5Hz
                            % square(x,duty) genera una onda cuadrada de periodo 2*pi con un duty cycle dado
                            >> t=-10:0.01:10;
                            >> duty=50; % porcentaje del periodo en el que la señal es positiva
                            >> f_cuadrada=square(2*pi*0.5*t,duty);
                            >> plot(t,f_cuadrada);




2. Análisis de Fourier
                         Las series de Fourier permiten describir señales periódicas como una combi-
                         nación de señales armónicas (sinusoides). Con esta herramienta, podemos anal-
                         izar una señal periódica en términos de su contenido frecuencial o espectro.
                         Además, nos permite establecer la dualidad entre tiempo y frecuencia, de forma
                         que operaciones realizadas en el dominio del tiempo tienen su dual en el
                         dominio frecuencial. Utilizando operaciones sobre vectores, se pueden calcular
                         fácilmente los coeficientes de Fourier correspondientes a una señal. En el ejerci-
                         cio 2, se definen el vector n, que contiene los índices de los coeficientes, y el
                         vector cn, que contiene los coeficientes. Los coeficientes cn, son los coefi-
                         cientes espectrales de la señal. La gráfica de esos coeficientes en función del
                         índice armónico n o de las frecuencias nωo se denomina espectro. Hay dos tipos
                         de gráficos, uno con la magnitud de los coeficientes y otro de la fase. Ambas
                         funciones son discretas en frecuencia.
Señales y Análisis de Fourier                                                                           4



Ejercicio 2


                      Escriba un fichero MATLAB que proporcione los coeficientes de Fourier de una
                      señal cuadrada de periodo 0.2s (frecuencia 5Hz) y amplitud igual a 1V.

                         % Obtener los coeficientes de Fourier para una señal cuadrada de periodo
                         % 0.2s y amplitud 1.
                         clear;
                         % frecuencia de la señal cuadrada (=1/T)
                         f=5;
                         T=1/f;
                         % Indice de los coeficientes
                         n=1:10;
                         % Coeficientes de Fourier
                         cn=2*(cos(n*pi)-1)./(-2*j*n*pi);
                         co=1;
                         subplot(2,1,1);
                         stem(n,abs(cn));
                         ylabel('Magnitud de cn');
                         subplot(2,1,2);
                         stem(n,angle(cn));
                         ylabel('fase de cn');
                         xlabel('n');


                      A partir de la serie de Fourier, es posible reconstruir una señal periódica. Cuanto
                      mayor sea el número de armónicos utilizado en el desarrollo en serie, mejor será
                      la reconstrucción. Un parámetro importante en la reconstrucción de señales es la
                      velocidad de convergencia, o lo que es lo mismo, la velocidad con la que los
                      coeficientes de Fourier tienden a 0.

Ejercicio 3


                      Escriba un fichero en MATLAB para dibujar n armónicos de una señal cuad-
                      rada de periodo 0.2s y amplitud 1.

                         % Desarrollo en serie de Fourier de una señal cuadrada de periodo 0.2s y amplitud 1
                         clear;
                         % frecuencia de la señal cuadrada (=1/T)
                         f=5;
                         T=1/f;
                         % Indice de los coeficientes
                         n=1:10;
                         % Generamos la serie de Fourier
                         t=-1:0.01:1; % vector de tiempos
                         for i=1:50
                            for k=1:size(t,2)
                               s(i,k)=(2*(1-cos(pi*i))/(pi*i))*sin(2*pi*i*f*t(k));
                            end
                         end
                         for k=1:size(t,2)
                            st(k)=sum(s(:,k));
                         end
2. Análisis de Fourier                                                                                5



                           st(1)=st(1)+1;
                           plot(t,st,'r');
                           hold on;
                           % Señal cuadrada original
                           f_cuadrada=square(2*pi*f*t,50);
                           plot(t,f_cuadrada);
                           xlabel(‘tiempo’);
                           ylabel(‘Amplitud’);


                         MATLAB está equipado con funciones especiales que nos van a permitir real-
                         izar un análisis de Fourier de funciones definidas por un conjunto de valores
                         discretos. Por ejemplo, el comando fft() nos permite obtener la transformada
                         rápida de Fourier (fast Fourier Transform) de una secuencia de números
                         definida por el vector x. Por ejemplo:
                           >> X=fft(x);
                         donde X es un vector de números complejos ordenados desde k=0...N-1. Si
                         queremos que sea más eficiente en el cálculo de la ffT, la longitud del vector x
                         deberá ser una potencia de 2. Podemos rellenar de ceros el vector x para que
                         tenga la longitud apropiada. Esto se consigue automáticamente haciendo:
                           >> X=fft(x,N);
                         donde N es exponente de 2. Mientras más largo sea x, más fina será la escala
                         para la ffT. Debido a un fenómeno de plegamiento del espectro, sólo la primera
                         mitad de los puntos obtenidos son de utilidad. La función fftshift() reordena el
                         vector X en orden creciente de frecuencia. Si X es el vector resultante de hacer
                         una ffT, utilizando esta función reordenamos los puntos en función de la fre-
                         cuencia.
                           >> X=fftshift(X);

Ejercicio 4


                         Obtenga la transformada de Fourier de una señal exponencial modulada en
                         amplitud con una frecuencia de portadora de 200Hz, x(t)=exp(-
                         2·t)·sin(2·pi·200·t).

                           % Ejemplo de una ffT de una señal exponencial modulada en amplitud
                           % con una frecuencia portadora de 200Hz.

                           % Definicion de la señal
                           t=-0.25:0.001:0.25;
                           x=exp(-2*t).*sin(2*pi*200*t);
                           % Representacion en el tiempo
                           subplot(3,1,1);
                           plot(t,x);
                           title('x(t)=exp(-2t)·sin(2·pi·200·t)');
                           xlabel('Tiempo (t)');ylabel('x(t)');
                           % Transformada de Fourier
                           X=fftshift(fft(x));
                           % Magnitud y fase de la transformada
                           Xm=abs(X);
                           Xf=unwrap(angle(X))*180/pi;
                           % Base de frecuencias
Señales y Análisis de Fourier                                                                   6



                         delta_t = t(2)-t(1);
                         f = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t;
                         % Representacion en frecuencia
                         subplot(3,1,2);
                         plot(f,Xm,'r');
                         title('Módulo de transformada de Fourier de x(t)');
                         xlabel('frecuencia (Hz)');ylabel('|X(jw)|');
                         subplot(3,1,3);
                         plot(f,Xf,'r');zoom;
                         title('fase de la transformada de Fourier de x(t)');
                         xlabel('frecuencia (Hz)');ylabel('fase X(jw)');


                      A partir de la transformada de Fourier, es posible reconstruir la señal en el
                      dominio del tiempo. El comando ifft() sirve para obtener la transformada
                      inversa de Fourier de una serie de números complejos:
                         >> x=ifft(X);

Ejercicio 5


                      Obtenga la transformada de Fourier de una señal exponencial modulada en
                      amplitud , x(t)=exp(-2·t)·sin(2·pi·3·t). Realice la transformada inversa y
                      obtenga la señal en el tiempo a partir de su transformada.

                         % Ejemplo de una ffT de una señal exponencial modulada en amplitud
                         % Obtención de la señal en el tiempo a partir de su transformada

                         % Definicion de la señal
                         t=-0.25:0.001:0.25;
                         x=exp(-2*t).*sin(2*pi*3*t);
                         % Representacion en el tiempo
                         figure(1);
                         plot(t,x);
                         title('x(t)=exp(-2t)·sin(2·pi·200·t)');
                         xlabel('Tiempo (t)');ylabel('x(t)');
                         % Transformada y representacion en frecuencia
                         Xt=fft(x);
                         X=fftshift(Xt);
                         % Magnitud y fase de la transformada
                         Xm=abs(X);
                         Xf=unwrap(angle(X))*180/pi;
                         % Base de frecuencias
                         delta_t = t(2)-t(1);
                         f = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t;
                         figure(2);
                         subplot(2,1,1);
                         plot(f,Xm,'r');zoom;
                         title('Módulo de transformada de Fourier de x(t)');
                         xlabel('frecuencia (Hz)');ylabel('|X(jw)|');
                         subplot(2,1,2);
                         plot(f,Xf,'r');zoom;
                         title('fase de la transformada de Fourier de x(t)');
                         xlabel('frecuencia (Hz)');ylabel('fase X(jw)');
3. Producto de Convolución                                                                        7



                        % Obtener la señal en el dominio del tiempo a partir de su transformada
                        xrec=ifft(Xt);
                        figure(3);
                        plot(t,xrec);
                        title('Transformada inversa')
                        xlabel('Tiempo (t)');ylabel('xrec(t)');


3. Producto de Convolución
                     La convolución es una potente herramienta matemática utilizada en el proce-
                     sado de señales. Aunque en general se define como un operador que permite
                     determinar la respuesta de un sistema lineal, invariante en el tiempo ante una
                     determinada entrada, también se puede aplicar a dos señales arbitrarias. La con-
                     volución de f y g se denota por f*g y se define como la integral del producto de
                     ambas funciones después de que una sea invertida y desplazada. En MATLAB
                     contamos con la función conv() que realiza la la convolución de los vectores x y
                     h. El vector resultante tiene un tamaño igual a length(x)+length(h)-1.
                        >> y=conv(x,h);

Ejercicio 6


                     Genere un fichero MATLAB donde realice la convolución de una señal coseno
                     de frecuencia 100Hz y una señal escalón. Compruebe que se verifican las
                     propiedades de la transformada de Fourier respecto al producto de convolu-
                     ción.

                        % Ejemplo de una ffT de una señal exponencial modulada en amplitud
                        % Obtención de la señal en el tiempo a partir de su transformada

                        % Definicion de las señales
                        t = -pi:0.001:pi;
                        g_escalon=[zeros(1,1000*pi+1), ones(1,1000*pi+1)];
                        w = 2*pi;
                        g = cos(w*100*t);
                        g_conv = conv(g,g_escalon);
                        figure(1);
                        subplot(3,1,1);
                        plot(t,g_escalon);
                        title('SEÑAL ESCALON');
                        xlabel('Tiempo (t)');ylabel('e(t)');
                        subplot(3,1,2);
                        plot(t,g);
                        title('cos(2·pi·t)');
                        xlabel('Tiempo (t)');ylabel('cos(2*pi*100*t)');

                        % Convolucion
                        g_conv = conv(g,g_escalon);
                        subplot(3,1,3);
                        plot(t,g_conv(1:length(g)),'r')
                        title('Convolucion');
                        xlabel('Tiempo (t)');
Señales y Análisis de Fourier                                                                             8



                          % Transformada y representacion en frecuencia de la convolucion
                          G_conv=fftshift(fft(g_conv));
                          % Magnitud de la transformada
                          Gm_conv=abs(G_conv);
                          % Base de frecuencias
                          delta_t = t(2)-t(1);
                          f = ((1:length(g_conv)) - ceil(length(g_conv)/2)) / length(g_conv) / delta_t;
                          figure(2);
                          subplot(2,1,1);
                          plot(f,Gm_conv,'r');zoom;
                          title('Transformada de Fourier del producto de convolucion)');
                          xlabel('frecuencia (Hz)');ylabel('|X(jw)|');

                          % Obtener G_conv como el producto de los espectros
                          G_escalon=fftshift(fft(g_escalon));
                          G=fftshift(fft(g));
                          G_conv2=G.*G_escalon;
                          % Base de frecuencias
                          delta_t = t(2)-t(1);
                          f2 = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t;
                          subplot(2,1,2);
                          plot(f2,abs(G_conv2),'r');zoom;
                          title('Producto de las transformadas de Fourier)');
                          xlabel('frecuencia (Hz)');ylabel('|X(jw)|');




4. Espectros de densidad de potencia y energía
                      Las señales se pueden clasificarse según sean de energía o de potencia.
                                                             ∞
                                                                      2
                      •   Energía de una señal: E =          ∫   X ( f ) df
                                                            –∞
                                                             ∞

                      •   Potencia de una señal: P =          ∫ S g df
                                                             –∞
                      Una señal se dice que es de energía si su E es finita, lo que implica que su poten-
                      cia es cero. Por ejemplo, los pulsos limitados en el tiempo.Una señal se dice que
                      es de potencia si su potencia es finita, lo que implica que su energía es infinita.
                      Un ejemplo de este tipo de señales lo encontramos en las señales periódicas.
                      Para el cálculo de estos espectros disponemos, además de las funciones para el
                      análisis de Fourier anteriores, de la función psd(), que proporciona la densidad
                      espectral de potencia de una señal en dB.
                          >>Sg=psd(x,);

Ejercicio 7


                      Genere un fichero MATLAB donde realice la densidad espectral de potencia de
                      una señal coseno de frecuencia 100Hz.
5. Cálculo simbólico                                                                               9



                           % Densidad espectral de potencia
                           t=-pi:0.001:pi;
                           w=2*pi*100;
                           g=cos(w*t);
                           PSD=psd(g,2^10,lenght(g));
                           plot(PSD);


5. Cálculo simbólico
                       Durante la práctica hemos representado las señales mediante vectores y hemos
                       manipulado las señales esencialmente mediante operaciones con vectores. Esta
                       es la forma habitual de trabajar con MATLAB. No obstante, aunque en prin-
                       cipio MATLAB no se diseño para realizar operaciones simbólicas, sí es posible
                       definir y manipular señales (y funciones en general) de manera simbólica, si
                       disponemos del Toolbox para el cálculo simbólico. Así, como en el ejercicio 8,
                       podemos definir una función seno o delta de dirac y calcular su transformada de
                       Fourier de forma simbólica.

Ejercicio 8


                       Definir una función seno de forma simbólica y calcular su transformada de Fou-
                       rier.
                           % Análsis de Fourier con cálculo simbólico
                           syms t % crear variable simbólica
                           g=sin(2*pi*t);
                           G=Fourier(g); % Transformada de Fourier
                           ezplot(g);
                           ginv=iFourier(G); % Transformada inversa


6. Cuestionario de Evaluación

6.1. Serie de Fourier

                       •   Escriba un fichero en MATLAB (coeficientes_Fourier.m) que proporcione
                           los coeficientes de Fourier de la señal de la fig 1. Genere un fichero en
                           MATLAB (dibuja_armonicos.m) que permita dibujar n armónicos de dicha
                           señal.

6.2. Transformada de Fourier

                       •   Genere un fichero en MATLAB (transformada_Fourier.m) para obtener la
                           transformada de Fourier de la señal, x(t)=sen(2·pi·200·t+sin(2·pi·2·t)).
                           Realice la transformada inversa y obtenga la señal en el tiempo a partir de
                           su transformada.
Señales y Análisis de Fourier                                                                            10




                                                          1
                                                                        T

                                                                                           t
                                                       −τ/2       τ/2


                                                         Fig. 1

6.3. Producto de Convolución

                      •   Genere un fichero MATLAB (convolucion.m) donde se realice la convolu-
                          ción de una señal coseno de frecuencia 50Hz y una señal pulso. Represente
                          gráficamente las señales obtenidas.

                      NOTA: no será necesaria la entrega de una memoria. La evaluación de esta
                      práctica se basará en los archivos requeridos en cada ejercicio.




Física de las comunicaciones                                                © Electrónica y Electromagnetismo

Más contenido relacionado

La actualidad más candente

10 transformada fourier
10 transformada fourier10 transformada fourier
10 transformada fourier
Alex Jjavier
 
Ejercicios (Series de Fourier)
Ejercicios (Series de Fourier)Ejercicios (Series de Fourier)
Ejercicios (Series de Fourier)
ERICK CONDE
 
correlacion-de-senales
correlacion-de-senalescorrelacion-de-senales
correlacion-de-senales
crico89
 
Lecture 15 probabilidad de error y ber en señales bandabase binaria
Lecture 15 probabilidad de error y ber en señales bandabase binariaLecture 15 probabilidad de error y ber en señales bandabase binaria
Lecture 15 probabilidad de error y ber en señales bandabase binaria
nica2009
 

La actualidad más candente (20)

357502575-resuelto-TPN-2-Muestreo.pptx
357502575-resuelto-TPN-2-Muestreo.pptx357502575-resuelto-TPN-2-Muestreo.pptx
357502575-resuelto-TPN-2-Muestreo.pptx
 
52983063 series-de-fourier
52983063 series-de-fourier52983063 series-de-fourier
52983063 series-de-fourier
 
Procesamiento digital de señales con matlab
Procesamiento digital de señales con matlabProcesamiento digital de señales con matlab
Procesamiento digital de señales con matlab
 
Coeficientes y transformada de Fourier en Matlab
Coeficientes y transformada de Fourier en MatlabCoeficientes y transformada de Fourier en Matlab
Coeficientes y transformada de Fourier en Matlab
 
10 transformada fourier
10 transformada fourier10 transformada fourier
10 transformada fourier
 
La Transformada de Fourier
La Transformada de FourierLa Transformada de Fourier
La Transformada de Fourier
 
Señales Periódicas y Simetría Par e Impar
Señales Periódicas y Simetría Par e ImparSeñales Periódicas y Simetría Par e Impar
Señales Periódicas y Simetría Par e Impar
 
Serie de Fourier
Serie de FourierSerie de Fourier
Serie de Fourier
 
Analisis de fourier para señales
Analisis de fourier para señalesAnalisis de fourier para señales
Analisis de fourier para señales
 
Ejercicios (Series de Fourier)
Ejercicios (Series de Fourier)Ejercicios (Series de Fourier)
Ejercicios (Series de Fourier)
 
6. AM y FM Modulación de amplitud y de frecuencia
6. AM y FM Modulación de amplitud y de frecuencia6. AM y FM Modulación de amplitud y de frecuencia
6. AM y FM Modulación de amplitud y de frecuencia
 
Soluciones: Openheim - Sistemas y señales - cap 5
Soluciones: Openheim - Sistemas y señales - cap 5Soluciones: Openheim - Sistemas y señales - cap 5
Soluciones: Openheim - Sistemas y señales - cap 5
 
Lab 01 - Análisis de señales - UNTECS
Lab 01 - Análisis de señales - UNTECSLab 01 - Análisis de señales - UNTECS
Lab 01 - Análisis de señales - UNTECS
 
correlacion-de-senales
correlacion-de-senalescorrelacion-de-senales
correlacion-de-senales
 
Lab 03 - Análisis de Señales - UNTECS
Lab 03 - Análisis de Señales - UNTECSLab 03 - Análisis de Señales - UNTECS
Lab 03 - Análisis de Señales - UNTECS
 
Lecture 15 probabilidad de error y ber en señales bandabase binaria
Lecture 15 probabilidad de error y ber en señales bandabase binariaLecture 15 probabilidad de error y ber en señales bandabase binaria
Lecture 15 probabilidad de error y ber en señales bandabase binaria
 
Series de fourier
Series de fourierSeries de fourier
Series de fourier
 
SERIES DE FOURIER
SERIES DE FOURIERSERIES DE FOURIER
SERIES DE FOURIER
 
ModulacióN De Amplitud
ModulacióN De AmplitudModulacióN De Amplitud
ModulacióN De Amplitud
 
Parametros de AM
Parametros de AMParametros de AM
Parametros de AM
 

Destacado

Analisis De La Transformada De Fourier En Matlab
Analisis De La Transformada De Fourier En MatlabAnalisis De La Transformada De Fourier En Matlab
Analisis De La Transformada De Fourier En Matlab
miguelbc
 
Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)
morones.om
 
Trabajo dsp Filtro de Butterworth
Trabajo dsp Filtro de Butterworth Trabajo dsp Filtro de Butterworth
Trabajo dsp Filtro de Butterworth
Cristian Zapata
 
Lab 06 - Analisis de señales - UNTECS
Lab 06 - Analisis de señales - UNTECSLab 06 - Analisis de señales - UNTECS
Lab 06 - Analisis de señales - UNTECS
Ing. Electrónica xD
 
Metodos de matrices 2
Metodos de matrices 2Metodos de matrices 2
Metodos de matrices 2
Fredy
 
La transformada de fourier informe
La transformada de fourier  informeLa transformada de fourier  informe
La transformada de fourier informe
loiju
 

Destacado (19)

Analisis espectral en MATLAB
Analisis espectral en MATLABAnalisis espectral en MATLAB
Analisis espectral en MATLAB
 
Analisis De La Transformada De Fourier En Matlab
Analisis De La Transformada De Fourier En MatlabAnalisis De La Transformada De Fourier En Matlab
Analisis De La Transformada De Fourier En Matlab
 
Grafica de una Serie De FOURIER en Matlab
Grafica de una Serie De FOURIER en MatlabGrafica de una Serie De FOURIER en Matlab
Grafica de una Serie De FOURIER en Matlab
 
Series de fourier con MATLAB
Series de fourier con MATLABSeries de fourier con MATLAB
Series de fourier con MATLAB
 
Serie de Fourier
Serie de FourierSerie de Fourier
Serie de Fourier
 
Mat lab manipulación de señales de audio
Mat lab manipulación de señales de audioMat lab manipulación de señales de audio
Mat lab manipulación de señales de audio
 
Analisis Espectral Usando Matlab
Analisis Espectral Usando MatlabAnalisis Espectral Usando Matlab
Analisis Espectral Usando Matlab
 
Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)
 
Trabajo dsp Filtro de Butterworth
Trabajo dsp Filtro de Butterworth Trabajo dsp Filtro de Butterworth
Trabajo dsp Filtro de Butterworth
 
Cognitive Technique for Software Defined Optical Network (SDON)
Cognitive Technique for Software Defined Optical Network (SDON)Cognitive Technique for Software Defined Optical Network (SDON)
Cognitive Technique for Software Defined Optical Network (SDON)
 
Muestreo y cuantificación de una señal analógica con MatLab
Muestreo y cuantificación de una señal analógica con MatLabMuestreo y cuantificación de una señal analógica con MatLab
Muestreo y cuantificación de una señal analógica con MatLab
 
Lab 3 de tele final
Lab 3 de tele finalLab 3 de tele final
Lab 3 de tele final
 
Materiales el+®ctricos y diel+®ctricos
Materiales el+®ctricos y diel+®ctricosMateriales el+®ctricos y diel+®ctricos
Materiales el+®ctricos y diel+®ctricos
 
Series de fodsfjwslurier
Series de fodsfjwslurierSeries de fodsfjwslurier
Series de fodsfjwslurier
 
Apuntes fourier
Apuntes fourierApuntes fourier
Apuntes fourier
 
Lab 02 - Análisis de señales - UNTECS
Lab 02 - Análisis de señales - UNTECSLab 02 - Análisis de señales - UNTECS
Lab 02 - Análisis de señales - UNTECS
 
Lab 06 - Analisis de señales - UNTECS
Lab 06 - Analisis de señales - UNTECSLab 06 - Analisis de señales - UNTECS
Lab 06 - Analisis de señales - UNTECS
 
Metodos de matrices 2
Metodos de matrices 2Metodos de matrices 2
Metodos de matrices 2
 
La transformada de fourier informe
La transformada de fourier  informeLa transformada de fourier  informe
La transformada de fourier informe
 

Similar a Sa fourier con matlab

Teorema del muestro y PCM
Teorema del muestro y PCMTeorema del muestro y PCM
Teorema del muestro y PCM
Joaquin Vicioso
 
Series De Fourier
Series De FourierSeries De Fourier
Series De Fourier
lichic
 
Series De Fourier
Series De FourierSeries De Fourier
Series De Fourier
israel.1x
 
Prácticas de laboratorio de procesamiento digital de señales
Prácticas de laboratorio de procesamiento digital de señalesPrácticas de laboratorio de procesamiento digital de señales
Prácticas de laboratorio de procesamiento digital de señales
Diego Morales
 

Similar a Sa fourier con matlab (20)

laboratorio1 de diniz
laboratorio1 de dinizlaboratorio1 de diniz
laboratorio1 de diniz
 
Sistemas de comunicaciones - Práctica 03
Sistemas de comunicaciones - Práctica 03Sistemas de comunicaciones - Práctica 03
Sistemas de comunicaciones - Práctica 03
 
Teorema del muestro y PCM
Teorema del muestro y PCMTeorema del muestro y PCM
Teorema del muestro y PCM
 
Dsp5
Dsp5Dsp5
Dsp5
 
Muestreo
MuestreoMuestreo
Muestreo
 
Fundamentos_de_Telecomunicaciones_Utiliz.pdf
Fundamentos_de_Telecomunicaciones_Utiliz.pdfFundamentos_de_Telecomunicaciones_Utiliz.pdf
Fundamentos_de_Telecomunicaciones_Utiliz.pdf
 
Series De Fourier
Series De FourierSeries De Fourier
Series De Fourier
 
Series De Fourier
Series De FourierSeries De Fourier
Series De Fourier
 
MUESTREO
MUESTREOMUESTREO
MUESTREO
 
Concepto Introductorio
Concepto IntroductorioConcepto Introductorio
Concepto Introductorio
 
Prácticas de laboratorio de procesamiento digital de señales
Prácticas de laboratorio de procesamiento digital de señalesPrácticas de laboratorio de procesamiento digital de señales
Prácticas de laboratorio de procesamiento digital de señales
 
Prácticas de laboratorio de procesamiento digital de señales
Prácticas de laboratorio de procesamiento digital de señalesPrácticas de laboratorio de procesamiento digital de señales
Prácticas de laboratorio de procesamiento digital de señales
 
Fourier mat lab
Fourier mat labFourier mat lab
Fourier mat lab
 
TRANSFORMADA DISCRETA DE FOURIER
TRANSFORMADA DISCRETA DE FOURIERTRANSFORMADA DISCRETA DE FOURIER
TRANSFORMADA DISCRETA DE FOURIER
 
Tutorial sf
Tutorial sfTutorial sf
Tutorial sf
 
Tratamiento de-senales-digitales
Tratamiento de-senales-digitalesTratamiento de-senales-digitales
Tratamiento de-senales-digitales
 
Analissis espectral
Analissis espectralAnalissis espectral
Analissis espectral
 
Series y Transformada de Fourier
Series y Transformada de FourierSeries y Transformada de Fourier
Series y Transformada de Fourier
 
Practica1m
Practica1mPractica1m
Practica1m
 
Practicas de Sistemas de-tx-y-rx
Practicas de Sistemas de-tx-y-rxPracticas de Sistemas de-tx-y-rx
Practicas de Sistemas de-tx-y-rx
 

Sa fourier con matlab

  • 1. 1 Señales y Análisis de Fourier En esta práctica se pretende revisar parte de la materia del tema 2 de la asignatura desde la perspectiva de un entorno de cálculo numérico y simulación por ordenador. El objetivo fundamental es familiarizarse con la definición, manipulación y representación de señales en MATLAB. Para ello, en primer lugar, repasaremos y consolidaremos las nociones de MATLAB adquiridas en la práctica anterior; en particular la definición, operación y representación de señales en el dominio del tiempo. Posteriormente, utilizaremos algunas de las funciones que ofrece MATLAB para el Análisis de Fourier así como para la manipulación de señales en los dominios del tiempo y la frecuencia, 1. Introducción Como ya estudiamos en diversos ejemplos de la práctica anterior, MATLAB es muy utilizado en la definición, manipulación y representación de señales analógicas. Siendo rigurosos, el procedimiento seguido en esos ejemplos no es adecuado para el análisis de señales analógicas; es más, en general, MATLAB no permite analizar señales analógicasi. Esto se debe a que la forma natural de representar una señal en MATLAB es definir una secuencia finita de valores mediante un vector fila. Así, como veremos en el siguiente ejercicio, podemos definir la secuencia de instantes de tiempo equidistantes (intervalo 1 ms) entre 0 y 0.25s. Y del mismo modo, definimos una señal sinusoide como una secuencia de valores. Ejercicio 1 Genere una secuencia de instantes de tiempo que parta de t=0s y llegue hasta t=0.25s en intervalos de 1ms. Construya una función seno en esa base de tiempo de amplitud 1 y frecuencia 5Hz. Use plot para dibujar la forma de onda. Además, destaque cada punto de la gráfica con *. >> Tinicial=0; % Definimos el tiempo inicial >> Tfinal=0.25; % Definimos el tiempo final >> step=0.001; % Definimos el paso entre instantes de tiempo >> t=Tinicial:step:Tfinal-step; % Se genera el vector de tiempos >> y=1*sin(5*2*pi*t); % Se genera y >> plot(t,y); hold on; % Dibujamos y >> plot(t,y,’*’); % Dibujamos las muestras de y i. Salvo que se usen bloques funcionales o toolboxes
  • 2. Señales y Análisis de Fourier 2 Por tanto, siendo estrictos, en MATLAB toda señal es discreta en tiempo, mien- tras que en amplitud puede ser discreta (cuantizada) o continua (aunque limi- tada por la precisión de los tipos numéricos). No obstante, si los intervalos temporales entre valores son suficientemente pequeños y el rango temporal en el que se define la señal es suficientemente amplio, la secuencia de valores empleada para representar la señal y las operaciones realizadas para su análisis proporcionan una buena aproximación a los resultados teóricos. En el caso más simple y frecuente, los valores se toman en instantes equiespaciados, intervalo que no debe confundirse con el periodo de muestreo. De momento, ignoraremos el efecto de la discretización de señales (utilizaremos intervalos de tiempo sufi- cientemente pequeños, de modo que los efectos sean despreciables). Asimismo, la amplitud de las señales está sometida a una discretización que, dada la pre- cisión de los tipos numéricos empleados en MATLAB, podemos ignorar. 1.1. Señales especiales. Vamos a ver una posible forma de representar en MATLAB algunas señales analógicas típicas. SEÑAL ESCALÓN % Ejemplo de señal escalon >> t=-10:0.01:10; >> f_escalon=[zeros(1,1000),ones(1,1001)]; >> plot(t,f_escalon); SEÑAL PULSO % Ejemplo de señal pulso >> t=-10:0.01:10; >> f_pulso=[zeros(1,950),ones(1,101),zeros(1,950)]; >> plot(t,f_pulso); SEÑAL SAMPLING % Ejemplo de señal sampling >> t=-10:0.01:10; % Señal sampling nula en t=n*pi, n=1,2,... >> f_sampling=sin(t)./t; >> plot(t,f_sampling); % Señal sinc nula en t=n, n=1,2,... >> f_sinc=sinc(t); >> plot(t,f_sinc); SEÑAL IMPULSO O DELTA DE DIRAC % Ejemplo de señal impulso >> t=-10:0.01:10; >> f_impulso=[zeros(1,1000),1,zeros(1,1000)]; >> plot(t,f_impulso); SEÑAL DIENTE DE SIERRA % Ejemplo de señal diente de sierra de periodo 0.1Hz % sawtooth(x,width) señal en diente de sierra con periodo 2*pi para los % elementos del vector x. El parámetro “width” es un escalar entre
  • 3. 2. Análisis de Fourier 3 % 0 y 1, y describe la fracción del periodo 2*pi en el que ocurre el % máximo. >> t=-10:0.01:10; >> width=0.10; >> f_sierra=sawtooth(2*pi*0.1*t,width); >> plot(t,f_sierra); SEÑAL TRIANGULAR % Ejemplo de señal triangular de periodo 0.1Hz % Es un caso particular de señal diente de sierra con width=0.5 >> t=-10:0.01:10; >> f_triangular=sawtooth(2*pi*0.1*t,0.5); >> plot(t,f_triangular); SEÑAL EXPONENCIAL % Ejemplo de señal exponencial decreciente >> t=-10:0.01:10; % tau: constante de tiempo (RC) >> tau=200e-2; >> f_expon=exp(-t/tau); >> plot(t,f_expon); SEÑAL CUADRADA % Ejemplo de señal cuadrada de frecuencia 0.5Hz % square(x,duty) genera una onda cuadrada de periodo 2*pi con un duty cycle dado >> t=-10:0.01:10; >> duty=50; % porcentaje del periodo en el que la señal es positiva >> f_cuadrada=square(2*pi*0.5*t,duty); >> plot(t,f_cuadrada); 2. Análisis de Fourier Las series de Fourier permiten describir señales periódicas como una combi- nación de señales armónicas (sinusoides). Con esta herramienta, podemos anal- izar una señal periódica en términos de su contenido frecuencial o espectro. Además, nos permite establecer la dualidad entre tiempo y frecuencia, de forma que operaciones realizadas en el dominio del tiempo tienen su dual en el dominio frecuencial. Utilizando operaciones sobre vectores, se pueden calcular fácilmente los coeficientes de Fourier correspondientes a una señal. En el ejerci- cio 2, se definen el vector n, que contiene los índices de los coeficientes, y el vector cn, que contiene los coeficientes. Los coeficientes cn, son los coefi- cientes espectrales de la señal. La gráfica de esos coeficientes en función del índice armónico n o de las frecuencias nωo se denomina espectro. Hay dos tipos de gráficos, uno con la magnitud de los coeficientes y otro de la fase. Ambas funciones son discretas en frecuencia.
  • 4. Señales y Análisis de Fourier 4 Ejercicio 2 Escriba un fichero MATLAB que proporcione los coeficientes de Fourier de una señal cuadrada de periodo 0.2s (frecuencia 5Hz) y amplitud igual a 1V. % Obtener los coeficientes de Fourier para una señal cuadrada de periodo % 0.2s y amplitud 1. clear; % frecuencia de la señal cuadrada (=1/T) f=5; T=1/f; % Indice de los coeficientes n=1:10; % Coeficientes de Fourier cn=2*(cos(n*pi)-1)./(-2*j*n*pi); co=1; subplot(2,1,1); stem(n,abs(cn)); ylabel('Magnitud de cn'); subplot(2,1,2); stem(n,angle(cn)); ylabel('fase de cn'); xlabel('n'); A partir de la serie de Fourier, es posible reconstruir una señal periódica. Cuanto mayor sea el número de armónicos utilizado en el desarrollo en serie, mejor será la reconstrucción. Un parámetro importante en la reconstrucción de señales es la velocidad de convergencia, o lo que es lo mismo, la velocidad con la que los coeficientes de Fourier tienden a 0. Ejercicio 3 Escriba un fichero en MATLAB para dibujar n armónicos de una señal cuad- rada de periodo 0.2s y amplitud 1. % Desarrollo en serie de Fourier de una señal cuadrada de periodo 0.2s y amplitud 1 clear; % frecuencia de la señal cuadrada (=1/T) f=5; T=1/f; % Indice de los coeficientes n=1:10; % Generamos la serie de Fourier t=-1:0.01:1; % vector de tiempos for i=1:50 for k=1:size(t,2) s(i,k)=(2*(1-cos(pi*i))/(pi*i))*sin(2*pi*i*f*t(k)); end end for k=1:size(t,2) st(k)=sum(s(:,k)); end
  • 5. 2. Análisis de Fourier 5 st(1)=st(1)+1; plot(t,st,'r'); hold on; % Señal cuadrada original f_cuadrada=square(2*pi*f*t,50); plot(t,f_cuadrada); xlabel(‘tiempo’); ylabel(‘Amplitud’); MATLAB está equipado con funciones especiales que nos van a permitir real- izar un análisis de Fourier de funciones definidas por un conjunto de valores discretos. Por ejemplo, el comando fft() nos permite obtener la transformada rápida de Fourier (fast Fourier Transform) de una secuencia de números definida por el vector x. Por ejemplo: >> X=fft(x); donde X es un vector de números complejos ordenados desde k=0...N-1. Si queremos que sea más eficiente en el cálculo de la ffT, la longitud del vector x deberá ser una potencia de 2. Podemos rellenar de ceros el vector x para que tenga la longitud apropiada. Esto se consigue automáticamente haciendo: >> X=fft(x,N); donde N es exponente de 2. Mientras más largo sea x, más fina será la escala para la ffT. Debido a un fenómeno de plegamiento del espectro, sólo la primera mitad de los puntos obtenidos son de utilidad. La función fftshift() reordena el vector X en orden creciente de frecuencia. Si X es el vector resultante de hacer una ffT, utilizando esta función reordenamos los puntos en función de la fre- cuencia. >> X=fftshift(X); Ejercicio 4 Obtenga la transformada de Fourier de una señal exponencial modulada en amplitud con una frecuencia de portadora de 200Hz, x(t)=exp(- 2·t)·sin(2·pi·200·t). % Ejemplo de una ffT de una señal exponencial modulada en amplitud % con una frecuencia portadora de 200Hz. % Definicion de la señal t=-0.25:0.001:0.25; x=exp(-2*t).*sin(2*pi*200*t); % Representacion en el tiempo subplot(3,1,1); plot(t,x); title('x(t)=exp(-2t)·sin(2·pi·200·t)'); xlabel('Tiempo (t)');ylabel('x(t)'); % Transformada de Fourier X=fftshift(fft(x)); % Magnitud y fase de la transformada Xm=abs(X); Xf=unwrap(angle(X))*180/pi; % Base de frecuencias
  • 6. Señales y Análisis de Fourier 6 delta_t = t(2)-t(1); f = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t; % Representacion en frecuencia subplot(3,1,2); plot(f,Xm,'r'); title('Módulo de transformada de Fourier de x(t)'); xlabel('frecuencia (Hz)');ylabel('|X(jw)|'); subplot(3,1,3); plot(f,Xf,'r');zoom; title('fase de la transformada de Fourier de x(t)'); xlabel('frecuencia (Hz)');ylabel('fase X(jw)'); A partir de la transformada de Fourier, es posible reconstruir la señal en el dominio del tiempo. El comando ifft() sirve para obtener la transformada inversa de Fourier de una serie de números complejos: >> x=ifft(X); Ejercicio 5 Obtenga la transformada de Fourier de una señal exponencial modulada en amplitud , x(t)=exp(-2·t)·sin(2·pi·3·t). Realice la transformada inversa y obtenga la señal en el tiempo a partir de su transformada. % Ejemplo de una ffT de una señal exponencial modulada en amplitud % Obtención de la señal en el tiempo a partir de su transformada % Definicion de la señal t=-0.25:0.001:0.25; x=exp(-2*t).*sin(2*pi*3*t); % Representacion en el tiempo figure(1); plot(t,x); title('x(t)=exp(-2t)·sin(2·pi·200·t)'); xlabel('Tiempo (t)');ylabel('x(t)'); % Transformada y representacion en frecuencia Xt=fft(x); X=fftshift(Xt); % Magnitud y fase de la transformada Xm=abs(X); Xf=unwrap(angle(X))*180/pi; % Base de frecuencias delta_t = t(2)-t(1); f = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t; figure(2); subplot(2,1,1); plot(f,Xm,'r');zoom; title('Módulo de transformada de Fourier de x(t)'); xlabel('frecuencia (Hz)');ylabel('|X(jw)|'); subplot(2,1,2); plot(f,Xf,'r');zoom; title('fase de la transformada de Fourier de x(t)'); xlabel('frecuencia (Hz)');ylabel('fase X(jw)');
  • 7. 3. Producto de Convolución 7 % Obtener la señal en el dominio del tiempo a partir de su transformada xrec=ifft(Xt); figure(3); plot(t,xrec); title('Transformada inversa') xlabel('Tiempo (t)');ylabel('xrec(t)'); 3. Producto de Convolución La convolución es una potente herramienta matemática utilizada en el proce- sado de señales. Aunque en general se define como un operador que permite determinar la respuesta de un sistema lineal, invariante en el tiempo ante una determinada entrada, también se puede aplicar a dos señales arbitrarias. La con- volución de f y g se denota por f*g y se define como la integral del producto de ambas funciones después de que una sea invertida y desplazada. En MATLAB contamos con la función conv() que realiza la la convolución de los vectores x y h. El vector resultante tiene un tamaño igual a length(x)+length(h)-1. >> y=conv(x,h); Ejercicio 6 Genere un fichero MATLAB donde realice la convolución de una señal coseno de frecuencia 100Hz y una señal escalón. Compruebe que se verifican las propiedades de la transformada de Fourier respecto al producto de convolu- ción. % Ejemplo de una ffT de una señal exponencial modulada en amplitud % Obtención de la señal en el tiempo a partir de su transformada % Definicion de las señales t = -pi:0.001:pi; g_escalon=[zeros(1,1000*pi+1), ones(1,1000*pi+1)]; w = 2*pi; g = cos(w*100*t); g_conv = conv(g,g_escalon); figure(1); subplot(3,1,1); plot(t,g_escalon); title('SEÑAL ESCALON'); xlabel('Tiempo (t)');ylabel('e(t)'); subplot(3,1,2); plot(t,g); title('cos(2·pi·t)'); xlabel('Tiempo (t)');ylabel('cos(2*pi*100*t)'); % Convolucion g_conv = conv(g,g_escalon); subplot(3,1,3); plot(t,g_conv(1:length(g)),'r') title('Convolucion'); xlabel('Tiempo (t)');
  • 8. Señales y Análisis de Fourier 8 % Transformada y representacion en frecuencia de la convolucion G_conv=fftshift(fft(g_conv)); % Magnitud de la transformada Gm_conv=abs(G_conv); % Base de frecuencias delta_t = t(2)-t(1); f = ((1:length(g_conv)) - ceil(length(g_conv)/2)) / length(g_conv) / delta_t; figure(2); subplot(2,1,1); plot(f,Gm_conv,'r');zoom; title('Transformada de Fourier del producto de convolucion)'); xlabel('frecuencia (Hz)');ylabel('|X(jw)|'); % Obtener G_conv como el producto de los espectros G_escalon=fftshift(fft(g_escalon)); G=fftshift(fft(g)); G_conv2=G.*G_escalon; % Base de frecuencias delta_t = t(2)-t(1); f2 = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t; subplot(2,1,2); plot(f2,abs(G_conv2),'r');zoom; title('Producto de las transformadas de Fourier)'); xlabel('frecuencia (Hz)');ylabel('|X(jw)|'); 4. Espectros de densidad de potencia y energía Las señales se pueden clasificarse según sean de energía o de potencia. ∞ 2 • Energía de una señal: E = ∫ X ( f ) df –∞ ∞ • Potencia de una señal: P = ∫ S g df –∞ Una señal se dice que es de energía si su E es finita, lo que implica que su poten- cia es cero. Por ejemplo, los pulsos limitados en el tiempo.Una señal se dice que es de potencia si su potencia es finita, lo que implica que su energía es infinita. Un ejemplo de este tipo de señales lo encontramos en las señales periódicas. Para el cálculo de estos espectros disponemos, además de las funciones para el análisis de Fourier anteriores, de la función psd(), que proporciona la densidad espectral de potencia de una señal en dB. >>Sg=psd(x,); Ejercicio 7 Genere un fichero MATLAB donde realice la densidad espectral de potencia de una señal coseno de frecuencia 100Hz.
  • 9. 5. Cálculo simbólico 9 % Densidad espectral de potencia t=-pi:0.001:pi; w=2*pi*100; g=cos(w*t); PSD=psd(g,2^10,lenght(g)); plot(PSD); 5. Cálculo simbólico Durante la práctica hemos representado las señales mediante vectores y hemos manipulado las señales esencialmente mediante operaciones con vectores. Esta es la forma habitual de trabajar con MATLAB. No obstante, aunque en prin- cipio MATLAB no se diseño para realizar operaciones simbólicas, sí es posible definir y manipular señales (y funciones en general) de manera simbólica, si disponemos del Toolbox para el cálculo simbólico. Así, como en el ejercicio 8, podemos definir una función seno o delta de dirac y calcular su transformada de Fourier de forma simbólica. Ejercicio 8 Definir una función seno de forma simbólica y calcular su transformada de Fou- rier. % Análsis de Fourier con cálculo simbólico syms t % crear variable simbólica g=sin(2*pi*t); G=Fourier(g); % Transformada de Fourier ezplot(g); ginv=iFourier(G); % Transformada inversa 6. Cuestionario de Evaluación 6.1. Serie de Fourier • Escriba un fichero en MATLAB (coeficientes_Fourier.m) que proporcione los coeficientes de Fourier de la señal de la fig 1. Genere un fichero en MATLAB (dibuja_armonicos.m) que permita dibujar n armónicos de dicha señal. 6.2. Transformada de Fourier • Genere un fichero en MATLAB (transformada_Fourier.m) para obtener la transformada de Fourier de la señal, x(t)=sen(2·pi·200·t+sin(2·pi·2·t)). Realice la transformada inversa y obtenga la señal en el tiempo a partir de su transformada.
  • 10. Señales y Análisis de Fourier 10 1 T t −τ/2 τ/2 Fig. 1 6.3. Producto de Convolución • Genere un fichero MATLAB (convolucion.m) donde se realice la convolu- ción de una señal coseno de frecuencia 50Hz y una señal pulso. Represente gráficamente las señales obtenidas. NOTA: no será necesaria la entrega de una memoria. La evaluación de esta práctica se basará en los archivos requeridos en cada ejercicio. Física de las comunicaciones © Electrónica y Electromagnetismo