Buffer Modes
Some of the function blocks A function block groups an algorithm and a set of private data. It has inputs and outputs. (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 An asynchronous signal from hardware indicating the need for attention or a synchronous event in software indicating the need for a change in execution. 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 |
MC_BUFFER_MODE_BLENDING_PREVIOUS |
Blend A way that consecutive function blocks cooperate in the transition from the first to the next. to Previous |
A move specifying Blend-to-Active behaves the same as Buffer in Cases 1 and 3.
|
3 |
MC_BUFFER_MODE_BLENDING_NEXT |
Blend to Next |
A move specifying Blend-to-Next behaves the same as Buffer in Cases 1 and 3.
|
4 |
MC_BUFFER_MODE_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 |
MC_BUFFER_MODE_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 Position means a point in space which is described by different coordinates. Depending on the used system and transformation it can consist of a maximum of six dimensions (coordinates).This means three Cartesian coordinates in space and coordinates for the orientation. In ACS there can be even more than six coordinates. If the same position is described in different coordinate systems the values of the coordinates are different. 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 A function calculates a result according to the current value of its inputs. A function has no internal data and is not linked to declared instances. block automatically calculates and applies an acceleration of 720 to reach the target position at the specified velocity: