Programming
Programming is based on the syntax for independent axes. When the function is activated, the required parameter settings con be defined. The settings are applied until program end. After this, the default settings in the axis parameter list are re-applied. The setting last specified in the NC program is used for non-specified parameters. If the parameter was not previously specified in the NC program, the default setting in the axis parameter list applies.
When the function is activated, motion information must always be specified for the axis. This may be a path or independent axis motion. Otherwise the controller outputs error message P-ERR-21966.
Any number of axes may participate in the motion in the approach block and be monitored at a fixed stop. It is also possible to move axes without monitoring. The approach motion stops as soon as all axes monitored at the fixed stop detect the fixed stop. The controller then discards the distance to go of the approach block and continues machining with the next NC block.
Syntax: |
<axis_name> [ FIXED_STOP [ ON | OFF ] [ TORQUE_LIMIT=..] [POS_LAG_LIMIT=..] [CYCLES=..] [WINDOW=..] [START=..] [END=..] [ERR_NOT_DETECTED=..] { \ } ] |
<axis_name> | Name of the axis to be used with the “Move to fixed stop” function. |
FIXED_STOP | Identifier for position lag during “Move to fixed stop“. Must always be programmed as the first keyword. |
ON | Activate the “Move to fixed stop” function for this axis. |
OFF | Deactivate the “Move to fixed stop” function. |
TORQUE_LIMIT=.. | Specifying the torque limit with “Move to fixed stop”. Scaling is determined by parameterising the “Move to fixed stop” function from the axis parameters (see P-AXIS-00724). Normally this is given as a percentage [%] of the drive nominal torque. |
POS_LAG_LIMIT=.. | Limit for position lag in [mm, inch, °]. |
CYCLES=.. | Number of position controller cycles in which the position lag must be above the specified POS_LAG_LIMIT limit before the controller reverts to the “Fixed stop reached” state. |
WINDOW=.. | Tolerance window for fixed stop position in [mm, inch, °]. |
START=.. | This parameter can delay the monitoring function for when the fixed stop is reached by one percent [%] referred to the path distance in order to prevent the incorrect detection of a fixed stop due to friction etc. when the axis starts off. |
END=.. | This parameter can prematurely end the monitoring function for when the fixed stop is reached by one percent [%] referred to the path distance in order to prevent the incorrect detection of a fixed stop when the axis is decelerated on approaching the target point. |
ERR_NOT_DETECTED=.. | This parameter suppresses the output of error message ID 50886 if the fixed stop is not detected in the approach motion. This permits the execution of simple measurement processes, e.g. with “Move to fixed stop”. 0: Do not output error message ID 50886. 1: Output error message ID 50886. |
\ | Separator ("backslash") for clear programming of the command over multiple lines. |
Attention
A motion for the axis should always be programmed together with deactivation of the “Move to fixed stop” function. This movement must be away from the fixed stop. Otherwise it may result in damage to the machine if the motion continues towards the fixed stop.
V.RTA variables
State information about the “Move to fixed stop” function of an axis can be requested in the NC program. Since V.RTA variables originate from the interpolator context, an advance stop is required on access.
V.RTAs are axis-specific variables. So, when you access them, you must specify an axis instance in the form of the axis name or the axis index in the axis group of the NC channel.
Example for the Y axis on axis index 1:
V.RTA.FIXED_STOP.DETECTED.Y
V.RTA.FIXED_STOP.DETECTED[1]
When the “Move to fixed stop” function is activated, the information in the V.RTA.FIXED_STOP variables is reset.
Variable name | Meaning | Data type | Unit | Permitted access | |
Decoder | Real-time cycle | ||||
V.RTA.FIXED_STOP.ACTIVE.X | Move to fixed stop active | Boolean | - | L | L |
V.RTA.FIXED_STOP. | Move to fixed stop detected | Boolean | - | L | L |
V.RTA.FIXED_STOP.ACS.POS.X | Fixed stop position recorded in axis coordinate system | SGN64 | [mm, inch] | L | L |
Delete distance to do in the approach block with non-participating path axes
The “Move to fixed stop” function can be active simultaneously in any number of axes. In addition other axes can be moved together in the approach block even if they do not move to the fixed stop.
If all axes in the approach block detected the fixed stop, the block distance to go is discarded. If other axes participate in the motion but do not move to the fixed stop, these axes continue to move towards the target point of the next motion block starting at the abort motion.
Programing Example
Discard distance to go
N10 G01 X10 Y10 Z0 F1000
N20 G01 X100 Z100 Z[FIXED_STOP ON TORQUE_LIMIT10]
N30 G01 Y100
A circular motion following the approach block is converted to a linear motion; the axes approach the target point of the original circular segment directly, as shown in the example below.
Programing Example
Circular motion converted to linear motion
N10 G01 X10 Y10 Z0 F1000
N20 G01 X100 Z100 Z[FIXED_STOP ON TORQUE_LIMIT10]
N30 G03 Y70 J+30
Axes which move towards the fixed stop with an independent path motion (INDP_SYN / INDP_ASYN) have no influence on the path motion of other axes.