SUMO AUTOMATION

Blog de divulgación técnica. Artículos basados en FAQs referentes al campo de la automatización industrial.

lunes, 19 de abril de 2021

MOTION - Instrucciones básicas para sincronismo de ejes

En un artículo anterior, ya se han presentado las instrucciones básicas de motion para controlar un eje simple (hacer click aquí para ver). Pero podríamos decir que esto es solo la "punta del iceberg". Los servoaccionamientos han abierto muchas otras nuevas posibilidades gracias a las altas velocidades y capacidades de cálculo que admiten.
Motion control
Siendo así, una de las funcionalidades más potentes es la de sincronización e interpolación entre ejes.
Para ello, se requiere disponer de un PLC que soporte dichas funciones... No cualquiera lo admite de forma directa.

Este artículo tiene como objetivo presentar los bloques de función más básicos para sincronismos multi ejes (basados también en la norma PLCopen).
Es interesante matizar que, para este tipo de soluciones, muchos fabricantes disponen de FBs desarrollados no estándares.
 Incluso ya dedicados para aplicaciones concretas...


¿FILOSOFÍA DE ESTOS FBs?

Permiten regular dos ejes de forma simultánea, con una relación de control de movimiento especifica entre ambos.

Para ello, siempre hay un servo con el rol de maestro. Normalmente, a este se le ejecutan movimientos como eje simple (o es un encoder externo).
Luego está el eje
esclavo, sobre el que solo se ejecuta la instrucción de sincronismo. Se moverá acorde al maestro siguiendo las directrices configuradas en el FB utilizado. 
Se pueden sincronizar distintos esclavos a un mismo eje maestro simultáneamente. 

También es importante destacar que, en su gran mayoría, nos encontraremos con FBs de ejecución (se lanzan por flanco y se quedan habilitados).


¿FBs DE SINCRONISMO?

- MC_GearIn: Es un sincronismo en posición donde, por cada unidad desplazada del eje maestro, el eje esclavo se desplaza un número de unidades proporcionales (manteniendo la relación programada en la división de los ratios).
Resumiendo, establece un ratio de velocidad entre maestro y esclavo.
Motion control
Lo más habitual es ejecutarlo con los dos ejes en parado, antes de que el maestro empiece a moverse. De este modo ambos servos arrancan simultáneamente y mantienen siempre una relación de velocidad constante.
Ejemplo aplicación: Bandas transportadoras seriadas que requieren moverse a la vez.

- MC_GearInPos: Funciona de la misma forma que el MC_GearIn, con la diferencia de que el sincronismo debe empezar en una posición concreta (tanto del maestro como del esclavo).
Siendo así, se utiliza para hacer un acoplamiento "al vuelo" , no es instantáneo. Por lo tanto, es necesario definir una dinámica inicial al eje esclavo para que alcance al maestro y coincidan en el punto especificado con el ratio de velocidad deseado.
Motion control
Lo común es ejecutarlo tras haber lanzado el maestro en control de velocidad. Entonces, al ejecutar el FB, maestro y esclavo se encuentran en las posiciones programadas, a partir de las cuales se quedan sincronizados..
Ejemplo aplicación: Máquina de corte, estilo "cizalla volante".

- MC _GearOut: Instrucción que se lanza al esclavo para parar un sincronismo realizado con cualquiera de los FBs anteriores. Le desconecta del maestro, permitiéndole empezar un nuevo sincronismo (con el mismo maestro u otro) o trabajar como eje simple.
Motion control
Se presupone que este FB es previo a la ejecución instantánea de otro comando de motion. De hecho, en algunos fabricantes no existe dicha instrucción, pues al ejecutar cualquier otro FB de movimiento en el esclavo durante el sincronismo, este se deshace.


¿FBs DE INTERPOLACIÓN
?

MC_CamIn: Este bloque de función avanzado es el más flexible para sincronizar ejes. Activa el acoplamiento entre maestro y esclavo con un perfil previamente especificado.
Para cada posición de maestro, definimos la posición en la que se encontrará el esclavo. Solo damos algunos de los puntos de la trayectoria, los demás se interpolan con la curva que definamos por programa.
Motion control
Como se puede ver, admite mucha configuración para determinar la dinámica en la relación maestro-esclavo. Puede llegar a substituir cualquier otra instrucción de sincronización, pero se debe tener presente que es más compleja y consume más recursos de la CPU.
El entorno de definición de la tabla cam puede variar mucho dependiendo del software utilizado. En algunos casos, incluso se pueden definir los puntos por programa (en runtime).

Ejemplo aplicación: Leva electrónica.

MC_CamOutInstrucción que se lanza al esclavo para parar un sincronismo realizado con MC_CamIn. Trabaja con la misma filosofía que el MC_GearOut presentado anteriormente...
Motion control
En algunos fabricantes tampoco se dispone de este bloque de función, dado que cualquier instrucción de movimiento sobre el esclavo rompería el acoplamiento. 

- Muchos fabricantes admiten instrucciones específicas para grupos de ejes. Estas permiten establecer interpolaciones predefinidas (p.e. lineal y circular).
Normalmente ya no se trabaja con la filosofía maestro-esclavo en estos casos concretos...
Tanto el entorno de programación como los FBs asociados no son estándares, pueden variar 
mucho entre fabricantes.
Ejemplo aplicación: Interpolación entre ejes X-Y en robot cartesiano.

No hay comentarios:

Publicar un comentario