Skip to main content

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 (o InPosition, o InVelocity, 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.

tabla 38. La entrada BufferMode es un ENUM de tipo MC_BUFFER_MODE.

Aborting

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.

Buffered

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 (Done, InVelocity, InEndVelocity, InGear, InSync, EndOfProfile, etc.). Si el movimiento anterior fue MC_MoveAbsolute o MC_MoveRelative, entonces el nuevo movimiento comienza desde el punto muerto.

BlendingLow

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.

BlendingPrevious

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.

BlendingNext

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.

BlendingHigh

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

MC_Power

No

No

MC_Home

No

No

MC_Stop

No

No

MC_Halt

No

No

MC_MoveAbsolute

MC_MoveRelative

Done

MC_MoveAdditive

No

Sí (Buffered solo)

Done

MC_MoveSuperImposed

MC_HaltSuperImposed

No

No

Para más información, ver: Comportamiento de MC_MoveSuperImposed y MC_HaltSuperImposed

MC_MoveVelocity

Sí (Buffered solo)

InVelocity

SMC_MoveContinuousAbsolute

SMC_MoveContinuousRelative

No

Sí (Buffered solo)

InEndVelocity

MC_PositionProfile

MC_VelocityProfile

MC_AccelerationProfile

No

Sí (Buffered solo)

Done

MC_CamIn

Sí (solo Buffered y BlendingPrevious)

Sí, también si es periódico (sólo Buffered)

EndOfProfile

MC_CamOut

No

Sí (Buffered solo)

Done

MC_GearIn

Sí (BlendingPrevious solo)

Sí (Buffered solo)

InGear

MC_GearOut

No

Sí (Buffered solo)

Done

MC_GearInPos

Sí (BlendingPrevious solo)

Sí (Buffered solo)

InSync

SMC_FollowPosition

SMC_FollowVelocity

SMC_FollowPositionVelocity

SMC_FollowSetValues

No

No

SMC_SetTorque

No

No

MC_Phasing

No

No

MC_Jog

SMC_Inch

No

No

Estos bloques de funciones no deben usarse cuando los movimientos se ordenan con el modo buffer Buffered o Blending*. El jogging y los movimientos ordenados podrían interrumpirse mutuamente.

SMC_BacklashCompensation

No

No

SMC_TrackAxis

No

No

SMC_TrackSetValues

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).