SciELO - Scientific Electronic Library Online

 
vol.30 número2Visión computacional para aplicaciones automotivasSimulación numérica del flujo de aire en una brida de admisión de un vehículo de competición índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

  • No hay articulos citadosCitado por SciELO

Links relacionados

  • No hay articulos similaresSimilares en SciELO

Compartir


Tecnia

versión impresa ISSN 0375-7765versión On-line ISSN 2309-0413

Tecnia vol.30 no.2 Lima jul-dic 2020

http://dx.doi.org/10.21754/tecnia.v30i2.623 

Artículos originales

Sintonía de un controlador PID para un péndulo invertido mediante algoritmos meta-heurísticos: luciérnaga y recocido simulador

PID controller tuning for an inverted pendulum through meta-heuristic algorithms: firefly and simulated annealing

1 Universidad Nacional de Ingeniería, Facultad de Ingeniería Eléctrica y Electrónica, Lima, Perú.

RESUMEN

En las plantas industriales un gran porcentaje de los controladores está basado en el Algoritmo de Control PID, esto por su sencillez y robustez, se tiene conocimiento que la performance de la Planta se puede ver afectada en cantidad y calidad del producto debido a la inadecuada determinación de los parámetros del controlador, incluso perjudicar a los mismos actuadores. En este trabajo, se muestra una alternativa a los métodos clásicos de sintonía de dichos parámetros: los algoritmos metaheurísticos, los cuales pertenecen a la rama de Búsqueda Informada dentro de la Inteligencia Artificial, cuyo objetivo es optimizar una determinada función de costo evitando los máximos o mínimos locales. Se consideró el modelo linealizado (para fines prácticos) de un sistema de péndulo invertido con un carro deslizante para la aplicación de dos algoritmos: el recocido simulado y el de luciérnagas; los cuales tuvieron como rango superior el determinado por el Criterio de Routh-Hurwitz para todas las especificaciones de rendimiento en el dominio del tiempo. En los resultados se pudo determinar que los parámetros optimizados del controlador PID no tenían una diferencia significativa y la velocidad de convergencia era rápida, esto nos permitiría concluir que es una opción adicional para la sintonía de lazos de control.

Palabras Clave: algoritmo; luciérnaga; meta-heurísticos; recocido simulado; controlador PID; péndulo invertido; sintonía; modelamiento; función de transferencia; índice ITSE

ABSTRACT

In industrial plants a large percentage of the controllers is based on the PID Control Algorithm, due to its simplicity and robustness, it is known that the performance of the Plant may be affected in quantity and quality of the product due to inadequate determination of the controller parameters, even harming the actuators themselves. In this work, an alternative to classical methods of tuning of these parameters is shown: the metaheuristic algorithms, which belong to the branch of Informed Search within Artificial Intelligence, whose objective is to optimize a certain cost function avoiding maximums or local minimums. It has considered the linearized model (for practical purposes) of an inverted pendulum system with a sliding carriage for the application of two algorithms: simulated annealing and fireflies; which had as a higher rank the one determined by the Routh-Hurwitz Criterion for all the specifications of time domain performance. In the results it was possible to determine that the optimized parameters of the PID controller did not have a significant difference and the speed of convergence was fast, this would allow us to conclude that it is an additional option for the tuning of control loops.

Keywords: firefly; meta-heuristic; simulated annealing; algorithm; PID controller; inverted pendulum; tuning; modelling; transfer function; ITSE index

1. INTRODUCCIÓN

El péndulo invertido es un sistema que consta de un péndulo que es libre de oscilar alrededor de un punto pivote (para un mismo plano) con el objetivo de mantener el péndulo en posición vertical. El punto pivote está sobre un carro que ofrece el desplazamiento horizontal, el cual permitirá balancear; para una perturbación pequeña expresada en grados; el sistema en mención debido a su alta inestabilidad. Este sistema es importante por sus aplicaciones prácticas donde se requiera balance como en acciones que involucre caminar.

Se han realizado varios intentos con diferentes técnicas para lograr el equilibrio del péndulo, en (1) una red neuronal es entrenada para generar acciones sobre un péndulo invertido, en (2) se hace usó del algoritmo luciérnaga para determinar los parámetros de un controlador PID y así mantener el equilibrio del péndulo. En (3) se implementó experimentalmente un controlador fuzzy que usa visión feedback, lo cual busca adquirir los datos del sistema a través del procesamiento de imágenes y no de sensores, el objetivo fue explorar las condiciones críticas del controlador y su velocidad de respuesta.

Para corregir el error definido como la diferencia del ángulo del péndulo respecto a la vertical (el cual debería ser igual a cero) vamos a considerar un controlador PID, los cuales han ganado una popularidad atribuida parcialmente a su comportamiento robusto en un rango amplio de condiciones de operación y parcialmente también a su simplicidad funcional que permite a los ingenieros operarlos de una forma simple y directa (4), para definir los parámetros de dicho controlador (kp, ki, kd) en la literatura se ha propuesto muchos tipos diferentes de reglas de sintonización, que permiten llevar a cabo una sintonización delicada y fina (5), sin embargo el problema de determinar los parámetros es en realidad un problema de optimización, donde en términos de la variable del sistema, se hallen los parámetros que minimicen un criterio de error (6)

2. MODELAMIENTO DEL PÉNDULO INVERTIDO

En la figura 1 se muestra el péndulo invertido considerado en este artículo, en (7) se tiene los parámetros utilizados.

El péndulo tiene su CG (centro de gravedad) en el centro de la varilla y se considera que sólo se puede mover en un plano solamente (xy). La ecuación que describe el movimiento horizontal del carro es:

Fig. 1 Diagrama de Péndulo Invertido 

Donde f(t) es la fuerza aplicada en el carro, bx ̇ es la fuerza de recuperación debido a la fricción, N y P son las fuerzas de reacción del péndulo en los ejes x e y respectivamente, M es la masa del carro, m es la masa de la varilla, Mx ̈ es la fuerza inercial debido a la masa del carro. Como se comentó el movimiento vertical del carro no se asumirá.

Aplicando la segunda ley de Newton en el eje x para la varilla del péndulo, el CG del péndulo se ubica en el punto medio de la varilla:

Donde θ es el ángulo recorrido alrededor del punto pivote del péndulo, θ ̇ es la velocidad angular, θ ̈ es la aceleración angular y L es la longitud de la varilla.

Reemplazando (2) en la ecuación (1),

Aplicando la 2da Ley de Newton para las fuerzas perpendiculares a la varilla del péndulo:

Donde g es la aceleración de la gravedad.

Aplicando la 2da Ley de Newton para el movimiento de rotación de la varilla del péndulo sobre su masa:

Donde I es el momento de inercia de la varilla.

Reemplazando (5) en la ecuación (4),

Para representar las ecuaciones en el espacio de estados se considera las siguientes variables de estado:

Así se obtiene:

Dado que las salidas son el desplazamiento angular y el desplazamiento del carro, la ecuación de estado de salida será:

A. Linealización del Modelo

Para la aplicación del controlador PID al modelo de la ecuación (8)y para fines de este trabajo se requiere tener el modelo lineal del péndulo invertido. Dado que el objetivo es que el péndulo se mantenga en posición vertical (θ≈0°) y que el controlador PID actúe como regulador ante las pequeñas perturbaciones que puedan presentarse se considera que el punto de operación (este punto deberá cumplir con las condiciones de estado de equilibrio) será: x= 0 0 0 0 y F= 0.

Considerando la metodología de (8), se aproximará el modelo lineal mediante la expansión en Series de Taylor despreciando los términos de orden superior.

De lo visto líneas arriba se define:

En donde F es la señal de control y a partir de ahora se denotará por u y x ̇ es el vector de estados definido anteriormente.

La expansión de las Series de Taylor de (10) sería dado por:

