Introducción Al Matlab
Enviado por el_mas14 • 23 de Noviembre de 2014 • 5.311 Palabras (22 Páginas) • 185 Visitas
PRÁCTICAS DE AUTOMÁTICA
INTRODUCCIÓN A MATLAB/SIMULINK
0.- Objetivos
El objetivo de esta práctica es introducir la herramienta de simulación que se va a utilizar a lo largo del curso para analizar el comportamiento dinámico de sistemas continuos y como apoyo a los procedimientos de diseño de estructuras de control.
Inicialmente pensado como herramienta de cálculo matricial, Matlab se ha convertido en una de las herramientas más utilizadas en diferentes áreas de conocimiento que van desde los sistemas de comunicación hasta el análisis estadístico y financiero, desde la resolución de ecuaciones en derivadas parciales hasta la realidad virtual. Matlab posee amplias capacidades de visualización de la información y de desarrollo de interfaces interactivas, así como un lenguaje de programación propio que permite desarrollar aplicaciones adaptadas a las necesidades del usuario.
Matlab ha ido creciendo progresivamente a base de desarrollar librerías de comandos específicos para determinados propósitos. Una de estas librerías es la librería de control (control system toolbox) que reúne una colección de comandos destinada al análisis y diseño de sistemas de control. Los comandos incluidos en esta librería serán de gran utilidad a la hora de estudiar una asignatura dedicada a la teoría clásica de control.
Simulink constituye la extensión gráfica para la simulación del comportamiento de sistemas continuos, discretos e híbridos. Desarrollado para operar sobre Matlab, proporciona un entorno de trabajo orientado a bloques a diferencia del entorno basado en comandos propio de Matlab. En general todos los problemas que se resuelven desde Simulink pueden resolverse perfectamente desde Matlab. Simulink aporta, fundamentalmente, una forma de trabajo más cómoda e interactiva.
1.- Representación de señales en Matlab
2.- Operaciones con funciones de transferencia en Matlab
3.- Respuesta temporal en Matlab
4.- Transformada de Laplace inversa
5.- Simulación de sistemas dinámicos en Simulink
6.- Reducción de diagramas de bloques
1.- Representación de señales en Matlab
La forma de representar señales continuas en Matlab es mediante un vector, cada uno de cuyos elementos representa el valor de la señal en un determinado instante de tiempo. Matlab es una aplicación de cálculo matricial y lo que se le da bien es trabajar con matrices y, en definitiva, un vector no es más que una matriz de una sola fila. Esta forma de representar las señales supone una desratización pero, si el número de elementos del vector es lo suficientemente grande, la señal discreta será una suficientemente buena aproximación de la señal continua.
Para generar una señal lo primero es declarar un vector de tiempos que determina los instantes de tiempo en los que se va a considerar el valor de la señal continua. Para ello se introduce en la línea de comandos de Matlab lo siguiente:
T=[0:0.001:10]
El valor 10 define la duración temporal de la señal y el valor 0.001 define el número de puntos de la misma (cada cuanto tiempo se toma una muestra de la señal continua). En el ejemplo se define un vector de tiempos de 10001 elementos (10 segundos a paso de 0.001 segundos). Cuanto menor es el paso, mayor es el número de puntos y, por lo tanto, mejor es la aproximación de la señal continua como discreta. Hay que tener la precaución de elegir un paso lo suficientemente pequeño para que no se pierdan los detalles de alta frecuencia de la señal.
Una vez definido el vector de tiempos se declara la señal a partir de la expresión matemática de su evolución temporal. Por ejemplo, para generar una señal senoidal de amplitud 2 y de frecuencia 10 rad/seg se emplea al comando:
Y=2*sin(10*T)
Esto generara un vector de la misma dimensión que en vector de tiempos cada uno de cuyos elementos sale de la aplicación de la expresión matemática sobre cada uno de los elementos del vector de tiempos. En el espacio de trabajo de Matlab (workspace) se pueden observar los dos vectores definidos, ambos con el mismo número de elementos.
Con los vectores generados se pueden hacer todo tipo de operaciones: multiplicación por una constante, suma, resta y producto de señales (para el producto de dos señales se emplea el operador .* que multiplica los vectores ‘punto a punto’).
Ejercicio 1.1: Utilizando el mismo vector de tiempos que en el ejemplo anterior, genera los vectores correspondientes a las cuatro señales que se indican a continuación:
Indica la secuencia de comandos empleada para generar las señales anteriores:
>> y1=10*sin(4*T);
>> y2=2*sin(40*T+pi);
>> y3=y1+y2;
>>y4=y1.*exp(-0.3*T);
Una vez generadas la señal y el vector de tiempos se puede emplear el comando plot para representar gráficamente la evolución temporal de la señal:
plot(T,Y,’r:’)
El primer parámetro es al vector asociado al eje horizontal (eje de tiempos), el segundo es el vector asociado al eje vertical (eje de señal) y el tercero es una cadena de caracteres indicando el color y el tipo de trazado de la señal (en este caso, rojo y con trazado punteado). Consulta la ayuda del comando (help plot) para ver las distintas opciones de color y trazado. Como resultado de la ejecución del comando se obtiene la siguiente figura:
Una vez en la figura, con el botón derecho del ratón, se pueden cambiar fácilmente color y grosor de la línea, así como el tipo de trazado. También dispone de herramientas de zoom y cursores para el análisis detallado de la señal. Experimenta con estas opciones para modificar la representación gráfica de la señal senoidal del ejemplo.
Se relacionan a continuación algunos comandos relacionados con la representación gráfica de señales:
figure : Generación de una nueva ventana para la representación gráfica de señales.
subplot : Divide la ventana en varias gráficas.
hold : Mantiene/Libera la figura para representar varias señales en la misma ventana.
grid : Activa/Desactiva una cuadrícula en la figura actual.
axis : Determina los límites superior e inferior de los ejes de la figura actual.
title : Establece un título para la figura actual.
xlabel : Etiqueta el eje horizontal de la figura actual.
ylabel : Etiqueta el eje vertical de la figura actual.
Consulta la ayuda de estos comandos para conocer su
...