Señales matlab

Solo disponible en BuenasTareas
  • Páginas : 8 (1817 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de octubre de 2010
Leer documento completo
Vista previa del texto
El objeto básico usado en MATLAB es una matriz numérica con la posibilidad de almacenar números complejos. Los datos encontrados en el estudio de señales y sistemas son siempre, muy bien representados en forma de matrices. En esta sección se usará MATLAB para la generación de señales elementales como lo son las señales exponenciales, senoidales, etc.
 
El ToolBox de procesamiento de señales deMATLAB posee una larga 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 representanla variable tiempo, con un intervalo de muestreo de 1ms entre 0 y 1seg.
 
t = 0:0.001:1;
 
Para generar un vector llamado n de valores que representan la variable tiempo para una señal discreta en el intervalo de 0 a 1000, se puede usar el siguiente comando.
 
n = 0:1000;
 
Después de creado el vector que representa la variable tiempo, es posible iniciar el desarrollo de alguna señal deinteré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 larepresentació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.
 
SEÑALES PERIODICAS
 
La generación de señales periódicas tales como ondas cuadradas y triangulares es una actividad muy fácil de realizar en MATLAB. 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 puede usar el siguiente conjunto de comandos:
 
>> A = 1;
>> w = 10 * pi;
>> rho = 0.5;
>> t = 0:0.001:1;
>> sq = A*square(w*t+rho);
>> plot(t,sq);
 
 
El resultado se puede observar en lasiguiente gráfica:
 
[pic]
 
 
En la segunda línea, 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 ver 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.
 
Consideremos ahora la generación de unaonda 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 listado complete de comandos sería:
 
 
>> A = 1;
>> w = 10 * pi;
>> Wdt = 0.5;
>> t = 0:0.001:1;
>> tri = A*sawtooth(w * t + Wdt);
>>plot(t,tri);
 
 
 
 
 
El resultado se puede visualizar en la siguiente gráfica.
 
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 detiempo definidos por el vector n. Los vectores n y x deben tener dimensiones compatibles, es decir deben tener el mismo número de elementos. El siguiente ejemplo genera una señal cuadrada en tiempo discreto de amplitud igual a la unidad, ciclo útil igual a 50% y una frecuencia angular igual a [pic]:
 
 
 
>> A = 1;
>> omega = pi / 4;
>> rho = 0.5;
>>n = -10:10;
>>x = A*square(omega*n...
tracking img