06 ControlPIDBallBeam
06 ControlPIDBallBeam
06 ControlPIDBallBeam
3 INGENIERA INDUSTRIAL
AUTMATAS Y SISTEMAS DE CONTROL
OBJETIVOS
Partiendo del problema planteado en prcticas anteriores donde se identific la inestabilidad del sistema
barra - bola en lazo abierto se procede a disear un controlador que respondiendo al esquema mostrado en
la figura
consiga que el sistema cumpla unos requerimientos de diseo previamente definidos. Para la resolucin
del problema se trabajar en entorno Matlab-Simulink.
1
INGENIERA DE SISTEMAS Y AUTOMTICA
Recordamos la funcin de transferencia que relaciona la entrada (ngulo theta) con la salida
(posicin de la bola):
R(s) mgd 1
=
T(s) J s2
L 2 + m
R
Donde sustituyendo los valores asignados a las distintas variables resulta:
R(s) 0.21
= 2
T(s) s
2. REQUERIMIENTOS DE DISEO
Los requerimientos de diseo para el problema son:
Recordamos la respuesta del sistema en lazo abierto a una entrada escaln de 0.25 rad. Aadimos, para
ello, el comando:
num=0.21;
den=[1 0 0];
gs=tf(num,den);
step(0.25*gs)
2
INGENIERA DE SISTEMAS Y AUTOMTICA
Respuesta que hace evidente la necesidad de un controlador para cumplir los requerimientos de diseo
especificados.
Comenzamos analizando la respuesta del sistema en lazo cerrado a una entrada escaln de 0.25 rad
Aadir un controlador proporcional con Kp distinto de la unidad y aplicar de nuevo la entrada escaln
anterior,
numP = Kp*num
[numc,denc] = cloop(numP,den)
Recordamos de teora que el Lugar de las Races permite observar la posicin de los polos en lazo
cerrado al variar la ganancia K
Si variando la ganancia K es posible que el LDR pase por los polos deseados no hara falta ningn otro
tipo de regulador, el regulador proporcional es suficiente. Si an variando la ganancia no se consigue que
el LDR pase por dichos polos hay que introducir ceros y polos adicionales de forma que se modifique el
LDR hasta que pase por los polos requeridos.
Recordamos el LD R del problema que nos ocupa, ya obtenido en la prctica 1. Utilizamos el comando
rlocus (num,den)
3
INGENIERA DE SISTEMAS Y AUTOMTICA
Calculamos ahora la posicin de los polos que cumplen los requerimientos de diseo a partir de estos
requerimientos, recordamos
- es posible por tanto nicamente con un controlador proporcional cumplir los requerimientos de
diseo?
G(s) = K C
(s + z 0 )
(s + p 0 )
Donde la magnitud de z0 es menor que la magnitud de p 0. Para el diseo de este regulador es necesario
seleccionar la posicin tanto del cero como del polo.
Para colocar el cero (z 0) tenemos varios criterios. Elegimos, por ejemplo (no es el nico) el criterio de
colocar el cero del regulador cercano al origen para cancelar uno de los polos. Para colocar el polo
aplicamos el criterio del argumento.
Una vez obtenidos los valores de z 0 y p 0 calculamos el valor de K C aplicando el criterio del mdulo.
Seguidamente construimos el lugar de las races del sistema con regulador. Se proponen los siguientes
comandos
numlead = [1 Zo];
denlead = [1 Po];
num1 = conv(num,numlead);
4
INGENIERA DE SISTEMAS Y AUTOMTICA
den1= conv(den,denlead)
rlocus(num1,den1)
El LDR nos permite una comprobacin de los resultados obtenidos. Aadimos el comando
A la hora de determinar los valores de Kp, KD y K i utilizar esta tabla tan solo como referencia. Recordar
que el cambio de uno de ellos condiciona el valor de los otros.
5
INGENIERA DE SISTEMAS Y AUTOMTICA
Partiendo de la siguiente tabla y utilizando un procedimiento de tanteo obtener un controlador que cumpla
los requerimientos especificados.
A la hora de determinar los valores de Kp, Kd y Ki utilizar esta tabla tan solo como referencia. Recordar
que el cambio de uno de ellos condiciona el valor de los otros.