100% encontró este documento útil (1 voto)
179 vistas7 páginas

Laboratorio de Señales Discretas en MATLAB

Este documento presenta los objetivos y fundamentos teóricos de un laboratorio sobre señales discretas usando MATLAB. El objetivo es que los estudiantes aprendan a modelar y analizar señales digitales usando herramientas de MATLAB. Se explican conceptos como señales analógicas vs digitales y se proveen ejemplos de cómo generar ondas cuadradas, triangulares, escalones e impulsos en MATLAB. El documento también incluye los procedimientos y materiales requeridos para el laboratorio.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
100% encontró este documento útil (1 voto)
179 vistas7 páginas

Laboratorio de Señales Discretas en MATLAB

Este documento presenta los objetivos y fundamentos teóricos de un laboratorio sobre señales discretas usando MATLAB. El objetivo es que los estudiantes aprendan a modelar y analizar señales digitales usando herramientas de MATLAB. Se explican conceptos como señales analógicas vs digitales y se proveen ejemplos de cómo generar ondas cuadradas, triangulares, escalones e impulsos en MATLAB. El documento también incluye los procedimientos y materiales requeridos para el laboratorio.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD NACIONAL DE INGENIERÍA

FACULTAD DE INGENIERÍA MECÁNICA


ESCUELA PROFESIONAL DE INGENIERÍA MECÁNICA

Curso: MT417 Procesamiento Digital de Señales


Laboratorio: Señales Discretas

A. Objetivo

- Modelar las señales MATLAB


- Entender la diferencia entre señal Analógica y señal digital.
- Que el alumno conozca las instrucciones de Matlab que manipulan las señales básicas
- en el procesamiento digital de señales.
- Utilizar MATLAB, para analizar las señales en el dominio de la frecuencia y en el dominio
del tiempo.
- Al finalizar el alumno debe demostrar capacidad para hallar y mostrar las componentes
armónicas de las señales de audio.
- El alumno debe demostrar destreza en la adquisición de distintos tipos de señales de
audio en Matlab para poder almacenarlas, leerlas,, reproducirlas, procesarlas y mostrar
sus características.

B. Fundamentos Teóricos

Usaremos Matlab para la generación de señales elementales: cuadrada, triangular, entre otras.

El ToolBox de procesamiento de señales de Matlab posee una gran variedad de funciones para
la generación de señales, estas señales requieren de una representación vectorial de la variable
tiempo, de manera continua o discreta. Para realizar una simulación de un intervalo continuo, se
usa un vector de valores discretos con un intervalo de muestreo muy pequeño.
el siguiente comando genera un vector llamado t de valores que representan la variable tiempo,
con un intervalo de muestreo de 1 ms entre 0 y 1 segundo.

t = 0:0.001:1;

Después de creado el vector que representa la variable tiempo, es posible iniciar el desarrollo de
alguna señal de interés.

En Matlab una señal discreta en el tiempo se representa exactamente, porque los valores de la
señal son representados como los elementos de un vector. Sin embargo las señales de tiempo
continuo en Matlab son tan solo aproximaciones. La aproximación consiste de un vector cuyos
elementos son muestras de la verdadera señal de tiempo continuo. Cuando se usa esta técnica
para la representación de señales continuas es importante escoger el intervalo de muestreo lo
suficientemente pequeño para asegurar que las muestras capturan todos los detalles de la señal.

EJEMPLOS DE SEÑALES EN MATLAB

La generación de señales periódicas tales como ondas cuadradas y triangulares es una actividad
muy fácil de realizar en MATLAB.

1) SEÑAL CUADRADA
Consideremos primero la generación de una onda cuadrada de amplitud A, frecuencia
fundamental w (medida en radianes por segundo) y ciclo útil rho. Recordemos que el ciclo útil es
la fracción de cada periodo en donde la señal es positiva.

Para generar dicha señal se pueden escribir lo siguiente en la linea de comandos:

