Está en la página 1de 10

MATLAB es un programa que integra matemticas computacionales y

visualizacin para resolver problemas numricos basndose en arreglos de matrices y


vectores.
Esta herramienta posee infinidad de aplicaciones, pero existen funciones que
involucran la resolucin de problemas especficos de control de procesos como la
definicin y estudio de funciones transferencia, realizacin de grficos del lugar de las
races, de Bode y de Nyquist. A continuacin se presenta una lista de las funciones de
MATLAB ms utilizadas, todas estas funciones deben ser ejecutadas desde la Ventana
Principal de (MATLAB Command Window).

1)

Como declarar una matriz o un vector.

Para crear una matriz o un vector se le da nombre al mismo y se escriben los


elementos de las filas y/o columnas entre corchetes. Las columnas se separan con un
espacio y las filas con punto y coma (;).

De esta forma para definir un vector se debe escribir:

X = [a b c d]

Y = [a;b;c;d]

y se obtendr el vector: X = (a b c d )

obteniendo el vector:

a

b
Y =
c

d

Y para definir una matriz se utilizar:


A = [a b; c d]

resultando la matriz:

a b

A =
c d

Ejemplo:
1 2 3

Definir la matriz A = 4 5
6
7 8 9

En la ventana principal de matlab, se debe colocar la siguiente lnea:

X = [1 -2 3; 4 5 6; 7 8 -9]

y presionar la tecla enter.

2)

Como definir una funcin de transferencia.

Una funcin de transferencia se representa distinguiendo el numerador y el


denominador como vectores formados por los coeficientes de los polinomios que
forman cada trmino y usando el comando tf.
Entonces para crear una funcin de transferencia dada:

G(s) =

s+a
a 2 .s + a1 .s + a 0
2

Se definen los vectores:


Num = [ 1 a]
Den = [ a2 a1 a0]

Y posteriormente se utiliza el comando:

obteniendo G (s ) =

G = tf(Num,Den)

Num
Den

Ejemplo:

Definir la funcin de transferencia de primer orden G (s ) =

1
0.5s + 1

Para esto, se definen los vectores:


Num = [ 1] Num = 1
Den = [0.5 1]
Posteriormente se coloca:
G = tf(Num,Den)

y se presiona la tecla enter. La funcin se mostrar


inmediatamente en la pantalla.

3)

Funcin de transferencia a lazo cerrado

En el caso de que se tenga la funcin de transferencia a lazo abierto y se desee


cerrar el lazo, se puede obtener la nueva funcin de transferencia usando el comando
feedback
De esta forma se escribe en la ventana principal:

(Nombre de la funcin) = feedback(Nombre funcin LA, Valor retroalimentacin)

Ejemplo:
Obtener la funcin a lazo cerrado de la funcin de transferencia a lazo abierto:
G (s) =

1
0.5s + 1

Con una retroalimentacin unitaria.

De esta forma se define la funcin a lazo abierto:

G = tf(Num,Den)

Y posteriormente,
H = feedback(G,1)
Inmediatamente se muestra en pantalla la nueva funcin:
G (s) =

1
0.5 s + 2

En el caso de que la retroalimentacin sea a su vez una funcin de transferencia esta


debe ser definida (por ejemplo como M) y se coloca:
H = feedback(G,M)

4)

Respuesta de una funcin de transferencia ante diferentes entradas.

Mediante el uso de los comandos step e impulse se puede obtener la


respuesta temporal de una funcin de transferencia dada ante una entrada escaln o
impulso unitario.
Para esto se debe colocar en la ventana de comandos:
Step(Num,Den) Step(nombre de la FT)

La entrada ante un impulso se encuentra de igual forma colocando el comando


impulse
Ejemplo:
Encontrar la respuesta temporal ante una entrada escaln de la funcin de transferencia
de segundo orden:
G (s) =

1
s + 0.5s + 2
2

Inicialmente se debe definir la funcin de transferencia como se explic en el paso 2.


Una vez hecho esto se coloca el comando:
step(FT1) step(Num,Den)

y se obtiene inmediatamente la figura 1.

Para obtener una mejor precisin en la lectura de la grafica se escribe el comando


grid en la ventana principal lo que hace que aparezcan las lneas de divisin en la
figura.
Si se desea graficar las respuestas de diversas funciones de transferencia en una misma
figura se puede escribir:
step(FT1,FT2,,FTN)
Si se desea la respuesta hasta un tiempo determinado T se utiliza:
step(FT1,T)

5)

Representacin en espacio de estado.

Teniendo una funcin de transferencia dada se pueden encontrar las matrices que
conforman su espacio de estado y viceversa. Se utilizan los comandos TF2SS y SS2TF
De esta forma teniendo la funcin de transferencia:
G (s) =

Num
Den

y habiendo definido anteriormente a Num y Den.

Se utiliza el comando:
[A,B,C,D] = tf2ss(Num,Den)
De esta forma se encuentras las matrices que representan:
x = Ax + Bu
y = Cx+Du
de forma inversa si tienen las matrices se pueden encontrar Num y Den, mediante:
[Num,Den] = ss2tf(A,B,C,D,U)