Resolviendo las operaciones jacobianas, (11) queda así:

Aplicando a la ecuación (8) se obtiene finalmente el modelo lineal:

B. Función de Transferencia de la Posición Angular y Controlador PID

Resolviendo la ecuación de estado (13) y reordenando se obtiene la función de transferencia de la posición angular.

Reemplazando los valores según (8) se obtiene:

No se va a tomar en cuenta la función de transferencia de la posición del carro, dado que no es el objetivo realizar control sobre este, sino es regular la posición vertical (siempre el set point será: θ=0°) ante las perturbaciones que se presentan y para ello la acción de control: F (fuerza) será ejercida sobre el carro, de hecho el mismo controlador PID afectaría ambas funciones de transferencia dado que no son independientes, en la ejecución se tendría que tener una mesa larga para dar disponibilidad a que el carro pueda recorrerlo sin limitación.

Fig. 2 Respuesta al impulso en lazo abierto para θ 

Como se aprecia en la figura 2, se observa que el sistema no es estable en la condición de lazo abierto, para una perturbación simulada mediante la función impulso. Esto también es verificado en (14) dado que tenemos en el denominador coeficientes negativos, mas estrictamente tenemos un polo positivo (lado derecho del plano s complejo).

Debido a lo anterior se requiere diseñar algún tipo de control para mejorar la respuesta, en esta oportunidad se aplicará un controlador de tipo PID (proporcional-integral-derivativo) que es muy común y fácil de implementar.

El diagrama de bloques se presenta en la figura 3 y la función de transferencia de un controlador PID es dado por:

Donde: kp es la ganancia proporcional, Ki es la ganancia integral y kd es la ganancia derivativa.

Fig. 3 Diagrama de bloques del sistema realimentado con el controlador PID 

La función de transferencia de lazo cerrado del sistema puede ser escrito como:

Resolviendo se obtiene:

La ecuación característica obtenida de la ecuación (17) es:

Para la estabilidad los coeficientes de la ecuación característica deben ser positivos. Por lo tanto, se tiene los siguientes rangos:

3.ALGORITMOS METAHERÍSTICOS

Los algoritmos metaheurísticos son una nueva perspectiva con la que se afronta diferente tipos de problemas: estrategia-resultado (9), bajo esta premisa el algoritmo heurístico busca soluciones lo suficientemente buenas, sin ser necesariamente la mejor o la óptima, estos buscan reducir el esfuerzo computacional de tiempo y eficiencia a costa de la precisión para llegar a la solución.

Blum y Roli (10) consideran 9 propiedades de la metaheurística:

Son estrategias que guían el proceso de búsqueda.

Exploran eficientemente el espacio de búsqueda para encontrar soluciones (casi) óptimas.

Las técnicas que lo constituyen van desde simples procedimientos de búsqueda local hasta complejos procesos de aprendizaje.

Son aproximados y generalmente no deterministas.

Pueden incorporar mecanismos para evitar quedar atrapados en áreas confinadas del espacio de búsqueda. Esto les permite poder “escapar” de puntos críticos locales lo cual permite tener una mayor probabilidad de alcanzar puntos críticos globales.

Los conceptos básicos de la metaheurística permiten una descripción por niveles abstracta.

No son específicas para un determinado problema.

Pueden hacer uso del conocimiento específico de un dominio en forma de heurísticas que son controladas por la estrategia de nivel superior.

Las metaheurísticas más avanzadas de hoy utilizan la experiencia de búsqueda (embebida en alguna forma de memoria) para guiar la búsqueda.

Se tiene una clase amplia de algoritmos metaheurísticos, los que en esta oportunidad se discutirán son los inspirados en comportamiento de sistemas de la naturaleza: algoritmo luciérnaga y recocido simulado. Para mayor detalle se puede consultar a (9), (10), (11), (12).

A. Algoritmo Luciérnaga

Este algoritmo fue desarrollado por Xin-She Yang en el 2007 (Universidad de Cambridge). Para su implementación se debería considerar 3 reglas idealizadas (12), (13):