>> A = 1;
>> w = 10 * pi;
>> rho = 0.5;
>> t = 0:0.001:1;
>> sq = A*square(w*t+rho);
>> plot(t,sq);

En la segunda línea de este ejemplo, pi es una función interna de Matlab que calcula el número
más cercano a la constante PI en formato de coma flotante. El último comando es usado para
visualizar la señal generada. El comando plot dibuja líneas conectando los valores sucesivos de
la señal y así da la apariencia de una señal en tiempo continuo.

2) SEÑAL TRINGULAR
Consideremos ahora la generación de una onda triangular de amplitud A, frecuencia fundamental
w y ancho Wdt . El periodo de la onda triangular será T con el máximo valor de la señal ocurriendo
en t = WT . El comando básico para generar esta señal es:

A * sawtooth(w * t + Wdt)

El resultado se puede observar en la gráfica

3) SEÑAL ESCALÓN
En Matlab, el comando ones(M, N) genera una matriz de unos de tamaño MxN, y el comando
zeros(M, N) es una matriz de ceros del mismo tamaño. Se puede hacer uso de estas dos
matrices para generar dos señales comúnmente usadas: la señal escalón y la señal impulso.

Una señal paso de amplitud uno, puede ser generada con el siguiente comando.

U = [zeros(1, 10), ones(1, 11)];

Para la versión continua creamos un vector que represente el tiempo el cual tenga muestras de
un intervalo separados por valores muy pequeños. Los comandos y los resultados se muestran
a continuación:

>> u=[zeros(1,10),ones(1,11);
>> t=-1:0.1:1;
>> plot(t,u)

Como se menciono anteriormente, una señal generada en Matlab es inherentemente de


naturaleza discreta. Para visualizar una señal en tiempo discreto se puede hacer uso del
comando stem. Específicamente stem(n, x), bosqueja los datos contenidos en el vector x como
una señal de tiempo discreto con los valores de tiempo definidos por el vector n. Los vectores n
y x deben tener dimensiones compatibles, es decir deben tener el mismo número de elementos.
Así, para este caso para obtener la representación de esta señal en tiempo discreto creamos un
vector-tiempo el cual debe tener valores separados por una unidad.

>> u=[zeros(1,10), ones(1,11)];


>> n=-10:10;
>> stem(n,u)
Recuerde que para poder usar las funciones plot y stem, es requisito que los vectores (t y u) ó (n
y u) tengan iguales dimensiones. Por esta razón el vector u se forma como una composición de
diez ceros y 11 unos, debido a que los arreglos t y n, tienen dimensión 21 dado que incluyen un
elemento central el cual es el número cero. Para probar este hecho, se puede hacer uso de la
función Matlab llamada size que devuelve como resultado un vector con las dimensiones de la
matriz que se le pasa como parámetro.

4) SEÑAL IMPULSO:

La versión discreta de la señal impulso se puede también generar con ayuda de las funciones
zeros y ones, realizando una composición como sigue:

>> delta = [ zeros( 1 ,10 ), 1 , zeros( 1 ,10 ) ];


>> n = -10:10;
>> stem(n,delta);

5) SEÑAL RAMPA

Para generar la señal rampa, tan solo es necesario recordar que esta función puede ser creada,
como la composición de una recta Y(x) = x a partir de cero y de la recta Y(x) = 0 para valores de
x menores de cero, así la versión discreta se muestra a continuación:

>> t1=0:0.1:10;
>> rampa1=t1;
>> rampa=[zeros(1,101),rampa1];
>> t2=-10:0.1:0;
>> t=[t2,t1];
>> plot(t,rampa)
C. Materiales y Equipos

Los materiales y equipos a usarse en la experiencia de laboratorio son:


- Una computadora
- Programa MATLAB

D. Procedimiento

Se le recomienda hacer esta parte de la práctica en un archivo *.m. Antes de continuar borre
todos los valores que se encuentran almacenados en memoria:
>>clear

