Clarification of Changes in SmartCAM v10.0 Turning Applications
Technote 166
Date: 07/97
Product: Advanced and Production Turning
Version: v10.x
Problem:
Toolpath and macros in SmartCAM v10.0 turning applications do not behave the same as v9.2 or earlier versions.
Details:
There are several changes for the v10.0 release of turning products. The new functions are partially described
in the v10.0 release notes and in the v10.0 SmartCAM Turning Supplement available as an on-line document
installed with a new turning application. These include:
This Technote is intended to be a supplement to the aforementioned literature.
Roughing Routines
Version 10.0 includes new roughing routines that generate gouge-free tool nose center toolpath. All turning
toolpath is now shown on the screen as tool nose center toolpath. There is no way to change the appearance
of this in the SmartCAM application. However, by setting question 120 in your .smf
file
appropriately, you can still code part profile, tool center, or tool edge. The new method of generating
roughing passes is much more robust than the previous method, plus it enables the support of bi-directional
tools in a gouge-free algorithm. You can still create toolpath geometry using the old way of inserting with
a step and creating profiles with a desired offset, if you are more comfortable using this method.
Note that tool nose center toolpath will then be generated "on-the-fly" by show path using the
offset specified, and may not be gouge-free (see "Use Edge Data" switch
section below).
Macro Commands
With the new turning routines, there are new macro commands that use some new variables in their definitions.
Some variables are retained, and all variables for the new commands are required inputs as noted below. A
listing of the original commands and their new versions follows.
Note: These and all other macro commands are documented in your SmartCAM Customization Guide.
For information and tutorials on programming SmartCAM macros review the Automating SmartCAM sections of both
the Customization Guide and Learning SmartCAM. Both are available from within your application by selecting
Help - Online Manuals.
Contour Roughing has gone from:
CONTOUR[ES=##, EE=##, ZS=##, XS=##, EM=##, ZF=##, XF=##,
DP=##, CL=##, NP=##]
where
ES = Finish profile start (required)
EE = Finish profile end (required)
ZS = Z start (required)
XS = X start (required)
EM = Material element (required)
ZF = Z finish amount (required)
XF = X finish amount (required)
DP = Pass depth (required)
CL = Clear (required)
NP = Number of passes
to
TCONTOUR[PS=##, PE=##, MM=##, MS=##, ME=##, ZS=##, XS=##, DP=##,
NP=##, LA=##, TA=##, XF=##, ZF=##, CD=##, LD=##, BP=##, TP=##, LY=##]
where
PS = Element number of profile starting element (required)
PE = Element number of profile ending element (required)
MM = Material closure method (required) - options are:
(0) material profile, (1) material point, (2) part profile
MS = Element number of material profile starting element
(required for MM = 0)
ME = Element number of material profile ending element
(required for MM = 0)
ZS = Z ordinate of implicit material profile
(required for MM = 1)
XS = X ordinate of implicit material profile
(required for MM = 1)
DP = Pass depth (required)
NP = Number of passes (required for MM = 2)
LA = Effective leading edge angle (required)
TA = Effective trailing edge angle (required)
XF = X finish amount (required)
ZF = Z finish amount (required)
CD = Clearance distance (required)
LD = Lead distance (required)
BP = Bidirectional passes switch (required) -
options are (0) off, (1) on
TP = Create theoretical part profile switch (required) -
options are (0) off, (1) on
LY = Theoretical part profile layer (required) -
value can be any layer from 1 to 99
Groove Roughing has gone from:
GROOVE_RGH[ES=##, EE=##, ZS=##, XS=#, EM=##, ZF=##,
XF=##, DW=##, CL=##, CP=##]
where
ES = Finish profile start (required)
EE = Finish profile end (required)
ZS = Z start (required)
XS = X start (required)
EM = Material element (required)
ZF = Z finish amount (required)
XF = X finish amount (required)
DW = Pass width (required)
CL = Clear (required)
CP = Cleanup pass switch (required) -
options are (0) off, (1) on
to
TGROOVE[PS=##, PE=##, MM=##, MS=##, ME=##, ZS=##,
XS=##, DP=##, PM=##, RM=##, PD=##, LA=##, TA=##, XF=##,
ZF=##, CD=##, LD=##, BP=##, TP=##, LY=##]
where
PS = Element number of profile starting element (required)
PE = Element number of profile ending element (required)
MM = Material closure method (required) - options are
(0) material profile, (1) material point, (2) part profile
MS = Element number of material profile starting element
(required for MM = 0)
ME = Element number of material profile ending element
(required for MM = 0)
ZS = Z ordinate of implicit material profile
(required for MM = 1)
XS = X ordinate of implicit material profile
(required for MM = 1)
DP = Stepover distance - pass width (required)
PM = Pecking method (required) -
options are (0) default, (1) depth first, (2) width first
RM = Retract method (required) -
options are (0) full retract, (1) partial retract
PD = Pecking depth (required)
LA = Effective leading edge angle (required)
TA = Effective trailing edge angle (required)
XF = X finish amount (required)
ZF = Z finish amount (required)
CD = Clearance distance (required)
LD = Lead distance (required)
BP = Bidirectional passes switch (required) -
options are (0) off, (1) on
TP = Create theoretical part profile switch (required) -
options are (0) off, (1) on
LY = Theoretical part profile layer (required) -
value can be any layer from 1 to 99
Linear Roughing has gone from:
LINEAR_RGH[TY=##, ES=##, EE=##, ZS=##, XS=##, EM=##, ZF=##,
XF=##, DP=##, CL=##, AN=##, AP=##, CP=##, OP=##]
where
TY = Type of operation - options are (0) turning, (1) facing
ES = Finish profile start (required)
EE = Finish profile end (required)
ZS = Z start (required)
XS = X start (required)
EM = Material element (required)
ZF = Z finish amount (required)
XF = X finish amount (required)
DP = Pass depth (required)
CL = Clear (required)
AN = Pass angle (required)
AP = Plunge angle (required)
CP = Cleanup pass switch - options are (0) off, (1) on
OP = Overlap passes switch - options are (0) off, (1) on
to
TLINEAR[PS=##, PE=##, MM=##, MS=##, ME=##, ZS=##, XS=##,
DP=##, AN=##, FC=##, LA=##, TA=##, XF=##, ZF=##, CD=##, LD=##, BD=##,
BP=##, OP=##, TP=##, LY=##]
where
PS = Element number of profile starting element (required)
PE = Element number of profile ending element (required)
MM = Material closure method (required) - options are
(0) material profile, (1) material point, (2) part profile
MS = Element number of material profile starting element
(required for MM = 0)
ME = Element number of material profile ending element
(required for MM = 0)
ZS = Z ordinate of implicit material profile (required for MM = 1)
XS = X ordinate of implicit material profile (required for MM = 1)
DP = Pass depth (required)
AN = Pass angle (required)
FC = Facing flag (required) - options are (0) off, (1) on
LA = Effective leading edge angle (required)
TA = Effective trailing edge angle (required)
XF = X finish amount (required)
ZF = Z finish amount (required)
CD = Clearance distance (required)
LD = Lead distance (required)
BD = Back-off distance (required)
BP = Bidirectional passes switch (required) -
options are (0) off, (1) on
OP = Overlap passes switch - options are (0) off, (1) on
TP = Create theoretical part profile switch (required) -
options are (0) off, (1) on
LY = Theoretical part profile layer (required) -
value can be any layer from 1 to 99
Profiling is a new function in v10.0 that can be used for roughing, semi-finishing, and
finishing, and is accessed in the Process - Turn Rough toolbox. Its macro command syntax is:
TPROFILE[PS=##, PE=##, CC=##, LA=##, TA=##, XF=##, ZF=##,
CD=##, LD=##, BD=##, BP=##, TP=##, LY=##]
where
PS = Element number of profile starting element (required)
PE = Element number of profile ending element (required)
CC = Compensation codes switch (required) -
options are (0) off, (1) on
LA = Effective leading edge angle (required)
TA = Effective trailing edge angle (required)
XF = X finish amount (required)
ZF = Z finish amount (required)
CD = Clearance distance (required)
LD = Lead distance (required)
BD = Back-off distance (required)
BP = Bidirectional passes switch (required) -
options are (0) off, (1) on
TP = Create theoretical part profile switch (required) -
options are (0) off, (1) on
LY = Theoretical part profile layer (required) -
value can be any layer from 1 to 99
As stated in the SmartCAM Customization Manual for each of these commands, an effort has been made to make the
former command forward compatible with the newer command, but exact mapping can't be guaranteed. If you have
turning macros that use these commands which are not working in v10.0 turning applications, please edit your
macros to update the roughing routines. Also, please see the on-line Customization Manual for more descriptions
of these commands and their usage. The best way to see how these new commands work is to build a simple part
and record a macro of each operation and the options you use. This way, all the required variables for the
command will be automatically filled in by SmartCAM, and you can then adjust them for use in your macro.
Cutter Compensation
There was also a change in the way cutter compensation is handled by v10.0. For SmartCAM v9.x and earlier,
cutter compensation was tied to the offset property of the profile or element. The only way to have the system
automatically generate compensation codes was by having SmartCAM do "on-the-fly" offset, like that
created during code or show path for an element assigned to a step having right offset (for example). The
toolpath would not be shown or compensated until the actual moment the element was encountered by the system,
at which time the correct offset would be applied and the toolpath generated automatically.
Version 10.0 allows you to insert user commands to apply and cancel cutter compensation to no-offset (tool
nose center) toolpath. In the process model, this is shown by user commands "attached" to the start
and end of the profile where they are applied. The profile will not have an offset property of its own.
The cutter compensation user command text is:
- @CMPR - compensation right
- @CMPL - compensation left
- @CMPX - compensation off
These commands are enabled by turning on the "Comp Codes" switch in the Process - Turn
Rough - Profile control panel. Generating toolpath with this switch on will create an @CMP[LR]
command appropriate for the profile offset at the start of the selected profile. In show path and code, the
@CMP[LR]
commands behave as state change indicators. When one of these is encountered in the
toolpath element sequence, the cutter compensation direction will change at that point. The compensation off
(@CMPX
) command will automatically be generated at the end of each profile. Therefore, the
compensation direction must be established for each toolpath - this is not modal across all toolpaths in the
model.
Show path will treat this new compensated tool nose center toolpath just like the existing no-offset profile,
meaning that no visual feedback will be given that compensation has been applied to the toolpath. Code should
be fine for most existing code generators without any modifications. The compensation direction will be available
in the @STPROF
move when an @CMP[LR]
command is the first element in the toolpath.
These functions also carry over into the template file. Since the commands are @ section references, code will
look for and process matching @ sections in the .tmp
file if they exist. The @CMP[LRX]
commands will behave like standard @ section user commands in addition to indicating cutter compensation direction,
meaning you can use these within the model file to call an @ section by that name when this user command
is encountered. Any special machine codes, etc needed for that compensation operation can then be placed in that
@ section for use in the code output.
The @CMP[LRX]
commands will be considered part of the toolpath when they are attached to the
beginning or end of the toolpath. So, when they are attached to the beginning or the end and a profile pick
operation is performed on an element in the toolpath, they will be selected along with the other elements as
part of the active group. Traditional user commands do not have this property. Some items to note about the
limitations of this function:
- Attaching
@CMP[LRX]
commands to an offset profile is not supported by the system
- A compensation direction switch (from
@CMPL
to @CMPR
, for example) within a
profile is unrealistic and not any further defined than with existing offset profiles, so this is an
undefined and unsupported situation.
- Auto lead-in will not be applied to compensated toolpath.
Removal of "Use Edge Data" Switch
Version 9.2 turning applications featured a "Use Edge Data" switch on the Operation page of the Edit
Process Step window. This switch toggled the use of specified leading and trailing edge clearance angle information
on or off. Now, this function is inherently "on." The switch was removed because of the new
Process - Turn Rough functions that can use layer geometry to create tool nose center toolpath that
will always use the specified clearance angles. The clearance angles entered in the planner for the tool will
automatically backfill into the appropriate field in the Auxiliary Parameters window. The Auxiliary Parameters
window is a new feature for v10.0 that allows the user to set common attributes for turning operations and use
them in all toolpath generation procedures. If the user changes the Effective Edge Angles in the Aux Params window,
they are kept in the Aux Params window and adjusted for all subsequent toolpaths created, while retaining the
original data in the planner Operation page.
The previous version of turning applications used the switch to turn on the clearance angle data for toolpath created
in the old way: inserting with a step to create the profile geometry with the desired offset. When this switch was
on, toolpath created in this way would be gouge-protected since the system would look at the tool edge angle and
clearance information to avoid diving into the part with the leading or trailing edge of the tool. In v10.0, the
switch is gone, and toolpath created by this older method will not be gouge-protected. The system simply drives the
tool along the specified step profile (using the element offset property, if it has any) with no regard for possible
gouging.
It may seem that some functionality has been removed going from v9.2 to v10.0, but it is actually just in another
place. Now, in order to get single-pass, gouge-free toolpath along a profile, you can simply draw the profile as
layer geometry and use the Process - Turn Rough - Profile function to create the toolpath directly from
it. Note that this same profile layer geometry can be used to create first the roughing passes and then the
semi-finish/finish passes for the part, all of it gouge-free and from within the same toolbox of functions. Any
leading edge angle and trailing edge angle clearance values entered in the planner or the Auxiliary Parameters window
will always be used when toolpath is created using the new routines.