diseÑo, simulaciÓn y control de un pÉndulo invertido …
TRANSCRIPT
1
DISEÑO, SIMULACIÓN Y CONTROL DE UN PÉNDULO INVERTIDO DOBLE LINEAL PARA EL LABORATORIO DE AUTOMÁTICA DE LA EIEE DE
UNIVALLE
GUSTAVO ADOLFO CORTÉS CARDONA
UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA PROGRAMA DE POSGRADOS EN INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
MAESTRÍA EN INGENIERÍA ÉNFASIS EN AUTOMÁTICA SANTIAGO DE CALI
2017
2
DISEÑO, SIMULACIÓN Y CONTROL DE UN PÉNDULO INVERTIDO DOBLE LINEAL PARA EL LABORATORIO DE AUTOMÁTICA DE LA EIEE DE
UNIVALLE
GUSTAVO ADOLFO CORTÉS CARDONA
Trabajo de Grado Modalidad Profundización para optar al título de Magíster en Ingeniería – Énfasis en Automática
Director MSc. José Tomas Buitrago Molina
Ingeniero Mecánico
UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA PROGRAMA DE POSGRADOS EN INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
MAESTRÍA EN INGENIERÍA ÉNFASIS EN AUTOMÁTICA SANTIAGO DE CALI
2017
3
Nota de Aceptación:
_____________________________________
_____________________________________
_____________________________________
_____________________________________
_____________________________________
_____________________________________
Firma del Director
_____________________________________
Firma del Evaluador
_____________________________________
Firma del Evaluador
Santiago de Cali, Junio de 2017
4
DEDICATORIA
Inicialmente deseo dedicarle este trabajo especial a todas las personas que siempre
creyeron en mi capacidad, capacidad que tenemos todos, es grato saber la fuerza
y determinación que poseemos cuando queremos alcanzar algo.
A Dios por estar pendiente en todos los momentos de mi vida, iluminándome el
camino, siendo mi fortaleza en cada paso de mi vida, con su protección y bendición
me ayudo a serle frente a todos los problemas.
A mis padres por infundir en mí la lucha y el deseo de superación, resaltando el
apoyo en los momentos de duda, dificultad y felicidad.
A mi esposa Leslie Andrea por creer en mí y a mi hija Laura Gabriela por su ternura,
por estar conmigo en los momentos de alegría y tristeza; por su actitud de apoyo y
comprensión.
5
AGRADECIMIENTOS
El presente trabajo de grado inicialmente me gustaría agradecerte a ti Dios por
bendecirme para llegar hasta donde he llegado, porque hiciste realidad este sueño
anhelado.
A mi director de tesis, MSc. José Tomás Buitrago Molina por su esfuerzo y
dedicación, quien, con sus conocimientos, su experiencia, su paciencia y su
motivación ha logrado en mí que pueda terminar mis estudios con éxito.
De igual manera agradecer al PhD. Manuel Camargo por su visión crítica de muchos
aspectos cotidianos de la vida, por su rectitud en su profesión como docente, por
sus consejos, que ayudan a formarte como persona e investigador.
Son muchas las personas que han formado parte de mi vida profesional, a las que
me encantaría agradecerles su amistad, consejos, apoyo, ánimo y compañía en los
momentos más difíciles de mi vida. Algunas están aquí conmigo y otras en mis
recuerdos y en mi corazón, sin importar en donde estén quiero darles las gracias
por formar parte de mí, por todo lo que me han brindado y por todas sus bendiciones.
Para ellos, muchas gracias y que Dios los bendiga.
6
TABLA DE CONTENIDO
Pág.
ABSTRACT ........................................................................................................... 15
KEYWORDS ...................................................................................................... 15
RESUMEN ............................................................................................................ 16
PALABRAS CLAVE ........................................................................................... 16
0. INTRODUCCIÓN ............................................................................................ 17
1. PROBLEMA DE INVESTIGACIÓN ................................................................. 19
1.1. PLANTEAMIENTO DEL PROBLEMA ....................................................... 19
1.2. FORMULACIÓN DEL PROBLEMA .......................................................... 21
1.3. SISTEMATIZACIÓN DEL PROBLEMA .................................................... 21
2. OBJETIVOS .................................................................................................... 22
2.1. OBJETIVO GENERAL .............................................................................. 22
2.2. OBJETIVOS ESPECÍFICOS .................................................................... 22
3. ALCANCE ....................................................................................................... 23
4. JUSTIFICACIÓN ............................................................................................. 25
7
5. MARCO REFERENCIAL ................................................................................ 27
5.1. MARCO HISTÓRICO ............................................................................... 27
5.1.1. Modelamiento y simulación de un sistema con doble péndulo invertido 27
5.1.2. Diseño y manufactura de un péndulo doble para realizar pruebas de estabilidad y control ........................................................................................ 27
5.1.3. Simulación del movimiento de un péndulo doble en un medio viscoso 28
5.1.4. Modelamiento, diseño y simulación de un sistema de control para un sistema de péndulo doble invertido (SPDI) ..................................................... 28
5.1.5. Diseño e implementación de un péndulo invertido sobre un carro móvil para el laboratorio de mecatrónica de la FIMCP aplicando estrategias de control proporcional integral derivativo (PID) .................................................. 29
5.1.6. Dinámica de un péndulo sobre móvil: simulación y experimento ...... 29
5.1.7. Diseño de un sistema péndulo invertido, sobre plataforma LEGO Mindstorms NXT, controlado mediante MATLAB ........................................... 30
5.1.8. Modelado, control y simulación de un sistema péndulo invertido sobre base móvil ....................................................................................................... 30
5.1.9. Diseño e implementación de un péndulo invertido sobre un carro aplicando estrategias de control basado en LMI ............................................. 31
5.1.10. Integración del hardware de un péndulo invertido ............................. 31
5.1.11. Control de un péndulo invertido simple por métodos de realimentación de estados ...................................................................................................... 32
5.1.12. El péndulo invertido: un desafío para el control no lineal ................... 32
5.2. MARCO TEÓRICO ................................................................................... 33
5.2.1. Péndulo doble .................................................................................... 33
5.2.2. Modelo matemático ........................................................................... 34
5.2.3. Método de Euler – Lagrange ............................................................. 35
5.2.4. Jacobiano .......................................................................................... 39
8
5.2.5. Control automático ............................................................................. 41
5.2.6. Controlador por realimentación de estados ....................................... 42
5.2.7. Observador o estimación de estados ................................................ 43
5.2.8. Regulador óptimo cuadrático o LQR .................................................. 46
5.2.9. Estimador óptimo cuadrático o LQE .................................................. 46
5.2.10. Controlador óptimo gaussiano o LQG ............................................... 47
5.3. MARCO CONCEPTUAL ........................................................................... 50
6. PROTOTIPO VIRTUAL EN 3D DEL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL ..................................................................................................... 53
6.1. VISTA ISOMÉTRICA DEL PENDULO INVERTIDO DOBLE LINEAL ....... 54
6.2. VISTA EXPLOSIONADA .......................................................................... 55
6.3. PISTA DEL CARRO MÓVIL ..................................................................... 56
6.4. ESTRUCTURA ......................................................................................... 57
6.5. CARRO MÓVIL......................................................................................... 58
6.6. ESLABÓN 1 .............................................................................................. 59
6.7. ESLABÓN 2 .............................................................................................. 60
6.8. CHUMACERA .......................................................................................... 61
6.9. TORNILLO CHUMACERA ........................................................................ 62
6.10. CAJA DE DISPOSITIVOS ELECTRÓNICOS ........................................... 63
7. MODELO MATEMÁTICO DEL PÉNDULO INVERTIDO DOBLE LINEAL ...... 64
7.1. PARÁMETROS DEL PÉNDULO INVERTIDO DOBLE LINEAL ............... 64
7.2. ECUACIONES DE MOVIMIENTO MEDIANTE LA FUNCIÓN DE LAGRANGE ....................................................................................................... 65
7.3. ECUACIONES DE EULER – LAGRANGE ............................................... 67
9
8. SIMULACIÓN DEL MODELO MATEMÁTICO DEL PÉNDULO INVERTIDO DOBLE LINEAL EN SIMULINK DE MATLAB ........................................................ 69
8.1. VARIABLES DE ESTADO ........................................................................ 69
8.2. ORGANIZACIÓN DE LAS ECUACIONES PARA LA SIMULACIÓN ........ 70
8.3. PARÁMETROS PARA LA SIMULACIÓN ................................................. 73
8.4. DIAGRAMA DE BLOQUES DEL MODELO MATEMÁTICO ..................... 73
9. ANÁLISIS DE LA RESPUESTA EN EL TIEMPO DEL MODELO MATEMÁTICO DEL PÉNDULO INVERTIDO DOBLE LINEAL ............................. 76
9.1. CASOS ESTABLES .................................................................................. 76
9.1.1. Caso 1. Punto de equilibrio Eq_1 ...................................................... 77
9.1.2. Caso 2. Punto de equilibrio Eq_2 ...................................................... 78
9.1.3. Caso 3. Punto de equilibrio Eq_3 ...................................................... 79
9.1.4. Caso 4. Punto de equilibrio Eq_4 ...................................................... 80
9.2. CASOS INESTABLES .............................................................................. 81
10. DISEÑO DE CONTROLADORES PARA EL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL ................................................................................ 83
10.1. LINEALIZACIÓN DEL MODELO MATEMÁTICO...................................... 83
10.2. CONTROLABILIDAD DEL MODELO LINEALIZADO EN SS DEL SISTEMA DE PÉNDULO DOBLE LINEAL ......................................................... 88
10.3. OBSERVABILIDAD DEL MODELO LINEALIZADO EN SS DEL SISTEMA DE PÉNDULO DOBLE LINEAL ......................................................... 89
10.4. ESTABILIDAD DEL MODELO LINEALIZADO EN SS DEL SISTEMA DE PÉNDULO DOBLE LINEAL ......................................................................... 90
10.5. DISEÑO DEL CONTROLADOR POR REALIMENTACIÓN DE ESTADOS ........ 91
10.6. DISEÑO DEL OBSERVADOR DE ESTADOS .......................................... 92
10.7. DISEÑO DEL CONTROLADOR ÓPTIMO CUADRÁTICO Ó LQR ........... 94
10.8. DISEÑO DEL OBSERVADOR ÓPTIMO CUADRÁTICO Ó LQE .............. 96
10.9. DISEÑO DEL CONTROLADOR CUADRÁTICO GAUSSIANO Ó LQG .... 98
10
11. SIMULACIÓN DE CONTROLADORES PARA EL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL EN SIMULINK DE MATLAB ............... 101
11.1. DIAGRAMA DE BLOQUES DEL SISTEMA CON REALIMENTACIÓN DE ESTADOS .................................................................................................. 101
11.2. DIAGRAMA DE BLOQUES DEL SISTEMA CON CONTROL POR REALIMENTACIÓN DE ESTADOS CON OBSERVADOR .............................. 102
11.3. DIAGRAMA DE BLOQUES DEL SISTEMA CON CONTROL LQR ........ 103
11.4. DIAGRAMA DE BLOQUES DEL SISTEMA CON LQR + LQE ............... 104
11.5. DIAGRAMA DE BLOQUES DEL SISTEMA CON CONTROL LQG ........ 105
12. ANÁLISIS DE LA RESPUESTA EN EL TIEMPO DEL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL CON LOS CONTROLADORES ......... 106
12.1. RESPUESTA CON REALIMENTACIÓN DE ESTADOS ........................ 107
12.2. RESPUESTA CON REALIMENTACIÓN DE ESTADOS CON OBSERVADOR ................................................................................................ 108
12.3. RESPUESTA CON LQR ......................................................................... 109
12.4. RESPUESTA CON LQR + LQE ............................................................ 110
12.5. RESPUESTA CON LQG ........................................................................ 111
13. CONCLUSIONES ......................................................................................... 112
14. REFERENCIAS BIBLIOGRÁFICAS ............................................................. 114
ANEXOS ............................................................................................................. 117
ANEXO A. PLANOS DEL PÉNDULO INVERTIDO DOBLE LINEAL................ 118
ANEXO B. CÓDIGO DE MATLAB PARA EL MODELO MATEMÁTICO .......... 126
ANEXO C. CÓDIGO DE MATLAB PARA LOS CONTROLADORES ............... 129
ANEXO D. PRESUPUESTO PARA LA FUTURA CONSTRUCCIÓN DEL PÉNDULO INVERTIDO DOBLE LINEAL ......................................................... 134
11
LISTA DE FIGURAS
Pág.
Figura 1. Prototipo virtual de péndulo invertido doble lineal .................................. 24
Figura 2. Diseño mecánico del péndulo doble sobre un carro móvil ..................... 24
Figura 3. Péndulo doble ........................................................................................ 33
Figura 4. Control Por Realimentación de Estados ................................................. 42
Figura 5. Observador de Estados .......................................................................... 44
Figura 6. Vista isométrica del prototipo virtual en 3D ............................................ 54
Figura 7. Vista explosionada del prototipo virtual en 3D ....................................... 55
Figura 8. Pista, riel o carril del carro móvil ............................................................ 56
Figura 9. Estructura del sistema del péndulo doble lineal ..................................... 57
Figura 10. Carro o base móvil del péndulo doble .................................................. 58
Figura 11. Primer eslabón o brazo del péndulo doble ........................................... 59
Figura 12. Segundo eslabón o brazo del péndulo doble ....................................... 60
Figura 13. Chumacera o pivote móvil del péndulo doble ....................................... 61
Figura 14. Tornillo de la chumacera ...................................................................... 62
Figura 15. Caja de dispositivos electrónicos y/o de control del péndulo doble ...... 63
Figura 16. Representación esquemática del péndulo invertido doble ................... 65
Figura 17. Pantalla de Inicio de MatLab R2015a ................................................... 69
Figura 18. Diagrama de bloques del modelo matemático en SimuLink ................. 74
Figura 19. Puntos de equilibrio del péndulo doble ................................................. 76
Figura 20. Respuesta en punto de Eq_1 ............................................................... 77
Figura 21. Respuesta en punto de Eq_2 ............................................................... 78
Figura 22. Respuesta en punto de Eq_3 ............................................................... 79
Figura 23. Respuesta en punto de Eq_4 ............................................................... 80
Figura 24. Respuesta a θ1=180° y θ2=170° ........................................................... 81
Figura 25. Respuesta a θ1=170° y θ2=180° ........................................................... 82
Figura 26. Diagrama de polos y ceros del modelo linealizado en SS .................... 90
Figura 27.Diagrama de bloques del sistema con Pole Placement en SimuLink .. 101
Figura 28. Diagrama de bloques del estimador de estados en SimuLink ............ 102
12
Figura 29. Diagrama de bloques del controlador por realimentación de estados con estimador de estados en SimuLink ..................................................................... 102
Figura 30. Diagrama de bloques del sistema con LQR en SimuLink .................. 103
Figura 31. Diagrama de bloques del estimador óptimo o LQE en SimuLink ....... 104
Figura 32. Diagrama de bloques del regulador óptimo LQR con estimador óptimo LQE en SimuLink ................................................................................................ 104
Figura 33. Diagrama de bloques del sistema con LQG en SimuLink .................. 105
Figura 34. Respuesta de θ1 con Pole Placement ................................................ 107
Figura 35. Respuesta de θ2 con Pole Placement ................................................ 107
Figura 36. Respuesta de X con Pole Placement ................................................. 107
Figura 37. Señal de control con Pole Placement ................................................. 107
Figura 38. Respuesta de θ1 con Regulador+Estimador ...................................... 108
Figura 39. Respuesta de θ2 con Regulador+Estimador ...................................... 108
Figura 40. Respuesta de X con Regulador+Estimador ....................................... 108
Figura 41. Señal de Control con Regulador+Estimador ...................................... 108
Figura 42. Respuesta de θ1 con LQR .................................................................. 109
Figura 43. Respuesta de θ2 con LQR .................................................................. 109
Figura 44. Respuesta de X con LQR ................................................................... 109
Figura 45. Señal de control con LQR .................................................................. 109
Figura 46. Respuesta de θ1 con LQR+LQE......................................................... 110
Figura 47. Respuesta de θ2 con LQR+LQE......................................................... 110
Figura 48. Respuesta de X con LQR+LQE ......................................................... 110
Figura 49. Señal de control con LQR+LQE ......................................................... 110
Figura 50. Respuesta de θ1 con LQG .................................................................. 111
Figura 51. Respuesta de θ2 con LQG .................................................................. 111
Figura 52. Respuesta de X con LQG .................................................................. 111
Figura 53. Señal de control con LQG .................................................................. 111
13
LISTA DE ECUACIONES
Pág.
Ecuación 1. Definición de lagrangiano .................................................................. 37
Ecuación 2. Forma del lagrangiano ....................................................................... 37
Ecuación 3. Ecuación de Euler – Lagrange .......................................................... 38
Ecuación 4. Función de disipación de Rayleigh .................................................... 38
Ecuación 5. Definición de matriz jacobiana ........................................................... 40
Ecuación 6. Energía Cinética del Péndulo Doble Lineal ....................................... 65
Ecuación 7. Energía Potencial del Péndulo Doble Lineal ...................................... 65
Ecuación 8. Lagrangiano del péndulo invertido doble lineal .................................. 66
Ecuación 9. Ecuaciones de Euler – Lagrange general .......................................... 67
Ecuación 10. Ecuaciones de Euler – Lagrange del Péndulo Doble Lineal ............ 67
Ecuación 11. Ecuación de Euler – Lagrange con respecto a 1θ ............................ 67
Ecuación 12. Ecuación de Euler – Lagrange con respecto a 2θ ........................... 67
Ecuación 13. Ecuación de Euler – Lagrange con respecto a X ........................... 67
Ecuación 14. Despeje de 1θ
•• ................................................................................. 70
Ecuación 15. Despeje de 2θ
•• ................................................................................. 71
Ecuación 16. Despeje de X••
................................................................................. 71
Ecuación 17. 1 1 1 2 2 en términos de , , , ,X Xθ θ θ θ θ
•• • • • ...................................................... 71
Ecuación 18. 2 1 1 2 2 en términos de , , , ,X Xθ θ θ θ θ
•• • • • ...................................................... 72
Ecuación 19. 1 1 2 2 en términos de , , , ,X X Xθ θ θ θ
•• • • • ...................................................... 72
14
Ecuación 20. Matriz A linealizada del modelo en SS del péndulo doble lineal ...... 84
Ecuación 21. Matriz B linealizada del modelo en SS del péndulo doble lineal ...... 85
Ecuación 22. Matrices A, B, C y D del modelo linealizado en SS ......................... 86
Ecuación 23. Modelo matemático en espacio de estados ..................................... 87
Ecuación 24. Modelo linealizado en SS del péndulo doble lineal .......................... 87
Ecuación 25. Matriz de controlabilidad del modelo linealizado en SS ................... 88
Ecuación 26. Matriz de observabilidad del modelo linealizado en SS ................... 89
Ecuación 27. Polos del modelo linealizado en SS ................................................. 90
Ecuación 28. Ganancias de realimentación de estados ........................................ 92
Ecuación 29. Ganancias de estimación de estados .............................................. 94
Ecuación 30. Función de coste cuadrático para el LQR ........................................ 95
Ecuación 31. Parámetro R (peso acción de control) del LQR ............................... 95
Ecuación 32. Parámetro Q (Peso variables de estado) del LQR ........................... 95
Ecuación 33. Vector K_lqr de ganancias del LQR................................................. 96
Ecuación 34. Polos de lazo cerrado con LQR ....................................................... 96
Ecuación 35. Parámetro Re (peso señal estimada) del LQE ................................ 97
Ecuación 36. Parámetro Qe (Peso variables de estado) del LQE ......................... 97
Ecuación 37. Vector K_lqe de ganancias del LQE ................................................ 97
Ecuación 38. Parámetro R1 (peso acción de control) del LQG ............................. 98
Ecuación 39. Parámetro Q1 (peso variables de estado) del LQG ......................... 98
Ecuación 40. Parámetros Qn y Rn (peso ruidos de entrada y salida) del LQG ..... 99
Ecuación 41. Parámetros QXU y QWV (Pesos Totales) del LQG ......................... 99
15
ABSTRACT
In the following research, it analyze a system widely used in control engineering,
because of its high nonlinearity, the inverted pendulum, and in this case, a linear
double inverted pendulum or on a mobile car, where it realize a virtual prototype in
3D in SolidWorks CAD software, it find the equations that govern the movement of
the system using the Lagrangian, obtaining a nonlinear system through the Euler-
Lagrange equations, then it continue to linearize the model, obtaining a linear system
in space Of states around the values of the states in their inverted position, through
the Jacobian matrix, and review features of the system as stability, controllability and
observability.
Taking the linearized model, it then proceed to design different controllers by state
feedback, state estimation, and optimal controllers such as LQR, LQE (or Kalman
Filter) and LQG, in order to maintain the linear double pendulum system in its
inverted position, and then perform the implementation of such controllers using the
Matlab Simulink toolbox, where it can analyze and check the results obtained by the
different modern control strategies and techniques used.
KEYWORDS
Inverted pendulum, double pendulum, double inverted pendulum, double linear
inverted pendulum, Euler-Lagrange method, mathematical model, linearization, pole
assignment, Kalman filter, LQR, LQE, LQG, virtual prototype, Lagrangian, Jacobian,
SolidWorks, MatLab , SimuLink.
16
RESUMEN
En el siguiente trabajo de investigación, se analiza un sistema muy utilizado en
ingeniería de control, por su alta no linealidad, el péndulo invertido, y en este caso,
un péndulo invertido doble lineal o sobre un carro móvil, donde se realiza un
prototipo virtual en 3D en el software CAD de SolidWorks, se hallan las ecuaciones
que rigen el movimiento del sistema utilizando el Lagrangiano, obteniendo un
sistema no lineal mediante las ecuaciones de Euler–Lagrange, luego se prosigue a
linealizar el modelo, consiguiendo un sistema lineal en espacio de estados alrededor
de los valores de los estados en su posición invertida, a través de la matriz
jacobiana, y se revisan características del sistema como estabilidad, controlabilidad
y observabilidad.
Teniendo el modelo linealizado, se procede luego a diseñar diferentes controladores
por realimentación de estados, estimación de estados, y controladores óptimos
como LQR, LQE (ó Filtro de Kalman) y LQG, para poder mantener el sistema de
péndulo doble lineal en su posición invertida, para luego realizar la implementación
de dichos controladores utilizando el toolbox SimuLink de MatLab, donde se pueden
analizar y comprobar los resultados obtenidos por las diferentes estrategias y
técnicas de control moderno empleadas.
PALABRAS CLAVE
Péndulo invertido, péndulo doble, péndulo invertido doble, péndulo invertido doble
lineal, método de Euler–Lagrange, modelo matemático, linealización, asignación de
polos, filtro de Kalman, LQR, LQE, LQG, prototipo virtual, lagrangiano, jacobiano,
SolidWorks, MatLab, SimuLink.
17
0. INTRODUCCIÓN
Los sistemas físicos no lineales han sido recientemente objeto de un activo interés
por parte de muchos investigadores y diseñadores en áreas tan diversas como
control de aviones y naves espaciales, robótica, control de procesos e ingeniería
biomédica.
Para la presente investigación se utilizó como objeto de estudio uno de esos
sistemas físicos no lineales, un sistema electromecánico ampliamente utilizado y
estudiado a través del tiempo: El péndulo invertido, pero en este caso un péndulo
invertido doble lineal o montado sobre un carro móvil. Este sistema es muy útil para
el análisis experimental de técnicas de control avanzadas debido a que posee
ciertas características: es altamente no lineal, inestable, multivariable, subactuado,
y además de ello posee un grado de libertad más, el movimiento del segundo
péndulo, para poder controlar por medio del mismo actuador, el motor acoplado al
carro móvil.
Los sistemas subactuados son un asunto de gran interés para la teoría de control
moderna debido a que resulta imposible tener un control directo sobre los grados
de libertad no actuados, haciéndose necesario realizar el control de éstos a través
de los actuadores restantes. Los sistemas subactuados incluyen fallos en los
actuadores, ausencia de los mismos por consideraciones de diseño, exceso de
peso, reducción de costos, etc.
18
En la siguiente investigación se realizó un prototipo virtual en 3D, mediante la ayuda
de un software CAD como SolidWorks, donde se muestra su estructura física, y
cada uno de los elementos que componen el sistema, para su futura construcción,
con cada una de las piezas, con sus respectivos planos y cotas, además de la
presentación del ensamble general en vista isométrica y una vista explosionada
para visualizar la ubicación de cada una de los elementos.
Después se halló un modelo matemático que representa la dinámica del movimiento
del péndulo invertido doble lineal, haciendo uso de las ecuaciones de Euler –
Lagrange, logrando observar las no linealidades del sistema. Luego se hizo la
comprobación del modelo en el toolbox SimuLink de MatLab. Seguidamente se
procedió a linealizar el modelo alrededor de los valores en su posición invertida,
aplicando la herramienta matemática de matriz jacobiana, para obtener un modelo
matemático linealizado en espacio de estados.
Posteriormente, se procedió a diseñar diferentes estrategias de control moderno
para mantener el péndulo doble lineal en la posición invertida, haciendo uso del
Controladores por realimentación de estados, estimadores de estados, y
controladores óptimos como el regulador lineal cuadrático o LQR, el estimador lineal
cuadrático o LQE y el Regulador Lineal Cuadrático Gaussiano o LQG; por último se
verifico el funcionamiento de los controladores, igualmente por medio de simulación
con diagramas de bloques del modelo matemático no lineal con las distintas
técnicas de control moderno utilizadas.
19
1. PROBLEMA DE INVESTIGACIÓN
1.1. PLANTEAMIENTO DEL PROBLEMA
En el Laboratorio de Automática de la Escuela de Ingeniería Eléctrica y Electrónica
– EIEE, de la Universidad del Valle – UNIVALLE, hay pocos sistemas, procesos y/o
plantas donde los estudiantes puedan realizar sus prácticas de laboratorio de
asignaturas de los programas de pregrado, tales como Sistemas Automáticos de
Control, Fundamentos de Control de Sistemas Lineales, Análisis de Compensación
de Sistemas Lineales, Sistemas Electromecánicos, Automatización y Control,
Principios de Mecatrónica y de materias de posgrado, como Sistemas de Control I,
Sistemas de Control II, Prodúctica, Control de Procesos, Optimización de Sistemas
Dinámicos, Sistemas de Control Robusto, Teoría de Sistemas de Control, Sistemas
No Lineales, Modelado e Identificación de Sistemas Dinámicos, Sistemas
Dinámicos, Teoría de Control, entre otras.
Para ello, se necesita el modelado y el diseño de un sistema de control, donde se
puedan efectuar actividades que involucren las teorías de control lineal y no lineal,
un sistema un poco complejo, y no tan sencillo, como el motor de corriente continua,
o un tanque para control de nivel, o un cilindro para control de presión, entre otros
sistemas, y nace la idea de realizar el diseño y la simulación, para su futura
implementación y construcción de un sistema tipo péndulo lineal o sobre un carro
móvil.
20
Adicional a lo anterior, fuera de ser bastante complejo tratar el sistema con un solo
péndulo, es decir un sistema de péndulo simple, se desea agregarle otro péndulo al
extremo final de este, el sistema de péndulo doble, lo que aumenta la complejidad
del problema de control, porque se genera otro grado de libertad, sin aumentar la
cantidad de actuadores al sistema.
La dificultad ahora radica en la presentación de un preliminar físico del prototipo del
péndulo doble lineal, hallar las ecuaciones que rigen ese sistema físico, determinar
estrategias de control para mantener el péndulo doble lineal en su posición invertida,
y realizar las respectivas simulaciones tanto del modelo matemático del sistema,
como del sistema con su controlador.
Los programas de pregrado beneficiados con este proyecto son Ingeniería Eléctrica,
Ingeniería Electrónica, Ingeniería Mecánica y Tecnología Electrónica, y los de
posgrado, tales como Especialización en Automatización Industrial, Maestría en
Ingeniería con énfasis en Automática, Maestría en Ingeniería con énfasis en
Electrónica, Maestría en Ingeniería con énfasis en Eléctrica, Maestría en Ingeniería
con énfasis en Mecánica, Maestría en Ingeniería con énfasis en Aeroespacial e
inclusive el Doctorado en Ingeniería con Énfasis en Eléctrica y Electrónica.
En resumen, los estudiantes de la EIEE, incluidos los del PPIEE, e inclusive los de
la EIME – Escuela de Ingeniería Mecánica de UNIVALLE que son favorecidos son
los que cursen asignaturas de las áreas de control y automatización, y que vayan a
realizar sus prácticas en el Laboratorio de Automática.
21
1.2. FORMULACIÓN DEL PROBLEMA
¿Cómo diseñar, simular y controlar un péndulo doble lineal para mantenerlo estable
en su posición invertida utilizando técnicas de control aplicadas a sistemas no
lineales, para mejorar la dotación del Laboratorio de Automática de la Escuela de
Ingeniería Eléctrica y Electrónica – EIEE – de la Universidad del Valle – UNIVALLE,
y que los estudiantes tengan más plantas y módulos para realizar prácticas de
sistemas de control lineal y no lineal?
1.3. SISTEMATIZACIÓN DEL PROBLEMA
• ¿En qué software de diseño CAD 3D se puede mostrar un preliminar del
prototipo virtual del sistema de péndulo invertido doble lineal?
• ¿Qué modelo matemático se puede emplear para describir el comportamiento
del sistema de péndulo invertido doble lineal?
• ¿Cómo verificar el correcto funcionamiento del modelo matemático del sistema
de péndulo invertido doble lineal mediante la simulación en el paquete
MatLab?
• ¿Cómo encontrar y diseñar estrategias de control adecuadas para poder
mantener el sistema de péndulo doble lineal en su posición invertida?
• ¿De qué manera se puede simular el controlador para el sistema de péndulo
invertido doble lineal y comprobar su funcionamiento?
22
2. OBJETIVOS
2.1. OBJETIVO GENERAL
Diseñar, simular y controlar un péndulo doble lineal para mantenerlo estable en su
posición invertida utilizando técnicas de control aplicadas a sistemas no lineales,
para mejorar la dotación del Laboratorio de Automática de la Escuela de Ingeniería
Eléctrica y Electrónica – EIEE – de la Universidad del Valle – UNIVALLE.
2.2. OBJETIVOS ESPECÍFICOS
• Realizar un prototipo virtual en 3D del sistema de péndulo invertido doble lineal
en el software de diseño CAD SolidWorks.
• Desarrollar el modelo matemático del sistema de péndulo invertido doble
lineal.
• Verificar el modelo matemático del sistema de péndulo invertido doble lineal
mediante la simulación en el software MatLab.
• Diseñar estrategias de control para el sistema de péndulo invertido doble lineal
para mantenerlo en su posición invertida.
• Simular los controladores para el sistema de péndulo invertido doble lineal
mediante el software matemático y de simulación MatLab a través de sus
diferentes ToolBoxes.
23
3. ALCANCE
En este trabajo de investigación se puede apreciar lo siguiente:
• Prototipo virtual en 3D en el software CAD SolidWorks del modelo físico del
péndulo invertido doble lineal, como el de la Figura 1, para que su futura
construcción quede como el diseño mecánico de la Figura 2.
• Modelo matemático del sistema mecánico del péndulo invertido doble lineal.
• Simulación del modelo matemático del sistema de péndulo invertido doble
lineal en MatLab.
• Diseño de estrategias de control del sistema de péndulo invertido doble lineal
o sobre un carro móvil.
• Simulación de los controladores para el sistema de péndulo invertido doble
mediante el software MatLab a través de diferentes ToolBoxes.
24
Figura 1. Prototipo virtual de péndulo invertido doble lineal
Fuente. MatWorks. MatLab R2015a
Figura 2. Diseño mecánico del péndulo doble sobre un carro móvil
Fuente. Escuela Superior de Ingenieros – Tecnum. Universidad de Navarra
25
4. JUSTIFICACIÓN
Los péndulos invertidos son una familia de artefactos que constituyen un banco de
pruebas muy completo e interesante para la ingeniería de control. El problema con
el péndulo encima de un carro móvil, a la hora de plantear problemas globales reside
en que el recorrido del carro está acotado, por lo que si se alcanza uno de los
extremos del soporte horizontal el sistema deja de funcionar.
Los sistemas sub-actuados (el péndulo invertido doble sobre un carro móvil es uno
de ellos), son sistemas cuyo número de grados de libertad es mayor que el número
de actuadores. Ejemplos de este tipo de sistemas son los robots construidos por
barras y uniones articuladas pasivas y activas, por lo tanto el desarrollo de
mecanismos que puedan realizar tareas complejas con un número reducido de
actuadores es un asunto de gran interés, puesto que representa reducción de peso
y de costos.
El problema abarca una gran variedad de aspectos de ingeniería, dentro de los
cuales se encuentran estudios en sistemas de control, procesamiento digital de
señales, dinámica de sistemas y sistemas en tiempo real, apropiados para la
aplicación de conocimientos en el área del control y la automatización industrial.
26
Este proyecto está enmarcado en una de las líneas de investigación, como lo es la
de educación en ingeniería, y específicamente en educación en control, del GICI –
Grupo de Investigación en Control Industrial, perteneciente a la EIEE – Escuela de
Ingeniería Eléctrica y Electrónica de la UNIVALLE – Universidad del Valle. El GICI
está en la categoría A1 de la clasificación de Colciencias.
El aporte para los estudiantes de la Universidad del Valle es importante puesto que
el sistema permitirá la implementación de controladores lineales y no lineales,
incluyendo en estos últimos, controladores de última generación, por ejemplo,
controladores basados en lógica difusa y redes neuronales. Además les permitirá a
los estudiantes de la Escuela de Ingeniería Eléctrica y Electrónica de la Universidad
del Valle iniciarse en el estudio de los sistemas de control no lineales, los cuales
poseen muchísimas aplicaciones tales como el control de helicópteros, aviones,
satélites, cohetes, procesos industriales e innumerables sistemas no lineales de
gran importancia para la humanidad.
El costo del desarrollo es muy económico comparado con otras plantas elaboradas
por empresas como Quanser, Googol Technology, ECP Systems, Enfield
Technologies, Inteco, entre otras, siendo muy conveniente porque permitirá
replicarlo en el caso de que fuera necesario (para un laboratorio docente de
robótica, por ejemplo).
27
5. MARCO REFERENCIAL
5.1. MARCO HISTÓRICO
5.1.1. Modelamiento y simulación de un sistema con doble péndulo invertido
Escrito por García A. Ronald J. y Ortiz C. Jhon D., para la Escuela Superior
Politécnica del Litoral – Facultad de Ingeniería en Electricidad y Computación en el
año 2015. En ese trabajo se modela el comportamiento dinámico de un péndulo
doble invertido, a partir de las ecuaciones matemáticas que describen el
comportamiento del sistema. Posteriormente para visualizar el comportamiento del
sistema y realizar un análisis detallado, utilizaron las herramientas como Matlab,
OpenModelica y Scilab para poder simularlos.
5.1.2. Diseño y manufactura de un péndulo doble para realizar pruebas de
estabilidad y control
Escrito por Castillo R. José A. y Cortez B. Jorge C., para Instituto Politécnico
Nacional, en el año 2013. En el presente trabajo se plantea la propuesta de diseño
y manufactura de un péndulo doble para poder llevar a cabo pruebas e
investigaciones de estabilidad y control mediante técnicas avanzadas. Se basa en
cuatro principales puntos, definición del problema del diseño, identificación de los
requerimientos del diseño, fijación de las metas de diseño y los criterios de
evaluación en el desarrollo del diseño.
28
5.1.3. Simulación del movimiento de un péndulo doble en un medio viscoso
Redactado por E. Maraz y O. Burgoa, en la Revista Bolivariana de Física en el 2014.
En ese artículo se presenta las ecuaciones de movimiento de un péndulo doble con
una resistencia proporcional a la velocidad usando el formalismo lagrangiano (este
sistema de péndulo doble se simula con el lenguaje “yabasic”). Se resuelve dichas
ecuaciones utilizando el método numérico de Runge-Kutta; como resultado se
calcula el coeficiente de resistencia del medio mediante datos experimentales
tomando como referencia un péndulo simple.
5.1.4. Modelamiento, diseño y simulación de un sistema de control para un
sistema de péndulo doble invertido (SPDI)
Escrito por Velandia P. German, profesor de la Universidad Autónoma de Colombia,
en el año 2007. En el artículo se presenta el modelamiento matemático, el diseño y
la simulación de un sistema de control para un sistema de péndulo doble invertido,
(SPDI), de modo que pueda mantenerse en la posición vertical invertida ante
posibles perturbaciones. El modelamiento matemático se fundamenta en las
ecuaciones de Euler-Lagrange encontradas especificando el lagrangiano como la
diferencia de la energía cinética y la energía potencial del sistema de péndulo doble
invertido montado en un carrito que se desplaza en un riel horizontal, obteniendo un
sistema de tres ecuaciones diferenciales de segundo orden, que se transforma a un
formato de seis ecuaciones diferenciales ordinarias de primer orden. La estrategia
de control seguida ha sido la de un sistema de control óptimo que minimiza un
funcional de costo cuadrático probando un regulador lineal cuadrático (LQR). La
simulación presenta un adecuado desempeño para el sistema de LQR, alrededor
del punto de operación del sistema: posición vertical invertida del péndulo doble;
ante desviaciones de dicha posición. La simulación igual presenta un
comportamiento tanto del modelo linealizado, como del modelo no lineal totalmente
aceptable.
29
5.1.5. Diseño e implementación de un péndulo invertido sobre un carro móvil
para el laboratorio de mecatrónica de la FIMCP aplicando estrategias de
control proporcional integral derivativo (PID)
Escrito por Roca G. Jorge L., para la Escuela Superior Politécnica del Litoral –
Facultad de Ingeniería de Electricidad y Computación, en el año 2015. En ese
informe se documenta el desarrollo, diseño e implementación de las estrategias de
control proporcional derivativo para un equipo de péndulo invertido simple aplicado
a su auto-levantamiento y mantenimiento de posición vertical en equilibrio inestable.
La metodología que se siguió fue en primer lugar el estudio y análisis del equipo
para representarlo con un modelo matemático y simularlo, luego se hizo la selección
de una estrategia de control y el diseño, simulación e implementación del
controlador del equipo. Tanto para la simulación como para el control se hizo uso
de software matemático y herramientas gráficas de programación.
5.1.6. Dinámica de un péndulo sobre móvil: simulación y experimento
Escrito por Munguía Horacio, Armenta Abril, Gutiérrez Sergio, en la revista
EPISTEMUS, en el año 2013. En ese trabajo se muestra un conjunto de resultados
que permiten abordar el problema de la estabilización robusta de una familia de
sistemas lineales positivos. Se describen dos nuevas aplicaciones en la teoría de
control positivo para sistemas comportamentales y se muestra la aplicación de un
teorema de robustez para tales sistemas. Se observa un péndulo simple colgado de
un poste que se encuentra fijo sobre una plataforma, esta plataforma (el carro) es
móvil y se puede deslizar sobre una superficie sin fricción en la dirección del eje x y
sin desplazamiento vertical.
30
5.1.7. Diseño de un sistema péndulo invertido, sobre plataforma LEGO
Mindstorms NXT, controlado mediante MATLAB
Redactado por Martínez Fernando, Guerrero Cindy, Pérez José, para la Revista
Tecnura, en el año 2012. En el artículo se muestra el diseño de un sistema péndulo
invertido, sobre la plataforma LEGO MINDSTORMS NXT, así como el diseño y la
implementación del controlador correspondiente. Como punto de partida se realiza
la medición de parámetros físicos necesarios para el modelamiento del sistema en
espacio de estados. Adicionalmente, el modelo es identificado por medio de
algoritmos genéticos empleando MatLab, donde la adquisición de datos de los
sensores y el servomotor se realizan con el toolbox RWTH - Mindstorms NXT. Luego
se diseña un controlador usando el método de ubicación de polos, para ser
posteriormente implementado en Simulink, entorno desde el cual se ejecuta
Embeded Coder Robot NXT toolbox, encargado de la conversión, compilación y
transferencia al bloque NXT del controlador. Como resultado se tiene el diseño de
una planta física con un kit armable y el diseño e implementación de un controlador
viable para dicha planta.
5.1.8. Modelado, control y simulación de un sistema péndulo invertido sobre
base móvil
Este artículo fue elaborado por Romero G., Sánchez J., Reyes F., Michua A.,
Calderón B., de la Universidad Autónoma de Puebla, en el 2009. El fin de ese
artículo consiste en lograr el modelo dinámico de un péndulo invertido sobre base
móvil empleando la metodología de Euler-Lagrange y aplicar una estructura de
control PD usando el método de moldeo de energía. Además, realizan la simulación
del modelo dinámico y el control en dos plataformas de simulación.
31
5.1.9. Diseño e implementación de un péndulo invertido sobre un
carro aplicando estrategias de control basado en LMI
Publicado por Rodríguez, Oscar O., Cely, Helvert, y Riaño, Jeiler, en la Revista
Colombiana de Tecnologías de Avanzada, en el año 2012. El artículo presenta el
diseño e implementación de un prototipo de péndulo invertido sobre un carro,
aplicando dos estrategias de control, una para “swing up” y la otra para
estabilización en el punto de equilibrio inestable a partir de desigualdades
matriciales lineales (LMI´s). El prototipo está compuesto por un pivote o varilla que
gira libremente por uno de sus extremos mediante una articulación situada sobre un
carro, el cual se mueve sobre una cremallera rectilínea horizontal manejado por un
motor DC. El diseño de los controladores se implementa sobre el prototipo
construido con el fin de analizar las características del controlador y determinar las
diferencias de los resultados obtenidos en la simulación.
5.1.10. Integración del hardware de un péndulo invertido
Publicado por Ramírez L. y Zuluaga C., de la Universidad Pontificia Bolivariana, en
el 2011. En el artículo se presenta un proceso de construcción de la etapa de
hardware del sistema de control de un péndulo invertido, compuesto por una varilla
apoyada sobre una base móvil que se mueve a lo largo de una plataforma lineal. La
etapa de hardware comprende el diseño de una interfaz donde se integran los
componentes que conforman el sistema, como son, los sensores, el actuador y los
dispositivos de adquisición de datos, facilitando la manipulación remota y la
aplicación de diferentes pruebas de control sobre el mismo. La comunicación se
gestiona mediante una interfaz gráfica a través de los dispositivos de adquisición de
datos, desde donde se podrá manipular el sistema, permitiendo la aplicación de la
etapa de software.
32
5.1.11. Control de un péndulo invertido simple por métodos de realimentación
de estados
Escrito por Sanabria C. y Hernández O., para la Revista Tecnura en el 2009, en ese
texto se presenta un modelo por medio de dinámica de Lagrange de un péndulo
invertido simple, que es controlado con las técnicas de realimentación de estados
tipo regulador y servomecanismo. Se observan los diseños de los controladores y
de un observador de estado usado en el funcionamiento práctico de la planta IP02
de la compañía Quanser. La comprobación de los diseños se realiza por medio del
software SimuLink de MatLab, por lo cual se implementan en la planta mencionada.
5.1.12. El péndulo invertido: un desafío para el control no lineal
Publicado por F. Gordillo J. Aracil, en la Revista Iberoamericana de Automática e
Informática Industrial (RIAI), en el año 2005. En ese artículo se presenta una
revisión de algunos métodos de diseño y análisis de sistemas de control no lineales,
empleando el péndulo invertido como sistema de referencia. En ese ingenio se
conjuga una sencilla estructura muy fácil de modelar matemáticamente, con una
notable complejidad a la hora de diseñar su control. Además, constituye un ejemplo
notable de la doble problemática local y global en su comportamiento. Se revisan
algunos controladores empleados convencionalmente y se propone una solución al
problema del swing up con estabilización, para la que se emplean diferentes
métodos, como el moldeo de energía y el forwarding.
33
5.2. MARCO TEÓRICO
5.2.1. Péndulo doble
El Péndulo doble es un sistema físico de dos osciladores acoplados, y está formado por dos péndulos simples de longitudes l1 y l2, de los que cuelgan partículas de masas m1 y m2. En unos momentos determinados t, las barras forman ángulos θ1 y θ2, 1 como se puede observar en la Figura 3.
Figura 3. Péndulo doble
Fuente. Curso Interactivo de Física por Internet. Universidad del País Vasco
En general, un péndulo doble o doble péndulo es un sistema compuesto por dos péndulos, con el segundo colgando del extremo del primero. En el caso más simple, se trata de dos péndulos simples, con el inferior colgando de la masa pendular del superior. Normalmente se sobreentiende que se refiere a un doble péndulo plano, con dos péndulos planos coplanarios. Este sistema físico posee dos grados de libertad y exhibe un rico comportamiento dinámico. Su movimiento está gobernado por dos ecuaciones diferenciales ordinarias acopladas. Por encima de cierta energía, su movimiento es caótico.
1 Universidad del Pais Vasco, UPV/EHU 2013
34
5.2.2. Modelo matemático
Un modelo matemático es una descripción, en lenguaje matemático, de un objeto que existe en un universo no-matemático.
En términos generales, en todo modelo matemático se pueden determinar 3 fases:
• Construcción del modelo. Transformación del objeto no-matemático en lenguaje matemático.
• Análisis del modelo. Estudio del modelo matemático. • Interpretación del análisis matemático. Aplicación de los resultados del estudio
matemático al objeto inicial no-matemático.
El éxito o fracaso de estos modelos es un reflejo de la precisión con que dicho modelo matemático representa al objeto inicial y no de la exactitud con que las matemáticas analizan el modelo.
Algunos modelos son buenos para algunas cosas y malos para otras. Por ejemplo, el modelo matemático de la mecánica newtoniana puede, hoy en día, usarse para predecir muchos sucesos con precisión a pesar de que la teoría de la relatividad de Einstein (otro modelo matemático) nos dice que éste es inexacto.2
Para efectuar el análisis de un sistema, es necesario obtener un modelo matemático que lo represente. El modelo matemático equivale a una ecuación matemática o un conjunto de ellas en base a las cuales podemos conocer el comportamiento del sistema.
Es necesario comentar que el modelo matemático que se desarrolla a partir de un sistema no es único, debido a lo cual se pueden lograr representaciones diferentes del mismo proceso.
Estas diferentes representaciones no se contradicen. Ambas contienen información complementaria por lo que se debe encontrar aquella que proporcione la información de interés para cada problema en particular.
Dentro de este contexto, por lo general se emplea la representación en "variables de estado" aunque no por ello el método de "relación entrada-salida" deja de ser interesante a pesar de proporcionar menor información de la planta.3
2 Univesitat Oberta de Catalunya 3 Universidad Michoacana de San Nicolás de Hidalgo
35
Para uniformizar criterios respecto a las denominaciones que reciben los elementos que conforman un sistema de control es necesario tener en mente las siguientes definiciones:
Planta: Cualquier objeto físico que ha de ser controlado.
Proceso: Operación o secuencia de operaciones, caracterizada por un conjunto de cambios graduales que llevan a un resultado o estado final a partir de un estado inicial.
Sistema: Combinación de componentes que actúan conjuntamente y cumplen un objetivo determinado.
Perturbación: Es una señal que tiende a afectar adversamente el valor de la salida de un sistema.
Servomecanismo: Sistema de control realimentado cuya salida es una posición mecánica.
5.2.3. Método de Euler – Lagrange
Las ecuaciones de Lagrange (también conocidas como ecuaciones de Euler-Lagrange, o simplemente de ecuaciones de Euler) permiten contar con un sistema analítico para llegar a las ecuaciones que describen el comportamiento físico de las partículas, pero no se trata, de ningún modo, de una nueva teoría independiente de la teoría Newtoniana.
En algunos casos, la utilización de leyes físicas para encontrar modelos dinámicos como la segunda ley de Newton, no es un problema sencillo y, en vez de resolverlos el problema, puede crear otro que eventualmente es más complicado que el inicial.4
Las ecuaciones de Euler - Lagrange son útiles además para:
• Simulación en computadora. • Diseño de controladores. • Evaluación de la estructura mecánica
4 Sistemas de Control en Tiempo Continuo y Discreto. Editorial Digital – Tecnológico de Monterrey. Hugo Gustavo González Hernández
36
Coordenadas generalizadas
Son el conjunto de coordenadas independientes necesarias para describir el movimiento del sistema, las denominaremos
iq para 1,...i n= .
Parámetros de las ecuaciones
Los parámetros que intervienen en la formulación de las ecuaciones de Lagrange son los siguientes:
T - Energía cinética total del sistema: suma de las energías cinéticas de las partículas.
V - Energía potencial total del sistema: suma de las energías potenciales de las partículas.
iq - Coordenada generalizada: cada grado de libertad del sistema se expresa
mediante una coordenada generalizada.
iq•
- Velocidad generalizada: derivada temporal de las coordenadas generalizadas.
iQ - Fuerzas generalizadas: en esta versión del texto no hace falta definirlas, pues
se considera únicamente el caso conservativo que simplifica las ecuaciones.
Función de Lagrange
Es una función que relaciona la energía cinética y la energía potencial del sistema. También se conoce como lagrangiano.
En física, un lagrangiano es una función escalar a partir de la cual se puede obtener la evolución temporal, las leyes de conservación y otras propiedades importantes de un sistema dinámico. De hecho, en física moderna el lagrangiano se considera el operador más fundamental que describe un sistema físico.
37
El término lleva el nombre del astrónomo y matemático italo-francés Joseph Louis de Lagrange. El concepto de un lagrangiano se introdujo en una reformulación de la mecánica clásica introducida por Lagrange, conocida como mecánica lagrangiana, en 1788. Esta reformulación fue necesaria con el fin de explorar la mecánica en sistemas alternativos de las coordenadas cartesianas, como las coordenadas polares, cilíndricas y esféricas, para las que la mecánica de Newton no era conveniente.
El formalismo lagrangiano permite alcanzar tanto las leyes de Newton como las ecuaciones de Maxwell, los cuales pueden ser derivados como las ecuaciones de Euler-Lagrange de un lagrangiano clásico. Igualmente la forma del lagrangiano determina las propiedades básicas del sistema en teoría cuántica de campos.
La mecánica de Lagrange tiene su origen como una formulación de la mecánica clásica. Es una formulación alternativa a la mecánica hamiltoniana. Se define el lagrangiano de un sistema de partículas como la diferencia entre su energía cinética Ec y su energía potencial Ep:
c pL E E T V= − = −
Ecuación 1. Definición de lagrangiano
T es la energía cinética del sistema Ec y V es la energía potencial Ep. Normalmente, el Lagrangiano es de la forma:
(q , , )i iL L q t
•=
Ecuación 2. Forma del lagrangiano
Históricamente, el formalismo lagrangiano surgió dentro de la mecánica clásica para sistemas con un número finito de grados de libertad. Este lagrangiano permitía escribir las ecuaciones de movimiento de un sistema totalmente general que tenía restricciones de movimiento o era no-inercial de modo muy sencillo.
Más tarde el concepto se generalizó a sistemas con un número no finito de grados de libertad como los medios continuos o los campos físicos. Más tarde el concepto pudo generalizarse también a la mecánica cuántica, particularmente en la teoría cuántica de campos.
38
Ecuaciones de Euler – Lagrange
Una vez calculado el Lagrangiano del sistema, la ecuación de Lagrange para sistemas conservativos (sistemas donde no hay disipación de energía) es:
0d L L
dt qq•
∂ ∂ − = ∂∂
Ecuación 3. Ecuación de Euler – Lagrange
Función de disipación de Rayleigh
Al considerar disipación de energía en forma de un amortiguador viscoso, se utiliza la función de Rayleigh:
2 2 2
1 1 2 2
1(b b ....b )
2r rD q q q
• • •= + +
Ecuación 4. Función de disipación de Rayleigh
Planteada aquí para r amortiguadores viscosos, cada uno con un coeficiente de fricción
ib , para 1,...ri = .
Entonces, para sistemas disipativos, la ecuación de Lagrange- Euler queda de esta forma:
0d L L
dt qq•
∂ ∂ − = ∂∂
39
Sistemas Forzados
Las ecuaciones anteriores se plantean para sistemas autónomos (no forzados), pero si se tiene una fuerza externa al sistema, podemos tomar la siguiente ecuación de Lagrange-Euler:
d L L D
dt qq q
τ• •
∂ ∂ ∂ − + = ∂∂ ∂
Esta ecuación es la más general y más utilizada en sistemas dinámicos.
5.2.4. Jacobiano
En cálculo vectorial, se llama jacobiano o determinante jacobiano al determinante de la matriz jacobiana. Tanto la matriz jacobiana como el determinante jacobiano reciben su nombre en honor al matemático Carl Gustav Jacobi.
Matriz jacobiana
La matriz jacobiana es una matriz formada por las derivadas parciales de primer orden de una función. Una de las aplicaciones más interesantes de esta matriz es la posibilidad de aproximar linealmente a la función en un punto. En este sentido, el jacobiano representa la derivada de una función multivariable.
Propiamente se habla más que de matriz jacobiana, de diferencial jacobiana o aplicación lineal jacobiana ya que la forma de la matriz dependerá de la base o coordenadas elegidas. Es decir, dadas dos bases diferentes la aplicación lineal jacobiana tendrá componentes diferentes aun tratándose del mismo objeto matemático.5
5 Glosario Matemático, Universitat de Barcelona
40
Ecuación 5. Definición de matriz jacobiana
Determinante jacobiano
Si m = n, entonces F es una función que va de un espacio n-dimensional a otro. En
este caso la matriz jacobiana es cuadrada y podemos calcular su determinante,
conocido como el determinante jacobiano o simplemente jacobiano.
El determinante jacobiano en un punto dado nos da información importante sobre el
comportamiento de F cerca de ese punto. Para empezar, una función F es invertible
cerca de p si el determinante jacobiano en p es no nulo. Más aún, el valor absoluto
del determinante en p nos da el factor con el cual F expande o contrae su volumen
cerca de p.
41
5.2.5. Control automático
Es una rama de la ingeniería que se ocupa del control de un proceso en un estado
determinado.
Su estudio y aplicación ha contribuido al reconocimiento universal de sus ventajas
y beneficios asociados al ámbito industrial, que es donde tiene una de sus mayores
aplicaciones debido a la necesidad de controlar un gran número de variables,
sumado esto a la creciente complejidad de los sistemas. El control automático de
procesos se usa fundamentalmente porque reduce el costo asociado a la
generación de bienes y servicios, incrementa la calidad y volúmenes de producción
de una planta industrial entre otros beneficios asociados con su aplicación.
De una manera informal, el problema de control consiste en seleccionar, de un
conjunto específico o arbitrario de elementos (o parámetros, configuraciones,
funciones, etc), aquellos que, aplicados a un sistema fijo, hagan que este se
comporte de una manera predeterminada.
El principio de todo sistema de control automático es la aplicación del concepto de
realimentación o feedback (medición tomada desde el proceso que entrega
información del estado actual de la variable que se desea controlar) cuya
característica especial es la de mantener al controlador central informado del estado
de las variables para generar acciones correctivas cuando así sea necesario. Este
mismo principio se aplica en campos tan diversos como el control de procesos
químicos, control de hornos en la fabricación del acero, control de máquinas
herramientas, control de variables a nivel médico e incluso en el control de
trayectoria de un proyectil militar.6
6 Asociación de la Industria Eléctrica-Electrónica de Chile, AIE 2013
42
5.2.6. Controlador por realimentación de estados
Iniciamos considerando el caso SISO y el esquema de control por realimentación de estado de la Figura 4.
Figura 4. Control Por Realimentación de Estados
Fuente. Curso Teoría de Sistemas Lineales. Unicauca.
Una propiedad esencial del sistema en la realimentación de estado es la controlabilidad, y la primera observación importante es que la controlabilidad es invariante con respecto a la realimentación de estado.
La realimentación de estado nos permite colocar los polos del sistema de lazo cerrado en cualquier posición, y que la ganancia de estado se puede calcular por sustitución directa7.
La f.t. posee polos en las nuevas posiciones deseadas. No obstante, los ceros del sistema son los mismos que en el sistema de lazo abierto.
La realimentación de estado puede asignar arbitrariamente los polos del sistema. No obstante, no tiene efecto sobre los ceros del sistema.
La condición de controlabilidad no solo es suficiente sino necesaria para colocar todos los polos de A−BK en las posiciones deseadas.
7 Teoría de Sistemas Lineales. FeedBack. Universidad del Cauca.
43
Una noción útil en control que es más débil que la controlabilidad es la estabilizabilidad.
La realimentación de estados puede mover los polos de una planta pero no tiene ningún efecto sobre los ceros. Esta propiedad explica por qué la realimentación de estados puede alterar la propiedad de observabilidad, ya que uno o más polos pueden ubicarse mediante realimentación para cancelar ceros del sistema, lo que vuelve esos modos inobservables.
Técnica de ubicación o de asignación de polos. Se supone que todas las variables de estado son medibles y que están disponibles para su realimentación. Sé demostrara que, si el sistema considerado es de estado completamente controlable, los polos del sistema en el lazo cerrado se pueden colocar en cualquier posición deseada mediante una realimentación del estado a través de una adecuada matriz de ganancias de la realimentación del estado8.
La técnica de diseño empieza con la determinación de los polos de un lazo cerrado deseados a partir de la respuesta transitoria y/o las especificaciones de la respuesta en frecuencia, tales como la velocidad, la razón de amortiguamiento, o ancho de la banda, al igual que los requisitos en estado estacionario.
5.2.7. Observador o estimación de estados
Un observador es un sistema dinámico que estima los estados de la planta basado en la medida de sus entradas y salidas9.
Si el sistema es observable, los estados se pueden estimar mediante un observador.
8 Ingeniería de Control Moderna. 5ª Edición. Katsuhiko Ogata. 2010. 9 Teoría de Sistemas Lineales. Observadores. Universidad del Cauca.
44
Figura 5. Observador de Estados
Una mejor estructura de observador incluye una corrección del error por realimentación.
45
Con un diseño apropiado de la matriz de ganancia L, se puede ajustar al observador para que entregue un estimado del estado que convergirá asintóticamente al valor real del estado.
Si el sistema es observable, se puede escoger la ganancia L para que asigne arbitrariamente los polos de A – LC.
La propiedad de independencia entre el control y la estimación del estado se llama Principio de separación, el diseño de la realimentación de estado y del estimador de estado se pueden realizar independientemente. Los polos del sistema de lazo cerrado son los determinados por la ley de realimentación y no se afectan por el uso de un estimador de estados. Los polos del observador no se afectan por la ley de realimentación.
46
5.2.8. Regulador óptimo cuadrático o LQR
Considere el sistema de espacio de estados
Y el criterio de desempeño, , donde Q es no definida negativamente y R es definida positiva. Entonces el control óptimo que minimiza (J) está dado por la ley lineal de realimentación estado10,
y donde P es la única solución definida positiva de la matriz Ecuación Algebraica de Riccati (EAR),
5.2.9. Estimador óptimo cuadrático o LQE
El problema del observador óptimo LQ es dual al problema de realimentación de estado LQ. No obstante, los observadores óptimos LQ tienen una interpretación estocástica, en el sentido en que son óptimos estimando el estado en presencia de ruidos Gaussianos corrompiendo las medidas de las salidas y el estado11.
Suponga que introducimos procesos de ruido al estado y salida, w y v, de modo que
10 Teoría de Sistemas Lineales. Regulador Óptimo. Universidad del Cauca. 11 Teoría de Sistemas Lineales. Estimador Óptimo. Universidad del Cauca.
47
Las señales w y v son procesos Gaussianos estocásticos de media cero no correlacionados en el tiempo y el uno al otro.
5.2.10. Controlador óptimo gaussiano o LQG
Recordemos que el problema LQR considera el sistema de espacio de estado
Y el criterio de desempeño
Donde Q es no negativa definida y R es definida positiva. Entonces el control que minimiza J está dado por la ley de realimentación lineal.
48
Y donde P es la única solución definida positiva a la EAR.
El control LQG es el controlador óptimo obtenido como la combinación de una ganancia de realimentación de estado LQR con realimentación desde los estimados a partir de un estimador de estado óptimo LQE.
El principio de separación nos permite diseñar una ganancia de realimentación LQR y el LQE independientemente.
El principio de separación dice que si tenemos una planta dada por
Y deseamos diseñar un controlador para minimizar
49
Entonces la solución óptima se obtiene combinando la ganancia de realimentación óptima LQ y el observador LQ dados arriba. Recuerde también de la asignación de polos que los polos de lazo cerrado se obtienen en los polos de A-BK y A-LC.
El controlador combinado incluyendo un LQR (regulador óptimo lineal cuadrático) y un LQE (estimador óptimo lineal cuadrático) se denomina usualmente controlador lineal cuadrático gaussiano (LQG).
LQG se puede usar como una herramienta simple para obtener un controlador ball-park con un desempeño razonable. Como con la asignación de polos, la planta debe aumentarse si se desean características como acción integral
50
5.3. MARCO CONCEPTUAL
• Control automático: Se ocupa del control de un proceso en un estado
determinado, estudia el comportamiento de los sistemas dinámicos,
tratándolos como cajas o bloques con una entrada y una salida. En general, la
entrada al sistema es una señal analógica o digital que se capta en algún punto
del sistema. Los bloques intermedios representan las diversas acciones
perturbadoras que afectan a la señal, como rozamientos en los actuadores,
así como el efecto de los elementos de control interpuestos, los reguladores.
Estos efectos se suelen representar mediante las funciones matemáticas que
los describen, llamadas funciones de transferencia. La salida del sistema se
llama señal controlada y corresponde al valor de la señal tras actuar sobre ella
las anteriores funciones de transferencia. Cuando una o más de las variables
de salida de un sistema tienen que seguir el valor de una referencia que
cambia con el tiempo, se necesita interponer un controlador que manipule los
valores de las señales de entrada al sistema hasta obtener el valor deseado
de salida.
• MatLab: La plataforma de MATLAB está optimizada para resolver problemas
de ingeniería y científicos. El lenguaje de MATLAB, basado en matrices, es la
forma más natural del mundo para expresar las matemáticas computacionales.
Los gráficos integrados facilitan la visualización de los datos y la obtención de
información a partir de ellos. Una vasta biblioteca de toolboxes preinstaladas
le permiten empezar a trabajar inmediatamente con algoritmos esenciales para
su dominio. El entorno de escritorio invita a experimentar, explorar y descubrir.
Todas estas herramientas y prestaciones de MATLAB están probadas y
diseñadas rigurosamente para trabajar juntas.
51
• Método de Euler – Lagrange: Las ecuaciones de Euler-Lagrange son las
condiciones bajo las cuales cierto tipo de problema variacional alcanza un
extremo. Aparecen sobre todo en el contexto de la mecánica clásica en
relación con el principio de mínima acción, aunque también aparecen en teoría
clásica de campos (electromagnetismo, teoría general de la relatividad).
• Modelo matemático: Es uno de los tipos de modelos científicos que emplea
algún tipo de formulismo matemático para expresar relaciones, proposiciones
sustantivas de hechos, variables, parámetros, entidades y relaciones entre
variables de las operaciones, para estudiar comportamientos de sistemas
complejos ante situaciones difíciles de observar en la realidad.
• Péndulo: Cuerpo sólido que, desde una posición de equilibrio determinada por
un punto fijo del que está suspendido situado por encima de su centro de
gravedad, puede oscilar libremente, primero hacia un lado y luego hacia el
contrario.
• Péndulo doble: es un sistema compuesto por dos péndulos, con el segundo
colgando del extremo del primero. En el caso más simple, se trata de
dos péndulos simples, con el inferior colgando de la masa pendular del
superior.
• Péndulo invertido: Es un sistema mecánico clásico para probar nuevas ideas
en la disciplina del control. Tiene la ventaja de ser, por un lado, un mecanismo
relativamente sencillo, y por el otro, un sistema que contiene puntos inestables.
• Prototipo virtual: Es el máximo exponente del software de CAD, ya que se
pueden modificar y someter a cálculos.
52
• Sistema físico: Es un agregado de objetos o entidades materiales entre cuyas
partes existe una conexión o interacción o un modelo matemático de tipo
causal.
• SolidWorks: Es un software CAD (diseño asistido por computador) para
modelado mecánico en 3D, desarrollado en la actualidad por SolidWorks Corp.
El programa permite modelar piezas y conjuntos y extraer de ellos tanto planos
técnicos como otro tipo de información necesaria para la producción.
53
6. PROTOTIPO VIRTUAL EN 3D DEL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL
El prototipo virtual en 3D se realizó en el software CAD SolidWorks de la empresa
Dassault Systemes, mediante el prototipo se quiere mostrar cómo sería el diseño
físicamente para su futura implementación.
Inicialmente se puede observar en la Figura 6, una vista preliminar en isométrico,
de cómo quedaría el sistema de péndulo doble lineal, después de su
implementación y construcción física.
Además, se muestra en la Figura 7, una vista explosionada con sus principales
componentes mecánicos, para saber cómo es su posible ensamblaje, además de
cada una de las piezas que componen el sistema en general con sus respectivos
planos y cotas. (Ver ANEXO A)
54
6.1. VISTA ISOMÉTRICA DEL PENDULO INVERTIDO DOBLE LINEAL
Figura 6. Vista isométrica del prototipo virtual en 3D
55
6.2. VISTA EXPLOSIONADA
Figura 7. Vista explosionada del prototipo virtual en 3D
56
6.3. PISTA DEL CARRO MÓVIL
Figura 8. Pista, riel o carril del carro móvil
57
6.4. ESTRUCTURA
Figura 9. Estructura del sistema del péndulo doble lineal
58
6.5. CARRO MÓVIL
Figura 10. Carro o base móvil del péndulo doble
59
6.6. ESLABÓN 1
Figura 11. Primer eslabón o brazo del péndulo doble
60
6.7. ESLABÓN 2
Figura 12. Segundo eslabón o brazo del péndulo doble
61
6.8. CHUMACERA
Figura 13. Chumacera o pivote móvil del péndulo doble
62
6.9. TORNILLO CHUMACERA
Figura 14. Tornillo de la chumacera
63
6.10. CAJA DE DISPOSITIVOS ELECTRÓNICOS
Figura 15. Caja de dispositivos electrónicos y/o de control del péndulo doble
64
7. MODELO MATEMÁTICO DEL PÉNDULO INVERTIDO DOBLE LINEAL
7.1. PARÁMETROS DEL PÉNDULO INVERTIDO DOBLE LINEAL
En la Figura 16, se pueden observar los diferentes parámetros del sistema de péndulo invertido doble lineal, de acuerdo a su ubicación geométrica.
0 1 2
1 1 1
2 2 2
1
distancia entre el pivote O y el pivote O
distancia entre el pivote O y el centro de masa C del primer eslabón
distancia entre el pivote O y el centro de masa C del segundo eslab
ng
n
u
ó
á
L
L
L
θ
→→→
→ 1 1
2 2 2
1
1 1 1
2 2 2
1
á
coordenada horizontal de O
, coordenadas ho
lo entre el eje y el segmento O C
ngulo entre el
rizontal y vertical de C
, coordenadas
eje y el segmen
horizontal y ve
to O C
rtical de C
X Y
X
I
y
y
X
Y
θ →
→→
→
( )
,2
1,2
0
momentos de inercia rotacional de los eslabones con respecto al centro de masa
masa de los eslabones
masa del soporte móvil
aceleración de la gravedad
cm
M
M
g
→→
→→
65
Figura 16. Representación esquemática del péndulo invertido doble
7.2. ECUACIONES DE MOVIMIENTO MEDIANTE LA FUNCIÓN DE LAGRANGE
Teniendo como referencia la función de Lagrange o Lagrangiano, la cual dice que:
L K V= −
Se procede a hallar las energías cinéticas y potencial del sistema de péndulo doble lineal, y se tiene que:
( ) ( )2 2 2 ( ) 2 2 2 ( ) 2
0 1 1 1 1 1 2 2 2 2 2
1 1
1 1 1
2 2 2 2 2
cm cmK M X M X Y I M X Y Iθ θ = + + + + + + ɺ ɺɺ ɺ ɺ ɺ ɺ
Ecuación 6. Energía Cinética del Péndulo Doble Lineal
1 1 2 2V M gY M gY= +
Ecuación 7. Energía Potencial del Péndulo Doble Lineal
66
De acuerdo con la geometría definida en la Figura 16, se tiene:
1 1 1 1 1 1 1
1 1 1 1 1 1 1
2 0 1 2 2 2 0 1 1 2 2 2
2 0 1 2 2 2 0 1 1 2 2 2
cos
cos
cos cos
cos cos
X X L sen X X L
Y L Y L sen
X X L sen L sen X X L L
Y L L Y L sen L sen
θ θ θθ θ θ
θ θ θ θ θ θθ θ θ θ θ θ
= + ⇒ = +
= ⇒ = −
= + + ⇒ = + +
= + ⇒ = − −
ɺɺ ɺ
ɺɺ
ɺ ɺɺ ɺ
ɺ ɺɺ
De esta manera, las ecuaciones para la energía cinética y potencial del péndulo doble queda de la siguiente forma:
( ) ( )( )
( ) ( )
2 ( ) 2 2 2 ( ) 2 2
0 1 2 1 1 1 2 0 1 2 2 2 2
1 1 2 0 1 1 2 2 2 2 2 0 2 1 2 2 1
2 2 2
1 1 2 2 1 1 1 2 2 2 12 1 2 2 1
1 1 2
1 1 1( )
2 2 2
cos cos cos( )
1 1 1cos cos cos
2 2 2
cos c
cm cmK M M M X I M L M L I M L
M L M L X M L X M L L
K MX I I A A X B
V T T
θ θ
θ θ θ θ θ θ θ θ
θ θ θ θ θ θ θ θ θ θ
θ
= + + + + + + +
+ + + + −
= + + + + + −
= +
ɺ ɺɺ
ɺ ɺ ɺ ɺɺ ɺ
ɺ ɺ ɺ ɺ ɺ ɺɺ ɺ
2osθ
Obteniendo así, el lagrangiano para el sistema del péndulo invertido doble lineal
( ) ( ) [ ]2 2 2
1 1 2 2 1 1 1 2 2 2 12 1 2 2 1 1 1 2 2
1 1 1cos cos cos cos cos
2 2 2L MX I I A A X B T Tθ θ θ θ θ θ θ θ θ θ θ θ = + + + + + − − +
ɺ ɺ ɺ ɺ ɺ ɺɺ ɺ
Ecuación 8. Lagrangiano del péndulo invertido doble lineal
Donde se han definido los siguientes parámetros, para poder simplificar aún más las ecuaciones:
0 1 2
( ) 2 2
1 1 1 1 2 0
( ) 2
2 2 2 2
1 1 1 2 0
2 2 2
12 2 0 2
0 2 0
1 1 1 0
2 2 2
cm
cm
M M M M
I I M L M L
I I M L
A M L M L
A M L
B M L L
T M L g
T M L g T
T M L g
= + +
= + +
= += +==
== +=
67
7.3. ECUACIONES DE EULER – LAGRANGE
1 2({ , }) { , , }nc
d L LF q q con q X
dt q qθ θ
∂ ∂ − = ∈ ∂ ∂ ɺ
ɺ
Ecuación 9. Ecuaciones de Euler – Lagrange general
( )
( )
1 1 1 1 12 2 2 1 1 1 1 1 12 1 2 2 1 1
2 2 2 2 12 1 2 1 2 2 2 2 12 1 2 2 1 2
1 1 1 2 2 2 3
cos cos( ) ( )
cos cos( ) ( )
cos cos c
dI A X B A X T sen B sen F
dt
dI A X B A X T sen B sen F
dt
dMX A A F F
dt
θ θ θ θ θ θ θ θ θ θ θ
θ θ θ θ θ θ θ θ θ θ θ
θ θ θ θ
+ + − + − − − =
+ + − − + + − =
+ + − =
ɺ ɺɺ ɺ ɺ ɺ ɺ
ɺ ɺɺ ɺ ɺ ɺ ɺ
ɺ ɺ ɺ
Ecuación 10. Ecuaciones de Euler – Lagrange del Péndulo Doble Lineal
Resolviendo se tiene que las ecuaciones de movimiento del sistema son:
21 1 12 2 1 2 1 1 1 1 12 2 1 2 1cos( ) cos ( )I B A X T sen B sen Fθ θ θ θ θ θ θ θ θ+ − + = − − +ɺɺɺɺ ɺɺ ɺ
Ecuación 11. Ecuación de Euler – Lagrange con respecto a 1θ
22 2 12 2 1 1 2 2 2 2 12 2 1 1 2cos( ) cos ( )I B A X T sen B sen Fθ θ θ θ θ θ θ θ θ+ − + = + − +ɺɺɺɺ ɺɺ ɺ
Ecuación 12. Ecuación de Euler – Lagrange con respecto a 2θ
2 21 1 1 2 2 2 1 1 1 2 2 2 3cos cos cA A MX A sen A sen F Fθ θ θ θ θ θ θ θ+ + = + + +ɺɺɺɺ ɺɺ ɺ ɺ
Ecuación 13. Ecuación de Euler – Lagrange con respecto a X
68
Donde Fc determina el forzamiento externo (fuerza de control) sobre el movimiento de los eslabones y 1,2,3 1,2,3 ({ , })F F q q= ɺ representan fuerzas no conservativas en el
sistema (fricción, amortiguamiento, perturbaciones, etc). Definiendo:
( )( )
1 12 2 1 1 1
12 2 1 2 2 2
1 1 2 2
1 1
1 2 2
12 2 1
2 12 2 1
1 1 2 2
1
2
3
cos( ) cos
cos( ) cos
cos cos
0
0 0
0 0
0
nc
I B A
I B I A
A A M
T sen
T sen
B sen
B sen
A sen A sen
F
F
F
θ θ θ
θ θ θ
θ θ
θ
θ
θ θ
θ θ
θ θ
− = −
=
− − = −
=
M
M
F
2 (2)1 2
0
0c
c
qq nc c
F
Q P
=
+ + +=ɺɺ
F
I M M F F
(2) 2 2 21 2 1 2, ,Sabiendo que ( ) , y ,( )T TXQ P Xθ θ θ θ= = ɺɺ ɺ
Con esta división, cada término de izquierda a derecha representa respectivamente, los efectos inerciales, efectos gravitatorios, efectos Coriolis, no conservativos y el control.
69
8. SIMULACIÓN DEL MODELO MATEMÁTICO DEL PÉNDULO INVERTIDO DOBLE LINEAL EN SIMULINK DE MATLAB
Para llevar a cabo la simulación del modelo matemático del péndulo invertido doble lineal, se utilizó la versión de MatLab R2015a (8.5.0.197613) de 64 bits, la cual nos muestra una pantalla de inicio como la Figura 17.
Figura 17. Pantalla de Inicio de MatLab R2015a
8.1. VARIABLES DE ESTADO
Sabiendo que las variables de interés del sistema son: 1 1 2 2, , , , ,X Xθ θ θ θ
• • •, las
variables de estado escogidas son:
1 1
2 1
3 2
4 2
5
6
X
X
X
X
X X
X X
U Fc
θ
θθ
θ
•
•
•
=
==
==
==
70
Y entonces las derivadas de las variables de estado serían:
1 1 2
2 1
3 2 4
4 2
5 6
6
X X
X
X X
X
X X X
X X
θ
θ
θ
θ
• •
• ••
• •
• ••
• •
• ••
= =
=
= =
=
= =
=
8.2. ORGANIZACIÓN DE LAS ECUACIONES PARA LA SIMULACIÓN
Despreciando las fuerzas no conservativas, como fricción, amortiguamiento, perturbaciones, etc, es decir, haciendo:
1
2
3
0
0
0
nc
F
F F
F
= =
Y despejando 1θ
•• de la Ecuación 11, se tiene:
2
1 1 12 2 1 2 12 2 1 2 1 11
1
( ) cos( ) cosT sen B sen B A X
I
θ θ θ θ θ θ θ θθ• •• ••
•• − − − − −=
Ecuación 14. Despeje de 1θ
••
71
Se despeja 2θ
•• de la Ecuación 12, se obtiene:
( ) ( )212 2 12 2 1 1 12 2 1 2 2
2
2
cos cosT sen B sen B A X
I
θ θ θ θ θ θ θ θθ
• •• •••• + − − − −
=
Ecuación 15. Despeje de 2θ
••
Y por último se despeja X••
de la Ecuación 12, y se tiene:
( ) ( )212 2 12 2 1 1 2 2 12 2 1
2 2
cos
cos
T sen B sen I BX
A
θ θ θ θ θ θ θ θθ
• •• •••• + − − − −
=
Ecuación 16. Despeje de X••
Despejando 1 2, , Xθ θ
•• •• ••, y dejando en términos de
1 1 2 2, , , ,X Xθ θ θ θ• • •
, que son las
variables de estado de interés se tiene:
2 2 2
1 2 1 1 2 1 1 2 2 1 1 2 2 12 1 1 2 1
2 2
2 2
12 2 1 2 12 2 1 2 2 12 2 1 2 2 1 1
2 12 1 2 1 2 2
(2 ( ) ( 2 ) ( 2 ) 2 cos( ) 4 cos( )
2 ( ) 2 ( ) 2 ( 3 ) 4 ( )
2 cos( 2 )
A T sen A T sen A T sen A B Fc A FcI
B MT sen A B sen A B sen I MT sen
A B Fc A A T s
θ θ θ θ θ θ θ θ
θ θ θ θ θ θ θ θθ θ
••
• •
= + − + + − + +
+ − + − − −− + 1 2 1 2 2 1 2 12 2 1 2
2 2 2 2
2 211 2 1 1 12 1 2 1 2 2 2 1 2 12 2 2 1 2
2 2
2
1 2 12 1 2 1 2 2 2 1 2 1 2
( 2 ) ( 2 ) 2 ( 2 )
2 (2 ) 2 (2 2 ) 2 ( ) 4 ( )
2 (2 ) 2 ( )) / (2(
en A A T sen B MT sen
A I sen B M sen A A I sen B I M sen
A A B sen A A I sen A I
θ θ θ θ θ θ
θ θ θ θ θ θ θ θ θ θ θ
θ θ θ θ θ
• • • •
• •
− − + − − +
− − − − − − −
+ + 2 2
2 1 12 1 2 12 1 2
2 2 2
1 2 1 2 1 2 12 1 2 1 2 12 1 1 2 12 2
1 2 12 1 2
2
cos(2 ) cos(2 ) cos(2 2 ) cos(2 ) cos(2 )
cos(2 2 )))
A I B M A A B I I M
A I A I B M A A B A A B
A A B
θ θ θ θ θ θθ θ
+ + − − +
+ + − − − −−
Ecuación 17. 1 1 1 2 2 en términos de , , , ,X Xθ θ θ θ θ
•• • • •
72
2 2 2
2 1 2 2 1 2 1 2 1 2 1 2 1 12 2 2 1 2
2 2
2 2
12 1 2 1 12 1 1 2 1 12 1 2 1 1 2 2 1 2 1 1 2
2
( ( ) ( (2 )) / 2 ( (2 )) / 2 cos( ) 2 cos( )
( ) ( ) ( 3 ) 2 ( ) ( (2 )) / 2
A
A T sen A T sen A T sen A B Fc A FcI
B MT sen A B sen A B sen I MT sen A A T sen
θ θ θ θ θ θ θ θ
θ θ θ θ θ θ θ θ θ θ
••
• •
= + + − − − + +
− − + − − − +
+2 2
2 2
1 2 2 1 12 1 2 12 2 1 2 1 2 1 1 2
2 2 2
12 1 1 2 1 2 1 1 1 2 12 1 1 1 2 1 2 12 2 1
2
2
1 2 1 1 1 2 1
(2 ) cos(2 ) (2 2 ) ( (2 )) / 2
(2 ) ( ) 2 ( ) (2 )
( )) / (
I sen A B Fc B M sen A A T sen
B MT sen A A I sen B I M sen A A B sen
A A I sen A
θ θ θ θ θ θ θ θ θ
θ θ θ θ θ θ θ θ θ θ
θ θ θ
• •
• • •
•
− − + − − − +
− + − + − − +
+ 2 2 2 2
2 2 1 12 1 2 12 1 2 1 2 1 2 1 2
2
12 1 2 1 2 12 1 1 2 12 2 1 2 12 1 2
2 cos(2 ) cos(2 )
cos(2 2 ) cos(2 ) cos(2 ) cos(2 2 ))
I A I B M A A B I I M A I A I
B M A A B A A B A A B
θ θθ θ θ θ θ θ
+ + − − + + +
− − − − −
Ecuación 18. 2 1 1 2 2 en términos de , , , ,X Xθ θ θ θ θ
•• • • •
2 2
1 2 12 12 1 2 1 12 2 1 2 12 1 1
1 12 2 2 2 12 1 2 1 2 1 1 2 1 2 2
2 2
2 2
1 12 1 1 2 2 12 2 1 2 1 12 2 1
(4 2 2 cos(2 2 ) (2 ) (2 )
(2 ) (2 ) 2 (2 ) 2 (2 )
2 (3 2 ) 2 (2 3 ) (2
X FcI I B Fc B Fc A B T sen A B T sen
A B T sen A B T sen A I T sen A I T sen
A B sen A B sen A B T sen
θ θ θ θθ θ θ θ
θ θ θ θ θ θ θ
••
• •
= − − − − + + ++ − − −
− + − −2
2 2
2 2
2 12 1 1 2 1 12 1 1 2 12 2 2 2 12 1 1 1 2
2 2 2 2
1 12 2 2 1 2 2 12 1 1 1 1 12 2 2 2 1 1 2 1 1
2
2
2 1 2 2 2 1 2
2 )
(2 2 ) 2 ( ) 2 ( ) 2 ( 2 )
2 (2 ) 2 ( ) 2 ( ) 4 ( )
4 ( )) / (2(
A B T sen A B sen A B sen A B I sen
A B I sen A B I sen A B I sen A I I sen
A I I sen A I A
θ
θ θ θ θ θ θ θ θ θ
θ θ θ θ θ θ θ θ θ
θ θ
• • •
• • • •
•
− +
− − − + − −
− + + + +
+ 2 2 2
2 1 12 1 2 12 1 2 1 2 1
2 2
2 1 2 12 1 2 1 2 12 1 1 2 12 2
1 2 12 1 2
2 cos(2 )
cos(2 ) cos(2 2 ) cos(2 ) cos(2 )
cos(2 2 )))
I B M A A B I I M A I
A I B M A A B A A B
A A B
θθ θ θ θ θ
θ θ
+ − − + +
+ − − − −−
Ecuación 19. 1 1 2 2 en términos de , , , ,X X Xθ θ θ θ
•• • • •
73
8.3. PARÁMETROS PARA LA SIMULACIÓN Ya teniendo las ecuaciones despejadas, se proceden a evaluar las constantes, las cuales de acuerdo al prototipo en 3D para la construcción en aluminio son:
0 1 2
0
1
2
( )1
( )2
( ) 2 21 1 1 1 2 0
( ) 22 2 2 2
1 1 1 2 0
2 2 2
12 2 0 2
1 1 1 2 0
2
9.81 /
0 (0.63 0.31) 0.94
1 1.36
2 1.317
0.5
0.25
0.24
0.0272
0.0244
( )
cm
cm
cm
cm
g m s
M kg kg
M kg
M kg
M M M M
L m
L m
L m
I
I
I I M L M L
I I M L
A M L M L
A M L
B M L L
T M L M L g
T
=
= + =
=
=
= + +
=
=
=
=
=
= + +
= +
= +
=
=
= +
2 2M L g=
8.4. DIAGRAMA DE BLOQUES DEL MODELO MATEMÁTICO
Para la simulación en el ToolBox Simulink del software MatLab, se ingresan las ecuaciones correspondientes a las aceleraciones o segundas derivadas de las posiciones
1 2, , Xθ θ , con respecto a las velocidades o primeras derivadas y a las
mismas posiciones, en cada uno de los bloques de funciones, los cuales se hallan en el Library Browser, y se integran para así obtener las velocidades y las posiciones respectivamente, y de esta manera se obtiene un diagrama de bloques del modelo matemático del sistema de péndulo invertido doble lineal.
74
Las variables que se utilizan para representar el modelo son:
1
1
1
2
2
2
Para el primer grado de libertad:
1
1
1
Para el segundo grado de libertad:
2
2
2
Para el tercer grado de libertad:
teta dotdot
teta dot
teta
teta dotdot
teta dot
teta
X xdotdot
X xdot
X x
θ
θθ
θ
θθ
••
•
••
•
••
•
→
→→
→
→→
→
→→
Figura 18. Diagrama de bloques del modelo matemático en SimuLink
75
Donde:
1 1 1
12 2
3 2 3
24 4
5
6
5
No aparecen al solucionar
el sistema
X
X
X
X
X X
X X
U Fc
θ µ
θ µθ µ
θ µ
µ
•
•
•
= →
= →= →
= →= →
= →= →
Las variables de estado X5 y X6, como se puede apreciar no aparecen al solucionar el modelo, ya que la posición lineal del carro X, se convierte en una especie de variable de manipulación para poder controlar las posiciones angulares θ1 y θ2.
76
9. ANÁLISIS DE LA RESPUESTA EN EL TIEMPO DEL MODELO MATEMÁTICO DEL PÉNDULO INVERTIDO DOBLE LINEAL
Para poder realizar el análisis y la comprobación del modelo matemático del péndulo invertido doble lineal obtenido, primero se analizó el péndulo en sus posiciones de equilibrio o “estables”, y luego se procede a analizar puntos de inestabilidad, cercanos a los estables.
9.1. CASOS ESTABLES
Se puede observar en la Figura 19, que el sistema de péndulo doble lineal, posee cuatro puntos de equilibrio.
Figura 19. Puntos de equilibrio del péndulo doble
77
9.1.1. Caso 1. Punto de equilibrio Eq_1
Se puede observar que las posiciones angulares θ1 y θ2, permanecen estables en
180°, y la posición del carro x permanece estable en 50 cm, por ende las velocidades
permanecen en 0.
Figura 20. Respuesta en punto de Eq_1
78
9.1.2. Caso 2. Punto de equilibrio Eq_2
Se puede observar que las posiciones angulares θ1 y θ2, permanecen estables en
180° y 0° respectivamente, y la posición del carro x permanece estable esta vez en
70 cm, por lo cual las velocidades permanecen en 0.
Figura 21. Respuesta en punto de Eq_2
79
9.1.3. Caso 3. Punto de equilibrio Eq_3
Se puede observar que los posiciones angulares θ1 y θ2, permanecen estables en
0° ambas, y la posición del carro x permanece estable ahora en 10 cm, por ello las
velocidades se mantienen en 0.
Figura 22. Respuesta en punto de Eq_3
80
9.1.4. Caso 4. Punto de equilibrio Eq_4
Se puede observar que los posiciones angulares θ1 y θ2, permanecen estables en
0° y 180° respectivamente, y la posición del carro x permanece estable en el
momento en 90 cm, por ello las velocidades se mantienen en 0.
Figura 23. Respuesta en punto de Eq_4
81
9.2. CASOS INESTABLES
Para revisar la respuesta inestable, se tomaron puntos cercanos a los puntos de
equilibrio.
Se puede observar que en el caso en que θ1=180°, y θ2=170°, el sistema se vuelve
inestable.
Figura 24. Respuesta a θ1=180° y θ2=170°
82
Se puede observar que en el caso en que θ1=170°, y θ2=180°, el sistema se vuelve
inestable.
Figura 25. Respuesta a θ1=170° y θ2=180°
83
10. DISEÑO DE CONTROLADORES PARA EL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL
10.1. LINEALIZACIÓN DEL MODELO MATEMÁTICO
Para la linealización del modelo matemático del péndulo invertido doble lineal se utilizó la matriz jacobiana, la cual contiene las derivadas parciales de las funciones, con respecto a cada una de las variables de estado del sistema, que son las posiciones y las velocidades de los 3 grados de libertad del péndulo doble lineal.
1 1 1 1 1 1
1 2 3 4 5 6
2 2 2 2 2 2
1 2 3 4 5 6
3 3 3 3 3 3
1 2 3 4 5 6
(0)
4 4 4 4
1 2 3
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0)
f f f f f f
x x x x x x
f f f f f f
x x x x x x
f f f f f f
x x x x x xJf
f f f f
x x x x
∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂
=∂ ∂ ∂ ∂∂ ∂ ∂ ∂
4 4
4 5 6
5 5 5 5 5 5
1 2 3 4 5 6
6 6 6 6 6 6
1 2 3 4 5 6
(0) (0) (0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0) (0)
f f
x x
f f f f f f
x x x x x x
f f f f f f
x x x x x x
∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂
84
Para hallar la matriz A linealizada, se obtuvo la matriz jacobiana de X•
, realizando
las derivadas parciales de 1 2 3 4 5 6, , , , ,X X X X X X
• • • • • •, con respecto a las variables de
estado 1 2 3 4 5 6, , , , ,X X X X X X , que son las posiciones y velocidades de los 3 grados
de libertad del sistema de péndulo doble lineal.
1 1 1 1 1 1
1 2 3 4 5 6
2 2 2 2 2 2
1 2 3 4 5 6
3 3 3 3 3
1 2 3 4 5
(0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0
[ , ]linealizada
X X X X X X
X X X X X X
X X X X X X
X X X X X X
X X X X X
X X X X XA Jacobian X X
• • • • • •
• • • • • •
• • • • •
•
∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂
∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂
∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂
= =
3
6
4 4 4 4 4 4
1 2 3 4 5 6
5 5 5 5 5 5
1 2 3 4 5 6
6 6 6 6 6 6
1 2 3 4 5 6
) (0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0) (0)
(0) (0) (0) (0) (0) (0)
X
X
X X X X X X
X X X X X X
X X X X X X
X X X X X X
X X X X X X
X X X X X X
•
• • • • • •
• • • • • •
• • • • • •
∂∂
∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂
∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂
∂ ∂ ∂ ∂ ∂ ∂∂ ∂ ∂ ∂ ∂ ∂
0 1 0 0 0 0
101.1600 0 -31.2053 0 0 0
0 0 0 1 0 0
-98.5780 0 73.0966 0 0 0
0 0 0 0 0 1
-19.3115 0 2.2268 0 0 0
linealizadaA
=
Ecuación 20. Matriz A linealizada del modelo en SS del péndulo doble lineal
85
Para hallar la matriz B linealizada, se obtuvo la matriz jacobiana de X•
, realizando
las derivadas parciales de 1 2 3 4 5 6, , , , ,X X X X X X
• • • • • •, con respecto a la entrada U, que
en este caso es la fuerza de control FC, del sistema de péndulo doble lineal.
1
2
3
(0)
4
5
6
(0)
(0)
(0)
[ , ]
(0)
(0)
(0)
0
-1.9715
0
0.7181
0
0.7580
linealizada
linealizada
X
U
X
U
X
UB Jacobian X U
X
U
X
U
X
U
B
•
•
•
•
•
•
•
∂ ∂ ∂ ∂ ∂
∂ = = ∂ ∂ ∂
∂ ∂ ∂
=
Ecuación 21. Matriz B linealizada del modelo en SS del péndulo doble lineal
86
De esta manera se obtiene el modelo matemático, linealizado alrededor de
1 1 2 20, 0, 0, 0θ θ θ θ• •
= = = = , que son los valores de los parámetros en la posición
invertida del péndulo doble lineal.
0 1 0 0 0 0
101.1600 0 -31.2053 0 0 0
0 0 0 1 0 0
-98.5780 0 73.0966 0 0 0
0 0 0 0 0 1
-19.3115 0 2.2268 0 0 0
linealizadaA
=
0
-1.9715
0
0.7181
0
0.7580
linealizadaB
=
1 0 0 0 0 0
0 0 1 0 0 0
0 0 0 0 1 0
C
=
0
0
0
0
0
0
D
=
Ecuación 22. Matrices A, B, C y D del modelo linealizado en SS
87
Entonces el modelo matemático en espacio de estados del péndulo invertido doble lineal es:
x Ax Bu
y Cx Du
•= += +
Ecuación 23. Modelo matemático en espacio de estados
1
1
22
3 3
44
5
56
6
0 1 0 0 0 0 0
101.1600 0 -31.2053 0 0 0 -1.9715
0 0 0 1 0 0 0
-98.5780 0 73.0966 0 0 0 0.7181
0 0 0 0 0 1 0
-19.3115 0 2.2268 0 0 0 0.7580
X
XX
X
X X
XX
X
X X
X
•
•
•
•
•
•
= +
1
2
3
4
5
6
1 0 0 0 0 0 0
0 0 1 0 0 0 0
0 0 0 0 1 0 0
U
X
X
Xy U
X
X
X
= +
Ecuación 24. Modelo linealizado en SS del péndulo doble lineal
88
10.2. CONTROLABILIDAD DEL MODELO LINEALIZADO EN SS DEL SISTEMA DE PÉNDULO DOBLE LINEAL
La matriz de controlabilidad del modelo linealizado del sistema de péndulo doble lineal está dada por:
2 3 4 5
0,0000 1,9715 0,0000 221,8479 0,0000 30144,8934
1,9715 0,0000 221,8479 0,0000 30144,8934 0,0000
0,0000 0,7181 0,0000 246,8408 0,0000 39912,5295
0,7181 0,0000 246,8408 0,0000 39912,5295 0,0000
0
Co B AB A B A B A B A B
Co
=
=
− − −− − −
,0000 0,7580 0,0000 39,6720 0,0000 4833,8744
0,7580 0,0000 39,6720 0,0000 4833,8744 0,0000
Ecuación 25. Matriz de controlabilidad del modelo linealizado en SS
El rango de la matriz de controlabilidad Co es 6, como es de rango completo, eso quiere decir que el sistema es completamente controlable.
89
10.3. OBSERVABILIDAD DEL MODELO LINEALIZADO EN SS DEL SISTEMA DE PÉNDULO DOBLE LINEAL
La matriz de observabilidad del modelo linealizado del sistema de péndulo doble lineal está dada por:
2 3 4 5T
Ob C CA CA CA CA CA =
1,0000 0,0000 0,0000 0,0000 0,0000 0,0000
0,0000 0,0000 1,0000 0,0000 0,0000 0,0000
0,0000 0,0000 0,0000 0,0000 1,0000 0,0000
0,0000 1,0000 0,0000 0,0000 0,0000 0,0000
0,0000 0,0000 0,0000 1,0000 0,0000 0,0000
0,0000 0,0000 0,000
Ob =
0 0,0000 0,0000 1,0000
101,1600 0,0000 31,2053 0,0000 0,0000 0,0000
98,5780 0,0000 73,0966 0,0000 0,0000 0,0000
19,3115 0,0000 2,2268 0,0000 0,0000 0,0000
0,0000 101,1600 0,0000 31,2053 0,0000 0,0000
0,0000 98,5780 0,0000 73,0
−−−
−− 966 0,0000 0,0000
0,0000 19,3115 0,0000 2, 2268 0,0000 0,0000
13309,5132 0,0000 5437,7351 0,0000 0,0000 0,0000
17177,8617 0,0000 8419,2662 0,0000 0,0000 0,0000
2173,0634 0,0000 765,3903 0,0000 0,0000 0,0000
0,0000 13309,5132 0
−−
−−
,0000 5437,7351 0,0000 0,0000
0,0000 17177,8617 0,0000 8419,2662 0,0000 0,0000
0,0000 2173,0634 0,0000 765,3903 0,0000 0,0000
−
−−
Ecuación 26. Matriz de observabilidad del modelo linealizado en SS
El rango de la matriz de observabilidad Ob es 6, como es de rango completo, eso quiere decir que el sistema es completamente observable.
90
10.4. ESTABILIDAD DEL MODELO LINEALIZADO EN SS DEL SISTEMA DE PÉNDULO DOBLE LINEAL
Para conocer la estabilidad, se hallan los polos del modelo linealizado en espacio de estados del sistema de péndulo invertido doble lineal.
[ ]0 0 12,01 5,47 12,01 5,47Polos − −=
Ecuación 27. Polos del modelo linealizado en SS
Figura 26. Diagrama de polos y ceros del modelo linealizado en SS
De acuerdo a los polos de la Ecuación 27, y al diagrama de polos y ceros mostrado en la Figura 26, se puede observar que el sistema es inestable, ya que dos de los seis polos tienen parte real positiva, es decir se encuentran en el semiplano derecho del plano complejo, y otros dos están en el límite de la inestabilidad, por estar en todo el eje Imaginario.
91
10.5. DISEÑO DEL CONTROLADOR POR REALIMENTACIÓN DE ESTADOS
Para mantener el sistema de péndulo doble lineal en su posición invertida, se utiliza la técnica de control por asignación de polos o “Pole Placement”, la cual es una estrategia de control moderno en espacio de estados basada en la realimentación de estados.
Como el sistema es completamente controlable, quiere decir que todos los estados son medibles, entonces se puede aplicar la técnica de control por realimentación de estados sin ningún inconveniente.
Para el diseño de este controlador adicional a las matrices A y B del modelo matemático del sistema del péndulo doble lineal en espacio de estados, se requiere la localización los polos deseados en lazo cerrado.
Para ello, el método más utilizado es elegir tales polos basándose en la experiencia que se tiene del diseño mediante el lugar de las raíces, colocando un par de polos dominantes en lazo cerrado y eligiendo los otros polos de forma que estén suficientemente alejados a la izquierda de los polos dominantes en lazo cerrado.
Entonces se plantea un sistema del mismo orden del sistema de péndulo doble lineal, la cual es de orden 6, definiendo para ello 3 plantas de orden 2.
1 1
2 2
3 3
0,7 0,5
1 6
1 12
n
n
n
ρ ω
ρ ω
ρ ω
= =
= =
= =
92
22 231 2
2 2 2 2 2 21 1 1 2 2 2 3 3 3
2 2 2
2 2 2 2 2
2 2 2
0,5 6 122(0,7)(0,5) 0,5 2(1)(6) 6 2(1 1
_
)( 2_
)
nn ndeseada
n n n n n n
deseada
G REs s s s s s
G REs s s s s s
ωω ω
ρ ω ω ρ ω ω ρ ω ω
= ⋅ ⋅ + + + + + +
= ⋅ ⋅ + + + + + 2
2 2 2
6 5 4 3 2
12
0,25 36 1440,7 0,25 12 36 24 144
129636,7 493,4 2929 7115 4277 1 6
_
_29
deseada
deseada
G REs s s s s s
G REs s s s s s
+
= ⋅ ⋅ + + + + + +
= + + + + + +
Obteniendo de esta manera los polos deseados del Sistema, así:
-12.0000 + 0.0000i
-12.0000 - 0.0000i
-6.0000 + 0.0000i
-6.0000 - 0.0000i
-0.3500 + 0.3571i
-0.3500 - 0. 7 i
_
35
_
1
Polos Deseados RE
=
De esta manera se halla el vector Kr de ganancias de realimentación de estados, por el método de Asignación de Polos, dando como resultado:
[ ]-241.5882 -5.4841 265.3958 32.2680 1.0855 3.5822Kr =
Ecuación 28. Ganancias de realimentación de estados
10.6. DISEÑO DEL OBSERVADOR DE ESTADOS
Para mantener el sistema de péndulo doble lineal en su posición invertida, en el caso que no se puedan medir todas las variables de estado, se hace uso de un observador de estados, para poder estimar esos estados o esas variables, en este caso que no hay sensores para medirlas, como lo son las velocidades de cada uno de los grados de libertad.
93
Como el sistema es completamente observable, quiere decir que todos los estados se pueden estimar, entonces se puede aplicar un estimador de estados sin ningún inconveniente.
Para el diseño de este observador adicional a las matrices A y C del modelo matemático del sistema del péndulo doble lineal en espacio de estados, se requiere la localización los polos deseados en lazo cerrado, que deben ser mínimo 5 veces más rápidos que los del controlador por asignación de polos.
Entonces se plantea un sistema del mismo orden del sistema de péndulo doble lineal, la cual es de orden 6, definiendo para ello 3 plantas de orden 2, pero los polos 5 veces más alejados hacia la parte izquierda, que los del controlador por realimentación de estados.
11 11
21 21
31 31
0,7 2,5
1 30
1 60
n
n
n
ρ ω
ρ ω
ρ ω
= =
= =
= =
22 23111 21
2 2 2 2 2 211 11 11 21 21 21 31 31 31
2 2
2 2 2 2
2 2 2
2,5 302(0,7)(2,5) 2,5 2(1)
_
_(30) 30
nn ndeseada
n n n n n n
deseada
G OEs s s s s s
G OEs s s s
ωω ω
ρ ω ω ρ ω ω ρ ω ω
= ⋅ ⋅ + + + + + +
= ⋅ ⋅ + + + +
2
2 2
2 2 2
6 5 4 3 2
602(1)(60) 60
6,25 900 36003,5 6,25 60 900 120 3600
20250000183,5 12336,25 366075 4447125 13365000 2025000
_0
_deseada
deseada
s s
G OEs s s s s s
G OEs s s s s s
+ +
= ⋅ ⋅ + + + + + +
=+ + + + + +
94
Obteniendo de esta manera los polos deseados del sistema, así:
-60.0000 + 0.0000i
-60.0000 + 0.0000i
-30.0000 + 0.0000i
-30.0000 + 0.0000i
-1.7500 + 1.7854i
-1.7500 - 1. 5 i
_
78
_
4
Polos Deseados OE
=
De esta manera se halla el vector Ke de ganancias de estimación de estados, por el mismo método que se utilizó para la asignación de polos, dando como resultado:
42,96 29,62 0
173,33 721,56 0
15,50 50,54 0
117,52 410,11 0
0 0 90
19,31 2,23 1800
Ke
=
−
−
−
−
−
Ecuación 29. Ganancias de estimación de estados
10.7. DISEÑO DEL CONTROLADOR ÓPTIMO CUADRÁTICO Ó LQR
Para mantener el sistema de péndulo doble lineal en su posición invertida, se utiliza la técnica de control cuadrático lineal o LQR, la cual es una estrategia de control optimo moderno basada en la realimentación de estados.
95
Como se revisó que el sistema es completamente controlable, quiere decir que todos los estados son medibles, entonces se puede aplicar la técnica de control LQR sin ningún inconveniente, ya que es un controlador óptimo basado en la realimentación de estados.
Para obtener la matriz de ganancia de realimentación de estados K_lqr, se utiliza el control óptimo LQR. Este regulador calcula la matriz de ganancia óptima tal que la ley de realimentación de estado u(t) = −Kx(t) minimiza la función de coste:
0( ) ( 2 )T T TJ U X QX U RU X NU dt
∞= + +∫
Ecuación 30. Función de coste cuadrático para el LQR
Los parámetros del diseño del regulador LQ son las matrices de peso Q y R. Q se utiliza como pesos de penalización para los estados y R para penalizar la señal de control.
Las matrices de diseño utilizadas para los experimentos son:
5R =
Ecuación 31. Parámetro R (peso acción de control) del LQR
10 0 0 0 0 0
0 1 0 0 0 0
0 0 10 0 0 0
0 0 0 1 0 0
0 0 0 0 10 0
0 0 0 0 0 1
Q
=
Ecuación 32. Parámetro Q (Peso variables de estado) del LQR
96
Con estos parámetros de diseño, el vector K_lqr de ganancias de realimentación de estados es: [ ]-233.7479 -5.4605 253.2928 30.7654 1.4142 4.0082_K lqr =
Ecuación 33. Vector K_lqr de ganancias del LQR
Con el controlador LQR, los polos de lazo cerrado quedan en:
-12.5397 + 0.0000i
-11.4838 + 0.0000i
-5.7429 + 0.0000i
-5.2325 + 0.0000i
-0.4491 + 0.4341i
-0.4491 - 0.4341i
LQRP
=
Ecuación 34. Polos de lazo cerrado con LQR
10.8. DISEÑO DEL OBSERVADOR ÓPTIMO CUADRÁTICO Ó LQE
Para mantener el sistema de péndulo doble lineal en su posición invertida, en el caso que no se puedan medir todas las variables de estado, se hace uso de un estimador de estados óptimo o LQE, para poder estimar esos estados o esas variables en este caso que no hay sensores para medirlas, como lo son las velocidades de cada uno de los grados de libertad.
Como el sistema es completamente observable, quiere decir que todos los estados se pueden estimar, entonces se puede aplicar un estimador LQE sin ningún inconveniente, ya que es un observador óptimo basado en la estimación de estados.
97
Los parámetros del diseño del estimador LQE son las matrices de peso Qe y Re. Qe se utiliza como pesos de penalización para los estados y R para penalizar la señal estimada.
Las matrices de diseño utilizadas para los experimentos son:
5 0 0
Re 0 5 0
0 0 5
=
Ecuación 35. Parámetro Re (peso señal estimada) del LQE
50 0 0 0 0 0
0 1 0 0 0 0
0 0 50 0 0 0
0 0 0 1 0 0
0 0 0 0 50 0
0 0 0 0 0 1
Qe
=
Ecuación 36. Parámetro Qe (Peso variables de estado) del LQE
Con estos parámetros de diseño, el vector K_lqe de ganancias de estimación de estados es:
42,96 29,62 0
173,33 721,56 0
15,50 50,54 0
117,52 410,11 0
0 0 900
19,31 2, 23 18000
_K lqe
=
−−
−−
−
Ecuación 37. Vector K_lqe de ganancias del LQE
98
10.9. DISEÑO DEL CONTROLADOR CUADRÁTICO GAUSSIANO Ó LQG
Otra de las estrategias para mantener el sistema de péndulo doble lineal en su posición invertida, es la técnica de control óptimo cuadrático gaussiano o LQG, el cual es un controlador optimo moderno basado en la realimentación de estados en combinación con estimación de estados.
Como se revisó que el sistema es completamente controlable, quiere decir que todos los estados son medibles, y además que es completamente observable, lo cual indica que los estados que no se pueden medir se pueden estimar, entonces se puede aplicar la técnica combinada de control óptimo por realimentación de estados y estimación de estados sin ningún problema.
Al igual que el LQR, los parámetros del diseño del regulador LQG son las matrices de peso QXU y QWV. Para ello necesitamos de las mismas matrices de pesos Q y R, que se utilizaron para el LQR. Ahora Q1 se utiliza como pesos de penalización para los estados y R1 para penalizar la señal de control.
Las matrices de diseño utilizadas para los experimentos son:
1 5R =
Ecuación 38. Parámetro R1 (peso acción de control) del LQG
10 0 0 0 0 0
0 1 0 0 0 0
0 0 10 0 0 01
0 0 0 1 0 0
0 0 0 0 10 0
0 0 0 0 0 1
Q
=
Ecuación 39. Parámetro Q1 (peso variables de estado) del LQG
99
Adicional, se necesitan unas matrices de pesos para los disturbios de entrada y salida del sistema, denominados también ruidos blanco gaussianos, de ahí el nombre del controlador LQG.
50 0 0 0 0 0
0 1 0 0 0 0
0 0 50 0 0 0
0 0 0 1 0 0
0 0 0 0 50 0
0 0 0 0 0 1
5 0 0
0 5 0
0 0 5
Qn
Rn
=
=
Ecuación 40. Parámetros Qn y Rn (peso ruidos de entrada y salida) del LQG
Teniendo todas las matrices de peso Q1, R1, Qn y Rn, se dispone a hallar las matrices QXU y QWV.
10 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 10 0 0 0 01 0
0 0 0 1 0 0 00 1
0 0 0 0 10 0 0
0 0 0 0 0 1 0
0 0 0 0 0 0 5
50 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0
0 0 50 0 0 0 0 0 0
0 0 0 1 0 0 0 0 00
0 0 0 0 50 0 0 0 00
0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 5 0 0
0 0 0 0 0 0 0 5 0
0 0 0 0 0 0 0 0 5
QQXU
R
QnQWV
Rn
= =
= =
Ecuación 41. Parámetros QXU y QWV (Pesos Totales) del LQG
100
Con estos parámetros de diseño, el regulador LQG queda de la siguiente forma:
1
2
3
4
5
6
17,3 1,0 7, 2 0,0 2,8 0,0
534,7 10,8 569,6 60,7 31,4 7,9
7,2 0,0 17,8 1,0 0,6 0,0
223,9 3,9 289, 2 22,1 21,0 2,9
2,8 0,0 0,6 0,0 3,9 1,0
192,5 4,1 202,0 23,3 7,6 3,
_e
_e
0
_e
_e
_e
_e
X
X
X
X
X
X
•
•
•
•
•
•
−− −
− −− −
=
− −− −
− − −
−
[ ]
1
2
3
4
5
6
1
2
3
17,3 7, 2 2,8
175,0 101,5 28,6
7, 2 17,8 0,6
154,7 180, 4 20,0
2,8 0,6 3,9
34,6 12,3 6,6
233,7 5,5 253,3 3
_e
_e
_e
_e
_e
_e
_e
_e
_0,8 1, 4 4,
e0
X
X
XU
X
X
X
X
X
Xy
X
+
− −− −
−−
−−
− − − −
= [ ]4
5
6
_e
_e
_
0 0
e
0 U
X
X
+
101
11. SIMULACIÓN DE CONTROLADORES PARA EL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL EN SIMULINK DE MATLAB
Igualmente para verificar el correcto funcionamiento de los controladores por Pole Placement, Estimador de Estados, LQR, LQE y LQG para el péndulo invertido doble lineal, se utilizó la versión de MatLab R2015a (8.5.0.197613) de 64 bits.
11.1. DIAGRAMA DE BLOQUES DEL SISTEMA CON REALIMENTACIÓN DE ESTADOS
El diagrama de bloques implementado del sistema con Pole Placement en SimuLink, se muestra en la Figura 27.
Figura 27.Diagrama de bloques del sistema con Pole Placement en SimuLink
102
11.2. DIAGRAMA DE BLOQUES DEL SISTEMA CON CONTROL POR REALIMENTACIÓN DE ESTADOS CON OBSERVADOR
Figura 28. Diagrama de bloques del estimador de estados en SimuLink
Figura 29. Diagrama de bloques del controlador por realimentación de estados con estimador de estados en SimuLink
103
11.3. DIAGRAMA DE BLOQUES DEL SISTEMA CON CONTROL LQR
El diagrama de bloques implementado del sistema con el LQR en SimuLink, se muestra en la Figura 30.
Figura 30. Diagrama de bloques del sistema con LQR en SimuLink
104
11.4. DIAGRAMA DE BLOQUES DEL SISTEMA CON LQR + LQE
Figura 31. Diagrama de bloques del estimador óptimo o LQE en SimuLink
Figura 32. Diagrama de bloques del regulador óptimo LQR con estimador óptimo LQE en SimuLink
105
11.5. DIAGRAMA DE BLOQUES DEL SISTEMA CON CONTROL LQG
El diagrama de bloques implementado del sistema con el LQG en SimuLink, se muestra en la Figura 33. Diagrama de bloques del sistema con LQG en SimuLink.
Figura 33. Diagrama de bloques del sistema con LQG en SimuLink
106
12. ANÁLISIS DE LA RESPUESTA EN EL TIEMPO DEL SISTEMA DE PÉNDULO INVERTIDO DOBLE LINEAL CON LOS CONTROLADORES
Se analizan las respuestas de los tres grados de libertad θ1, θ2 y X, y de la señal de control, de cada uno de los controladores implementados en SimuLink. Se puede observar que la implementación de los 5 controladores, son capaces de llevar el péndulo doble lineal de nuevo a su posición invertida, pero ante pequeños cambios alrededor de su punto de operación. El control por Pole Placement es que mejor rango de operación tiene, entre -25° y +25°, y con tiempos de estabilización de 5 segundos, como se puede verificar en Figura 34, Figura 35 y Figura 36. El regulador con observador, trabaja entre -7° y +7°, con unos tiempos de estabilidad de θ1 y θ2, en torno a los 4 segundos, como se confirma en Figura 38, Figura 39 y Figura 40.
El controlador LQR opera máximo entre -10° y +10°, y con unos tiempos de estabilización de θ1 y θ2, alrededor de 4 segundos, como se puede observar en
Figura 42, Figura 43, y
Figura 44.
El controlador LQG opera máximo para desviaciones entre -6° y +6°, siendo este rango de control muy pequeño comparado con los otros, y con unos tiempos de estabilización de θ1, y θ2 de 2 segundos, como se puede corroborar en Figura 50, Figura 51 y Figura 52.
107
12.1. RESPUESTA CON REALIMENTACIÓN DE ESTADOS
Figura 34. Respuesta de θ1 con Pole Placement
Figura 35. Respuesta de θ2 con Pole Placement
Figura 36. Respuesta de X con Pole Placement
Figura 37. Señal de control con Pole Placement
108
12.2. RESPUESTA CON REALIMENTACIÓN DE ESTADOS + OBSERVADOR
Figura 38. Respuesta de θ1 con Regulador+Estimador
Figura 39. Respuesta de θ2 con Regulador+Estimador
Figura 40. Respuesta de X con Regulador+Estimador
Figura 41. Señal de Control con Regulador+Estimador
109
12.3. RESPUESTA CON LQR
Figura 42. Respuesta de θ1 con LQR
Figura 43. Respuesta de θ2 con LQR
Figura 44. Respuesta de X con LQR
Figura 45. Señal de control con LQR
110
12.4. RESPUESTA CON LQR + LQE
Figura 46. Respuesta de θ1 con LQR+LQE
Figura 47. Respuesta de θ2 con LQR+LQE
Figura 48. Respuesta de X con LQR+LQE
Figura 49. Señal de control con LQR+LQE
111
12.5. RESPUESTA CON LQG
Figura 50. Respuesta de θ1 con LQG
Figura 51. Respuesta de θ2 con LQG
Figura 52. Respuesta de X con LQG
Figura 53. Señal de control con LQG
112
13. CONCLUSIONES
Se realizó el prototipo virtual en 3D del sistema de péndulo invertido doble lineal en
el software de diseño CAD SolidWorks, obteniendo unas vistas isométricas y unos
planos de cada una de las piezas que componen el sistema, además de un
ensamblaje total de todo el mecanismo.
Se desarrolló el modelo matemático del sistema de péndulo invertido doble lineal,
mediante las ecuaciones de Euler – Lagrange, obteniendo un modelo no lineal,
como era de suponerse para un sistema inestable de este tipo, luego se linealizó el
modelo a través de la matriz jacobiana, y se expresó el modelo en espacio de
estados.
Se comprobó el modelo matemático del sistema de péndulo invertido doble lineal
mediante las respuestas de las gráficas obtenidas de las variables θ1, θ2 y X en la
simulación del ToolBox SimuLink del software MatLab, donde se pudo observar la
estabilidad en los puntos de equilibrio, pero apenas se alejaba de esos puntos, el
sistema empezaba a oscilar hasta convertirse en un sistema caótico.
113
Se diseñaron varios controladores, como uno por pole placement, un observador de
estados, un regulador óptimo LQR, un estimador óptimo LQE y un regulador óptimo
gaussiano LQG, para el sistema de péndulo doble lineal y lograr mantenerlo en su
posición invertida, logrando la estabilización a cero de las variables θ1, θ2 y X, para
poderlo conservar en su posición invertida.
Se verifico el efecto de los diferentes controladores por realimentación de estados,
por estimación de estados, por regulador óptimo LQR, por estimador óptimo LQE, y
por regulador óptimo gaussiano LQG, a través de la simulación en SimuLink de
Matlab, junto con el modelo no lineal del sistema del péndulo doble lineal, alrededor
del punto de linealización.
114
14. REFERENCIAS BIBLIOGRÁFICAS
[1] OGATA. Katsuhiko. Ingeniería de Control Moderna. Quinta Edición. Editorial
Prentice Hall. 2010. Madrid, España.
[2] BOLTON, William. Ingeniería de Control. Segunda Edición. Editorial
Alfaomega. 2001. México D.F., México.
[3] KUO, Benjamin. Sistemas de Control Automático. Séptima Edición. Editorial
Prentice Hall. 1996. Juárez, México.
[4] DORF, Richard C. & BISHOP, Robert H. Sistemas de Control Moderno.
Décima Edición. Editorial Prentice Hall. 2005.
[5] SMITH, Carlos A. & CORRIPIO, Armando B. Control Automático de Procesos:
Teoría y Practica. Editorial Limusa. 1997. España.
[6] SANCHEZ, José Acedo. Instrumentación y Control Avanzado de Procesos.
Ediciones Diaz de Santos. 2006. España.
115
[7] OLLERO Baturone, Anibal. Robótica: Manipuladores y Robots Moviles.
Editorial Alfamomega Marcombo. 2007. Barcelona, España.
[8] CRAIG. John J. Robótica. Tercera Edición. Editorial Prentice Hall. 2006.
México D.F., México.
[9] BARRIENTOS, Antonio & Otros. Fundamentos de Robótica. Segunda Edición.
Editorial Mc Graw Hill. 2007. Madrid, España.Furuta K., M. Yamakita, S.
Kobayashi and M. Nishimura, "A New Inverted Pendulum apparatus for
education in Advances in Control Education" IFAC 1991 pp 191-196.
[10] Furuta K., M. Yamakita, S. Kobayashi and M. Nishimura, "A New Inverted
Pendulum apparatus for education in Advances in Control Education" IFAC
1991 pp 191-196.
[11] Valera, A., Vallés, M., Tornero, J. (2001) “Real Time Robot Control
Implementation with Matlab/Simulink”, Telematics Applicaction in Automation
and Robotics, Ed. Pergamon, ISBN 0 08 043856 3.
[12] Slotine, J.J., Li, W. Applied Nonlinear Control. Englewood Cliffs, New Jersey :
Prentice Hall, 1991. 461p.
116
[13] SARABIA Ortiz, Daniel; DE PRADA Moraga, César y Otros. Control Predictivo
De Un Sistema Híbrido. Dpto. De Ingeniería De Sistemas Y Automática.
Universidad De Valladolid, Facultad De Ciencias C/ Real De Burgos S/N,
47011 Valladolid, España.
[14] K.J. Astrom and K. Furuta. Swinging up a pendulum by energy control.
Automatica, 36(2):287–295, February 2000.
117
ANEXOS
118
ANEXO A. PLANOS DEL PÉNDULO INVERTIDO DOBLE LINEAL
119
120
121
122
123
124
125
126
ANEXO B. CÓDIGO DE MATLAB PARA EL MODELO MATEMÁTICO
syms Fc M T1 T2 B12 A1 A2 I1 I2 teta1 teta2 teta2dot teta1dot teta1dotdot
teta2dotdot xdotdot
%xdotdot=(T2*sin(teta2)+B12*sin(teta2-teta1)*teta1dot^2-I2*teta2dotdot-
B12*cos(teta2-teta1)*teta1dotdot)/(A2*cos(teta2));
%teta1dotdot = (T1*sin(teta1)-B12*sin(teta2-teta1)*teta2dot^2-
B12*cos(teta2-teta1)*teta2dotdot-A1*cos(teta1)*xdotdot)/I1;
xdotdotsubs=subs((T2*sin(teta2)+B12*sin(teta2-teta1)*teta1dot^2-
I2*teta2dotdot- B12*cos(teta2-teta1)*teta1dotdot) /
(A2*cos(teta2)),teta1dotdot,(T1*sin(teta1)-B12*sin(teta2-
teta1)*teta2dot^2 - B12*cos(teta2-teta1)*teta2dotdot-
A1*cos(teta1)*xdotdot) / I1);
teta1dotdotsubs = subs((T1*sin(teta1)-B12*sin(teta2-teta1)*teta2dot^2-
B12*cos(teta2-teta1)*teta2dotdot-
A1*cos(teta1)*xdotdot)/I1,xdotdot,(T2*sin(teta2)+B12*sin(teta2-
teta1)*teta1dot^2-I2*teta2dotdot-B12*cos(teta2-
teta1)*teta1dotdot)/(A2*cos(teta2)));
syms xdotdot teta1dotdot
teta1dotdottemp = teta1dotdotsubs-teta1dotdot;
xtemp = xdotdotsubs-xdotdot;
xdotdot_desp = solve('- xdotdot - (B12*sin(teta1 - teta2)*teta1dot^2 +
I2*teta2dotdot - T2*sin(teta2) + (B12*cos(teta1 - teta2)*(B12*sin(teta1 -
teta2)*teta2dot^2 + T1*sin(teta1) - B12*teta2dotdot*cos(teta1 - teta2) -
A1*xdotdot*cos(teta1)))/I1)/(A2*cos(teta2))=0',xdotdot)
%xdotdot_desp=(B12*sin(teta1 - teta2)*teta1dot^2 + I2*teta2dotdot -
T2*sin(teta2) + (B12*cos(teta1 - teta2)*(B12*sin(teta1 -
teta2)*teta2dot^2 + T1*sin(teta1) - B12*teta2dotdot*cos(teta1 -
teta2)))/I1)/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1))
teta1dotdot_desp = solve('(B12*sin(teta1 - teta2)*teta2dot^2 +
T1*sin(teta1) - B12*teta2dotdot*cos(teta1 - teta2) +
(A1*cos(teta1)*(B12*sin(teta1 - teta2)*teta1dot^2 + I2*teta2dotdot -
T2*sin(teta2) + B12*teta1dotdot*cos(teta1 - teta2)))/(A2*cos(teta2)))/I1
- teta1dotdot=0',teta1dotdot)
127
%teta1dotdot_desp=-(B12*sin(teta1 - teta2)*teta2dot^2 + T1*sin(teta1) -
B12*teta2dotdot*cos(teta1 - teta2) + (A1*cos(teta1)*(B12*sin(teta1 -
teta2)*teta1dot^2 + I2*teta2dotdot -
T2*sin(teta2)))/(A2*cos(teta2)))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1))
teta2dotdot_desp = solve('A1*cos(teta1)*(-(B12*sin(teta1 -
teta2)*teta2dot^2 + T1*sin(teta1) - B12*teta2dotdot*cos(teta1 - teta2) +
(A1*cos(teta1)*(B12*sin(teta1 - teta2)*teta1dot^2 + I2*teta2dotdot -
T2*sin(teta2)))/(A2*cos(teta2)))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) -
1)))+A2*cos(teta2)*teta2dotdot+M*((B12*sin(teta1 - teta2)*teta1dot^2 +
I2*teta2dotdot - T2*sin(teta2) + (B12*cos(teta1 - teta2)*(B12*sin(teta1 -
teta2)*teta2dot^2 + T1*sin(teta1) - B12*teta2dotdot*cos(teta1 -
teta2)))/I1)/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)))-A1*sin(teta1)*teta1dot^2-
A2*sin(teta2)*teta2dot^2-Fc=0',teta2dotdot)
pretty(teta2dotdot_desp)
teta2dotdot_S = simplify(teta2dotdot_desp)
pretty(teta2dotdot_S)
teta1dotdottemp = subs(-(B12*sin(teta1 - teta2)*teta2dot^2 +
T1*sin(teta1) - B12*teta2dotdot*cos(teta1 - teta2) +
(A1*cos(teta1)*(B12*sin(teta1 - teta2)*teta1dot^2 + I2*teta2dotdot -
T2*sin(teta2)))/(A2*cos(teta2)))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)),teta2dotdot,(Fc +
A1*teta1dot^2*sin(teta1) + A2*teta2dot^2*sin(teta2) +
(A1*cos(teta1)*(B12*sin(teta1 - teta2)*teta2dot^2 + T1*sin(teta1) -
(A1*cos(teta1)*(T2*sin(teta2) - B12*teta1dot^2*sin(teta1 -
teta2)))/(A2*cos(teta2))))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)) - (M*(B12*sin(teta1 -
teta2)*teta1dot^2 - T2*sin(teta2) + (B12*cos(teta1 -
teta2)*(B12*sin(teta1 - teta2)*teta2dot^2 +
T1*sin(teta1)))/I1))/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)))/(A2*cos(teta2) + (M*(I2 -
(B12^2*cos(teta1 - teta2)^2)/I1))/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)) +
(A1*cos(teta1)*(B12*cos(teta1 - teta2) -
(A1*I2*cos(teta1))/(A2*cos(teta2))))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1))))
teta1dotdot_S = simplify(teta1dotdottemp)
pretty(teta1dotdot_S)
128
xdotdottemp = subs((B12*sin(teta1 - teta2)*teta1dot^2 + I2*teta2dotdot -
T2*sin(teta2) + (B12*cos(teta1 - teta2)*(B12*sin(teta1 -
teta2)*teta2dot^2 + T1*sin(teta1) - B12*teta2dotdot*cos(teta1 -
teta2)))/I1)/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)),teta2dotdot,(Fc +
A1*teta1dot^2*sin(teta1) + A2*teta2dot^2*sin(teta2) +
(A1*cos(teta1)*(B12*sin(teta1 - teta2)*teta2dot^2 + T1*sin(teta1) -
(A1*cos(teta1)*(T2*sin(teta2) - B12*teta1dot^2*sin(teta1 -
teta2)))/(A2*cos(teta2))))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)) - (M*(B12*sin(teta1 -
teta2)*teta1dot^2 - T2*sin(teta2) + (B12*cos(teta1 -
teta2)*(B12*sin(teta1 - teta2)*teta2dot^2 +
T1*sin(teta1)))/I1))/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)))/(A2*cos(teta2) + (M*(I2 -
(B12^2*cos(teta1 - teta2)^2)/I1))/(A2*cos(teta2)*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1)) +
(A1*cos(teta1)*(B12*cos(teta1 - teta2) -
(A1*I2*cos(teta1))/(A2*cos(teta2))))/(I1*((A1*B12*cos(teta1 -
teta2)*cos(teta1))/(A2*I1*cos(teta2)) - 1))))
xdotdot_S = simplify(xdotdottemp)
pretty(xdotdot_S)
129
ANEXO C. CÓDIGO DE MATLAB PARA LOS CONTROLADORES
%% Linealización del Modelo No Lineal
syms teta1 teta1dot teta2 teta2dot x xdot A1 A2 T1 T2 B12 I1 I2 M Fc
As = jacobian([teta1dot; (2*A2^2*T1*sin(teta1) + A2^2*T1*sin(teta1 -
2*teta2) + A2^2*T1*sin(teta1 + 2*teta2) - 2*A2*B12*Fc*cos(teta1) +
4*A1*Fc*I2*cos(teta1) + 2*B12*M*T2*sin(teta1) +
2*A2^2*B12*teta2dot^2*sin(teta1 - teta2) +
2*A2^2*B12*teta2dot^2*sin(teta1 - 3*teta2) - 4*I2*M*T1*sin(teta1) -
2*A2*B12*Fc*cos(teta1 - 2*teta2) + A1*A2*T2*sin(teta1 - 2*teta2) -
A1*A2*T2*sin(teta1 + 2*teta2) - 2*B12*M*T2*sin(teta1 - 2*teta2) +
2*A1^2*I2*teta1dot^2*sin(2*teta1) - 2*B12^2*M*teta1dot^2*sin(2*teta1 -
2*teta2) - 2*A1*A2*I2*teta2dot^2*sin(teta1 - teta2) -
4*B12*I2*M*teta2dot^2*sin(teta1 - teta2) -
2*A1*A2*B12*teta1dot^2*sin(2*teta2) + 2*A1*A2*I2*teta2dot^2*sin(teta1 +
teta2))/(2*(A1^2*I2 + A2^2*I1 + B12^2*M - A1*A2*B12 - 2*I1*I2*M +
A1^2*I2*cos(2*teta1) + A2^2*I1*cos(2*teta2) + B12^2*M*cos(2*teta1 -
2*teta2) - A1*A2*B12*cos(2*teta1) - A1*A2*B12*cos(2*teta2) -
A1*A2*B12*cos(2*teta1 - 2*teta2)));teta2dot;(A1^2*T2*sin(teta2) +
(A1^2*T2*sin(2*teta1 + teta2))/2 - (A1^2*T2*sin(2*teta1 - teta2))/2 -
A1*B12*Fc*cos(teta2) + 2*A2*Fc*I1*cos(teta2) + B12*M*T1*sin(teta2) -
A1^2*B12*teta1dot^2*sin(teta1 - teta2) + A1^2*B12*teta1dot^2*sin(teta2 -
3*teta1) - 2*I1*M*T2*sin(teta2) - (A1*A2*T1*sin(2*teta1 + teta2))/2 +
A2^2*I1*teta2dot^2*sin(2*teta2) - A1*B12*Fc*cos(2*teta1 - teta2) +
B12^2*M*teta2dot^2*sin(2*teta1 - 2*teta2) - (A1*A2*T1*sin(2*teta1 -
teta2))/2 + B12*M*T1*sin(2*teta1 - teta2) + A1*A2*I1*teta1dot^2*sin(teta1
- teta2) + 2*B12*I1*M*teta1dot^2*sin(teta1 - teta2) -
A1*A2*B12*teta2dot^2*sin(2*teta1) + A1*A2*I1*teta1dot^2*sin(teta1 +
teta2))/(A1^2*I2 + A2^2*I1 + B12^2*M - A1*A2*B12 - 2*I1*I2*M +
A1^2*I2*cos(2*teta1) + A2^2*I1*cos(2*teta2) + B12^2*M*cos(2*teta1 -
2*teta2) - A1*A2*B12*cos(2*teta1) - A1*A2*B12*cos(2*teta2) -
A1*A2*B12*cos(2*teta1 - 2*teta2));xdot;-(4*Fc*I1*I2 - 2*B12^2*Fc -
2*B12^2*Fc*cos(2*teta1 - 2*teta2) + A1*B12*T2*sin(2*teta1) +
A2*B12*T1*sin(2*teta1) + A1*B12*T2*sin(2*teta2) + A2*B12*T1*sin(2*teta2)
- 2*A1*I2*T1*sin(2*teta1) - 2*A2*I1*T2*sin(2*teta2) -
2*A1*B12^2*teta1dot^2*sin(3*teta1 - 2*teta2) +
2*A2*B12^2*teta2dot^2*sin(2*teta1 - 3*teta2) - A1*B12*T2*sin(2*teta1 -
2*teta2) + A2*B12*T1*sin(2*teta1 - 2*teta2) -
2*A1*B12^2*teta1dot^2*sin(teta1) - 2*A2*B12^2*teta2dot^2*sin(teta2) +
2*A2*B12*I1*teta1dot^2*sin(teta1 - 2*teta2) -
2*A1*B12*I2*teta2dot^2*sin(2*teta1 - teta2) +
2*A2*B12*I1*teta1dot^2*sin(teta1) + 2*A1*B12*I2*teta2dot^2*sin(teta2) +
4*A1*I1*I2*teta1dot^2*sin(teta1) +
4*A2*I1*I2*teta2dot^2*sin(teta2))/(2*(A1^2*I2 + A2^2*I1 + B12^2*M -
A1*A2*B12 - 2*I1*I2*M + A1^2*I2*cos(2*teta1) + A2^2*I1*cos(2*teta2) +
B12^2*M*cos(2*teta1 - 2*teta2) - A1*A2*B12*cos(2*teta1) -
A1*A2*B12*cos(2*teta2) - A1*A2*B12*cos(2*teta1 - 2*teta2)))],[teta1,
teta1dot, teta2, teta2dot, x, xdot]);
130
Bs = jacobian([teta1dot; (2*A2^2*T1*sin(teta1) + A2^2*T1*sin(teta1 -
2*teta2) + A2^2*T1*sin(teta1 + 2*teta2) - 2*A2*B12*Fc*cos(teta1) +
4*A1*Fc*I2*cos(teta1) + 2*B12*M*T2*sin(teta1) +
2*A2^2*B12*teta2dot^2*sin(teta1 - teta2) +
2*A2^2*B12*teta2dot^2*sin(teta1 - 3*teta2) - 4*I2*M*T1*sin(teta1) -
2*A2*B12*Fc*cos(teta1 - 2*teta2) + A1*A2*T2*sin(teta1 - 2*teta2) -
A1*A2*T2*sin(teta1 + 2*teta2) - 2*B12*M*T2*sin(teta1 - 2*teta2) +
2*A1^2*I2*teta1dot^2*sin(2*teta1) - 2*B12^2*M*teta1dot^2*sin(2*teta1 -
2*teta2) - 2*A1*A2*I2*teta2dot^2*sin(teta1 - teta2) -
4*B12*I2*M*teta2dot^2*sin(teta1 - teta2) -
2*A1*A2*B12*teta1dot^2*sin(2*teta2) + 2*A1*A2*I2*teta2dot^2*sin(teta1 +
teta2))/(2*(A1^2*I2 + A2^2*I1 + B12^2*M - A1*A2*B12 - 2*I1*I2*M +
A1^2*I2*cos(2*teta1) + A2^2*I1*cos(2*teta2) + B12^2*M*cos(2*teta1 -
2*teta2) - A1*A2*B12*cos(2*teta1) - A1*A2*B12*cos(2*teta2) -
A1*A2*B12*cos(2*teta1 - 2*teta2)));teta2dot;(A1^2*T2*sin(teta2) +
(A1^2*T2*sin(2*teta1 + teta2))/2 - (A1^2*T2*sin(2*teta1 - teta2))/2 -
A1*B12*Fc*cos(teta2) + 2*A2*Fc*I1*cos(teta2) + B12*M*T1*sin(teta2) -
A1^2*B12*teta1dot^2*sin(teta1 - teta2) + A1^2*B12*teta1dot^2*sin(teta2 -
3*teta1) - 2*I1*M*T2*sin(teta2) - (A1*A2*T1*sin(2*teta1 + teta2))/2 +
A2^2*I1*teta2dot^2*sin(2*teta2) - A1*B12*Fc*cos(2*teta1 - teta2) +
B12^2*M*teta2dot^2*sin(2*teta1 - 2*teta2) - (A1*A2*T1*sin(2*teta1 -
teta2))/2 + B12*M*T1*sin(2*teta1 - teta2) + A1*A2*I1*teta1dot^2*sin(teta1
- teta2) + 2*B12*I1*M*teta1dot^2*sin(teta1 - teta2) -
A1*A2*B12*teta2dot^2*sin(2*teta1) + A1*A2*I1*teta1dot^2*sin(teta1 +
teta2))/(A1^2*I2 + A2^2*I1 + B12^2*M - A1*A2*B12 - 2*I1*I2*M +
A1^2*I2*cos(2*teta1) + A2^2*I1*cos(2*teta2) + B12^2*M*cos(2*teta1 -
2*teta2) - A1*A2*B12*cos(2*teta1) - A1*A2*B12*cos(2*teta2) -
A1*A2*B12*cos(2*teta1 - 2*teta2));xdot;-(4*Fc*I1*I2 - 2*B12^2*Fc -
2*B12^2*Fc*cos(2*teta1 - 2*teta2) + A1*B12*T2*sin(2*teta1) +
A2*B12*T1*sin(2*teta1) + A1*B12*T2*sin(2*teta2) + A2*B12*T1*sin(2*teta2)
- 2*A1*I2*T1*sin(2*teta1) - 2*A2*I1*T2*sin(2*teta2) -
2*A1*B12^2*teta1dot^2*sin(3*teta1 - 2*teta2) +
2*A2*B12^2*teta2dot^2*sin(2*teta1 - 3*teta2) - A1*B12*T2*sin(2*teta1 -
2*teta2) + A2*B12*T1*sin(2*teta1 - 2*teta2) -
2*A1*B12^2*teta1dot^2*sin(teta1) - 2*A2*B12^2*teta2dot^2*sin(teta2) +
2*A2*B12*I1*teta1dot^2*sin(teta1 - 2*teta2) -
2*A1*B12*I2*teta2dot^2*sin(2*teta1 - teta2) +
2*A2*B12*I1*teta1dot^2*sin(teta1) + 2*A1*B12*I2*teta2dot^2*sin(teta2) +
4*A1*I1*I2*teta1dot^2*sin(teta1) +
4*A2*I1*I2*teta2dot^2*sin(teta2))/(2*(A1^2*I2 + A2^2*I1 + B12^2*M -
A1*A2*B12 - 2*I1*I2*M + A1^2*I2*cos(2*teta1) + A2^2*I1*cos(2*teta2) +
B12^2*M*cos(2*teta1 - 2*teta2) - A1*A2*B12*cos(2*teta1) -
A1*A2*B12*cos(2*teta2) - A1*A2*B12*cos(2*teta1 - 2*teta2)))],[Fc]);
131
%% Parámetros del modelo
g = 9.81; M0 = 0.63+0.31; M1 = 1.36; M2 = 1.317; M = M0+M1+M2; L0 = 0.5; L1 = 0.25; L2 = 0.24; I1CM = 0.0272; I2CM = 0.0244; I1 = I1CM+M1*L1^2+M2*L0^2; I2 = I2CM+M2*L2^2; A1 = M1*L1+M2*L0; A2 = M2*L2; B12 = M2*L0*L2; T1 = (M1*L1+M2*L0)*g; T2 = M2*L2*g;
_________________________________________________________________________
%% Punto de Linealización
teta1=0;teta1dot=0;teta2=0;teta2dot=0; Fc=0;
A = subs(As); B = subs(Bs); C = [1 0 0 0 0 0; 0 0 1 0 0 0; 0 0 0 0 1 0]; %Salidas solo posiciones D = zeros(3,1);
A = double(A); B = double(B);
G = ss(A,B,C,D); %Modelo Linealizado del Sistema en SS
_________________________________________________________________________
%% Características del sistema
rangoCtr = rank(ctrb(A,B)); %Calcula el rango de la matriz de
Controlabilidad. Como la matriz de Controlabilidad es de rango completo
el sistema es completamente controlable.
rangoObs = rank(obsv(A,C)); %Calcula el rango de la matriz de
Observabilidad. Como la matriz de Observabilidad es de rango completo el
sistema es completamente observable.
[GPolos, GCeros] = pzmap(G); %Polos y Ceros del Sistema
132
%% Diseño del Controlador por Realimentación de Estados
%Polos Deseados de Realimentación de Estados rho1 = 0.7; wn1= 0.5; rho2 = 1; wn2 = 6; rho3 = 1; wn3 = 12;
s = tf('s');
dinamicaDeseada_RE = (wn1^2/(s^2+2*rho1*wn1*s+wn1^2))*
(wn2^2/(s^2+2*rho2*wn2*s+wn2^2))*(wn3^2/(s^2+2*rho3*wn3*s+wn3^2)); PolosDeseados_RE = pole(dinamicaDeseada_RE);
% Cálculo de ganancias de Realimentación
Kr = place(A,B,PolosDeseados_RE); % Calculo de las ganancias de
Realimentacion de estados para ubicar los polos de lazo cerrado, en los
polos deseados usando Pole Placement.
G_re=ss(A-B*Kr,B,C,[]);
[G_re_Polos, G_re_Ceros] = pzmap(G_re); %Polos y ceros del Sistema
Realimentado con REALIMENTACION DE ESTADOS
_________________________________________________________________________
%% Diseño del Observador de Estados
%Polos Deseados de Observador de Estados rho11 = 0.7; wn11= 2.5; rho21 = 1; wn21 = 30; rho31 = 1; wn31 = 60;
s = tf('s');
dinamicaDeseada_OE =
(wn11^2/(s^2+2*rho11*wn11*s+wn11^2))*(wn21^2/(s^2+2*rho21*wn21*s+wn21^2))
*(wn31^2/(s^2+2*rho31*wn31*s+wn31^2)); PolosDeseados_OE = pole(dinamicaDeseada_OE);
% Cálculo de Ganancias de Estimación
Ke = place (A',C',PolosDeseados_OE)';
133
%% Diseño del Controlador LQR
Q = diag([10 1 10 1 10 1]); R = 5;
K_lqr = lqr(A,B,Q,R,zeros(6,1));
G_lqr=ss(A-B*K_lqr,B,C,[]); %Representacion SS Sistema Realimentado con
LQR [G_lqr_Polos, G_lqr_Ceros] = pzmap(G_lqr); %Polos y ceros del Sistema
Realimentado con LQR _________________________________________________________________________
%% Diseño de Observador LQE (Filtro Kalman)
Qe = diag([50 1 50 1 50 1]); Re = 5*eye(size(C,1));
K_lqe = lqr(A',C',Qe,Re,zeros(6,3))';
[Pe,eig,Fe1] = care(A',C',Qe,Re); %Solución de la Ecuación Algebraica de
Riccati, Pe = Solución, eig = Valores Propios, Fe1 = Matriz de Ganancia
de Estimacion Optima Fe = (Pe*C')/(Re); _________________________________________________________________________
%% Diseño del Controlador LQG
% Matrices de pesos para la entrada y los estados
Q1 = diag([10 1 10 1 10 1]); R1 = 5;
% Matrices de pesos para los disturbios de entrada y salida de la planta
Qn = diag([50 1 50 1 50 1]); Rn = 5*eye(size(C,1));
% Matrices Qxu y Qwv
QXU = blkdiag(Q1,R1); QWV = blkdiag(Qn,Rn);
% Cálculo de controlador LQG
KLQG = lqg(G,QXU,QWV);
134
ANEXO D. PRESUPUESTO PARA LA FUTURA CONSTRUCCIÓN DEL PÉNDULO INVERTIDO DOBLE LINEAL
En el presupuesto de Materiales para su futura implementación física se da un
estimado.
Estos se detallan a continuación:
MATERIALES UNIDADES COSTO UNITARIO COSTO TOTAL
Estructura Mecánica 1 $1’000.000 $1’000.000
Motor Eléctrico DC 1 unidad $300.000 $300.000
Encoders Incrementales 3 unidades $400.000 $1’200.000
Drive 1 $300.000 $300.000
Sistema de Adquisición
de Datos
1 $300.000 $300.000
TOTAL $3’100.000