Ejemplo:
Encontrar las matrices que conforman el espacio de estado de la funcin de
transferencia de segundo orden dada anteriormente.
Despus de definir Num y Den, se coloca el comando:
[A,B,C,D] = tf2ss(Num,Den)
Inmediatamente el programa arroja el valor de las siguientes matrices:
0.5 2

A =
0
1
6)

B = (1 0 )

1
C =
0

D=0

Representacin del lugar de las races.

Para obtener la grafica del lugar geomtrico de las races de una funcin de
transferencia dada se usan los comandos rlocus y rlocfind. Despus de definir el
numerador y denominador de la funcin de transferencia se escribe en la ventana
principal:

rlocus(Num,Den)

inmediatamente aparecer la figura con el calculo


de las races de la funcin de transferencia abierto.

Al hacer clic en cualquier parte del grafico, se podr obtener el valor del polo y
ganancia en ese punto. Igualmente se puede arrastrar el cursor a travs del grafico.
Al colocar la sintaxis:
rlocus(Num,Dem,K)
Se obtendr el grafico del lugar de las races para un valor determinado de
ganancia K.
Al usar el comando:
Rlocfind(Num,Den)
Se puede obtener el valor de los polos y ganancia en un punto seleccionado
sobre el grafico del lugar de las races. Este comando debe usarse despus de ejecutar
rlocus.
Ejemplo:
Encontrar el lugar geomtrico de las races de la funcin de transferencia:
G (s) =

s +1
s + s 2 + 2s + 1
3

Despus de definir los vectores Num = [1 1] y Den = [1 1 2 1], se escribe:


rlocus(Num,Den)

y se obtiene el grafico:

Al hacer clic en cualquier punto del lugar geomtrico, se puede obtener su informacin.

7) Diseo del lugar geomtrico de las races y compensadores.

Al usar la herramienta rltool, podemos disear el lugar geomtrico de las races o


compensadores.
Para abrir esta herramienta se define anteriormente la funcin de transferencia y se
coloca en la ventana principal:
rltool(nombre de la funcin)
al hacer esto se abrir una nueva ventana de trabajo donde aparecer el lugar
geomtrico de las races de la funcin dada y se podrn colocar polos o ceros a
conveniencia observando, en el momento, la influencia de los mismos.
Si se desea disear una funcin de transferencia a partir de su lugar geomtrico de
las races se puede colocar:
rltool(1)
De esta forma al abrirse la ventana tendremos una funcin sin ceros ni polos.
Ejemplo:
Observar el cambio en el lugar de las races del a funcin anterior, al aadir un cero
en s = -1.5
Se define la funcin anterior y se coloca:
rltool(FT1)

inmediatamente aparecer la figura:

Al seleccionar en el men la opcin aadir cero, y hacer clic con el botn


izquierdo en -1.5 (sobre el grafico), el lugar cambiar a:

8) Graficar funciones.

El comando plot permite graficar vectores de variables contra otras.


Normalmente una de estas variables es el tiempo.
Para hacer esto se debe definir los vectores a graficar y posteriormente usar el comando:
plot(x,y)

la primera variable ser el eje de las abscisas y la segunda el


de las ordenadas.

En el caso de que se quieran graficar a la vez diversas variables sobre una misma figura
se puede usar:
plot(t,[x;y;;n]

separando las variables a graficar vs. t, con punto y coma (;).

Si se desea un color, trazo o signo especfico sobre cada punto se pueden usar el
comando de la siguiente forma:
plot(x,y,'r+:')

donde la informacin que se encuentra entre las tildes hace que


la grafica obtenida sea de color roja (r), con signos + en cada
punto y un trazo punteado (:). Se tiene la opcin de colocar
mltiples colore, trazos y punteados.

Igualmente si se grafica una funcin y se desea graficar otra encima de esta se puede
usar el comando hold.

Para usar este comando, se grafica una primera funcin con el comando plot,
posteriormente se ejecuta:
hold
y a continuacin se grafica la segunda funcin con el comando plot. El resultado ser
una figura con ambas graficas. Para liberar la superposicin se ejecuta nuevamente el
comando hold. Cualquier grafica que se realice a continuacin saldr en otra figura.
Ejemplo:
Dada la siguiente tabla de datos, graficar X vs. Tiempo.
Tiempo.

Tiempo
0
1
2
3
4

X
1
2
3
4
5

Graficar tambin X,Y vs.

Y
-2
-1
0
1
2

Inicialmente se definen los vectores:


t=[0 1 2 3 4]

x=[1 2 3 4 5]

A continuacin se usa el comando plot:


plot(t,x,g*-.)

y se obtiene la grafica:

y=[-2 -1 0 1 2]

En el segundo caso se debe escribir:


plot(t,[x,y])

y se obtendr:

Si se desea colocar lneas de divisin en el grafico se puede usar el comando grid. Las
leyendas, ttulos, colores o cualquier otro detalle del grafico pueden ser colocados
usando las opciones mostradas en la ventana de la figura o en su men de propiedades.

9) Men de ayuda HELP.


Matlab posee un men de ayuda que permite resolver problemas referentes a
definicin o uso de comandos. Para obtener cualquier informacin sobre un comando
deseado o en particular para cualquiera de los explicados en esta gua se debe escribir en
la ventana principal:
help (nombre de la funcin o comando)

Por ejemplo:

Help plot
Help rlocus
Help ft

También podría gustarte