Download as pdf or txt
Download as pdf or txt
You are on page 1of 35

What’s New in UPG-2 for CAMWorks

Geometric Americas Inc. makes no warranties, either expressed or implied with respect to this
document. Geometric reserves the right to revise and improve products as it sees fit, and to revise
the specifications and information contained herein without prior notice. Due to continuing product
development, specifications and capabilities described in this document are subject to change
without notice.

Copyright © 2019-2020 Geometric Americas Inc. All Rights Reserved.


August 2020
Table of Contents

Table of Contents
(Click a link below or use the bookmarks on the left.)

WHAT’S NEW IN UPG-2 FOR CAMWORKS ....................................................... 1


About UPG-2 (Enhanced UPG App) 5
What’s New in UPG-2 for CAMWorks 2021 BETA 6
Support for Probing Cycles in Mill-Turn Post Source Files ................................. 6
1. Add Probing Header Command in Header section of Post 6
2. Add New Library Command Line in Mill-Turn Post Source Files 6
3. Add New Attribute Names 6
4. Adding Probe CALC Section in Post Library 6
5. Adding Probe Template Section in Mill-Turn Post Source 7
What’s New in UPG-2 for CAMWorks 2020 SP3 9
System Constant ‘CAM_REV2020_SP3’ ................................................................ 9
Parameters added to System Command ‘TRANSFORM’ ..................................... 9
What’s New in UPG-2 for CAMWorks 2020 SP2 11
Post Variable ........................................................................................................... 11
6. WRAPPED_AXIS 11
7. Adding Wrapped Cylindrical to Mill Posts 11
What’s New in UPG-2 for CAMWorks 2020 SP1 14
System Variables .................................................................................................... 14
1. MACH_IS_4TH_AXIS_REV_DIR 14
2. MACH_IS_5TH_AXIS_REV_DIR 14
What’s New in UPG-2 for CAMWorks 2020 SP0 15
System Header Commands ................................................................................... 15
1. :ALLOW_PROBING 15
System Variables for Probing Cycles .................................................................. 15
1. PROBE_A_1ST_ANGLE 15
2. PROBE_B_2ND_ANGLE_OR_TOL 15
3. PROBE_C_3RD_ANGLE 15
4. PROBE_D_NOMINAL_SIZE 15
5. PROBE_E_EXPERIENCE_VALUE 15
6. PROBE_F_PERCENT_FEEDBACK 16
7. PROBE_H_TOL_VALUE 16
8. PROBE_I_CYCLE_SPEC_DIST_X 16
9. PROBE_J_CYCLE_SPEC_DIST_Y 16
10. PROBE_K_CYCLE_SPEC_DIST_Z 16
11. PROBE_M_POS_TOL 16
12. PROBE_Q_OVERTRAVEL_DIST 16
13. PROBE_R_CLEARANCE 16
14. PROBE_T_TOOL_OFFSET_NUMBER 17
15. PROBE_U_UPPER_TOL_LIMIT 17
16. PROBE_V_NULL_BAND 17
17. PROBE_W_PRINT_DATA 17
18. PROBE_X_POS_OR_SIZE_X 17
19. PROBE_Y_POS_OR_SIZE_Y 17
20. PROBE_Z_POS_OR_SIZE_Z 17
21. PROBE_CYCLE_FEEDRATE 17

2
Table of Contents
22. PROBE_WORK_SUB_OFFSET_NUM 18
23. PROBE_WORK_OFFSET_NUM 18
24. PROBE_UPDATE_WCS_OFFSET 18
25. PROBE_FIXTURE_OFFSET_NUM 18
26. PROBE_UPDATE_OFFSET_TYPE 18
27. HAVE_PROBE_CYCLE 18
28. PROBE_CYCLE_TYPE 19
System Variables .................................................................................................... 19
1. OPR_IS_PRIMARY 19
2. CL_COMMENT 19
3. CL_COMMAND 19
4. IS_SUB_SPINDLE_REVERSE_Z 19
5. MACH_NUMBER_AXIS 20
6. MACH_ROTARY_4AXIS_TYPE 20
7. MACH_ROTARY_VEC_4X 20
8. MACH_ROTARY_VEC_4Y 20
9. MACH_ROTARY_VEC_4Z 20
10. MACH_ROTARY_VEC_5X 20
11. MACH_ROTARY_VEC_5Y 21
12. MACH_ROTARY_VEC_5Z 21
System Commands ................................................................................................ 21
1. GET_SW_CUSTOM_PROP_BY_NAME 21
2. GET_SW_SUMMARY_INFO_BY_ID 22
CALC Sections for Probe Cycles .......................................................................... 22
CALC Sections for Mill........................................................................................... 22
CALC Sections for SOLIDWORKS ........................................................................ 23
1. CALC_GET_SW_PROPERTIES 23
2. CALC_GET_SW_SUMMARY_FIELDS 23
3. CALC_GET_SW_CUSTOM_FIELDS 24
4. CALC_OUTPUT_SW_PROPERTY 24
Attribute Commands .............................................................................................. 24
1. QUERY_SW_FIELD_NAME 24
2. QUERY_SW_FIELD_VAL 25
3. QUERY_SW_FIELD_TYPE 25
System Constants .................................................................................................. 25
System Constants for SOLIDWORKS .................................................................. 26
Additional System Constants ............................................................................... 26
Query Commands .................................................................................................. 27
1. QUERY_TOOL_ID_COMMENT 27
2. QUERY_TOOL_VENDOR_COMMENT 27
3. QUERY_TOOL_DESCRIPTION_COMMENT 27
4. QUERY_HOLDER_NUM_COMMENT 28
5. QUERY_HOLDER_VENDOR_COMMENT 28
6. QUERY_HOLDER_DESCRIPTION_COMMENT 28
7. QUERY_STATION_DESCRIPTION_COMMENT 29
What’s New in UPG for CAMWorks 2019 SP2 30
System Header Commands ................................................................................... 30
1. :FORCE_UPPERCASE_OUTPUT 30
Attribute Commands .............................................................................................. 30
1. MUST_BE_LOWERCASE 30
2. MUST_BE_UPPERCASE 30

3
Table of Contents
What’s New in UPG for CAMWorks 2019 SP1 31
System Header Commands ................................................................................... 31
1. :ALLOW_B_AXIS_SIMULTANEOUS_CUTTING 31
Variables ................................................................................................................. 31
1. OPR_START_APPROACH_TYPE 31
2. OPR_X_APPROACH_POS 31
3. OPR_Z_APPROACH_POS 31
4. NEXT_OPR_BAXIS_TURNING 31
5. MAX_B_AXIS_INCREMENT 32
6. NUM_OPERATIONS_FRONT1 32
7. NUM_OPERATIONS_FRONT2 33
8. NUM_OPERATIONS_Rear1 33
9. NUM_OPERATIONS_Rear2 33
10. NUM_SYNC_CODES_REAR1 33
11. NUM_SYNC_CODES_REAR2 33
12. NUM_SYNC_CODES_FRONT1 33
13. NUM_SYNC_CODES_FRONT2 34
14. OPR_BAXIS_TURNING 34
15. OPR_TOOL_TIP_CENTER 34
16. TLP_B_AXIS_OFFSET / P_TLP_B_AXIS_OFFSET 34
Query Commands .................................................................................................. 35
1. QUERY_INT_CENTER_TOUCHOFF_REG 35
System Constants .................................................................................................. 35

