首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MasterCAM后处理修改特殊技巧

MasterCAM后处理修改特殊技巧

原创
作者头像
用户7505898
修改2020-10-09 16:06:27
6K1
修改2020-10-09 16:06:27
举报
文章被收录于专栏:数控编程数控编程

MasterCAM后处理修改特殊技巧一.1    MasterCAM后处理修改特殊技巧:

Scrollex EDIT

另外:输出字母的大小写修改方式不知如何更改。

注:若要修改下述相应功能则直接查找红色下划线语句即可。

①、    MasterCAM后处理输出文件格式设置

sextnc     MIN     #NC Program Extension for Okuma

上述语句表示输出格式为MIN格式。若没有可以新建。“.Trun”格式表示车床专用。需要的格式修改MIN即可,如MPF,NC,H,TXT等这样就不必每次为输出什么样的格式费神了。我就经常用MPF和NC、H几种格式,为每种格式编制一个后处理或通用一个均比较方便。

②、 “Arcoutput”控制语句控制圆弧输出格式,设置值若为“0”表示输出为“IJK”格式;若设置值为“1”则输出圆弧格式为“R”。“arctype”控制输出圆弧类型,若为“1”则表示由圆心确定;若为“2”则表示由起点(Start)指向圆心(Center),2=St-Ctr;若为“3”表示由圆心指向起点,3=Ctr-St;若为“4”表示非增量。

arcoutput   : 0     #0 = IJK, 1 = R no sign, 2 = R signed neg. over 180

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

③、“Omitseq”控制语句控制序列号输出,若设置值为“Yes”则忽略序列号,不输出,若设置值为“No”则不忽略即输出序列号。

④、“Spaces”控制语句控制空格输出,若设置值为“0”表示不输出空格即紧凑输出,若设置值为“1”表示输出空格即在每个“X,Y,R,F”等控制语句前加一空格。

⑤、若要查找每一条输出语句的作用及位置则在输出语句后加上标语句即可。一般输出语句的格式为:

pbld,  n,  "M6",  e(其中pbld为输出开头,n为序列号,“”引号内为直接输出字符,e为结束语句。

下面语句为程序号输出格式:

fmt  O  4   progno      #Program number

#fmt  ":" 4   progno      #Program number

#表示注释语句的开始,fmt是格式定义,O表示输出程序开头为O,若开头为PR或P时只需要改O为需要的程序开头即可。这里 的4表示程序号长度为4个字节。其它用fmt格式定义的语句也一样,可用此法修改想改的部分即可得到需要的输出结果。比如要求输出的G01变为L格式(即从ISO格式转化为Heidenhain格式)

数据的读入:有缘学习更多+谓ygd3076或关注桃报:奉献教育(店铺)

*progno:从MasterCAM图形中读入程序号

scomm:从MasterCAM图形中读入注释文本

*t:从MasterCAM图形中读入刀具号

*tnote, *toffnote, *tlngnote,

*tldia:从MasterCAM图形中读入刀具直径

date:从MasterCAM图形中读入日期

time:从MasterCAM图形中读入时间

*speed:从MasterCAM图形中读入主轴速度

*spindle:从MasterCAM图形中读入主轴

scoolant:从MasterCAM图形中读入冷却液打开与关闭

“”:从MasterCAM图形中输出时引号内的内容直接输出。

Sprogname:从MasterCAM图形中输出程序名控制语句

Scrollex

MasterCAM9后处理的修改

    MasterCAM系统缺省的后处理文件为MPFAN.PST,适用于FANUC(发那科)数控代码的控制器。其它类型的控制器需选择对应的后处理文件。

由于实际使用需要,用缺省的后处理文件时,输出的NC文件不能直接用于加工。原因是: 以下内容需要回复才能看到有缘学习更多+谓ygd3076或关注桃报:奉献教育(店铺)

    ⑴进行模具加工时,需从G54~G59的工件坐标系指令中指定一个,最常用的是G54。部分控制器使用G92指令确定工件坐标系。对刀时需定义工件坐标原点,原点的机械坐标值保存在CNC控制器的G54~G59指令参数中。CNC控制器执行G54~G59指令时,调出相应的参数用于工件加工。采用系统缺省的后处理文件时,相关参数设置正确的情况下可输出G55~G59指令,但无法实现G54指令的自动输出。

    ⑵FANUC.PST后处理文件针对的是4轴加工中心,而目前使用量最大的是3轴加工中心,多出了第4轴数据“A0.”。

    ⑶不带刀库的数控铣使用时要去掉刀具号、换刀指令、回参考点动作。

    ⑷部分控制器不接受NC文件中的注释行。

    ⑸删除行号使NC文件进一步缩小。

    ⑹调整下刀点坐标值位置,以便于在断刀时对NC文件进行修改。

    ⑺普通及啄式钻孔的循环指令在缺省后处理文件中不能输出。使用循环指令时可大幅提高计算速度,缩小NC文件长度。

如果要实现以上全部要求,需对NC文件进行大量重复修改,易于出现差错,效率低下,因此必须对PST(后处理)文件进行修改。修改方法如下:

    1、增加G54指令(方法一):

采用其他后处理文件(如MP_EZ.PST)可正常输出G54指令。由于FANUC.PST后处理文件广泛采用,这里仍以此文件为例进行所有修改。其他后处理文件内容有所不同,修改时根据实际情况调整。

用MC9自带的编辑软件(路径:C:\Mcam9\Common\Editors\Pfe\ PFE32.EXE)打开FANUC.PST文件(路径:C:\Mcam9\Mill\Posts\ MPFAN.PST)

单击【edit】→【find】按钮,系统弹出查找对话框,输入“G49”。

查找结果所在行为:

    pbld, n, *sgcode, *sgplane, "G40", "G49", "G80", *sgabsinc, e

插入G54指令到当前行,将其修改为:

    pbld, n, *sgcode, *sgplane, "G40", "G49", "G80", *sgabsinc, "G54",e

输出的NC文件修改前对应位置指令为:

    N102G0G17G40G49G80G90

修改后变为:

    N102G0G17G40G49G80G90G54

查找当前行的上一行:

    pbld, n, *smetric, e

将其整行删除,或加上“#”成为注释行:

# pbld, n, *smetric, e

修改后G21指令不再出现,某些控制器可不用此指令。注意修改时保持格式一致。G21指令为选择公制单位输入,对应的英制单位输入指令为G20。

   2、增加G54指令(方法二):

单击按钮,系统弹出查找对话框,输入“force_wcs”,单击按钮,查找结果所在行为:

   force_wcs : no #Force WCS output at every toolchange?

将no改为yes,修改结果为:

   force_wcs : yes #Force WCS output at every toolchange?

输出的NC文件修改前对应位置指令为:

   N106G0G90X16.Y-14.5A0.S2200M3

修改后变为:

   N106G0G90G54X16.Y-14.5A0.S2200M3

前一方法为强制输出固定指令代码,如需使用G55~G59指令时,有所不便。多刀路同时输出时,只在整个程序中出现一次G54指令。后一方法同其他后处理文件产生G54指令的原理相同,多刀路同时输出时,每次换刀都会出现G54指令,也可根据参数自动转换成G55~G59指令。

输出三轴加工中心程序的FANUC后处理文件为MP_EZ.PST,输出4轴加工中心程序的三菱控制器后处理文件为MP520AM.PST。

   3、删除第四轴数据“A0.”,以适应三轴加工中心:

单击按钮,系统弹出查找对话框,输入“Rotary Axis”,单击按钮,查找结果所在行为:

   164. Enable Rotary Axis button? y

将其修改为:有缘学习更多+谓ygd3076或关注桃报:奉献教育(店铺)

   164. Enable Rotary Axis button? n

修改后第四轴数据不再出现。

   4、删除刀具号、换刀指令、回参考点指令,适应无刀库的数控铣机床:

单击按钮,系统弹出查找对话框,输入“M6”,单击按钮,查找结果所在行为:

   if stagetool >= zero, pbld, n, *t, "M6", e

将其修改为:

   if stagetool >= zero, e # pbld, n, *t, "M6",

另一个换刀的位置所在行为:

   pbld, n, *t, "M6", e

将其删除或改为注释行:

#pbld, n, *t, "M6", e

修改后换刀指令行不再出现,通常修改第一个出现“M6”指令的位置即可。

单击按钮,系统弹出查找对话框,输入“*sg28ref”,单击按钮,查找结果所在行为:

   pbld, n, sgabsinc, sgcode, *sg28ref, "Z0.", scoolant, e

   pbld, n, *sg28ref, "X0.", "Y0.", protretinc, e

将其修改为:

   pbld, n, scoolant, e

# pbld, n, *sg28ref, "X0.", "Y0.", protretinc, e

输出的NC文件修改前对应位置指令为:

   N116G91G28Z0.M9

修改后变为:

   N116M9

   PST文件中另有两个类似位置,如使用G92指令确定工件坐标,可对其适当修改。加工结束后,机床各轴不回参考点,便于手动换刀时节省时间。

   5、删除NC文件的程序名、注释行:

单击 按钮,系统弹出查找对话框,输入“%”,单击 按钮,查找结果所在行为:

    "%", e

     *progno, e

    "(PROGRAM NAME - ", progname, ")", e

    "(DATE=DD-MM-YY - ", date, " TIME=HH:MM - ", time, ")", e

将其删除或改为注释行:

    "%", e

# *progno, e

# "(PROGRAM NAME - ", progname, ")", e

# "(DATE=DD-MM-YY - ", date, " TIME=HH:MM - ", time, ")",

输出的NC文件修改前对应位置指令为:

    O0010

(PROGRAM NAME - A2)

    (DATE=DD-MM-YY - 25-12-04 TIME=HH:MM - 10:45)

修改后以上指令行不再出现。

单击按钮,系统弹出查找对话框,输入“pstrtool”,单击 按钮,查找结果所在行为:

     "(", pstrtool, *tnote, *toffnote, *tlngnote, *tldia, ")", e

将其删除或改为注释行:

#"(", pstrtool, *tnote, *toffnote, *tlngnote, *tldia, ")", e

输出的NC文件修改前对应位置指令为:

(D16R8.0 TOOL - 2 DIA. OFF. - 0 LEN. - 0 DIA. - 16.)

修改后以上指令行不再出现。此注释行指明当前刀路所使用的刀具参数,可用于加工前核对加工单,建议保留。法兰克及三菱控制器可以接受注释内容。

    6、取消行号:

单击按钮,系统弹出查找对话框,输入“omitseq”,单击 按钮,查找结果所在行为:

    omitseq : no #Omit sequence no.

将其修改为:

    omitseq : yes #Omit sequence no.

修改后行号不再出现。

    7、调整下刀点坐标值位置:

单击按钮,系统弹出查找对话框,输入“g43”,单击 按钮,查找结果所在行为:

    pcan1, pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout,

    pfcout, *speed, *spindle, pgear, strcantext, e

    pbld, n, "G43", *tlngno, pfzout, scoolant, next_tool, e

将其修改为:

    pcan1, pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, e

       pbld, n, *sgcode, pfzout, e

    pbld, n, *speed, *spindle, pgear, strcantext, e

      pbld, n, "G43", *tlngno, scoolant, next_tool, e

输出的NC文件修改前对应位置指令为:

    G0G90G54X16.Y-14.5S2200M3

    G43H0Z20.M8

修改后变为:

    G0G90G54X16.Y-14.5

    G0Z20.

    S2200M3

    G43H0M8

新的指令顺序使下刀点(安全高度)x、y、z坐标值同其他指令分开,易于在断刀时修改。G43指令在PST文件中有两个位置,如仅使用G54指令时,修改第一个出现“G43”的位置即可。

    8、输出普通及啄式钻孔循环指令:

单击按钮,系统弹出查找对话框,输入“usecandrill”,单击 按钮,查找结果相关行为:

    usecandrill : no #Use canned cycle for drill

    usecanpeck : no #Use canned cycle for Peck

将其修改为:有缘学习更多+谓ygd3076或关注桃报:奉献教育(店铺)

    usecandrill : yes #Use canned cycle for drill

    usecanpeck : yes #Use canned cycle for Peck

此修改适用于支持G81、G83钻孔循环指令的控制器。

部分FANUC系统G代码,不全。可供参考。

                    G代码表

代码 组 功能

   G00     01    定位

   G01           直线插补

   G02           顺时针圆弧插补

   G03           逆时针圆弧插补

   G04     00    暂停

   G10           可编数据输入

   G11           取消可编数据输入方式

   G15     17    极坐标指令取消

   G16           极坐标指令开

   G17     02    选择X、Y平面

   G18           选择Z、X平面

   G19           选择Y、Z平面

   G20     06    英制输入

   G21           公制输入

   G28     00    返回参考点

   G29           从参考点返回

   G30           返回第2、3、4参考点

   G40     07    取消刀具半径补偿

   G41           刀具半径左补偿

   G42           刀具半径右补偿

   G43     08    刀具长度正补偿

   G44           刀具长度负补偿

   G49           取消刀具长度补偿

   G50     11    取消比例缩放

   G51           比例缩放开

  G50.1    22    镜象取消

  G51.1          镜象开

   G52     00    局部坐标系设定

   G53           选择机床坐标系

   G54     14    选择工件坐标系1

     G55           选择工件坐标系2

     G56           选择工件坐标系3

     G57           选择工件坐标系4

     G58           选择工件坐标系5

     G59           选择工件坐标系6

     G65     00    宏程序调用

   G66     12    宏程序模态调用

   G67           取消宏程序模态调用

   G68     16    坐标旋转

   G69           取消坐标旋转

   G73     09    深孔钻循环

   G74           左攻螺纹循环

   G76           精镗循环

   G80           取消孔加工固定循环

   G81           钻、镗孔循环

   G82           锪孔循环

   G83           深孔钻循环

   G84           右攻螺纹循环

   G85           镗孔循环

   G86           镗孔循环

   G87           背镗孔循环

   G88           镗孔循环

   G89           镗孔循环

   G90     03    绝对方式编程

   G91           增量方式编程

   G92     00    设定工件坐标系

   G98     10    固定循环返回初始点

   G99           固定循环返回R点

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

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

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

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

  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应该不用翻译了吧?!)英文后面的中文注解是我加进去的,翻译的不是很详细,但相信大家能看懂.没有翻译的就表示我根本不会或此设定不常用....嘿嘿... 有缘学习更多+谓ygd3076或关注桃报:奉献教育(店铺)

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系统的参数设定,而涉及到后处理的内容很少,在此就不再详述,有兴趣者可以用词典翻译看看讲些啥?有什么新发现可以告诉俺.

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档