Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica 1
Practica 1
FUNDAMENTO TEORICO
MATLAB es un sofisticado lenguaje de programacin codificado en C, basado en
matrices para clculos cientficos y de ingeniera. El nombre MATLAB es una
abreviatura para MATrix LABoratory.
MATLAB trabaja esencialmente con matrices numricas rectangulares (que pueden
tener elementos complejos), lo cual implica el uso de vectores fila o columna. Por esta
razn este paquete tiene una proyeccin hacia el control moderno (descrito a variables
de estado) y es til para ilustrar las relaciones existentes entre las tcnicas clsicas y
modernas de anlisis mediante un conjunto de rutinas de propsito general que
permiten modelar, analizar y simular cualquier tipo de sistema dinmico. MATLAB
contiene libreras (Toolboxes) de propsito especfico, as por ejemplo: Sistemas de
Control, Procesamiento de Seales, Optimizacin, Identificacin de Sistemas, Lgica
Fuzzy, Redes Neuronales, etc.
MATLAB es un sistema abierto ya que el usuario puede editar sus propias funciones
especficas, las mismas que son guardadas a manera de macros o programas
denominados archivos.m porque son almacenados en las bibliotecas de MATLAB
mediante archivos ASCII con la extensin .m
COMANDOS GENERALES
MATLAB posee un conjunto sumamente extenso de funciones agrupadas por reas. El
comando help permite disponer de mayor informacin acerca de estas funciones.
Cuando se desea ayuda en lnea de un comando en particular se escribe: help
comando.
Algunos de los comandos generales de MATLAB se indican a continuacin:
help
ayuda
demo
demostraciones
who
what
clear
computer
tipo de computadora
^C
exit, quit
salida de MATLAB
MANIPULACION DE MATRICES
Existen diferentes formas de introducir una matriz en MATLAB. Entre ellas, la siguiente:
A = [1 2 3; 4 5 6; 7 8 9]
Los elementos en una fila de una matriz pueden separarse tanto por comas como por
espacios en blanco. Las operaciones que se pueden realizar con matrices son: (+)
adicin, (-) sustraccin, (*) multiplicacin, (^) potenciacin, () transpuesta, (\) divisin
izquierda A\B es equivalente a inv(A)*B y (/) divisin derecha A/B es equivalente a
A*inv(B).
Estas operaciones para matrices se aplican tambin a escalares (matrices 1x1). Si los
tamaos de las matrices son incompatibles para la operacin matricial se obtiene un
mensaje de error.
Se puede adems efectuar operaciones con arreglos (elemento por elemento). Para
ello, las operaciones *, ^, \, y /, deben ser precedidas por un punto. Por ejemplo, tanto
[1 2 3].* [1 2 3] como [1 2 3].^2 darn [1 4 9].
Para la construccin y manipulacin de matrices existen diferentes funciones que estn
disponibles en MATLAB. Entre ellas:
Eye
matriz identidad
ones
matriz de unos.
inv
inversa
eig
valores propios
poly
polinomio caracterstico
expm
matriz exponencial
Rank rango
det
determinante
size
tamao
min
mnimo elemento
max
mximo elemento
rand
tril
roots
triu
1 : 0.5 : 3
A(:,2)
es la segunda columna de A
A(1:2,:)
A(2,3)
MANEJO DE GRAFICOS
MATLAB puede generar grficos planos y grficos de malla de superficies
tridimensionales. Para el manejo de grficos planos, la instruccin plot crea grficos en
el plano XY; si x e y son vectores de la misma longitud, realiza un grfico plano de los
elementos de x versus los elementos de y. Por ejemplo, se puede dibujar la grfica de la
funcin y =sen2(x), sobre el intervalo [-4,4] con las siguientes instrucciones:
t = -4 : 0.01 : 4; y = sin(t).^2; plot(t,y)
De lo anterior se tiene que t es un vector que inicia en -4 y termina en 4 en pasos de
0.01. Las instrucciones pueden tambin escribirse una por una.
Diferentes funciones pueden dibujarse sobre una misma figura; para ello basta definir
cada funcin con nombre diferente y ejecutar la instruccin; ej: plot (t, y1, t, y2) otra
forma es manteniendo abierta la pantalla de grficos, para ello se ejecuta la instruccin
hold como se muestra en el siguiente set de instrucciones plot(t,y1) ; hold ; plot(t,y2)
para salir de la pantalla de grficos se ejecuta hold nuevamente.
Puede ponerse ttulo, comentarios en los ejes o en cualquier otra parte con los
siguientes comandos que tienen una cadena como argumento:
title(ttulo del grfico)
xlabel (comentario en el eje x)
ylabel (comentario en el eje y)
gtext texto posicionado interactivamente
text
texto posicionado mediante coordenadas
axis
permite escalar los ejes manualmente
grid
cuadriculado en el grfico
subplot permite dividir la pantalla para visualizar varios grficos a la vez
Para el caso de los grficos en tres dimensiones, Matlab emplea las funciones mesh y
meshgrid. La instruccin mesh(z) crea un grfico tridimensional en perspectiva de la
matiz z. La superficie de la malla est definida por las coordenadas z de los puntos
sobre un cuadriculado rectangular en el plano XY.
Para dibujar la grfica de una funcin z = f(x,y)sobre un rectngulo, se define en primer
lugar los vectores xx e yy .Un ejemplo de este tipo de grficos puede verse al ejecutar
las siguientes instrucciones.
[X,Y] = meshgrid(-8:0.5:8);
R = sqrt(X .2 + Y .2) + eps;
Z = sin( R ) . /R;
mesh(X,Y,Z)
SCRIPT
Matlab permite colocar rdenes en un simple archivo de texto y, a continuacin, decirle
a matlab que lo abra y evale las rdenes exactamente como si hubiesen sido escritas
desde la lnea de orden de Matlab. Estos archivos se llaman archivos script o archivosM, y deben finalizar con la extensin 'm'.
Para crear un archivo .m en Matlab, se debe dirigir a FILE, NEW, y finalmente M-FILE
Lectura y escritura interactiva de variables:
disp(informacina mostrar);
Permite imprimir en pantalla un mensaje de texto o el valor de una matriz
var=input(mensaje de ingreso de datos);
Imprime un mensaje en la lnea de comandos de MATLAB y recupera como valor de
retorno un valor numrico o el resultado de una expresin tecleada por el usuario.
FUNCIONES Y SUBFUNCIONES
Las funciones permiten definir funciones enteramente anlogas a las de MATLAB, con
su nombre, sus argumentos y sus valores de retorno. Los ficheros *.m que definen
funciones permiten extender las posibilidades de MATLAB; de hecho existen bibliotecas
de ficheros *.m que se venden (toolkits) o se distribuyen gratuitamente (a travs de
Internet). Las funciones definidas en ficheros *.m se caracterizan porque la primera
lnea (que no sea un comentario) comienza por la palabra function, seguida por los
valores de retorno (entre corchetes [ ] y separados por comas, si hay ms de uno), el
signo igual (=) y el nombre de la funcin, seguido de los argumentos (entre parntesis y
separados por comas).
function [lista de valores de retorno] = name (lista de argumentos)
Nota: name es el nombre de la funcin dentro del archivo name.m
La lista de valores de retorno y/o argumentos pueden no ir. Ejemplo: Realizar una
funcin que halle el valor mximo y el valor mnimo de un vector de Cualquier longitud.
SIMULINK
Simulink es un entorno grfico para modelacin y simulacin de sistemas. Las
diferentes bibliotecas que posee, permiten construir funciones y realizar el anlisis del
modelo de una manera sencilla empleando simulacin. Para invocar a Simulink, basta
teclear en la pantalla de comandos:
>> simulink
A breves rasgos Simulink permite:
Figura 1
Librerias de Simulink
Para analizar un modelo de cualquier tipo, se empieza creando un archivo nuevo tipo
model (elegir opcin desde File...New), y se abren los distintos grupos de funciones a
utilizar simplemente arrastrando con el mouse, al rea de trabajo, los bloques
deseados. Luego se procede a conectarlos por medio de un click sostenido uniendo sus
entradas y salidas.
Despus se configuran los parmetros de cada bloque segn el modelo y los
parmetros con los que se trabajar en el men de simulacin, como: el tiempo de
inicio, tiempo de finalizacin; tipo de algoritmo de integracin, etc. Finalmente, se inicia
(start) la simulacin.
El progreso de la simulacin se puede observar en la pantalla mientras sta corre y al
final, los resultados se pueden guardar en el espacio de trabajo de MATLAB creando
archivos .mat de la misma manera para guardar la informacin y posteriormente
analizarla o imprimirla.
Parmetros de Simulacin (Configuration Parameters)
Existen diversos parmetros de la simulacin que se pueden modificar, el primero de
ellos es el tiempo de simulacin (por omisin 10 seg.) se entra en el men simulacin
en el submen de parmetros (Parameters). Con ello aparece una ventana como la
mostrada en la figura 2. Otras opciones a conocer son:
como Dormand-Price.
Figura 2
Parmetros de Simulacin
Figura 3
Figura 4
Simulink es por lo tanto, una herramienta muy til para la modelacin y simulacin de
modelos ya sean continuos o discretos, multivariables y no lineales entre otros, ya que
dispone de una serie de ayudas de programacin para casos ms complejos.
Los diagramas de Simulink no pueden ser usados para modelos de Respuesta de
Frecuencia (FRD) matrices LTI.
Relacin entre SIMULINK y Workspace de MATLAB
Es posible utilizar los datos generados en SIMULINK en el workspace de MATLAB, para
ellos existen bloques especficos:
FromWorkspace
To Workspace
Cuando se requiere obtener datos a partir del Workspace, siempre es necesario definir
una matriz de dos dimensiones, en donde estarn el tiempo y los datos asociados.
TRABAJO PREPARATORIO
TRABAJO EXPERIMENTAL
b)
c)
d)