4
About UPG-2 (Enhanced UPG App)

About UPG-2 (Enhanced UPG App)


Introducing New UPG-2 Application and Discontinuation of Older versions of UPG
From CAMWorks 2020 SP0 version onwards, an enhanced version of Universal Post Generator
application named UPG-2 will be supported. Official support for all older versions of the Universal
Post Generator application will be discontinued.

Seamlessly upgrade to UPG-2


UPG-2 is built using technologies that ensure excellent compatibility with modern Operating
Systems. It has the same structure, concepts, and methodologies as the older versions of UPG.
If you are an existing user, you will not find any difference in the user interface of this
application with the older version of UPG.
• Existing SRC or LIB files will get compiled as before.
• Post processors compiled using UPG-2 will be compatible with older CAMWorks versions
(previous to CAMWorks 2020).
• UPG-2 will get installed as a separate installation on your system and will not overwrite
any existing older version of UPG on your system.

How UPG-2 is different from Older versions of UPG


UPG-2 also comes equipped with the enhancements required to support Probing and Subroutines
in CAMWorks 2020 version and all future versions.
New system commands, attribute commands, miscellaneous commands, CALC sections, header
commands, variables and constants are periodically added to the Universal Post Generator
application with every new CAMWorks Service Pack release.
From CAMWorks 2020 SP0 version onwards, any new commands, variables or constants added to
the Universal Post Generator application will be available only in UPG-2. For example, UPG-2 also
comes equipped with the enhancements required to support Probing and Subroutines. Neither of
these enhancements will be available in any older version of UPG as support and maintenance
for the older version has been discontinued.

New Commands, Constants and Variables added to UPG-2 for CAMWorks 2021
For a complete list of the new commands, variables and constants added to UPG-2 to ensure
compatibility with the CAMWorks 2021 version, refer the section What’s New in UPG-2 for
CAMWorks 2021 BETA of this document.

New Commands, Constants and Variables added to UPG-2 for CAMWorks 2020
For a complete list of the new commands, variables and constants added to UPG-2 to ensure
compatibility with the CAMWorks 2020 version, refer the section from What’s New in UPG-2 for
CAMWorks 2020 SP3 to What’s New in UPG-2 for CAMWorks 2020 SP0 of this document.

5
What’s New in UPG-2 for CAMWorks 2021 BETA

What’s New in UPG-2 for CAMWorks 2021 BETA


New - Support for Probing Cycles in Mill-Turn Post Source Files
From CAMWorks 2021 version onwards, the support for Probing Cycles has been extended to Mill-
Turn post processors in addition to the existing Mill post processors.
Refer the document Tutorial_on_Adding_Probing_Support_in_Existing_Post_Processors.pdf for details
on how to add the necessary code for ensuring Probing support in existing Mill-Turn Post
Processors.
Details of the necessary coding to be added in Mill-Turn Post Processors are given below:

1. Add Probing Header Command in Header section of Post


Add the header command ALLOW_PROBING in the header section of Mill-Turn post to
enable support for Probe Cycles.
: ALLOW_PROBING=TRUE

2. Add New Library Command Line in Mill-Turn Post Source Files


Add the new library command line for MILLTURN_PROBE.LIB in Mill-Turn Post Source files.
MILLTURN_PROBE.LIB is located in the same directory as MILLTURN.LIB, viz.:
C:\CAMWorksData\UPG-2\MasterLibraryFiles
The main advantage of this method is that your existing lib file doesn’t need to be edited.
Also, the MILLTURN_PROBE.LIB can be referred in various other lib files. It is important to
ensure that MILLTURN_PROBE.LIB is the first lib in the list of lib files.
:LIBRARY=PATH\MILLTURN_PROBE.LIB
:LIBRARY=PATH\POST-LIBRARY-FILE.LIB
:LIBRARY=PATH\MILLTURN.LIB

3. Add New Attribute Names


Add the following attribute names. These are to be defined in MILLTURN.LIB and
MILLTURN_PROBE.LIB.
:ATTRNAME=DEBUG PROBE
:ATTRNAME=PROBE ERROR
:ATTRNAME=P

4. Adding Probe CALC Section in Post Library


New Calc sections are needed to support Mill-Turn. These are to be defined in MILLTURN.LIB
and MILLTURN_PROBE.LIB. Alternatively, they can be added to your post LIB file.
• CALC_LINE_MOVE_PROBE_MILL
• CALC_LINE_MOVE_PROBE_MILL_BAXIS
• CALC_LINE_MOVE_OD_FIXED_PROBE
• CALC_LINE_MOVE_OD_FREE_PROBE
• CALC_LINE_MOVE_FACE_FIXED_PROBE
• CALC_LINE_MOVE_FACE_FREE_PROBE
• CALC_RAPID_MOVE_PROBE_MILL
• CALC_RAPID_MOVE_BAXIS_PROBE
• CALC_RAPID_MOVE_OD_FIXED_PROBE
• CALC_RAPID_MOVE_OD_FREE_PROBE
• CALC_RAPID_MOVE_FACE_FIXED_PROBE

6
What’s New in UPG-2 for CAMWorks 2021 BETA
• CALC_RAPID_MOVE_FACE_FREE_PROBE
• CALC_RAPID_Z_UP_PROBE_MILL
• CALC_RAPID_UP_BAXIS_PROBE
• CALC_RAPID_X_UP_OD_FIXED_PROBE
• CALC_RAPID_X_UP_OD_FREE_PROBE
• CALC_RAPID_Z_UP_FACE_FIXED_PROBE
• CALC_RAPID_Z_UP_FACE_FREE_PROBE
• CALC_RAPID_Z_DOWN_PROBE_MILL
• CALC_RAPID_DOWN_BAXIS_PROBE
• CALC_RAPID_X_DOWN_OD_FIXED_PROBE
• CALC_RAPID_X_DOWN_OD_FREE_PROBE
• CALC_RAPID_Z_DOWN_FACE_FIXED_PROBE
• CALC_RAPID_Z_DOWN_FACE_FREE_PROBE
• CALC_FEED_Z_PROBE_MILL
• CALC_FEED_DOWN_BAXIS_PROBE
• CALC_FEED_X_OD_FIXED_PROBE
• CALC_FEED_X_OD_FREE_PROBE
• CALC_FEED_Z_FACE_FIXED_PROBE
• CALC_FEED_Z_FACE_FREE_PROBE
• CALC_FEED_Z_PROBE_UP_MILL
• CALC_OUTPUT_PROBE_CYCLE_MILL

5. Adding Probe Template Section in Mill-Turn Post Source


