您的位置:网站首页 > CAM

MASTERCAM后处理的设置和参数修改

时间:2011-02-28 10:31:18 来源:

  Mastercam是美国CNC Software公司开发的一套CAD/CAM软件,最早的版本为V3.0,可运行于DOS系统.V5.0以上版本运行于Windows操作系统。由于其诞生较早且功能齐全,特别是在CNC编程上快捷方便,因此有很高的市场占有率.软件的CAD功能可以构建2D或3D图形,架构自由曲面的功能远远胜于其他同类软件.在CAM方面更是直观和方便,可直接在点,线,面和实体上产生刀路.

  下面重点介绍它的后处理设置.

  后置处理文件简称后处理文件,是一种可以由用户以回答问题的形式自行修改的文件,其扩展名为.PST。安装MASTERCAM时系统会自动安装默认的后处理为MPFAN.PST.在应用Mastercam软件的自动编程功能之前,必须先对这个文件进行编辑,才能在执行后处理程序时产生符合某种控制器需要和使用者习惯的NC程序,如果没有全部更正,则可能造成事故.例如,某机床的控制系统采用G54工件坐标系定位,G90绝对坐标编程,要求生成的NC程序前面必须有G54G90设置,如果后处理文件的设置为G55G91,则每次生成的程序中含有G55G91,却不一定有G54G90,如果在加工时没有进行手工改正,则势必造成加工错误.本文介绍了Mastercam后处理文件的内容以及修改和设置的方法,供有关人员参考.也就是说后处理程序可以将一种控制器的NC程序,定义成该控制器所使用的格式.以FANUC系列的后处理系统为例,它可以定义成惯用于FANUC 3M控制器所使用的格式,也可以定义成FANUC 6M控制器所使用的格式,但不能用来定义其它系列的控制器.不同系列的后处理文件,在内容上略有不同,但其格式及主体部分是相似的,一般都包括以下部分:

  1) Annotation(注释).对后处理文件及其设定方法作一般性介绍.此部分内容一般都不用更改.

  以下是截取的部分注释:(注释前都带#号,系统在执行代码处理时是不会读取前面带#号的语句的.)

  # Post Name : MPFAN

  # Product : MILL

  # Machine Name : GENERIC FANUC

  # Control Name : GENERIC FANUC

  # Description : GENERIC FANUC MILL POST

  # Associated Post : NONE

  # Mill/Turn : NO

  # 4-axis/Axis subs. : YES

  # 5-axis : NO

  # Subprograms : YES

  # Executable : MP v9.0

  #

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

  # THE MACHINE TOOL REQUIREMENTS AND PERSONAL PREFERENCE.

  2) Debugging and Factory Set Program Switches (系统程序规划).此部分是MASTERCAM版本的后处理系统规划,每个版本都大同小异,一般不需更改.以下截取的是9.0版的)

  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 : 999 #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 no. to each NC line?

  bug4 : 1 #Append NCI line no. to each NC line?

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

  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

  3) General Output Settings(常规后处理设定).此部分可视情况更改,以适合机台或个人使用.以下截取的是9.0版的一些常规设定.冒号前面的是变量,冒号后面的是设定值,#号后面是注解(一般是说明0代表什么,1代表什么,2代表什么,yes或no应该不用翻译了吧?!)英文后面的中文注解是我加进去的,翻译的不是很详细,但相信大家能看懂.没有翻译的就表示我根本不会或此设定不常用....嘿嘿...

  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=no (是否转成整圆方式)

  helix_arc : 0 #Support helix arc output, 0=no, 1=all planes,2=XY plane only(是否转成螺旋弧)

  arccheck : 1 #Check for small arcs, convert to linear(是否检测小圆弧并将其转成线)

  atol : .01 #Angularity tolerance for arccheck = 2(圆弧角度公差)

  ltol : .002 #Length tolerance for arccheck = 1(圆弧长度公差)

  vtol : .1 #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 : no #Force WCS output at every toolchange?(换刀时是否转出WCS坐标)

  spaces : 0 #Number of spaces to add between fields(两行之间是否加入空格)

  omitseq : yes #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 : 0 #Use uppercase for program name (sprogname)(程式名称是否使用大写)

  4) 中间还有一些例如:Common User-defined(指令设定),Format statements(格式报告),definitions for NC output(NC代码限定),Error messages(出错信息),Toolchange / NC output Variable Formats(刀具变量)等基本上都是系统固定格式,不需要更改.在此就不再详述.当然,我也不建议你更改这些项目,如果你改错的话,系统很可能不执行或机台报警......

  5) Start of File and Toolchange Setup(文本内容和换刀设定).此部分内容很重要,很多使用者都从这里着手把程式改成自己需要的格式.以下截取的是9.0版的部分内容,其中有些是我根据自己需要更改的,中文是我加的注解.引号内是可以更改的内容.

  "%", e(程式开头的百分号)

  *progno, e(程式号码)

  comment(注解,可有可无,如不需要则删除此句)

  "(PROGRAM NAME - ", sprogname, ")", e(程式名称,可有可无)

  "(", *tnote, *toffnote, *tlngnote, *tldia, ")", e(刀具直径及补正参数显示,如不需要则把此整句删除)

  "(DATE=DD-MM-YY - ", date, " TIME=HH:MM - ", time, ")", e(程式日期显示,可有可无)

  pbld, n, *"/M99", e (我自己加的一句,如不需要则整句删除,而不是只删除引号内的内容)

  pbld, n, *"G90", "G92","X0.Y0.Z10.", e(定义加工原点,也可以改为G54坐标)

  sav_absinc = absinc (绝对坐标系)

  ......

  (中间省略的部分是系统根据刀路自动转出的程式,一般不必改)

  ......

  (以下几句是出现在程式尾,可以根据需要添加或删除)

  n, "Z10.", e (加工完成后提刀至安全高度)

  n, "X0.Y0.", e (归零)

  n, "G91", e (转用相对坐标)

  n, "M99", e (回到主程式)

  mergesub(此四句为程式结尾固定语句,不必理它)

  clearsub

  mergeaux

  clearaux

  "%", e(程式尾)

  6)Numbered questions for Mastercam Mill(问题参数设定).此部分大多数是MASTERCAM系统的参数设定,而涉及到后处理的内容很少,在此就不再详述。