1. Todas las luciérnagas son unisex así que una luciérnaga será atraída por otras luciérnagas independientemente de su sexo.

2. La atracción es proporcional a su brillo (intensidad luminosa), así para cualesquiera dos luciérnagas, la de menor brillo se moverá hacia la de mayor brillo. El atractivo es proporcional al brillo y ambos decrecen con el incremento de la distancia. Si no hay una que brille más respecto a otras, estas no se moverá aleatoriamente.

3. El brillo de una luciérnaga es afectada por la definición de la función objetivo.

Considerando lo anterior tenemos el pseudo-código del algoritmo luciérnaga:

Fig. 4 Pseudo-código de Algoritmo Luciérnaga 

Se tienen dos consideraciones importantes: la variación de la intensidad luminosa y la formulación del atractivo.

Simplificadamente la intensidad luminosa I(r) varía según:

Donde Is es la intensidad de la fuente, para un medio con un coeficiente de absorción luminosa fijo: γ, la intensidad luminosa varía según:

A fin de evitar la singularidad en r=0 y para cumplir (20) y (21) se tiene:

Como el atractivo de la luciérnaga es proporcional a la intensidad luminosa, entonces se define:

Donde β0 es el atractivo a una distancia igual a cero.

Se define a “r” como la distancia cartesiana o Euclidea entre dos luciérnagas.

Así se define el movimiento de una luciérnaga “i” que es atraída a otra luciérnaga “j” más atractiva (brillante):

Donde el segundo término es atribuido a la atracción, el tercero es a la aleatoriedad con α como parámetro de aleatorización y €i un vector de números aleatorios.

B. Algoritmo Recocido Simulado

En 1983 apareció el algoritmo de recocido simulado, una técnica de optimización propuesta por S. Kirkpatrick, C. D. Gellat and M. P. Vecchi, inspirada en el proceso de recocido que se utiliza en la industria metalúrgica para obtener metales con una estructura cristalina más uniforme y que permita eliminar los defectos en ella, mejorando determinadas propiedades. Dicho proceso consiste en fundir el metal, donde la energía del sistema es máxima. Luego se hace descender la temperatura muy lentamente por etapas, dejando que en cada una de esas etapas los átomos queden en equilibrio (energía del sistema es mínima).

El RS es un algoritmo de búsqueda aleatoria basado en la trayectoria y una de sus principales ventajas es la habilidad para evitar caer en puntos críticos locales, de hecho se ha demostrado que este algoritmo podría converger a su óptimo global si se da una adecuada aleatoriedad y lento tiempo de enfriamiento.

Durante la ejecución del algoritmo, se nota que en cada iteración no siempre elegirá a un vecino que mejore la solución actual, sino que podría seleccionar una no correcta, la aceptación o no dependerá de una función probabilística que depende de dos factores: (1) la diferencia entre el estado actual y el nuevo; y (2) la temperatura. La función de probabilidad que se considera es (14), (15):

Dónde:

Eactual: estado actual

Enuevo: estado nuevo

Eval: función de evaluación o función objetivo (cambio de nivel de energía)

T: temperatura

La Ec. (25) se basa en la distribución de Boltzmann en mecánica estadística. Esto da cuenta que para “T” altos habrá una mayor probabilidad de aceptar estados nuevos que no mejoren la solución y conforme disminuye “T” (enfría) este se estabiliza y disminuye notablemente la probabilidad de aceptar un estado nuevo erróneo.

Se deberá inicializar la temperatura inicial, temperatura final a la cual se detiene las iteraciones y la velocidad de enfriamiento según el diseño de nuestro problema.

La temperatura puede ir enfriándose linealmente pero se tiene otras opciones:

Descenso Exponencial:

Criterio de Boltzmann:

Criterio de Cauchy:

En base a lo anterior tenemos el siguiente pseudo-código:

Fig. 5 Pseudo-código de Algoritmo Recocido Simulado 

