Está en la página 1de 9

UNIVERSIDAD NACIONAL DE

INGENIERA
FACULTAD DE INGENIERA MECNICA
INGENIERIA DE CONTROL MT-221
2015-1
Laboratorio 2
Introduccin al Matlab (parte 2)
Objetivo. El alumno se familiariza en el entorno Matlab usando comandos
comunes para Ingeniera de Control.
Versin utilizada. 2009a / 2010a
En este segundo laboratorio vamos a realizar ejercicios sobre comandos
ms bsicos asociados con operaciones comunes en ingeniera de control.
No olvide que:
[]
Utilizado para formar vectores y matrices
()
Precedencia de expresin matemtica
,
Separa elementos y argumentos de funcin
;
Final de filas. Tambin suprime el resultado de un comando u
operacin
:
Generacin de vectores.
j : k significa [ j j+1 k]
A(: , j)
significa j-sima columna de A
A(i , :)
significa i-sima fila de A

Ejecucin de orden del sistema operativo


%
Comentarios para explicar pasos de un algoritmo
Procedimiento
Ejecute el programa Matlab, la versin que disponga

Por ejemplo: Matlab 2009a


En el smbolo de comandos del Matlab realice los siguientes ejercicios:

Ejercicios asociados con la ecuacin caracterstica

1. Sea la matriz A = [0 1 0; 0 0 1; -6 -11 -6];


Se va a determinar las races de la ecuacin caracterstica que coinciden
con los de los valores propios de A. para ello para poder determinar esta
ecuacin usaremos el comando poly:
p = poly(A);
Escriba la respuesta p =
2. Luego para determinar las races de la ecuacin caracterstica se ejecuta el
comando roots(p):
r = roots(p)
Escriba el resultado de r

r=

3. Si r representa a las races de un polinomio, luego, construya el polinomio


q(s) a partir de las races r.

__________________________________________
4. El polinomio que usted ha escrito en el paso anterior, comprelo
usando nuevamente el comando poly(r), donde r representa las
races de la ecuacin caracterstica
q = polyr)
Existe algn cambio entre el resultado de poly(A) y poly(r)?
Explique adecuadamente.

Operaciones con polinomios


Sea a(s) = s2 20.6

b(s) = s2 + 19.6s + 151.2

5. Para multiplicar dos polinomios, se usa el comando conv(a,b). Cabe


resaltar que el producto de polinomios es la convolucin de los
coeficientes que tienen cada polinomio.
Para obtener la convolucin o multiplicacin se hace de esta manera
a = [1 0 -20.6];
b = [1 19.6 151.2];
c = conv(a,b);
Escriba el polinomio resultante de esta manera:
(

)s4 + (

)s3 + (

)s2 + (

)s + (

6. Para dividir (deconvolucin) entre polinomios use la funcin deconv():


[q,r]= deconv(c,a), donde:

q es el cociente y r es el residuo

Explique el significado de los coeficientes de q como de r cuando haya


ejecutado el comando deconv()

Cul es la diferencia
[q,r]=deconv(c,a)?

de

escribir

el

comando

deconv(c,a)

7. Si se quiere evaluar una funcin en un valor especfico, se aplica el


siguiente comando:
Si p(s) = 3s2 + 2s + 1. Y si s = 5, luego:
p = [3 2 1];
polyval(p,5)
ans = 86 (verificar)
Luego, si p = s5 + s4 + 2s3 + s2 +1, evale p en s = 2
Matrices de utilidad
En Matlab existe una lista de matrices muy tiles para la programacin
ones(n)
ones (m,n)

matriz de unos de orden n x n


matriz de unos de orden m x n
3

ones(A)
se escribe unos del mismo tamao de la matriz A
zeros(n)
zeros (m,n)
zeros(A)
diag([ones(1,n)])
Utilice el help de Matlab y explique y ponga ejemplos del uso de los
comandos en mencin

8. Escriba la matriz despus de haber aplicado los siguientes comandos


y dando una breve explicacin del caso :
a) eye(5)
b) Cul es la diferencia entre aplicar el comando x = [ones(1,5)] y
diag([ones(1,5)])?

9. Qu significa aplicar el comando diag(1:5), diag(0:4)?

Representacin grfica de curvas


10.
Se presentan tres cdigos fuente en Matlab. Grafique los
resultados de estos programas Explicando el resultado, usando
comentarios simbolizados con % (comando comentario).
a) t = 0:0.05:10;
y = sin(t);
z = cos(t);
plot(t,y,o,t,z,x)
grid
title(Grficas del seno y coseno)
4

