# Description

P-STUP-00033 | Memory size for backward motion
Description | This parameter defines the memory size in bytes used for backward motion on the path. During start-up, the NC checks whether the required minimum size is available. If this is not the case, a warning is output and the memory size is set to the required minimum value. If the size is set to 0, the “forward/ backward motion on the path” function is not available. The maximum size is only limited by the resources available on the PC.
Parameter | fb_storage_size[i] where i = 0 to 11 (maximum number of channels: 12, application-specific)
Data type | UNS32
Data range | 0 ... MAX(UNS32)
Dimension | ----
Default value | 0
Remarks |

P-CHAN-00041 | Synchronisation type of M functions
Description | In the array m_synch[i], the synchronization type of the corresponding M function is defined. Here, the field index 'i' defines the number of the M function. The value indicates the synchronisation type of the M function, i.e. when a check is made for presence of a PLC acknowledgement. A motion is not executed, or is stopped at the latest towards the end of the block, if no acknowledgement has arrived from the PLC. The synchronisation type is defined as a string constant or a hexadecimal value.
Parameter | m_synch[i] where i = 0 999 (maximum number of M functions, application-specific)
Data type | STRING
Data range | See the table below.
Dimension | ----
Default value | NOT_VALID *
Remarks | M functions are consumption information and must be fetched (read) by the PLC. This also applies to M functions of the type MOS, MOS_TS, MEP_MOS and MET_MOS. Otherwise, this results in a blocked interface to the HLI in the CNC and as a consequence to an unexpected processing stop.

*Note:

The
default value for internal M functions (M0, M1, M2, M17, M29, M30, M3, M4, M19) is NO_SYNCH.

Caution:

The following applies to synchronisation types with associated time and path-related pre-output (MET_SVS, MET_MOS, MEP_SVS, MEP_MOS):

If one of these synchronisation types is later changed into one which requires no pre-output value, P-CHAN-00070 (m_pre_outp[i]) must be assigned to 0. Otherwise, a license error is generated in case of microjoints if this function is not licensed or not enabled (seeP-CHAN-00600 Alternatively: P-STUP-00060) is inactive.

Example:

m_synch[12] MVS_SVS 0x00000002

Note: Programming a UNS32 variable is permissible for downward compatibility reasons.

Example: m_synch[12] 0x00000002

Constant | Value | Meaning
NOT_VAILD | -1 | No valid M function
NO_SYNCH | 0x00000000 | No output of M function to PLC
MOS | 0x00000001 | Output of M function to PLC without synchronisation. If the M function is programmed within a motion block, the output of the M function is executed before the movement. M function must be fetched from PLC!
MVS_SVS | 0x00000002 | Output of the M function to the PLC before the motion block, synchronisation before the motion block
MVS_SNS | 0x00000004 | Output of the M function to the PLC before the motion block, synchronisation after the motion block
MNS_SNS | 0x00000008 | Output of the M function to the PLC after the motion block, synchronisation after the motion block
MNE_SNS | 0x00000020 | Output of M function to PLC after measurement event and removal of distance to go, synchronisation after motion block (for edge banding option only)
MVS_SLM | 0x00004000 | Late synchronisation, output of M function to PLC within the block, synchronisation during transition to G01/G02/G03 (implicit synchronisation)
MVS_SLP | 0x00008000 | Late synchronisation, output of M function to PLC within the block, synchronisation by NC command #EXPL SYN (explicit synchronisation)
MOS_TS | 0x00040000 | Output of the M function to the PLC before motion block without synchronisation, CNC calculates sampling time offset for high-precision time output in the PLC. M function must be fetched from PLC.
MEP_MOS | 0x00100000 | Pre-output of M function with specified path, without synchronisation. M function must be fetched from PLC.
MET_MOS | 0x00200000 | Pre-output of M function with specified time, without synchronisation. M function must be fetched from PLC.
BWD_SYNCH | 0x00400000 | Synchronisation of M function during backward motion with MVS_SVS
FWD_SYNCH | 0x00800000 | Synchronisation of M function during 'Simulated forward motion' based on the defined synchronisation type
MEP_SVS | 0x01000000 | Output of M function with specified path, synchronisation before next block
MET_SVS | 0x02000000 | Pre-output of M function with specified time, synchronisation before next block
FAW_SYNCH | 0x10000000 | Decoding stop (Flush and Wait): Output of M function to PLC and stop of program decoding at block end until program run is completed. FAW_SYNCH can be set in addition to other synchronisation types. M functions with FAW_SYNCH may not be used when tool radius compensation (TRC), polynomial contouring and HSC mode are active.

