Programación del Controlador de Movimiento

Fecha de publicación
Cateogría del artículo Motion Control
Visualizaciones del artículo Leído  73  veces

El diagrama de estado de un eje nos indica en qué estado se encuentra un eje, así como las posibles transiciones entre estados

Programación del Controlador de Movimiento

Uno de los estándares más populares para la programación de movimiento es el plcOpen. Este estandard define una librería de bloques de función IEC-61131-3, para control de ejes.

Son muchos los fabricantes que han adoptado este estandard, en este y posteriores artículos se ilustrará plcOpen basado en la implementación que OMRON ha hecho en su controlador Sysmac NJ.

Diagrama de estado de un eje

El diagrama de estado de un eje nos indica en qué estado se encuentra un eje, así como las posibles transiciones entre estados.

El diagrama de estado definido por plcOpen define los siguientes estados:

- Eje Deshabilitado (Axis Disabled):Este es el estado inicial, en el que el eje (y por consiguiente el servo) no está habilitado, en este estado la etapa de potencia del servo no está habilitada por lo que el controlador de movimiento no podrá comandar el eje.

- Eje Parado (StandStill):En este estado, el eje está habilitado pero no se está generando perfil de movimiento sobre él, en este estado el eje está, controlado, y a velocidad cero (parado), la etapa de potencia del servo está habilitada y el servo está preparado para reaccionar inmediatamente a cualquier consigna de movimiento

- Búsqueda de Origen (Homing):En este estado el eje realiza una maniobra (en la mayoría de los casos implicará movimiento) de búsqueda de origen, existen decenas de posibles combinaciones de búsqueda de origen, pero al final todas buscan lo mismo, referenciar al eje. Cabe notar que buscar el origen no implica necesariamente buscar la posición cero de la máquina, sino saber referenciarse respecto a la posición cero de la máquina.

- Movimientos Discretos (Discrete Motion):Entendemos como movimientos discretos aquellos movimientos que genera el controlador de movimiento y que afectan de manera directa al posicionamiento de un eje, por ejemplo un movimiento relativo o absoluto, etc… Una característica de los movimientos discretos es que tienen un principio y un fin, por ejemplo un movimiento absoluto a la posición 5000 terminará cuando el eje se haya situado en dicha posición.

- Movimiento Continuo (Continuous Motion):Este tipo de movimientos tienen un inicio pero no un fin, es decir, para poder parar un movimiento continuo será necesario lanzar al controlador otro movomiento (por ejemplo MC_Stop) que haga salir al eje del movimiento continuo. Por ejemplo, dar una consigna de Velocidad, o una Consigna de Par se consideran movimientos continuous, pues el eje permancerá en el estado de velocidad o par indefinidamente hasta que otro comando lo haga salir de ese estado.

- Movimientos síncronos (Synchronous Motion):Este tipo de movimientos generan un perfil de movimiento en un eje ‘esclavo’ que dependerá de la posición del eje ‘maestro': Engranajes (Gears), Tablas de puntos (CAMs), y cualquier otro movimiento que establezca una relación Maestro-Esclavo, son Movimientos síncronos. Habitualmente existen Bloques de función especificos para cancelar bloques síncronos, por ejemplo un MC_GearIn (engranaje) puede ser cancelando por un MC_GearOut (Desengranar).

- Parando (Stoping):Este es un estado intermedio en el que un eje pasa de un estado de movimiento, por ejemplo movimiento discreto al estado de eje parado (standstill).

- Parada por Fallo (Error Stop): Este es un estado no deseable, en el que por fuerza mayor, ele eje se ve forzado a parar, pudiendo ser en función de la gravedad del fallo una parada controlada que concluirá en un estado de paro (standstill) o en un caso severo una parada por fallo podría derivar en un eje deshabilitado (Axis Disabled)

El siguiente gráfico muestra el diagrama de estado de eje del controlador Symac NJ, cabe notar que este controlador tiene bloques de función específicos de OMRON, como por ejemplo el MC_MoveFeed, y por tanto no presentes en plcOpen, noobstante tal y como muestra el diagrana, cualquier bloque de función puede clasificarse en alguno de los estados definidos por plcOpen.

A partir del diagrama de estado podemos entender si una transición de estado es o no posible o, por ejemplo planificar una aplicación.

Ejemplo: Aplicación de roscado de un embase ‘delicado’

En este tipo de aplicación interesa posicionarse con una velocidad elevada (para reducir el ciclo de trabajo) en la posició de inicio de roscado, una vez en dicha posición se procedería a roscar el embase utiliando un control de par (por tratarse de un embase ‘delicado’ y que pudiera fracturarse sin un control de par adecuado durante el roscado.

Examinando el Diagrama de estado se observa una linea bidireccional entre  Discrete Motion y Continuous Motion, esto indica que es posible pasar sin necesidad de pasar por velocidad cero (y así ganar tiempo) entre un control de posición y un control de par (Torque).

Existen  un tipo de movimentos que no sea han incluido en el diagrama de estado, puesto que por su naturaleza tienen su propio diagama de estado, estos son los movimientos coordinados (Coordinated Motion). Movimientos coordinados incluyen la familia de interpolaciones y transformaciones kinematicas necesarias para controla mecanismos en los que varios ejes siguen un perfil coordiado, como es el caso de un robot.

/blogs-automatizacion/marcas/498-motion-control

Motion Control

Blog dedicado a la introducción en los conceptos de Motion Control (Control de movimiento) en sistemas de automatización