Following new template sections are required SRC (Mill-Turn Post Source files). These will
be available in the latest Mill-Turn tutorial posts.
• RAPID_FROM_TC_BAXIS_PROBE
• RAPID_FROM_TC_OD_FIXED_PROBE
• RAPID_FROM_TC_OD_FREE_PROBE
• RAPID_FROM_TC_FACE_FIXED_PROBE
• RAPID_FROM_TC_FACE_FREE_PROBE
• RAPID_MOVE_BAXIS_PROBE
• RAPID_OD_FIXED_PROBE
• RAPID_OD_FREE_PROBE
• RAPID_FACE_FIXED_PROBE
• RAPID_FACE_FREE_PROBE
• RAPID_UP_BAXIS_PROBE
• RAPID_X_UP_OD_FIXED_PROBE
• RAPID_X_UP_OD_FREE_PROBE
• RAPID_Z_UP_FACE_FIXED_PROBE
• RAPID_Z_UP_FACE_FREE_PROBE
• LAST_RAPID_UP_BAXIS_PROBE
• LAST_RAPID_X_UP_OD_FIXED_PROBE
• LAST_RAPID_X_UP_OD_FREE_PROBE
• LAST_RAPID_Z_UP_FACE_FIXED_PROBE
7
What’s New in UPG-2 for CAMWorks 2021 BETA
• LAST_RAPID_Z_UP_FACE_FREE_PROBE
• FIRST_RAPID_DOWN_BAXIS_PROBE
• FIRST_RAPID_X_DOWN_OD_FIXED_PROBE
• FIRST_RAPID_X_DOWN_OD_FREE_PROBE
• FIRST_RAPID_Z_DOWN_FACE_FIXED_PROBE
• FIRST_RAPID_Z_DOWN_FACE_FREE_PROBE
• RAPID_DOWN_BAXIS_PROBE
• RAPID_X_DOWN_OD_FIXED_PROBE
• RAPID_X_DOWN_OD_FREE_PROBE
• RAPID_Z_DOWN_FACE_FIXED_PROBE
• RAPID_Z_DOWN_FACE_FREE_PROBE
• FEED_DOWN_BAXIS_PROBE
• FEED_X_OD_FIXED_PROBE
• FEED_X_OD_FREE_PROBE
• FEED_Z_FACE_FIXED_PROBE
• FEED_Z_FACE_FREE_PROBE
• FEED_Z_PROBE_UP_BAXIS
• FEED_X_UP_OD_FIXED_PROBE
• FEED_X_UP_OD_FREE_PROBE
• FEED_X_UP_FACE_FIXED_PROBE
• FEED_X_UP_FACE_FREE_PROBE
• LINE_MOVE_PROBE_MILL_BAXIS
• LINE_OD_FIXED_PROBE
• LINE_OD_FREE_PROBE
• LINE_FACE_FIXED_PROBE
• LINE_FACE_FREE_PROBE
• PROBE_SURFACE_X_TOOLPATH
• PROBE_SURFACE_Y_TOOLPATH
• PROBE_SURFACE_Z_TOOLPATH
• PROBE_WEB_X_TOOLPATH
• PROBE_WEB_Y_TOOLPATH
• PROBE_POCKET_X_TOOLPATH
• PROBE_POCKET_Y_TOOLPATH
• PROBE_ISLAND_POCKET_X_TOOLPATH
• PROBE_ISLAND_POCKET_Y_TOOLPATH
• PROBE_BOSS_TOOLPATH
• PROBE_BORE_TOOLPATH
• PROBE_ISLAND_BORE_TOOLPATH
• PROBE_3POINT_BOSS_TOOLPATH
• PROBE_3POINT_BORE_TOOLPATH
• PROBE_3POINT_ISLAND_BORE_TOOLPATH
• DEBUG_PROBE
• OUTPUT_PROBE_ERROR
8
What’s New in UPG-2 for CAMWorks 2020 SP3

What’s New in UPG-2 for CAMWorks 2020 SP3

New - System Constant ‘CAM_REV2020_SP3’


Name Value
CAM_REV2020_SP3 203

New - Parameters added to System Command ‘TRANSFORM’


KIN_ROTAXISBASE_4X
KIN_ROTAXISBASE_4Y
New Parameters KIN_ROTAXISBASE_4Z
from Kinematics
File KIN_ROTAXISBASE_5X
KIN_ROTAXISBASE_5Y
KIN_ROTAXISBASE_5Z
TRANS_ROTAXISBASE_PNT_4X
TRANS_ROTAXISBASE_PNT_4Y
TRANS_ROTAXISBASE_PNT_4Z

TRANS_ROTAXISBASE_PNT_5X
TRANS_ROTAXISBASE_PNT_5Y
TRANS_ROTAXISBASE_PNT_5Z

Example
:C: TRANS_START_X=0
:C: TRANS_START_Y=0
:C: TRANS_START_Z=0
:C: IF KIN_HAVE_KINEMATICS=TRUE THEN
:C: TRANS_ROTAXISDIR_4X=KIN_ROTAXISDIR_4X
:C: TRANS_ROTAXISDIR_4Y=KIN_ROTAXISDIR_4Y
New Parameters
:C: TRANS_ROTAXISDIR_4Z=KIN_ROTAXISDIR_4Z
supported by
Transform :C: TRANS_ROTAXISDIR_5X=KIN_ROTAXISDIR_5X
:C: TRANS_ROTAXISDIR_5Y=KIN_ROTAXISDIR_5Y
:C: TRANS_ROTAXISDIR_5Z=KIN_ROTAXISDIR_5Z
*
:C: TRANS_ROTAXISBASE_PNT_4X=KIN_ROTAXISBASE_4X
:C: TRANS_ROTAXISBASE_PNT_4Y=KIN_ROTAXISBASE_4Y
:C: TRANS_ROTAXISBASE_PNT_4Z=KIN_ROTAXISBASE_4Z
:C: TRANS_ROTAXISBASE_PNT_5X=KIN_ROTAXISBASE_5X
:C: TRANS_ROTAXISBASE_PNT_5Y=KIN_ROTAXISBASE_5Y
:C: TRANS_ROTAXISBASE_PNT_5Z=KIN_ROTAXISBASE_5Z
:C: TRANS_ROTANGLE_A=ROT_TILT_A
:C: TRANS_ROTANGLE_B=ROT_TILT_B
:C: TRANSFORM
:C: ENDIF

9
What’s New in UPG-2 for CAMWorks 2020 SP3
0 * 5 Axis Type 0-TABLE_TABLE,1-HEAD_HEAD,2-HEAD_TABLE, 3-
TABLE_TABLE_TOOLCOMP, 4-HEAD_HEAD_NOTOOLCOMP,
5-HEAD_TABLE_NOTOOLCOMP
1 * XYZ Coordinate Type 0-Part , 1-Machine
0.000000 * Spindle Direction X
0.000000 * Spindle Direction Y
1.000000 * Spindle Direction Z
0.000000 * 1st Rotary Axis Direction X
0.000000 * 1st Rotary Axis Direction Y
-1.000000 * 1st Rotary Axis Direction Z
0.000000 * 2nd Rotary Axis Direction X
-1.000000 * 2nd Rotary Axis Direction Y
KIN File Parameters
0.000000 * 2nd Rotary Axis Direction Z
-60.000000 * Rotation 5th Axis Base Point X (Millimeters Only)
0.000000 * Rotation 5th Axis Base Point Y (Millimeters Only)
-154.2491* Rotation 5th Axis Base Point Z (Millimeters Only)
-100000.000000 * 1st Rotation Axis Limit Min
100000.000000 * 1st Rotation Axis Limit Max
-180.000000 * 2nd Rotation Axis Limit Min
180.000000 * 2nd Rotation Axis Limit Max
Mill_Tutorial * Default Machine Simulation
0.000000 * Rotation 4th Axis Base Point X (Millimeters Only)
0.000000 * Rotation 4th Axis Base Point Y (Millimeters Only)
0.000000 * Rotation 4th Axis Base Point Z (Millimeters Only)

10
What’s New in UPG-2 for CAMWorks 2020 SP2

What’s New in UPG-2 for CAMWorks 2020 SP2

New - Post Variable


