GUIA2a - INTRODUCCION - MATLAB
GUIA2a - INTRODUCCION - MATLAB
GUIA2a - INTRODUCCION - MATLAB
GUIA2.Introducción a MATLAB
INTRODUCCION
En estas notas se pretende realizar una introducción muy básica a MATLAB, orientada
fundamentalmente al estudio de sistemas de control. En líneas generales, MATLAB es un sistema
interactivo basado en matrices para cálculos cientificos y de ingenieria. Desde el punto de vista del
control, MATLAB se puede considerar un entorno matemático de simulación que puede utilizarse
para modelar y analizar sistemas. Sirve para estudiar sistemas continuos, discretos, lineales y no
lineales.
MATLAB constituye un entorno abierto, para el cual numerosas paquetes especificos adicionales
(toolboxes) han sido desarrollados. En el caso que nos ocupa se utilizará fundamental la ‘Control
System Toolbox’. Estos paquetes especificos adicionales están constituidos por un conjunto de
funciones que pueden ser llamadas desde el programa y mediante las cuales se pueden realizar
multitud de análisis.
Las llamadas built-in functions: Son funciones que MATLAB tiene incorporadas internamente y
por tanto no son accesibles al usuario.
Funciones m functions: Son funciones cuyo código es accesible. Las que se encuentran en el
subdirectorio MATLAB son las básicas para el funcionamiento del sistema.
Las toolboxes se suelen instalar en forma de subdirectorios en el disco duro, colgando del
subdirectorio TOOLBOX( en la versión WINDOWS). En ellos se encuentran tambien funciones .m
orientadas al control de sistemas. Además, se pueden incorporar otros toolboxes (SIGNAL
PROCESSING, ROBUST CONTROL, entre otros) e incluso funciones propias del usuario. En el
caso de las versiones para WINDOWS, el arranque del programa se realiza ‘pinchando’ con el ratón
en el icono correspondiente.
ENTORNO.
Una vez arrancado MATLAB aparece el prompt o línea de comandos del sistema (>>). Este es el
momento de comentar la existencia del comando más famoso de cualquier aplicación: help.
Introduciendo este comando aparecerán todas las citadas built-in functions, las contenidas en el
subdirectorio MATLAB y todas aquellas contenidas en los subdirectorios incluidos en el PATH
(ver cuadro 1).
Para obtener información sobre cualquiera de las funcones se introduce help nombre-función.
Ejemplo: help cos(cos es una función que calcula el coseno de un número). Una cuestión
importante a tener en cuenta es que MATLAB distingue entre mayusculas y minusculas. En este
sentido, los nombres de la función se introducirán en minusculas. El comando demo permite
obtener una demostración de las ‘capacidades’ del sistema.
Funciones y simbolos
Si se quiere guardar toda la sesión en un archivo (comandos introducidos y resultados), basta usar el
comando diary nombre-archivo y se guardará la sesión en un archivo llamado diary. Cuando no se
quiera seguir almacenando la información se introducirá diary off.
El simbolo % sirve para poner comentarios en los programas (todo lo escrito desde ese símbolo
hasta el final de la línea no se ejecutará).
Ejemplo2:
p2 =poly([-1 -2]);
Los polinomios se pueden multiplicar y dividir usando las funcione conv y deconv
respectivamente:
Ejemplo3.
MATRICES
El comando size devuelve el número de filas y columnas de una matriz y length la mayor
dimensión.
Ejemplo4:
Ejemplo5:
Ficheros Scripts
EJERCICIO1
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%Ejemplo de prueba%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%
%% %%%
%%Operaciones con Matrices%
Para hacer gráficos en dos dimensiones (2D) se utiliza la función plot cuya sintaxis
básica es:
Para poner título tanto a la figura como a los ejes coordenados existen una serie de
funciones:
Creación de un diagrama
La función plot adopta diferentes formas, según los argumentos de entrada.
Si y es un vector, plot(y) grafica los elementos de y contra los índices de los elementos de y y
conecta los puntos con líneas rectas.
Si se especifican dos vectores como argumentos, plot(x,y) produce un gráfico de y contra x.
Ejemplo1: x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
SALIDA MATLAB
ROTULO DE EJES
Rotule los ejes y agregue un título. La secuencia de caracteres \pi en la función xlabel crean el
símbolo . La propiedad FontSize en la función title aumenta el tamaño del texto que se utiliza
para el título.
Ejemplo2
xlabel('x = 0:2\pi')
ylabel('Sine of x')
title('Plot of the Sine
Function','FontSize',12)
SALIDA MATLAB
Diagramación de varios conjuntos de datos en una gráfica:Varios pares de argumentos x-
y crean múltiples gráficos con una sola llamada a plot. MATLAB utiliza un color diferente
para cada línea.
Ejemplo3: Estas instrucciones grafican tres funciones de x relacionadas entre sí:
x = 0:pi/100:2*pi;
y = sin(x);
y2 = sin(x-.25);
y3 = sin(x-.5);
plot(x,y,x,y2,x,y3)
SALIDA DE MATLAB
La función legend proporciona una forma fácil para identificar las líneas individuales:
legend('sin(x)','sin(x-.25)','sin(x-.5)')
SALIDA MATLAB
Especificación de colores y estilos de línea
Cuando se grafican datos con el comando plot, es posible especificar colores, estilos de línea y
marcadores (como asteriscos o círculos):
plot(x,y,'color_style_marker')
color_style_marker contiene de uno a cuatro caracteres (encerrados entre comillas simples)
construidos a partir de un color, un estilo de línea y un tipo de marcador.
Ejemplo4:
plot(x,y,'r:+')
Gráfica los datos usando líneas punteadas rojas y coloca un marcador + en cada punto.
color_style_marker está compuesto por combinaciones de los siguientes elementos.
Líneas y marcadores
Si especifica un tipo de marcador, pero no un estilo de línea, MATLAB ® crea la gráfica
usando solo marcadores, pero sin líneas. Por ejemplo:
plot(x,y,'ks')
Genera un diagrama con cuadrados negros en cada punto, pero no conecta los marcadores
con líneas.
La instrucción:
plot(x,y,'r:+')
Genera un diagrama de línea punteada roja y coloca un marcador de signo más en cada
punto.
Colocación de marcadores en uno de cada diez puntos de datos
Este ejemplo muestra cómo usar menos puntos para graficar los marcadores que para
dibujar las líneas. Aquí se diagraman los datos dos veces, usando un número diferente de
puntos para las líneas punteadas y los marcadores.
Ejemplo5:
x1 = 0:pi/100:2*pi;
x2 = 0:pi/10:2*pi;
plot(x1,sin(x1),'r:',x2,sin(x2),'r+')
Visualización de varios diagramas en una figura
El comando subplot permite visualizar varios diagramas en la misma ventana o imprimirlos
en la misma hoja de papel. Si escribe
subplot(m,n,p)
x = 0:pi/20:2*pi;
subplot(3,1,1); plot(sin(x))
subplot(3,1,2); plot(cos(x))
subplot(3,1,3); plot(sin(x).*cos(x))
SALIDA DE MATLAB
Control de los ejes
El comando axis ofrece varias opciones para configurar la escala, la orientación y la
relación de aspecto de las gráficas.
Límites de ejes y marcas de graduación automáticos
Por defecto, MATLAB busca los máximos y mínimos de los datos, y escoge los límites de
los ejes para abarcar este rango. MATLAB selecciona los límites y marcas de los ejes con
el fin de producir una gráfica que exhiba los datos con claridad. Sin embargo, es posible
especificar otros límites usando las funciones axis o xlim, ylim y zlim.
Configuración de límites de los ejes
El comando axis le permite especificar sus propios límites:
axis([xmin xmax ymin ymax])
axis equal (hace que los incrementos entre marcas de graduación individuales del eje x y
el eje y tengan la misma longitud).
t = -pi:pi/100:pi;
y = sin(t);
plot(t,y)
axis([-pi pi -1 1])
xlabel('-\pi \leq {\itt} \leq \pi')
ylabel('sin(t)')
title('Graph of the sine function')
text(0.5,-1/3,'{\itNote the odd symmetry.}')
SALIDA MATLAB
Almacenamiento de figuras
Para guardar una figura, seleccione Save (Guardar) en el menú File (Archivo). Esto guarda
la figura en un archivo, incluyendo sus propiedades, sus menús, controles de interfaz de
usuario y todas las anotaciones correspondientes (es decir, la ventana completa). Si no ha
guardado la figura antes, aparece el cuadro de diálogo Save As (Guardar como). Este
cuadro de diálogo proporciona opciones para guardar la figura como un archivo .fig o
exportarla a un formato gráfico.
Si anteriormente ha guardado la figura, puede usar Save (Guardar) para guardar la figura
“de forma silenciosa”, sin que aparezca el cuadro de diálogo Save As.
Para guardar una figura en un formato gráfico estándar (como TIFF o JPEG) que permita
usarla con otras aplicaciones, seleccione Save As (o Export Setup [Configuración de
exportación], si desea control adicional) en el menú File.
También se puede guardar una figura desde la línea de comandos:
Use la función savefig para guardar una figura y los objetos gráficos que contiene como un
archivo .fig.
Utilice el comando saveas para guardar la figura en uno de varios formatos posibles.
Cómo cargar una figura
Es posible cargar figuras en MATLAB mediante el uso de estas funciones:
Utilice la función openfig para cargar figuras guardadas como archivos .fig.
Use la función imread para leer archivos gráficos estándar (incluso figuras guardadas) en
MATLAB.
Generación de código de MATLAB para volver a crear una figura
Es posible generar código de MATLAB para volver a crear una figura y la gráfica que
contiene; para ello, seleccione Generate code (Generar código) en el menú File de la
figura. Esta opción es de especial utilidad si ha desarrollado una gráfica usando
herramientas de diagramación y desea crear una gráfica similar con los mismos datos u
otros diferentes.
Almacenamiento de datos del área de trabajo
Para guardar las variables del área de trabajo, seleccione Save Workspace As (Guardar
área de trabajo como) en el menú File de la figura. Para volver a cargar datos almacenados
use el elemento Import Data (Importar datos) en el menú File de la figura. MATLAB es
compatible con una amplia variedad de formatos de archivos de datos, incluidos los
archivos de datos de MATLAB, que tienen una extensión .mat.
ACTIVIDADES: PRACTICAS RESUELTAS
EJERCICIO1
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%Ejemplo de prueba%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%
%% %%%
%%Operaciones con Matrices%
EJERCICIO 2:
x=linspace(0,5,100);
y=5*sin(x);
plot(x,y,'bo')
EJERCICIO 3: Se quiere graficar las siguientes funciones :
𝑥1 = 4. sin(5𝑡)
𝑥2 = 8 . sin(3𝑡)
𝑥3 = 𝑥1 + 𝑥2
Se crea un script en Matlab:
clear all; %borra variables
clc; %borra pantalla
t=linspace(0,3,2000); %crea vector de tiempo
x1= 4*sin(5*t);%primera función
x2=8*sin(3*t);%segunda función
x3= x1+x2; %construye x3 como la suma de x1 y x2
plot(t, x1,t,x2,t,x3);% grafica las funciones x1,x2 y x3
legend('x_1','x_2','x_3');
SALIDA EN MATLAB
EJERCICIO 4:
𝜋
a) 𝑣1 = 15. cos (2𝜋𝑡 − 3 ) b) 𝑣1 = 4.2. sen(50𝑡)
𝜋
𝑣2 = 10. cos (𝜋𝑡 − 2 ) 𝑣2 = 2.7. cos(50𝑡 + 84°)
𝜋
𝑣3 = 9. cos (3𝜋𝑡 + 4 ) 𝑣3 = 𝑣1 + 𝑣2
2. Las funciones del punto (1) graficarlas en un misma pantalla de salida de resultados
en Matlab