Error de Seguimiento en un Sistema de Control de Movimiento

Actualizado el Nov 28, 2019

Reportado en

Software

  • LabVIEW SoftMotion Module
  • Measurement & Automation Explorer (MAX)

Driver

  • NI-Motion

Detalles del problema

¿Qué es el error de seguimiento? y, ¿Cómo esto afecta a mi aplicación de movimiento?

Solución

Los controladores de movimiento NI 73xx contienen un controlador PID que le permite usar la retroalimentación de posición y velocidad para ajustar sus señales de control. Esta retroalimentación lee cualquier señal analógica de tensión o tren de impulsos de un encoder que indica la posición y la velocidad del motor. El controlador compara sus señales de control con las señales de realimentación para verificar si el motor sigue los comandos. La diferencia entre estos valores se denomina error siguiente.

¿Por qué mi aplicación reporta que ha sido excedido el error de seguimiento cuando realizo un movimiento?

Hay un límite ajustable permitido para el error de seguimiento durante un movimiento. Cuando se excede el límite, la condición de error se crea al informar una falla en este límite. La condición de error de seguimiento puede ser causada por cualquier combinación de defectos mecánicos, entradas / salidas incorrectas y / o daños en el lazo de control. Las condiciones de seguimiento de errores pueden ser difíciles de corregir, aquí están las causas más comunes:
  • Causa 1: cargar incorrectamente la resolución del encoder.
Para aumentar la precisión de la realimentación, los controladores de movimiento de NI leen cada flanco de la señal de realimentación del codificador. Con un codificador de cuadratura, este resultado está en cuatro flancos (aumentando y disminuyendo en las líneas A y B) para cada pulso de cuadratura. Entonces, si su codificador de cuadratura tiene un valor de 2000 pulsos de cuadratura por revolución, el controlador realmente lee 8000 flancos por revolución y cada uno de ellos se considera una cuenta. Cuando la entrada "Cuenta de codificador por revolución" se establece en NI Measurement & Automation Explorer (MAX), este valor es un error común para la resolución física del codificador. Esa propiedad debe mantener el número correspondiente de cuentas leídas por el controlador, que es cuatro veces la resolución.
  • Causa 2: Alambres invertidos de mando / retroalimentación
Cuando se envía un pedido en una dirección positiva, ¿la señal de realimentación devuelve un movimiento positivo? Si la señal de realimentación indica un movimiento negativo, se ha invertido la polaridad de la salida analógica del motor o la fase (A, B) del codificador. Verifique una conexión correcta para remediar esta situación.

Si la polaridad del codificador está invertida, puede invertir la polaridad a MAX. Para cambiar la polaridad de los codificadores, seleccione un eje donde se esté produciendo el problema y encuentre la entrada del codificador. La polaridad de A o B cambia en la etiqueta del codificador, pero no de ambas, y se está utilizando el índice.
  • Causa 3: Sintonización inapropiada del lazo cerrado del servomotor
Los controladores de servomotor de NI están diseñados para su uso en una variedad de aplicaciones, debe configurarse un bucle de control PID para su uso en cada situación específica. Es necesario un ajuste adecuado para el bucle (parámetros de Kp, Kd, ​​Ki, etc.) en MAX para garantizar que el motor responda como se espera. Si el sistema responde a órdenes con vibraciones o movimientos erráticos, es posible que el lazo de control no esté bien sintonizado. Se pueden encontrar consideraciones para sintonizar su sistema de movimiento en este articulo en inglés: Understanding Servo Tune
  • Causa 4: Controlar movimientos de manera muy rápida
Un movimiento de alta velocidad requiere una sensibilidad del sistema de movimiento. Altos controles de velocidades o aceleraciones regularmente producen condiciones del error de seguimiento, el estado de la instalación del motor puede ser incapaz de alcanzar la velocidad y aceleración deseada.(Las causas pueden ser exceso de fricción, piezas mecánicas desalineadas o torque insuficiente en el motor). Puede ser necesario realizar ajustes en la instalación mecánica o controlar a menor velocidad/aceleración.

¿Cómo puedo cambiar el máximo permisible error de seguimiento?

Bajo la configuración de Trayectoria en MAX, se puede cargar el error de seguimiento para cada eje.


Cuando los comandos de movimiento usan las pantallas en MAX " 1-D Interactive " o " 2-D Interactive" , navegue a la pestaña Advanced . En el grupo de Advanced Data, ajuste el valor etiquetado como " Following Error ".


Cuando use la API de FlexMotion para LabVIEW, use VI Load Following Error.flx para cargar la cantidad de cuentas permitidas.


Cuando la programación es en C o Visual Basic use la función flex_load_follow_err