6. WRAPPED_AXIS
Type Integer
Stores whether a Mill Wrapped feature is about X or Y axis. Available in Mill
Purpose: mode only.
To be used in CAMWorks 2020 SP2 or higher versions.
Syntax: MACH_IS_4TH_AXIS_REV_DIR=TRUE or FALSE

7. Adding Wrapped Cylindrical to Mill Posts


Purpose: Stores To support Wrapped Cylindrical in Mill Posts.
Information Added or Modified in MILL.LIB:
The following has been added/modified in Mill.lib:
1. Attributes Added
i. Added WHICH_AXIS attribute.
ii. Added CYLINDRICAL attribute.
2. Attributes Modified
Modified DEBUG attribute to handle main cylindrical sections.
3. CALC sections Added.
CALC sections listed below have been added:
• CALC_RAPID_MOVE_MILL_CYLINDRICAL
• CALC_RAPID_FROM_TOOL_CHANGE_MILL_CYLINDRICAL
• CALC_RAPID_TO_TOOL_CHANGE_MILL_CYLINDRICAL
• CALC_RAPID_Z_UP_MILL_CYLINDRICAL
• CALC_RAPID_Z_MOVE_UP_LEN_COMP_MILL_CYLINDRICAL
• CALC_RAPID_Z_DOWN_MACRO_CYLINDRICAL
• CALC_FIRST_RAPID_Z_PRELOAD_DOWN_MILL_CYLINDRICAL
• CALC_FIRST_RAPID_Z_MOVE_DOWN_MILL_CYLINDRICAL
• CALC_FEED_Z_MOVE_DOWN_MILL_CYLINDRICAL
• CALC_LINE_MOVE_MILL_CYLINDRICAL
• CALC_LINE_LEADOUT_MOVE_CYLINDRICAL
• CALC_LINE_LEADIN_MOVE_CYLINDRICAL
• CALC_ARC_MOVE_MILL_CYLINDRICAL
• CALC_BREAK_ARC_CYLINDRICAL
• CALC_RADIAL_ARCS_CYLINDRICAL
• CALC_DO_MACRO_CALL_MILL_WRAPPED
• CALC_DO_MACRO_CALL_WORK_COORD_MILL_WRAPPED
• CALC_CYLINDRICAL

11
What’s New in UPG-2 for CAMWorks 2020 SP2
4. CALC Sections Modified
CALC sections listed below have been modified:
• CALC_RAPID_Z_DOWN_MILL
• CALC_RAPID_Z_UP_MILL
• CALC_RAPID_MOVE_MILL
• CALC_FEED_Z_MILL
• CALC_LINE_MOVE_MILL
• CALC_ARC_MOVE_MILL
• CALC_START_OPERATION
• CALC_DO_MACRO_CALL_MILL
• CALC_DO_MACRO_CALL_WORK_COORD_MILL

Information needed in SRC file for Adding Wrapped Cylindrical to Mill


Posts:
1. Header command required
Header command ":MILL_OD_CYLINDRICAL=TRUE"
2. Line to be added
Added this line in CALC_INIT_CODES ":C: CYLINDRICAL=999"
3. Added below Template Sections.

• RAPID_MOVE_MILL_CYLINDRICAL
• RAPID_LEADOUT_MOVE_MILL_CYLINDRICAL
• RAPID_LEADIN_MOVE_MILL_CYLINDRICAL
• RAPID_FROM_TOOL_CHANGE_MILL_CYLINDRICAL
• RAPID_Z_MOVE_UP_MILL_CYLINDRICAL
• LAST_RAPID_Z_MOVE_UP_MILL_CYLINDRICAL
• FIRST_RAPID_Z_MOVE_DOWN_MILL_CYLINDRICAL
• RAPID_Z_MOVE_DOWN_MILL_CYLINDRICAL
• FEED_Z_MOVE_DOWN_MILL_CYLINDRICAL
• LINE_MOVE_MILL_CYLINDRICAL
• LINE_LEADIN_MOVE_CYLINDRICAL
• LINE_LEADOUT_MOVE_CYLINDRICAL
• ARC_MOVE_MILL_CYLINDRICAL
• RADIUS_MOVE_MILL_CYLINDRICAL
• CYLINDRICAL_ON
• CYLINDRICAL_OFF
• ROTATE_X_CYLINDRICAL
• ROTATE_Y_CYLINDRICAL
• ROTATE_X_WRAPPED
• ROTATE_Y_WRAPPED
• ROTATE_MULTIAXIS

4. Optional template Sections.


Following are the optional template sections:
• RAPID_LEADOUT_TO_TOOL_CHANGE_MILL_CYLINDRICAL
• MACRO_RAPID_CALL_MILL_CYLINDRICAL
12
What’s New in UPG-2 for CAMWorks 2020 SP2
• RAPID_Z_MOVE_UP_LEN_COMP_MILL_CYLINDRICAL
• LAST_RAPID_Z_MOVE_UP_LEN_COMP_MILL_CYLINDRICAL
• FIRST_RAPID_Z_PRELOAD_DOWN_MILL_CYLINDRICAL
• RAPID_Z_MOVE_DOWN_LEN_COMP_MILL_CYLINDRICAL
• FEED_Z_MOVE_DOWN_LEN_COMP_MILL_CYLINDRICAL
• FIRST_FEED_Z_DOWN_MILL_CYLINDRICAL

13
What’s New in UPG-2 for CAMWorks 2020 SP1

What’s New in UPG-2 for CAMWorks 2020 SP1

New - System Variables


1. MACH_IS_4TH_AXIS_REV_DIR
Type Integer
Stores whether the reverse checkbox has been checked in the Rotary tab of
Purpose: the Machine dialog box in the CAMWorks user interface.
To be used in CAMWorks 2020 SP1 or higher versions.
Syntax: MACH_IS_4TH_AXIS_REV_DIR=TRUE or FALSE

2. MACH_IS_5TH_AXIS_REV_DIR
Type Integer
Stores whether the reverse checkbox has been checked in the Tilt tab of the
Purpose: Machine dialog box in the CAMWorks user interface.
To be used in CAMWorks 2020 SP1 or higher versions.
Syntax: MACH_IS_5TH_AXIS_REV_DIR=TRUE or FALSE

14
What’s New in UPG-2 for CAMWorks 2020 SP0

What’s New in UPG-2 for CAMWorks 2020 SP0


New - System Header Commands
1. :ALLOW_PROBING
Type Integer
Sets the post to support probing cycles.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.
Syntax: :ALLOW_PROBING=TRUE or FALSE

New - System Variables for Probing Cycles


1. PROBE_A_1ST_ANGLE
Type Decimal
Stores the Probe Cycle’s 1st rotary angle.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

2. PROBE_B_2ND_ANGLE_OR_TOL
Type Decimal
Stores the Probe Cycle’s 2nd rotary angle or tolerance.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

3. PROBE_C_3RD_ANGLE
Type Decimal
Stores the Probe Cycle’s 3rd rotary angle.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

4. PROBE_D_NOMINAL_SIZE
Type Decimal
Stores the Probe Cycle’s 3rd nominal size.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

5. PROBE_E_EXPERIENCE_VALUE
Type Integer
Stores the Probe Cycle’s experience value.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

15
What’s New in UPG-2 for CAMWorks 2020 SP0
6. PROBE_F_PERCENT_FEEDBACK
Type Decimal
Stores the Probe Cycle’s percentage feedback.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

7. PROBE_H_TOL_VALUE
Type Decimal
Stores the Probe Cycle’s tolerance value.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

