Vous êtes sur la page 1sur 4

Tema Controladores optimos de tiempo discreto

Actividad Taller a desarrollar en la sala de informatica


Asignatura Sistemas de Control en Tiempo Discreto
Docente Carlos Felipe Rengifo Rodas
Email caferen@unicauca.edu.co
Programa Ingeniera en Automatica Industrial
Facultad Ingeniera Electronica y Telecomunicaciones
Institucion Universidad del Cauca
Fecha 25 de septiembre de 2017

El objetivo del presente taller es que el estudiante disene y simule un controlador optimo de tiempo
discreto para el sistema presentado en la Figura 1. El controlador debe calcular el torque que se debe
aplicar al pivote del riel con el fin de ubicar la masa en una posicion definida por el usuario.
r

Figura 1: Sistema de masa y riel.

El modelo matematico del sistema de masa y riel se presenta en la ecuacion (1) y los valores numericos
de sus constantes en el cuadro 1

m x2 + m r2 + J m r

2 m x x + m g x cos() m g r sin() u
+ = (1)
m r m x 2
m x + m g sin() 0
| {z } | {z } |{z}
D(x) H(,x,,x) E

Parametro Smbolo Valor Unidades


Masa del carro m 0.100 kg
Gravedad terrestre g 9.807 m/s2
Inercia del riel J 0.025 kg m2
Altura del carro r 0.010 m

Cuadro 1: Valores numericos de las constantes del modelo de masa y riel.

Para disenar el controlador realice el procedimiento descrito a continuacion:

Muestre que si se realiza la siguiente seleccion de estados: x1 = , x2 = x, x3 = , x4 = x, el

1
modelo en espacio de estados obtenido a partir de (1) es el descrito por la ecuacion (2)

x1
x2 x3
=
x3 x4 (2)
1
D (x1 ) (E H(x1 , x2 , x3 , x4 ))
x4

Con respecto a la ecuacion (2) es importante resaltar que D1 (x1 ) (E H(x1 , x2 , x3 , x4 )) es un


vector columna de 2 componentes que son respectivamente x3 y x4 . As:
 
x3
= D1 (x1 ) (E H(x1 , x2 , x3 , x4 ))
x4

Cree, con ayuda de las herramientas de calculo simbolico de Matlab, una variable F de tipo vector
que contenga el lado derecho de la ecuacion (2). Para facilitar la creacion de F cree primero las
variables D, H y E, las cuales a su vez deben estar definidas en terminos de las variables simbolicas
m, g J, r, x1, x2, x3, x4 y u.

Linealice (2) alrededor del punto del punto de equilibrio (x, u), definido por x1 = 0, x2 = 0,
x3 = 0, x4 = 0 y u = 0, con el fin de obtener el modelo descrito por (3)
= Ac x + Bc u
x (3)

Siendo x = x x la desviacion de los estados x con respecto a sus valores en equilibrio y


u = u u. Las matrices Ac y Bc estan definidas por:
F F
Ac = x=x , Bc = x=x
x u=u u u=u

Siendo F es el lado derecho de la ecuacion (2), el cual fue almacenado en la variables simbolica F.
Para calcular Ac y Bc utilice las funciones jacobian y eval de Matlab; la primera de ellas para
calcular las derivadas parciales de F y la segunda para evaluar dichas derivadas en el punto de
equilibrio (x, u). Compruebe que los valores resultantes para Ac y Bc son los siguientes:

0 0 1 0 0
0 0 0 1 0
Ac = , Bc =
0 -39.2280 0 0 40.0
-9.8070 -0.3923 0 0 0.4

Complete el modelo en espacio de estados (3) teniendo en cuenta que la variable a controlar es
la posicion cartesiana de la masa. Posteriormente discretice el modelo resultante considerando
un tiempo de muestreo h = 0.05 y obtenga una representacion de la forma (4). Almacene las
matrices A, B y C de (4) en las variables A, B y C respectivamente.

x(kh + h) = A x(kh) + B u(kh)


(4)
y(kh) = C x(kh)

Encuentre los escalares Az y Bz del modelo (5) que genera los estados adicionales z(kh), sabiendo
que la senal de referencia sera de tipo escalon. Almacene Az y Bz de (5) en las variables A_z y
B_z respectivamente.
z(kh + h) = Az z(kh) + Bz e(kh) (5)
Siendo e(kh) la diferencia entre la senal de referencia r(kh) y la variables controlada y(kh).

2
Escriba el modelo en espacio de tiempo discreto extendido a partir de la ecuacion (6).
      
x(kh + h) A 0 x(kh) B
= + u(kh) (6)
z(kh + h) Bz C Az z(kh) 0
| {z } | {z } | {z } |{z}
xe (kh+h) Ae xe (kh) Be

Si nx , nz y nu representan respectivamente la dimensiones de los vectores x, z y u, entonces la


matriz de ceros de color rojo tendra nx filas y nz columnas y la matriz de ceros de color verde
tendra nz filas y nu columnas.

Utilice la funcion dlqr de Matlab para encontrar la ganancia L que define la ley de control
u(kh) = L xe (kh) y permite que la masa m se pueda posicionar en un punto deseado del riel.
Inicialmente suponga a Q como una matriz identidad y a R = 1.

Utilice Simulink para simular el comportamiento de lazo cerrado del sistema utilizando como
representacion matematica de la planta el modelo descrito por (3), considerando como condiciones
iniciales x1 (0) = /18, x2 (0) = 0, x3 (0) = 0 y x4 (0) = 0 y suponiento que la posicion deseada
de la masa es 0.4 m.

Simule el comportamiento de lazo cerrado del sistema utilizando como representacion matematica
de la planta el modelo descrito por (2) y considerando como condiciones iniciales x1 (0) = 0,
x2 (0) = 0, x3 (0) = 0 y x4 (0) = 0. Para simular el modelo no lineal de la planta utilice los
diagramas de bloques de las Figuras 2 y 3.

Describa el efecto de la constante q5 de la matriz presentada en (7) en el comportamiento de lazo


del sistema. Realice diferentes simulaciones considerando: (i) q5 = 1, (ii) q5 = 10 y (iii) q5 = 100.

1 0 0 0 0
0 1 0 0 0

0
Q= 0 1 0 0 , R=1 (7)
0 0 0 1 0
0 0 0 0 q5

Figura 2: Diagrama de bloques del sistema en lazo cerrado. El subsistema Ball and Beam Nonlinear
Model se describe en la Figura 3.

3
Figura 3: Diagrama de bloques del subsistema con el modelo no lineal de la planta. La funcion Dynamic
model debe calcular las derivadas de los estados con base en el modelo no lineal descrito por (2).

Vous aimerez peut-être aussi