搜档网
当前位置:搜档网 › mastercam9.1四轴半四轴定面加工后处理

mastercam9.1四轴半四轴定面加工后处理

mastercam9.1四轴半四轴定面加工后处理
mastercam9.1四轴半四轴定面加工后处理

# Post Name : MPFAN

# Product : MILL

# Machine Name : GENERIC FANUC

# Control Name : GENERIC FANUC

# Description : GENERIC FANUC MILL POST

# 4-axis/Axis subs. : YES

# 5-axis : NO

# Subprograms : YES

# Executable : MP

#

# WARNING: THIS POST IS GENERIC AND IS INTENDED FOR MODIFICATION TO

# THE MACHINE TOOL REQUIREMENTS AND PERSONAL PREFERENCE.

#

# --------------------------------------------------------------------------# Revision log:

# --------------------------------------------------------------------------# Programmers Note:

# CNC 01/12/01 - Initial post update for

# CNC 07/02/01 - Add cantext to cancel drill and tool retract

# CNC 01/09/02 - Initial post update for

# CNC 01/31/02 - Set usecandrill, usecanpeck, force_wcs to YES

# CNC 02/22/02 - Forces output of I,J,K arc centers (arcoutput:0)

# CNC 04/12/02 - Use original position for inverse feed and 4 ax paths # CNC 05/01/02 - Set "helix_arc:2", support helix arc output in XY plane # CNC 05/07/02 - Do not update sav_rev with axis substitution

# CNC 11/06/02 - Altered 'F'eedrate output format when tapping (G74/G84) # CNC 01/06/03 - moved feed assignment below pcom_moveb to address bug

w/feed in 4 axis

# CNC 01/17/03 - Added flags to allow reversal of axis orientations

# CNC 02/04/03 - Initial post update for

#

# --------------------------------------------------------------------------# Features:

# --------------------------------------------------------------------------# This post supports Generic Fanuc code output for 3 and 4 axis milling.

# It is designed to support the features of Mastercam Mill V9.

#

# Following Misc. Integers are used:

#

# mi1 - Work coordinate system

# 0 = Reference return is generated and G92 with the

# X, Y and Z home positions at file head.

# 1 = Reference return is generated and G92 with the

# X, Y and Z home positions at each tool.

# 2 = WCS of G54, G55.... based on Mastercam settings.

#

# mi2 - Absolute or Incremental positioning at top level

# 0 = absolute

# 1 = incremental

#

# mi3 - Select G28 or G30 reference point return.

# 0 = G28, 1 = G30

#

#Canned text:

# Entering cantext on a contour point from within Mastercam allows the # following functions to enable/disable.

# Cantext value:

# 1 = Stop = output the "M00" stop code

# 2 = Ostop = output the "M01" optional stop code

# 3 = Bld on = turn on block delete codes in NC lines

# 4 = bLd off = turn off block delete codes in NC lines

#

#Milling toolpaths (4 axis)

#Layout:

# The term "Reference View" refers to the coordinate system associated

# with the Top view (Alt-F9, the upper gnomon of the three displayed).

# Create the part drawing with the axis of rotation about the axis

# of the "Reference View" according to the setting you entered for

# 'vmc' (vertical or horizontal) and 'rot_on_x' (machine relative

# axis of rotation).

# vmc = 1 (vertical machine) uses the top toolplane as the base machine

# view.

# vmc = 0 (horizontal machine) uses the front toolplane as the base machine # view.

# Relative to the machine matrix -

# Rotation zero position is on the Z axis for rotation on X axis.

# Rotation zero position is on the Z axis for rotation on Y axis.

# Rotation zero position is on the X axis for rotation on Z axis.

# The machine view rotated about the selected axis as a "single axis

# rotation" are the only legal views for 4 axis milling. Rotation

# direction around the part is positive in the CCW direction when

# viewed from the plus direction of the rotating axis. Set the variable

# 'rot_ccw_pos' to indicate the signed direction. Always set the work

# origin at the center of rotation.

#

#Toolplane Positioning:

# Create the Cplane and Tplane as the rotation of the machine view about

# the selected axis of rotation. The toolplane is used to calculate

# the position of the rotary axis. This is the default setting.

#

#3 Axis Rotary (Polar)

# Polar positioning is offered in Mastercam 3 axis toolpaths through the

# rotary axis options dialog. The selected toolpath is converted to angle # and radius position. The axis of rotation is forced to zero.

#

#Axis substitution:

# Use the Rotary axis substitution by drawing the geometry flattened

# from the cylinder. The rotary axis button must be active for axis

