pendulo invertido

15
8º CONGRESO IBEROAMERICANO DE INGENIERIA MECANICA Cusco, 23 al 25 de Octubre de 2007 “MODELADO, SIMULACIÓN Y CONTROL DE UN PÉNDULO INVERTIDO USANDO COMPONENTES ANÁLOGOS SIMPLES” Tinoco Romero R.F., Orcés Pareja E.H. Facultad de Ingeniería Mecánica, Escuela Superior Politécnica del Litoral, Guayaquil, Ecuador Km. 30.5 Vía Perimetral, Campus G. Galindo. [email protected] RESUMEN. En el presente artículo se describe el diseño, simulación y pruebas realizadas con un péndulo invertido que será usado en el laboratorio de sistemas de control como un elemento didáctico sencillo y de bajo costo. El péndulo invertido es un dispositivo que simula algunos sistemas prácticos como brazos robóticos, grúas, etc., y consiste en una barra cilíndrica con libertad de oscilar alrededor de un pivote fijo. En el presente caso, el pivote es montado sobre un carro el cual puede desplazarse horizontalmente. El propósito final es conservar el péndulo en posición vertical ante la presencia de perturbaciones, aplicando para esto una fuerza de control apropiada. La fuerza correcta es establecida a través de las mediciones de los valores instantáneos de la posición horizontal y el ángulo de inclinación del péndulo. Se diseña un observador de orden mínimo usando Matlab, y se lo comprueba usando simulación. Se describe la construcción de un prototipo y un controlador mediante el uso de componentes análogos simples, y la comparación con el sistema simulado. Se analiza el efecto de factores reales tales como fricción, ruido y no linealidades del sistema.

Upload: alan-grajeda

Post on 14-Dec-2014

144 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: pendulo invertido

8º CONGRESO IBEROAMERICANO DE INGENIERIA MECANICACusco, 23 al 25 de Octubre de 2007

“MODELADO, SIMULACIÓN Y CONTROL DE UN PÉNDULO INVERTIDO USANDO COMPONENTES ANÁLOGOS SIMPLES”

Tinoco Romero R.F., Orcés Pareja E.H.

Facultad de Ingeniería Mecánica, Escuela Superior Politécnica del Litoral, Guayaquil, EcuadorKm. 30.5 Vía Perimetral, Campus G. Galindo.

[email protected]

RESUMEN.

En el presente artículo se describe el diseño, simulación y pruebas realizadas con un péndulo invertido que será usado en el laboratorio de sistemas de control como un elemento didáctico sencillo y de bajo costo.

El péndulo invertido es un dispositivo que simula algunos sistemas prácticos como brazos robóticos, grúas, etc., y consiste en una barra cilíndrica con libertad de oscilar alrededor de un pivote fijo. En el presente caso, el pivote es montado sobre un carro el cual puede desplazarse horizontalmente. El propósito final es conservar el péndulo en posición vertical ante la presencia de perturbaciones, aplicando para esto una fuerza de control apropiada. La fuerza correcta es establecida a través de las mediciones de los valores instantáneos de la posición horizontal y el ángulo de inclinación del péndulo.

Se diseña un observador de orden mínimo usando Matlab, y se lo comprueba usando simulación. Se describe la construcción de un prototipo y un controlador mediante el uso de componentes análogos simples, y la comparación con el sistema simulado. Se analiza el efecto de factores reales tales como fricción, ruido y no linealidades del sistema.

PALABRAS CLAVE: Sistemas de control, Modelado, Simulación.

CÓDIGO 842

Page 2: pendulo invertido

INTRODUCCIÓN.

El péndulo invertido es un problema de control clásico, normalmente cubierto en clases introductorias de controles y dinámica, además es muy conocido por su excelente analogía para el diseño de un controlador de vibraciones en las plataformas para el lanzamiento de un cohete, como también para la estabilización de grúas, edificaciones, robótica y sobre todo para aplicaciones didácticas, por ser un excelente medio de comprobación y evaluación de las diferentes metodologías de control. Muchos péndulos invertidos modernos usan sensores giroscópicos, codificadores ópticos con microprocesadores o computadoras completas para implementar sus algoritmos de control. Mientras la sofisticación de esos sensores y poder de estimación de estos dispositivos tiene sus ventajas, estos generan un problema de control que no es accesible para el estudiante sin conocimiento de técnicas avanzadas de control.

