User Tools

Site Tools


mp:lathe_matrix

This is an old revision of the document!


Lathe Config Matrix

Any supplementary info on this post section goes here
The toggles in this section should be used first instead of changing any string selectors for output in the post. Ex: don't ever change the following section in a lathe post, as these controls are in the sections below:

# Select work plane G code
sg17    : "G17"      #XY plane code
sg19    : "G19"      #YZ plane code
sg18    : "G18"      #XZ plane code
sgplane : ""            #Target string

fstrsel sg17 plane$ sgplane 3 -1

As these settings are specific to spindle/turret/toolpath type changing here prevents a change affecting unwanted toolpath types and spindles. Note, all changes are made in the final sections, the initial sections are just descriptions and notes.

#region Turret and Spindle Settings Arc / Comp / Plane / Spindle direction

#Machining position turret/spindle settings
# Switch strings based on turret position top/bottom-left/right and cut type.
# Turret position is based on the Mastercam settings (see lathtype).

lathetype determines which axis combo section is used below, based on the axis combos of the machine def. Don't worry about the numbering, as the turret/spindle labels are accurate in the matrix section.

lathtype    : 0     #Lathe turret and spindle selection
                    #0 = Bottom turret/Left spindle
                    #1 = Top turret/Left spindle
                    #2 = Bottom turret/Right spindle
                    #3 = Top turret/Right spindle

The below sections dictate the changes you can make and the setting values are provided. 0,1,2 are the only acceptable toggles in the matrix section.

# Strings are re-assigned for output in the routine psw_str_mult.
# The string variable sw_string holds the place position value to determine
# how to assign the strings.  Planes are relative to the view from Mastercam.
# Assign the 17 digit string following the alpha columns below:
# A - Unassigned. c_axistype set in machine def
# B - Spindle direction, 0 = normal, 1 = reverse

The below section dictates the G2/G3 and G41/G42 directions on each plane. These are linked so they change together when toggled. It is not typical for G2/G3 and G41/G42 to be unlinked in direction. Switching C/D/E for any toolpath type switches the compensation for that toolpath type. ex: setting to 1 for “Right Face cut” will flip the G2/G3 and G41/G42 directions for only “Right Face cut” toolpaths.

# C - Plane 0 arc/comp, 0 = normal, 1 = switch
# D - Plane 1 arc/comp, 0 = normal, 1 = switch
# E - Plane 2 arc/comp, 0 = normal, 1 = switch

The below section changes the plane selections associated with each mastercam plane. The convention here follows mastercam standard milling plane$:

Plane 0 - the XY plane of the current toolplane in milling paths, or the basic profile turning plane of turning toolpaths. Set to G17/G18/G19 by toggle.
Face milling - typically G17 XY plane
Cross milling - typically G19 YZ plane
Turning - typically G18 XZ plane

Plane 1 - the YZ plane of the current toolplane in milling paths. Normally NA for turning paths. Set to G17/G18/G19 by toggle.
Face milling - typically G19 YZ plane
Cross milling - typically G17 XY plane
Turning - normally not allowed to be anything but G18, so is forced to G18 XZ plane

Plane 2 - the XZ plane of the current toolplane in milling paths. Normally NA for turning paths. Set to G17/G18/G19 by toggle.
Face milling - typically G18 XZ plane
Cross milling - typically G18 XZ plane
Turning - normally not allowed to be anything but G18, so is forced to G18 XZ plane

# F - Plane 0, 0 = G17, 1 = G19, 2 = G18
# G - Plane 1, 0 = G17, 1 = G19, 2 = G18
# H - Plane 2, 0 = G17, 1 = G19, 2 = G18

The following section is to flip axis directions/signs for XYZ. For some reason CNC split into planes, plane 0/1/2. I can't see a reason for this and generally I/L/O for the X axis for example should all be switched in the same manner if changed. (I/L/O) (J/M/P) (K/N/Q) should all be set the same as groupings to keep the axes consistent. Perhaps this format can allow for special cases, where an axis flips on a certain type of cut, but we have not run into this.

# Decimal (required)
# I - Plane 0, X axis, 0 = normal, 1 = switch sign from basic
# J - Plane 0, Y axis, 0 = normal, 1 = switch sign from basic
# K - Plane 0, Z axis, 0 = normal, 1 = switch sign from basic
# L - Plane 1, X axis, 0 = normal, 1 = switch sign from basic
# M - Plane 1, Y axis, 0 = normal, 1 = switch sign from basic
# N - Plane 1, Z axis, 0 = normal, 1 = switch sign from basic
# O - Plane 2, X axis, 0 = normal, 1 = switch sign from basic
# P - Plane 2, Y axis, 0 = normal, 1 = switch sign from basic
# Q - Plane 2, Z axis, 0 = normal, 1 = switch sign from basic

The below section is only in CQ posts. Allows rad/diameter per axis to be controlled by turret, spindle and type of cut. Note as well the dia_mult_interp override setting for “R - X-axis” that can affect Face/Cross interpolation G112/G107 type cycles only. If dia_mult_interp is set to 2 the table values for “R - X-axis” are not changed during G112/G107 type cycles.

