Ajuste Automático de controladores PID R.Mazaeda (*), C. De Prada(**) (*) Centro de Tecnología Azucarera. Calle Real de Burgos. Edificio Alfonso VIII, s/n,47011, Valladolid, España. E-mail: rogelio@cta.uva.es. (**) Departamento de Ingeniería de Sistemas y Automática, Facultad de Ciencias, Universidad de Valladolid, c/ Real de Burgos s/n, 41011, Valladolid, España. E-mail: prada@autom.uva.es. este contexto que surgen nuevos y prometedores métodos de sintonía tales como el IFT (H. Hjalmarsson, 1994, 95, 98). Resumen Este articulo presenta un sistema de sintonía automática de reguladores PID en lazo cerrado basado en la técnica del IFT. El sistema se conecta al sistema de control del proceso mediante OPC, aunque puede operar también autónomamente. Se ilustra su funcionamiento con un ejemplo practico. En este artículo se describen las características de dicho método y se presenta, además, el IFTtune un software de ajuste de PIDs basado en el IFT con algunas modificaciones útiles para adaptarlo a la práctica industrial. El método IFT. Palabras clave: Reguladores PID, sintonía en línea, ITF. El método de ajuste IFT (Iterative Feedback Tuning) tiene como objetivo la sintonía directa, en lazo cerrado, de los parámetros de un controlador tipo PID. El ajuste se realiza mediante la minimización de una función de coste. El método no exige ningún conocimiento explícito del modelo de la planta ni de las perturbaciones. Introducción. A pesar de los grandes avances en la teoría de control automático, el regulador PID continúa siendo el controlador más ampliamente utilizado en la industria de procesos. A pesar de esto, no deja de reportarse, que un muy alto porcentaje de los PIDs actualmente en funcionamiento, está sintonizados de manera deficiente . Los desarrollos se efectuarán en referencia al sistema SISO de dos grados de libertad de la Fig.1. Se trata de ajustar los parámetros ρ del controlador C, de manera que se minimice cierta función de coste típicamente relacionada con el error de seguimiento de la referencia y con el esfuerzo de control como se muestra en (1). Esta circunstancia explica el siempre creciente interés en el desarrollo de métodos prácticos para el ajuste de los parámetros de este tipo de controladores. Es en v u r Cr G Cy Fig.1 y N N J (ρ ) = ∫ e 2 + λ ∫ u 2 t =0 t =0 1 ∂y (ρ) = C r (ρ ) ∂ρ (1) ∂C r ∂C y ∂C T0 r + y T0 (r − y ) − ∂ρ ∂ρ ∂ρ (6a) Matemáticamente, el problema se plantea como encontrar los parámetros óptimos ρ* tales que : ρ∗ = arg min J (ρ) (2) ρ Una manera sistemática de resolver un problema de optimización como el planteado es mediante un algoritmo numérico iterativo del tipo: ∂J ρ i +1 = ρ i − δ i R i−1 (ρ i ) (3) ∂ρ donde Ri es el Hessiano de J y δ el paso de optimización. En cada iteración, el algoritmo propone un nuevo vector de parámetros ρi+1 que modifica los parámetros de la iteración anterior, ρi, según un vector relacionado con el gradiente de la función de coste con respecto a los parámetros. Ahora bien, para poder aplicar este algoritmo se necesita conocer el gradiente del índice. Es evidente, sin embargo, que dicha magnitud depende de la función de transferencia de la planta que se asume desconocida. La principal aportación del método IFT es haber hallado la manera de estimar dicho gradiente a partir de experimentos sobre el sistema en lazo cerrado Para una deducción completa del algoritmo IFT ver [Hjalmarsson et al, 1994] . No es difícil, sin embargo, captar la idea principal del algoritmo si se realizan las siguientes manipulaciones matemáticas. Primero, se sabe que un estimado del gradiente de la función de coste puede ser hallado como: ∂~ y 1 N ~ J ∂ est (ρ) = ∑ y (ρ)est t (ρ) + (4) t =1 t ∂ρ N ∂ρ + λ ∑ N u (ρ)est t =1 t ∂u t (ρ) ∂ρ donde: ~ y (ρ ) = y(ρ ) − y d (5) siendo y la salida del sistema en lazo cerrado e yd la salida deseada (referencia). Para calcular los gradientes del índice se debe primero obtener los gradientes de la salida del sistema y del controlador con respecto a los parámetros de este último: ∂C 1 ∂C r ∂C y ∂u T0 r + y T0 (r − y ) (ρ) = − C r (ρ ) ∂ρ ∂ρ ∂ρ ∂ρ (6b) Como era previsible, se comprueba que ambos gradientes dependen de la desconocida función de transferencia en lazo cerrado del sistema (T0). La forma de la ecuación sin embargo sugiere que una estimación de dicho gradiente pudiera ser obtenida mediante el siguiente algoritmo: 1. 2. 3. 4. est 5. Se realiza un primer experimento, en condiciones nominales (referencia = r) y se obtienen N muestras de la salida del lazo y de la señal de control (y1 y u1). Se realiza un segundo experimento, esta vez con la referencia igual a r - y1. Se recogen otras N muestras: y2 y u2. Se realiza un tercer experimento, otra vez en condiciones normales con la referencia igual r. Se obtiene y3 y u3. Se calcula un estimado de los gradientes de la salida del lazo y de la señal de control aplicando los siguientes filtros que dependen exclusivamente del controlador de 2DoF conocido: ∂y 1 = ∂ρ C r ( ρ ) ∂C r ∂C y 3 ∂C y 2 y + − y (7) ∂ρ ∂ρ ∂ρ Contando con los gradientes de la salida y de la señal de control, se puede encontrar inmediatamente el gradiente de índice y por tanto, se estaría en condiciones de aplicar el algoritmo iterativo de optimización. Es importante esclarecer el por qué es necesario realizar un tercer experimento. Se pudiera pensar en utilizar en lugar de y3, el resultado del primer experimento (y1) que fue realizado en definitiva, bajo las mismas condiciones. En realidad no han sido exactamente las mismas condiciones porque estaban presenten otras perturbaciones en el lazo. La derivación formal del método IFT asume que las perturbaciones están compuestas por ruido aleatorio y que las perturbaciones de un experimento no está correlacionas con la del siguiente. Para el caso de 2DoF la única manera de garantizar que el estimador obtenido sea no sesgado pasa por la condición de no reutilizar el resultado del experimento 1 sino de realizar otro nuevo. est Como resultará evidente de la discusión anterior, la aplicación del algoritmo descrito no está restringida al caso de controladores PID. El IFT puede aplicarse a cualquier controlador de complejidad arbitraria cuya estructura pueda asimilarse a la mostrada en las figura 1 ó 2. Todo lo que se requiere es proporcionar al algoritmo los filtros dados por la ecuaciones (8) Ahora los gradientes se reducen a: (8a) ∂u 1 ∂C = T0 (ρ )(r − y ) ∂ρ C ∂ρ (8b) La calidad del ajuste obtenido por la aplicación del método IFT depende de la sintonía inicial del controlador, de las características de la planta y de la configuración del algoritmo: el número de muestras, el criterio escogido, el paso de optimización, etc. La naturaleza de esta dependencia es, por supuesto, muy compleja. En este caso si se puede demostrar que dos experimentos son suficientes: El IFT no puede garantizar que los parámetros hallados sean los óptimos, en un sentido global, para el criterio propuesto. En todo caso, con una buena configuración, se puede garantizar la mejora de la sintonía inicial del controlador en un número reducido de iteracionesSe debe señalar que aunque se asume el carácter lineal de la planta, las aplicaciones prácticas del algoritmo a sistemas claramente no lineales ofrece buenos resultados. Iteración N 30 Iteración N+1 25 20 Referencia 15 VControlada 10 5 Exp. 1 Exp. 2 Tiempo Fig.2 97 91 85 79 73 67 61 55 49 43 37 31 25 19 13 0 7 3. 1 2. Se realiza un experimento inicial que simplemente consiste en obtener N muestras de la salida (y1) y la señal de control (u1) en condiciones nominales (con la referencia del lazo r). Se realiza un segundo experimento, esta vez aplicando por la referencia la señal r - y1. Se obtiene otros dos conjuntos de N muestras, en este caso y2 y u2. Se obtienen estimaciones del gradiente de la salida del lazo y de la señal de control filtrando las señales y2 y u2 con el siguiente filtro que depende exclusivamente de el controlador conocido: Nivel 1. (9) En la figura 2 se muestran dos iteraciones de algoritmo para el caso de un grado de libertad Para el caso de controladores de un solo grado de libertad, el algoritmo se simplifica de la siguiente manera. ∂y 1 ∂C = T (ρ )(r − y ) ∂ρ C ∂ρ 0 ∂y 1 ∂C 2 = y ∂ρ C ∂ρ Fig 3. IFTtune, un software para ajuste automático de controladores. Se ha desarrollado un programa para el ajuste automático de PIDs que utiliza el método IFT descrito en la sección anterior. La aplicación (llamada IFTtune) ha sido diseñada con el objetivo de brindar la mayor flexibilidad posible. En este sentido hace uso, para la comunicación con la planta, el estándar OPC de amplia utilización en la industria de procesos. Por otra parte, aunque tiene preprogramados los elementos necesarios para ser aplicado a controladores del tipo PID en cualquiera de sus variantes brinda la posibilidad de incluir otros algoritmos de control aprovechando en este caso la generalidad inherente del método IFT. El programa IFTtune presenta las siguientes características: Elementos de configuración: • La aplicación permite configurar el lazo que se desea ajustar. Para ello se deberá suministrar las direcciones OPC o tags de las variables de proceso necesarias así como de los parámetros del controlador que se desean ajustar. • Se deben brindar los valores de una serie de parámetros importantes del algoritmo como son: N: el tamaño de los experimentos en número de muestras. δ: Paso de optimización deseado. λ: Peso que se quiere dar al esfuerzo de control en el índice. • Permite escoger entre dos funciones de costes predefinidas: Criterio ISE: que incluye la sumatoria de los errores al cuadrado. Criterio ISTSE: pesa la sumatoria del producto del tiempo por el error, ambos al cuadrado. Se puede configurar si se desea ajustar el controlador ante cambios en la referencia o ante perturbaciones. Durante el funcionamiento: • Inicialmente la aplicación permite el monitoreo de las variable de proceso, la referencia y la señal de control. La evolución de estas variables se muestra gráficamente. También se muestran los valores actuales de los parámetros en forma de tabla. • El operador puede decidir en cualquier momento el inicio del proceso de sintonía. • En condiciones normales el algoritmo avanza ajustando en cada iteración los parámetros del controlador y da por finalizado el ajuste en el momento en que no se pueda seguir mejorando el índice de coste. • El IFTtune incorpora algunos elementos no considerados originalmente en el método IFT pero que resultan imprescindible para su aplicación a la práctica industrial. Por ejemplo se ha hecho necesaria la modificación al segundo experimento del algoritmo. En su versión original se exige que el sistema en lazo cerrado se le suministre por la referencia una señal igual a la referencia nominal menos el resultado de primer experimento (r - y1). Es evidente que la realización de un experimento como el señalado implicaría que se estaría obligando al sistema en lazo cerrado a realizar excursiones muy amplias (entre la referencia nominal y el valor cero aproximadamente) lo cual sería intolerable en condiciones de producción de cualquier industria de proceso. Para evitar estas oscilaciones tan pronunciadas se ha modificado el segundo experimento. Ahora se requiere que se inyecte por la referencia la señal r - ηy1. Donde η es un parámetro entre 0-1. Para valores pequeños de η, la referencia del segundo experimento no se aleja demasiado de la referencia normal del lazo. El límite inferior al valor de η dependerá de cada caso concreto y estará dado por la relación señal-ruido existente en el lazo de que se trate. Se han agregado otros elementos al programa de ajuste, destinados ha facilitar su uso y a aumentar la seguridad en su aplicación industrial: • • Se pueden configurar límites absolutos para los valores de cada uno de los parámetros del controlador. También se puede fijar un limite máximo a la variación de los parámetros en cada iteración. Estas previsiones aumentan la seguridad en la aplicación del algoritmo evitando que se proponga unos valores del controlador demasiado alejados de los valores iniciales. Se permite definir la salida deseada para el ajuste. Esta valor era originalmente igual a la referencia pero ahora se puede definir como la respuesta de un sistema de primer orden con retardo. Esta modificación mejora la convergencia del algoritmo hacia la solución óptima. Al final de cada iteración, se calculan unos nuevos parámetros para el controlador que son enviados a la planta para realizar, entonces, la iteración siguiente. Este es el comportamiento por defecto del algoritmo pero el mismo se puede considerar demasiado arriesgado según en que condiciones. Una variante más cautelosa consiste en repetir los experimentos y los cálculos del gradiente varias veces para después actualizar en el controlador el promedio de todos los intentos realizados. Conclusiones Se ha desarrollado un programa de ajuste automático de controladores estilo PID basado en el método IFT. El programa permite la sintonía de los parámetros de un PID. La sintonía es realizada directamente en lazo cerrado, sin asumir un modelo de la planta ni de las perturbaciones. La aplicación ha sido probada extensamente en simulación y en plantas piloto obteniéndose, en ambos casos resultados satisfactorios. Bibliografía. Hjalmarsson H.,Gunnarsson S.,Gevers M. (1994) “A convergent iterative restricted complexity control design scheme” Proc. 33 IEEE CDC, pags. 1735-1740. Hjalmarsson H. (1995), “Model free tuning of controllers: Experience with time varying linear systems” Proc 3 European Control Conference. Hjalmarsson H., Gevers M., Gunnarsson S. Lequin O. (1998) Iterative Feddback Tuning: Theory and Applications, IEEE ControlSystems, pags 26-41. Mazaeda R. de Prada C. (2000) “Iterative Feedback Tuning of a PID in a pilot plant”, IFAC Worksho on Digital Control: Past, present and future of PID Control, Terrassa, España.