Con el objeto de hacer más accesible la solución del problema de control a estudiantes de clases introductorias de sistemas de control, se procuró diseñar un sistema mediante el uso de componentes análogos simples tales como potenciómetros y amplificadores operacionales [1]. El propósito de este proyecto es el de diseñar un controlador que permita la estabilización del péndulo en una posición vertical bajo el control del posicionamiento del carro. Se siguió el modelo de Shahian [2] en una implementación lo más simple posible del sistema de control.

El comportamiento dinámico se lo describe mediante un modelo matemático obtenido a partir de las leyes físicas fundamentales, para así llegar a la ley de control que permita obtener un sistema estable. Se utiliza la metodología de Ubicación de Polos y Regulador Cuadrático Lineal para hacer el diseño usando Matlab.

MODELO DINÁMICO DEL SISTEMA

Definición del sistema a controlar

El Péndulo Invertido es un sistema conformado por un péndulo montado sobre un carro impulsado por un actuador. El objetivo a alcanzar es mantener el péndulo en posición vertical tanto como sea posible y tener control sobre la posición del carro. El sistema puede ser modelado como un sistema lineal considerando que las desviaciones angulares del péndulo son muy pequeñas. La bondad del diseño está dada por los movimientos que el carro necesita hacer para posicionarse sin que el péndulo se desvíe desde su posición vertical más de un cierto ángulo, lo cual debe darse en un tiempo razonable.

El sistema de control tendrá dos salidas: inclinación del péndulo y posición del carro. Dichas salidas serán procesadas por el sistema de control a diseñar el cual dará como respuesta la fuerza y el sentido a aplicar al movimiento del carro, por ende la aplicación de un modelo en el espacio de estados será el apropiado. No obstante para fines didácticos se ha hecho énfasis también en el control convencional.

Modelo Dinámico del Péndulo Invertido

Con la finalidad de entender el comportamiento de los sistemas dinámicos y controlar los sistemas complejos, es necesario obtener modelos matemáticos para representarlos. A continuación se describe el sistema analizado, el cual consiste en una barra articulada en el punto P al carro, el cual es impulsado por una fuerza de control, como se ve en la Fig. 1. El movimiento se restringe al plano vertical.

Fig. 1: (a) Sistema del péndulo invertido, (b) Diagrama de cuerpo libre.

1

Page 3: pendulo invertido

Las ecuaciones linealizadas para pequeñas oscilaciones alrededor de la posición vertical son las siguientes:

(1)

(2)

Tomando la Transformada de Laplace, se obtiene la función de transferencia entre la posición angular Θ(s) del péndulo y la fuerza de control U(s):

(3)

donde:

Modelado del Péndulo Invertido en el Espacio de Estados.

Para obtener el modelo en el espacio de estados, primero se definen las variables de estado y las variables de salida, luego las ecuaciones diferenciales de la dinámica del sistema y las ecuaciones de salida.

3

1

2

1

x

x

Xy

yy

(4)

(5)

(6)

Determinación de la estabilidad del sistema en lazo abierto usando Matlab

2

Page 4: pendulo invertido

La estabilidad del sistema en lazo abierto se puede determinar hallando los polos a partir de la ecuación característica del sistema de la Ec. (3). Usando valores numéricos para los parámetros del sistema, los cuales serán obtenidos en la siguiente sección, se puede trazar el lugar geométrico de las raíces como se ve en la Fig. 2. El sistema claramente es inestable pues tiene un polo en el semiplano derecho. Esto muestra la necesidad de un compensador apropiado para poder controlar el sistema.

Fig. 2: Lugar geométrico de las raíces para el sistema en lazo abierto

DETERMINACIÓN DE LOS PARÁMETROS DEL SISTEMA

Tomando en cuenta factores tales como disponibilidad, costo, seguridad, peso, tamaño, confiabilidad y precisión se seleccionó como actuador del prototipo un motor de corriente continua de imán permanente, el cual mueve al carro a través de una caja reductora y un sistema de poleas (Fig.3).

Las constantes del motor se midieron experimentalmente [1], y se muestran en la Tabla 1.

Fig. 3: Componentes del prototipo del sistema de péndulo invertido.

Tabla 1: Valores de los parámetros del sistema

3

Page 5: pendulo invertido

PARÁMETRO DESCRIPCIÓN VALOR

M Masa del Carro 0,435 Kg.

m Masa del Péndulo 0,270 Kg.