4 RESULTADOS DE LA UTILIZACIÓN DE ALGORITMOS METAHEURÍSTICOS EN LA SINTONIZACIÓN DE UN CONTROLADOR PID

Para la aplicación de los algoritmos previamente revisados se ha considerado la función objetivo o de coste (intensidad luminosa y función de evaluación de los algoritmos luciérnaga y recocido simulado respectivamente) al Índice de Comportamiento ITSE (integral del tiempo multiplicada por el error al cuadrado), dado que proporciona la mejor selectividad de los demás índices, el valor mínimo se discierne fácilmente a medida que varían los parámetros del sistema (4), (6), además de poder usarse para elevados errores en los primeros instantes dado que el problema es de regulación donde las perturbaciones generalmente serán de tipo impulso.

Donde: e es el error entre el set point y la variable de proceso y t es el tiempo de análisis.

Se ha considerado el criterio de Routh-Hurwitz para definir el valor máximo del rango de los parámetros del controlador PID según la ecuación (19). El valor mínimo se ha definido en varios rangos para evaluar los algoritmos.

Para el Algoritmo Luciérnaga se tiene los siguientes parámetros:

TABLA I Parámetros de Algoritmo Luciérnaga 

Parámetro Valor
Número de Luciérnagas: 60
N° generación máxima: 100
Aleatoriedad: α 0.5
Intensidad inicial: β 0.2
Coeficiente de Absorción: γ 0.5

Para el Algoritmo Recocido Simulado se tiene los siguientes parámetros:

TABLA II Parámetros de Algoritmo Recocido Simulado 

Parámetro Valor
Temperatura Inicial: 40
Temperatura Mínima: 0.05
Velocidad de Enfriamiento 20
Paso 0.05

En la figura 6, figura 7, figura 8, figura 9, figura 10, figura 11 se presentan los resultados del Algoritmo Luciérnaga y como evolucionaron los óptimos de los parámetros del controlador conforme avanza las generaciones de luciérnagas.

Fig. 6 Respuesta al impulso del lazo cerrado con FA 

Fig. 7 Trayectoria de las luciérnagas para la obtención de los parámetros del controlador. (a) Inicio de la distribución de luciérnagas. (b) Convergencia de las luciérnagas 

Fig. 8 Evolución del Índice de Comportamiento ITSE con Algoritmo Luciérnaga 

Fig. 9 Evolución del Kp (FA) 

Fig. 10 Evolución de Ki (FA) 

Fig. 11 Evolución de Kd (FA) 

De la figura 12, figura 13, figura 14, figura 15, figura 16 se presentan los resultados para el Algoritmo Recocido Simulado. Para ambos algoritmos se verifica que los parámetros del controlador PID convergen.

Fig. 12 Respuesta al impulso del lazo cerrado con SA 

Fig. 13 Evolución de Kp (SA) 

Fig. 14 Evolución de Ki (SA) 

Fig. 15 Evolución de Kd (SA) 

Fig. 16 Evolución del Índice de Comportamiento ITSE con Algoritmo Recocido Simulado 

CONCLUSIONES

- Se observa que el índice de comportamiento ITSE está en el orden de 10e-4 para ambos algoritmos y rangos, incluso para el Recocido Simulado se puede apreciar que los parámetros del controlador PID convergen más rápido y desde la primera iteración se tiene un significativo aporte, esto podría reflejarse en un menor tiempo de procesamiento de memoria en CPU.

- Si bien el Recocido Simulado alcanzó la estabilidad más pronto se tuvo un mayor tiempo de ejecución, por ello es importante probar si la velocidad de enfriamiento fue la más adecuada.

- Se verifica que es factible el uso de los algoritmos metaheurísticos para aplicación mediante un hibrido para la sintonía de lazos de control.

- Queda para futuros trabajos verificar el comportamiento de la señal de control (regulación) y evaluar si es factible alcanzar los resultados obtenidos (que tanto se podría sobre esforzar al actuador), en pruebas que no se muestran se identificó que se podría disminuir el índice de comportamiento a valores menores en un mayor rango de búsqueda y tiempo de ejecución.

