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: new
roughing routines, new macro commands, cutter
compensation changes, and removal of the "Use Edge
Data" switch. 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:
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.