# substitution information to be output to the NCI file. The radius of

# the rotary diameter is added to all the Z positions at output.

#

#Simultaneous 4 Axis (11 gcode):

# Full 4 axis toolpaths can be generated from various toolpaths under the

# 'multi-axis' selection . Rotary 4 axis). All 5 axis paths are

# converted to 4 axis paths where only the angle about the rotation axis

# is resolved.

#

#Drill:

# All drill methods are supported in the post. See Simultaneous 4 Axis.

#

#Additional Notes:

# 1) Disable 4 axis by setting the numbered question 164. to 'n'.

# 2) G54 calls are generated where the work offset entry of 0 = G54,

# 1 = G55, etc.

# 3) Metric is applied from the NCI met_tool variable.

# 4) Incremental mode calculates motion from home position at toolchanges. # The home position is used to define the last position of the tool

# for all toolchanges.

# 5) The variable 'absinc' is now pre-defined, set mi2 (Misc. Integer) for # the 'top level' absolute/incremental program output. Subprograms are # updated through the Mastercam dialog settings for sub-programs.

# 6) Always avoid machining to the center of rotation with rotary axis!

# 7) Transform subprograms are intended for use with G54.. workshifts.

#

# END_HEADER$

#

# --------------------------------------------------------------------------# Debugging and Factory Set Program Switches

# --------------------------------------------------------------------------m_one : -1 #Define constant

zero : 0 #Define constant

one : 1 #Define constant

two : 2 #Define constant

three : 3 #Define constant

four : 4 #Define constant

five : 5 #Define constant

c9k : 9999 #Define constant

fastmode : yes #Enable Quick Post Processing, (set to no for debug)

bug1 : 2 #0=No display, 1=Generic list box, 2=Editor

bug2 : 40 #Append postline labels, non-zero is column position

bug3 : 0 #Append whatline number to each NC line

bug4 : 1 #Append NCI line number to each NC line

whatno : yes #Do not perform whatline branches (leave as yes)

skp_lead_flgs : 1 #Do NOT use v9 style contour flags

get_1004 : 1 #Find gcode 1004 with getnextop

rpd_typ_v7 : 0 #Use Version 7 style contour flags/processing

strtool_v7 : 2 #Use Version 7+ toolname

tlchng_aft : 2 #Delay call to toolchange until move line

cant_tlchng : 1 #Ignore cantext entry on move with tlchng_aft

newglobal : 1 #Error checking for global variables

getnextop : 0 #Build the next variable table

# --------------------------------------------------------------------------# General Output Settings

# --------------------------------------------------------------------------sub_level : 1 #Enable automatic subprogram support

breakarcs : 2 #Break arcs, 0 = no, 1 = quadrants, 2 = 180deg. max arcs arcoutput : 1 #0 = IJK, 1 = R no sign, 2 = R signed neg. over 180

arctype : 2 #Arc center 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.

do_full_arc : 0 #Allow full circle output 0=no, 1=yes

helix_arc : 2 #Support helix arc output, 0=no, 1=all planes, 2=XY plane only

arccheck : 3 #Check for small arcs, convert to linear

atol : .01 #Angularity tolerance for arccheck = 2

ltol : .002 #Length tolerance for arccheck = 1

vtol : .0001 #System tolerance

maxfeedpm : 500 #Limit for feed in inch/min

ltol_m : .05 #Length tolerance for arccheck = 1, metric

vtol_m : .0025 #System tolerance, metric

maxfeedpm_m : 10000 #Limit for feed in mm/min

force_wcs : yes #Force WCS output at every toolchange

spaces : 0 #Number of spaces to add between fields

omitseq : no #Omit sequence numbers

seqmax : 9999 #Max. sequence number

stagetool : 0 #0 = Do not pre-stage tools, 1 = Stage tools

use_gear : 0 #Output gear selection code, 0=no, 1=no

max_speed : 10000 #Maximum spindle speed

min_speed : 50 #Minimum spindle speed

nobrk : no #Omit breakup of x, y & z rapid moves

progname : 1 #Use uppercase for program name (sprogname)

xflip : no #Reverse X axis orientation - eap 1/17/03 yflip : no #Reverse Y axis orientation - eap 1/17/03 zflip : no #Reverse Z axis orientation - eap 1/17/03

# --------------------------------------------------------------------------# Rotary Axis Settings

# --------------------------------------------------------------------------vmc : 1 #0 = Horizontal Machine, 1 = Vertical Mill

rot_on_x : 1 #Default Rotary Axis Orientation, See ques. 164.