8. PROBE_I_CYCLE_SPEC_DIST_X
Type Decimal
Stores the Probe Cycle’s spec distance in X.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

9. PROBE_J_CYCLE_SPEC_DIST_Y
Type Decimal
Stores the Probe Cycle’s spec distance in Y.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

10. PROBE_K_CYCLE_SPEC_DIST_Z
Type Decimal
Stores the Probe Cycle’s spec distance in Z.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

11. PROBE_M_POS_TOL
Type Decimal
Stores the Probe Cycle’s Spec Position Tolerance Z.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

12. PROBE_Q_OVERTRAVEL_DIST
Type Decimal
Stores the Probe Cycle’s Overtravel Distance.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

13. PROBE_R_CLEARANCE
Type Decimal
Stores the Probe Cycle’s Retract Clearance.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

16
What’s New in UPG-2 for CAMWorks 2020 SP0
14. PROBE_T_TOOL_OFFSET_NUMBER
Type Integer
Stores the Probe Cycle’s Tool Offset Number.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

15. PROBE_U_UPPER_TOL_LIMIT
Type Decimal
Stores the Probe Cycle’s Upper Tolerance.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

16. PROBE_V_NULL_BAND
Type Decimal
Stores the Probe Cycle’s Null band.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

17. PROBE_W_PRINT_DATA
Type Integer
Stores the Probe Cycle’s Print Data
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

18. PROBE_X_POS_OR_SIZE_X
Type Decimal
Stores the Probe Cycle’s X position or size.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

19. PROBE_Y_POS_OR_SIZE_Y
Type Decimal
Stores the Probe Cycle’s Y position or size.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

20. PROBE_Z_POS_OR_SIZE_Z
Type Decimal
Stores the Probe Cycle’s Z position or size.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

21. PROBE_CYCLE_FEEDRATE
Type Decimal
Stores the Probe Cycle’s feedrate.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

17
What’s New in UPG-2 for CAMWorks 2020 SP0
22. PROBE_WORK_SUB_OFFSET_NUM
Type Integer
Stores the Probe Cycle’s Work Coordinate with Sub offset number.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

23. PROBE_WORK_OFFSET_NUM
Type Integer
Stores the Probe Cycle’s Work Coordinate Offset number.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

24. PROBE_UPDATE_WCS_OFFSET
Type Integer
Stores a binary value that indicates whether the Work Coordinate Offset for a
Purpose: Probe Cycle has been updated or not.
To be used in CAMWorks 2020 SP0 or later versions.

25. PROBE_FIXTURE_OFFSET_NUM
Type Integer
Stores the Probe Cycle’s Fixture Offset number.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.

26. PROBE_UPDATE_OFFSET_TYPE
Type Integer
Stores the Probe Cycle’s Work Coordinate Offset type.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.
PROBE_UPDATE_OFFSET_TYPE=NONE
Syntax/ FIXTURE
Example: WORK_COORDINATE
WORK_AND_SUB_COORDINATE

27. HAVE_PROBE_CYCLE
Type Integer
For a Probe Cycle, this variable stores a binary value that indicates whether
Purpose: the next move is a Probe Cycle or not.
To be used in CAMWorks 2020 SP0 or later versions.
Syntax: HAVE_PROBE_CYCLE =TRUE or FALSE

18
What’s New in UPG-2 for CAMWorks 2020 SP0
28. PROBE_CYCLE_TYPE
Type Integer
Stores the Probe Cycle’s type.
Purpose:
To be used in CAMWorks 2020 SP0 or later versions.
PROBE_CYCLE_TYPE= SURFACE_X_TOOLPATH
SURFACE_Y_TOOLPATH
SURFACE_Z_TOOLPATH
WEB_X_TOOLPATH
WEB_Y_TOOLPATHPOCKET_X_TOOLPATH
POCKET_X_TOOLPATH
POCKET_Y_TOOLPATH
Syntax/
Example:
POCKET_WITH_ISLAND_X_TOOLPATH
POCKET_WITH_ISLAND_Y_TOOLPATH
BOSS_TOOLPATH
BORE_TOOLPATH
BORE_WITH_ISLAND_TOOLPATH
THREE_POINT_BOSS_TOOLPATH
THREE_POINT_BORE_TOOLPATH
THREE_POINT_BORE_WITH_ISLAND_TOOLPATH

New - System Variables


1. OPR_IS_PRIMARY
Type Integer
For Turn or Mill-Turn posts, this variable stores a binary value indicating
which operation is primary for the purpose of syncing turrets in Simultaneous
Purpose: Turning.
To be used in CAMWorks 2020 SP0 or later versions.
Syntax: OPR_IS_PRIMARY=TRUE or FALSE

2. CL_COMMENT
Type Character
Stores the CL comment. If comment is selected, then the string will be output
Purpose: as a comment to the controller.
To be used in CAMWorks 2020 SP0 or later versions.

3. CL_COMMAND
Type Character
Stores the CL command. If command is selected, then the string will be
Purpose: output as a command to the controller.
To be used in CAMWorks 2020 SP0 or later versions.

4. IS_SUB_SPINDLE_REVERSE_Z
Type Integer
19
What’s New in UPG-2 for CAMWorks 2020 SP0
Stores a binary value (TRUE or FALSE) that indicates if the user has flipped
Purpose: the Z direction on the Sub Spindle coordinate system.
To be used in CAMWorks 2020 SP0 or later versions.
Syntax: IS_SUB_SPINDLE_REVERSE_Z=TRUE or FALSE

5. MACH_NUMBER_AXIS
Type Integer
Stores how many axes the system has been setup for and what was selected
Purpose: in a Multiaxis operation.
To be used in CAMWorks 2020 SP0 or higher versions.
Syntax: MACH_NUMBER_AXIS=3, 4 or 5

6. MACH_ROTARY_4AXIS_TYPE
Type Integer
Stores what 4-Axis type the system has been setup for.
To be used in CAMWorks 2020 SP0 or higher versions.
MACH_ROTARY_4AXIS_TYPE=ROTATE_ABOUT_X
Purpose:
ROTATE_ABOUT_Y
ROTATE_ABOUT_Z
ROTATE_ABOUT_MULTIPLE

7. MACH_ROTARY_VEC_4X
Type Decimal
Stores the 4th axis rotary vector for X.
Purpose:
To be used in CAMWorks 2020 SP0 or higher versions.

8. MACH_ROTARY_VEC_4Y
Type Decimal
Stores the 4th axis rotary vector for Y.
Purpose:
To be used in CAMWorks 2020 SP0 or higher versions.

9. MACH_ROTARY_VEC_4Z
Type Decimal
Stores the 4th axis rotary vector for Z.
Purpose:
To be used in CAMWorks 2020 SP0 or higher versions.

10. MACH_ROTARY_VEC_5X
Type Decimal
Stores the 5th axis tilt vector for X.
Purpose:
To be used in CAMWorks 2020 SP0 or higher versions.

20
What’s New in UPG-2 for CAMWorks 2020 SP0
11. MACH_ROTARY_VEC_5Y
Type Decimal
Stores the 5th axis tilt vector for Y.
Purpose:
To be used in CAMWorks 2020 SP0 or higher versions.

12. MACH_ROTARY_VEC_5Z
Type Decimal
Stores the 5th axis tilt vector for Z.
Purpose:
To be used in CAMWorks 2020 SP0 or higher versions.

