Manufacturing > Subroutine Programming > To Create a New Subroutine Pattern
To Create a New Subroutine Pattern
1. Click Manufacturing > Subroutines. The SUBROUTINES menu appears.
2. Click Create.
3. To select NC sequences to be patterned, place a checkmark next to their names in the namelist menu (which also provides Select All and Unsel All options). Click Done Sel when finished.
4. The Subroutines dialog box opens. The top portion of the dialog box contains the option buttons and checkboxes that allow you to specify the type of subroutine pattern and desired CL output format:
If you select the Group option button, the sequences you have selected will be patterned as a group. This means that the selected sequences and all the sequences in between form a patterned internal group. If you select Individual, each selected sequence is patterned individually; the sequences in between are not affected.
If you select the Absolute option button, CL data for the subroutine will be output in absolute mode. If you select Incremental, the system will output the MODE/INCR and MODE/ABSOL commands for each NC sequence that is placed in a subroutine.
If you select the Multax checkbox, the system will output transformed CL data rather than outputting Rotate Table commands.
If you select the Copy CL checkbox, the system will output CL data without the subroutine definitions and calls. Redefine a pattern to use this option if you want to temporarily suppress subroutine pattern definitions in CL output.
5. The 1st Direction tab lets you define the pattern in the first direction:
Pattern Type—Use one of the following option buttons:
Translate—Translate the CL data along the axes of the base coordinate system. Type the translation values in the X value, Y value, and Z value text boxes.
Rotate—Rotate the CL data about one of the axes of the base coordinate system. Specify the desired axis by selecting the X, Y, or Z option button. Type the rotation value in the Angle text box.
Csys—This option enables you to select or create coordinate systems for placing instances of the subroutine. The system calculates the correct TRANS/ROTATE statements for each instance, based on the location of the coordinate system specified for this instance with respect to the base coordinate system. Click Select to create, select, remove, or show the coordinate systems.
Base Coordinate System—Specify which coordinate system, Machine or NC Sequence, is to be used as the base coordinate system for patterning CL data.
Number—Specify the number of instances in the first direction.
6. The 2nd Direction tab lets you define the pattern in the second direction. It contains the same options as the 1st Direction tab, except the Csys option button is replaced by None, which means no pattern in this direction (this is the default).
7. The Fixture tab lets you increment the fixture offset register value.
If you select Use Fixture Compensation, the system will output the "SET/OFSETL, n" command for each patterned sequence, where n is the fixture offset register number, defined as follows:
Initial Register specifies the fixture offset register number for the first instance.
1st Direction Increment specifies the incremental value for each subsequent instance in the first direction.
2nd Direction Increment specifies the incremental value for instances in the second direction. This text box only appears if the subroutine pattern is bidirectional.
If you click Custom, the system displays the Subroutine Fixture Offsets Setup dialog box, where it lists all instances of the pattern (based on the number of instances in each direction), and current register numbers for each instance (based on the values for Initial Register, 1st Direction Increment, and 2nd Direction Increment).
Select an instance where you want to customize the fixture offset and type the new value in the Fixture Offset text box. The Reset button resets all the offsets back to default values. Click OK to finish customizing the offsets.
8. Click OK in the Subroutines dialog box to create the subroutine pattern.
* 
NC sequences included in a subroutine pattern cannot be selected for another subroutine pattern. Redefine the existing pattern instead.
Was this helpful?