BufferMode

Some function blocks have a BufferMode input which is used to control the chronological order of movements. The buffer mode defines whether the function block works in non-buffered mode ("Aborting", standard behavior) or in buffered mode ("Buffered"). The difference between these two modes is the time when they begin their actions:

The BufferMode input is an ENUM of type MC_BUFFER_MODE.

Aborting

Default mode without buffering. The function block starts immediately and aborts an active movement. The command takes immediate effect on the axis.

Buffered

The function block starts as soon as the last commanded movement is terminated. No blending takes place here. The new movement starts at the velocity that the previous movement has when the end condition is reached (Done, InVelocity, InEndVelocity, InGear, InSync, EndOfProfile, etc.). If the previous movement was MC_MoveAbsolute or MC_MoveRelative, then the new movement starts at standstill.

BlendingLow

The function block starts as soon as the last commanded movement is terminated. The axis does not stop between movements, but passes through the end position of the first movement at the lower velocity of the two movement commands.

BlendingPrevious

The function block starts as soon as the last commanded movement is terminated. The axis does not stop between movements, but passes through the end position of the first movement at the velocity of the first movement command.

BlendingNext

The function block starts as soon as the last commanded movement is terminated. The axis does not stop between movements, but passes through the end position of the first movement at the velocity of the second movement command.

BlendingHigh

The function block starts as soon as the last commanded movement is terminated. The axis does not stop between movements, but passes through the end position of the first movement at the higher velocity of the two movement commands.