New - System Commands


1. GET_SW_CUSTOM_PROP_BY_NAME
Gets SOLIDWORKS Custom properties. If the field is found, the system will
call one of the CALC sections listed below:
• CALC_GET_SW_PROPERTIES
• CALC_GET_SW_SUMMARY_FIELDS
Purpose: • CALC_GET_SW_CUSTOM_FIELDS
• CALC_OUTPUT_SW_PROPERTY
These Calc sections are called with the attribute parameters
QUERY_SW_FIELD_NAME and QUERY_SW_FIELD_VAL.
To be used in CAMWorks 2020 SP0 or later versions.
Syntax: GET_SW_CUSTOM_PROP_BY_NAME({field name}, CALC_?????)
Logic to be used in CALC_START_OF_TAPE
*Outputs SOLIDWORKS Custom and Summary property fields
:C: IF SECTIONEXIST(OUTPUT_SW_PROPERTY) THEN
:C: CALL(CALC_GET_SW_PROPERTIES)
:C: ENDIF
Logic: *_________________________

Logic to be used in *SRC File


:SECTION=OUTPUT_SW_PROPERTY
:T:<N> (<QUERY_SW_FIELD_NAME><QUERY_SW_FIELD_VAL> )<EOL>
*______________________________

21
What’s New in UPG-2 for CAMWorks 2020 SP0

2. GET_SW_SUMMARY_INFO_BY_ID
Gets SOLIDWORKS Custom properties summary information. If the field is
found, the system will call one the CALC sections listed below:
• CALC_GET_SW_PROPERTIES
Purpose: • CALC_GET_SW_SUMMARY_FIELDS
• CALC_GET_SW_CUSTOM_FIELDS
• CALC_OUTPUT_SW_PROPERTY
To be used in CAMWorks 2020 SP0 or later versions.
Syntax: GET_SW_SUMMARY_INFO_BY_ID(SW_FIELD_ID, CALC_?????)
Constants for SW_FIELD_ID
• SW_INFO_TITLE
• SW_INFO_SUBJECT
Constants: • SW_INFO_AUTHOR
• SW_INFO_KEYWORDS
• SW_INFO_COMMENTS
• SW_INFO_SAVED_BY
If a SW_FIELD_ID is found on executing this command, the system will query
Comment: the result and store the filed type in an integer parameter named
QUERY_SW_FIELD_TYPE.

New - CALC Sections for Probe Cycles


• CALC_LINE_MOVE_PROBE_MILL
• CALC_RAPID_MOVE_PROBE_MILL
• CALC_RAPID_Z_UP_PROBE_MILL
• CALC_RAPID_Z_DOWN_PROBE_MILL
• CALC_FEED_Z_PROBE_MILL
• CALC_OUTPUT_PROBE_CYCLE_MILL

New - CALC Sections for Mill


• CALC_OUTPUT_CL_COMMENT
• CALC_OUTPUT_CL_COMMAND

22
What’s New in UPG-2 for CAMWorks 2020 SP0

New - CALC Sections for SOLIDWORKS


1. CALC_GET_SW_PROPERTIES
Purpose: Used when you need to get SOLIDWORKS Properties.
Syntax: :SECTION=CALC_GET_SW_PROPERTIES
Comments: This section will be called only when it is inserted into the post source.
Logic to be used in CALC_GET_SW_PROPERTIES
:SECTION=CALC_GET_SW_PROPERTIES
:C: IF CAMWORKS_VER<CAM_REV2020 THEN RETURN ENDIF
*
:C: CALL(CALC_OUTPUT_SW_HEADER)
:C: CALL(CALC_GET_SW_SUMMARY_FIELDS)
Logic:
*
:C: CALL(CALC_OUTPUT_SW_HEADER)
:C: CALL(CALC_GET_SW_CUSTOM_FIELDS)
*
:C: CALL(CALC_OUTPUT_SW_HEADER)
*______________________________

2. CALC_GET_SW_SUMMARY_FIELDS
Purpose: Used when you need to get various SOLIDWORKS Summary fields.
Syntax: :SECTION=CALC_GET_SW_SUMMARY_FIELDS
Comments: This section will be called only when it is inserted into the post source.
Logic:
Logic to be used in CALC_GET_SW_SUMMARY_FIELDS
:SECTION=CALC_GET_SW_SUMMARY_FIELDS
:C: IF CAMWORKS_VER<CAM_REV2020 THEN RETURN ENDIF
:C: GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_AUTHOR,CALC_OUTPUT_SW_PROPERTY)
:C: GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_KEYWORDS,CALC_OUTPUT_SW_PROPERTY)
:C: GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_COMMENTS,CALC_OUTPUT_SW_PROPERTY)
:C: GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_TITLE,CALC_OUTPUT_SW_PROPERTY)
:C: GET_SW_SUMMARY_INFO_BY_IDD(SW_INFO_SUBJECT,CALC_OUTPUT_SW_PROPERTY)
:C:
GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_CREATION_DATE,CALC_OUTPUT_SW_PROPERTY)
:C:
GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_SAVED_DATE,CALC_OUTPUT_SW_PROPERTY)
:C: GET_SW_SUMMARY_INFO_BY_ID(SW_INFO_SAVED_BY,CALC_OUTPUT_SW_PROPERTY)
*______________________________

23
What’s New in UPG-2 for CAMWorks 2020 SP0

3. CALC_GET_SW_CUSTOM_FIELDS
Purpose: Used when you need to get SOLIDWORKS Custom fields.
Syntax: :SECTION=CALC_GET_SW_CUSTOM_FIELDS
Comments: This section will be called only when it is inserted into the post source.
Logic:
Logic to be used in CALC_GET_SW_CUSTOM_FIELDS
:SECTION=CALC_GET_SW_CUSTOM_FIELDS
:C: IF CAMWORKS_VER<CAM_REV2020 THEN RETURN ENDIF
:C: GET_SW_CUSTOM_PROP_BY_NAME({CAMWorks Machine},CALC_OUTPUT_SW_PROPERTY)
*______________________________

4. CALC_OUTPUT_SW_PROPERTY
Used when you need to output SOLIDWORKS Custom and Summary Property
Purpose:
fields.
Syntax: :SECTION=CALC_OUTUT_SW_PROPERTY
Comments: This section will be called only when it is inserted into the post source.
Logic to be used in CALC_OUTPUT_SW_PROPERTY
:SECTION=CALC_OUTPUT_SW_PROPERTY
:C: IF CAMWORKS_VER<CAM_REV2020 THEN RETURN ENDIF
:C: IF QUERY_SW_FIELD_VAL={} THEN RETURN ENDIF
Logic:
:C: IF SECTIONEXIST(OUTPUT_SW_PROPERTY) THEN
:C: CALL(OUTPUT_SW_PROPERTY)
:C: ENDIF
*______________________________

New - Attribute Commands


1. QUERY_SW_FIELD_NAME
Purpose: Indicates the name of the field within SOLIDWORKS Custom Properties.
:ATTRNAME=QUERY SW FIELD NAME
:ATTRTYPE=POST
:ATTREMARK=
:CODETYPE=FORMAT
:WORD_ADDRESS_BEF=|
:VAR=QUERY_SW_FIELD_NAME
Post :WORD_ADDRESS_AFT=|:
Example: :LEFT_PLACES=0
:RIGHT_PLACES=0
:UNITFLAG=NON_CONVERT
:ATTRSPACES=YES
:MODAL=NO
:ATTRUSED=1
:ATTREND