l Longitud media del Péndulo 0,165 m.

b Coeficiente de Fricción Viscosa del Carro 0,1 N.s/m

B Coeficiente de Fricción Viscosa del Péndulo 0,05 N.m/rad/s

K1 Constante del Par Motriz 0,27173 N.m/A

K2 Constante de la Fuerza Contra electromotriz 0,15584 V/rad/s

Ra Resistencia de Armadura del Motor 3,69 W

Kq Ganancia del Potenciómetro del Péndulo 1,637 V/rad

Kx Ganancia del Potenciómetro del Carro 3,183 V/m

D Diámetro de la Polea 0,075 m

n Reducción de la caja Reductora 10

Jo Inercia reducida al eje del Motor 2,77e-3 Kg.m2

Conexión dinámica del péndulo con el motor

La transmisión de movimiento del motor al carro se realiza a través de un cable inelástico el cual está unido a una polea impulsora y una conducida según el esquema que se muestra en la Fig. 4.

Fig. 4: Conexión del motor con el péndulo

Considerando la dinámica del motor e incluyéndola en las ecuaciones linealizadas del movimiento (1) y (2), se obtienen las siguientes ecuaciones diferenciales que describen el comportamiento del sistema.

(7)

(8)

Donde:

4

Page 6: pendulo invertido

DISEÑO DEL SISTEMA DE CONTROL

Diseño mediante ubicación de polos

Se controla tanto la posición del carro como la desviación angular del péndulo. Las especificaciones de desempeño que se establecen para una entrada escalón de la fuerza de control son:

Tiempo de estabilización de las variables menor a 2 segundos. Relación de amortiguamiento en lazo cerrado de 0.5. Error de estado estable cero.

Para cumplir las especificaciones de desempeño, los polos de la función de transferencia de lazo cerrado, deben ser de -2 i3 y -20. Mediante el uso de Matlab se verifica que el problema de estado es completamente controlable; luego se aplica la fórmula de Ackermann para obtener la siguiente matriz de retroalimentación de estados la cual proporciona los polos deseados. En la Fig. 5 se muestra el esquema de retroalimentación de estados que se ha usado [3].

Fig. 5: Diagrama de bloques mostrando la retroalimentación de estados

Las ganancias del control retroalimentado son las siguientes:

K = [135.3076 12.6423 -72.1959 -38.8514] (9)

Por lo que la señal de control toma la siguiente forma:

μ = -135.3076 - 12.6423 ´ + 72.1959 X + 38.8514 X´ (10)

Diseño de un observador de estado

Considerando que se miden solo dos de las cuatro variables de estado, se procede a diseñar un observador de estados que permita tener una medición ‘virtual’ de las variables no medidas. En primer lugar se diseña un observador de orden completo, como si no se midiera ninguna de las variables de estado. Usando Matlab se confirma la observabilidad del sistema. Se seleccionan los valores característicos del observador para que su respuesta sea estable y más rápida que la respuesta del sistema en lazo cerrado. Se seleccionan los polos del observador como -10,-11,-12 y -13, con lo cual la matriz de ganancias del observador resulta la siguiente:

L = [ 15.0940 -1.2452; 78.9617 -16.6433; -1.7567 23.9477; -18.3909 145.4249] (11)

5

Page 7: pendulo invertido

Fig. 6: Diagrama de bloques incluyendo el observador de orden completo

Con la implementación de este observador se obtiene el siguiente comportamiento de las variables controladas (Fig. 7).

Fig. 7: Comportamiento del sistema con un observador de estado completo

Se observa que tanto el desplazamiento del carro como la desviación angular del péndulo se estabilizan en un

tiempo menor a 2 segundos y con cero errores de estado estable.

Diseño de un observador de orden reducido

La señal de control se la obtiene de la medición de dos variables de salida solamente (posición del carro y desviación angular del péndulo) lo cual se hace mediante el uso de dos potenciómetros. Es entonces necesario diseñar un observador de orden reducido para obtener las señales de las variables de estado.

Usando la metodología del regulador cuadrático lineal (LQR) se puede obtener un observador de orden mínimo [3]. Esto se ha implementado en los siguientes programas de Matlab, mediante el uso de los cuales se obtiene la matriz de retroalimentación K y la del observador L.

6

Page 8: pendulo invertido

Fig. 8: Programas de Matlab para calcular las matrices K y L

Los valores obtenidos son:

