Independent axes (INDP_SYN, INDP_ASYN) (#WAIT INDP, #WAIT INDP ALL)
Two different operation modes are provided to program independent axes:
- Command value based synchronisation of path axes and independent axes at block end.
- Command value based synchronisation of path axes and independent axes over several blocks.

![]() | No offsets are considered for independent axes in the initial state.. As of Build V3.1.3081.05, enter INCL_OFFSETS in the NC command to activate the inclusion of offsets in the calculation of the programmed axis position. |
Additive manual mode (G201/G202) with an independent axis is possible.
Programming syntax for independent axes: |
<axis_name> [ INDP_SYN | INDP_ASYN G90 | G91 G00 | [G01 | G100 FEED=.. | TIME=.. | FEED_MAX_WEIGHT=..] POS=.. [SLOPE_TYPE=<ident>] {M..} {H..} [DRY_RUN] [ACC_WEIGHT=..] [RAPID_ACC_WEIGHT=..] [INCL_OFFSETS] { \ } ] |
<axis_name> | Name of independent axis |
INDP_SYN | Identifier for synchronous (blockwise) independent axis motion. The transition to the next block is only executed if all axes have reached their target points. Must always be programmed as the first keyword. |
INDP_ASYN | Identifier for asynchronous (cross-block) independent axis motion. There is no synchronisation to target points. Command value based synchronisation is executed by a special NC command (#WAIT INDP) or by programming the independent axis as a conventional path axis. Must always be programmed as the first keyword. |
G90 / G91 | Absolute/relative dimension |
G00 / G01 | Rapid traverse/linear interpolation |
FEED=.. | Axis-specific feed rate in [mm/min, m/min, inch/min] |
TIME=.. | Axis-specific motion time in [s] |
FEED_MAX_WEIGHT=.. | Weighting factor in [%] referred to axis-specific maximum feed P-AXIS-00212. Only weighting factors less than 100% are permitted. (according to G194, Section Machining time/feed rate (G93/G94/G95/G194)) |
POS=.. | Axis position in [mm, inch] |
SLOPE_TYPE=<ident> | Slope profile types according to #SLOPE [TYPE=...], Section Independent axes). If no slope type is programmed, the slope type taken from the channel parameter list P-CHAN-00071 is set by default. |
Old syntax: SLOPE_PROFIL=.. | Slope profile types (0, 1, 2, 3). If no slope type is programmed, the slope type taken from the channel parameter list P-CHAN-00071 is sued by default. |
G100 [as of V2.11.2801.05] | If measurement types 1, 2 or 7 (Section Measuring functions) are used, a measurement run can be executed with independent axes. The measuring point is latched for each axis involved. An independent measurement run is also possible in parallel to a path motion of a G100 measurement run. For more information see [FCT-C4//Measurement]. |
DRY_RUN | Dry run of axis motion. The motion is only executed in the NC channel but the axis is not really moved. This offsets the axis coordinate within the channel relative to the physical axis. This offset is automatically cancelled at every program start or by an explicitly programmed #CHANNEL INIT [CMDPOS] (see Programming example 3). |
M.. | Axis-specific M functions (*) |
H.. | Axis-specific M/H-functions (*) |
ACC_WEIGHT=.. [as of V3.1.3079.06] | Axis-specific weighting factor in [%] referred to acceleration with G01, G02, G03 (see section Acceleration weighting (G130/G131/G230/G231/G333/G334)) |
RAPID_ACC_WEIGHT=.. [as of V3.1.3079.06] | Axis-specific weighting factor in [%] referred to acceleration with G00 (see section Acceleration weighting (G130/G131/G230/G231/G333/G334)) |
INCL_OFFSETS [as of V3.1.3081.05] | Include the current active axis-specific offsets (e.g. G55, G92 etc.) in the programmed axis position POS |
\ | Separator ("backslash") for clear programming of the command over multiple lines. |
(*) only possible with synchronisation modes MOS, MVS_SVS, MVS_SNS, MNS_SNS.
Axis-specific M/H functions can also be output to an independent axis without programming a motion. This only requires the identifier INDP_SYN or INDP_ASYN.
Syntax : |
<axis_name> [ INDP_SYN | INDP_ASYN M.. {M..} H.. {H..} { \ } ] |
<axis_name> | Name of independent axis |
INDP_SYN/INDP_ASYN | Identifier for an independent axis |
M.. | Axis-specific M function |
H.. | Axis-specific H functions |
\ | Separator ("backslash") for clear programming of the command over multiple lines. |
Command value based synchronisation of specific asynchronous axis motions (INDP_ASYN) can be forced by the NC command:
Syntax : |
#WAIT INDP [ <axis_name> { ,<axis_name> } ] |
<axis_name> | Name of asynchronous axis |
![]() | If an asynchronous axis is again programmed with a motion before or without a corresponding #WAIT INDP [ ], command value based synchronisation is implicitly executed in the interpolator. |
Command value based synchronisation of all currently active asynchronous axis motions (INDP_ASYN) is forced by the NC command:
Syntax : |
#WAIT INDP ALL |
![]() | If the axis of a pre-assigned axis-specific M/H function (P-CHAN-00039, P-CHAN-00025) is programmed in the same NC block as an independent axis, an error message is output. Example: M10 is pre-assigned for a specific X axis (m_default_outp_ax_name[10] x): N10 M10 X [INDP_SYN G01 G90 POS10 FEED1000 M7] |_____| <- Error! |
Programming Example
Independent axes