# R - X axis, 0 = radius, 1 = Diameter  (dia_mult) - MU-0042
# S - Y axis, 0 = radius, 1 = Diameter  (y_mult)   - MU-0042
# T - Z axis, 0 = radius, 1 = Diameter  (z_mult)   - MU-0042

dia_mult_interp : 2 #X axis face interp, 0 = radius
                    #MU-0055             1 = diameter
                    #                    2 = not unique, set in table below

use_only_tl writes the 1st matrix section settings identically to every turret/spindle section

use_only_tl : 0     #Use only Top turret/Left spindle settings (below) for
                    #all Mastercam turret/spindle selections
                    #When configuring for multi-spindle/turret set to 0

All settings are changed below based on above descriptions. The standard settings are listed below. Note the 4 sections conform to lathtype as described above and to the four main axis combos in lathe machine definitions.

#Columns-       ABCDEFGH.IJKLMNOPQRST   #Turret/Spindle            #Path Type   - MU-0042
scase_tl_c1  : "10000222.000000000100"  #Top turret/Left spindle, Turning cut
scase_tl_c2  : "10000012.000000000100"  #Top turret/Left spindle, Right Face cut
scase_tl_c_2 : "10110012.000000000100"  #Top turret/Left spindle, Left Face cut
scase_tl_c3  : "10010102.000000000100"  #Top turret/Left spindle, Cross cut (cuttype = 3)
scase_tl_c3r : "10001102.000000000100"  #Top turret/Left spindle, Reverse Cross cut (cuttype = -3)
scase_tl_c4c : "10111111.000000000100"  #Top turret/Left spindle, Y axis subs. G07.1 (G107) Cycle    #08/13/2015-fix arcs/planes in axis subs - MU-0032, rjj
scase_tl_c4  : "10111111.000000000100"  #Top turret/Left spindle, Y axis subs.                       #08/13/2015-fix arcs/planes in axis subs - MU-0032, rjj
scase_tl_c5  : "10000102.000000000100"  #Top turret/Left spindle, Multisurf Rotary

#Columns-       ABCDEFGH.IJKLMNOPQRST
scase_bl_c1  : "10000222.000000000100"  #Bottom turret/Left spindle, Turning cut
scase_bl_c2  : "10000012.000000000100"  #Bottom turret/Left spindle, Right Face cut
scase_bl_c_2 : "10110012.000000000100"  #Bottom turret/Left spindle, Left Face cut
scase_bl_c3  : "10010102.000000000100"  #Bottom turret/Left spindle, Cross cut (cuttype = 3)
scase_bl_c3r : "10010102.000000000100"  #Bottom turret/Left spindle, Reverse Cross cut (cuttype = -3)
scase_bl_c4c : "10000111.000000000100"  #Bottom turret/Left spindle, Y axis subs. Cycle
scase_bl_c4  : "10000111.000000000100"  #Bottom turret/Left spindle, Y axis subs.
scase_bl_c5  : "10000102.000000000100"  #Bottom turret/Left spindle, Multisurf Rotary

#Columns-       ABCDEFGH.IJKLMNOPQRST
scase_tr_c1  : "10000222.000000000100"  #Top turret/Right spindle, Turning cut
scase_tr_c2  : "10000012.000000000100"  #Top turret/Right spindle, Right Face cut
scase_tr_c_2 : "10110012.000000000100"  #Top turret/Right spindle, Left Face cut
scase_tr_c3  : "10010102.000000000100"  #Top turret/Right spindle, Cross cut (cuttype = 3)
scase_tr_c3r : "10001102.000000000100"  #Top turret/Right spindle, Reverse Cross cut (cuttype = -3)
scase_tr_c4c : "10000111.000000000100"  #Top turret/Right spindle, Y axis subs. Cycle
scase_tr_c4  : "10000111.000000000100"  #Top turret/Right spindle, Y axis subs.
scase_tr_c5  : "10000102.000000000100"  #Top turret/Right spindle, Multisurf Rotary

#Columns-       ABCDEFGH.IJKLMNOPQRST
scase_br_c1  : "10000222.000000000100"  #Bottom turret/Right spindle, Turning cut
scase_br_c2  : "10000012.000000000100"  #Bottom turret/Right spindle, Right Face cut
scase_br_c_2 : "10110012.000000000100"  #Bottom turret/Right spindle, Left Face cut
scase_br_c3  : "10010102.000000000100"  #Bottom turret/Right spindle, Cross cut (cuttype = 3)
scase_br_c3r : "10010102.000000000100"  #Bottom turret/Right spindle, Reverse Cross cut (cuttype = -3)
scase_br_c4c : "10000111.000000000100"  #Bottom turret/Right spindle, Y axis subs. Cycle
scase_br_c4  : "10000111.000000000100"  #Bottom turret/Right spindle, Y axis subs.
scase_br_c5  : "10000102.000000000100"  #Bottom turret/Right spindle, Multisurf Rotary


#endregion
mp/lathe_matrix.1634661267.txt.gz · Last modified: 2021/10/19 16:34 by russell