- Se podría intentar una función objetivo (intensidad luminosa y de evaluación para el A. Luciérnaga y Recocido Simulado respectivamente) que considere los parámetros que estarían involucrados en el párrafo anterior para brindar un set específico de especificaciones de diseño.

AGRADECIMIENTOS

A la Universidad Nacional de Ingeniería, sección de Posgrado de la Facultad de Ingeniería Eléctrica y Electrónica por los conocimientos impartidos y fomentar el espíritu de la investigación

REFERENCIAS

C. W. Anderson, “Learning to control an inverted pendulum using neural networks”, IEEE Control Systems Magazine, vol. 9, no. 3, pp. 31-37, Apr. 1989. [ Links ]

N. Surendranath, S. Saketh y P. Pal, “Optimal PID controller design of an inverted pendulum dynamics: a hybrid pole-placement & firefly algorithm approach”, IEEE First International Conference on Control, Measurement and Instrumentation, vol. 1, no. 1, pp. 305-310, Jan. 2016. [ Links ]

M. Magaña, y F. Holzapfel, “Fuzzy-logic control of an inverted pendulum with visión feedback”, IEEE Transactions on Education, vol. 41, no. 2, pp. 165-170, May. 1998. [ Links ]

R. C. Dorf y R. H. Bishop, Sistemas de Control Moderno, España: Pearson Prentice Hall, 2005. [ Links ]

K. Ogata, Ingeniería de Control Moderna, España: Pearson Educación - Prentice Hall, 2010. [ Links ]

E. Umez-Eronini, Dinámica de Sistemas de Control, México: Thomson Learning, 2001. [ Links ]

MATLAB, “Inverted Pendulum: System Modeling”, 2016, Set 10 (En linea). Disponible en: http://ctms.engin.umich.edu/CTMS/index.php?example=InvertedPendulum&section=SystemModelingLinks ]

A. Rojas-Moreno, Control Avanzado: Diseño y Aplicaciones en Tiempo Real, Perú: Editorial Universitaria de la Universidad Nacional de Ingeniería, 2001. [ Links ]

J. Brownlee, (2016, Set 10). “Clever Algorithms: Nature-Inspired Programming Recipes”, (En línea). Disponible en: http://www.cleveralgorithms.com/ Ver también el link: https://archive.org/details/CleverAlgorithmsLinks ]

C. Blum y A. Roli, “Metaheuristics in combinatorial optimization: Overview and conceptual comparison”. ACM Computing Surveys, vol. 35, no. 3, pp. 268-308, Set. 2003. [ Links ]

T. Weise, “Global Optimization Algorithms: Theory and Application”, 2016, Set 10 (En línea). Disponible en: http://www.it-weise.de/projects/book.pdfLinks ]

X. S. Yang, Nature-Inspired Metaheuristic Algorithms, United Kingdom: Luniver Press, 2010. (En línea). Disponible en: https://www.researchgate.net/publication/235979455_Nature-Inspired_Metaheuristic_AlgorithmsLinks ]

X. S. Yang, “Firefly Algorithm, Lévy Flights and Global Optimization”, Research and Development in Intelligent Systems XXVI, pp. 209-218, 2009. [ Links ]

A. García, Inteligencia Artificial: Fundamentos, Prácticas y Aplicaciones, México: Alfaomega Grupo Editor, 2016. [ Links ]

K.-L. Du y M. N. Swamy, Search y Optimization by Metaheuristic: Tecniques and Algorithms Inspired by Nature, Switzerland: Birkhauser-Springer International Publishing, 2016. [ Links ]

Recibido: 15 de Marzo de 2019; Aprobado: 22 de Junio de 2020

*Autor de la correspondencia: Luis Beltrán, E-mail:lbeltranc@uni.pe

Creative Commons License Este es un artículo publicado en acceso abierto bajo una licencia Creative Commons