Interpolation Modes available for MC_MovePath¶
Two different interpolation modes are available:
Behavior with CORNER_MODE=0
When CORNER_MODE in MC_PATH_REF is =0, the movement will be executed on the given path between 2 points until the given CORNER_DISTANCE is reached. Then the direction will be changed and the TCP will again reach the path from point 2 to point 3 at CORNER_DISTANCE behind point 2.
Behavior with CORNER_MODE=1
When CORNER_MODE=1 in MC_PATH_REF, the interpolation will meet every given point but will modify the velocity before the corner to direct the movement towards the next point and to reach a continuous ve-locity profile while doing so. A cubic interpolation is used from point-to-point in a way that a smooth velocity curve is achieved in every single direction (X/Y/Z). The acceleration is not taken in to account and just 3 consecutive points influence every specific movement.
The following diagram shows the 2 different interpolations for a very simple path.
POSITION comparison
X | Y |
---|---|
0 | 0 |
50 | 50 |
100 | 50 |
150 | 50 |
200 | 0 |
150 | -50 |
100 | -50 |
50 | -50 |
0 | 0 |
The yellow curve shows the original points, the pink curve the interpolation result for CORNER_MODE=1 and the blue curve the result for CORNER_MODE=0 with CORNER_DISTANCE=10.
-CORNER_MODE=0: the given path, as a linear movement from point-to-point, is followed, just at the given distance from the corner (predefined X/Y-point) this path is left and the movement turned into the direction of the next point.
-CORNER_MODE=1: the interpolation meets the given points, but the linear path is left as a cubic interpolation is performed to achieve a smooth movement.
A second example is shown with far more points to define the curve. In this case, it seems almost as if there was no difference between the 2 modes:
POSITION comparison
The difference is to be seen when exploring the curve in more detail. In this case, a CORNER_DISTANCE=1 is used, so the interpolation follows the path somehow “edgy”, while CORNER_MODE=1 creates a rounded curve.
POSITION comparison in detail
An even clearer difference is to be seen in the velocity curve:
VELOCITY comparison
-with CORNER_MODE=0, a constant velocity is maintained during the linear parts of the path. Just the section de-scribed by CORNER_DISTANCE (in this case, CORNER_DISTANCE=1) is used to change direction and velocity.
-with CORNER_MODE=1, a continuous velocity transition is achieved.