24
What’s New in UPG-2 for CAMWorks 2020 SP0
2. QUERY_SW_FIELD_VAL
Indicates the character string value in the field within SOLIDWORKS Custom
Purpose:
Properties.
:ATTRNAME=QUERY SW FIELD VAL
:ATTRTYPE=POST
:ATTREMARK=
:CODETYPE=FORMAT
:WORD_ADDRESS_BEF=|
:VAR=QUERY_SW_FIELD_VAL
Post :WORD_ADDRESS_AFT=
Example: :LEFT_PLACES=0
:RIGHT_PLACES=0
:UNITFLAG=NON_CONVERT
:ATTRSPACES=YES
:MODAL=NO
:ATTRUSED=1
:ATTREND

3. QUERY_SW_FIELD_TYPE
If a SW Field ID is found on executing the
GET_SW_SUMMARY_INFO_BY_ID(SW_FIELD_ID,CALC_?????) command,
the system will query the result and store the filed type in an integer
parameter named QUERY_SW_FIELD_TYPE. This attribute parameter
indicates the type of field found.
Purpose:
• If the field type is a SW_NUMBER, the system will store the field integer
value in QUERY_INT_VAL.
• If the field type is a SW_DECIMAL, the system will store the field double
value in QUERY_DEC_VAL.
Constants for the QUERY_SW_FIELD_TYPE:
• SW_UNKNOWN
• SW_NUMBER
Constants: • SW_DOUBLE
• SW_YES_NO
• SW_TEXT
• SW_DATE

New - System Constants


Name Value
SURFACE_X_TOOLPATH 1
SURFACE_Y_TOOLPATH 2
SURFACE_Z_TOOLPATH 3
WEB_X_TOOLPATH 4
WEB_Y_TOOLPATH 5
POCKET_X_TOOLPATH 6
POCKET_Y_TOOLPATH 7
POCKET_WITH_ISLAND_X_TOOLPATH 8

25
What’s New in UPG-2 for CAMWorks 2020 SP0
Name Value
POCKET_WITH_ISLAND_Y_TOOLPATH 9
BOSS_TOOLPATH 10
BORE_TOOLPATH 11
BORE_WITH_ISLAND_TOOLPATH 12
THREE_POINT_BOSS_TOOLPATH 13
THREE_POINT_BORE_TOOLPATH 14
THREE_POINT_BORE_WITH_ISLAND_TOOLPATH 15
FIXTURE 1
UPDATE_WORK_OFFSETS_CYCLE 1
WORK_COORDINATE 2
WORK_AND_SUB_COORDINATE 3
MILL_PROBING 1060
ROTATE_ABOUT_X 1
ROTATE_ABOUT_Y 2
ROTATE_ABOUT_Z 3
ROTATE_ABOUT_MULTIPLE 0

New - System Constants for SOLIDWORKS


Name Value
SW_INFO_TITLE 200
SW_INFO_SUBJECT 1
SW_INFO_AUTHOR 2
SW_INFO_KEYWORDS 3
SW_INFO_COMMENTS 4
SW_INFO_SAVED_BY 5
SW_INFO_CREATION_DATE 6
SW_INFO_SAVED_DATE 7
SW_UNKNOWN 0
SW_NUMBER 3
SW_DOUBLE 5
SW_YES_NO 11
SW_TEXT 30
SW_DATE 64

New - Additional System Constants


Name Value
CAM_REV2020 200

26
What’s New in UPG-2 for CAMWorks 2020 SP0

New - Query Commands


1. QUERY_TOOL_ID_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_TOOL_ID_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.
Comments:
:C: QUERY_ITEM_ID=QUERY_TOOL_ID_COMMENT
:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

2. QUERY_TOOL_VENDOR_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_TOOL_VENDOR_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.
Comments:
:C: QUERY_ITEM_ID=QUERY_TOOL_VENDOR_COMMENT
:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

3. QUERY_TOOL_DESCRIPTION_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_TOOL_DESCRIPTION_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.

Comments: :C: QUERY_ITEM_ID=QUERY_TOOL_DESCRIPTION_COMMENT


:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

27
What’s New in UPG-2 for CAMWorks 2020 SP0

4. QUERY_HOLDER_NUM_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_HOLDER_NUM_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.
Comments:
:C: QUERY_ITEM_ID=QUERY_HOLDER_NUM_COMMENT
:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

5. QUERY_HOLDER_VENDOR_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_HOLDER_VENDOR_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.
Comments:
:C: QUERY_ITEM_ID=QUERY_HOLDER_VENDOR_COMMENT
:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

6. QUERY_HOLDER_DESCRIPTION_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_HOLDER_DESCRIPTION_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.
Comments:
:C: QUERY_ITEM_ID=QUERY_HOLDER_DESCRIPTION_COMMENT
:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

28
What’s New in UPG-2 for CAMWorks 2020 SP0
7. QUERY_STATION_DESCRIPTION_COMMENT
If the return value of QUERY_RESULT is TRUE, then the system will pass a
Purpose: string value to post system variable named QUERY_CHAR_VAL.
To be used in CAMWorks 2020 SP0 or higher versions.

Syntax:
QUERY_ITEM_ID=QUERY_STATION_DESCRIPTION_COMMENT

Associated commands and variables:

The example code below shows the other variables used with this
command.
Comments
:C: QUERY_ITEM_ID=QUERY_STATION_DESCRIPTION_COMMENT
:C: QUERY_SYSTEM()
:C: IF QUERY_RESULT=1 THEN
:C: Char post variable=QUERY_CHAR_VAL
:C: ENDIF

29
What’s New in UPG for CAMWorks 2019 SP2

What’s New in UPG for CAMWorks 2019 SP2


New - System Header Commands
1. :FORCE_UPPERCASE_OUTPUT
Type Integer
Sets the posted output to be all upper case.
Purpose:
To be used in CAMWorks 2019 SP2 or higher versions.
Syntax: :FORCE_UPPERCASE_OUTPUT= TRUE or FALSE

New - Attribute Commands


1. MUST_BE_LOWERCASE
:ATTRNAME=OPR COMMENT
:ATTRTYPE=POST
:ATTREMARK=
:CODETYPE=FORMAT
:WORD_ADDRESS_BEF=|(
:VAR=OPR COMMENT
:WORD_ADDRESS_AFT=)
Post
:LEFT_PLACES=0
Example:
:RIGHT_PLACES=0
:UNITFLAG=NON_CONVERT
:ATTRSPACES=YES
:MODAL=NO
:MUST_BE_LOWERCASE
:ATTRUSED=1
:ATTREND

2. MUST_BE_UPPERCASE
:ATTRNAME=OPR COMMENT
:ATTRTYPE=POST
:ATTREMARK=
:CODETYPE=FORMAT
:WORD_ADDRESS_BEF=|(
:VAR=OPR COMMENT
:WORD_ADDRESS_AFT=)
Post
:LEFT_PLACES=0
Example:
:RIGHT_PLACES=0
:UNITFLAG=NON_CONVERT
:ATTRSPACES=YES
:MODAL=NO
:MUST_BE_UPPERCASE
:ATTRUSED=1
:ATTREND

30
What’s New in UPG for CAMWorks 2019 SP1

What’s New in UPG for CAMWorks 2019 SP1


New - System Header Commands
1. :ALLOW_B_AXIS_SIMULTANEOUS_CUTTING
Allows Simultaneous B Axis movement in Rough and Contour Turn operations.
Purpose: If set to FALSE, this option will not be available in post.
If set to TRUE, this option will be available in post.
Syntax: :ALLOW_B_AXIS_SIMULTANEOUS_CUTTING = TRUE or FALSE
If this header is not in the post SRC file, then this option will not be available.
Comments:
To be used in CAMWorks 2019 and higher versions.

New - Variables
1. OPR_START_APPROACH_TYPE
Type Integer
Stores the Turn operations approach type for canned cycles. To be used in
Purpose:
CAMWorks 2019 SP1 or higher versions.
OPR_START_APPROACH_TYPE=AUTO
Or
Syntax: OPR_START_APPROACH_TYPE=FROM_PREVIOUS_POS
Or
OPR_START_APPROACH_TYPE=FROM_APPROACH_POS

2. OPR_X_APPROACH_POS
Type Decimal
Stores X Approach Position in Turning associated with canned cycles. To be
Purpose:
used in CAMWorks 2019 SP1 or higher versions.

3. OPR_Z_APPROACH_POS
Type Decimal
Stores Z Approach Position in Turning associated with canned cycles. To be
Purpose:
used in CAMWorks 2019 SP1 or higher versions.

4. NEXT_OPR_BAXIS_TURNING
Type Integer
Stores whether the next operation is a simultaneous X,Z, B axis turning
Purpose: operation or not. The value will be TRUE or FALSE. To be used in CAMWorks
2019 SP1 or higher versions.
Syntax: NEXT_OPR_BAXIS_TURNING=TRUE or FALSE

31
What’s New in UPG for CAMWorks 2019 SP1
5. MAX_B_AXIS_INCREMENT
Type Decimal
This needs to be set for breaking up a Turn operation's X, Z and B axis
simultaneous toolpath using the SYS_CANNED(7,????) command when in a
Purpose: line or arc move.
To be used in CAMWorks 2019 SP1 or later versions.
:SECTION=CALC_ARC_MOVE_LATHE
:C: MAX_B_AXIS_INCREMENT=Post Variable
:C: SYS_CANNED(7,CALC_BREAK_ARC_TO_ARC_LATHE)
*:C: SYS_CANNED(7, CALC_BREAK_RADIAL_ARC_TO_ARC_LATHE)
:C: RETURN

:SECTION=CALC_BREAK_ARC_TO_ARC_LATHE
:C: X_POS=ABS_X_END
:C: Z_POS=ABS_Z_END
:C: CALL(ARC_MOVE_LATHE)
*-----------------------------------
:SECTION=CALC_BREAK_RADIAL_ARC_TO_ARC_LATHE
:C: X_POS=ABS_X_END
Example: :C: Z_POS=ABS_Z_END
:C: CALL(RADIUS_MOVE_LATHE)

Lines can also be broken as follows:

:SECTION=CALC_LINE_MOVE_LATHE
:C: MAX_B_AXIS_INCREMENT=1.
:C: SYS_CANNED(7,CALC_BREAK_LINE_LATHE)
:C: RETURN

:SECTION= CALC_BREAK_LINE_LATHE
:C: X_POS=ABS_X_END
:C: Z_POS=ABS_Z_END
:C: CALL(LINE_MOVE_LATHE)

6. NUM_OPERATIONS_FRONT1
Type Integer
Stores the total number of operations in any part that are associated with
Purpose: FRONT1 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

32
What’s New in UPG for CAMWorks 2019 SP1

7. NUM_OPERATIONS_FRONT2
Type Integer
Stores the total number of operations in any part that are associated with
Purpose: FRONT2 Turret.
To be used in CAMWorks 2019 SP1 or higher versions.

8. NUM_OPERATIONS_Rear1
Type Integer
Stores the total number of operations in any part that are associated with
Purpose: REAR1 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

9. NUM_OPERATIONS_Rear2
Type Integer
Stores the total number of operations in any part that are associated with
Purpose: REAR2 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

10. NUM_SYNC_CODES_REAR1
Type Integer
Stores the total number of sync codes in any part that are associated with
Purpose: REAR1 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

11. NUM_SYNC_CODES_REAR2
Type Integer
Stores the total number of sync codes in any part that are associated with
Purpose: REAR2 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

12. NUM_SYNC_CODES_FRONT1
Type Integer
Stores the total number of sync codes in any part that are associated with
Purpose: FRONT1 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

33
What’s New in UPG for CAMWorks 2019 SP1

13. NUM_SYNC_CODES_FRONT2
Type Integer
Stores the total number of sync codes in any part that are associated with
Purpose: FRONT2 turret.
To be used in CAMWorks 2019 SP1 or higher versions.

14. OPR_BAXIS_TURNING
Type Integer
Stores whether the operation is a simultaneous X,Z, B axis turning operation
Purpose: or not. The value will be TRUE or FALSE. To be used in CAMWorks 2019 SP1
or higher versions.
Syntax: OPR_BAXIS_TURNING=TRUE or FALSE

15. OPR_TOOL_TIP_CENTER
Type Integer
Stores whether the user has selected Tool Nose Center or Tool Nose tip for a
Purpose: Turn operation.
To be used in CAMWorks 2019 SP1 and later versions.

16. TLP_B_AXIS_OFFSET / P_TLP_B_AXIS_OFFSET


Type Decimal
Stores the current and previous incremental B axis rotation of a Turn
Purpose: operation that uses simultaneous X,Z and B axis toolpath.
To be used in CAMWorks 2019 SP1 or higher versions.

34
What’s New in UPG for CAMWorks 2019 SP1

New - Query Commands


1. QUERY_INT_CENTER_TOUCHOFF_REG
This command will query whether the user has selected tool nose center or
tool nose tip in a turn operation. This is used in conjunction with IMS
Purpose: Simulator. Available in Turn and Mill-Turn.
Supported in CAMWorks 2019 SP1 and later versions. Not supported in any
ProCAM product.
Syntax: QUERY_ITEM_ID=QUERY_INT_CENTER_TOUCHOFF_REG
Comments: The example code below shows the other variables used with this command.

Logic to be used in SECTION=CALC_QUERY_POST


:C: IF OPR_TOOL_TIP_CENTER=1 THEN
:C: IF HAVE_SUB_STATIONS=FALSE THEN
:C: IF QUERY_ITEM_ID =
QUERY_INT_CENTER_TOUCHOFF_REG THEN
:C: IF SECTIONEXIST(QUERY_TOUCHOFF_CENTER)
THEN
:C: CALL(QUERY_TOUCHOFF_CENTER)
:C: ELSE
:C: QUERY_INT_VAL=(TOOL+1)
:C: ENDIF
:C: ENDIF
Logic:
:C: ELSE
:C: IF QUERY_ITEM_ID =
QUERY_INT_CENTER_TOUCHOFF_REG THEN
:C: IF
SECTIONEXIST(QUERY_TOUCHOFF_CENTER_SUB_STATIONS) THEN
:C: CALL(QUERY_TOUCHOFF_CENTER_SUB_STATIONS)
:C: ELSE
:C: QUERY_INT_VAL=((SUB_STATION*10)+2)
:C: ENDIF
:C: ENDIF
:C: ENDIF
:C: ENDIF

New - System Constants


Name Value
FROM_PREVIOUS_POS 1
FROM_APPROACH_POS 2
CAM_REV2019_SP2

35

You might also like