Está en la página 1de 16

UNIVERSIDAD CENTRAL DE VENEZUELA

FACULTAD DE INGENIERÍA

ESCUELA DE INGENIERÍA MECÁNICA

DEPARTAMENTO DE AUTOMÁTICA

CONTRÓLES AUTOMÁTICOS

Simulación y modelado matemático de un


péndulo invertido con una pelota de golf
como masa.

Profesor:

Idelfonso Del Moral

Realizado por:

Br. Miguel Castro

Br. Oscar Guimaray

Caracas, 03 de Agosto de 2012


Introducción

El péndulo invertido es un problema comúnmente empleado en ingeniería


de control, ya que representa un sistema inestable y no lineal.
El principal motivo de su utilización académica, es la facilidad con la que
permite evidenciar la diferencia en el comportamiento de un sistema a lazo abierto
y la estabilidad que le proporciona al mismo sistema un lazo cerrado, además de
ser un sistema de control accesible.
Existen diversos reguladores que permiten estabilizar el péndulo, algunos
con mejores resultados que otros.

Sistema de Péndulo Invertido


El sistema a considerar consiste en un carro sobre el cual se encuentra un
péndulo invertido sujetado mediante un pivote sin fricción. El carro es movido por
un motor que en el instante t ejerce una fuerza u(t) en sentido horizontal, que es la
acción de control. Suponemos que todos los movimientos ocurren en un plano, es
decir que el carro se mueve a lo largo de una recta.

Agregando requerimientos de diseño para este sistema tenemos:

0rad<θ<0,35rad (ángulo en el que el péndulo se desvía de la vertical)


g=9,81 (aceleración de la gravedad)
I=0,005 (inercia del péndulo)
b=0,08 (fricción del carro)
L=0,20m (longitud del péndulo)
M=0,1Kg (masa del carro)
m=0,04593Kg (masa del péndulo, estándar en pelotas de golf)
t<5s (tiempo de establecimiento del carro)
x: (desplazamiento del centro de gravedad del carro con respecto a un punto fijo)

Empleando el método de espacio de estado seremos más capaces de manejar


un sistema multi-salida. Por lo tanto, para este Péndulo Invertido intentaremos
controlar tanto el ángulo del péndulo cuanto la posición del carro. El carrito debe
lograr estar en su posición deseada dentro de los 5 segundos y tener un tiempo de
subida menor que 0.5 segundos. Además limitaremos el sobrepico del péndulo a
20 grados (0.35 radianes), y también deberá establecerse antes de los 5 segundos.

Análisis de las Fuerzas y Sistemas de Ecuaciones

Abajo figuran los dos diagramas de cuerpo libre del sistema.

Sumando las fuerzas en el diagrama de cuerpo libre del carro en la dirección


horizontal, se obtiene la siguiente ecuación del movimiento:

También se pueden sumar las fuerzas en la dirección vertical, pero no se


ganará ninguna información útil.

Sumando las fuerzas en el diagrama de cuerpo libre del péndulo en la


dirección horizontal, puede obtener una ecuación para N:
Si se sustituye esta ecuación en la primera ecuación, se obtiene la primera
ecuación del movimiento de este sistema:

Para obtener la segunda ecuación de movimiento, se suman las fuerzas


perpendiculares al péndulo para obtener la siguiente ecuación:

Para librarse de los términos P y N en la ecuación anterior, sumamos los momentos


sobre el centroide del péndulo para obtener la siguiente ecuación:

Combinando estas dos últimas ecuaciones, se obtiene la segunda ecuación


dinámica:

Como Matlab solo puede trabajar con funciones lineales, este conjunto de
ecuaciones deberá ser linealizado alrededor de . Asuma que (ø
representa un pequeño ángulo en la dirección vertical). Por lo tanto, ,

, y . Luego de la linealización las dos ecuaciones de

movimiento serán:

Función de Transferencia
Para obtener analíticamente la función de transferencia de las ecuaciones del
sistema linealizado, debemos tomar primero la transformada de Laplace de las
ecuaciones del sistema. Las transformadas de Laplace son:

Como estamos mirando al ángulo ø como la salida de interés, resolvemos la


primera ecuación para x(s),

Entonces sustituimos en la segunda ecuación:

Donde:

Re-ordenando, la función de transferencia es:

De la función de transferencia de arriba puede verse que hay un polo y un


cero en el origen. Estos puede ser cancelados y la función de transferencia será:
La función de transferencia hallada a partir de las transformadas de Laplace
puede ser establecida con Matlab ingresando el numerador y el denominador
como vectores. Se introduce lo siguiente para modelar la función de transferencia:

M = 0.1;
m = 0.04593;
b = 0.08;
I = 0.005;
g = 9.81;
L = 0.2;

q = (M+m)*(I+m*L^2)-(m*L)^2; %simplifica entrada

num = [m*L/q 0]
den = [1 b*(I+m*L^2)/q -(M+m)*m*g*L/q -b*m*g*L/q]

La salida es:

num =
10.0573 0

den =
1.0000 0.5989 -14.3977 -7.8929

Para observar la respuesta del sistema de la velocidad a una fuerza


impulsiva aplicada al carro se agregan las siguientes líneas al final del archivo-m:

