Descripción general
Modo búfer
Algunos bloques de funciones tienen una BufferMode
entrada que se utiliza para controlar el orden cronológico de los movimientos. El modo de búfer define si el bloque de funciones funciona en modo sin búfer ("Aborting", comportamiento estándar) o en modo con búfer ("Buffered"). La diferencia entre estos dos modos es el momento en el que inician sus acciones:
"Modo sin búfer": el comando de movimiento tiene efecto inmediatamente, incluso si esto interrumpe otro movimiento. Se borra el buffer de los movimientos ordenados.
"Modo almacenado en búfer": el comando de movimiento espera hasta que el bloque de funciones actual establezca su salida
Done
(oInPosition
, oInVelocity
, etc.). Los modos de amortiguación también se utilizan para definir cómo debe verse la curva de velocidad en la transición de los movimientos.
| Modo predeterminado sin almacenamiento en búfer. El bloque de funciones se inicia inmediatamente y cancela un movimiento activo. El comando tiene efecto inmediato en el eje. |
| El bloque de funciones comienza tan pronto como finaliza el último movimiento ordenado. Aquí no se produce ninguna mezcla. El nuevo movimiento comienza a la velocidad que tiene el movimiento anterior cuando se alcanza la condición final ( |
| El bloque de funciones comienza tan pronto como finaliza el último movimiento ordenado. El eje no se detiene entre movimientos, sino que recorre la posición final del primer movimiento con la velocidad más baja de las dos órdenes de movimiento. |
| El bloque de funciones comienza tan pronto como finaliza el último movimiento ordenado. El eje no se detiene entre movimientos, sino que recorre la posición final del primer movimiento con la velocidad de la primera orden de movimiento. |
| El bloque de funciones comienza tan pronto como finaliza el último movimiento ordenado. El eje no se detiene entre movimientos, sino que recorre la posición final del primer movimiento con la velocidad de la segunda orden de movimiento. |
| El bloque de funciones comienza tan pronto como finaliza el último movimiento ordenado. El eje no se detiene entre movimientos, sino que recorre la posición final del primer movimiento con la velocidad más alta de las dos órdenes de movimiento. |
Bloques de funciones compatibles
Todos los bloques de funciones que se pueden especificar como comandos almacenados en búfer/mezcla tienen las siguientes entradas y salidas:
BufferMode
aporte (MC_BUFFER_MODE
tipo)Active
producción: (BOOL
tipo)
Se acepta un comando cuando el bloque de funciones cambia al estado Busy
después de que se haya ordenado un nuevo movimiento.
Bloque de funciones | Se puede definir como un comando almacenado en búfer/mezclado | Puede ir seguido de un comando almacenado en búfer/mezcla | Señal relevante para activar el siguiente FB almacenado en buffer/combinación |
---|---|---|---|
| No | No | |
| No | No | |
| No | No | |
| No | No | |
| Sí | Sí |
|
| No | Sí ( |
|
| No | No Para más información, ver: Comportamiento de MC_MoveSuperImposed y MC_HaltSuperImposed | |
| Sí | Sí ( |
|
| No | Sí ( |
|
| No | Sí ( |
|
| Sí (solo | Sí, también si es periódico (sólo |
|
| No | Sí ( |
|
| Sí ( | Sí ( |
|
| No | Sí ( |
|
| Sí ( | Sí ( |
|
| No | No | |
| No | No | |
| No | No | |
| No | No Estos bloques de funciones no deben usarse cuando los movimientos se ordenan con el modo buffer | |
| No | No | |
| No | No | |
| No | No |
Nota para MC_GearInPos
y MC_GearIn
: El comportamiento de otros modos de buffer como BlendingPrevious
es difícil de establecer. El principal problema es que la velocidad de estos bloques de funciones puede cambiar en cualquier momento dependiendo del eje maestro. Dado que el licuado funciona mejor cuando se conoce la velocidad de licuado lo antes posible, solo BlendingPrevious
esta apoyado.
En el caso de BlendingPrevious
, la dirección del eje maestro también puede cambiar en cualquier momento. Esto significa que la dirección que debe tener el eje esclavo para MC_GearInPos solo se conoce cuando se completa la combinación. Sin embargo, necesitamos una dirección para el movimiento de fusión justo cuando comienza la fusión. Es por eso que el primer movimiento define tanto la velocidad de fusión como la dirección, independientemente de la dirección definida por los siguientes. MC_GearIn(Pos)
.