Problema de ajuste de PID

3

Tengo problemas para ajustar un controlador PID, específicamente el término I-i. Primero, aquí hay una pequeña información sobre mi sistema:

Estoy calentando una bobina (R ~ = 1.8 Ohmios) a 750 ° F. Mi sistema de suministro de energía está funcionando bien. Estoy aplicando un máximo de 12V a la bobina, por lo que hay aproximadamente 7A pasando por el calentador. Estoy monitoreando la temperatura con un termopar tipo k He comprobado dos veces con otro termopar y DMM para asegurarme de que mi microcontrolador está leyendo los datos de temperatura correctos. Es. Si tiene preguntas aclaratorias sobre el hardware del sistema, me encantaría responder, pero estoy bastante seguro de que mi problema proviene de mi método de ajuste.

Estoy siguiendo estos tutoriales de ajuste PID de Ziegler-Nichols: 1 2 3

Establecí mi ganancia de I-term y D-term en cero y aumenté lentamente mi ganancia de P-term hasta que obtuve oscilaciones estables:

DespuésdelograroscilacionesestablesyelegirunagananciadeP-termde8.0,calculémisnuevosvaloresdeP-termyI-termporlasecuacionesenlostutoriales(PGain=3.63,IGain=0.42):

Comopuedever,aunquelasoscilacionessonmuchomáscentradas,nohandisminuidocomolohicieronenelprimertutorial.CuandocalculoeimplementolagananciadeD-term,todavíatengouncomportamientoinsatisfactorio:

Mipreguntaesesta:¿adóndevoydesdeaquí?¿DebocomenzardenuevoconunnuevotérminoP?¿CambiareltérminoIymantenertodolodemásigual?¿CambiareltérminoDymantenertodolodemásigual?Cualquierentradaesbienvenida.

Desde130°Fcontérminodeerror:

    
pregunta Payton Grenich

4 respuestas

4

Actualización: Consulte la actualización 3 en la parte inferior. Después de volver a leer la respuesta, me di cuenta de que algunas de mis declaraciones a continuación no son aplicables a los sistemas térmicos.

Una cosa aparece inmediatamente como sospechosa, en todos los gráficos de solo P, la oscilación está ocurriendo bajo el punto de ajuste . No es así como funciona el término P Para poder oscilar, must debe cruzar el punto de ajuste.

Entonces, averigua esta parte, y creo que irá bien con el resto.

Actualización 1: aquí lo más importante son la inercia térmica, el tiempo y la acción de control lineal continuo. Por ejemplo, si la potencia de salida se corta a un valor bajo, puede ver oscilaciones bajo el punto de ajuste.

Independientemente de eso, en un contexto de ajuste de PID, las "oscilaciones estables" que debe lograr como primer paso de ajuste debe ir más allá del punto de ajuste.

Además, antes de introducir I-term, asegúrate de haber agregado medidas contra el viento. Esto es extremadamente importante en los sistemas de control térmico debido a la respuesta inherentemente lenta.

Actualización 2: acabo de recordar este artículo , que solía escribir Mi propia biblioteca de auto-tuning hace mucho tiempo. No me funcionó bien porque mi sistema mecánico tenía restricciones estrictas de aceleración. Pero creo que debería ser muy bueno para un sistema con respuesta lenta, como el suyo.

Actualización 3: hay una complejidad inherente a la respuesta de P-term debido a la naturaleza de los sistemas térmicos. A diferencia de las aplicaciones servo típicas, la pendiente descendente no se puede controlar invirtiendo el comando de control, ocurre naturalmente y depende de las condiciones del entorno. Las consecuencias son:

  • No hay sobrepasado o muy limitado debido al término P, no importa lo grande que sea. Por lo tanto, los métodos típicos de ajuste de PID como Ziegler-Nichols podrían no funcionar como se esperaba.
  • El término I requiere medidas agresivas contra el viento, especialmente teniendo en cuenta las pendientes no simétricas.
  • En lugar de mejorar la respuesta, el término D puede causar inestabilidad, especialmente si la retroalimentación es ruidosa.
  • La potencia de salida se debe considerar una variable de proceso adicional con el fin de ajustar. Puede alcanzar una temperatura más o menos estable, pero si su potencia de salida continúa oscilando ampliamente, su sistema no es realmente estable.

Uno de los trucos de los sistemas de control térmico es hacer coincidir la planta de energía con el proceso. Significado: si su calentador es demasiado potente, será más difícil sintonizarlo.

Si tiene un control muy preciso sobre la salida de potencia, su banda proporcional puede ser bastante estrecha, lo que significa que el término P solo se aplica al rango limitado cerca del punto de ajuste y funciona como interruptor de encendido / apagado de lo contrario.

Otro truco es cambiar siempre solo un término a la vez, pero hacer grandes cambios (como duplicar o reducir a la mitad el término) al menos inicialmente. Los sistemas térmicos no responden a pequeños cambios como lo hacen los servos.

    
respondido por el Maple
1

¿Puede publicar su implementación dentro de su microcontrolador?

Lo que creo que va mal en esa gráfica final es que su término I tiene una cantidad gigantesca de error acumulado en el momento en que llega al punto de ajuste, y las oscilaciones que no se conforman se deben a que el error integrado desde el aumento inicial tiene No hay manera de ser resuelto. Si escribiera el controlador PID desde cero, intentaría eliminar el error integrado después de algunas oscilaciones, o disminuir I y aumentar P / D. También puedes intentar usar solo un controlador P / D puro.

También te ayudaría si pudieras publicar un gráfico que incluyera el término de error, si tienes alguna forma de generar eso.

    
respondido por el Tri
1

Esas oscilaciones son de alguna otra naturaleza. El Kp = 8 no es casi crítico. Debería establecer un punto de ajuste más bajo, luego aumentar la ganancia P para obtener oscilaciones estables, y son enormes.

Publicar una tendencia de valor de proceso (temperatura) y valor manipulado (salida) vs tiempo. Muestra tu configuración: ¿cómo controlas el calentador?

    
respondido por el Marko Buršič
0

Mantener I & D en cero, ahora sintonice el término P para que no alcance el punto de ajuste (imagine que alcanza el punto de ajuste en el infinito). Ahora, agregue un poco de I para acelerar la velocidad a la que alcanza el punto de ajuste. Nunca he necesitado usar D, es muy susceptible al ruido en la medición de entrada. Sus gráficos muestran oscilación porque P es demasiado alto.

    
respondido por el TopCat

Lea otras preguntas en las etiquetas