Tuve que hacer + el comentario de Glen. Constantemente tiene su cerebro en el lugar correcto, en mi humilde opinión. No hay nada más difícil de tratar en un PID que unΔ tretrasar. He estado lidiando con controles de temperatura calentados por lámpara para FAB de obleas IC, de una forma u otra, durante años. Permítanme comenzar con una descripción general de PID y hablar un poco sobre dónde NO será tan útil como en otros casos. También sugeriré uno de los muchos otros dominios de métodos de control que también podría explorar, pero con una prioridad de los pasos que primero debe tomar antes de ir a otro lado.
La expresión canónica para el control PID es:
tut= K⋅ [mit+1Tyo∫t0 0miτd τ+Treremitret]
Con los parámetros del controlador siendo la ganancia proporcional K, tiempo integral Tyoy tiempo derivado Tre.
- Control proporcional : la acción de control aquí es simplemente proporcional al error de control. (La ecuación anterior se reduce atut= K⋅mit+tusi, dónde tusi es un sesgo o reinicio del controlador.) Un análisis de un modelo de proceso estático muestra que el proceso resultante tiene un desplazamiento residual o un sesgo del controlador en estado estacionario (aunque un sistema se puede ajustar manualmente para que pueda haber un error de control de cero en uno y solo un valor de punto de consigna mediante una elección adecuada de la polarización del controlador. Depende de los objetivos.
- Control proporcional + integral : La función principal de la acción integral es asegurarse de que la salida del proceso concuerde con el punto de ajuste en estado estacionario. Con una acción integral, un pequeño error positivo siempre dará como resultado una señal de control creciente y un pequeño error negativo siempre dará como resultado una señal de control decreciente. Esto es cierto sin importar cuán pequeño sea el error.
- Control PID : agregar control derivado mejora la estabilidad en bucle cerrado. (Pasará algún tiempo antes de que se note un cambio en el control en la salida del proceso. Por lo tanto, el sistema de control se retrasará, corrigiendo ese error. El resultado final del término derivado es que es un tipo de predicción hecha extrapolando error usando una tangente a la curva de error, usada para anticipar los resultados retrasados.
La descripción anterior, agregada a su propia descripción del problema de un retraso, sugeriría que un término derivado lo ayudaría. Pero como siempre, nada es necesariamente tan simple.
El control proporcional-integral es suficiente cuando la dinámica del proceso es de primer orden. Es fácil descubrir esto midiendo la respuesta escalonada. (Si la curva de Nyquist se encuentra solo en los cuadrantes primero y cuarto). También puede aplicarse en casos en los que el proceso no requiere un control estricto, incluso si no es de primer orden.
El control PID es suficiente para procesos donde las dinámicas dominantes son de segundo orden. El control de temperatura es a menudo el caso aquí. Entonces, una vez más, esto quizás argumenta a favor de agregar control derivado en su situación.
Sin embargo. Todo lo anterior solo debe considerarse después de haber hecho todo lo posible para mejorar algunas cosas:
- Utilice el sensor de temperatura de respuesta más rápida que pueda aplicar razonablemente (masa pequeña, pirometría, etc.) y aplíquelo en una situación con el menor retraso de respuesta posible al proceso que desea controlar (cerca, no lejos).
- Reduzca la variación de retraso en la toma de medidas y en el control del proceso de promulgación.
Quiero elaborar un poco sobre este último punto. Imagina el control del proceso como si estuvieras parado en algún lugar, tratando de meter un poste de bambú delgado, muy flexible y tambaleante en un agujero distante de la casa de pájaros que está sentado en un árbol arriba y lejos de ti. Si estás cerca y el poste de bambú es corto, es fácil. Puedes hacerlo cada vez de forma rápida y fácil. Pero si la caña de bambú es larga y la casa del pájaro muy lejos de ti, es muy, muy difícil de hacer. El poste sigue vagando y hace que su predicción y control sean muy difíciles.
(Si aún no está claro, la longitud del poste de bambú es como el tiempo de retraso del bucle).
Entonces, la demora es probablemente la PEOR PESADILLA de los sistemas de control. Más retraso es muy malo. Por lo tanto, es muy importante que haga todo lo que esté a su alcance para reducir este retraso. Pero hay un punto más importante.
Ahora imagina la misma situación. Pero ahora el palo de bambú también cambia de longitud. A veces es más corto, a veces más largo, y varía continuamente sin predicción de su parte. Ahora tiene que seguir cambiando su postura y nunca se sabe cuándo cambiará la demora. Esta es la situación que existe si su SOFTWARE no controla con mucho cuidado y con un puño de hierro, el retraso de tiempo en procesar su valor ADC y generar una salida de control DAC.
Entonces, aunque el retraso es lo suficientemente malo para un sistema de control PID. El retraso variable es aún peor. Por lo tanto, debe prestar mucha atención al diseño de su software, una atención muy estricta, de modo que no tenga declaraciones IF y código de cálculo condicional, o el uso descuidado de temporizadores, etc., todo lo cual puede causar variaciones significativas en el retraso entre la muestra y la salida de control.
Debe administrar lo anterior en la administración antes de ENTONCES preocuparse por si necesita o no control derivado. Lo primero es lo primero. Limpia tu acto. Luego examine el sistema para determinar qué queda por hacer (usando PI vs PID, por ejemplo).
Estaba trabajando en sistemas de control PID usando un sistema pirómetro extremadamente preciso (también muy costoso para los clientes). Recibí una llamada de un investigador canadiense que trabajaba con nuestro pirómetro, pero usando un controlador PID separado de una gran empresa comercial (la más grande en el mundo haciendo estas cosas.) El investigador estaba luchando con las ondas al costado de una bola de arseniuro de galio que estaba sacando de una masa fundida. Y quería mi ayuda para descubrir las variables de control PID correctas. (En el boule-pull, quieres diámetros muy uniformes).
El controlador que estaba usando era bastante bueno según cualquier medida estándar. Pero agregó retrasos, y esos retrasos también variaron, ya que el software que contenía no controlaba rigurosamente el retraso que introdujo en el bucle de control general.
Entonces, lo primero que le dije fue que agregaría el control PID al software en nuestro pirómetro y que simplemente debería tirar del controlador externo del sistema que estaba usando. Agregué ese software en menos de una semana y le envié el sistema pyro modificado. No hice nada elegante con el software PID. Sin embargo, mantuve mi variabilidad en ADC a DAC a menos de un par de microsegundos y apreté el retraso general también a unos 100 microsegundos. Se lo envié a él.
Recibí una llamada el lunes de la próxima semana. Los bolos se retiraban casi a la perfección, sin ninguna ondulación.
Era tan simple como reducir los retrasos y también reducir la variabilidad en esos retrasos. Nada especial sobre el control PID, en absoluto. Fue una implementación sencilla que cualquiera produciría por primera vez al aprender sobre una.
Esto ilustra la importancia de exprimir el retraso y la variabilidad del retraso. Claro, el control derivado puede proporcionar algún tipo de idea de predicción "secante / tangente". Pero nada reemplaza reducir los retrasos y mantener la variabilidad al mínimo absoluto.
Solo sigue pensando en el poste de bambú y el problema del hoyo de la casa del pájaro.
¿Conclusión?
El control de los sistemas con un retraso de tiempo dominante es notoriamente difícil. He sugerido algunas razones por las que podríascree que un término derivado ayudará con retrasos en el tiempo. Pero existe un acuerdo general de que la acción derivada no ayuda mucho a los procesos que tienen retrasos de tiempo dominantes. Es por eso que inmediatamente sugerí ayudar a ese investigador eliminando todos los retrasos que podría eliminar fácilmente (como una caja PID externa, por ejemplo). No imaginé que mi implementación fuera mejor que el producto comercial. Sabía que mi implementación no sería tan bien investigada, de hecho. Maldición, tuve que escribirlo desde cero, probarlo e instalarlo, y enviar una unidad con el software recién agregado que nunca antes había tenido, y hacer todo eso en una semana. Pero también sabía que la demora estaba MATANDO todas las posibilidades que tenía este investigador para obtener los resultados que deseaba. Así que inmediatamente supe que el mejor enfoque era eliminar los retrasos y no inventar un código PID mágico implementado "brillantemente" que solo un genio pudiera seguir. Se trata de los retrasos y de cómo varían, en primer lugar. El resto es una prioridad mucho menor.
Hay algunas cosas llamadas "compensadores de tiempo muerto". Pero en el análisis final, debe hacer todo lo posible para eliminar los retrasos y eliminar la variabilidad en esos retrasos. Y luego, después de haber hecho todo lo posible, si todavía hay un problema, es probable que necesite controles más sofisticados de lo que permite un PID. Aquí, buscaría transformaciones de Fourier (y usar una transformación inversa para analizar las respuestas escalonadas y desarrollar una descripción de las respuestas del sistema), tal vez. Puede hacer mucho con estos que no se pueden tocar con PID. Resultados casi milagrosos, de hecho, si puede modelar la función de respuesta lo suficientemente bien.
Pero en su caso, me concentraría en eliminar los retrasos y su variabilidad. Creo que, si es posible, debería considerar evitar el uso de un control simplista de la lámpara de encendido / apagado Sería bueno si puedes controlar la intensidad de la lámpara. Pero no sé si puedes considerar eso.