K =[ 76.9728 -31.6228 6.8075 -28.0053] (12) L = [ 9.3186 -0.2527; -0.2527 0.0555] (13)

El comportamiento del sistema con el observador de orden mínimo se muestra en la Fig. 9.

Fig. 9 Comportamiento del sistema con un observador reducido

7

%.....Regulador Cuadrático Lineal para determinar K.. M = 0.435; m = 0.270; b = 0.10; B = 0.05; g = 9.80; l = 0.165; I = m*l^2/3; %..Inercia del péndulo. r = 0.0375; %..Radio de la polea K1 = 0.27173; K2 = 0.15584; Ra = 3.69; N = 10; %...ganancia del tren de engranajes Jm = 0.00178 %...Inercia del motor Jo = Jm+(M+m)*r^2 %...Inercia referida al eje del motor E = 0.6; %..amplificador del driver del motor q = (M+m+Jo/(2*r^2))*(I+m*l^2)-(m*l)^2; % Denominador para las Matrices A y B A = [0 0 1 0; 0 0 0 1; (M+m+Jo/(2*r^2))*m*l*g/q 0 -B*(M+m+Jo/(2*r^2))/q -m*l*(b+(N*K1)*K2/(2*Ra*r^2))/q; (m*l)^2*g/q 0 -B*m*l/q -(b+(N*K1)*K2/(2*Ra*r^2))*(I+m*l^2)/q]; B = [ 0; 0; E*m*l*N*K1/(q*Ra*r); E*(I+m*l^2)*N*K1/(q*Ra*r)]; C = [1 0 0 0; 0 1 0 0]; D = [0; 0]; x = 1000; % asignacion a prueba y error de las matrices Q y R. y = 1000; Q = [x 0 0 0; 0 y 0 0; 0 0 1 0; 0 0 0 1]; R = 1; K = lqr(A,B,Q,R) Ac = [(A-B*K)]; Bc = [B]; Cc = [C]; Dc = [D]; p=eig(Ac) sys_cl = ss(Ac,Bc,Cc,Dc); T = 0:0.01:4; % Tiempo de simulación = 10 seg U = ones(size(T)); % u = 1, entrada escalón. X0 = [0 0 0 0]; % condición inicial [Y,T,X]=lsim(sys_cl,U,T,X0); % simulate plot(T,Y) legend('Pendulo [rad]','Carro [m]')

%..Regulador Cuadrático Lineal para determinar L.. M = 0.435; m = 0.270; b = 0.10; B = 0.05; g = 9.80; l = 0.165; I = m*l^2/3; r = 0.0375; K1 = 0.27173; K2 = 0.15584; Ra = 3.69; N = 10; %...ganancia del tren de engranajes Jm = 0.00178 %...Inercia del motor Jo = Jm+(M+m)*r^2 %...Inercia referida al eje del motor E = 0.6; %..amplificador del driver del motor q = (M+m+Jo/(2*r^2))*(I+m*l^2)-(m*l)^2; % Denominador para las Matrices A y B Aaa = [0 0; 0 0]; Aab = [1 0; 0 1]; Aba = [(M+m+Jo/(2*r^2))*m*l*g/q 0; (m*l)^2*g/q 0]; Abb = [-B*(M+m)/q -m*l*(b+(N*K1)*K2/(2*Ra*r^2))/q; -B*m*l/q -(b+(N*K1)*K2/(2*Ra*r^2))*(I+m*l^2)/q]; Ba = [0;0]; Bb = [ E*m*l*N*K1/(2*q*Ra*r);E*(I+m*l^2)*N*K1/(2*q*Ra*r)]; x = 10; % asignación arbitrario de las matrices Q y R. y = 10; Qo = [x 0; 0 y]; Ro = [1 0;0 1]; L = lqr(Abb',Aab',Qo,Ro)

P =eig(Abb-L*Aab)

Page 9: pendulo invertido

El comportamiento observado (Fig. 9) muestra un mayor sobrepaso en la oscilación inicial del péndulo pero el tiempo de estabilización es menor que el obtenido antes (Fig. 7) y el error de estado estable es cero.

Usando los valores obtenidos para las matrices K y L se llega a la siguiente señal de control:

(14)

El correspondiente diagrama de flujo de señales a partir del cual se implementó el circuito electrónico de compensación se muestra en la Fig. 8 [2].

+13.62

+17.10

-31.39

+27.67

