Cycle 800 ADJUST XZ SYSTEM
ISO programming
G800
Application
Refer to your machine manual.
This function must be enabled and adapted by the machine manufacturer.
The cycle is machine-dependent.
To be able to perform a turning operation, you need to position the tool appropriately relative to the workspindle. For this purpose, you can use Cycle 800 ADJUST XZ SYSTEM.
With turning operations, the inclination angle between the tool and workspindle is important, for example to machine contours with undercuts. Cycle 800 provides various options for aligning the coordinate system for an inclined machining operation:
- If you have positioned the rotary axis for inclined machining, you can use Cycle800 to orient the coordinate system to the positions of the rotary axes (Q530=0). In this case, make sure to program M144 or M128/TCPM for proper calculation of the orientation.
- Cycle 800 calculates the required angle of the rotary axis based on the inclination angle Q531; depending on the strategy selected in the parameter INCLINED MACHINING Q530, the control positions the tilting axis with (Q530=1) or without compensation movement (Q530=2).
- Cycle 800 uses the inclination angle Q531 to calculate the required rotary axis angle, but does not position the tilting axis (Q530=3). You need to position the rotary axis manually to the calculated values Q120 (A axis), Q121 (B axis), and Q122 (C axis) after the cycle.
If the milling spindle axis and the workspindle axis are parallel to each other, you can use the Precession angle Q497 to define any desired rotation of the coordinate system about the spindle axis (Z axis). This may be necessary if you have to bring the tool into a specific position due to a lack of space or if you want to be able to optimally monitor a machining process. If the axes of the workspindle and of the milling spindle are not parallel, only two precession angles are realistic for machining. The control selects the angle that is closest to the input value of Q497.
Cycle 800 positions the milling spindle such that the cutting edge is aligned relative to the turning contour. You can use a mirrored version of the tool (REVERSE TOOL Q498); this offsets the milling spindle by 180°. In this way, you can use your tools for both internal and external machining. Position the cutting edge at the center of the workspindle by using a positioning block, such as L Y+0 R0 FMAX.
- If you change the position of a rotary axis, you need to run Cycle 800 again to realign the coordinate system.
- Check the orientation of the tool before machining.
Related topics
- Turning cycles
Eccentric turning
Sometimes it is not possible to clamp a workpiece such that the axis of the center of rotation is aligned with the axis of the workspindle. For example, this is the case with large or non-rotationally symmetrical workpieces. The eccentric turning Q535 function in Cycle 800 enables you to perform turning in such cases as well.
During eccentric turning, more than one linear axis is coupled to the workspindle. The control compensates for the eccentricity by performing circular compensation movements with the coupled linear axes.
This function must be enabled and adapted by the machine manufacturer.
If you machine at high spindle speed and with a high amount of eccentricity, you need to program large feed rates for the linear axes in order to perform the movements synchronously. If these feed rates cannot be met, the contour will be damaged. The control therefore generates an error message if 80% of a maximum axis speed or acceleration is exceeded. If this occurs, reduce the spindle speed.
Operating notes
- Coupling and decoupling must be performed while the spindle is stationary
- Check the machining sequence by using the simulation
- Select the technology data in such a way that no vibrations (resonances) occur
- Turn a test cut before the actual machining operation to ensure that the required speeds can be attained.
- The linear axis positions resulting from the compensation are displayed by the control only in the ACTUAL value position display.
Effect
With Cycle 800 ADJUST XZ SYSTEM, the control aligns the workpiece coordinate system and orients the tool correspondingly. Cycle 800 is effective until it is reset by Cycle 801, or until Cycle 800 is redefined. Some cycle functions of Cycle 800 are implicitly reset by other factors:
- Mirroring of tool data (Q498 REVERSE TOOL) is reset by a tool call with TOOL CALL
- The ECCENTRIC TURNING Q535 function is reset at the end of the program or if the program is aborted (internal stop)
Notes
The machine manufacturer configures your machine tool. If the tool spindle was defined as an axis in the kinematic model during this configuration, the feed-rate potentiometer is effective for movements related to Cycle 800.
The machine manufacturer can configure a grid for the positioning of the tool spindle.
If a special transformation is active in turning mode (FN 17: SYSWRITE ID215 NR2), the machine manufacturer must configure the workpiece spindle in the machine kinematics.
- Enable tool reversal again after a TOOL CALL block
- Carefully test the NC program or program section in Single Block mode of the Program Run operating mode
- If required, change the algebraic sign of the SPB angle.
- This cycle can be executed only in the FUNCTION MODE TURN machining mode.
- The tool must be clamped and measured in the correct position.
- Cycle 800 positions only the first rotary axis based on the tool position. If an M138 is activated, then this limits the selection to the defined rotary axes. If you want to move other rotary axes to a specific position, then position theses axes correspondingly before running Cycle 800.
Taking rotary axes into account during machining operations with M138
Notes on programming
- You can mirror the tool data (Q498 REVERSE TOOL) only if a turning tool has been selected.
- To reset Cycle 800, program Cycle 801 RESET ROTARY COORDINATE SYSTEM.
- Cycle 800 limits the maximum spindle speed permitted for eccentric turning. It results from a machine-dependent configuration (defined by your machine manufacturer) and the amount of eccentricity. You might have programmed a speed limitation with FUNCTION TURNDATA SMAX before programming Cycle 800. If the value of this speed limitation is smaller than the speed limitation calculated by Cycle 800, the smaller value will be applied. To reset Cycle 800, program Cycle 801. This will also reset the speed limitation set by that cycle. After that, the speed limitation programmed before the cycle call with FUNCTION TURNDATA SMAX takes effect again.
- If the workpiece is to be rotated about the workpiece spindle, then use an offset of the workpiece spindle in the preset table. Basic rotations are not permitted; the control issues an error message.
- If you set parameter Q530 Inclined machining to 0 (tilting axes must have been positioned previously), make sure to program M144 or TCPM/M128 beforehand.
- If, in parameter Q530 “Inclined machining,” you use the settings 1: MOVE, 2: TURN and 3: STAY, then the control, depending on the machine configuration, activates function M144 or TCPM
Cycle parameters
Help graphic | Parameters |
---|---|
Q497 Precession angle? Angle at which the control positions the tool. Input: 0...359.99999 | |
Q498 Reverse tool (0=no/1=yes)? Mirror tool for inside/outside machining. Input: 0, 1 | |
Q530 Inclined machining? (optional) Position the rotary axes for inclined machining: 0: Maintain the rotary axis position (axis must have been positioned beforehand) 1: Automatically position the rotary axis and orient the tool tip accordingly (MOVE). The relative position between the workpiece and the tool remains unchanged. The control performs a compensation movement with the linear axes. 2: Automatically position the rotary axis without orienting the tool tip accordingly (TURN). 2: Automatically position the rotary axis without orienting the tool tip accordingly (TURN). Input: 0, 1, 2, 3 | |
Q531 Angle of incidence? (optional) Inclination angle between the tool and the workpiece Input: -180...+180 | |
Q532 Feed rate for positioning? (optional) Traverse speed of the rotary axis during automatic positioning Input: 0.001...99999.999 or FMAX | |
Q533 Preferred dir. of incid. angle? (optional) 0: Solution that is the shortest distance from the current position. –1: Solution that is in the range between 0° and –179.9999° +1: Solution that is in the range between 0° and +180° –2: Solution that is in the range between –90° and –179.9999° +2: Solution that is between +90° and +180° Input: –2, –1, 0, +1, +2 | |
Q535 Eccentric turning? (optional) Couple the axes for the eccentric turning operation: 0: Deactivate axis couplings 1: Activate axis couplings. The center of rotation is located at the active preset 2: Activate axis couplings. The center of rotation is located at the active datum 3: Do not change the axis couplings Input: 0, 1, 2, 3 | |
Q536 Eccentric turning without stop? (optional) Interrupt program run before the axes are coupled: 0: Stop before the axes are coupled again. In stopped condition, the control opens a window in which the amount of eccentricity and the maximum deflection of the individual axes are displayed. You can then continue the machining operation with NC Start or select CANCEL 1: Axes are coupled without stopping beforehand Input: 0, 1 | |
Q599 or QS599 Retraction path/macro? (optional) Retraction prior to execution of positioning movements in the rotary axis or tool axis: 0: No retraction –1: Maximum retraction with M140 MB MAX, see Retracting in the tool axis with M140 > 0: Path for the retraction in mm or inches "...": Path for an NC program that will be called as a user macro. Input: –1...9999 in the case of text entry: maximum 255 characters or QS parameter |
NC programs contained in this User's Manual are suggestions for solutions. The NC programs or individual NC blocks must be adapted before being used on a machine.
Change the following contents as needed:
- Tools
- Cutting parameters
- Feed rates
- Clearance height or safe position
- Machine-specific positions (e.g., with M91)
- Paths of program calls
Some NC programs depend on the machine kinematics. Adapt these NC programs to your machine kinematics before the first test run.
In addition, test the NC programs using the simulation before the actual program run.
With a program test you determine whether the NC program can be used with the available software options, the active machine kinematics and the current machine configuration.
11 CYCL DEF 800 ADJUST XZ SYSTEM ~ | ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
User macro
User macros are separate NC programs.
A user macro contains a sequence of multiple instructions. With a macro, you can define multiple NC functions that the control executes. As a user, you create macros as NC programs.
Macros work in the same manner as NC programs that are called (e.g., with the NC function CALL PGM). Define a macro as an NC program with the file type *.h or *.i.
- HEIDENHAIN recommends using QL parameters in the macro. QL parameters have only a local effect for an NC program. If you use other types of variables in the macro, then changes may also have an effect on the calling NC program. In order to explicitly cause changes in the calling NC program, use Q or QS parameters with the numbers 1200 to 1399.
- Within the macro, you can read the value of the cycle parameters.
Example of a user macro for retraction
NC programs contained in this User's Manual are suggestions for solutions. The NC programs or individual NC blocks must be adapted before being used on a machine.
Change the following contents as needed:
- Tools
- Cutting parameters
- Feed rates
- Clearance height or safe position
- Machine-specific positions (e.g., with M91)
- Paths of program calls
Some NC programs depend on the machine kinematics. Adapt these NC programs to your machine kinematics before the first test run.
In addition, test the NC programs using the simulation before the actual program run.
With a program test you determine whether the NC program can be used with the available software options, the active machine kinematics and the current machine configuration.
0 BEGIN PGM RET MM | |
1 FUNCTION RESET TCPM | ; Reset TCPM |
2 L Z-1 R0 FMAX M91 | ; Traverse with M91 |
3 FN 10: IF Q533 NE+0 GOTO LBL "DEF_DIRECTION" | ; If Q533 (preferred direction from Cycle 800) is not equal to 0, then jump to LBL "DEF_DIRECTION" |
4 FN 18: SYSREAD QL1 = ID240 NR1 IDX4 | ; Read system data (nominal position in the REF system) and store in QL1 |
5 QL0 = 500 * SGN QL1 | ; SGN = Check algebraic sign |
6 FN 9: IF +0 EQU +0 GOTO LBL "MOVE" | ; Jump to LBL MOVE |
7 LBL "DIRECTION" | |
8 QL0 = 500 * SGN Q533 | ; SGN = Check algebraic sign |
9 LBL "MOVE" | |
10 L X-500 Y+QL0 R0 FMAX M91 | ; Retraction with M91 |
11 END PGM RET MM |