This section describes specific syntaxes that can be used in a Multi-Slide Lathe machine environment in order to produce NC data for a multi-channel context. In particular, this means that commands must be available:
For more information about NC commands and NC instructions, please refer to PP Tables and PP Word Syntaxes.
To identify the channel (Turret) in the program header a new attribute
MFG_CHANNEL_NUMBER is added to the NC instruction NC_START_MACRO.
Synchronization is also possible thanks to the NC instruction
NC_PROGRAM_HEADER.
MFG_IDENTIFIER: Part Operation identifier
MFG_PROGRAM_NAME: Manufacturing Program name
MFG_MACHINE_NAME: Machine name
MFG_CHANNEL_NUMBER: Channel number (Turret)
MFG_MODEL_NAME: Name of the CATProcess (with document suffix)
MFG_PRODUCT_NAME: Name of the CATProduct/CATPart (with no document suffix).
*START_NC_INSTRUCTION NC_START_MACRO
...
CHANNEL,%MFG_CHANNEL_NUMBER
...
*END
...
CHANNEL,1
...NC_PROGRAM_HEADER
*START_NC_INSTRUCTION NC_PROGRAM_HEADER
*START_SEQUENCE
CHANNEL,%MFG_CHANNEL_NUMBER
*END
*END
To valuate the synchronizations defined in the programs, an NC command NC_SYNCHRONISATION is available to define the syntax to be valuated.
MFG_SYNCHRONISATION_NUMBER: index of the synchronization
MFG_CHANNEL1: first synchronized channel
MFG_CHANNEL2: second synchronized channel
MFG_MASTER_CHANNEL: number of the channel set as master.
*START_NC_COMMAND NC_SYNCHRONISATION
SYNC/%MFG_SYNCHRONISATION_NUMBER,%MFG_CHANNEL1,%MFG_CHANNEL2,%MFG_MASTER_CHANNEL
*END
For two channels, the number of synchronizations can be managed dynamically.
With more than 2 channels, the algorithm to compute the number of
synchronizations is more complex. In this case, the numbering of
synchronizations might not be always relevant.
Note that if no master is defined in a synchronization, the last parameter (MFG_MASTER_CHANNEL) of the SYNC syntax is 0 (zero).
As several spindles can be addressed within a given channel, a new attribute MFG_SPINDLE_NAME is added to identify the current spindle when defining existing NC commands NC_SPINDLE_LATHE and NC_MACHINING_AXIS.
Note that this corresponds to the part's spindle speed.
MFG_SPNDL_UNIT: list with two values defining the spindle rotation units.
First value: spindle rotation expressed in revolutions per minute. RPM is the
default value.
Second value: spindle rotation expressed in surface meters per minute. SMM is
the default value.
MFG_SPNDL_WAY: list with two values defining the direction of rotation of the
spindle.
First value: spindle rotation processed clockwise. CLW is the default value.
Second value: spindle rotation processed counter-clockwise. CCLW is the default
value.
MFG_SPNDL_SPEED: numerical value of the spindle speed.
MFG_SPINDLE_NAME: current spindle name if any.
*START_NC_COMMAND NC_SPINDLE_LATHE
SPINDL/%MFG_SPNDL_SPEED,&MFG_SPNDL_UNIT,%MFG_SPINDLE_NAME
*END
When machining is done on the Counter Spindle, the SPINDL syntax is set to be coherent with the Counter Spindle.
The figure below shows how the Clockwise / Counterclockwise spindle direction is determined: you must look at the tool from the jaws. In this figure, the spindle direction is counterclockwise.
MFG_NCAXIS_IDENTIFIER: machining axis identifier
MFG_SPINDLE_NAME: name of the spindle that is linked to the origin
MFG_SPINDLE_NUMBER: number of the spindle that is linked to the origin
MFG_NCAXIS_X_ORIG, MFG_NCAXIS_Y_ORIG, MFG_NCAXIS_Z_ORIG: coordinates of the
machining axis origin
MFG_NCAXIS_X_VECX, MFG_NCAXIS_Y_VECX, MFG_NCAXIS_Z_VECX: components of the
x-axis
MFG_NCAXIS_X_VECY, MFG_NCAXIS_Y_VECY, MFG_NCAXIS_Z_VECY: components of the
y-axis
MFG_NCAXIS_X_VECZ, MFG_NCAXIS_Y_VECZ, MFG_NCAXIS_Z_VECZ: components of the
z-axis.
*START_NC_COMMAND NC_MACHINING_AXIS
$$*CATIA0
$$ %MFG_NCAXIS_IDENTIFIER,%MFG_SPINDLE_NAME, %MFG_SPINDLE_NUMBER
$$ %MFG_NCAXIS_X_VECX %MFG_NCAXIS_X_VECY %MFG_NCAXIS_X_VECZ %MFG_NCAXIS_X_ORIG
$$ %MFG_NCAXIS_Y_VECX %MFG_NCAXIS_Y_VECY %MFG_NCAXIS_Y_VECZ %MFG_NCAXIS_Y_ORIG
$$ %MFG_NCAXIS_Z_VECX %MFG_NCAXIS_Z_VECY %MFG_NCAXIS_Z_VECZ %MFG_NCAXIS_Z_ORIG
*END