t=0:0.01:5;
impulse(num,den,t)
axis([0 2 0 100])
Se obtiene el gráfico de respuesta de velocidad:

Como puede ver del gráfico, la respuesta es totalmente insatisfactoria. No es


estable a lazo abierto.

Espacio de Estado

Abajo, se muestra cómo se encara el problema usando Matlab para el


modelo en espacio de estado. Se ingresa el siguiente texto a un archivo-m y se
ejecuta, Matlab dará las matrices A, B, C, y D para el modelo en espacio de estado y
un gráfico de la posición del carro y ángulo del péndulo como respuesta a un
entrada escalón de 0.1 m aplicada al carro.

M = 0.1;
m = 0.04593;
b = 0.08;
I = 0.005;
g = 9.81;
L = 0.2;

p = I*(M+m)+M*m*L^2; %den para las matrices A y B

A = [0 1 0 0;
0 -(I+m*L^2)*b/p (m^2*g*L^2)/p 0;
0 0 0 1;
0 -(m*L*b)/p m*g*L*(M+m)/p 0]

B = [ 0;
(I+m*L^2)/p;
0;
m*L/p]

C = [1 0 0 0;
0 0 1 0]

D = [0;
0]

T=0:0.05:10;
U=0.1*ones(size(T));
[Y,X]=lsim(A,B,C,D,U,T);
plot(T,Y)
axis([0 3 0 50])

Luego de correr este archivo-m, se obtiene la siguiente salida:

A =
0 1.0000 0 0
0 -0.5989 0.9063 0
0 0 0 1.0000
0 -0.8046 14.3977 0

B =
0
7.4857
0
10.0573
C =
1 0 0 0
0 0 1 0

D =
0
0

La línea azul representa la posición del carro y la línea verde representa el


ángulo del péndulo. De esta figura y de la anterior es obvio que para mejorar la
dinámica del sistema alguna especie de control tendrá que ser diseñada.

Controlador PID

Agregando un controlador PID, mediante Simulink, creamos un


archivo .mdl e ingresamos el siguiente diagrama de bloques:
Al ejecutar el Scope, obtenemos la siguiente gráfica:

El sistema sigue sin ser estable, aún aplicándole un controlador PID de


librería de Matlab, entonces, la solución probablemente esté en el diseño de un
controlador específico para el péndulo en cuestión.

Diseño de un PID

La ecuación característica del bucle cerrado viene dada por:


El denominador aparece sumado ya que la realimentación es negativa, en
caso de ser positiva habrá que sustituirlo por 1 - Ku G(z).

La forma de diseñar este PID es haciendo uso del método de ajuste de


Nichols-Ziegler. Básicamente consiste en lograr unos valores para la I (integral) y D
(derivados) de modo que la ganancia sea cero. La función de transferencia del
regulador tiene la siguiente estructura:

Para cada tipo de controlador se sigue los siguientes parámetros:


 Controlador P: Kc=0.5Ku
 Controlador PI: Kc=0.45KuTi = Tu/1,2
 Controlador PID: Kc=0.6KuTi = Tu/2Td = Tu/8

Donde:
En Matlab, empleo un fichero que conseguí, llamado POLYADD, el cuál
permite sumar polinomios sin importar la diferencia de longitud entre ellos

% ------ polyadd.m ------


function[poly] = polyadd(poly1,poly2)
if length(poly1) < length(poly2)
short = poly1;
long = poly2;
else
short = poly2;
long = poly1;
end
mz = length(long)-length(short);
if mz > 0
poly = [zeros(1,mz),short] + long;
else
poly = long + short;
end
% ------ end ------

Ahora defino:

kd = 1;
k = 1;
ki = 1;
numPID = [kd k ki ];
denPID = [1 0];
numc = conv (num , denPID )
denc = polyadd ( conv (denPID ,den ),conv (numPID ,num ))

Comenzamos con la simulación real, donde al introducir un impulso a la


entrada, la salida es:

t =0:0.01:5;
impulse (numc ,denc ,t)
axis ([0 5 0 2])

Y Matlab nos arroja la siguiente gráfica:


Esta gráfica demuestra que el sistema ya no es tan inestable, con el
controlador diseñado y su comportamiento tiende a mejorar a medida que se
emplean mas valores de tanteo en las constantes. Pero la amplitud disminuye
considerablemente y esto sin tomar en cuenta el desplazamiento del carro.

Ahora, si varío el tiempo de respuesta, obtengo un comportamiento estable


y satisfactorio, en un principio, que se altera al transcurrir el tiempo.
Conclusión

En péndulo invertido es un sistema con cierto grado de complicación, pues


las funciones predeterminadas como controladores, no son aplicables directamente
a estos sistemas.

Al tener un peso tan bajo como el de una bola de golf, se hace difícil
estabilizar el sistema, tal vez con valores distintos a los empleados para la masa del
carro, largo de brazo del péndulo, fricción del carro, se hubiese podido obtener un
comportamiento estable en la gráfica que representa la estabilidad del sistema.

Mas sin embargo, se logró mejorar considerablemente el comportamiento de


la misma, el cual se iba al infinito, tras diseñar un PID personalizado para el
sistema, la gráfica era controlada desde el inicio, pero por algún motivo, aún no tan
claro, sufría alteraciones al final del intervalo de tiempo.

También podría gustarte