Diseno~ e Implementaci on de un Sistema de P endulo...
Transcript of Diseno~ e Implementaci on de un Sistema de P endulo...
Diseno e Implementacion de un Sistema de Pendulo Invertido
para la Ensenanza de Conceptos de Control en Ingenierıa,
a Traves del Metodo de Variables de Estado
Angela Paola Duquino Sanchez
Universidad Distrital Francisco Jose de Caldas
Facultad de Ingenierıa
Proyecto Curricular de Ingenierıa Electronica
Bogota D.C.
2015
Diseno e Implementacion de un Sistema de Pendulo Invertido
para la Ensenanza de Conceptos de Control en Ingenierıa,
a Traves del Metodo de Variables de Estado
Angela Paola Duquino Sanchez
Cod. 20091005017
Trabajo de grado para optar al tıtulo de:
Ingeniero Electronico en la modalidad de investigacion
Directora:
Diana Marcela Ovalle Martınez. PhD.
Lınea de Investigacion:
Senales y Control
Grupo de Investigacion:
IDEAS
Universidad Distrital Francisco Jose de Caldas
Facultad de Ingenierıa
Proyecto Curricular de Ingenierıa Electronica
Bogota D.C.
2015
Nota de Aceptacion
Firma del Jurado
Firma del Jurado
La preocupacion por el hombre y su destino
siempre debe ser el interes primordial de todo
esfuerzo tecnico. Nunca olvides esto entre tus
diagramas y ecuaciones.
Albert Einstein
Agradecimientos
A Dios, por los logros obtenidos y por cada una de las personas que puso en mi camino a
lo largo de mi carrera.
A mi familia, por su amor, formacion, apoyo incondicional, opiniones, sugerencias y cola-
boracion en cada experiencia y actividad de mi vida.
A mis profesores y companeros, por su ayuda, ensenanzas, sugerencias y opiniones en
los momentos de duda que me ayudaron a la construccion de este trabajo. A la profesora
Diana Marcela Ovalle y al Grupo de Investigacion ((IDEAS)), por su apoyo y por darme
la oportunidad de hacer parte de esta gran labor y de este proyecto de investigacion. A la
Universidad Distrital por la educacion brindada, por formarme como una profesional con
valores y consciente de su responsabilidad en el progreso y desarrollo de una mejor sociedad.
A todos gracias.
RESUMEN xi
Resumen
En este documento se desarrolla un prototipo funcional tipo pendulo invertido de trayecto-
ria circular, el cual es aportado al Proyecto de Investigacion “Diseno e Implementacion de
Plantas Basicas para la Ensenanza de Conceptos de Control en Ingenierıa” del Grupo de
Investigacion IDEAS de la Universidad Distrital Francisco Jose de Caldas como herramienta
para la ensenanza en el area de sistemas de control. Se presentan las ecuaciones que represen-
tan la dinamica del sistema, las cuales fueron utilizadas como punto de partida, tanto para
el diseno de la implementacion electronica y mecanica del prototipo como para el diseno de
controladores que lo llevan a la estabilidad.
Se muestra el diseno para la implementacion tanto electronica como mecanica del prototipo,
la seleccion de los componentes y materiales a usar para la misma, ası como las caracterısti-
cas basicas de cada uno de ellos. Tambien, se presenta la caracterizacion de los sensores y
actuadores del sistema, ası como la caracterizacion de la planta, la cual se lleva a cabo por
medio de la medicion y optimizacion de los parametros fısicos calculados que modelan el
comportamiento del sistema, comparando las variables del modelo de simulacion y los datos
obtenidos de la implementacion del sistema. De igual forma, se presentan los resultados de
las estimaciones realizadas, que corresponden al modelo dinamico del prototipo implemen-
tado.
Se describe el diseno de un controlador por la tecnica de variables de estado. De igual forma,
se describe el diseno de controladores difusos tipo 1 y tipo 2. De esta manera, se crean guıas
de laboratorio para el trabajo con el prototipo en el area, que abarcan tecnicas de diseno de
controladores tanto de tipo lineal como no lineal, a ser implementadas de forma digital.
Adicionalmente, se presentan los planos realizados para la construccion mecanica del proto-
tipo, los esquematicos y circuitos impresos disenados para el mismo y la programacion del
microcontrolador. Dado que el proyecto tiene como resultado un prototipo de hardware, es
necesario e indispensable el desarrollo de un manual de usuario, mantenimiento y reparacion
del mismo.
En el presente trabajo se incluye en los anexos el artıculo titulado ((Design and Implemen-
tation of a CBR Interval Type-2 Fuzzy Controller for Stabilizing an Inverted Pendulum)),
el cual recibio aceptacion y fue presentado en el 2nd Workshop on Engineering Applica-
tions – International Congress on Engineering (WEA - 2015). Adicionalmente, se incluye un
CD-ROM con los respectivos archivos y codigos de programa utilizados para el desarrollo y
trabajo con el prototipo.
Contenido
Resumen XI
Lista de Figuras XVII
Lista de Tablas XXI
Lista de Sımbolos XXIII
Introduccion 1
1. Generalidades 3
1.1. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2. Objetivos especıficos . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3. Aportes y Reconocimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2. Diseno del Prototipo 7
2.1. Seleccion de la estructura de pendulo invertido a disenar . . . . . . . . . . . 7
2.2. Recomendaciones para la construccion de equipos de laboratorio . . . . . . . 9
2.2.1. Diseno Electronico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.2. Diseno Mecanico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3. Analisis de requerimientos del sistema . . . . . . . . . . . . . . . . . . . . . . 14
2.4. Seleccion de componentes para la parte electronica del sistema . . . . . . . . 15
2.4.1. Sensores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.2. Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4.3. Microcontrolador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.4. Modulo de comunicacion . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4.5. Otros componentes electronicos . . . . . . . . . . . . . . . . . . . . . 20
2.5. Diseno electronico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5.1. Captura y entrega datos . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5.2. Etapa potencia motor . . . . . . . . . . . . . . . . . . . . . . . . . . 24
xiv CONTENIDO
2.5.3. Comunicacion microcontrolador-PC . . . . . . . . . . . . . . . . . . . 25
2.5.4. Microcontrolador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.5.5. Etapa de proteccion para las salidas . . . . . . . . . . . . . . . . . . . 26
2.6. Seleccion de componentes para la parte mecanica del sistema . . . . . . . . . 26
2.6.1. Seleccion componentes y piezas . . . . . . . . . . . . . . . . . . . . . 26
2.6.2. Seleccion materiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.7. Diseno mecanico (aproximado) . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.7.1. Carro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.7.2. Base del carro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.8. Consideraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3. Implementacion del Prototipo 45
3.1. Caracterizacion de sensores y motor . . . . . . . . . . . . . . . . . . . . . . . 45
3.1.1. Potenciometro lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.1.2. Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.1.3. Encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.2. Circuitos impresos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.3. Programacion Microcontrolador . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4. Costos de implementacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.5. Sistema de pendulo invertido implementado . . . . . . . . . . . . . . . . . . 59
4. Modelamiento y Caracterizacion del Sistema 61
4.1. Modelo dinamico del sistema de pendulo invertido . . . . . . . . . . . . . . . 61
4.2. Linealizacion y ecuaciones de estado del sistema de pendulo invertido . . . . 65
4.3. Caracterizacion del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.3.1. Optimizacion de los parametros del sistema . . . . . . . . . . . . . . 68
4.3.2. Sistemas simulado/real . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.4. Analisis de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.4.1. Caracterizacion del sistema . . . . . . . . . . . . . . . . . . . . . . . 70
4.4.2. Consideraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5. Diseno e Implementacion de Controladores 73
5.1. Diseno e Implementacion de controladores difusos . . . . . . . . . . . . . . . 73
5.1.1. Sistema difuso tipo 2 de intervalo . . . . . . . . . . . . . . . . . . . . 73
5.1.2. Sistema difuso tipo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.1.3. Optimizacion de los parametros del controlador . . . . . . . . . . . . 76
5.2. Diseno e implementacion de un controlador por el metodo de variables de estado 77
5.3. Analisis de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3.1. Sistemas simulado/real . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3.2. Controladores difusos . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3.3. Controlador por el metodo de variables de estado . . . . . . . . . . . 81
CONTENIDO xv
5.3.4. Funcion ((CSPI)) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.3.5. Consideraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.3.6. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6. Conclusiones y Trabajos Futuros 87
6.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.2. Trabajos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
A. AAnexos 91
A.1. Hoja de datos y manual de usuario . . . . . . . . . . . . . . . . . . . . . . . 91
A.2. Practicas de laboratorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
A.3. Caracterizacion planta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
A.4. Archivos MatLabr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
A.5. Artıculo [1] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Lista de Figuras
2-1. Estructuras de pendulo invertido. . . . . . . . . . . . . . . . . . . . . . . . . 8
2-2. Diagrama del proceso de diseno mecanico [13]. . . . . . . . . . . . . . . . . . 13
2-3. Partes principales del sistema. . . . . . . . . . . . . . . . . . . . . . . . . . 14
2-4. Potenciometro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2-5. Encoder [14]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2-6. Motor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2-7. Microcontrolador MSP430G2553 [15]. . . . . . . . . . . . . . . . . . . . . . . 18
2-8. FT232. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2-9. Diagrama funcional del DAC [18]. . . . . . . . . . . . . . . . . . . . . . . . . 21
2-10.Atenuador para capturar el voltaje del motor. . . . . . . . . . . . . . . . . . 23
2-11.Seguidor de voltaje para el canal del encoder dirigido al microcontrolador. . 24
2-12.Amplificadores para otorgar los voltajes correspondientes a los valores del
angulo y velocidad dados por el microcontrolador. . . . . . . . . . . . . . . . 24
2-13.Etapa de potencia para el motor. . . . . . . . . . . . . . . . . . . . . . . . . 25
2-14.Comunicacion microcontrolador-PC por medio de la tarjeta FT232. . . . . . 26
2-15.Diagrama circuital microcontrolador. . . . . . . . . . . . . . . . . . . . . . . 26
2-16.Proteccion de las salidas angulo y velocidad a cortos con la fuente. . . . . . . 27
2-17.Llanta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2-18.Anillo Colector (Slip Ring). . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2-19.Funcionamiento de un anillo colector. . . . . . . . . . . . . . . . . . . . . . . 29
2-20.Carro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2-21.Pendulo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2-22.Pieza mecanica para el movimiento del pendulo. . . . . . . . . . . . . . . . . 35
2-23.Acople potenciometro-pendulo. . . . . . . . . . . . . . . . . . . . . . . . . . 35
2-24.Acople motor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2-25.Acople motor-llanta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2-26.Chumacera llanta libre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2-27.Acople encoder. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2-28.Acople anillo colector-carro. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2-29.Ensamble Carrocerıa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2-30.Tapas carro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
xviii LISTA DE FIGURAS
2-31.Paredes del carro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2-32.Base del carro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2-33.Ensamble de la Base del Carro. . . . . . . . . . . . . . . . . . . . . . . . . . 41
2-34.Tapas base. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2-35.Paredes de la base del carro. . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3-1. Caracterizacion potenciometro y amplificador del valor del angulo con su res-
pectivas lıneas de tendencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3-2. Ajustes para el voltaje en el motor con su respectivas lıneas de tendencia. . . 46
3-3. Caracterizacion encoder y amplificador del valor de la velocidad con sus res-
pectivas lıneas de tendencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3-4. Comportamiento del motor respecto a la velocidad. . . . . . . . . . . . . . . 47
3-5. Esquematico del prototipo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3-6. Circuitos impresos del prototipo. . . . . . . . . . . . . . . . . . . . . . . . . 49
3-7. PCB’s del prototipo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3-8. Interfaz grafica principal “Grace”, donde se activan y seleccionan los modu-
los que se desean utilizar en el microcontrolador, ası como su frecuencia de
trabajo, voltaje de alimentacion, entradas, salidas, entre otros. . . . . . . . . 52
3-9. Activacion en secuencia de dos canales del ADC, para capturar los voltajes
del motor y potenciometro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3-10.Activacion interrupcion de tiempo cada 10 mseg en el Timer0 A3 Bloque 0. 54
3-11.Activacion de la interrupcion en el pin de entrada P1.5 para el canal del encoder. 54
3-12.Activacion modo PWM del Timer1 A3 Bloque 1 para generar el PWM del
angulo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3-13.Activacion modo PWM del Timer1 A3 Bloque 2 para generar el PWM de la
velocidad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3-14.Activacion de la UART en el USCI A0 para establecer comunicacion entre el
microcontrolador y FT232. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3-15.Asignacion de las entradas, salidas, canales ADC, PWM y modulos de comu-
nicacion del microcontrolador. . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3-16.Sistema de pendulo invertido implementado. . . . . . . . . . . . . . . . . . . 59
4-1. Diagrama de cuerpo libre del sistema de pendulo invertido de trayectoria
circular. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4-2. Circuito equivalente para un motor DC. . . . . . . . . . . . . . . . . . . . . 63
4-3. Respuestas del sistema simulado y real a una entrada seno con los parametros
iniciales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4-4. Diagramas de bloque para el sistema. . . . . . . . . . . . . . . . . . . . . . . 69
4-5. Respuestas del sistema simulado y real a una entrada seno con los parametros
optimizados en (4-42). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
LISTA DE FIGURAS xix
5-1. Funciones de pertenencia de entrada y salida del controlador. . . . . . . . . . 73
5-2. Diagramas de bloque para el sistema. . . . . . . . . . . . . . . . . . . . . . . 79
5-3. Respuestas del sistema controlado simulado y real, con un controlador difuso
tipo 2 de intervalo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5-4. Respuestas del sistema controlado simulado y real, con un controlador difuso
tipo 1 optimizado en (5-23). . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5-5. Respuestas del sistema controlado simulado y real, con el controlador por
realimentacion de estados mostrado en (5-21). . . . . . . . . . . . . . . . . . 81
5-6. Comportamiento posicion angular del pendulo en tiempo real. . . . . . . . . 82
5-7. Comportamiento de las variables del sistema de pendulo invertido en el tiempo. 83
5-8. Ejecucion de la funcion CSPI(Tiempo,’COM’). . . . . . . . . . . . . . . . . . . 84
5-9. Respuestas del sistema controlado simulado y real, para cada uno de los con-
troladores desarrollados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
A-1. Sistema controlado con un sistema difuso tipo 2. . . . . . . . . . . . . . . . . 92
Lista de Tablas
2-1. Tabla de datos encoder Pittman serie E22A [14]. . . . . . . . . . . . . . . . 16
2-2. Tabla de datos del motor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2-3. Caracterısticas microcontrolador MSP430G2553 [15]. . . . . . . . . . . . . . 17
2-4. Funciones terminales del DAC TLC5615 [18]. . . . . . . . . . . . . . . . . . . 21
2-5. Componentes electronicos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2-6. Piezas Mecanicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2-7. Accesorios para el ensamble de las piezas. . . . . . . . . . . . . . . . . . . . . 33
3-1. Costos para la implementacion mecanica del prototipo. . . . . . . . . . . . . 57
3-2. Costos para la implementacion electronica del prototipo. . . . . . . . . . . . 58
3-3. Caracterısticas del Sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4-1. Parametros del sistema implementado. . . . . . . . . . . . . . . . . . . . . . 71
5-1. Tabla de verdad por logica de Kleene. . . . . . . . . . . . . . . . . . . . . . . 74
5-2. Valor del criterio ISE para cada controlador. . . . . . . . . . . . . . . . . . . 85
A-1. Rendimiento para 16 pruebas y 10 vectores de parametros. . . . . . . . . . . 93
Lista de sımbolos
Sımbolos Generales
Sımbolo Termino Unidad SI
Asup Area superficial m2
t Tiempo s
g Gravedad m/s2
h Altura m
η Viscosidad Ns/m2
z Distancia hundimiento m
Sımbolos del motor DC
Sımbolo Termino Unidad SI Definicion
τ Torque Nm KT Ia
τs Torque Stall Kg f-cm 1 Kg f-cm = 0,09806 Nm
KT Constante de torque Nm/A
Ia Corriente de armadura A
Ra Resistencia de armadura Ω
Vm Voltaje aplicado al motor V
Ki Constante de inducido AΩs
ωm Velocidad angular del motor rads
E Voltaje de inducido V Kiω
xxiv LISTA DE SIMBOLOS
Sımbolos del pendulo invertido
Sımbolo Termino Unidad SI Definicion
θ Angulo de inclinacion rad
φ Velocidad angular carro rads
N Fuerza normal del carro N (M +m)g
u Fuerza de control N τ/r
2l Longitud pendulo m
m Masa pendulo kg
M Masa del carro kg
µ Coeficiente friccion viscosa Ns/m Kg/s
b Coeficiente friccion rotacional Nms Kgm2/s
ρ Coeficiente friccion normal
I Inercia pendulo Kg m2
R Radio pista m
r Radio llanta m
ω Velocidad angular 1s
dθ/dt = v/r
s Arco m Rφ
Sımbolos de un modelo dinamico
Sımbolo Termino Unidad SI
Mp Sobre paso maximo (Overshoot)
ξ Factor de amortiguamiento
ωn Frecuencia natural no amortiguada
ts Tiempo de establecimiento s
Ts Tiempo de muestreo s
LISTA DE SIMBOLOS xxv
Sımbolos de ecuaciones de estado
Sımbolo Termino
x(t)− x[n] Vector de estado
u(t)− u[n] Vector de entrada
y(t)− y[n] Vector de salida
r(t)− r[n] Vector de referencia
A Matriz de estados
B Matriz de entrada
C Matriz de salida
D Matriz de transmision directa
U Matriz de controlabilidad
I Matriz identidad
S Matriz de transformacion
K Vector de ganancias
Sımbolos seleccion disipador
Sımbolo Termino Unidad SI Definicion
PD Potencia disipada W
TA Temperatura ambiente C
TJ Temperatura de juntura C
RJC Resistencia juntura-cotenedor C/W
RCD Resistencia contenedor-disipador C/W
RD Resistencia disipador C/W RD = TJ−TAPD− (RJC +RCD)
Introduccion
La ingenierıa de control ha sido uno de los mas grandes avances en la tecnologıa mundial
y es base de estudios hoy dıa. Gracias a esta, se han logrado desarrollos significativos para
mejorar la calidad de vida de las personas. Por tal motivo, es pertinente y necesario en-
senar los conceptos basicos que se requieren para el analisis e implementacion de sistemas de
control, por medio de la sustentacion teorica y la aplicacion de dicho aprendizaje, a traves
de practicas de laboratorio que orienten a los estudiantes en el desarrollo de los conceptos
adquiridos en la teorıa. Para lograr tal fin, el Grupo de Investigacion, Desarrollo y Aplica-
ciones en Senales (IDEAS) de la Universidad Distrital Francisco Jose de Caldas, a traves del
Proyecto de Investigacion “Diseno e Implementacion de Plantas Basicas para la Ensenanza
de Conceptos de Control en Ingenierıa”, evaluado, aprobado y financiado por el Centro de
Investigaciones y Desarrollo Cientıfico de la Universidad, propone el desarrollo de diferentes
plantas basicas para la ensenanza de conceptos de control en ingenierıa.
En el marco de dicho proyecto de investigacion, en el presente trabajo de grado se imple-
menta un sistema de pendulo invertido de trayectoria circular con un conjunto de guıas
de laboratorio, que logra proporcionar a los estudiantes las herramientas necesarias para
afianzar sus conocimientos relacionados con la identificacion de sistemas, el diseno de con-
troladores a partir de la tecnica de Variables de Estado y de sistemas difusos CBR. Es
importante mencionar, que el CBR es un proceso de concrecion y defuzificacion empleado
para simplificar los calculos en los sistemas de inferencia difusos; no obstante, se puede em-
plear como una metodologıa de diseno de sistemas de inferencia difuso, teniendo en cuenta
la resolucion de sistemas de control basados en automatismos; adicionalmente, este metodo
requiere menos costo computacional, es mas sencillo a la hora de implementarlo y la toma
de decisiones en el mismo es mas rapida. No obstante, el proceso para la seleccion de los
coeficientes del CBR de orden cero requiere de un sistema experto que identifique los valores
asociados; cabe mencionar que el CBR de orden cero, corresponde a los coeficientes constan-
tes que se multiplican por las salidas obtenidas en las simplificaciones de las tablas de verdad.
2 INTRODUCCION
La implementacion del sistema se llevo a cabo con la participacion de la docente profesional
en el area de control. En cuanto a la metodologıa de trabajo, en primer lugar se realizo una
busqueda de las diferentes estructuras de sistemas de pendulo invertido implementadas ac-
tualmente, con el fin de determinar cual de ellas era la mas apropiada para ser implementada.
Posteriormente, se continuo con el diseno y simulacion de la planta, teniendo en cuenta las
recomendaciones para la construccion de equipos de laboratorio. A continuacion, se siguio
con la implementacion y, por tanto, con la verificacion de funcionamiento y puesta a pun-
to del sistema. Finalmente, se realizo la documentacion del sistema propuesto: un manual
de usuario orientado al mantenimiento y reparacion del sistema, y guıas de trabajo en el
laboratorio orientados al docente y al estudiante, teniendo en cuenta la respectiva funda-
mentacion matematica para el desarrollo de los mismas, para que en el marco del proyecto
de grado estos puedan ser utilizados por los diferentes Proyectos Curriculares de la Facultad
de Ingenierıa de la Universidad.
Capıtulo 1
Generalidades
1.1. Planteamiento del problema
Dada la importancia que tienen los conceptos de control en el desarrollo de tecnologıas y
competencias en los estudiantes de algunos nucleos de ingenierıa (como la ingenierıa electri-
ca, electronica y de sistemas), se hace necesario proveer a los estudiantes de las herramientas
necesarias que les permitan comprender de forma clara y concisa los conceptos basicos de
control en ingenierıa, teniendo en cuenta la complejidad de esta area debido al fuerte conte-
nido matematico que involucra. Es por ello que actualmente se cuenta con diferentes recursos
de ayuda para la ensenanza de estos conceptos como simuladores, software academico, equi-
pos de laboratorio especializado y, en algunos casos, el diseno e implementacion de sistemas
de control reales en el laboratorio para la resolucion de problemas particulares.
Los simuladores ofrecen resultados ideales comparados con la implementacion real de un sis-
tema y, pese a que pueden dar un nivel de realismo bastante elevado, es muy difıcil suponer
cuales son las no linealidades que puede presentar un sistema, a menos que sea implemen-
tado inicialmente. Por supuesto, en diferentes universidades, e incluso los desarrolladores
de ciertos programas de software licenciados, como Matlab, se han tomado el trabajo de
desarrollar modelos de simulacion bastante detallados de una amplia variedad de sistemas
dinamicos, con el fin de que las personas interesadas en aplicarle teorıa de control a dichos
sistemas puedan utilizar los modelos y enfocarse plenamente en las diferentes estrategias de
control que se deseen probar. Sin embargo, al utilizar programas de simulacion los estudian-
tes quedan con la idea de que no estan experimentando con sistemas reales.
Los equipos (sistemas) de laboratorio de control comerciales pueden, en cierta medida, quitar
el sinsabor que deja el trabajo con simulacion. Sin embargo, en su mayorıa son sistemas muy
cerrados, que vienen con muchos modulos adicionales, como: alimentacion propia, adquisi-
cion de datos e, incluso, software propio para el trabajo con el sistema. Lo anterior no es del
todo atractivo, en particular en el aprendizaje de la ingenierıa electronica, debido a que el
estudiante esta en posibilidad de desarrollar sus propios sistemas de adquisicion de datos de
4 1 Generalidades
bajo costo. Ademas en el caso particular de la Universidad, esta cuenta con multiples fuentes
de alimentacion recientemente adquiridas, ası como con licencias de programas orientados
al control de sistemas, que hacen un poco sobredimensionada la inversion que se debe hacer
para adquirir equipos de laboratorio de control comerciales.
Cuando los estudiantes se ven en la necesidad de disenar e implementar sus propios siste-
mas, se ven enfrentados a una serie de problemas y dudas debido al inesperado o inadecuado
funcionamiento de los mismos por diferentes motivos; problemas que el aspirante a inge-
niero debe comprender y corregir para lograr objetivos propuestos. Sin embargo, el tiempo
destinado para las practicas de laboratorio usualmente no es el suficiente para lograr que el
sistema funcione de manera adecuada (electronicamente hablando), por lo que el objetivo del
laboratorio de control se pierde totalmente y resulta siendo mucho mas complicado debido a
las falencias teorico-practicas heredadas de otras materias y no por la complejidad inherente
a los sistemas de control, lo que genera una desmotivacion en los estudiantes por seguir esta
lınea de profundizacion.
Debido a todo lo anterior, se hace necesario contar con herramientas, principalmente plantas
(sistemas) de laboratorio, que permitan a los estudiantes el desarrollo de practicas que forta-
lezcan y ayuden a comprender de forma clara y concisa los conceptos de control introducidos
en la teorıa. Con el fin de suplir esta necesidad en la Universidad, a traves del Grupo de
Investigacion, Desarrollo y Aplicaciones en Senales (IDEAS) de la Universidad Distrital, se
esta desarrollando el Proyecto de investigacion “Diseno e Implementacion de Plantas Basicas
para la Ensenanza de Conceptos de Control en Ingenierıa”, evaluado, aprobado y financiado
por el Centro de Investigaciones y Desarrollo Cientıfico de la Universidad. El proyecto de
investigacion en mencion busca implementar tres plantas basicas orientadas al aprendizaje
de conceptos basicos de control en la Facultad de Ingenierıa, de las cuales una de ellas es
implementada en el presente proyecto. En este contexto y orientado especıficamente a las
tematicas de identificacion de sistemas y Variables de Estado en los espacios academicos del
area de control del Proyecto Curricular de Ingenierıa Electronica surge el presente proyecto
de grado, que pretende dar respuesta a la pregunta: ¿Como, a partir de la implementa-
cion de un sistema tipo pendulo invertido sobre un carro, se pueden fortalecer
los conceptos fundamentales de los cursos del area de control que incluyen
las tematicas de identificacion de sistemas y la tecnica de variables de estado,
en el proyecto curricular de ingenierıa electronica de la Universidad Distrital?
Para darle respuesta a la pregunta, en este trabajo de grado se propone el diseno e imple-
mentacion de un sistema tipo pendulo invertido sobre un carro, con una entrada (voltaje
sobre el motor del carro) y dos salidas (la posicion del pendulo respecto a la vertical y la
velocidad del carro), con el fin de utilizarlo en el desarrollo de practicas de laboratorio en el
area de control, que incluyan tematicas de identificacion de sistemas y diseno e implentacion
1.2 Objetivos 5
de controladores en Variables de Estado, o tecnicas de control avanzadas. Lo anterior supone
la elaboracion y desarrollo de guıas de laboratorio orientadas a los conceptos que se desean
fortalecer.
Ası mismo, se espera que el prototipo de sistema de pendulo invertido sea utilizado en el
laboratorio y por tanto replicado para que cada grupo pueda trabajar con su prototipo de
forma simultanea, lo cual supone la necesidad de la elaboracion de manuales, tanto de usuario
como de mantenimiento y reparacion.
1.2. Objetivos
1.2.1. Objetivo general
Disenar e implementar un sistema de pendulo invertido sobre un carro para la ensenanza de
conceptos de control en ingenierıa, relacionados con la tecnica de Variables de Estado y la
identificacion de sistemas.
1.2.2. Objetivos especıficos
3.2.1 Disenar y simular un sistema de pendulo invertido sobre un carro con una entrada
analogica (voltaje sobre el motor del carro) y dos salidas analogicas (la posicion del
pendulo respecto a la vertical y la velocidad del carro).
3.2.2 Implementar y poner a punto un prototipo del sistema teniendo en cuenta las reco-
mendaciones para la construccion de equipos de laboratorio.
3.2.3. Realizar el manual de usuario, donde se especifiquen con claridad las capacidades y
limitaciones del sistema, ası como su adecuada forma de uso.
3.2.4. Realizar un manual de mantenimiento y reparacion, donde se especifiquen comple-
tamente los disenos electronico y mecanico, y se detallen los procesos de reparacion
especıficos.
3.2.5. Desarrollar las practicas de laboratorio en las tematicas de identificacion de sistemas y
la tecnica de Variables de Estado, especificando los resultados esperados y los posibles
inconvenientes que puedan llegar a tener los estudiantes durante el desarrollo de cada
practica.
6 1 Generalidades
1.3. Aportes y Reconocimientos
El desarrollo de un prototipo funcional de pendulo invertido de trayectoria circular
que incluye un modulo de comunicacion con el PC (para la ejecucion de controladores
digitales directamente desde el mismo en tiempo real) y el acceso a las variables del
sistema analogico (para la ejecucion de controladores analogicos), posibilita que dicho
prototipo sea utilizado como herramienta para el estudio de sistemas dinamicos y
control avanzado (difusos, robustos, optimos, adaptivos, entre otros).
El sistema de pendulo invertido de trayectoria circular, es un prototipo poco comun, ya
que por lo general, estos sistemas estan definidos en trayectorias lineales, lo que otorga
al prototipo aquı implementado un mayor grado de dificultad tanto para el analisis del
sistema como para el diseno e implementacion de controladores en el mismo.
Se desarrollo la funcion CSPI(Tiempo,’COM’) en MatLabr para que el usuario inter-
actue con el sistema de pendulo invertido, por medio de la aplicacion de controladores
propios y la visualizacion de los comportamientos de las variables que componen el
sistema controlado.
Se realizo el artıculo titulado ((Design and Implementation of a CBR Interval Type-2
Fuzzy Controller for Stabilizing an Inverted Pendulum)), el cual recibio aceptacion y fue
presentado en el 2nd Workshop on Engineering Applications – International Congress
on Engineering (WEA - 2015).
Capıtulo 2
Diseno del Prototipo
2.1. Seleccion de la estructura de pendulo invertido a
disenar
En la literatura se encuentran varias estructuras para el desarrollo de un sistema de pendulo
invertido:
Sistema de pendulo invertido en base lineal: es la estructura mas comun y la cual se
observa en la Fig. 2-1 (a). Se compone de un vehıculo (carro o riel) que tiene la funcion
de balancear el pendulo, el cual puede moverse en unica dimension y cuyo movimiento
esta gobernado por un motor DC (actuador) localizado en uno de los extremos de la
barra horizontal y que esta adherido al carro por medio de un engranaje y una banda
de conexion. Sujeto al vehıculo se encuentra la barra pendular que, en estado de reposo,
se encuentra en la posicion vertical inferior y que se conoce como estado natural [44].
Sistema de pendulo invertido de furuta: tambien conocido como pendulo rotacional
invertido. Es un mecanismo sub-actuado con 2 grados de libertad y constituido por 2
eslabones, o brazos, y 2 articulaciones rotacionales. El primer eslabon tiene la capaci-
dad de girar en el plano horizontal, en uno de sus extremos se encuentra el actuador
(motor), quien imprime sobre este la capacidad de movimiento, a su vez este se conec-
ta al segundo eslabon, o pendulo, en el extremo restante mediante una articulacion,
que puede girar libremente y permite su rotacion sobre el plano vertical [4], se puede
observar en la Fig. 2-1 (b).
Sistema de pendulo invertido sobre dos ruedas (Segway): se observa en la Fig. 2-1
(c). Consiste en un unico cuerpo rıgido con dos ruedas en su base, que le permiten
girar y desplazarse sobre la superficie, y el cual se desea mantener en equilibrio. Se
caracteriza por poder girar en torno a su propio centro de masa, permitiendole obtener
grandes caracterısticas de maniobrabilidad, como moverse facilmente por varios tipos
de terreno, dar vueltas muy cerradas, sortear pequenos escalones y bordes, ocupando
menor espacio [7].
8 2 Diseno del Prototipo
Sistema de pendulo invertido en base circular: se basa en una trayectoria circular, con
un grado de libertad y consiste en un riel o un carro sobre el cual se soporta el pendulo,
el cual se estabiliza por medio de movimientos circulares de derecha a izquierda, o
viceversa. La plataforma de la base del carro contiene 2 ruedas (una de las cuales esta
dirigida y conectada a un motor DC) y un conector de audio (en el caso del pendulo
mostrado en la Fig. 2-1 (d)). Cuando el motor esta activado, el carro gira alrededor
de un cırculo con el centro del eje de rotacion en su conector de audio, el cual tiene
2 propositos: primero, se utiliza como eje de rotacion del carro y, segundo, se utiliza
para llevar la energıa a la tarjeta del controlador. El pendulo se une a la plataforma
del carro por medio de un potenciometro con una posibilidad de giro de 180.
(a) Sistema de pendulo invertido de trayectoria lineal
[3].
(b) Sistema de pendulo inver-
tido de Furuta [5].
(c) Sistema de pendulo invertido
sobre dos ruedas (Segway) [7].
(d) Sistema de pendulo invertido de tra-
yectoria circular [8].
Figura 2-1: Estructuras de pendulo invertido.
2.2 Recomendaciones para la construccion de equipos de laboratorio 9
A partir de las opciones anteriores, es necesario seleccionar cual de ellas es pertinente imple-
mentar como prototipo para el laboratorio de control. Considerando el sistema de pendulo
invertido en base lineal, este ocupa un area bastante grande y tendrıa sentido para hacer
practicas demostrativas con una sola unidad dentro del laboratorio, pero no serıa viable tener
seis de ellos dentro de un laboratorio de las dimensiones de los laboratorios de la Universi-
dad. El sistema de pendulo invertido de furuta resulta ser adecuado para los propositos del
proyecto, en el sentido de que tiene un tamano relativamente pequeno; sin embargo, necesita
primero ser llevado a una posicion de 90o respecto a la horizontal con un control de swing
up y posteriormente si tener un control de estabilizacion en dicha posicion, lo cual lo hace
un sistema mas complejo de lo que se necesitarıa, ya que lo que se busca es el refuerzo de
conceptos basicos control; de manera adicional, ya fue implementado en el ano 2012 como
proyecto de grado [6] y no tendrıa sentido volverlo a implementar. El sistema de pendulo
invertido sobre dos ruedas tambien fue implementado como proyecto de grado en la Uni-
versidad [7]; sin embargo, este sistema tiene el problema de que al moverse libremente en
el espacio tendrıamos en una sesion de laboratorio a 18 estudiantes moviendose por toda la
sala detras de su sistema, lo cual no es muy atractivo. Finalmente, el sistema de pendulo
invertido en base circular satisface resulta ser conveniente para los objetivos del proyecto, ya
que es un sistema fijo, que perfectamente puede estar en un banco de laboratorio de la Uni-
versidad junto con fuente, osciloscopio y demas equipos; ademas, a diferencia del pendulo de
furuta, solamente necesita un tipo de control para estabilizarse, lo cual lo hace mas sencillo
y conveniente para el refuerzo de conceptos basicos control. Por todo lo anterior, para el
presente proyecto se decidio implementar un sistema de pendulo invertido de base circular.
2.2. Recomendaciones para la construccion de equipos
de laboratorio
Para la implementacion de prototipos de laboratorio es muy importante tener en cuenta
recomendaciones tanto de tipo electronico como mecanico, que delimitaran, en un buen
sentido, tanto el diseno como la implementacion del prototipo y lo haran mas o menos
viable de ser reproducido en masa. A continuacion se detallan dichas recomendaciones o
consideraciones.
2.2.1. Diseno Electronico
Se han de tener en cuenta las siguientes consideraciones para implementar laboratorios de
control [2]:
1. Formular los objetivos del experimento.
2. Determinar el costo aproximado del experimento, teniendo en cuenta que la produccion
10 2 Diseno del Prototipo
en masa tiene un menor costo. Determinar si se va a utilizar componentes nuevos o usa-
dos. Tener en cuenta los costos inesperados (partes con la misma finalidad, reparacion
o remplazo de componentes).
3. Tener presente la estructura tıpica de un experimento en control: un proceso fısico con
sensores, actuadores, fuentes de alimentacion, amplificadores operacionales, conden-
sadores, resistencias, microcontrolador, si se desea un computador con una interface
(tarjeta de adquisicion de datos) para la comunicacion con el proceso fısico [9].
4. Para el diseno, es mas productivo seguir procedimientos estandar que lleven a resulta-
dos satisfactorios, en lugar de emplear demasiado tiempo en procedimientos de diseno
propio.
5. Una vez se ha disenado y se tiene el presupuesto del proyecto, seleccionar los materiales.
6. A la hora de la implementacion: tener presente que el primer diseno no sera perfecto,
dado que en la primera oportunidad no se consideran todas las variables que influyen en
el problema. Ser cuidadoso con los planos del diseno, tanto electronico como mecanico;
tener mucho cuidado en la seleccion y el diseno de los cables (fuente de error mas
probable en un sistema).
7. Respecto a los acondicionamientos de senal, cerciorarse si el amplificador tiene algun
filtro, ya que este podrıa modificar el comportamiento frecuencial de la planta.
8. En cuanto a los actuadores (amplificadores de potencia), se puede usar de dos clases
principales: basados en PWM (modulacion de ancho de pulso) o lineales (de senales
continuas); si se desea aplicar un voltaje constante al sistema fısico, cerciorarse que el
actuador tenga acoplamiento DC.
9. Documentar, ya que le permite a los ingenieros de un equipo conocer los problemas
que se presentaron en una implementacion particular, para tratar de evitarlos y de esta
forma ir evolucionando como equipo.
Adicionalmente para el diseno de PCB’s se han de tener en las siguientes normas basicas
para el diseno de placas de circuito impreso [10]:
1. Se disenara sobre decimas de pulgada, de modo que se hagan coincidir las pistas con
las lıneas de la cuadrıcula o formando un angulo de 45 con estas, y los puntos de
soldadura con las intersecciones de las lıneas.
2. Se tratara de realizar un diseno lo mas sencillo posible; cuanto mas cortas sean las
pistas y mas simple la distribucion de componentes, mejor resultara el diseno.
2.2 Recomendaciones para la construccion de equipos de laboratorio 11
3. No se realizaran pistas con angulos de 90; cuando sea preciso efectuar un giro en una
pista, se hara con dos angulos de 135; si es necesario ejecutar una bifurcacion en una
pista, se hara suavizando los angulos con sendos triangulos a cada lado.
4. El ancho de las pistas dependera de la intensidad que vaya a circular por ellas. Se
tendra en cuenta que 0,8 mm puede soportar, dependiendo del espesor de la pista,
alrededor de 2 A, 2 mm unos 5 A y 4,5 mm unos 10 A.
5. Entre pistas proximas y entre pistas y puntos de soldadura, se observara una distancia
que dependera de la tension electrica que se prevea existira entre ellas; como norma
general, se dejara una distancia mınima de unos 0,8 mm.; en casos de disenos complejos,
se podra disminuir los 0,8 mm hasta 0,4 mm. En algunas ocasiones sera preciso cortar
una porcion de ciertos puntos de soldadura para que se cumpla esta norma.
6. La distancia mınima entre pistas y los bordes de la placa sera de dos decimas de
pulgada, aproximadamente unos 5 mm.
7. Todos los componentes se colocaran paralelos a los bordes de la placa.
8. No se pasaran pistas entre dos terminales de componentes activos.
9. La pista debe disponerse sobre el nodo perpendicularmente, y no de forma tangencial.
10. Con el fin de facilitar una buena soldadura hay que evitar areas excesivas de cobre.
11. En los casos de pistas que se requieren grandes superficies de cobre, se debe disenar
una rejilla de tipo rayado, con el fin de que el soporte aislante no se deforme.
12. Al trazar las pistas de union entre varios nodos se debe evitar la formacion de angulos
agudos entre nodos comunes que pueden producir puentes de soldadura.
2.2.2. Diseno Mecanico
El componente mecanico es el elemento encargado de ejecutar el movimiento y de ser la
estructura o soporte de los demas componentes. Para desarrollar dispositivos mecanicos, la
seleccion de los materiales y los procesos para transformarlos en las partes moviles o es-
tructurales del sistema, constituyen un pilar que garantiza el correcto funcionamiento del
componente mecanico disenado. Por tal motivo, el proceso de seleccion de los materiales de-
be seguir una metodologıa rigurosa, que permita conseguir un diseno con elevados estandares
de calidad, mientras que los costos de diseno, fabricacion, operacion y mantenimiento del
dispositivo permitan mantener los niveles de competitividad del desarrollador [11].
Para el diseno del prototipo mecanico, en primer lugar se ha de tener en cuenta el diseno
electronico elaborado, ya que una de las funciones de este, es la proteccion de circuiterıa y
12 2 Diseno del Prototipo
ası mismo la accesibilidad sencilla al sistema en general. Tambien se ha de tener en cuenta
las piezas mecanicas adicionales que se requieren para su funcionamiento, tales como aco-
ples, tornillerıa, ejes, anillos, rodamientos, chumaceras, entre otros. En caso de que se deban
disenar piezas, dado que estas no se encuentran en el mercado, en el diseno se han de tener
claros los objetivos para los que se va a disenar dicha pieza y ası mismo los elementos con
los que se cuenta y sobre los cuales esta se va a elaborar. Por tanto, es importante tener
presente las dimensiones de las piezas que se van a disenar, ası como, la adecuada seleccion de
materiales y procesos que garanticen el correcto funcionamiento de dichas partes mecanicas.
A la hora de seleccionar y/o disenar una pieza mecanica se han de tener en cuenta los
siguientes requerimientos [11]:
Disponibilidad para su reemplazo.
Economıa.
Rigidez.
Dimensionalmente estable a diferentes temperaturas.
Liviana.
Ciclo util de vida.
Resistente a la corrosion y al desgaste.
Que no tenga gran impacto sobre el medio ambiente o las personas.
Debe tener numerosos usos.
Conductividad electrica (la parte electronica puede verse afectada).
Adicionalmente se debe tener en cuenta el proceso de diseno que se debe llevar a cabo, el
cual se resume en la Fig. 2-2.
Cabe aclarar que existen tres metodos para la seleccion de materiales [12]:
1. Metodo tradicional : Mediante este metodo el ingeniero selecciona el material que
a criterio propio considera mas adecuado, con base en la experiencia de partes que
tienen un funcionamiento similar y que han mostrado buenos resultados. Este metodo
mantiene buena aceptacion debido a que el ingeniero se siente seguro con un material
usado y ensayado.
2.2 Recomendaciones para la construccion de equipos de laboratorio 13
Necesidad de Mercado
Diseño inicialDefinición general
Definir especificaciones. Determinar las funciones del sistema. Definir el principio de funcionamiento. Definir componentes y requerimientos
de cada uno de ellos.
Modelar y analizar cada componente. Seleccionar los materiales de cada
componente que cumplen los requerimientos definidos previamente.
Analizar los componentes en detalle. Seleccionar proceso de fabricación. Especificar planos de diseño.
Fabricación de un prototipo. Verificación de si el prototipo cumple las
especificaciones definidas inicialmente.En caso afirmativo, definir proceso
de producción.En caso negativo volver a las
etapas anteriores y modificar el diseño o la selección de materiales.
Análisis inicial de cada componente
Diseño detallado. Análisis detallado de componentes
Especificaciones de producto. Prototipo
Figura 2-2: Diagrama del proceso de diseno mecanico [13].
2. Metodo grafico: Este metodo se apoya en graficas (conocidas como mapas de mate-
riales), en las que se relacionan por pares ciertas propiedades de los materiales. En estos
mapas se puede hacer una aproximacion del material mas adecuado (perteneciente a
una determinada familia de materiales), con base en la relacion de las propiedades mas
importantes que debe poseer el componente.
3. Metodo con ayuda de bases de datos : En Internet existe una amplia gama de
bases de datos sobre materiales, que han sido construidas para comercializacion libre o
son distribuidas por vendedores de materiales. Estas bases de datos son el resultado de
investigaciones en ensayos de materiales, que parten del conocimiento de las principales
propiedades que se debe tener un material para un fin especıfico. Una base de datos
publica que ha adquirido gran importancia por la cantidad de datos y variedad de
materiales que maneja, puede ser consultada en la pagina web www.matweb.com.
Por tanto, teniendo en cuenta los objetivos formulados y los costos inesperados a la hora le
implementar el sistema, como lo son la reparacion o reemplazo de componentes, se determina
que para el diseno e implementacion del circuito electronico se utilizaran componentes con
14 2 Diseno del Prototipo
encapsulado tipo DIP (usado comunmente) y respecto a la implementacion del prototipo
mecanico se tiene la necesidad de disenar e implementar piezas removibles del sistema en
caso de dano o reparacion.
Cabe aclarar que algunos de los materiales y/o componentes que se utilizaron para el desa-
rrollo del proyecto, se seleccionaron debido a que el Grupo de Investigacion IDEAS de la
Universidad Distrital Francisco Jose de Caldas ya contaba con ellos, como la tarjeta progra-
madora para el microcontrolador.
2.3. Analisis de requerimientos del sistema
*Sensores:
*Motor DC*Adquisición datos: Microcontrolador *Comunicación serial PC
-Posición angular péndulo-Velocidad angular carro
*Base del carro*Carro*Péndulo*Llantas*Piezas mecánicas: Acoples*Anillo colector (Slip Ring)
Parte Mecánica
Sistema de Péndulo Invertido de Trayectoria Circular
Figura 2-3: Partes principales del sistema.
Para el desarrollo del prototipo se ha de tener en cuenta (Ver Fig. 2-3):
Funcionamiento alambrico en la planta. El sistema debe tener su propio sistema de
alimentacion y no ira a bordo del carro para disminuir su peso y no necesitar un motor
de mayor tamano.
Sensores: Para el correcto funcionamiento del sistema se requiere principalmente de
dos sensores, un sensor que mida el angulo de inclinacion del pendulo y otro que
mida la velocidad angular del carro.
Actuadores: Para esta planta solo se requiere de un actuador el cual corresponde a
un motor DC, este se encargara de dar movimiento al carro y de esta forma mantener
el pendulo en equilibrio.
Dado que la planta debe funcionar tanto para controladores analogos como digitales,
se debe llevar a cabo la transmision y recepcion de datos a un PC.
2.4 Seleccion de componentes para la parte electronica del sistema 15
Definida la parte electronica y circuiterıa del prototipo, se disena la estructura mecanica
sobre la cual ira montado el sistema de pendulo invertido, de igual forma a partir de
estas dos ultimas, se disenan las piezas mecanicas para el debido funcionamiento de la
planta.
2.4. Seleccion de componentes para la parte electroni-
ca del sistema
2.4.1. Sensores
Sensor para el angulo de inclinacion
Potenciometro lineal: Dado que el sistema a implementar es de un unico eje se puede
llevar a cabo la medida del angulo a partir de un potenciometro; por tanto, se selecciona un
potenciometro lineal con un giro aproximado de 270, ya que el angulo del pendulo variara
en un rango maximo de [−90, 90]. (Fig. 2-4).
Figura 2-4: Potenciometro.
Sensor de velocidad del carro
Encoder: E22A Encoder optico incremental PITTMAN. En la Tabla 2-1 se pueden observar
las caracterısticas de este encoder y en la Fig. 2-5 se puede observar un diagrama esquematico
del mismo.
VCC
GND
ChA
ChB
Figura 2-5: Encoder [14].
16 2 Diseno del Prototipo
Tabla 2-1: Tabla de datos encoder Pittman serie E22A [14].Datos encoder Sımbolo Unidades Valor
Resoluciones disponibles - - 128, 256
Salida - - 2 canales en cuadratura
Interfaz de salida - - Compatible con TTL
Voltaje de alimentacion VCC VDC 4.5 a 5.5
Suministro de corriente ICC mA 20 max
Voltaje maximo de salida VOH V 2.4 min
Voltaje mınimo de salida VOL V 0.5 max
Frecuencia maxima de operacion fmax kHz 40
Temperatura maxima de operacion θmaxC -20 a 85
Peso (masa) WE g 3.7
2.4.2. Motor
Teniendo en cuenta que toda la electronica al interior del sistema funcionara con fuentes DC
de ±12V , lo mas natural es utilizar un motor DC. Teniendo en cuenta que el mismo sera el
encargado de generar el movimiento del carro, para de esa forma producir movimiento en el
pendulo y lograr mantenerlo en la posicion vertical, el motor debe tener el torque suficiente
para mover el carro y la fuerza suficiente para generar movimientos bruscos que le permitan
al carro manter el pendulo en equilibrio. En ese sentido, resulta sensato pensar que un motor
DC convencional, que esta mas orientado a tener alta velocidad de giro y bajo torque, no
va a ser muy util. Por lo anterior, la forma de tener un motor DC con mayor torque es
utilizando un motorreductor, en el cual a medida que se reduce la velocidad, se aumenta el
torque generado.
Motorreductor: La informacion del motorreductor seleccionado se puede observar en la
Tabla 2-2 y una imagen del mismo se puede observar en la Fig. 2-6.
Tabla 2-2: Tabla de datos del motor.Datos Motor Sımbolo Unidades Valor
Voltaje de operacion VCC V -12 a 12
Velocidad sin carga VRPM RPM 200
Torque Stall Ts Kgf-cm 2
Figura 2-6: Motor.
2.4 Seleccion de componentes para la parte electronica del sistema 17
2.4.3. Microcontrolador
El microcontrolador seleccionado corresponde al MSP430G2553 de Texas Instruments que
se muestra en la Fig. 2-8 (a) ası como su diagrama funcional en la Fig. 2-8 (b), puesto que,
como se menciono anteriormente, ya se cuenta con su tarjeta programadora, adicionalmente
por sus ventajas como facilidad en la programacion, conocimiento previo que se posee del
mismo, dado que satisface las necesidades del sistema y debido a sus caracterısticas que
se muestran en la Tabla 2-3, ası como su estabilidad, velocidad y experiencia que se tiene
del mismo en el desarrollo de este tipo de aplicaciones, que arroja optimos y eficientes
resultados. Adicionalmente, porque la planta posee un tiempo de muestreo de 30 ms, y
en este microcontrolador la mınima es de 10 ms (se determino experimentalmente), y se
considera que un periodo de 30 ms es adecuado para la implementacion de los PWM (la mas
baja posible para la aplicacion); en cuanto a FLASH se usan 7166 B y de RAM 162 B, por
lo que este microcontrolador es suficiente y adecuado para la aplicacion, sin embargo, este
microcontrolador tiene un costo mayor a otros en el mercado con caracterısticas similares.
Tabla 2-3: Caracterısticas microcontrolador MSP430G2553 [15].Encapsulado PDIP
Pines 20
Voltaje Alimentacion 1,8 V-3,6 V
Consumo de energıa Modo activo: 230 µA a 1 MHz y 2,2 V
Modo espera: 0,5 µA
Modo dormido: 0,1 µA
Arquitectura RISC 16 bits
Tiempo ciclo de instruccion 62,5 ns
Frecuencia Interna: 16 MHz
Externa: 32 KHz
RAM 512 B
FLASH 16 KB
UART 1
I2C 1
SPI 1
ADC 8 × 10 bits
PWM 3
JTAG 1
Timers 2 × 16 bits
Puertos I/O 16
Temperatura −40C a 85C
Fabricante Texas Instruments
18 2 Diseno del Prototipo
(a) Microcontrolador MSP430G2553.
(b) Diagrama Funcional.
Figura 2-7: Microcontrolador MSP430G2553 [15].
Por tanto, para el desarrollo de la programacion del microcontrolador que permita la correcta
interaccion de los componentes de la planta se ha de tener en cuenta:
Interrupciones de pin de entrada: Para la deteccion de flancos de subida y bajada del
canal del encoder, como para la deteccion de la habilitacion o des habilitacion de la
comunicacion serial del microcontrolador.
2.4 Seleccion de componentes para la parte electronica del sistema 19
Modulo ADC en secuencia: Para la captura del voltaje otorgado por el potenciometro
lineal y del motor.
Modulos PWM: Se deben implementar dos PWM para otorgar a la salida del micro-
controlador los valores correspondientes a angulo de inclinacion y velocidad.
Modulo de comunicacion UART: Para la comunicacion entre microcontrolador y PC.
GPIO (Entradas y salidas de proposito general): El sistema posee dos entradas adicio-
nales:
• Habilitacion o deshabilitacion de la comunicacion serial, para que de esta ma-
nera el microcontrolador reconozca cual es el valor del voltaje en el motor, si el
capturado por el ADC o el capturado por el receptor del microcontrolador en la
comunicacion serial con el PC.
Y tres salidas:
• Para enviar datos binarios (10 bits) al DAC.
• Reloj para sincronizar el DAC con el microcontrolador.
• Para activar la captura de datos por el DAC, activo en bajo.
Cabe mencionar que se utiliza el oscilador interno del microcontrolador y se ajusta al maximo
(16 MHz) para trabajar el micro a maxima velocidad, y se selecciona teniendo en cuenta
que la velocidad de actualizacion del DAC es de 1,21 MHz y que la tarjeta de comunicacion
trabaja con un frecuencia de 12 MHz, por lo que la frecuencia seleccionada es suficiente.
2.4.4. Modulo de comunicacion
A pesar de que se cuenta con el Launchapad del microcontrolador, este no se usa para la
comunicacion, debido a que se necesita para la ejecucion y depuracion de otros proyectos, por
tanto, para la comunicacion entre planta y PC se utiliza un modulo que se compone de un
integrado FT232, que es un conversor de interfaz serial USB-UART y realiza la comunicacion
vıa mini USB. En la Fig. 2-8(a) se puede observar el modulo y en la Fig. 2-8(b) la conexion
del integrado con un microcontrolador. Este integrado no requiere de cristal externo, su
EEPROM es de 1024 bits, con tasas de transferencia de datos de 300 baudios a 3 Mbaudios
a niveles TTL. Como se menciono anteriormente tiene soporte para la interfaz UART para
7 u 8 bits. Puede alimentarse entre 1,8 V a 5V , funciona en un rango de temperatura de
−40C a 85C y es compatible con la USB 2.0 a maxima velocidad. Para la instalacion
de los drivers para el respectivo funcionamiento del modulo se debe consultar la pagina:
http://www.ftdichip.com/Documents/InstallGuides.htm
20 2 Diseno del Prototipo
(a) Modulo FT232 [16].
(b) Diagrama de conexion a microcontrolador [17].
Figura 2-8: FT232.
Cabe mencionar que el microcontrolador se ajusto a un tasa de 9600 bps (lo que corresponde
a 9600/8 = 1200 baudios), dado que se observo que en MatLabr se opera bien con esta
velocidad, otra genera problemas en la comunicacion volviendola mas lenta.
2.4.5. Otros componentes electronicos
Adicionalmente se debe contar con:
DAC : Para la etapa de potencia del motor. El DAC a utilizar corresponde al TLC5615
de Texas Instruments, es un conversor digital-analogico de 10 bits, opera con un voltaje
de alimentacion de 5 V, tiene un consumo maximo de 1,75 mW, tasa de actualizacion
de 1,21 MHz y un tiempo de asentamiento de 12,5 µs a 0,5 LSB. Su rango de tempera-
tura comprende los −40C a 85C, tiene un rango de voltaje de salida que es dos veces
2.4 Seleccion de componentes para la parte electronica del sistema 21
la tension de referencia. El diagrama funcional del DAC se muestra en la Fig. 2-9 y de
igual forma en la Tabla 2-4 se muestran las funciones de las terminales del DAC.
Figura 2-9: Diagrama funcional del DAC [18].
Tabla 2-4: Funciones terminales del DAC TLC5615 [18].Nombre Terminal No. Pin I/O Descripcion
DIN 1 I Entrada de datos seriales
SCLK 2 I Entrada de reloj serial
CS 3 I Seleccion de chip, activo en bajo
DOUT 4 O Salida de datos seriales para la conexion en serie
AGND 5 Tierra analogica
REFIN 6 I Entrada de referencia
OUT 7 O Salida de voltaje analogico
VDD 8 Voltaje de alimentacion
Reguladores de voltaje : Para la alimentacion del microcontrolador y el DAC.
Atenuador : Para capturar con el microcontrolador (ADC) el voltaje en el motor.
Amplificadores: Para otorgar el valor del angulo cuyo intervalo corresponde a (−90, 90)
en valores de voltaje a (−9 V, 9 V ), para el valor de la velocidad cuyo intervalo se su-
pone en (−10 rad/s, 10 rad/s) en valores de voltaje a (−10 V, 10 V ) y otro para el
valor de voltaje en el motor en un rango de (−12 V, 12 V ).
Comparadores de voltaje : Para la respectiva etapa de proteccion a las salidas del
sistema.
Transistores : Para la etapa de potencia del motor, tanto NPN como PNP, ası como
para la proteccion a las salidas del sistema.
22 2 Diseno del Prototipo
Condensadores : Para filtrar el ruido generado en el circuito debido al motor.
Anillo Colector (Slip Ring): Para evitar que los cables de alimentacion y comu-
nicacion que van del carro a la base del mismo, de tal forma que este puede girar mas
de 360.
Los componentes utilizados para el diseno electronico se muestran en la Tabla 2-5.
Tabla 2-5: Componentes electronicos.
Elementos Objetivo Cantidad Referencia
Microcontrolador Analisis de las variables del sistema 1 MSP430G2553
Potenciometro lineal Sensor de captura angulo inclinacion 1
Motor Movimiento carro 1
Encoder Sensor velocidad del carro 1 Pittman E22A
DAC Etapa potencia motor 1 TLC5615
Tarjeta FT232 Comunicacion con el PC 1 FT232
Transistores encapsulado TO-220 Etapa potencia motor 2
Transistor NPN 1 TIP41
Transistor PNP 1 TIP42
Transistores encapsulado TO-92 Varios 6
Transistor NPN 5 2N3904
Transistor PNP 1 2N3906
Amplificadores Operacionales Atenuador voltaje motor 5 LF353
Amplificador voltaje motor
Seguidor voltaje etapa potencia motor
Amplificador angulo
Amplificador velocidad
Comparador para proteccion angulo 1
Comparador para proteccion velocidad 1
Seguidor voltaje para canal A del encoder
Regulador de voltaje Alimentacion: 3.6 V del microcontrolador 1 LM317
Regulador de voltaje Alimentacion: 5V del DAC 1 LM7805
Resistencias Varios 55
Switch Activar/desactivar Comunicacion micro-PC 2
Encendido/apagado de la planta
Reles Proteccion salidas sistema 2 JQC-3F
Condensadores Varios 6
LED’s Indicadores 5
2.5 Diseno electronico 23
2.5. Diseno electronico
Una vez seleccionados los principales componentes electronicos y electromecanicos, en el
caso del motor, es necesario disenar los circuitos electronicos que permitan que todos los
componentes previamente seleccionados funcionen de manera adecuada en el sistema. A
continuacion se detallan los circuitos electronicos disenados y se explica su finalidad.
2.5.1. Captura y entrega datos
Captura del voltaje del motor
Cuando la entrada del sistema es analogica, se debe proteger al microcontrolador de los
voltajes que sobrepasan su capacidad y poder capturar los datos otorgados, se procede a
realizar un atenuador para el voltaje del motor de (12 V,−12 V ) a (3,6 V, 0 V ) para un
V0 = 320Vi + 1,8, tal y como se observa en la Fig. 2-10.
-Vcc
Vcc
34K
5.1K
34K
3K
5.1K
LF353
ADCMotorVMotor
Vcc
Figura 2-10: Atenuador para capturar el voltaje del motor.
Captura voltaje potenciometro lineal
Para capturar el voltaje sobre el potenciometro, este se alimenta con los 3,6V de alimenta-
cion del microcontrolador y ası evitar una atenuacion innecesaria, de esta forma el pin del
potenciometro es enviado directamente a una entrada ADC en el microcontrolador ( P1.3
Ver Fig. 2-15).
Captura flancos canal A del encoder
Para capturar los flancos del canal del encoder, este se alimenta con los 3,6V de alimentacion
del microcontrolador y ası evitar una atenuacion innecesaria. Sin embargo, en las pruebas
realizadas se observo que al conectar el canal del encoder directamente al microcontrolador
24 2 Diseno del Prototipo
se producıa una caıda de voltaje, razon por la cual se tomo la decision de implementar un
seguidor de voltaje entre el canal del encoder y la entrada del microcontrolador tal y como
se observa en la Fig. 2-11.
-Vcc
Vcc
LF353
ChAChA-Encoder
Figura 2-11: Seguidor de voltaje para el canal del encoder dirigido al microcontrolador.
Entrega voltaje correspondiente al angulo y velocidad
Dado que las salidas del sistema son analogas y corresponden a los voltajes que representan
en angulo del pendulo y la velocidad del carro, para la generacion de estos voltajes se imple-
mentan dos amplificadores tal y como se observa en la Fig. 2-12. Un amplificador para el
voltaje correspondiente al valor del angulo de (0 V, 3,6 V ) a (−9 V, 9 V ) para un V0 = 5Vi−9,
y otro amplificador para el voltaje correspondiente al valor de la velocidad de (0 V, 3,6 V )
a (−10 V, 10 V ) para un V0 = 509Vi − 10. Cabe aclarar que el valor del voltaje otorgado, se
genera en el microcontrolador a partir de un PWM.
Ángulo
-Vcc
Vcc2.4K
12K
16K
3K
LF353PWMAng
(a) Entrega valor angulo.
-Vcc
Vcc
1.8K
10K
22.5K
2.4K
LF353
VelocidadPWMVel
12K
Vcc
(b) Entrega valor velocidad.
Figura 2-12: Amplificadores para otorgar los voltajes correspondientes a los valores del
angulo y velocidad dados por el microcontrolador.
2.5.2. Etapa potencia motor
Para la etapa de potencia del motor, se decidio usar un DAC el cual se alimenta con 5V (Fig.
2-13 (a)). A continuacion del DAC, se procede a implementar un amplificador de (0 V, 5 V )
2.5 Diseno electronico 25
a (−12 V, 12 V ) para un V0 = 245Vi−12 (Fig. 2-13 (b)). Finalmente, seguido del amplificador
se implementa la etapa de potencia Darlington, tal y como se muestra en la Fig. 2-13 (c).
TLC5615
DIN
CLK
CS
VDD
OUT
REFIN
AGNDDOUT
Gnd
7805 OutInVcc
1K
1K
100nF
(a) DAC.
-Vcc
Vcc
2.5K
12K
10K
3K
LF353
VolMotoroutDAC
12K
Vcc
(b) Amplificador.
Vcc
-Vcc
-Vcc
Vcc
LF353VolMotor
(c) Etapa de potencia.
Figura 2-13: Etapa de potencia para el motor.
2.5.3. Comunicacion microcontrolador-PC
La comunicacion entre microcontrolador y PC se realiza por medio de la Tarjeta FT232 [16],
tal y como se muestra en la Fig. 2-14.
2.5.4. Microcontrolador
En la Fig. 2-15, se observa el diagrama de conexion del microcontrolador. Dado que el
microcontrolador tiene una polarizacion de 3.6V y la fuente es de 12V, se ajusta un regulador
de voltaje de 3.6V con un LM317. En la figura se observan todos los modulos que se requieren
del microcontrolador, donde conectar cada sensor, el motor y demas componentes al mismo,
ası como sus salidas y entradas.
26 2 Diseno del Prototipo
TX
RX
FT232
123 45
3.3V
5.0V
RXD
TXD
GND
Figura 2-14: Comunicacion microcontrolador-PC por medio de la tarjeta FT232.
In OutAdj
LM317
560
1K
Vcc
MSP430G
2553
VCC
P1.0 P1.1
P1.3
P1.4P1.5
P2.1P2.2
GND
XIN
XOUT
TESTRST
P1.7P1.6
P2.5
P2.4
P2.3
P1.2
P2.0
TX
Figura 2-15: Diagrama circuital microcontrolador.
2.5.5. Etapa de proteccion para las salidas
Para proteger las salidas del sistema (angulo y velocidad) de cortos con la fuente, se procede
a disenar dos comparadores de tal forma que cuando el voltaje en dicho pin supere los ±10V ,
dado que la fuente es de ±12V , se dispara cualquiera de los comparadores y por medio de
una OR disenada con transistores, se envıa un voltaje de saturacion para activar un rele y
abrir el circuito. Ver Fig. 2-16.
2.6. Seleccion de componentes para la parte mecanica
del sistema
2.6.1. Seleccion componentes y piezas
Para la parte mecanica de la planta se ha de tener en cuenta que esta debe contar con:
Llantas que permitan el movimiento del carro. (Fig. 2-17).
Carrocerıa sobre la cual se montara el carro, sobre la cual se montaran las llantas,
el pendulo, motor, encoder, potenciometro y las piezas necesarias para acoplar los
componentes y dar la libertad de movimiento al carro.
2.6 Seleccion de componentes para la parte mecanica del sistema 27
1K
10K
Vcc
1K
10K
-Vcc
-Vcc
Vcc
LF353
ÁnguloProtec
-Vcc
Vcc
LF353
10K
10K
3904
4.7K
Vcc
3904
Ángulo
Figura 2-16: Proteccion de las salidas angulo y velocidad a cortos con la fuente.
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-17: Llanta.
Pista o base circular sobre la cual se movera el carro y dentro de la cual se colocaran
las respectivas fuentes de voltaje ası como la PCB, la conexion al PC por mini USB y
la cual servira para la proteccion de los circuitos y de igual forma para para proveer al
usuario las variables necesarias para el funcionamiento del controlador
Anillo Colector (Slip Ring) para el libre movimiento del carro, de tal forma que este
pueda girar libremente sin enredar los cables que conectan el carro con su base. El
28 2 Diseno del Prototipo
anillo colector usado, fue fabricado por adafruit [19], permite 6 conexiones con valores
maximos de 240V 2A cada uno, con un calibre de 26 AWG y una velocidad nominal
de 300 RPM (o mas velocidad pero se reduce la vida util y se vuelve mas sensible al
ruido), en la Fig. 2-18 se pueden observar las dimensiones de dicho anillo.
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-18: Anillo Colector (Slip Ring).
El anillo colector, anillo de deslizamiento o bien conocido como Slip Ring, es un disposi-
tivo electromecanico que permite la transmision de senales electricas de una estructura
estacionaria a una estructura giratoria, eliminando los efectos de la torsion de los cables
en movimiento. El anillo colector consiste en una corona circular conductiva montada
en un eje y aislada de el, donde las conexiones electricas se realizan con contactos de
deslizamiento, es decir, las conexiones fijas o escobillas del mismo, estan en contacto
constante con el anillo, transfiriendo ası la energıa electrica del exterior, a la parte ro-
tativa del sistema [20]. En la Fig. 2-19, se puede observar con mayor detalle las partes
y el funcionamiento de este dispositivo.
Pendulo, varilla vertical que realiza el respectivo movimiento angular y la cual se desea
mantener en equilibrio sobre su eje vertical.
Pieza mecanica que permita el movimiento libre del pendulo, limite el rango de varia-
cion del angulo en el mismo y sea anti choques para evitar danos debido al golpe del
pendulo con el carro en momentos de caıda libre.
Acople pendulo y potenciometro, para que de esta manera el potenciometro se mueva
conforme se mueve el pendulo, y ası realizar una lectura adecuada del angulo o la
posicion angular en la que se encuentra el pendulo
Acoples motor, para que este ajustado y estable en el carro
Acople motor a una llanta, para transmitir directamente el movimiento del motor a la
llanta y llevar a cabo el movimiento del carro
2.6 Seleccion de componentes para la parte mecanica del sistema 29
(a) Funcionamiento de un anillo colector [21]. (b) Slip Ring de 4 anillos [20].
Figura 2-19: Funcionamiento de un anillo colector.
Acople llanta libre, para el movimiento adecuado de la otra llanta del carro y para
mantenerla estable.
Acople encoder, para mantenerlo estable sobre el carro.
Acople entre el carro y su base por medio del anillo colector.
Las piezas utilizadas para el diseno mecanico se resumen en la Tabla 2-6.
2.6.2. Seleccion materiales
Teniendo en cuenta las caracterısticas de cada componente mecanico y la funcionalidad que
deben cumplir, para la implementacion de la carrocerıa y la base del carro se decide utilizar
el material de acrılico, mientras que para el acople del motor a la llanta, acero inoxidable
dada su dureza, y para las demas piezas mecanicas, aluminio.
Adicionalmente, al tener construido el prototipo y ponerlo en funcionamiento, se observo
que toda la planta tenıa un movimiento rotatorio, es decir se movıa en cırculos, por el efecto
que genera la fuerza centrıfuga del carro sobre la base; por tal motivo, se determino usar
caucho debajo de la base del carro para generar la suficiente friccion de la base sobre el suelo
y anular dicho movimiento rotatorio.
30 2 Diseno del Prototipo
Tabla 2-6: Piezas Mecanicas.Elementos Objetivo Cantidad
Llantas Movimiento del carro 2
Anillo Colector (Slip Ring) Giros del carro por mas de 360 1
Pendulo Pieza a estabilzar 1
Acople carro-anillo colector Asegurar anillo colector al carro 1
Acoples motor Asegurar motor al carro 2
Acople motor-llanta Transmision movimiento a la llanta 1 1
Acople llanta libre Movimiento libre llanta 2 1
Acople encoder Asegurar encoder al carro 1
Acople pendulo-potenciometro Sensar valor angulo 1
Pieza mecanica pendulo Asegurar, permitir movimiento del pendulo 1
Limitar rango del angulo del pendulo
Carrocerıa Carro 1
Pista Soporte para el carro 1
Acrılico
Es un polımero (compuesto quımico), dentro de sus caracterısticas tecnicas se encuentran
[22]:
Ligero con una densidad de 1190 kg/m3.
Resistencia al impacto.
Tiene un menor peso que el vidrio y tiene alta capacidad de conservacion.
Transparencia superior al 92 % (el mas transparente de los plasticos).
Resistencia quımica, resiste a la mayorıa de las substancias quımicas.
Resistencia a la intemperie, el acrılico soporta largas horas a la exposicion de los rayos
ultravioletas, sin danar su estructura y los colores del mismo.
Estabilidad dimensional, si bien la lamina de acrılico se expande y contrae a conse-
cuencia de cambios de temperatura y niveles de humedad, no encoge con la edad.
Excelente aislante termico y acustico, es un aislante electrico con una constante dielectri-
ca elevada.
Facil combustion, no produce gases toxicos al arder.
Facilidad de mecanizacion y moldeo.
Reciclabilidad, el acrılico es sumamente util ya que puede ser reciclado en un 100 %.
Tolerado por el cuerpo humano.
2.6 Seleccion de componentes para la parte mecanica del sistema 31
Aluminio
Es el tercer elemento quımico mas abundante de la corteza terrestre; este metal posee una
combinacion de propiedades que lo hacen muy util en ingenierıa mecanica [23], tales como:
Baja densidad: 2700Kg/m3.
Dureza (resistencia a dejarse penetrar).
Ductilidad, permite la fabricacion de cables electricos.
Maleabilidad, permite la produccion de laminas muy delgadas.
Resistencia al desgaste aceptable.
De facil mecanizado dado que es un material blando, facilmente soldable, que forma
aleaciones con otros metales para mejorar las propiedades mecanicas.
Permite la fabricacion de piezas por fundicion, forja (compresion) y extrusion.
Gracias a su alto estado de oxidacion, al contacto con el aire se forma rapidamente
una capa protectora de oxido de aluminio, proporcionandole resistencia y durabilidad,
lo que lo hace resistente a la corrosion
El aluminio posee 1/3 de la rigidez del acero.
Es un material facilmente reciclable, sin un elevado coste.
Acero Inoxidable
Es una aleacion de hierro con pequenas cantidades de carbono, 10 % de cromo y otros elemen-
tos, con gran resistencia a la corrosion, dentro de sus caracterısticas tecnicas se encuentran
[24]:
Tenacidad, es capaz de absorber energıa sin producir fisuras (resistencia al impacto).
Ductilidad, es relativamente ductil, con el se obtienen hilos delgados llamados alambres.
Maleable, se pueden obtener laminas delgadas llamadas hojalata.
Resistencia al desgaste, es resistente a la erosion cuando esta en contacto de friccion
con otro material.
Maquinabilidad, permite una buena mecanizacion en maquinas y/o herramientas antes
de recibir un tratamiento termico.
Dureza, la densidad promedio del acero es 7850 kg/m3, lo que lo hace resistente a la
penetracion.
32 2 Diseno del Prototipo
Trabajabilidad, se pueden cortar y perforar a pesar de que es muy resistente y aun ası
siguen manteniendo su eficacia.
Soldabilidad, es un material que se puede unir por medio de soldadura y gracias a esto
se pueden componer una serie de estructuras con piezas rectas.
Forjabilidad, al calentarse y al darle martillazos se les puede dar cualquier forma desea-
da.
Alta resistencia mecanica, los aceros son materiales con alta resistencia mecanica al
someterlos a esfuerzos de traccion y compresion.
Reciclabilidad.
Caucho
Es un polımero elastico con una densidad de 950 Kg/m3, dentro de sus caracterısticas
tecnicas se encuentran [25]:
Elasticidad, la cualidad mas importante de caucho es su elasticidad, puede ser estirado
o compactado y a continuacion, vuelve a su forma original.
Flexibilidad.
Maleabilidad.
Resistencia dielectrica.
Resistencia al desgarre.
Resistencia a la abrasion o desgaste por friccion.
Resistencia al impacto.
Resistencia a la intemperie.
Amortiguador de vibraciones.
2.7. Diseno mecanico (aproximado)
En la Tabla 2-7 se pueden observar los accesorios utilizados para la construccion del prototipo
y el ensamble de las piezas del sistema.
2.7 Diseno mecanico (aproximado) 33
Tabla 2-7: Accesorios para el ensamble de las piezas.
Nombre Accesorio Cantidad
Tornillo 1/8′′
8
Longitud: 28 mm TRL18
Tornillo 1/8′′
28
Longitud: 18 mm TRC18
Tuerca 1/8′′
40
TU18
Arandela 30
AR
Prisionero bristol 1/8′′
4
Longitud: 6 mm PB18
Rodamiento 1/8′′
1
Diametro exterior: 7 mm RO18
Rodamiento 3/8′′
2
Diametro exterior: 22 mm RO38
2.7.1. Carro
El Carro es el encargado de generar el movimiento necesario para mover el pendulo sobre
el y mediante el controlador mantenerlo en equilibrio; en la Fig. 2-20 se puede observar el
esquema general del carro con cada una de sus partes.
Partes del carro
Teniendo en cuenta las dimensiones de los accesorios mostrados en la Tabla 2-7, ası como del
motor, encoder, potenciometro y anillo colector, se procede a disenar las piezas del sistema,
cuyas medidas se encuentran en unidades de mm:
1. Pendulo. Se disena de tal forma que en un extremo tiene una terminacion en tornillo
para poder ser atornillada en la pieza que acopla el pendulo con el potenciometro; los
34 2 Diseno del Prototipo
4
2
13
6
10
12
9
8
11
5
3
1
7
Figura 2-20: Carro.
parametros a tener en cuenta en el pendulo son su grosor y longitud, sin embargo, el
pendulo usado consiste en una antena en la cual se puede variar la longitud del mismo,
por lo cual el pendulo tiene una longitud mınima de 32,5 cm y maxima de 80 cm. Ver
Fig. 2-21.
Figura 2-21: Pendulo.
2. Pieza mecanica para libre movimiento del pendulo. Para esta pieza se tuvo en
cuenta la dimensiones de los rodamientos RO38, de las varillas limitadoras y se disena
en forma de arco debido el movimiento angular del pendulo. Ver Fig. 2-22.
3. Acople potenciometro-pendulo. Para este acople se tuvo en cuenta las dimensiones
2.7 Diseno mecanico (aproximado) 35
(a) Vista Frontal. (b) Vista Superior.
(c) Vista General.
Figura 2-22: Pieza mecanica para el movimiento del pendulo.
del potenciometro, del pendulo y la pieza mecanica anterior. Ver Fig. 2-23.
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-23: Acople potenciometro-pendulo.
4. Acople motor. Para este acople se tuvo en cuenta las dimensiones del motor. Ver Fig.
2-24.
5. Acople llanta-motor. Para este acople se tuvo en cuenta las dimensiones de la llanta
y el eje del motor. Ver Fig. 2-25.
6. Acople llanta libre con chumacera. Para este acople se tuvo en cuenta las dimen-
36 2 Diseno del Prototipo
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-24: Acople motor.
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-25: Acople motor-llanta.
siones del eje de la llanta, el rodamiento RO18 y la altura del motor sobre la base del
carro. Ver Fig. 2-26.
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-26: Chumacera llanta libre.
7. Acople encoder. Para este acople se tuvo en cuenta las dimensiones del encoder. Ver
Fig. 2-27.
8. Acople anillo colector-carro. Para este acople se tuvo en cuenta las dimensiones
del anillo colector. Ver Fig. 2-28.
9. Anillo Colector (Slip Ring).
10. Llantas.
11. Mini PCB.
2.7 Diseno mecanico (aproximado) 37
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-27: Acople encoder.
12. Motor.
13. Potenciometro.
(a) Vista Frontal. (b) Vista Superior. (c) Vista General.
Figura 2-28: Acople anillo colector-carro.
Ensamble carrocerıa
Se determina teniendo en cuenta las dimensiones de los acoples, la pieza mecanica del pendu-
lo, el motor, el encoder, el potenciometro, las llantas y la mini PCB, ası como el desplaza-
miento lineal que realizara la pieza mecanica sobre la cual se soporta el pendulo. En la Fig.
2-29, se muestran cada una de las caras que componen la carrocerıa y de igual forma se
puede observar como ensamblar cada una de ellas.
1. Tapa Inferior. (Fig. 2-30 (a)).
2. Tapa Superior. (Fig. 2-30 (b)).
3. a 10. Paredes. (Fig. 2-31).
38 2 Diseno del Prototipo
Figura 2-29: Ensamble Carrocerıa.
(a) Tapa Inferior. (b) Tapa Superior.
Figura 2-30: Tapas carro.
2.7 Diseno mecanico (aproximado) 39
(a) Tapa 3. (b) Tapa 4. (c) Tapa 5. (d) Tapa 6.
(e) Tapa 7. (f) Tapa 8. (g) Tapa 9. (h) Tapa 10.
Figura 2-31: Paredes del carro.
2.7.2. Base del carro
14
11
12
10
15
13
2
3
1
4
6
5
8
7
9
Figura 2-32: Base del carro.
Sobre la base, el carro ejecutara sus trayectorias circulares (derecha-izquierda) y adicional-
mente dentro de ella se ensambla el circuito electronico, la alimentacion general del sistema,
conectores, indicadores, entre otros; en la Fig. 2-32 se puede observar el esquema general de
la base carro con cada una de sus partes.
40 2 Diseno del Prototipo
Partes de la base carro
1. Alimentacion planta: Conexion planta con tomacorriente.
2. Interruptor encendido/apagado de la planta: Encendido hacia arriba.
3. LED indicador encendido planta: Cuando se observa que ambos LED’s estan en-
cendidos (LED azul y LED verde), indica que el sistema se esta alimentando correc-
tamente, sin embargo, si solo se enciende el LED azul quiere decir que el sistema solo
se esta alimentando con VCC y si se enciende unicamente el LED verde solo se esta
alimentando con -VCC.
4. Conector entrada voltaje motor: Voltaje otorgado por el controlador al motor en
un rango de voltaje de −12 V a 12 V.
5. Conector salida angulo: Valor analogico del angulo en un rango de voltaje de −9 V
a 9 V, para un rango en el angulo de −90o a 90o.
6. LED indicador corto salida angulo-fuente: Cuando el LED (azul claro) esta en-
cendido, indica que se esta haciendo corto con VCC o -VCC.
7. Conector salida velocidad: Valor analogico de la velocidad angular del carro en un
rango de voltaje de −10 V a 10 V, para un rango de velocidad de -10 rad/s a 10 rad/s.
8. LED indicador corto salida velocidad-fuente: Cuando el LED (azul oscuro) esta
encendido, indica que se esta haciendo corto con VCC o -VCC.
9. Conector tierra: Para acoplar las tierras de la planta con la del controlador.
10. Conector comunicacion planta-PC: Para conectar un cable mini USB y de esta
manera establecer comunicacion serial entre la planta y el computador.
11. Interruptor encendido/apagado comunicacion: Encendido hacia arriba.
12. LED indicador encendido comunicacion: Cuando el LED (rojo) esta encendido
indica que la comunicacion se esta ejecutando.
13. Anillo Colector (Slip Ring): Evita que se enreden los cables entre la base del carro
y el carro.
14. PCB.
15. Fuentes de alimentacion para el sistema.
2.7 Diseno mecanico (aproximado) 41
Ensamble base del carro
Se determina teniendo en cuenta las dimensiones del carro y que este tendra un desplazamien-
to angular, ası como de las fuentes, la PCB y los respectivos conectores para la alimentacion
del sistema, la comunicacion vıa mini USB, los conectores de acceso al sistema, LED’s indi-
cadores, entre otros. En la Fig. 2-33, se muestran cada una de las caras que componen la
base y de igual forma se puede observar como ensamblar cada cara.
Figura 2-33: Ensamble de la Base del Carro.
(a) Tapa Inferior. (b) Tapa Superior.
Figura 2-34: Tapas base.
11. Tapa Inferior. (Fig. 2-34 (a)).
42 2 Diseno del Prototipo
12. Tapa Superior. (Fig. 2-34 (b)).
13. a 17. Paredes. (Fig. 2-35).
(a) Tapa 13. (b) Tapa 14.
(c) Tapa 15. (d) Tapa 16.
(e) Tapa 17.
Figura 2-35: Paredes de la base del carro.
2.8. Consideraciones
Para la lectura del angulo del pendulo se penso en un principio trabajar con un girosco-
po y acelerometro, por lo cual se realizaron pruebas con el sensor MPU6050 [26]; el
cual es un dispositivo MotionTracking (captura de movimiento) integrado de 6 ejes
que combina un giroscopio de 3 ejes, acelerometro de 3 ejes, y un procesador digi-
tal de movimiento (DMP). La comunicacion con todos los registros del dispositivo se
realiza utilizando I2C a 400 KHz. Sin embargo, teniendo en cuenta que el pendulo
del sistema solo tiene un grado de libertad, este tipo de sensores no son tan necesa-
rios para esta aplicacion y pueden utilizarse sensores mas sencillos, economicos y de
2.8 Consideraciones 43
menor costo computacional. Adicionalmente, el fabricante de este sensor no da infor-
macion completa del dispositivo lo cual dificulta el desarrollo optimo del mismo y en
las pruebas realizadas con este sensor se observo que este dispositivo se descalibraba
continuamente y presentaba variaciones considerables en cada prueba, por lo cual dada
su inestabilidad no era confiable. De esta forma se determino usar un potenciometro
lineal para la lectura del angulo en el pendulo.
Como inicialmente se formulo trabajar de forma inalambrica se determino utilizar para
la comunicacion entre microcontrolador y PC los Modulos XBEE, [27] estos modulos
son utilizados para conectividad inalambrica y pueden ser configurados desde el PC
utilizando el programa X-CTU. Los modulos Xbee son faciles de utilizar, tienen buen
alcance (hasta 300ft (100 mts) en lınea vista para los modulos Xbee y hasta 1 milla
(1,6 Km) para los modulos Xbee Pro), de 9 entradas/salidas con entradas analogicas
y digitales, son de bajo consumo. Sin embargo como se menciono anteriormente, se
decidio realizar el prototipo de forma alambrica por lo cual estos modulos ya no eran
necesarios; y en lugar de ellos de determino usar una tarjeta FT232 [16] de Sigma
Electronica para la respectiva comunicacion.
El motor usado en principio para el movimiento del carro, correspondıa al motor PITT-
MAN Serie 6213 (motor con el que cuenta el grupo de investigacion), sin embargo, al
realizar pruebas con este motor, ser observo que este no poseıa el torque necesario para
generar cambios en el pendulo del carro, razon por la cual se procedio a cambiarlo [28].
En cuanto al material de las piezas mecanicas, el acople entre el motor y la llanta, se
realizo en un principio con aluminio; sin embargo, despues de varios dıas de pruebas en
la planta, se observo que esta pieza empezo a dificultar el movimiento del carro dado
que empezo a deteriorarse y a doblarse, razon por la cual se tomo la decision de volver
a hacer la pieza en acero inoxidable, ya que este material es mas resistente.
En cuanto al disipador, en primer lugar se debe tener en cuenta los datos tecnicos de
los transistores utilizados [29], donde se indica que la potencia maxima disipada por
estos transistores, a temperatura ambiente de TA = 25C, corresponde a PD = 2 W .
Inicialmente, con el motor PITTMAN, se tenıa que la potencia que se debıa disipar
por estos transistores correspondıa a PD = 10,6 W , razon por la cual se determino
utilizar un disipador; de este modo se tiene que la resistencia RD del disipador [30]
corresponde a:
RD =TJ − TAPD
− (RJC +RCD) , (2-1)
donde TJ corresponde a la temperatura de juntura de los transistores, RJC la resistencia
juntura-contenedor y RCD la resistencia contenedor-disipador. Para evitar danos en
44 2 Diseno del Prototipo
los transistores, la temperatura de juntura se selecciona teniendo en cuenta que esta
no alcance ni supere su temperatura maxima permitida; de este modo, se utiliza un
coeficiente (K) de seguridad que selecciona el valor de temperatura comprendida entre
el 50 % y el 70 %. Por tanto, se selecciona un K = 0,6 y una TJ = K · TJMAX =
0,6·150C = 90C; segun el data del TIP41C suRJC = 1,92C/W , dado su encapsulado
TO220 y teniendo en cuenta que el transistor tiene contacto con mica, RCD = 1,4C/W
y por consiguiente RD = 2,812C/W . De esta manera, se busca en el mercado un
disipador con una resistencia igual o menor a esta de tal forma que disipe el calor
suficiente para evitar danos en los transistores.
El disipador utilizado, tiene las siguientes dimensiones [31], Largo= 50 mm, Ancho=
135 mm y Alto=20 mm, con una RD = 2,5C/W , el cual cumple con la resistencia
termica; sin embargo, luego de realizar el cambio del motor PITTMAN a un motorre-
ductor, se observo que la nueva potencia a disipar corresponde a PD = 1,59 W , lo cual
es menor a la potencia maxima disipada por los transistores, y una RD = 37,56C/W .
Por tanto, un disipador no es necesario en este caso; sin embargo por motivos de
seguridad y debido a que ya se contaba con el disipador, se decidio dejarlo.
A tener en cuenta:
Simulaciones: Las simulaciones de cada etapa se realizaron por medio de una version
gratuita de proteus. .
La programacion del microcontrolador se realizo por medio de Code Composer Studio
version 6.0.1., version gratuita.
Diseno Mecanico: El diseno de la parte mecanica planta se realizo por medio del pro-
grama Auto CAD version 2014, sobre el cual la Universidad tiene licencia.
Circuitos Impresos: El diseno de los circuitos impresos se realizaron por medio del
programa Eagle, version 7.1.0, version gratuita.
Capıtulo 3
Implementacion del Prototipo
3.1. Caracterizacion de sensores y motor
3.1.1. Potenciometro lineal
Para caracterizar el potenciometro lineal con el fin de obtener el angulo de inclinacion del
pendulo, se procede a graficar el valor obtenido por el ADC del microcontrolador (de 10 bits,
es decir el valor en LSB en un rango de [0, 1024]) contra el valor del angulo en determinada
posicion; de esta manera, se determina la lınea de tendencia del angulo de inclinacion respecto
al valor LSB, tal y como se muestra en la Fig. 3-1 (a). De igual forma dada la tolerancia de
los componentes electronicos, se procede a caracterizar tambien la amplificacion en el valor
del angulo, tal y como se observa en la Fig. 3-1 (b).
LSB0 200 400 600 800 1000
Áng
ulo
[°]
-100
-50
0
50
100Caracterización Potenciómetro
y = 0.23*x - 123
RealLineal
(a) LSB contra Angulo.
Ancho PWM Real0 200 400 600 800 1000 1200 1400
Anc
ho P
WM
Des
eado
0
200
400
600
800
1000
1200
1400Ajuste Ganancia Amplificador Valor Ángulo
y = 0.95*x + 53
RealLineal
(b) Anchos del PWM real contra el deseado.
Figura 3-1: Caracterizacion potenciometro y amplificador del valor del angulo con su res-
pectivas lıneas de tendencia.
De esta manera se obtiene que las funciones de conversion de los valores obtenidos por el
ADC del microcontrolador sobre el potenciometro lineal a valores del angulo de inclinacion
y el ajuste en el ancho del PWM para la ganancia del amplificador del valor del angulo
corresponden a:
46 3 Implementacion del Prototipo
θ = 0,23 ADCPOTLINLSB− 123, (3-1)
APWMDeseado = 0,95 APWMReal + 53. (3-2)
3.1.2. Motor
Para caracterizar el voltaje real en el motor, se procede a graficar el voltaje inicial en el
mismo contra el obtenido teniendo en cuenta el DAC, el atenuador y amplificador de voltaje
ası como la etapa de potencia y se determina la lınea de tendencia del voltaje inicial contra
el final; de esta manera se han de tener en cuenta dos caracterizaciones, una para el voltaje
analogico, dado que este valor debe ser atenuado en primer lugar, y otra para el voltaje
digital, el cual no se ve afectado por dicho atenuador de voltaje, tal y como se observa en la
Fig.3-2.
LSB Real100 200 300 400 500 600 700 800 900
LSB
Des
eado
0
200
400
600
800
1000
1200Ajuste Voltaje Motor (Analógico)
y = 0.97*x +7
RealLineal
(a) Analogico.
LSB Real0 200 400 600 800 1000
LSB
Des
eado
-200
0
200
400
600
800
1000
1200Ajuste Voltaje Motor (Digital)
y = 0.99*x - 22
RealLineal
(b) Digital.
Figura 3-2: Ajustes para el voltaje en el motor con su respectivas lıneas de tendencia.
De esta manera se obtiene que los ajustes para el valor en LSB del voltaje en el motor tanto
analogico como digital corresponden a:
Vana = 0,97 VMotor + 7, (3-3)
Vdig = 0,99 VMotor − 22. (3-4)
3.1.3. Encoder
Para caracterizar el encoder con el fin de obtener la velocidad del motor, se procede a graficar
la velocidad obtenida en rad/s, a partir de la medicion del angulo recorrido por el carro en
determinado tiempo para diferentes valores de voltaje y el valor del contador capturado por
el microcontrolador; de esta manera, se observa la relacion de las velocidades obtenidas y el
valor del contador, con la cual se determina la lınea de tendencia de la velocidad respecto al
valor del contador, tal y como se muestra en la Fig. 3-3 (a). De igual forma dada la tolerancia
3.1 Caracterizacion de sensores y motor 47
de los componentes electronicos, se procede a caracterizar tambien la amplificacion en el valor
de la velocidad, tal y como se observa en la Fig. 3-3 (b).
Contador-300 -200 -100 0 100 200 300
Vel
ocid
ad [r
ad/s
]
-6
-4
-2
0
2
4
6Caracterización Encoder
y = 0.023*x
RealLineal
(a) Contador microcontrolador contra velocidad.
Ancho PWM Real200 400 600 800 1000 1200 1400
Anc
ho P
WM
Des
eado
200
400
600
800
1000
1200
1400Ajuste Ganancia Amplificador Valor Velocidad
y = x - 4
RealLineal
(b) Anchos del PWM real contra el deseado.
Figura 3-3: Caracterizacion encoder y amplificador del valor de la velocidad con sus res-
pectivas lıneas de tendencia.
De esta manera se obtiene que la funcion que ajusta los valores del contador con los valores
reales de velocidad y el ajuste en el ancho del PWM para la ganancia del amplificador del
valor de la velocidad corresponden a:
V el = 0,023 Contador, (3-5)
APWMDeseado = APWMReal − 4. (3-6)
Adicionalmente, se grafica el voltaje del motor contra la velocidad tal y como se observa en
la Fig. 3-4; y allı se observa que la zona muerta del motor corresponde a 4 V , razon por la
cual, a traves del microcontrolador se modifica el valor de voltaje otorgado al mismo para
reducir la zona muerta a 2 V .
Voltaje Motor [V]-15 -10 -5 0 5 10 15
Vel
ocid
ad [r
ad/s
]
-6
-4
-2
0
2
4
6Comportamiento Motor
InicialModificado
Figura 3-4: Comportamiento del motor respecto a la velocidad.
48 3 Implementacion del Prototipo
3.2. Circuitos impresos
En la Fig. 3-5 se puede observar el esquematico definitivo del prototipo implementado, a
partir del cual se disenaron los circuitos impresos de las baquelas que se muestran en la Fig.
3-6.
Vcc -Vcc
Fuente
VCC
GN
D
-VCC
Toma corriente
10K 10K
-Vcc
Vcc34K
5.1K
34K
3K
5.1
K
LF353
Vcc
TLC
5615
DIN
CLK
CS
VDD
OUT
REFIN
AGNDDOUT
Gnd7805 OutIn
Vcc
1K
1K
100nF
-Vcc
Vcc2.5K
10K
10K
3.1
5K
LF353
12K
Vcc
-Vcc
Vcc
LF353
Vcc
-Vcc
-Vcc
Vcc
LF353
M
3.3mF
3.3mF3904
3906
TIP41
TIP42
In OutAdj
LM317
560
1K
Vcc
MSP430G
2553
VCC P1.0 P1.1
P1.3P1.4P1.5
P2.1P2.2
GNDXIN
XOUTTESTRSTP1.7P1.6P2.5P2.4P2.3
P1.2
P2.0 47K
PotL
in
3.6
V
100nF
22010K
-Vcc
Vcc2.4K
12K
16K
3K
LF353
16K
Vcc
1K
10K
Vcc
1K
10K
-Vcc
-Vcc
Vcc
LF353
-Vcc
Vcc
LF353
10K
10K
3904
4.7
K
Vcc
3904
18K
1K
Vcc
10K
3.6V
Encoder
VCC
GN
D
chA
-Vcc
Vcc1.8K
10K
22.5
K2.4
K
LF353
12K
Vcc
1K
10K
Vcc
1K
10K
-Vcc
-Vcc
Vcc
LF353
-Vcc
Vcc
LF353
10K
10K
3904
4.7
K
Vcc
3904
18K
1K
Vcc
10K
In/Out
V_M
oto
r
Ángulo
Velo
cidad
FT232123 45
3.3
V5.0
VRXD
TXD
GN
D
Figura 3-5: Esquematico del prototipo.
3.2 Circuitos impresos 49
(a) Circuito impreso general primera capa. (b) Circuito impreso general segunda capa.
(c) Circui-
to impreso
adicional.
Figura 3-6: Circuitos impresos del prototipo.
50 3 Implementacion del Prototipo
De igual forma en la Fig. 3-7 se pueden observar las PCB’s del prototipo con cada una de
sus partes:
1. Alimentacion microcontrolador.
2. Microcontrolador.
3. Conexion pines potenciometro al anillo colector
4. Conexion FT232.
5. Indicador comunicacion Microcontrolador-PC.
6. Conexion fuente.
7. Indicador encendido.
8. Etapa motor:
8.1. Etapa DAC.
8.2. Etapa amplificacion voltaje.
8.3. Etapa potencia motor.
9. Conexion motor y canal del encoder al anillo colector.
10. Atenuador voltaje entrada motor.
11. Seguidor canal encoder.
12. Amplificador angulo.
13. Amplificador velocidad.
14. Conexion pines entrada/salida.
15. Proteccion angulo.
16. Proteccion velocidad.
17. Conexion anillo colector.
18. Conexion potenciometro.
19. Conexion motor.
20. Conexion encoder.
3.2 Circuitos impresos 51
1
28.1
8.38.2
10
15 16
13
12
7
4 6
5
311
9
14
(a) PCB general.
17
18
19 20
(b) Mini PCB.
Figura 3-7: PCB’s del prototipo.
52 3 Implementacion del Prototipo
3.3. Programacion Microcontrolador
La programacion del micro controlador se realizo de la siguiente forma:
1. En primer lugar, se selecciona el voltaje con el cual se desea trabajar, para el caso se
selecciono: 3,6 V . (Fig. 3-8)
Figura 3-8: Interfaz grafica principal “Grace”, donde se activan y seleccionan los modulos
que se desean utilizar en el microcontrolador, ası como su frecuencia de trabajo, voltaje de
alimentacion, entradas, salidas, entre otros.
2. Dado que se requieren de dos ADC se realiza la activacion en secuencia de esos dos
canales (Fig. 3-9); nos dirigimos al bloque del ADC, seleccionamos la pestana de Power
User y activamos Sequence of Channels, para el caso utilizaremos los ADC de los pines 3
y 4 del puerto 1 (P1.3 y P1.4). Adicionalmente se activa el ıtem Automatic Successive
Conversion del tipo de conversion y el controlador de transferencia automatica de
datos (Automatic Data Transfer Controller) se toma el tamano del bloque de memoria
(Memory Block Size) igual a 5, dado que se va a utilizar el pin 4 del ADC (pin maximo
+1).
3. Se implementa una interrupcion de tiempo, mediante la cual se hace un muestreo cada
10 mseg (Fig. 3-10), mediante la activacion del Timer0 A3.
3.3 Programacion Microcontrolador 53
Figura 3-9: Activacion en secuencia de dos canales del ADC, para capturar los voltajes del
motor y potenciometro.
4. En el GPIO en la pestana P1/P2, activamos en interrupt enable register la interrupcion
de entrada en el pin 5 del puerto 1 para obtener los datos del canal del encoder. Ver
Fig. 3-11.
5. En el Timer1 A3 se activa en el bloque 1 el PWM correspondiente al angulo, el cual
se ejecutara en el pin 2 del puerto 2 del microcontrolador con un periodo de 1 mseg,
tal y como se muestra en la Fig. 3-12. El registro encargado de realizar la variacion
del ancho del pulso es TA1CCR1.
6. En el Timer1 A3 se activa en el bloque 2 el PWM correspondiente a la velocidad,
54 3 Implementacion del Prototipo
Figura 3-10: Activacion interrupcion de tiempo cada 10 mseg en el Timer0 A3 Bloque 0.
Figura 3-11: Activacion de la interrupcion en el pin de entrada P1.5 para el canal del
encoder.
Figura 3-12: Activacion modo PWM del Timer1 A3 Bloque 1 para generar el PWM del
angulo.
el cual se ejecutara en el pin 4 del puerto 2 del microcontrolador con un periodo de
1 mseg, tal y como se muestra en la Fig. 3-13. El registro encargado de realizar la
variacion del ancho del pulso es TA1CCR2.
3.3 Programacion Microcontrolador 55
Figura 3-13: Activacion modo PWM del Timer1 A3 Bloque 2 para generar el PWM de la
velocidad.
7. Se habilita el modulo USCI A0 en el modo UART para la transmision y recepcion de
datos, por tanto se activan los pines de recepcion (P1.1) y transmision (P1.2) con una
velocidad de 9600 bps y adicionalmente se habilita una interrupcion para la recepcion
tal y como se observa en la Fig. 3-14.
8. Finalmente se establecen los pines de entrada, salida, ADC, PWM y UART en el micro
controlador. (Fig. 3-15.)
El codigo de la programacion del microcontrolador se encuentra en el CD-ROM adjunto
con el nombre de ((CodMicro SPI )).
56 3 Implementacion del Prototipo
Figura 3-14: Activacion de la UART en el USCI A0 para establecer comunicacion entre el
microcontrolador y FT232.
Figura 3-15: Asignacion de las entradas, salidas, canales ADC, PWM y modulos de comu-
nicacion del microcontrolador.
3.4 Costos de implementacion 57
3.4. Costos de implementacion
En la Tabla 3-1 se pueden observar los costos de la parte mecanica del prototipo implemen-
tado.
Tabla 3-1: Costos para la implementacion mecanica del prototipo.Componente Cantidad Precio Unitario Precio Total
Rodamientos 3 $ 2.000 $ 6.000
Tornillo prisionero cabeza bristol 1/8” 4 $ 50 $ 200
Llave bristol 1/8” 1 $ 800 $ 800
Pieza mecanica en acero inoxidable 1 $ 20.000 $ 20.000
Pieza mecanica en aluminio 4 $ $ 11.000 44.000
Acople motor 2 $ 1.000 $ 2.000
Llantas 2 $ 10.000 $ 20.000
Tornillo 1/8”largo 8 $ 100 $ 400
Tornillo 1/8”pequeno 28 $ 100 $ 3.200
Tuercas 40 $ 100 $ 4.000
Arandelas 30 $ 100 $ 3.000
Pendulo 1 $ 3.000 $ 3.000
Vinilo 1 $ 15.000 $ 15.000
Acrılico 1 $ 120.000 $ 120.000
SUBTOTAL $ 241.600
En la Tabla 3-2 se pueden observar los costos de la parte electronica del prototipo imple-
mentado.
Lo que corresponde a un TOTAL = 545250 pesos.
58 3 Implementacion del Prototipo
Tabla 3-2: Costos para la implementacion electronica del prototipo.Componente Cantidad Precio Unitario Precio Total
Microcontrolador encapsulado P: MSP430G2553 1 $ 8.000 $ 8.000
Potenciometro lineal 1 $ 1.500 $ 1.500
Motor 1 $ 25.000 $ 25.000
Encoder 1 $ 15.000 $ 15.000
DAC encapsulado P: TLC5615 1 $ 16.500 $ 16.500
Tarjeta FT232 1 $ 26.100 $ 26.100
Transistores encapsulado TO-3 (TIP41/TIP42) 2 $ 900 $ 1.800
Transistores encapsulado TO-92 (2N3904/2N3906) 6 $ 150 $ 900
Amplificadores operacionales encapsulado P (LF353) 5 $ 900 $ 4.500
Regulador de voltaje 3.6V (LM317) 1 $ 700 $ 700
Regulador de voltaje 5V (LM7805) 1 $ 600 $ 600
Resistencias 55 $ 10 $ 550
Interruptores 2 $ 1.000 $ 2.000
Reles (JQC-3F) 2 $ 1.500 $ 3.000
Condensadores ceramicos 3 $ 100 $ 300
Condensadores tantalio 3 $ 1.000 $ 3.000
Anillo Colector (Slip Ring) 1 $ 50.000 $ 50.000
LED’s 5 $ 200 $ 1.000
Base 8 pines 6 $ 500 $ 3.000
Base 20 pines 1 $ 200 $ 200
Regleta profesional M-M 1 $ 400 $ 400
Regleta profesional M-H 1 $ 1.500 $ 1.500
Sockets 8 $ 900 $ 7.200
Fuentes voltaje 2 $ 50.000 $ 100.000
Cable de poder 1 $ 3.000 $ 3.000
Conector poder 1 $ 900 $ $ 900
Conectores IN-OUT 4 $ 500 2.000
Baquelas 1 $ 25.000 $ 25.000
SUBTOTAL $ 303.650
3.5 Sistema de pendulo invertido implementado 59
3.5. Sistema de pendulo invertido implementado
En la Fig. 3.5 se puede observar el sistema de pendulo invertido de trayectoria circular
desarrollado en el presente proyecto; y del igual forma en la Tabla 3-3 se pueden observar
las caracterısticas generales del mismo.
Figura 3-16: Sistema de pendulo invertido implementado.
Tabla 3-3: Caracterısticas del Sistema.
Caracterısticas Valores Unidades
Masa carro 0,59 Kg
Masa pendulo 0,03 Kg
Longitud pendulo [0,325, 0,8] m
Velocidad motor con carga [−6, 6] rad/s
Voltaje saturacion motor [−10, 10] V
Radio trayectoria circular 0,22 m
Radio llantas 0,27 m
Capıtulo 4
Modelamiento y Caracterizacion del Sistema
4.1. Modelo dinamico del sistema de pendulo invertido
La literatura sobre el modelado de un sistema de pendulo invertido es abundante, por tanto
se encuentran modelos basados en tecnicas de la dinamica de Lagrange, como en leyes de
Newton; para este caso de presenta un modelo basado en la dinamica de Newton. El sistema
de pendulo invertido se compone basicamente de un brazo articulado en un carro que puede
moverse de forma horizontal, el brazo se mueve libremente alrededor de la articulacion en el
carro y el objetivo del control es llevar el brazo a la posicion de equilibrio moviendo el carro
en el plano horizontal. Para poder implementar estrategias de control sobre dicho pendulo,
es necesario contar con un conjunto de sensores y actuadores que permitan operarlo con
precision; a partir de las mediciones tomadas, el controlador envıa una senal al actuador
para que a su vez este transmita una fuerza al carro para mantener el pendulo en equilibrio
[32].
θ
l
y
f
lmg
O RH
u
P
M
cosl θV
m f.
R
rN
N
Figura 4-1: Diagrama de cuerpo libre del sistema de pendulo invertido de trayectoria cir-
cular.
El sistema de pendulo invertido se muestra en la Fig. 4-1, donde M es la masa del carro, m es
la masa de la barra del pendulo, θ es el angulo del pendulo medido respecto a la vertical, 2l es
62 4 Modelamiento y Caracterizacion del Sistema
la longitud de la barra, u es la fuerza de control, µ coeficiente de friccion viscosa, ρ coeficiente
de friccion normal, φ es el desplazamiento del carro, R es el radio de la circunferencia que
describe el recorrido del carro, N la fuerza normal equivalente al peso del carro, P el centro
de gravedad de la barra (centro geometrico), V representa el eje vertical y H el eje horizontal.
Para determinar las ecuaciones del sistema es necesario identificar el centro de gravedad de
la barra del pendulo, identificado por el punto de coordenadas (xG, yG),
xG = s+ l sin θ, (4-1)
yG = l cos θ. (4-2)
El movimiento horizontal del carro se describe utilizando la segunda ley de Newton
Ms = u− µs− ρN −H, (4-3)
donde s = Rφ representa el desplazamiento circular del carro. Por consiguiente, el movi-
miento horizontal y vertical del centro de gravedad del pendulo (la barra) se pueden escribir
como
ms+mld2
dt2sin θ = H, (4-4)
mld2
dt2cos θ = V −mg, (4-5)
respectivamente. Por ultimo, el movimiento rotacional de la barra del pendulo invertido
alrededor de su centro de gravedad se puede espresar como
Iθ = V l sin θ −Hl cos θ − bθ, (4-6)
donde I es el momento de inercia de la barra alrededor de su centro de masa y b es el
coeficiente de friccion rotacional.
Ahora, teniendo en cuenta que
d2
dt2cos θ = −θ sin θ − θ2 cos θ, (4-7)
d2
dt2sin θ = θ cos θ − θ2 sin θ, (4-8)
s = Rφ, (4-9)
y a partir de (4-3) y (4-4) se tiene que
(M +m)Rφ+ µRφ = u− ρN −mlθ cos θ +mlθ2 sin θ, (4-10)
y de (4-4), (4-5) y (4-6), tenemos que
(I +ml2
)θ = mgl sin θ −mlRφ cos θ − bθ. (4-11)
4.1 Modelo dinamico del sistema de pendulo invertido 63
Despejando φ de (4-10), se tiene
φ =u− ρN −mlθ cos θ +mlθ2 sin θ − µRφ
R(M +m). (4-12)
Despejando θ de (4-11) y remplazando φ de (4-12), se tiene
θ =mgl (M +m) sin θ −mlu cos θ +mlρN cos θ +mlµRφ cos θ − (M +m) bθ −m2l2θ2 cos θ sin θ
(M +m) (I +ml2)−m2l2 cos2 θ, (4-13)
De manera similar, para obtener una ecuacion de φ que no involucre θ. Despejando θ de
(4-11), se tiene
θ =mgl sin θ −mlRφ cos θ − bθ
I +ml2,
y remplazando lo anterior en (4-12)
φ =u(I +ml2
)− ρN
(I +ml2
)−(I +ml2
)µRφ−m2l2g cos θ sin θ +mlbθ cos θ +
(I +ml2
)mlθ2 sin θ
R [(M +m) (I +ml2)−m2l2 cos2 θ].
(4-14)
Por otro lado, es necesario determinar a que es equivalente la fuerza u que se ejerce sobre el
carro, respecto al torque y voltaje de alimentacion del motor que lo mueve. Se sabe que la
fuerza que se aplica al sistema causa un efecto en las llantas del carro, la cual corresponde a
u =τ
r, (4-15)
donde τ es el torque que se genera en las llantas debido al motor y r el radio de la llanta.
A partir del analisis de un motor DC, el cual corresponde a un circuito de la forma del que
se muestra en la Fig. 4-2, se tiene que
Figura 4-2: Circuito equivalente para un motor DC.
64 4 Modelamiento y Caracterizacion del Sistema
τ = KT Ia, (4-16)
V = RaIa + E, (4-17)
E = Kiω, (4-18)
ω = φ, (4-19)
donde KT es la constante de torque, Ia es la corriente de armadura, V es el voltaje aplicado
al motor, Ra es la resistencia de armadura, Ki es la constante de inducido, E es el voltaje
inducido y ω es la velocidad angular del motor. Si despejamos Ia de (4-17), tenemos
Ia =V − ERa
. (4-20)
Por lo que, remplazando la expresion para Ia en (4-16), tenemos para el torque
τ = KT Ia =KT V −KT E
Ra
,
y para la fuerza ejercida por el motor, reemplanado la expresion para el torque en (4-15)
u =τ
r=KT V −KT E
rRa
.
Finalmente, reemplazando la expresion para E en (4-18), considerando ω = φ
u =KT
rRa
V − KTKi
rRa
φ. (4-21)
De esta forma, las variables de estado del sistema [33], se seleccionan ası:
x1 = θ, (4-22)
x2 = θ, (4-23)
x3 = φ, (4-24)
x4 = φ. (4-25)
Teniendo en cuenta que la entrada del sistema corresponde al voltaje V en el motor y
tomando α = (M +m), β = (I +ml2), λ = KT
rRay σ = KTKi
rRa, se tiene que las ecuaciones de
estado del sistema, a partir de las definiciones anteriores y de (4-13) y (4-14), corresponden
a
x1 = x2,
x2 =mglα sinx1−mlλV cosx1+mlρN cosx1+mlx4 cosx1(µR+σ)−αbx2−m2l2x22 cosx1 sinx1
αβ−m2l2 cos2 x1,
x3 = x4,
x4 =βλV−βρN−βx4(µR+σ)−m2l2g cosx1 sinx1+mlbx2 cosx1+βmlx22 sinx1
R(αβ−m2l2 cos2 x1).
(4-26)
4.2 Linealizacion y ecuaciones de estado del sistema de pendulo invertido65
4.2. Linealizacion y ecuaciones de estado del sistema
de pendulo invertido
La linealizacion se realiza por el metodo del Jacobiano mostrado en [32]. A partir de (4-26)
se tiene que los puntos de equilibrio del sistema:
x01 = 0,
x02 = 0,
x03 = 0,
x04 = 0,
V 0 = 0.
(4-27)
Por tanto, se obtienen, con el Jacobiano, las matrices A∗ y B∗ como se muestra a continuacon
A∗ =
0 1 0 0
∂x2
∂x1
∣∣∣∣(x0,V 0)
−αb+ 2m2l2x02 cosx0
1 sinx01
αβ −m2l2 cos2 x01
0ml cosx0
1 (µR + σ)
αβ −m2l2 cos2 x01
0 0 0 1
∂x4
∂x1
∣∣∣∣(x0,V 0)
mlb cosx01 + 2βmlx0
2 sinx01
R (αβ −m2l2 cos2 x01)
0 − β (µR + σ)
R (αβ −m2l2 cos2 x01)
, (4-28)
B∗ =
0
− mlλ cosx01
αβ −m2l2 cos2 x01
0βλ
R (αβ −m2l2 cos2 x01)
, (4-29)
donde:
∂x2∂x1
=ml
(αβ −m2l2 cos2 x1)2
gα(αβ −m2l2 −m2l2 sin2 x1
)cosx1
+(λV − ρN − x4 (µR+ σ))(αβ +m2l2 cos2 x1
)sinx1
+mlx22(αβ + cos2 x1(m2l2 − 2αβ)
)+ αbmlx2 sin 2x1
, (4-30)
∂x4∂x1
=ml
R (αβ −m2l2 cos2 x1)2
βx22(αβ −m2l2 −m2l2 sin2 x1
)cosx1
−bx2(αβ +m2l2 cos2 x1
)sinx1 +mgl
(αβ + cos2 x1(m2l2 − 2αβ)
)
−βml (λV − ρN − x4 (µR+ σ)) sin 2x1
.
(4-31)
66 4 Modelamiento y Caracterizacion del Sistema
Se sabe que el sistema tiene dos salidas, por lo cual, la matriz de salida se puede escribir
como
C =
1 0 0 0
0 0 0 1
. (4-32)
Y, finalmente, se tiene que las ecuaciones que modelan el comportamiento del sistema co-
rresponden a:
z = A∗z +B∗v,
yy = C z.(4-33)
Nosete que, en general, el resultado del proceso de linealizacion nos genera un modelo lineal en
variables de estado incrementales. Es decir, las variables de estado lineales son equivalentes
al incremento que sufrirıan las variables de estado no lineales con respecto al punto de
equilibrio. Sin embargo, dado que el punto de equilibrio es (xe, Ve) = (04, 0). Por lo que, para
este caso en particular, las variables lineales incrementales z = x y V = v y el modelo del
sistema lineal puede escribirse como
x = A∗x+B∗V,
y = C x.(4-34)
Lo anterior describe el comportamiento del pendulo invertido en tiempo continuo, por tanto,
se dicretiza el sistema por medio de MatLabr, a traves del metodo del retenedor de orden
cero (ZOH, de sus siglas en inges, Zero Order Hold) con un tiempo de muestreo de 30 ms.
4.3. Caracterizacion del sistema
Para identificar y determinar los parametros que modelan el comportamiento del sistema,
se sabe que algunos de ellos vienen previamente definidos o son medibles, como las masas,
longitudes, entre otros. Para el caso del momento de inercia [34] y los coeficientes de friccion
viscosa [35] y normal [36] se sabe que:
La inercia de la barra puede ser claculada como Ibarra = 13ml2.
El coeficiente de friccion viscosa se puede calcular como µ = ηaireAsupcarro
hcarro, donde la
viscosidad del aire ηaire = 1,8 × 10−5 Ns/m2, el area superficial de carro Asupcarro =
8,2× 10−3 m2, la altura del carro hcarro = 0,04 m.
El coeficiente de friccion viscosa se puede calcular como ρ =√
z2r
, con el hundimiento
de la llanta debido al peso z = 0,8 mm.
4.3 Caracterizacion del sistema 67
Para las constantes de torque e inducido y la resistencia de armadura en el motor, teniendo
en cuenta el voltaje en el motor Vm = 12 V , su velocidad de 200 RPM , por tanto una
velocidad angular ωm = 20,944 rad/s y su torque stall de τs = 2Kgf − cm = 0,19612 Nm,
a partir de [37] y [38] se sabe que:
Ki =Vmωm
[V s
m
], (4-35)
KT = Ki
[Nm
A
], (4-36)
Ra =KTVmτs
. (4-37)
Sin embargo, al aplicar una senal seno a la entrada del sistema, se tienen las respuestas
simulada y real que se muestran en la Fig. 4-3, donde se observa que el sistema simulado es
inestable y no tiene un comportamiento similar al real; esto quiere decir que los parametros
anteriormente determinados no corresponden a los parametros reales del sistema; por tanto
se plantea y cuestiona, de que manera obtener los parametros del sistema de pendulo inver-
tido, de tal forma que el sistema simulado tenga un comportamiento aproximado al sistema
implementado a determinadas condiciones, teniendo en cuenta los parametros anteriormente
calculados.
Tiempo [s]0 2 4 6 8 10 12
Err
or [°
]
-15
-10
-5
0
5
10
15Error del Sistema Real
Simulado
Figura 4-3: Respuestas del sistema simulado y real a una entrada seno con los parametros
iniciales.
Por tal motivo, se decide que la optimizacion es el proceso mas adecuado para hallar los
parametros del sistema, dado que a partir de condiciones iniciales y la comparacion de
senales, simulada y real, se puede minimizar el error entre estas dos y lograr obtener un
comportamiento similar entre ellas, y de esta manera, obtener los parametros que se ajusten
68 4 Modelamiento y Caracterizacion del Sistema
al sistema en cuestion; por ende, se procede a optimizar el sistema teniendo en cuenta el
comportamiento de la planta real a una entrada seno. Cabe aclarar que en las pruebas
realizadas se pudo observar que el parametro ρ no tiene influencia en el comportamiento del
sistema, dado que al linealizarlo este parametro se cancela, razon por la cual este parametro
no se tiene en cuenta.
4.3.1. Optimizacion de los parametros del sistema
La optimizacion del sistema se realiza off-line a traves de MatLabr y teniendo en cuenta
el error cuadratico integral ISE, el cual viene definido por:
J =1
Ts
∞∑
n=0
e2[n], (4-38)
donde e[n] = −x1[n] y Ts = 30 ms. La optimizacion se realiza por medio de la funcion
fmincon, la cual, a partir de las condiciones iniciales y las restricciones de los parametros,
determina para que valores de estos, el criterio ISE es mınimo:
[parametros,fval]= fmincon(@funoptpara,parametros0,[],[],[],[],lb,ub)
donde parametros son los parametros optimizados, fval es el valor mınimo encontrado para
el criterio ISE, @funoptpara corresponde al sistema a optimizar a partir del criterio anterior,
el vector parametros0=[0.573 35.06 9e-04 3.69e-06 0] corresponde a los valores iniciales
de los parametros y los vectores lb y ub corresponden a las restricciones del sistema para lb
≤ opt ≤ ub, las cuales son:
0,001 ≤ KT = Ki ≤ 1, 0,06 ≤ Ra ≤ 5,
0,0009 ≤ I ≤ 0,01, 0 ≤ µ ≤ 0,01,
0 ≤ b ≤ 0,01,
(4-39)
y se definieron inicialmente todos en un rango definido entre [0, 10] para no limitar en gran
medida la optimizacion, y poco a poco con cada resultado se fue optimizando y restringiendo
mas los parametros del sistema; sin embargo, las restricciones mas acertadas (mostradas en
(4-39)) se eligieron teniendo en cuenta el valor de estos parametros en otros sistemas de
pendulo invertido [40], [41], [42], [43], [44], [45], [46], [47], [48], [49]. Cabe aclarar, que los
valores iniciales (parametros0), fueron modificados en las pruebas realizadas, tomando como
condicion inicial el resultado de la optimizacion anteriormente realizada, para obtener de
esta manera, un mejor resultado.
Adicionalmente se realizo la caracterizacion teniendo en cuenta el comportamiento de la
planta real para un controlador difuso, el cual no requiere de dicha caracterizacion previa,
para tener un punto de comparacion frente a distintas entradas y diferentes comportamientos
en la planta; por tanto, se realizaron 8 pruebas con entrada seno al sistema, y otras 8 pruebas
teniendo en cuenta el sistema difuso tipo 2 que se menciona en la Seccion 5.1.1.
4.3 Caracterizacion del sistema 69
Por tanto, para el conjunto de parametros a optimizar Ω = KT = Ki, Ra, I, µ, b, cuyos
valores iniciales son:
KT = Ki = 0,573, Ra = 35,057,
I = 9× 10−4, µ = 3,69× 10−6,
b = 0,
(4-40)
el problema de optimizacion a realizar es el siguiente:
mınΩ
J =1
Ts
Ts∑
n=0
e2[n]
sujeto a (4-34),
(4-40),
(4-39),
(4-41)
4.3.2. Sistemas simulado/real
En la Fig. 5-2 se pueden observar los diagramas de bloques utilizados tanto para la simulacion
como para la implementacion de la planta en lazo abierto y con entrada seno, implementada
por medio de MatLabr en un script.
BytesSistemaPénduloInvertido
RXVoltaje-Bytes
TXBytes-Grados
Entrada: Seno
Voltaje Bytes
PLANTA
Grados
(a) Sistema Fısico.
Entrada: Seno
PLANTAConversor
Radianes-GradosRadianesVoltaje Grados
(b) Sistema Simulado.
Figura 4-4: Diagramas de bloque para el sistema.
A la hora de simular el sistema es importante tener en cuenta:
El sistema simulado entrega el valor de la posicion del pendulo en radianes, por lo que
si se desea comparar con el real, es necesario convertirlo a grados.
El ruido presente en el sistema real, puede ser ruido gaussiano o aleatorio de 2.
Las saturaciones y limitantes presentes en el sistema real, tales como:
70 4 Modelamiento y Caracterizacion del Sistema
1. Rango angulo: [−12, 12]. Con el cual se trabajo a lo largo del proyecto, sin
embargo, el cual puede ser modificado variando los tornillos de la pieza mecanica
de la Fig. 2-22.
2. Rango velocidad carro: [−6 rad/s, 6 rad/s].
3. Rango voltaje: [−10 V, 10 V ].
Zona muerta del motor ([−2 V, 2 V ]) y ajuste de esta zona.
4.4. Analisis de resultados
4.4.1. Caracterizacion del sistema
Los mejores parametros optimizados obtenidos con sus respectivos rendimientos en cada una
de las pruebas realizadas se muestran en el Anexo A.3. Finalmente despues de una laboriosa
busqueda de estos parametros se obtienen las respuestas simulada y real que se muestran en
la Fig. 4-5, para:
parametros = [0,0167 0,7842 0,0019 0,0001 0,0443]. (4-42)
Tiempo [s]0 2 4 6 8 10 12
Err
or [°
]
-15
-10
-5
0
5
10
15Error del Sistema
RealSimulado
Figura 4-5: Respuestas del sistema simulado y real a una entrada seno con los parametros
optimizados en (4-42).
En la Tabla 4-1, se pueden observar los parametros que componen el sistema con cada uno
de sus valores iniciales y optimizados.
De esta manera se obtiene que el sistema de pendulo invertido implementado discretizado,
se expresa mediante las ecuaciones de estado:
4.4 Analisis de resultados 71
Tabla 4-1: Parametros del sistema implementado.
Sımbolo Termino Valor Inicial Valor Optimizado Unidad SI
2l Longitud del pendulo 0,3 m
m Masa del pendulo 0,03 Kg
M Masa del carro 0,59 Kg
g Gravedad 9,8 m/s2
R Radio de la trayectoria circular del carro 0,22 m
r Radio llanta 0,027 m
I Momento de inercia 9× 10−4 0,0019 Kgm2
µ Coeficiente de friccion viscosa 3,69× 10−6 0,0001 Ns/m
ρ Coeficiente de friccion normal 0,121379
b Coeficiente de friccion angular del pendulo 0 0,03 Nms
KT Constante de torque 0,573 0,0167 Nm/A
Ki Constante inducido 0.573 0,0167 V s/rad
Ra Resistencia de armadura 35,057 0,7842 Ω
x1[n+ 1] = 1,0059x1[n] + 0,0234x2[n] + 0,000013x4[n]− 0,0008u[n],
x2[n+ 1] = 0,3638x1[n] + 0,5968x2[n] + 0,0008x4[n]− 0,048u[n],
x3[n+ 1] = −0,0002x1[n] + 0,0002x2[n] + x3[n] + 0,03x4[n] + 0,0026u[n],
x4[n+ 1] = −0,0111x1[n] + 0,0121x2[n] + 0,9971x4[n] + 0,1761u[n],
y1[n] = x1[n],
y2[n] = x4[n].
(4-43)
4.4.2. Consideraciones
Cabe aclarar que el ruido presentado en el sistema afectaba directamente la medicion de la
posicion angular del pendulo e inicialmente fluctuaba en un rango de 10, por esta razon, y
teniendo en cuenta que el ruido generalmente se encuentra en las frecuencias altas, se decidio
implementar un filtro digital paso bajo IIR de primer orden adicional al filtro fısico anadido
al componente electronico por medio de condensadores, y de esta manera, se logro reducir
el ruido a un rango de 2. El filtro viene expresado en ecuaciones en diferencias como [39]:
y[n] = a x[n] + b y[n− 1], (4-44)
con a = b = 0,5.
Capıtulo 5
Diseno e Implementacion de Controladores
5.1. Diseno e Implementacion de controladores difusos
5.1.1. Sistema difuso tipo 2 de intervalo
Se disena e implementa un controlador difuso tipo 2 de intervalo utilizando un Concresor
de Relaciones Booleanas (CBR). Para el diseno del controlador se tienen en cuenta dos
entradas y una unica salida; las entradas corresponden al error y derivada del error, las
cuales, teniendo en cuenta el sistema real, se definieron dentro de un Universo comprendido
entre [−15, 15] para el error y [−300/s, 300/s] para la derivada del error; la unica salida
del sistema corresponde al voltaje sobre el motor, el cual, de acuerdo a las caracterısticas
del mismo, se define dentro del Universo [−12 V, 12 V ].
Error [°]-15 -10 -5 0 5 10 15
0
0.5
1Funciones de Pertenencia Error
E1
E2
Derivada del Error [°/s]-300 -200 -100 0 100 200 3000
0.5
1Funciones de Pertenencia Derivada del Error
DE1
DE2
(a) Conjuntos difusos de intervalo de entrada.
Voltaje [V]-10 -5 0 5 10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Funciones de Pertenencia de Salida
VANVBNVBPVAP
(b) Conjuntos difusos tipo 2 de salida.
Figura 5-1: Funciones de pertenencia de entrada y salida del controlador.
Las funciones de pertenencia se definen a criterio propio; por tanto, se definen funciones
trapezoidales y gaussianas para la entrada y salida respectivamente, tal y como se observa
74 5 Diseno e Implementacion de Controladores
en la Fig. 5-1, se toman dos funciones de pertenencia de intervalo para cada entrada y cuatro
funciones de pertenencia superiores y cuatro inferiores para la salida.
Dadas las condiciones del controlador, este puede analizarse por medio de logica de Kleene;
por tanto, a partir de esta logica se desarrolla la tabla de verdad que se muestra en la Tabla
5-1 y a partir de la forma normal conjuntiva se obtienen las salidas del sistema, como se
muestra en (5-1).
Tabla 5-1: Tabla de verdad por logica de Kleene.
E1 E2 DE1 DE2 V AN V BN V BP V AP
0 0 0 0 0 0 0 1
u 0 0 0 0 0 0 1
1 0 0 0 0 0 u 0
1 u 0 0 0 u 0 0
1 1 0 0 1 0 0 0
0 0 u 0 0 0 0 1
u 0 u 0 0 0 u 0
1 0 u 0 0 0 u 0
1 u u 0 0 u 0 0
1 1 u 0 1 0 0 0
0 0 1 0 0 0 0 1
u 0 1 0 0 0 u 0
1 0 1 0 0 1 1 0
1 u 1 0 0 u 0 0
1 1 1 0 1 0 0 0
0 0 1 u 0 0 0 1
u 0 1 u 0 0 u 0
1 0 1 u 0 u 0 0
1 u 1 u 0 u 0 0
1 1 1 u 1 0 0 0
0 0 1 1 0 0 0 1
u 0 1 1 0 0 u 0
1 0 1 1 0 u 0 0
1 u 1 1 1 0 0 0
1 1 1 1 1 0 0 0
V AN = E1E2[1−DE1 +DE2(DE1DE2)],
V BN = E1(1− E2)[E2(1−DE1)(1−DE2)(1−DE1) +DE1],
V BP = E1(1− E2)[(1− E1)DE1DE2(DE2) + (1−DE2)],
V AP = (1− E1)(1− E2)[(1−DE2)(1−DE1DE2) +DE1DE2].
(5-1)
Finalmente dado que se tiene un sistema difuso tipo 2, se obtienen dos funciones para el
5.1 Diseno e Implementacion de controladores difusos 75
CBR una inferior y una superior, y a partir de un reductor de tipo Nie-Tan, la funcion de
salida final para el CBR es:
CBRs =V alV ANs · V AN + V alV BNs · V BN + V alV BPs · V BP + V alV APs · V AP,CBRi =V alV ANi · V AN + V alV BNi · V BN + V alV BPi · V BP + V alV APi · V AP,
CBR =CBRs + CBRi
2,
(5-2)
donde las coeficientes de orden cero del CBR (V al) corresponden a:
V alV ANs = V alV ANi = −10,
V alV BNs = V alV BNi = −3,
V alV BPs = V alV BPi = 3,
V alV APs = V alV APi = 10,
(5-3)
y los anchos de las funciones de pertenencia de entrada son CEE = 5 para el error y
CDEE = 50 para la derivada del error; un paso adicional que se llevo a cabo, es la optimi-
zacion de estos parametros del controlador para lograr que este sea mas eficiente.
5.1.2. Sistema difuso tipo 1
Se disena e implementa un controlador difuso tipo 1 utilizando un Concresor de Relaciones
Booleandas (CBR). Para el desarrollo del sistema difuso tipo 1, se toman las funciones de
pertenencia de entrada E1 para el error y DE1 para la derivada del error; de igual forma
para las funciones de pertenencia de salida se tomaron unicamente las funciones superiores
mostradas en la Fig. 5-1, a continuacion se realiza la tabla de verdad por logica de Kleene
(similar a la Tabla 5-1) y por medio de la forma normal conjuntiva se obtienen las salidas
del sistema en (5-5):
V AN = E1DE1,
V BN = (1− E1)DE1,
V BP = E1(1−DE1),
V AP = (1− E1)(1−DE1).
(5-4)
Finalmente se obtiene la salida del CBR:
CBR =V alV AN · V AN + V alV BN · V BN + V alV BP · V BP + V alV AP · V AP, (5-5)
76 5 Diseno e Implementacion de Controladores
donde las coeficientes de orden cero del CBR (V al) corresponden a:
V alV AN = −10,
V alV BN = −3,
V alV BP = 3,
V alV AP = 10,
(5-6)
y los anchos de las funciones de pertenencia de entrada son CEE = 5 para el error y
CDEE = 50 para la derivada del error; para este controlador fue importante realizar la
optimizacion, dado que en este caso el sistema no se estabiliza, por tanto se optimizan el
ancho de las funciones de pertenencia de entrada y los coeficientes de orden cero del CBR.
5.1.3. Optimizacion de los parametros del controlador
La optimizacion del sistema controlado es off-line y se realiza teniendo en cuenta el error
cuadratico integral ISE definido en (4-38), y de igual forma que en la Seccion 4.3.1 la opti-
mizacion fue desarrollada a traves de MatLabr, por medio de la funcion fmincon:
[opt,fval]= fmincon(@DifusoTipo#,opt0,[],[],[],[],lb,ub)
donde opt son los parametros optimizados, fval es el valor mınimo encontrado para el
criterio ISE, @DifusoTipo# corresponde al sistema a optimizar a partir del criterio anterior,
el vector opt0=[5 50 -10 -10 -3 -3 3 3 10 10] (para el difuso tipo 2 y analogamente para
el difuso tipo 1) corresponde a los valores iniciales de los parametros y los vectores lb y ub
corresponden a las restricciones del sistema para lb ≤ opt ≤ ub, las cuales para el caso del
difuso tipo 2 y analogamente para el difuso tipo 1 son:
0 ≤ CEE ≤ 15, 0 ≤ CDEE ≤ 300,
−12 ≤ V alV ANs ≤ −7, −12 ≤ V alV ANi ≤ −7,
−7 ≤ V alV BNs ≤ 0, −7 ≤ V alV BNi ≤ 0,
0 ≤ V alV BPs ≤ 7, 0 ≤ V alV BPs ≤ 7,
7 ≤ V alV APs ≤ 12, 7 ≤ V alV APi ≤ 12,
(5-7)
las cuales se definieron, teniendo en cuenta los universos de las funciones en cuestion, y
adicionalmente, para las constantes del CBR, teniendo en cuenta la respuesta del motor con
respecto a cada voltaje.
Por tanto, para el conjunto de parametros a optimizar Ω = CEE, CDEE, V alV ANs, V alV ANi,
V alV BNs, V alV BNi, V alV BPs, V alV BPi, V alV APs, V alV APi, el problema de optimi-
zacion a realizar es el siguiente:
5.2 Diseno e implementacion de un controlador por el metodo de variablesde estado 77
mınΩ
J =1
Ts
Ts∑
n=0
e2[n]
sujeto a (4-43),
(5-3)− (5-6),
(5-2)− (5-5),
(5-7),
(5-8)
5.2. Diseno e implementacion de un controlador por el
metodo de variables de estado
El diseno de un controlador de ganancias K en tiempo discreto en el siguiente, y se disena
teniendo en cuenta que el sistema de pendulo invertido se modela con las ecuaciones de
estado que se definen en (4-43).
En primer lugar se debe observar si el sistema es controlable; la matriz de controlabilidad
corresponde a la que se muestra a continuacion [32]:
U =[B AB A2B A3B
]. (5-9)
Dado que el sistema es SIMO (unica entrada multiples salidas), el sistema es controlable si∣∣UUT∣∣ 6= 0; si el sistema es controlable, se inicia con el diseno del vector de ganancias K,
teniendo en cuenta que la nueva entrada del sistema corresponde a:
u[n] = r[n]−Kx[n], (5-10)
por lo que las ecuaciones de estado se convierten en:
x[n] = (A−BK)x[n] +Br[n]. (5-11)
Ahora, el proceso que se lleva a cabo para determinar el vector de ganancias de tamano
(1× 4), para el caso es el siguiente:
1. Definir el polinomio deseado que corresponde a los valores propios o eigenvalores λi = 4
o polos:
∆(z) = (z − λ1)(z − λ2)(z − λ3)(z − λ4) = z4 + a1z3 + a2z
2 + a3z + a4. (5-12)
2. Determinar el polinomio caracterıstico de la matriz A:
∆(z) = |zI − A| = z4 + a1z3 + a2z
2 + a3z + a4. (5-13)
78 5 Diseno e Implementacion de Controladores
3. Encontrar el vector de ganancias de realimentacion:
K ′ =[a1 − a1 a2 − a2 a3 − a3 a4 − a4
]. (5-14)
4. Se realiza la transformacion equivalente:
S = P−1 = U
a3 a2 a1 1
a2 a1 1 0
a1 1 0 0
1 0 0 0
. (5-15)
5. Finalmente, se determina el vector de ganancias de realimentacion de estados:
K = K ′P = K ′S−1. (5-16)
Los polos deseados se pueden seleccionar a criterio propio, a partir de las siguientes ecuacio-
nes y seleccionando inicialmente, los parametros adecuados para que el sistema controlado
tenga el comportamiento deseado, es decir, un tiempo de establecimiento, sobre paso maxi-
mo, factor de amortiguamiento, frecuencia de oscilacion, entre otros. Para el caso de polos
discretos se seleccionan teniendo en cuenta:
ξ =ln |Mp/100 %|√
π2 + (ln |Mp/100 %|)2, (5-17)
ts(2 %) =4
ξωn, 0 < ξ < 0,69, (5-18)
y que los polos corresponden a:
λ = e−ξωnTs ± j2πωnTs√
1− ξ2. (5-19)
Por tanto, los polos se determinan teniendo en cuenta que el tiempo de muestreo Ts = 30 ms,
seleccionando un tiempo de establecimiento ts = 300 ms y el sobre paso maximo Mp = 20 %,
de esta manera, a partir de (5-17) y (5-18) se tiene que ωn = 29,24 y de (5-19) que los polos
deseados son:
λ1,2 = 0,67± j0,7807,
λ3,4 = 1,(5-20)
y finalmente, que el vector de ganancias corresponde a:
K = [−83,2051 −4,119 0 −0,0167]. (5-21)
5.3 Analisis de resultados 79
5.3. Analisis de resultados
5.3.1. Sistemas simulado/real
En la Fig. 5-2 se pueden observar los diagramas de bloques utilizados tanto para la simulacion
como para la implementacion de la planta controlada, donde el controlador fue implementado
por medio de MatLabr en un script.
BytesRef-+
SistemaPénduloInvertido
RXVoltaje-Bytes
TXBytes-Grados
CONTROLADOR
Grados
Voltaje
0 Grados
Bytes
PLANTA
(a) Sistema Fısico.
CONTROLADORRef-+ PLANTA
ConversorRadianes-Grados
Grados
Radianes
Voltaje
0 Grados
(b) Sistema Simulado.
Figura 5-2: Diagramas de bloque para el sistema.
5.3.2. Controladores difusos
Controlador difuso tipo 2 de intervalo
En la Fig. 5-3 (a), se pueden observar los comportamientos tanto para el sistema controlado
simulado como implementado, por medio del controlador difuso tipo 2 de intervalo propuesto
en la Seccion 5.1.1 y de igual forma en la Fig. 5-3 (b), sin embargo, en este caso se realizo
la optimizacion de los parametros mencionados en dicha seccion y se obtiene una respuesta
mas rapida y efectiva en el sistema controlado; cabe aclarar que los parametros optimizados
tienen los siguientes valores:
80 5 Diseno e Implementacion de Controladores
CEE = 4,8255, CDEE = 162,8273,
V alV ANs = −9,0708, V alV ANi = −9,0228,
V alV BNs = −3,6146, V alV BNi = −2,6273,
V alV BPs = 4,7316, V alV BPi = 3,4572,
V alV APs = 8,999, V alV APi = 8,9777.
(5-22)
Tiempo /Segundos0 1 2 3 4 5 6 7 8 9 10
Err
or /G
rado
s
-15
-10
-5
0
5
10
15Error
SimuladoReal
(a) Sistema inicial.
Tiempo /Segundos0 1 2 3 4 5 6 7 8 9 10
Err
or /G
rado
s
-15
-10
-5
0
5
10Error
SimuladoReal
(b) Sistema optimizado en (5-22).
Figura 5-3: Respuestas del sistema controlado simulado y real, con un controlador difuso
tipo 2 de intervalo.
Controlador difuso tipo 1
En la Fig. 5-4, se pueden observar los comportamientos tanto para el sistema controlado
simulado como implementado, por medio del controlador difuso tipo 1 optimizado y pro-
puesto en la Seccion 5.1.2; cabe aclarar que los parametros optimizados tienen los siguientes
valores:
CEE = 3,8853, CDEE = 258,3485,
V alV AN = −9,1855, V alV BN = −0,0216,
V alV BP = 0,0056, V alV AP = 9,3574.
(5-23)
5.3 Analisis de resultados 81
Tiempo /Segundos0 1 2 3 4 5 6 7 8 9 10
Err
or /G
rado
s
-15
-10
-5
0
5Error
SimuladoReal
Figura 5-4: Respuestas del sistema controlado simulado y real, con un controlador difuso
tipo 1 optimizado en (5-23).
5.3.3. Controlador por el metodo de variables de estado
En la Fig. 5-5, se pueden observar los comportamientos tanto para el sistema controlado
simulado como el implementado, por medio del controlador por realimentacion de estados
obtenido en (5-21).
Tiempo [s]0 1 2 3 4 5 6 7 8 9 10
X1 [°
]
-2
0
2
4
6
8
10
12
Posición Péndulo
SimuladoReal
(a) Posicion Pendulo.
Tiempo [s]0 1 2 3 4 5 6 7 8 9 10
X4 [r
ad/s
]
-1
0
1
2
3
4
5Velocidad Carro
SimuladoReal
(b) Velocidad Carro.
Figura 5-5: Respuestas del sistema controlado simulado y real, con el controlador por re-
alimentacion de estados mostrado en (5-21).
5.3.4. Funcion ((CSPI))
Se diseno una funcion en MatLabr para que el usuario implemente su controlador en el
sistema de pendulo invertido y pueda observar el comportamiento del mismo en el tiempo,
82 5 Diseno e Implementacion de Controladores
el valor del criterio ISE y pueda tener acceso a las variables del mismo (Angulo, Velocidad
y Voltaje Motor).
En primer lugar, el usuario debe crear dos documentos en MatLabr, con los nombres de
Encabezado.m y Control.m, donde el primer documento, contiene la declaracion e iniciali-
zacion de las variables y parametros del controlador, y el segundo documento contiene el
controlador disenado, cuyas variables de entrada son ANGULO y VELOCIDAD, y de salida es
VOLTAJE.
Figura 5-6: Comportamiento posicion angular del pendulo en tiempo real.
A continuacion, el usuario ingresa a la ventana de comandos: CSPI(Tiempo,’COM’)
donde ’COM’ corresponde al puerto COM utilizado para la comunicacion serial planta-PC y
Tiempo, corresponde al tiempo en el que se desea ejecutar el sistema; sin embargo, si se desea
parar antes del tiempo establecido, basta con cerrar la ventana que se muestra en la Fig.
5-6, la cual se abre inmediatamente al ejecutar la funcion y en la cual se puede observar el
comportamiento de la posicion angular del pendulo en tiempo real.
Al finalizar la ejecucion de la funcion, se muestran los comportamientos de la posicion angular
del pendulo, la velocidad angular del carro y el voltaje en el motor a traves del tiempo
transcurrido tal y como que se muestra en la Fig. 5-7, de igual forma, se otorgan los vectores
5.3 Analisis de resultados 83
correspondientes a cada una de estas variables para poder ser manipuladas por el usuario,
y finalmente, se muestran en la ventana de comandos el valor del criterio ISE y el valor del
tiempo real de la ejecucion, tal y como se muestra en la Fig. 5-8.
Figura 5-7: Comportamiento de las variables del sistema de pendulo invertido en el tiempo.
84 5 Diseno e Implementacion de Controladores
Figura 5-8: Ejecucion de la funcion CSPI(Tiempo,’COM’).
5.3.5. Consideraciones
Inicialmente, al realizar pruebas con la planta, se observo que el sistema tiende a un ciclo
lımite, es decir, se mantiene oscilando y nunca se estabiliza; una de las razones para que
se presente este fenomeno, es el retardo que se genera en la transmision serial entre el
computador y la planta, y adicionalmente, un retardo que se presenta en la planta debido a
la respuesta lenta del motor. Por tal razon, se ajustaron los controladores teniendo en cuenta
este retardo para que la planta tuviera el tiempo suficiente para actuar; esto se llevo a cabo
por medio de la aplicacion de senales AC en vez de senales DC (como se estaba haciendo)
al sistema. Especıficamente, la senal AC aplicada, es una senal cuadrada con una amplitud
comprendida entre 0 V y el valor de voltaje otorgado por el controlador, con un ciclo util
del 60 % y un periodo de 300 ms, el cual se selecciono experimentalmente observando la
respuesta del controlador en la planta iniciando con un periodo 30 ms en la senal (tiempo de
muestreo), donde la mejor respuesta del controlador se obtuvo para un periodo de 300 ms;
de igual forma, el ciclo util se selecciono experimentalmente, se observo que para un ciclo
util menor o igual al 50 % el sistema se volvıa inestable y para un ciclo util mayor o igual al
70 % tendıa a un ciclo lımite.
5.3.6. Conclusion
Los valores obtenidos para el criterio ISE en cada uno de los experimentos realizados con cada
controlador implementado y simulado se muestran en la Tabla 5-2 y sus comportamientos
se pueden observar en la Fig. 5-9.
5.3 Analisis de resultados 85
Tabla 5-2: Valor del criterio ISE para cada controlador.
Controlador Sistema ISE
Difuso Sin Simulado 64.7709
Tipo-2 Optimizacion Real 171.72
Difuso Optimizado Simulado 62.9624
Tipo-2 con (5-22) Reaal 67.86
Difuso Sin Simulado 4692.1
Tipo-1 Optimizacion Real 4444.9
Difuso Optimizado Simulado 134.1448
Tipo-1 con (5-23) Real 102.12
De Ganancias Con K Simulado 59.5073
K (5-21) Real 59.34
Tiempo [s]0 1 2 3 4 5 6 7 8 9 10
Err
or [°
]
-15
-10
-5
0
5Error Sistema Simulado
CBR Tipo-2CBR Optimizado Tipo-2CBR Optimizado Tipo-1Vector K
Tiempo [s]0 1 2 3 4 5 6 7 8 9 10
Err
or [°
]
-15
-10
-5
0
5
10
15Error Sistema Real
CBR Tipo-2CBR Optimizado Tipo-2CBR Optimizado Tipo-1Vector K
Figura 5-9: Respuestas del sistema controlado simulado y real, para cada uno de los con-
troladores desarrollados.
Capıtulo 6
Conclusiones y Trabajos Futuros
6.1. Conclusiones
La seleccion del motor, es una tarea fundamental, ya que si este no es el adecuado
el sistema puede no ser controlable debido al torque y velocidad que se requieren
para generar las acciones de control y lograr perturbar el pendulo hasta llevarlo a la
estabilidad.
Se pudo observar que el calculo de los parametros del sistema no fueron los correctos,
dado que el comportamiento del sistema simulado a partir de estos era completamente
diferente al del sistema real, adicionalmente, porque los parametros optimizados di-
ferıan de los calculados inicialmente, y en gran medida en los parametros del motor,
lo cual puede deberse a la falta de informacion que se tiene del mismo.
Para obtener mejores resultados es importante optimizar el sistema simulado con el
ruido incluido, de no ser ası, las respuestas obtenidas pueden ser menos eficientes.
Se observo que un cambio en la pieza mecanica sobre la cual se sostiene el pendulo no
genera cambios perceptibles en el sistema; y que un cambio en la altura de la barra,
lo cual modifica la inercia en la misma, dificulta la estabilizacion del pendulo, es decir,
se estabiliza pero le es mas difıcil mantenerse en su punto de equilibrio y reaccionar
rapido a las perturbaciones que se apliquen en el.
Una variacion en el rango del angulo del pendulo no se recomienda, debido a que en las
pruebas realizadas ningun controlador logro estabilizar el sistema para rangos mayores
al de [−15, 15], esto puede deberse a las capacidad del motor.
Para el sistema simulado e implementado, se observo que los sistemas difusos tipo 1
no son tan eficientes como los sistemas difusos tipo 2 (Tabla 5-2); esto se debe a que
los primeros no tienen en cuenta la incertidumbre que se presenta en el sistema, por lo
cual no se otorga a la salida la accion de control mas adecuada debido al ruido en el
sistema. Adicionalmente los sistemas difusos tipo 1 tienen una repuesta mas lenta que
los tipo 2.
88 6 Conclusiones y Trabajos Futuros
El controlador por variables de estado tiene una mayor eficiencia puesto que el criterio
ISE es mınimo y estabiliza en menor tiempo el pendulo (tal y como se observa en
la Fig. 5-9 y en la Tabla 5-2); sin embargo, la eficiencia de este controlador depende
directamente de que tan precisa es la caracterizacion de la planta, puesto que su diseno
depende de las ecuaciones que rigen el comportamiento del sistema, por lo que una
mala caracterizacion no permite un buen desempeno de este tipo de controladores. Por
esta razon se puede concluir que la caracterizacion realizada del sistema de pendulo
invertido implementado en el presente proyecto es acertada y efectiva.
La mayor ventaja de los controladores difusos, es que sin tener en cuenta las ecuaciones
que rigen el comportamiento de un sistema, estos llevan el sistema a la estabilidad;
sin embargo, como se observo en el presente trabajo, los difusos tipo 1 no son los
mas eficientes para sistemas con ruido, por lo que la caracterizacion del sistema en
este caso fue necesaria para poder simular y optimizar el sistema de tal forma que
este controlador lo llevara a la estabilidad, es decir, aunque la caracterizacion no sea
primordial para los sistemas difusos, es importante contar con ella para poder optimizar
un sistema y obtener un controlador mucho mas eficiente.
La seleccion del periodo de la senal AC es primordial a la hora de implementar el
controlador, dado que un periodo muy grande tiende a volver mucho mas lento el
sistema llevandolo a la inestabilidad, y un tiempo muy pequeno no genera cambios en
el mismo, por lo que generarıa un ciclo lımite en la planta.
La identificacion por otros toolbox de MatLabr no fue posible, debido a la inestabi-
lidad en lazo abierto que se presenta en el sistema de pendulo invertido implementado.
6.2. Trabajos Futuros
Aplicacion en laboratorios de fısica y matematica en la caracterizacion del sistema, y
de esta manera, evaluar los datos teoricos y practicos, para analizar la viabilidad y
eficiencia de la optimizacion, y ası mismo, plantear las pautas necesarias para lograr
establecer con mayor exactitud los parametros que rigen el comportamiento de un
sistema.
Diseno e implementacion de otras estrategias de control a partir del modelo dinamico
estimado, como control robusto, control PID, controladores difusos clasicos, entre otros.
Diseno e implementacion de un control de posicion del carro sobre su base.
Analisis del comportamiento del sistema para diferentes estrategias de control, donde
se determinen los parametros que podrıan llevar al sistema a tener un comportamiento
caotico.
6.2 Trabajos Futuros 89
Implementacion de una interfaz de usuario que permita interactuar con el sistema de
pendulo invertido, de tal forma que compare en tiempo real el sistema implementado y
simulado, por medio de la visualizacion del comportamiento fısico del sistema simulado.
Seleccionar una plataforma de hardware lo suficientemente robusta, escalable y de
bajo costo para soportar este y otro tipo de controles, y adicionalmente, implementar
comunicacion wifi, bluetooth, entre otros, lo cual permita el ajuste de parametros desde
celular localmente, y tambien desde internet si el sistema se monta en un entorno de
laboratorio remoto.
AAAnexos
A.1. Hoja de datos y manual de usuario
Documento anexo donde se describe de forma clara y concisa, como utilizar la planta del
sistema de pendulo invertido de trayectoria circular, algunas recomendaciones, posibles pro-
blemas y soluciones para el usuario, las partes que lo componen, el procedimiento para
ensamblar las piezas del mismo en caso de mantenimiento y de igual forma se describen las
caracterısticas principales del sistema.
A.2. Practicas de laboratorio
Documento anexo donde se desarrollan las posibles practicas de laboratorio para profesores y
estudiantes en el area de control, se muestran las ecuaciones que describen el comportamiento
del sistema de pendulo invertido de trayectoria circular y el procedimiento para realizar la
caracterizacion del mismo. Se propone y explica el diseno e implementacion de controladores
difusos y por variables de estado, para que a partir de ello, el usuario pueda realizar sus
propios controladores para esta planta, y ası mismo, se muestran los resultados esperados
para cada uno de los controladores propuestos.
A.3. Caracterizacion planta
Para la caracterizacion de la planta se seleccionaron 10 vectores de parametros eficientes:
92 A AAnexos
parametros1 = [0,0498 3,0000 0,0009 0,0000 0,0300]
parametros2 = [0,0498 0,1325 0,0678 0,0000 0,3667]
parametros3 = [0,0217 0,0234 0,1543 0,4430 1,0000]
parametros4 = [0,0217 1,0000 0,0200 0,0000 0,1100]
parametros5 = [0,0217 0,0247 0,1743 0,0000 1,0000]
parametros6 = [0,0120 2,6249 0,0054 0,0514 0,0038]
parametros7 = [0,0498 1,0000 0,0030 0,0000 0,0900]
parametros8 = [0,0167 0,7842 0,0019 0,0001 0,0443]
parametros9 = [0,0120 1,6249 0,0009 0,0005 0,0300]
parametros10 = [0,0498 1,8980 0,0010 0,0990 0,0476]
(A-1)
En la Tabla A-1, se pueden observar los rendimientos para cada vector respecto a cada
prueba realizada, donde las primeras 8 (S#) corresponden a pruebas con entrada seno y las
ultimas 8 (C#) corresponden a pruebas con el controlador difuso tipo 2 sin optimizar. Por
tanto, se seleccionan 3 mejores vectores teniendo en cuenta el mejor rendimiento, y a partir
de los parametros dados en otros sistemas de pendulo invertido [40], [41], [42], [43], [44], [45],
[46], [47], [48], [49]. En la Fig. A-1, se pueden observar los comportamientos del sistema
controlado con el difuso tipo 2, para estos vectores (parametros7,8,9), donde se descarta
parametros7, por tener un comportamiento inapropiado. Dado que los otros vectores tienen
un comportamiento similar, se selecciona parametros8 dado que tiene un mejor rendimiento.
Tiempo [s]0 20 40 60 80 100 120 140 160 180
Err
or [°
]
-14
-12
-10
-8
-6
-4
-2
0
2
4Error del Sistema
Pamámetros7
Pamámetros8
Pamámetros9
Figura A-1: Sistema controlado con un sistema difuso tipo 2.
A.3 Caracterizacion planta 93
Tabla
A-1
:R
endim
iento
par
a16
pru
ebas
y10
vect
ores
de
par
amet
ros.
Pru
ebas/
Vec
tore
s
12
34
56
78
910
S1
77,0
0455826
83,2
7479436
84,1
0014851
42,7
4942879
81,4
2761234
35,8
0350343
85,1
4246763
75,7
6515232
45,1
1424219
82,8
9637471
S2
67,2
4628388
77,1
3144931
77,3
9442049
27,4
3649947
74,6
3611953
19,5
3041622
78,0
4392316
65,8
8894771
29,4
9839915
74,8
0230523
3S
73,6
046945
81,3
4636314
81,6
9717701
40,6
2672014
79,4
754148
33,5
8496501
81,2
5337737
73,0
2627978
42,2
7412126
78,9
2547378
S4
89,8
4341944
93,9
0518436
95,1
9330399
51,2
0138538
94,7
9350602
34,8
7986146
91,4
4136301
89,4
140342
54,8
1275705
91,3
7133271
S5
91,3
9552867
93,3
0216214
94,2
3593103
59,9
4519449
94,6
8336118
45,3
6158268
90,5
4180257
91,5
7313862
62,5
3843069
90,6
1817605
S6
81,6
1651336
86,7
7877354
85,9
4314936
29,7
8098993
86,5
1137538
52,3
6968901
83,4
0814717
83,4
6335961
32,1
5505913
83,6
6952256
S7
89,9
039168
91,3
8811596
91,1
0510589
58,4
5384141
92,4
8203413
43,4
0004112
88,0
4421219
91,2
0872113
60,0
7813035
88,5
1629086
S8
83,2
9182934
89,1
2394428
87,9
2787895
27,4
0731036
88,1
5191493
5,7
9064588
85,6
4444736
81,7
6023844
29,7
9606096
85,2
9692126
Pro
med
io81,7
3834303
87,0
3134839
87,1
996394
42,2
0017125
86,5
2016729
33,8
400881
85,4
3996756
81,5
1248398
44,5
334001
84,5
1204964
Pru
ebas/
Vec
tore
s
12
34
56
78
910
C1
99,0
18894
98,5
4372864
98,1
2761071
99,0
7737343
98,5
1200669
94,7
3864368
99,2
4255821
99,2
4925373
99,1
0467432
99,1
7107871
C2
99,0
8389166
97,7
3238936
96,7
1038038
98,6
9122305
97,5
1785979
93,8
8466871
99,1
8109922
99,1
877769
98,7
9705462
99,1
7947605
C3
99,2
235286
97,2
8102694
96,3
4462377
98,6
9607857
97,0
6929698
94,0
3194378
99,0
3638486
99,3
7615777
99,1
0400385
99,0
815878
C4
98,3
4176452
98,1
0712377
97,5
5369549
99,4
5849778
98,0
4021523
95,9
2861765
98,4
2753414
98,4
4183071
99,1
5503885
98,3
4825093
C5
99,2
6674201
96,9
540846
95,8
0127773
98,5
0620416
96,6
5899488
92,8
9658425
99,0
8453342
99,3
5093639
98,9
2883897
99,0
8024125
C6
99,2
2695106
97,5
5855537
96,7
7676209
99,0
0524849
97,4
9194775
95,0
9093443
99,0
6399282
99,3
0027872
99,2
5461073
99,1
8373016
C7
99,2
3094108
98,0
195402
97,2
6273281
99,0
4303143
97,9
0271535
95,2
8287742
99,2
2557307
99,3
7360315
99,1
5200573
99,2
5786846
C8
99,3
2031661
99,0
1231069
98,8
4792279
99,1
9616397
99,0
0870901
96,0
3281081
99,2
1815207
99,3
6579849
99,3
0354419
99,2
2950098
Pro
med
io99,0
8912869
97,9
0109495
97,1
7812572
98,9
5922761
97,7
7521821
94,7
3588509
99,0
5997848
99,2
0570448
99,0
9997141
99,0
6646679
94 A AAnexos
A.4. Archivos MatLabr
Los archivos correspondientes a las simulaciones e implementaciones de la planta y sus con-
troladores se encuentran en el CD-ROM adjunto, cuyos archivos correspondientes son:
((funoptpara)): Sistema de pendulo invertido lazo abierto, para caracterizacion con en-
trada seno.
((funoptspi )): Sistema de pendulo invertido controlado con un difuso tipo 2, para carac-
terizacion.
((DifusoTipo1 )): Sistema de pendulo invertido controlado con un difuso tipo 1, Simula-
cion.
((DifusoTipo1Serial )): Sistema de pendulo invertido controlado con un difuso tipo 1,
Implementacion.
((DifusoTipo2 )): Sistema de pendulo invertido controlado con un difuso tipo 2, Simula-
cion.
((DifusoTipo2Serial )): Sistema de pendulo invertido controlado con un difuso tipo 2,
Implementacion.
((ControlK )): Sistema de pendulo invertido controlado con un vector de ganancias K,
Simulacion.
((ControlKSerial )): Sistema de pendulo invertido controlado con un con un vector de
ganancias K, Implementacion.
((S#)): Pruebas del sistema real para realizar las respectivas comparaciones para la
caracterizacion del sistema con entradas seno.
((C#)): Pruebas del sistema real para realizar las respectivas comparaciones para la
caracterizacion del sistema controlado con un difuso tipo 2.
((CSPI.m)): Funcion creada para interactuar con el usuario.
A.5. Artıculo [1]
Design and Implementation of a CBR IntervalType-2 Fuzzy Controller for Stabilizing an Inverted
PendulumAngela P. Duquino S., Christian F. Rojas V., Jose J. Soriano M. and Diana M. Ovalle M.
Facultad de IngenierıaUniversidad Distrital Francisco Jose de Caldas
Bogota - [email protected], [email protected], [email protected], [email protected].
Abstract—In this work we develop an interval type-2 fuzzycontroller using Concretion Based on Boolean Relations (CBR)for stabilizing an inverted pendulum. We design and implementthe controller, then optimize the parameters of the membershipfunctions and the controller constants in order to improve theperformance of the controlled system. For comparison purposes,we also design, implement and optimize a type-1 fuzzy controller.Finally, we conclude by stating which controller stabilizes thesystem more efficiently; such evaluation is made using the integralsquare error together with the performance of the system.
Index Terms—Type-2 fuzzy systems, inverted pendulum, CBR,Kleen logic, interval.
I. INTRODUCTION
Type-2 fuzzy systems [1], [2] have been widely usedtowards the technological development in telematics, telecom-munications and industrial processes. However, there are fewreferences about the implementation of this systems in control[3]. Some of the more typical applications are oriented towardsTakagi Sugeno Kang (TSK) or Mamdani implications [4], [5].Therefore, this paper aims to present an application of type-2 fuzzy systems to stabilize an inverted pendulum [6] usingConcretion based on Boolean Relations (CBR) [7] in order toobtain the corresponding control actions.
CBR is a concretion and defuzzyfication method employedto simplify the calculations for the fuzzy inference systems.Nevertheless, it can also be use as a design methodology forfuzzy inference systems having into account the resolutionof control systems based in automatisms [7]. In addition, weselected this kind of controller since its computational costis low, it is straightforward to implement and the decisionmaking process in it is fast. CBR design methodology isshowed in Fig. 1. However, the selection process for thezero order CBR coefficients requires of an expert system foridentify the associated values. It is worth to mention thatzero order CBR are the constant coefficients that multiply thetruth tables outputs. In this case, we use the integral squareerror (ISE) criteria to determine the more efficient valuesfor the implementation. With that in mind, we use the toolsMATLABr [8] has for this purpose and optimize over theCBR controller parameters to reduce ISE.
Boolean Partition of the Universe of DiscourseBoolean codification of the regions of the universe of discourse
Inference RulesLinguistic Rules Statement including the Boolean partitions
Truth TableLinguistic Rules translated to a truth table
Boolean Relations SimplificationSimplification using Karnaugh maps or optimal algorithms
Inference System Implementationusing Fuzzy operators
Fig. 1. CBR design methodology [7].
Fig. 2. Implemented inverted pendulum system.
The inverted pendulum system implemented is shown inFig. 2. The system motion is a circular path and the variation ofthe angle of the pendulum is defined in a range of [−15o, 15o].Newtonian mechanics was used to analyze the system and
to obtain the equations for modelling the system behavior. Alinear model was obtained by the Jacobian method aroundthe equilibrium point for the pendulum vertical position.Difference equations by the method of zero-order hold (zoh)were established [9], in order to observe the state variablesand determine the outputs and inputs of the system. Finally, aparameter identification process was carried out to define themodel of the system.
II. METHODOLOGY
A. Inverted Pendulum Model
θ
l
y
f
lmg
O RH
u
P
M
cosl θV
m f.
R
Fig. 3. Schematic inverted pendulum system.
An schematic diagram of the inverted pendulum system forsystem modelling purposes is showed in Fig. 3. The statevariables were selected as x1(t) = θ(t) angular position ofthe pendulum respect to the vertical axis, x2(t) = θ(t) angularvelocity of the pendulum, x3(t) = φ(t) angular position of thecart (since the cart motion is circular, around a fixed axis asit can see in Fig. 2), x4(t) = φ(t) is the angular velocityof the cart. The system has only one input u(t) = V (t),the voltage over the DC motor which makes the motionpossible. The dynamical analysis for the pendulum systemwas based on Newtonian mechanics principles, which derivedin the equations that model the system behavior. Since theresulting system model was nonlinear, we obtained the equilib-rium point (xe, ue) = (x1e, x2e, x3e, x4e, ue) = (0, 0, 0, 0, 0)and linearized around it. All of the system parameters weremeasured or calculated directly using data sheets of differentcomponents. In order to obtain a discrete model for the system,we used the zero order hold (zoh) discretization method on thecontinuous system model [9], the discrete model obtained isas follows
x1[n + 1] = 1.0095 x1[n] + 0.0228 x2[n] + 0.000005 x4[n] − 0.0004u[n]
x2[n + 1] = 0.5811 x1[n] + 0.5639 x2[n] + 0.0003 x4[n] − 0.0268u[n]
x3[n + 1] = −0.0003 x1[n] + 0.0002 x2[n] + x3[n] + 0.03 x4[n] + 0.0009u[n]
x4[n + 1] = −0.0179 x1[n] + 0.0131 x2[n] + 0.9992 x4[n] + 0.0614u[n]
y1[n] = x1[n],
y2[n] = x4[n],
(1)
where the state variables are function of n, the discrete timevariable, and the system outputs are y1[n] and y2[n]. In thiscase, we are mainly interested in stabilizing the pendulum ina vertical position, no matter where the cart angular positionis. Therefore, the controlled variable is x1 and since the anglewhere we want for it to be is zero degrees respect to thevertical axis, we define the error discrete signal e[n] as
e[n] = −x1[n]. (2)
Specifically related to the physical system, the pendulumangular position is limited between ±15o, which is replicatedin the simulated system. The reason for using interval type-2systems is the measurement uncertainty for very small angles,therefore the control actions needed should undertake thisuncertainty.
B. Controller Design
1) Controller input and output selection and its charac-teristics representation by membership functions: For thecontroller design, we had into account two inputs and oneoutput. The inputs are the error, see (2), and its derivative.They are defined for the Universes [−15o, 15o] for the error,and [−300o/s, 300o/s] for the error derivative. The controllerhas only one output, related with the voltage over the DCmotor within the cart, and it is defined for the Universe[−12V, 12V ].
Since our goal is to implement a zero order controller for in-terval type-2 fuzzy systems, we define the inputs membershipfunctions as interval functions and the output ones as type-2 fuzzy functions. In that sense, we define two membershipfunctions for each input and for each output membershipfunction we define two, one superior and one inferior, as itis shown in Fig. 4.
The membership functions were defined as trapezoidal andgaussian functions. For the inputs, we used trapezoidal func-tions mainly because the system has to have quick transitions.The trapezoidal functions are defined as
ytrap =
0, for x ≤ a,
mx+ b, for a < x < c,
1, for x ≥ c,
(3)
where a and c define the slope of the function. In Fig. 4 (a),we can see that the slope for the error membership functionsis 5 and for the error derivative ones is 50. These slopes areoptimized later, with the initial values as in Fig. 4 (a).
For the output, we used gaussian functions, since thecontroller needs to generate maximum but soft actions definedin an interval, in order to avoid limit cycles. The gaussianfunctions are defined as
ygauss =1
h+ k(x− c)2, h ≥ 1, (4)
where h is the height of the function, k is the width and c thecenter. As we see in Fig. 4 (b), the height and width of thesuperior functions is one (h = k = 1); while for the inferiorfunctions we have h = 1.4 and k = 1 for the first and fourth
Error [°]-15 -10 -5 0 5 10 15
0
0.5
1Error membership functions
E1
E2
Derivate of the Error [°/s]-300 -200 -100 0 100 200 3000
0.5
1Derivative of the error membership functions
DE1
DE2
(a) Input interval fuzzy sets.
Voltage [V]-10 -5 0 5 10
0
0.2
0.4
0.6
0.8
1Output membership functions
VANVBNVBPVAP
(b) Output CBR type-2 fuzzy sets.
Fig. 4. Controller input and output membership functions.
functions and h = 2 y k = 0.5 for the second and thirdfunctions, with the centers located in c = −10, c = −3, c = 3y c = 10, respectively.
The values for the fuzzy sets and for the control actionswere selected having into account that the maximum possibleaction over the DC motor is ±10V and the minimum one is±3V . In the same way, the slope for the inputs membershipfunction was chosen as 5 for the error, in order to have anactive zone near zero; and for the error derivative, we concludethat a slope ten times more than for the error would do a goodjob.
2) CBR Controller: Initially, the system truth table wasanalyzed by boolean logic to determine the system states andthe possible control actions. Since we have interval type-2fuzzy sets, we considered to do the study starting from thediagram in Fig. 5 by Morgan logic. As we see in Fig. 5, foreach control input there is a defined trajectory in [0, 1], whichincludes values from a third element, but not from a fourth one.The last is due to the fact that the input membership functionshave only one monotonically creasing transition between 0 and
u
v (1,1)(0,1)
In2
In1
1
0
(0,0)
Fig. 5. Diagram for analyzing Morgan’s Logic.
TABLE IKLEEN LOGIC TRUTH TABLE.
E1 E2 DE1 DE2 V AN V BN V BP V AP0 0 0 0 0 0 0 1u 0 0 0 0 0 0 11 0 0 0 0 0 u 01 u 0 0 0 u 0 01 1 0 0 1 0 0 00 0 u 0 0 0 0 1u 0 u 0 0 0 u 01 0 u 0 0 0 u 01 u u 0 0 u 0 01 1 u 0 1 0 0 00 0 1 0 0 0 0 1u 0 1 0 0 0 u 01 0 1 0 0 1 1 01 u 1 0 0 u 0 01 1 1 0 1 0 0 00 0 1 u 0 0 0 1u 0 1 u 0 0 u 01 0 1 u 0 u 0 01 u 1 u 0 u 0 01 1 1 u 1 0 0 00 0 1 1 0 0 0 1u 0 1 1 0 0 u 01 0 1 1 0 u 0 01 u 1 1 1 0 0 01 1 1 1 1 0 0 0
1. Therefore, we determined that the controller analysis canbe carried out using a 3 elements algebra, that is Kleen logic.
Trough Kleen logic, the truth table shown in Table I wasobtained. From the conjunctive normal form we get the systemoutputs, after simplification, the expressions for the output asa function of the inputs were obtained as
V AN = E1E2[1−DE1 +DE2(DE1DE2)],
V BN = E1(1− E2)[E2(1−DE1)(1−DE2)(1−DE1) +DE1],
V BP = E1(1− E2)[(1− E1)DE1DE2(DE2) + (1−DE2)],
V AP = (1− E1)(1− E2)[(1−DE2)(1−DE1DE2) +DE1DE2].
(5)Finally, having into account that we are working with a
type-2 fuzzy system, we have two functions for the CBR:one inferior and one superior. Therefore, the final CBR outputfunction is given by
CBRs =V alV ANsV AN + V alV BNsV BN+
V alV BPsV BP + V alV APsV AP,
CBRi =V alV ANiV AN + V alV BNiV BN
+ V alV BPiV BP + V alV APiV AP,
CBR =CBRs + CBRi
2,
(6)
where V al constants will be further optimized and their initial
values are
V alV ANs = V alV ANi = −10,
V alV BNs = V alV BNi = −3,
V alV BPs = V alV BPi = 3,
V alV APs = V alV APi = 10.
(7)
C. Controller optimization
The optimization, as it was mentioned before,was made over the slope of the inputs membershipfunctions and over the CBR constants (inferior andsuperior). Therefore, we have 10 parameters to optimize.Let us define the set of parameters to optimize asΩ = CEE, CDEE, V alV ANs, V alV ANi, V alV BNs,V alV BNi, V alV BPs, V alV BPs, V alV APs, V alV APi,those parameters have inferior and superior limits, which willbe useful in the optimization process. Those limits in theparameters are
0 ≤ CEE ≤ 15, 0 ≤ CDEE ≤ 300,−12 ≤ V alV ANs ≤ −7, −12 ≤ V alV ANi ≤ −7,−7 ≤ V alV BNs ≤ 0, −7 ≤ V alV BNi ≤ 0,0 ≤ V alV BPs ≤ 7, 0 ≤ V alV BPs ≤ 7,7 ≤ V alV APs ≤ 12, 7 ≤ V alV APi ≤ 12,
(8)
which where defined having into account the membershipfunctions and the physical system characteristics.
The optimization criteria selected is ISE, defined by
J =1
Ts
Ts∑
n=0
e2[n], (9)
where e[n] is defined as in (2).The optimization problem we aim to solve can be stated as
follows
minΩ
J =1
Ts
Ts∑
n=0
e2[n]
subject to (1),(5),(6),(8),
(10)
where u[k] takes the value of CBR in (6) at every samplingtime.
The optimization problem defined in (10) was solved usingthe fmincon MATLABr function, which implements an inte-rior point algorithm. The optimization was done offline, usingthe discrete system model defined in (1), for a fixed controlhorizon of 30 seconds.
D. Controller implementation and simulation
A data acquisition system was embedded in the pendulumsystem, where the system outputs were acconditionated to beread by a microcontroller, which sends those values to a PC. Inthe PC, the controller is implemented on a Matlab code, whichfrom the system outputs calculates the controller inputs andoutput. The controller output is sent to the system input by the
PC through the microcontroller, where it is acconditionated tofeed the system actuator in an adequate way.
The closed loop simulation was done also on Matlab, wherethe system model is also coded and replaces the physicalsystem behavior. The simulation includes some noise addedon the outputs signals, the noise was type white gaussian ofzero mean and variance equals to one.
III. RESULTS
A. Initial CBR Type-2 Controlled SystemThe physical inverted pendulum tends to a limit cycle,
that is, it keeps oscillating and does not tends to zero. Thisphenomenon could be caused because of the communicationdelay while working the pendulum together with the computer,and also due to a mechanical delay (response time) of the DCmotor.
In order to stabilize the physical system, we adjusted thecontroller having into account this delay to give the systemenough time to response. That was done applying to the systemAC signals instead of DC signals, as it was done previously.Specifically, the AC applied signal was a square signal withan amplitude between zero and the CBR output value, withduty cycle of 60% and period of 300 ms. The last valuewas selected experimentally, after measuring a communicationdelay of 30ms.
With the initial parameters and the adjustments above, thecost function value obtained was ISESimulated = 64.7709and ISEPhysical = 171.72. The system behavior can beobserved in Fig. 6.
Time [s]0 5 10 15 20 25 30
Err
or [°
]
-15
-10
-5
0
5
10
15System error
SimulatedPhysical
Fig. 6. CBR type-2 controlled system response.
B. Optimized CBR Type-2 Controlled SystemTaking the previous system, solving the optimization prob-
lem, as it was explained before, we obtained the parameters
CEE = 4.8255, CDEE = 162.8273,V alV ANs = −9.0708, V alV ANi = −9.0228,V alV BNs = −3.6146, V alV BNi = −2.6273,V alV BPs = 4.7316, V alV BPi = 3.4572,V alV APs = 8.999, V alV APi = 89777.
(11)
We show the system behavior obtained with the param-eters as in (11) in Fig. 7. For the cost function we haveISESimulated = 62.9624 and ISEPhysical = 67.86.
Time [s]0 5 10 15 20 25 30
Err
or [°
]
-15
-10
-5
0
5
10System error
SimulatedPhysical
Fig. 7. Optimized CBR type-2 controlled system response.
C. Type-1 Fuzzy Controlled System
For the type-1 fuzzy controller design, we took the sameinputs membership functions for the error, E1, and for the errorderivative DE1. In the same way, for the output membershipfunctions, we only considered the superior functions showedin Fig. 4. In order to get the controller output, from the Kleentruth table, using the conjunctive normal form we have
V AN = E1DE1,V BN = (1− E1)DE1,V BP = E1(1−DE1),V AP = (1− E1)(1−DE1).
(12)
Finally, for the CBR output, we have
CBR =V alV AN ∗ V AN + V alV BN ∗ V BN
+ V alV BP ∗ V BP + V alV AP ∗ V AP.(13)
With the initial parameters, for the cost function we haveISESimulated = 4693.1 and ISEPhysical = 4444.9.
D. Optimized Type-1 Fuzzy Controlled System
Solving the optimization problem
minΩ
J =1
Ts
Ts∑
n=0
e2[n]
subject to (1), (12), (13), (8),
(14)
the parameters values obtained were
CEE = 3.8853, CDEE = 258.3485,V alV AN = −9.1855, V alV BN = −0.0216,V alV BP = 0.0056, V alV AP = 9.3574.
(15)
In Fig. 8, we show the system behavior obtained withthe parameters as in (15). For the cost function we haveISESimulated = 134.1448 and ISEPhysical = 102.12.
IV. DISCUSSION
In Table II, we show the cost function values (ISE) foreach of the tests previously described. There, we can seethat the best behavior for the simulated system is obtainedwith the optimized system without delay, for the parametersdefined in (11) with ISE = 62.9624. Nevertheless, we needto have into account that the simulated system has no delays,
Time [s]0 5 10 15 20 25 30
Err
or [°
]
-15
-10
-5
0
5System error
SimulatedPhysical
Fig. 8. Optimized type-1 controlled system response.
no perturbations, nor noise that could affect the measurementsand, as it was showed before, if we do not take into accountthe delay for the physical system, it presents a limit cycle.Therefore, for the physical system we can see that the bestperformance was obtained for the delayed optimized system,for the parameters defined in (11) with ISE = 67.86. With thepurpose of comparison, the system behavior for the differentcases is shown in Fig. 9.
TABLE IIISE VALUE FOR DIFFERENT TESTS WITH THE INVERTED PENDULUM
SYSTEM.
System ISECBR without Simulated 64.7709optimization Physical 171.72
CBR optimized Simulated 62.9624with (11) Physical 67.86Type-1 Simulated 4692.1
without optimization Physical 4444.9Type-1 Simulated 134.1448
optimized with (15) Physical 102.12
For comparison purposes, a type-1 fuzzy controller wasdesigned and implemented and, as it can be observed fromTable II, this controller had a less efficient performance thatthe type-2 controllers, as it was expected.
A classic type-2 fuzzy system with Mamdani (standar)implication and Nie-Tan reducer was designed, taking thesame input and output membership functions as in Fig. 4 andwith the initial parameters defined in (7). After implementingthe controller, the closedloop system was unstable, even afterthe optimization process. The reasons for which this controllerdid not work are yet unknown.
V. CONCLUSIONS
We checked that type-2 fuzzy systems are useful to controlphysical systems, as in the case of the inverted pendulum.However, due to its complexity (i.e. parameters number in-volved) its related computational costs is higher than for othertype of controllers.
For the particular case, we observed that the type-2 fuzzycontroller has a good performance around values near 0o (i.e.pendulum vertical position), since there were an uncertainty
Time [s]0 5 10 15 20 25 30
Err
or [°
]
-10
0
10
Simulated system errorCBR Type-2CBR Optimized type 2CBROptimized Type-1
Time [s]0 5 10 15 20 25 30
Err
or [°
]
-10
0
10
Physical system errorCBR Type-2CBR Optimized type 2CBROptimized Type-1
Fig. 9. Responses system controlled.
zone due mainly to noise. Therefore, the use of intervalmembership input functions was very effective, as it was tohave an uncertainty range at the output in order to generatean adequate control action for small angular positions.
Once the pendulum is in vertical position (i.e. stabilized),when controlling it with the CBR type-2 controller, if pertur-bations are applied on the system (i.e. pushing the pendulum),the controller with parameters defined in 11 keeps a niceperformance taking the pendulum back to the vertical position.
As it was expected, the optimized CBR controller exhibes abetter performace than the initial CBR controller with parame-ters defined in (7). We saw that a change in the error derivativemembership functions width improved the controlled systemperformance. However, the improvement is evident for thesimulation, but not much for the physical system, as it is shownin Table II.
For the inverted pendulum system implemented, we ob-served that type-1 fuzzy controllers are not as efficient as thetype-2 ones. That is mainly because the type-1 controller donot have into account the uncertainties present in the system,generating a non adequate control action, which over thephysical system was evident since the DC motor sometimesgot stuck. Also, in general, type-1 fuzzy systems have slowerresponse than type-2 ones, see Fig. 9.
ACKNOWLEDGMENT
The work in this paper is a partial result of the researchproject entitled “Design and Implementation of Basic Plantsfor Teaching Control Concepts in Engineering” (Originally inspanish “Diseno e Implementacion de Plantas Basicas para laEnsenanza de Conceptos de Control en Ingenierıa”, codigo:
2-7-382-13), directed by Diana M. Ovalle and supportedby Centro de Investigaciones y Desarrollo Cientıfico fromUniversidad Distrital Francisco Jose de Caldas, beneficiaryfrom Convocatoria 8-2013.The inverted pendulum prototype was developed by PaolaDuquino as her capstone project, within the research projectabove, there are no references to the model or anything relatedto the prototype itself because the results have not beenpublished yet.
REFERENCES
[1] Masao Mukaidono, Yeung Yam and Vladik Kreinovich, Intervals is AllWe Need: An Argument. Proceedings of The Eighth International FuzzySystems Association World Congress IFSA’99, Taipei, Taiwan, August17-20, 1999, pp. 147-150.
[2] Mai Gehrke, Carol L. Walker and Elber A. Walker, Normal forms andtruth tables for fuzzy logic. Fuzzy Sets and Systems (Impact Factor: 1.99).08/2003; 138(1):25-51. DOI: 10.1016/S0165-0114(02)00566-3
[3] Jerry M. Mendel, Uncertain. Rule-Based Fuzzy Logic Systems. Introduc-ction and new directions, 1rd ed. USA: Los Angeles, CA, 2011.
[4] G. K. Sierra, J. O. Bulla and M. A. Melgarejo, An Embedded Type-2Fuzzy Processor For The Inverted Pendulum Control Problem . IEEELatin America Transactions, Vol. 9, No. 3, June 2011
[5] Feijun Song and Samuel M. Smith, A Takagi-Sugeno Type Fuzzy LogicController with only 3 Rules for a 4 Dimensional Inverted PendulumSystem . Systems, Man, and Cybernetics, 2000 IEEE International Con-ference on, vol. 5, October 2000.
[6] Julian Barreiro Gomez y Miguel Eduardo Hernandez Figueredo, Disenoy estudio comparativo del desempeno de controladores difusos con ysin simplificacion de formulas a partir de la aplicacion de un penduloinvertido. Trabajo de Proyecto de Grado, Universidad Santo Tomas.Colombia: Bogota, 2011.
[7] Espitia, H.E., Chamorro, H.R. y Soriano, J.J., Fuzzy controller designusing concretion based on boolean relations (CBR), ComputationalIntelligence (UKCI), 2012 12th UK, Workshop on.
[8] The MathWorks Inc, Matlab Documentation. Copyright (C) 2015.[9] K. Ogata, Ingenierıa de Control Moderna. Prentice Hall. 1998.[10] MathWorks, Constrained Nonlinear Optimization Algorithms, [on line].
Disponible en: http://www.mathworks.com/help/optim/ug/constrained-nonlinear-optimization-algorithms.html#brnpd5f
Bibliografıa
[1] Angela P. Duquino S., Christian F. Rojas V., Jose J. Soriano M. and Diana M. Ovalle M.,
“Design and Implementation of a CBR Interval Type-2 Fuzzy Controller for Stabilizing an
Inverted Pendulum”. 2nd Workshop on Engineering Applications - International Congress
on Engineering (WEA - 2015).
[2] Diana Marcela Ovalle Martınez, Propuesta de proyecto de Investigacion: “Diseno e im-
plementacion de plantas basicas para la ensenanza de conceptos de control en ingenierıa”.
Grupo de investigacion IDEAS, Universidad Distrital Francisco Jose de Caldas. Facultad
de Ingenierıa. Bogota, abril 2013.
[3] Quanser Innovate Educate,“Linear Servo Base Unit with Inverted Pendulum”. Canada,
2013.
[4] Luisa Fernanda Escobar Davila y Oscar Danilo Montoya Giraldo, “Control Hıbrido de
Pendulo de Furuta”. Universidad Tecnologica de Pereira, Programa de Ingenierıa Electri-
ca. Pereira, Colombia, 2012.
[5] Quanser Innovate Educate, “Rotary Double Inverted Pendulum”. Canada, 2013.
[6] Barbosa, D.I.; Castillo, J.S.; Combita, L.F., “Rotary inverted pendulum with real time
control”, in Robotics Symposium, 2011 IEEE IX Latin American and IEEE Colombian
Conference on Automatic Control and Industry Applications (LARC) , vol., no., pp.1-6,
1-4 Oct. 2011.
[7] Morales G.Y., Plazas S.A. and Combita L.F., “Implementation and Closed Loop Iden-
tification of a Two Wheeled Inverted Pendulum Mobile Robot”, in Robotics Symposium
and Latin American Robotics Symposium (SBR-LARS), 2012 Brazilian, pp.97-102, 16-19
Oct. 2012.
[8] John Charais y Ruan Lourens, “AN964. Software PID Control of an Inverted Pendulum
Using the PIC16F684 ”. Microchip Technology Inc. DS00964A. 2004.
[9] G.C. Goodwin, A.M. Medioli, W. Sher, L. Vlacic, and J.S. Welsh, “Emulation-Based
Virtual Laboratories: A Low-Cost Alternative to Physical Experiments in Control Engi-
102 BIBLIOGRAFIA
neering Education”, IEEE Transactions on Education, vol.54, no.1, pp. 48-55, Feb. 2011,
doi: 0.1109/TE.2010.2043434
[10] Nicolas Gomez Villegas y Vanessa Rodrıguez Lora, “Diseno e Implementacion de un
control automatico para una maquina cortadora de piezas de madera”. Universidad Eafit,
departamento de informatica y sistemas. Colombia, 2005.
[11] William E. Dıaz Moreno y Nelson F. Velasco Toledo, “Metodologıa para seleccionar
materiales en ingenierıa mecatronica”. Universidad Militar Nueva Granada. Colombia.
[12] Hector alvaro Gonzalezy Dairo Hernan Mesa. Velasco Toledo, “La importancia del meto-
do en la seleccion de materiales”. Universidad Tecnologica de Pereira. ISSN 0122-1701.
Colombia. Mayo 2004.
[13] Alberto Rossa Sierra Dr. Ing. y Francisco J. Gonzalez Madariaga Dr. Ing, “El proble-
ma del diseno y seleccion de materiales”. Laboratorio de Innovacion Tecnologica para el
Diseno. Universidad de Valladolid. Espana, 2014.
[14] Pittman, “Encoders. E22A Incremental Optical Encoder”. 2015.
[15] Texas Instruments Incorporated, “Mixed Signal Microcontroller: MSP430G2x53 ”.
SLAS735I. April 2011. Revised May 2013.
[16] Sigma electronica Ltda, “Tarjeta FT232 ”. Sigma electronica Ltda. 2015.
[17] FTDI Chip, “Future Technology Devices International Ltd. FT232R USB UART IC ”.
FT 000053. 2010.
[18] Texas Instruments Incorporated, “10-Bit Digital to Analog Converters”. SLAS142E.
October 1996. Revised June 2007.
[19] Adafruit, “Slip Ring with Flange - 22mm diameter, 6 wires, max 240V @ 2A”[online].
Estados Unidos. Disponible en: http://www.adafruit.com/product/736
[20] Electro-Miniatures Corporation, “How a Slip Ring Works”[online]. Cleveland, Estados
Unidos. Disponible en: http://www.electro-miniatures.com/HowSlipRingWorks.shtml
[21] Windpower, Engineering & Development, “Trends in slip
rings”[online]. Moonachie, Estados Unidos. Disponible en:
http://www.windpowerengineering.com/design/electrical/trends-in-slip-rings/
[22] acrilico-y-policarbonato.com, “Propiedades del Acrılico”[online]. Mexico, Ul-
tra Plas S.A. de C.V. y el Acrılico . Disponible en: http://www.acrilico-y-
policarbonato.com/acrilico-propiedades.html
BIBLIOGRAFIA 103
[23] Universidad de Cadiz, “Tabla Periodica: Propiedades del Aluminio”[online]. Espana.
Disponible en: http://tablaperiodica.uca.es/Tabla/elementos/Aluminio/Grupo1/Prop. %20Al
[24] Henry David Flores Perez y Alvaro Ivan Lopez Damian, “Acero”. Universidad Catolica
Santo Toribio de Mogrovejo, Escuela Profesional de Ingenierıa Civil y Ambiental. Peru,
2011.
[25] Julio Cesar Alzate Herrera, “Propiedades, usos e industrializacion del Caucho”. Colom-
bia, 2005.
[26] InvenSense Corporation, “MPU Hardware Offset Registers Application Note”. U.S.A.
2013.
[27] Digi International Inc, “Xbee/XbeePRO RF Modules”. U.S.A. 2009.
[28] Pittman, “Brush Commutated DC Servo Motors. 6213 Series”. 2015.
[29] Motorola, Inc, “Semiconductor Technical Data. TIP41C ”. 1995.
[30] Prof. Bolanos D, “Introduccion a los disipadores de calor”. 2015.
[31] Disipa S.C.P., “Disipadores de Extrusion. Heat Sinks Estrued”. 2015.
[32] K. Ogata, “Ingenierıa de Control Moderna”. Prentice Hall. 1998.
[33] B. Kuo, “Sistemas de Control Automatico”. Prentice Hall. 1996.
[34] HyperPhysics, “Momento de Inercia: Varilla”[online]. Atlanta, Georgia: Carl R. Na-
ve, Departament of Physics and Astronomy, Georgia State University. Disponible en:
http://hyperphysics.phy-astr.gsu.edu/hbasees/mi2.html#irod
[35] Walter Dıaz, “Fluidos Viscosos”[online]. Argentina: Universidad Nacional de Tu-
cuman. Disponible en: http://www.docencia.unt.edu.ar/bioquimicafisica/Teorias/6 %20-
%20Viscosidad.pdf
[36] Laplace, “Fuerzas de Rozamiento (GIE)”. Espana: Departamen-
to de Fısica Aplicada III, Universidad de Sevilla. Disponible en:
http://laplace.us.es/wiki/index.php/Fuerzas de rozamiento (GIE)
[37] Marvin or Bonnie Stone, “DC Motors”[online]. Estados Unidos: Shielded Pair. Dispo-
nible en: http://shieldedpair.net/BAE5413/DC %20Motors.pdf
[38] Manuel Guillermo Quijano Ortega y Carlos Gerardo Hernandez Capacho, “Obtencion
de los parametros del motor que se utilizara en el sistema de locomocion de una esfe-
ra rodante”. Universidad Pontificia Bolivariana, Escuela de Ingenierıa y Administracion,
Facultad de Ingenierıa Electronica, 2009.
104 BIBLIOGRAFIA
[39] Emilis Gomez Gutierrez, “Introduccion al filtrado digital”. Escola Superior de Musica
de Catalunya, Departament de Sonologia. Cataluna, Espana, 2010.
[40] Ali Poorhossein and Ali Vahidian-Kamyad, “Design and implementation of Sugeno con-
troller for Inverted Pendulum on a Cart system”. Ferdowsi University of Mashhad, Engi-
neering and mathematical school, September 2010.
[41] Duckgee Park, Dongkyoung Chwa and Suk-Kyo Hong, “An Estimation and Compensa-
tion of the Friction in an Inverted Pendulum”. Department of Electrical and Computer
Engineering, Ajou University. Korea, October 2006.
[42] Abdelkader Merakeb, Farida Achemine and Frederic Messine, “Optimal Time Control to
Swing-Up the Inverted Pendulum-Cart in Open-Loop Form”. Departement de Mathema-
tiques, Universite Mouloud. France, 2013.
[43] Arindam Chakraborty and Jayati Dey, “Real-time Study of Robustness Aspects of Perio-
dic Controller for Cart-Inverted Pendulum System”. Department of Electrical Engineering.
India, 2013.
[44] Oscar Danilo Montoya Giraldo Juan Guillermo Valenzuela Hernandez y Didier Giraldo
Buitrago, “Balanceo y Estabilizacion del Pendulo Invertido Empleando Redes Neuronales
Artificiales y un Regulador Lineal Optimo con Criterio Cuadratico (LQR)”. Ingenierıa
electrica, Universidad Tecnologica de Pereira. Pereira, Colombia, Abril 2015.
[45] Tinoco Romero R.F. y Orces Pareja E.H., “Modelado, simulacion y control de un pendu-
lo invertido usando componentes analogos simples”. Facultad de Ingenierıa Mecanica, Es-
cuela Superior Politecnica del Litoral. Guayaquil, Ecuador, Octubre, 2007.
[46] Lyda Vanessa Herrera Sepulveda y Uriel Alberto Melo Pinzon, “Control en espacio de
estados para un prototipo real de pendulo invertido”. Universidad Industrial de Santander,
Facultad de Ingenierıas Fısico-Mecanicas, Escuela de Ingenierıas Electrica, Electronica y
de Telecomunicaciones. Bucaramanga, Colombia, 2013.
[47] Carlos Andres Osorio Zuniga, “Diseno, construccion y control de un pendulo invertido
rotacional utilizando tecnicas lineales y no lineales”. Universidad Nacional de Colombia,
Facultad de Ingenierıa, Maestrıa en Ingenierıa, Automatizacion Industrial. Bogota, Co-
lombia, 2009.
[48] Nenad Muskinja and Boris Tovornik, “Swinging Up and Stabilization of a Real Inver-
ted Pendulum”. Faculty of Electrical Engineering and Computer Science, University of
Maribor. Maribor, Slovenia, January, 2006.
[49] Oscar Oswaldo Rodrıguez y Helvert Eduardo Cely, “Diseno e implementacion de un
pendulo invertio sobre un carro aplicando estrategias de control basado en LMI ”. Univer-
sidad Pedagogica y Tecnologica de Colombia. Sogamoso, Colombia, 2012.