P-CHAN-00275 | Backward movement with external position offsets
Description | The programmed path contour can be shifted by external online influences. Subsequent synchronisation can signal this position offset to the entire NC channel (see #CHANNEL INIT[CMDPOS]). This deletes the offset, i.e. an absolute programmed position then does not include an offset.

During forward/backward movement, external offsets are not moved backward like other motions defined in NC program. If there is backward movement on a program position with an external offset, there are two options:

1. A further backward movement is not allowed since the positions specified in the NC program must also be reached in the backward direction without offset.
2. The offset is retained and backward movement is allowed to continue. The current absolute positions defined in NC program are no longer valid since they are shifted by the currently valid offset.

These offsets may be caused by:

- Manual mode actions
- Shifting the contour with 'Jog of Path' (see [FCT-C15])
- Compensations executed online (see [FCT-C20]

Parameter | forward_backward.with_offset
Data type | BOOLEAN
Data range | 0: No backward movement is possible over the program position of an external offset. The backward movement storage is cleared automatically (as for a #BACKWARD STORAGE CLEAR). 1: A backward movement is possible beyond the program position of an external offset is possible. The active offset at the time of reversal is retained.
Dimension | ----
Default value | 0
Remarks | The backward movement is stopped when the following online influences occur: - Measurement with G100 - Homing with G74 - Deselection of Online Tool Compensation with #OTC OFF

P-CHAN-00276 | Programmed M00 stop during backward movements
Description | Suppress stop during backward movements with M00.
Parameter | forward_backward.disable_m00_backward
Data type | BOOLEAN
Data range | 0: The process also stops in the backward direction with M00. 1: Stopping with M00 is omitted in the backward direction.
Dimension | ----
Default value | 0
Remarks |

P-CHAN-00277 | Programmed M00 stop during next forward movements
Description | Suppress stop in next forward movements with M00.
Parameter | forward_backward.disable_m00_2nd_forward
Data type | BOOLEAN
Data range | 0: Motion is also stopped with M00 in the next forward motion. 1: Stopping with M00 is omitted in the next forward direction.
Dimension | ----
Default value | 0
Remarks |

P-CHAN-00278 | Programmed M01 stop during backward movement
Description | Suppress stop during backward movement with M01.
Parameter | forward_backward.disable_m01_backward
Data type | BOOLEAN
Data range | 0: The process also stops in backward direction with M01. 1: Stopping with M01 is omitted in the backward direction.
Dimension | ----
Default value | 0
Remarks |

P-CHAN-00279 | Programmed M01 stop during next forward movement
Description | Suppression of stop on next forward movement with M01.
Parameter | forward_backward.disable_m01_2nd_forward
Data type | BOOLEAN
Data range | 0: The process is also stopped in next forward direction with M01. 1: Stopping with M01 omitted in next forward direction.
Dimension | ----
Default value | 0
Remarks |

P-CHAN-00308 | Response at STOP marks during backward movement
Description | Suppress stop at STOP during backward movement.
Parameter | forward_backward.disable_stop_backward
Data type | BOOLEAN
Data range | 0: The movement stops at the STOP mark during backward movement. 1: The STOP mark is ignored during backward movement
Dimension | ----
Default value | 0
Remarks | This parameter is available as of CNC Build V3.1.3039.01.

P-CHAN-00309 | Response at STOP marks during forward movement
Description | Suppress stop at STOP during forward movement.
Parameter | forward_backward.disable_stop_1st_forward
Data type | BOOLEAN
Data range | 0: The motion stops at the STOP mark during forward movement. 1: The STOP mark is ignored during forward movement.
Dimension | ----
Default value | 0
Remarks | This parameter is available as of CNC Build V3.1.3039.01.

P-CHAN-00310 | Response at STOP marks during repeated forward movement
Description | Suppress stop at STOP during forward movement after previous backward movement.
Parameter | forward_backward.disable_stop_2nd_forward
Data type | BOOLEAN
Data range | 0: The motion always stops at the STOP mark during repeated forward movement. 1: The STOP mark is ignored during forward movement after previous backward movement.
Dimension | ----
Default value | 0
Remarks | This parameter is available as of CNC Build V3.1.3039.01.