#0 = Off, 1 = About X, 2 = About Y, 3 = About Z

rot_ccw_pos : 1 #Axis signed dir, 0 = CW positive, 1 = CCW positive

index : 0 #Use index positioning, 0 = Full Rotary, 1 = Index only ctable : 5 #Degrees for each index step with indexing spindle

use_frinv : 1 #Use Inverse Time Feedrates in 4 Axis, (0 = no, 1 = yes ) maxfrdeg : 2000 #Limit for feed in deg/min

maxfrinv : #Limit for feed inverse time

frc_cinit : 1 #Force C axis reset at toolchange

ctol : 225 #Tolerance in deg. before rev flag changes

ixtol : .01 #Tolerance in deg. for index error

frdegstp : 10 #Step limit for rotary feed in deg/min

# --------------------------------------------------------------------------# Enable Canned Drill Cycle Switches

# --------------------------------------------------------------------------usecandrill : yes #Use canned cycle for drill

usecanpeck : yes #Use canned cycle for Peck

usecanchip : yes #Use canned cycle for Chip Break

usecantap : yes #Use canned cycle for Tap

usecanbore1 : yes #Use canned cycle for Bore1

usecanbore2 : yes #Use canned cycle for Bore2

usecanmisc1 : yes #Use canned cycle for Misc1

usecanmisc2 : yes #Use canned cycle for Misc2

# --------------------------------------------------------------------------# Common User-defined Variable Initializations (not switches!)

# --------------------------------------------------------------------------xia : 0 #Formated absolute value for X incremental calculations yia : 0 #Formated absolute value for Y incremental calculations zia : 0 #Formated absolute value for Z incremental calculations cia : 0 #Formated absolute value for C incremental calculations

cuttype : 0 #Cut type flag

#0 = Tool Plane, 1 = Axis Subs, 2 = Polar, 3 = 4/5 axis

bld : 0 #Block delete active

result : 0 #Return value for functions

sav_spc : 0 #Save spaces

sav_gcode : 0 #Gcode saved

sav_absinc : 0 #Absolute/Incremental Saved Value

sav_coolant : 0 #Coolant saved

sav_frc_wcs : 0 #Force work offset flag saved

toolchng : 1 #On a toolchange flag

spdir2 : 1 #Copy for safe spindle direction calculation

#Drill variables

drlgsel : -1 #Drill Select Initialize

drillref : 0 #Select drill reference

peckacel : 0 #Fractional percent to reduce peck2 when usecan.. : no drlgcode : 0 #Save Gcode in drill

sav_dgcode : 0 #Drill gcode saved

#Subprogram variables

mr_rt_actv : 0 #Flag to indicate if G51/G68 is active

#0=Off, 1=Toolchange, 2=Subprogram call/start, G68

#3=Absolute start, both

rt_csav : 0 #C saved value

end_sub_mny : 0 #Many tool setting captured at transform sub end

#Rotary/Index variables

csav : 0 #C saved value

prvcabs : 0 #Saved cabs from pe_inc_calc,

#Used for rotary feed and direction calculations

cdelta : 0 #Calculation for angle change

rev : 0 #Calculation for deg/min

sav_rev : 0 #Saved revolution counter

indx_out : c9k #Rotation direction calculation

fmt 16 indx_mc #Rotation direction calculation

#Vector Constants for Rotatary Calculations

aaxisx : 1 #A axis rotation vector constant

aaxisy : 0 #A axis rotation vector constant

aaxisz : 0 #A axis rotation vector constant

baxisx : 0 #B axis rotation vector constant

baxisy : 1 #B axis rotation vector constant

baxisz : 0 #B axis rotation vector constant

caxisx : 0 #C axis rotation vector constant

caxisy : 0 #C axis rotation vector constant

caxisz : 1 #C axis rotation vector constant

#Feedrate calculation variables

frdelta : 0 #Calculation for deg/min

frinv : 0 #Feedrate inverse time

frdeg : 0 #Feedrate deg/min actual

prvfrdeg : 0 #Feedrate deg/min actual

ldelta : 0 #Calculation for deg/min, linear

cldelta : 0 #Calculation for deg/min, linear and rotary

circum : 0 #Calculation for deg/min

ipr_type : 0 #Feedrate for Rotary, 0 = UPM, 1 = DPM, 2 = Inverse

# --------------------------------------------------------------------------# Format statements - n=nonmodal, l=leading, t=trailing, i=inc, d=delta

# --------------------------------------------------------------------------#Default english/metric position format statements

相关主题