Buffer Modes
Some of the function blocks (FBs) have an input called BufferMode.
- With this input, the FB can either work in a Non-buffered mode (default behavior) or in a buffered mode.
- The difference between those modes is when they start their action:
- A non-buffered mode command acts immediately, even if this interrupts another motion.
- A buffered mode command waits until the current FB sets its Done output (or InPosition or InVelocity).
- The difference between those modes is when they start their action:
This table lists the buffer modes that can be specified at the BufferMode input of the function blocks.
Value |
Buffer Mode |
Short Name |
Description |
---|---|---|---|
0 |
Abort |
A move that specifies Abort:
|
|
1 |
Buffer |
One of these events can happen with a move that specifies Buffer:
|
|
2 |
BM_BLENDING_PREVIOUS |
Blend to Previous |
A move specifying Blend-to-Active behaves the same as Buffer in Cases 1 and 3.
|
3 |
BM_BLENDING_NEXT |
Blend to Next |
A move specifying Blend-to-Next behaves the same as Buffer in Cases 1 and 3.
|
4 |
BM_BLENDING_LOW |
Blend to Low |
A move specifying Blend-to-Low behaves like Blend-to-Active if the active move's velocity is lower than this move's velocity.
|
5 |
BM_BLENDING_HIGH |
Blend to High |
A move specifying Blend-to-High behaves like Blend-to-Active if the active move's velocity is higher than this move's velocity.
|
-
-
The MC_BUFFER_MODE_BLENDING_NEXT and MC_BUFFER_MODE_BLENDING_HIGH buffer modes may increase the acceleration to meet the target position at the specified velocity.
The acceleration is automatically re-calculated to reach the target position at the specified velocity if the specified acceleration is too small to reach the target velocity within the specified distance.
Example: These absolute position moves are commanded:
Move #1:Position = 90, Velocity = 180, Accel = 360
Move #2: (with Blending High or Blending Next)
Position = 360, Velocity = 360, Accel = 360
To reach velocity = 360 within a distance of 90, the acceleration must be 720.
The function block automatically calculates and applies an acceleration of 720 to reach the target position at the specified velocity: