找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 17476|回复: 5
打印 上一主题 下一主题

【资料】Mastercam软件的后置处理文件及其设定方法

[复制链接]
跳转到指定楼层
1
发表于 2003-7-31 17:20:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

您需要 登录 才可以下载或查看,没有帐号?注册

x
1 前言
  
  MasterCAM是一套应用广泛的CAD/CAM/CAE软件包,它采用图形交互式自动编程方法实现NC程序的编制。交互式编程是一种人机对话的编程方法,编程人员根据屏幕提示的内容,反复与计算机对话,选择菜单目录或回答计算机的提问,直至将所有问题回答完毕,然后即可自动生成NC程序。NC程序的自动产生是受软件的后置处理功能控制的,不同的加工模块(如车削、铣削、线切割等)和不同的数控系统对应于不同的后处理文件。软件当前使用哪一个后处理文件,是在软件安装时设定的,而在具体应用软件进行编程之前,一般还需要对当前的后处理文件进行必要的修改和设定,以使其符合系统要求和使用者的编程习惯。有些用户在使用软件时由于不了解情况,没有对后处理文件进行修改,导致生成的NC程序中某些固定的地方经常出现一些多余的内容,或者总是漏掉某些词句,这样,在将程序传入数控机床之前,就必须对程序进行手工修改,如果没有全部更正,则可能造成事故。例如,某机床的控制系统采用G54工件坐标系定位,G90绝对坐标编程,要求生成的NC程序前面必须有G54G90设置,如果后处理文件的设置为G55G91,则每次生成的程序中含有G55G91,却不一定有G54G90,如果在加工时没有进行手工改正,则势必造成加工错误。本文介绍了Mastercam后处理文件的内容以及修改和设置的方法,供有关人员参考。
  
  2 Mastercam软件简介
  
  Mastercam是由美国CNC Software公司开发的基于微机的CAD/CAM软件,V5.0以上版本运行于Windows操作系统。由于其价格较低且功能齐全,因此有很高的市场占有率。软件的CAD功能可以构建2D或3D图形,特别适用于具有复杂外形及各种空间曲面的模具类零件的建模和造型设计。在CAM方面,它具有以下特点:
  
  (1) 提供可靠与精确的刀具路径;
  
  (2) 可以直接在曲面及实体上加工;
  
  (3) 提供多种加工方式;
  
  (4) 提供完整的刀具库、材料库及加工参数资料库;
  
  Mastercam拥有车削、铣削、钻削、线切割等多种加工模块,允许用户通过观察刀具运动来图形化地编辑和修改刀具路径。另外,软件提供多种图形文件接口,包括DXF、IGES、STL、STA、ASCII等。
  
  3 Mastercam软件的兵团处理文件
  
  后置处理文件简称后处理文件,是一种可以由用户以回答问题的形式自行修改的文件,其扩展名为.PST。在应用Mastercam软件的自动编程功能之前,必须先对这个文件进行编辑,才能在执行后处理程序时产生符合某种控制器需要和使用者习惯的NC程序,也就是说后处理程序可以将一种控制器的NC程序,定义成该控制器所使用的格式。以FANUC系列的后处理系统为例,它可以定义成惯用于FANUC 3M控制器所使用的格式,也可以定义成FANUC 6M控制器所使用的格式,但不能用来定义其它系列的控制器。不同系列的后处理文件,在内容上略有不同,但其格式及主体部分是相似的,一般都包括以下五个部分:
  
  (1) Annotation(注释)。对后处理文件及其设定方法作一般性介绍。
  
  (2) Commands(指令)。指令的作用是对它后面的变量施加影响。如oldvars和newvars指令,在回答问题3时若写于刀具号码变量t这前,使用oldvars时将呼叫前一把刀具的号码,使用newvars时将呼叫现在所使用的刀具号码。
  
  (3) Variables(变量)。给出了“问题”中所使用的各种变量的定义。FANUC系列的后处理文件中共定义了26个变量,如prog_n=程序号码,f=进给率,s=主轴转速,t=刀具号码等。
  
  (4) 问题。该部分为后处理文件的主要部分,FANUC系列的后处理文件中共包括近200个问题,对这些问题的回答将决定将来输出的NC程序的格式。
  
  4 后处理文件的设定方法
  
  4.1 后处理文件编辑的一般规则
  
  对后处理文件的编辑和设定只需要对第(4)部分的“问题”进行。.PST文件的每个问题前都有一个号码并于号码后加一个小数点。若问题前没有号码,那么这个问题在执行后处理时是被忽略不用的。回答号码20以前的问题时,需将所回答的文字键入于问题的下一行,而且回答的内容可以包括多行;20号以后的问题均带有问号且回答时直接写在问号的后面,不得换行,这一类的问题常常是以“y”或“n”来回答。回答问题时用到变量,不能用引号,而字符串则必须包围在引号之中(例如“G91 G28 Z0 M05”),引号中的文字将按字符串的原样写入程序中。变量和字符之间要用逗号隔开。
  
  4.2 变量的使用
  
  变量的定义在后处理文件的开头部分已经作了说明,使用时可通过查阅了解变量的意义。变量在回答问题时一经使用,就会在生成的NC程序中表达确定的意义。如变量spindle_on,转速为正或0时定义为M03,为负时定义为M04,如果回答问题时使用了该变量,则会在NC程序的相应部分写出M03或M04。变量prog_n若写到问题1或2中,则在NC程序规划时给定的程序号将起作用。变量First_tool是用来呼叫程序中所使用的第一把刀的号码,此变量通常用于程序结束时,将使用中的刀具改变为第一把刀的号码,以便在下一次执行程序时使用。next_tool用于无T字首的刀具号码,使用这个变量可在刀具被呼叫前,选择另一把刀来进行换刀。变量xr、yr、zr是用来定义程序中快速定位的X、Y、Z坐标位置。Xh、yh、zh是用来规定机械原点的位置,通常用于换刀和程序结束时使刀具返回机械原点。prev_x、prev_y、prev_z则是用来定义刀具所在的前一个X、Y、Z坐标的位置。其它变量的定义可参看文件开头的说明。
  
  4.3 后处理文件的设定方法
  
  后处理文件中的大部分问题一般不需要作修改,使用时,通常只需对其中固定的某几个问题进行编辑。下面以FANUC系列的.PST文件为例,来说明设定的方法。
  
  (1) 问题0的回答只能使用字符串,对于FANUC控制系统则必须设置为“%”。
  
  (2) 以问题2的回答为例说明2、4、5问题的回答方法。假设在设定NC参数时所给的程序名为test1,程序号为1234,顺序号开始号码为100且增量值为2,刀具号为01,主轴转速为1500r/min,则.PST文件格式及产生的NC程序对照如下
  
  .PST文件的格式         NC程序
  
  prog_name           test1
  
  Prog_n             1234
  
  N, " G90 G54 G49 G40"     N100 G90 G54 G49 G40
  
  N, "G00 X0 Y0"        N102 G00 X0 Y0
  
  N, "M06" , t          N104 M06 T01
  
  N, s, spindle_on        N106 S1500 M03
  
  (3) 问题6是用来设定当铣削状态改变而刀具号码并不改变时,其使用的变量与问题2,4,5中所使用的变量相同。
  
  (4) 问题7,8,9控制NC参数屏幕中Text1,2,3所设定的文字。
  
  (5) 问题36要求规定进给速度值小数点后允许的位数,若写为-1时为整数。
  
  (6) 问题37设定的比例因数可使写到NC程序中的进给速度按此因数变化。
  
  (7) 问题38中要求设置快速进给速率的大小。
  
  (8) 问题42中若设定为e(表示圆弧插补指令中用R编程)时,问题43必须回答为“y”,则系统在后处理时自动将大于180(的圆弧打断为两段。
  
  (9) 问题50~55是使控制器中的canned cycles指令(G81~G89)被使用于NC程序中。
  
  (10) 问题70是用来设定几何图形中线与线或线与圆弧之间相接时的精确度,其值应保证连接外形时能自动连接。
  
  (11) 问题81~89是用于NC程序与数控机床传输与接受时的参数设定。
  
  (12) 问题120当使用者在换刀中使用next_tool变量时,应回答为“y”。当后处理系统很执行时,电脑首先必须做一个刀具表,否则电脑无法了解在换刀要用到次一把刀进,什么刀具要来到次一把刀的位置。
  
  (13) 问题190~196是用于设定刀具路径显示时的内定值。
  
  (14) 问题201~510中的杂项变量是在线切割后处理系统中使用的。
  
  5 结论
  
  后置处理文件的编辑和设定,对所有的CAD/CAM软件来说都是需要的。但是一般的使用者经常忽略这一点,而是在每次生成NC程序后去对程序进行修改,不仅浪费时间,而且容易出错导致事故。本文对Mastercam软件的后处理文件进行了分析和讨论,介绍了其编辑和设定的方法,希望对有关人员有所启发。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2003-7-31 17:23:25 | 只看该作者
后置处理文件简称后处理文件,是一种可以由用户以回答问题的形式自行修改的文件,其扩展名为.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系统的参数设定,而涉及到后处理的内容很少,在此就不再详述,有兴趣者可以用词典翻译看看讲些啥?
3
发表于 2003-7-31 18:25:03 | 只看该作者
4
发表于 2003-7-31 22:18:57 | 只看该作者
  
5
发表于 2007-7-30 21:22:03 | 只看该作者


6
发表于 2007-8-2 15:49:15 | 只看该作者
1。有部分用G91来编程,后处理pst中
n, "X0.Y0.", e (归零)
应该把此句改掉,才能返回到工件的起点。
2。在刀路设置上如图必须打勾

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2025-2-25 07:35 , Processed in 0.027164 second(s), 12 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

快速回复 返回顶部 返回列表