Documentos de Académico
Documentos de Profesional
Documentos de Cultura
AUTOMÁTICO
GUIA 1
USO DE MATLAB
Se necesitan unos pocos comandos básicos para empezar a utilizar MATLAB. Esta pequeña
guía explica dichos comandos fundamentales. Habrá que definir vectores y matrices para poder
modificarlos y operar con ellos. Se trata de comandos cortos de alto nivel, porque MATLAB trabaja
constantemente con matrices, entre las aplicaciones que ofrece este software tenemos: realizar
operaciones de álgebra lineal mediante una serie de instrucciones cortas:
La palabra eye designa a la matriz identidad. La submatriz u=E(:,1) toma la primera columna de
la anterior. La instrucción E(3,1)=5 reemplaza por el número el elemento presente en la matriz E en
la coordenada (3,1) (Nota: no olvidar la convención de coordenadas como (fila, columna) ). El
comando E*u multiplica las matrices E y u. todos estos comandos se repiten en la lista que aparece
a continuación. Aquí se presenta un ejemplo de cómo invertir una matriz y resolver un sistema
lineal:
Se sumó una matriz formada por unos a eyes(3), y b es su tercera columna. A continuación, inv(A)
genera la matriz inversa. El sistema Ax=b se resuelve mediante x=inv(A)*b, el método lento.
% Escribir help y luego el comando: para obtener una explicación del modo de utilizar el comando
o símbolo. La palabra help (ayuda) puede ir seguida de un símbolo o del nombre de un
comando o de un archivo (de extensión .m) de MATLAB.
% Para ver los números con 16 dígitos, escribir format long (formato largo). El formato normal,
format short (formato corto), muestra 4 dígitos decimales.
% Si se escribe punto y coma luego de redactar un comando, el programa no mostrará su
resultado. Ejemplo: A=ones(3); no mostrará la matriz identidad 3x3.
% Utilizar la flecha del desplazamiento hacia arriba del cursor para volver a comandos anteriores.
Universidad Tecnológica de Chile, Sede Valdivia
Cómo definir una matriz (introduciendo las filas una por una)
A = [1 2 3; 4 5 6] Tienes dos filas (el punto y coma siempre separa unas filas de otras).
A = [1 2 3
4 5 6] También genera la matriz A, pero es más difícil de escribir.
% El símbolo de los dos puntos ‘:’ significa todo (todas las columnas o todas las filas)
2
Universidad Tecnológica de Chile, Sede Valdivia
3
Universidad Tecnológica de Chile, Sede Valdivia
Creación de gráficos
t=0:0.1:10; %Se define el eje de tiempo, como un vector con valores desde 0 a 10 con un
%incremento igual a 0.1
y1=sin(t); %Se define la función que se desea graficar, en este caso la función seno ‘sin(t)’
plot(t,y1) %El comando plot sirve para graficar. La convención es plot(eje X, eje Y)
Luego de escribir las líneas en la ventana de comando MATLAB automáticamente abre una
ventana mostrando la representación gráfica de la función:
Ahora para mejorar la apariencia de una representación gráfica, se tienen los siguiente comandos:
4
Universidad Tecnológica de Chile, Sede Valdivia
Para representar varias señales a la vez, puede realizar el siguiente conjunto de instrucciones:
t=0:0.1:10;
y1=sin(t);
y2=sin(t-0.5);
y3=sin(t-0.25);
plot(t,y1,t,y2,t,y3)
5
Universidad Tecnológica de Chile, Sede Valdivia
6
Universidad Tecnológica de Chile, Sede Valdivia
Para representar gráficamente las demás funciones en una misma ventana, se tiene:
subplot(2,2,1); plot(t,y1);
subplot(2,2,2); plot(t,y2);
subplot(2,2,3); plot(t,y3);
7
Universidad Tecnológica de Chile, Sede Valdivia
Edición de Dibujos
Cuando aparece una figura, podemos emplear las opciones que aparecen en los menús
desplegables de la parte superior y las herramientas de la barra de tareas para editar el dibujo.
Se puede emplear el editor de propiedades que se encuentra en el menú EDIT de una figura para
cambiar las propiedades de los distintos elementos de la figura.
8
Universidad Tecnológica de Chile, Sede Valdivia
Universidad Tecnológica de Chile, Sede Valdivia
EJERCICIOS:
Graficar las siguientes señales para t desde -10 hasta +10 con incremento de 0,05:
U1= 4t+10
U3= 4t2 + 2t - 4
10
Universidad Tecnológica de Chile, Sede Valdivia
Programación en MATLAB
MATLAB permite trabajar no sólo desde la línea de comandos (Command Window) sino también
mediante la edición de ficheros ‘.m’ como extensión. Los archivos con la terminación .m que
MATLAB utiliza para trabajar pueden clasificarse en dos tipos: funciones y scripts. Un script es una
secuencia de comandos que se pueden ejecutar a menudo y que se pueden guardar en un archivo
de extensión .m para no tener que escribirlos de nuevo. Los scripts no aceptan argumentos de
entrada ni devuelven resultados, operan con las variables del workspace. Las funciones aceptan
argumentos de entrada y SI devuelven resultados.
Para elaborar sus propios scripts o funciones deberán generar un nuevo archivo de texto con el
nombre que usted desee, siempre y cuando termine en .m para que MATLAB lo reconozca. Este
tipo de archivos se pueden crear, editar y guardar con cualquier editor de textos. Un archivo de
script es simplemente una lista de comandos de MATLAB. Cuando se escribe el nombre del
archivo en el command window de MATLAB, su contenido se ejecuta. Para que un archivo .m sea
una función, tiene que empezar por la palabra function seguida de las variables de salida entre
paréntesis, el nombre de la función y las variables de entrada.
Para crear un script nuevo seleccione FILE en el menú principal. Seleccione ahora la opción NEW
y finalmente seleccione M-FILE. Aparece ahora el editor de MATLAB. Un ejemplo sencillo se
muestra a continuación:
Universidad Tecnológica de Chile, Sede Valdivia
12
Universidad Tecnológica de Chile, Sede Valdivia
Transformada de Laplace
La ventaja de MATLAB sobre los demás software es que es una fuerte herramienta matemática
para poder desarrollar diversas aplicaciones tanto en la matemática como en la simulación.
Una de las herramientas matemáticas a utilizar en MATLAB es la Transformada de Laplace y su
respectiva Transformada inversa.
Antes de aplicar esta herramienta en MATLAB es necesario conocer el concepto:
La transformada de Laplace de una función f (t) definida t > 0 (positiva), es la función F(s), definida
por:
Para aplicar en MATLAB esta transformada primero se deben declarar las variables a utilizar. En la
ventana de comando es donde se declaran las variables:
>>syms s t % El comando syms sirve para declarar variables y las almacena en workspace
>> laplace(t) % El comando laplace() sirve para obtener la transformada de Laplace y la función
ans=
1/s^2 % Transformada de Laplace de f (t) = t, es decir, una rampa
Para obtener la Transformada inversa de Laplace de una función F(s) en MATLAB, por ejemplo
para F(s)=1/s. Se debe escribir lo siguiente en la ventana de comando:
ans=
EJERCICIOS:
Obtener las transformadas de Laplace para las siguientes funciones en el tiempo. Luego de ello
aplique a este resultado la transformada inversa de Laplace para corroborar sus resultados:
U1= 4t+10
U3= 4t2 + 2t - 4
13
Universidad Tecnológica de Chile, Sede Valdivia
Análisis de sistemas
Donde algunos ai y bi pueden ser cero. En MATLAB, los vectores filas ‘num’ y ‘den’ especifican los
coeficientes del numerador y del denominador en la función de transferencia. Es decir:
num=[b0 b1 b2 . . . bn]
den=[a0 a1 a2 . . . an]
El comando H=tf(num,den)
Entrega la expresión de función de transferencia por los dos vectores filas ‘num’ y ‘den’
ENTRADA SALIDA
U
Y
FUNCIÓN DE
TRANSFERENCIA
H
EJERCICIO:
H(s) = ____2_____
(s+5) (s+100)
u1= 4t+10
u3= 4t2 + 2t - 4
14
Universidad Tecnológica de Chile, Sede Valdivia
Diagrama de Bode:
Un Diagrama de bode esta formado por dos gráficas: una es la gráfica del logaritmo de la magnitud
de la función de transferencia representada en decibeles y la otra es la gráfica del ángulo de fase.
Para graficar un diagrama de bode en MATLAB se debe introducir en la ventana de comando:
bode(num,den)
Ahora bien, si la función de transferencia fue definida anteriormente y asignada a una variable H
por ejemplo, la otra forma de escribir en la ventana de comando para obtener un diagrama de bode
sería:
bode(H)
EJERCICIO:
H(s) = ____2_____
(s+5) (s+100)
H(s) = ____2_____
s2+105s+500
>>num=[2]
>>den=[1 105 500]
>>H=tf(num,den)
Transfer function:
2
-----------------
s^2 + 105 s + 500
>>bode(H)
O bien escribir:
>>bode(num,den)
15
Universidad Tecnológica de Chile, Sede Valdivia
Diagramas de Bloques
[num,den]=series(num1,den1,num2,den2)
[num,den]=parallel(num1,den1,num2,den2)
[num,den]=feedback(num1,den1,num2,den2,-1)
16
Universidad Tecnológica de Chile, Sede Valdivia
[num,den]=cloop(num1,den1,-1)
EJERCICIO:
17