xlabel(Seg)
ylabel(y=sen(t); z=cos(t))
text(3,0.45,sen(t))
text(0.8,-0.3,cos(t))
b) t = 0:025:10;
y = sin(t);
z = cos(t);
plot(t,y,t,z), text(t,y,y), text(t,z,z)
grid
title(Grficas del seno y coseno)
xlabel(Seg)
ylabel(y=sen(t); z=cos(t))
c) x = 0:0.1:3;
y = x.^2;
plot(x,y)
grid
title(Grfica de y = x^2)
xlabel(x)
ylabel(y)
Nota: es probable que tenga problemas de ejecucin por el tema de las
comillas en Matlab
11.
Qu modificaciones hara a la codificacin del programa 10.c
para lograr la curva de la figura siguiente, sabiendo que la funcin y
ha cambiado a y = x3 -20x.
Observe que hay una serie de errores entre la codificacin y la
informacin que muestra la grfica.

Grfica de y = x 2

100
80
60
40

20
0
-20
-40
-60
-80
-100
-6

-4

-2

0
x

Modelos matemticos de sistemas lineales


Matlab tiene varios comandos muy tiles para transformar un modelo
matemtico de un sistema lineal en otro modelo:
a) Funcin de transferencia a espacio de estado
[A,B,C,D] = tf2ss(num,den)
espacio
funcin de
estado
transferencia
Y (s) num
1
=
=C ( sI A ) B+ D
U (s) den
Segn la informacin de A, B, C y D, la representacin de espacios
de estado es:
x = Ax+ Bu

y=Cx+ Du

b) Espacio de estado a funcin de transferencia


[num,den] = ss2tf(A,B,C,D)

cuando el sistema tiene una entrada y


6

una salida
[num,den] = ss2tf(A,B,C,D, iu)
una entrada

cuando el sistema tiene ms de


(iu=1,2,3) y una salida

c) Descomposicin en fracciones parciales de la funcin de


transferencia
Sea la funcin de transferencia:
B( s) num b (1 ) sn +b ( 2 ) s n1 ++b (n)
=
=
A (s ) den a (1 ) sn +a ( 2 ) s n1 ++a (n)

num = [b(1) b(2) b(n)]


den = [a(1) a(2) a(n)]
Donde a(1) es diferente de cero. Pero los otros coeficientes pueden
ser ceros.
Luego la descomposicin de fracciones parciales se hace usando el
comando:
[r,p,k] = residue(num,den). Segn esto:
B(s)
r (1)
r (2)
=
+
A (s ) s p (1) s p(2)
12.

r ( n)
+ k (s)
s p ( n )

Sea el siguiente sistema con entradas u1 y u2

[][

][ ] [ ] [ ]

x1
1 x 1 + 1 0 u1
= 0
x2 2 3 x 2 0 1 u 2

y=[ 1 0 ]

[ ] [ ][ ]
x1
u
+0 0 1
x2
u2

Se quiere determinar la descomposicin en fracciones parciales,


segn las entradas u1 y
u2. Para ello use esta informacin:
A = [0
B = [1
C = [1
D = [0

1; -2 -3];
0; 0 1];
0];
0];

Se aplicar el comando [num,den] = ss2tf(A,B,C,D,1) y [num,den] =


ss2tf(A,B,C,D,2)
Recordando que el parmetro 1 corresponde la funcin de
transferencia respecto a la entrada u1 y el parmetro 2 corresponde
la funcin de transferencia respecto a la entrada u2.
Segn el resultado de aplicar este comando, luego exprese:
Y (s)
=
U 1( s)

Y ( s)
=
U 2(s)

13.

Considere la siguiente funcin de transferencia

B(s) num 2 s3 +5 s 2 +3 s +6
=
=
A (s ) den s 3+ 6 s 2+ 11s+6

Donde num = [2 5 3 6] y den = [1 6 11 6]


Luego [r,p,k] = residue(num,den)
Demuestre que el resultado de la descomposicin de fracciones
parciales resulta
B(s) 2 s 3+ 5 s 2+3 s+6 6 4
3
= 3
=
+
+
+2
2
A (s ) s +6 s +11 s+6 s+3 s +2 s+1

14.

Si aplica el comando [num,den] = residue(r,p,k), qu resulta?

Justifique su respuesta

Referencias: Ingeniera de Control, K. Ogata


Preparado por Ing. Gustavo Mesones Mlaga, MSc.
Este laboratorio se entregar hasta el sbado 11 de abril de 2015 en horas de
clase