Esta instrucción también puede emplearse para borrar una sola variable. Por ejemplo:
>>clear w o más de una variable:
>>clear x, v1, v2

Para generar una señal discreta en el tiempo x[n], primero se debe definir un vector índice
temporal 'n' apropiado. Por ejemplo, para producir una curva exponencial decreciente x[n]=0.9n
en el intervalo escriba:
>>n=[-10:10]

La curva exponencial decreciente x[n] se obtiene escribiendo:


>>x=(0.9).^n;
Donde '.^ ' representa la operación de elevar 0.9 a cada uno de los elementos de n. A
continuación grafíquela.
>>stem(n,x)
Obtenga una exponencial creciente:
>>w=(1.11).^n;
Grafíquela:
>>stem(n,w)
Genere y grafique la señal par x3[n]=0.9|n|.
>>x3=(0.9).^abs(n);
>>stem(n,x3);
Calcule y grafique la senoidal compleja y[n]=ejðn/5-ð/3.
>>y=exp(j*pi*n/5-pi/3);
>>stem(n,y);

Grafique las partes real e imaginaria de y[n]. ¿Cuál es el período de la señal?. Justifique su
respuesta gráfica y analíticamente. Calcule la función z[n]=x[n]y[n]
>>z=x.*y;

Explique como se interpretan las partes real e imaginaria de z[n].


De modo similar a la parte A, genere dos senoidales reales.

>>v1=cos(pi*n/5-pi/3);
>>v2=sin(pi*n/5+pi/4);

Obtenga las funciones par e impar de cada una.


>>v1par=0.5*(v1+fliplr(v1));
>>v1imp=0.5*(v1-fliplr(v1));

Calcule los valores de las funciones par e impar en n=0


>>v1par(find(n= =0)) %Sin punto y coma al final
>>v1imp(find(n= =0))

Calcule los valores de las funciones par e impar en n=0 para v1, v2, al igual que para las
siguientes señales:
>>u=[zeros(1,10) ones(1,11)]; %Escalón unitario discreto
>>e=x.*u;

1)Luego de haber aprendido algunos comandos Ud. debe realizar la siguiente actividad:
• Genere un vector de tiempo( que se inicie en t = -1) de 20000 puntos en pasos de
1/10000
• Genere la siguiente señal: -2+3*cos(20*pi*t)+sin(40*pi*t)
• Genere una señal cuadrada periódica con período igual a 1/10 segundos
• Genere una señal diente de sierra periódica con período igual a 1/10 segundos
• Genere una señal igual a sgn(t-0.5)
• Grafique estas 4 señales en una sola hoja usando subplot y plot; a la última gráfica fíjele
un eje de tiempo entre -2 y 2 y un eje de amplitudes entre -2 y 2. A la tercera póngale
grilla. A la segunda póngale un título. A la primera póngale nombre a los ejes.
• Genere un escalón unitario
• Determine la parte par e impar del escalón
• Grafique estas 3 funciones una sobre la otra en tres figuras y colores distintos (use stem)
• 1Grafíquelas ahora en una misma hoja usando subplot y plot
• Determine los índices donde la señal diente de sierra toma valores menores a 0.005 y
mayores a -0.005

2) Desarrollar un conjunto de comandos Matlab para aproximar las siguientes señales


periódicas en tiempo continuo, dibujando 5 ciclos de cada una:

a) Onda Cuadrada, de amplitud 5 Volts, frecuencia fundamental 20 Hz y ciclo útil del 60%.

b) Señal diente de sierra, amplitud 5 Volts y frecuencia fundamental 20Hz

E. Informe

Presentar un informe conteniendo los siguientes puntos:

- Carátula (de la Facultad de Ingeniería Mecánica)


- Fundamentos teóricos
- Descripción y explicación de los resultados experimentales.
- Comparación y análisis de resultados teóricos y experimentales.
- Aspectos resaltantes del desarrollo de la experiencia.
- Conclusiones
- Sugerencias y recomendaciones.

También podría gustarte