-1.00

+124.39

+8.14

-0.42

+3.96

-12.43

-1.22

-9.05

-1/ S

-1/ S

1.637

-103.49

-4.369

-9.88

-1.00

4.244

U

Fig. 8: Diagrama de flujo de señales del compensador

RESULTADOS

Se construyó el equipo usando un motor de CD como actuador, el cual a través de un sistema de poleas impulsaba al carro con el péndulo montado encima de él (Fig. 3). Se usaron potenciómetros de precisión para obtener señales de retroalimentación de la posición del carro y de la inclinación del péndulo. Estas señales eran procesadas por un compensador diseñado de acuerdo al diagrama de flujo de señales de la Fig. 8.

CONCLUSIONES

Se simuló, diseñó y construyó un prototipo de un sistema de péndulo invertido, el cual sirve para hacer demostraciones de estrategias de control usando variables de estado en un curso de sistemas de control. El sistema construido es de bajo costo y cumple parcialmente los objetivos para los cuales fue diseñado. Aunque se logró mantener el péndulo estabilizado en la posición vertical cumpliendo con las especificaciones de diseño, surgieron problemas en algunos casos, los cuales ocasionaron que este finalmente se cayera. Los principales problemas surgieron por la saturación de los componentes del sistema de control y problemas de ruido generados en los potenciómetros. Estos problemas, sin embargo, fueron superados disminuyendo la ganancia para evitar saturación y usando potenciómetros de precisión para disminuir la generación de ruido.

Para futuras mejoras del sistema se hace necesaria la obtención de ganancias significativas para la retroalimentación de los estados medidos en las zonas de baja frecuencia para lograr disminuir los efectos de los disturbios tanto internos como externos. No obstante para las regiones de alta frecuencia debe atenuarse la ganancia para así reducir los efectos del ruido.

REFERENCIAS

8

Page 10: pendulo invertido

1. R. Tinoco, Diseño y Simulación de un Sistema de Control de Péndulo Invertido, Tesis Ing. Mec., Facultad de Ingeniería Mecánica, Escuela Superior Politécnica del Litoral, Guayaquil, Ecuador, 2005

2. B. Shahian y M. Hassul, Control System Design using Matlab, Prentice-Hall, New Jersey, 1993.

9

Page 11: pendulo invertido

3. K. Ogata, Ingeniería de Control Moderna, Tercera edición, Prentice-Hall Hispanoamérica, México D.F., 1995.

4. W. Messner, Control Tutorials for Matlab and Simulink, Addison Wesley Longman, 2001.

UNIDADES Y NOMENCLATURAS

B Coeficiente de Fricción Viscosa equivalente del Reductorb Coeficiente de Fricción Viscosa equivalente del Pénduloxcg Abscisa del Centro de Gravedad del Pénduloycg Ordenada del Centro de Gravedad del PénduloK1 Constante del Par MotrizK2 Constante de la Fuerza Contra-electromotrizia Corriente de Armadura del Motorif Corriente de Campo del Motord Diámetro de la Polear Radio de la Poleaφ(s) Polinomio Característico de la Matriz de estadosθ Desplazamiento Angular del PénduloX Desplazamiento Lineal del Carroζ Relación de Amortiguamiento Relativoωo Frecuencia Naturalωa Frecuencia Natural Amortiguadaω Frecuencia ExcitadoraFd Fuerza ExcitadoraG(s) Función de Transferencia del Sistema Péndulo InvertidoΔV Ganancia de Voltajeg Aceleración de la GravedadLm InductanciaJc Inercia de CargaJm Inercia del MotorI Inercia del Péndulol Longitud del PénduloA Matriz de EstadoB Matriz de EntradaK Matriz de Ganancia de Retroalimentación del EstadoL Matriz de Ganancia del ObservadorC Matriz de SalidaD Matriz de Transición DirectaM Masa del Carrom Masa del Pénduloi Unidad Imaginarian Número de EstadosT Par desarrollado por el Motorτo Par desarrollado en la Poleaτ Período Fundamentalμi Polos del Sistema a Lazo CerradoN Reducción de VelocidadRa Resistencia de Armadura del Motorμ Señal de ControlMp Sobrepaso máximots Tiempo de Estabilizacióntr Tiempo de Levantamientos Variable Complejaxi Variable de Estadoea Voltaje aplicado a la Armadura del Motoreb Fuerza Contra-electromotriz