CURSO: LAB. Procesamiento Digital de Seales PROFESOR: Mg. Ing. Rafael Bustamante Alvarez TEMA: GENERACION DE SEALES DISCRETAS EN TIEMPO Y FRECUENCIA (FFT) INTRODUCCIN A MATLAB MatLab es un lenguaje de programacin interpretado en el que las variables son matrices y, por tanto, las operaciones bsicas aritmticas y lgicas son operaciones matriciales. Esto hace que Matlab sea una herramienta muy adecuada para clculo matricial y, en concreto, para el procesamiento de seales. A continuacin se muestran algunos ejemplos de operaciones con MatLab: Asignacin de valores a vectores y matrices: A=[1 2 3; 4 3 2; 3 2 1] x=[2; 1; 3] Para las columnas se utiliza el espacio en blanco como separador y el punto y coma para las filas. Productos matriciales y escalares: y=A*x z=x'*y w=x.*y El primer producto representa la operacin de transformar el vector x con la matriz A. El segundo es el producto escalar de x por y, donde x' representa el vector x traspuesto. El tercer producto tiene como resultado un vector w en el que cada componente se obtiene multiplicando las componentes las componentes correspondientes de x e y. Pueden extraerse submatrices o elementos de una matriz: A(3,3) A(2:3,1:3) A(2:3,:) A(:,1) La primera lnea extrae el elemento de matriz (3,3). Las lneas segunda y tercera obtienen una submatriz que incluye las dos primeras filas (todas las columnas). El ltimo comando extrae la primera columna. FUNDAMENTO TEORICO Una seal de tiempo continuo puede ser representada por una seal de tiempo discreto. asi tenemos: x(t)=Asen(wt+); seal continua x(t)=Asen(wk+); seal discreta de otra forma: x(t)=Asen(2 pi.f.t+); seal continua x(k)=Asen(2.pi.f.kT+); seal continua Parmetros de la seal discreta; f=frecuencia de la seal k=numero de muestras T=periodo de muestreo =retardo en radianes EJERCICIO 1 N=64; T=1/128;% frecuencia de muestreo 128 Hz k=0:N-1;% 64 muestras x=sin(2*pi*20*k*T); subplot(3,2,1),plot(k,x); ;% Para borrar la figura ir a ventana Edit ;% Elegir <clear figure> ;%************************************************ EJERCICIO 2 ;% Calcular y graficar el contenido de frecuencias. X=fft(x); magX=abs(X); subplot(3,2,2),stem(k(1:N/2),magX(1:N/2)),... title('Magnitud de X(k)'),... xlabel('k'),ylabel('|X(k)|'),grid; ;% **************************************** EJERCICIO 3 ;% Graficar el contenido de frecuencias en funcin de Hz. hertz=k*(1/(N*T)); subplot(3,2,3),stem(hertz(1:N/2),magX(1:N/2)),... title('Magnitud de X(k)'),... xlabel('Hz'),ylabel('|X(k)|'),grid; ;% ***************************************** Ejercicio 4 ;%Generar una seal de frec=19 Hz. N=64; T=1/128; k=0:N-1; x=sin(2*pi*19*k*T); subplot(3,2,4),plot(k,x); ;%************************************* EJERCICIO 5 ;%%Generar su respectivo espectro de frecuencias magX=abs(fft(x)); hertz=k*(1/(N*T)); subplot(3,2,5),stem(hertz(1:N/2),magX(1:N/2)),... ;%title('Magnitud de X(k)'),... xlabel('Hz'),ylabel('|X(k)|'),grid; ;%****************************************** Ejercicio6: Desarrolle determine el espectro de frecuencia de una cuadrada.
Simulink
Configurar las fuentes con 1,3,5 rad/seg , incluir un bloque sumador luego se ha analizado Con el power espectral density. Si gnal Generator2 Si gnal Generator1 Si gnal Generator Scope Power Spectral Densi ty