mastercam后处理修改教学文案Word格式.docx
《mastercam后处理修改教学文案Word格式.docx》由会员分享,可在线阅读,更多相关《mastercam后处理修改教学文案Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
4progno#Programnumber
#表示注释语句的开始,fmt是格式定义,O表示输出程序开头为O,若开头为PR或P时只需要改O为需要的程序开头即可。
这里的4表示程序号长度为4个字节。
其它用fmt格式定义的语句也一样,可用此法修改想改的部分即可得到需要的输出结果。
比如要求输出的G01变为L格式(即从ISO格式转化为Heidenhain格式)
数据的读入:
*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文件不能直接用于加工。
原因是:
以下内容需要回复才能看到
⑴进行模具加工时,需从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文件(路径:
\Mcam9\Mill\Posts\MPFAN.PST)
单击【edit】→【find】按钮,系统弹出查找对话框,输入“G49”。
查找结果所在行为:
pbld,n,*sgcode,*sgplane,"
G40"
"
G49"
G80"
*sgabsinc,e
插入G54指令到当前行,将其修改为:
*sgabsinc,"
G54"
,e
输出的NC文件修改前对应位置指令为:
N102G0G17G40G49G80G90
修改后变为:
N102G0G17G40G49G80G90G54
查找当前行的上一行:
pbld,n,*smetric,e
将其整行删除,或加上“#”成为注释行:
#pbld,n,*smetric,e
修改后G21指令不再出现,某些控制器可不用此指令。
注意修改时保持格式一致。
G21指令为选择公制单位输入,对应的英制单位输入指令为G20。
2、增加G54指令(方法二):
单击按钮,系统弹出查找对话框,输入“force_wcs”,单击按钮,查找结果所在行为:
force_wcs:
no#ForceWCSoutputateverytoolchange?
将no改为yes,修改结果为:
yes#ForceWCSoutputateverytoolchange?
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.”,以适应三轴加工中心:
单击按钮,系统弹出查找对话框,输入“RotaryAxis”,单击按钮,查找结果所在行为:
164.EnableRotaryAxisbutton?
y
将其修改为:
n
修改后第四轴数据不再出现。
4、删除刀具号、换刀指令、回参考点指令,适应无刀库的数控铣机床:
单击按钮,系统弹出查找对话框,输入“M6”,单击按钮,查找结果所在行为:
ifstagetool>
=zero,pbld,n,*t,"
e
=zero,e#pbld,n,*t,"
另一个换刀的位置所在行为:
pbld,n,*t,"
将其删除或改为注释行:
#pbld,n,*t,"
修改后换刀指令行不再出现,通常修改第一个出现“M6”指令的位置即可。
单击按钮,系统弹出查找对话框,输入“*sg28ref”,单击按钮,查找结果所在行为:
pbld,n,sgabsinc,sgcode,*sg28ref,"
Z0."
scoolant,e
pbld,n,*sg28ref,"
X0."
Y0."
protretinc,e
pbld,n,scoolant,e
#pbld,n,*sg28ref,"
N116G91G28Z0.M9
N116M9
PST文件中另有两个类似位置,如使用G92指令确定工件坐标,可对其适当修改。
加工结束后,机床各轴不回参考点,便于手动换刀时节省时间。
5、删除NC文件的程序名、注释行:
单击按钮,系统弹出查找对话框,输入“%”,单击按钮,查找结果所在行为:
%"
*progno,e
(PROGRAMNAME-"
progname,"
)"
(DATE=DD-MM-YY-"
date,"
TIME=HH:
MM-"
time,"
#*progno,e
#"
O0010
(PROGRAMNAME-A2)
(DATE=DD-MM-YY-25-12-04TIME=HH:
MM-10:
45)
修改后以上指令行不再出现。
单击按钮,系统弹出查找对话框,输入“pstrtool”,单击按钮,查找结果所在行为:
("
pstrtool,*tnote,*toffnote,*tlngnote,*tldia,"
#"
(D16R8.0TOOL-2DIA.OFF.-0LEN.-0DIA.-16.)
此注释行指明当前刀路所使用的刀具参数,可用于加工前核对加工单,建议保留。
法兰克及三菱控制器可以接受注释内容。
6、取消行号:
单击按钮,系统弹出查找对话框,输入“omitseq”,单击按钮,查找结果所在行为:
omitseq:
no#Omitsequenceno.
yes#Omitsequenceno.
修改后行号不再出现。
7、调整下刀点坐标值位置:
单击按钮,系统弹出查找对话框,输入“g43”,单击按钮,查找结果所在行为:
pcan1,pbld,n,*sgcode,*sgabsinc,pwcs,pfxout,pfyout,
pfcout,*speed,*spindle,pgear,strcantext,e
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
*tlngno,scoolant,next_tool,e
G0G90G54X16.Y-14.5S2200M3
G43H0Z20.M8
G0G90G54X16.Y-14.5
G0Z20.
S2200M3
G43H0M8
新的指令顺序使下刀点(安全高度)x、y、z坐标值同其他指令分开,易于在断刀时修改。
G43指令在PST文件中有两个位置,如仅使用G54指令时,修改第一个出现“G43”的位置即可。
8、输出普通及啄式钻孔循环指令:
单击按钮,系统弹出查找对话框,输入“usecandrill”,单击按钮,查找结果相关行为:
usecandrill:
no#Usecannedcyclefordrill
usecanpeck:
no#UsecannedcycleforPeck
yes#Usecannedcyclefordrill
yes#UsecannedcycleforPeck
此修改适用于支持G81、G83钻孔循环指令的控制器。
部分FANUC系统G代码,不全。
可供参考。
G代码表
代码组功能
G0001定位
G01直线插补
G02顺时针圆弧插补
G03逆时针圆弧插补
G0400暂停
G10可编数据输入
G11取消可编数据输入方式
G1517极坐标指令取消
G16极坐标指令开
G1702选择X、Y平面
G18选择Z、X平面
G19选择Y、Z平面
G2006英制输入
G21公制输入
G2800返回参考点
G29从参考点返回
G30返回第2、3、4参考点
G4007取消刀具半径补偿
G41刀具半径左补偿
G42刀具半径右补偿
G4308刀具长度正补偿
G44刀具长度负补偿
G49取消刀具长度补偿
G5011取消比例缩放
G51比例缩放开
G50.122镜象取消
G51.1镜象开
G5200局部坐标系设定
G53选择机床坐标系
G5414选择工件坐标系1
G55选择工件坐标系2
G56选择工件坐标系3
G57选择工件坐标系4
G58选择工件坐标系5
G59选择工件坐标系6
G6500宏程序调用
G6612宏程序模态调用
G67取消宏程序模态调用
G6816坐标旋转
G69取消坐标旋转
G7309深孔钻循环
G74左攻螺纹循环
G76精镗循环
G80取消孔加工固定循环
G81钻、镗孔循环
G82锪孔循环
G83深孔钻循环
G84右攻螺纹循环
G85镗孔循环
G86镗孔循环
G87背镗孔循环
G88镗孔循环
G89镗孔循环
G9003绝对方式编程
G91增量方式编程
G9200设定工件坐标系
G9810固定循环返回初始点
G99固定循环返回R点
MASTERCAM后处理的设置和参数修改
Mastercam是美国CNCSoftware公司开发的一套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系列的后处理系统为例,它可以定义成惯用于FANUC3M控制器所使用的格式,也可以定义成FANUC6M控制器所使用的格式,但不能用来定义其它系列的控制器.不同系列的后处理文件,在内容上略有不同,但其格式及主体部分是相似的,一般都包括以下部分:
1)Annotation(注释).对后处理文件及其设定方法作一般性介绍.此部分内容一般都不用更改.
以下是截取的部分注释:
(注释前都带#号,系统在执行代码处理时是不会读取前面带#号的语句的.)
#PostName:
MPFAN
#Product:
MILL
#MachineName:
GENERICFANUC
#ControlName:
#Description:
GENERICFANUCMILLPOST
#AssociatedPost:
NONE
#Mill/Turn:
NO
#4-axis/Axissubs.:
YES
#5-axis:
#Subprograms:
#Executable:
MPv9.0
#
#WARNING:
THISPOSTISGENERICANDISINTENDEDFORMODIFICATIONTO
#THEMACHINETOOLREQUIREMENTSANDPERSONALPREFERENCE.
2)DebuggingandFactorySetProgramSwitches(系统程序规划).此部分是MASTERCAM版本的后处理系统规划,每个版本都大同小异,一般不需更改.以下截取的是9.0版的)
m_one:
-1#Defineconstant
zero:
0#Defineconstant
one:
1#Defineconstant
two:
2#Defineconstant
three:
3#Defineconstant
four:
4#Defineconstant
five:
5#Defineconstant
c9k:
999#Defineconstant
fastmode:
yes#EnableQuickPostProcessing,(settonofordebug)
bug1:
2#0=Nodisplay,1=Genericlistbox,2=Editor
bug2:
40#Appendpostlinelabels,non-zeroiscolumnposition?
bug3:
0#Appendwhatlineno.toeachNCline?
bug4:
1#AppendNCIlineno.toeachNCline?
whatno:
yes#Donotperformwhatlinebranches?
(leaveasyes)
get_1004:
1#Findgcode1004withgetnextop?
rpd_typ_v7:
0#UseVersion7stylecontourflags/processing?
strtool_v7:
2#UseVersion7+toolname?
tlchng_aft:
2#Delaycalltotoolchangeuntilmoveline
cant_tlchng:
1#Ignorecantextentryonmovewithtlchng_aft
newglobal:
1#Errorcheckingforglobalvariables
getnextop:
0#Buildthenextvariabletable
3)GeneralOutputSettings(常规后处理设定).此部分可视情况更改,以适合机台或个人使用.以下截取的是9.0版的一些常规设定.冒号前面的是变量,冒号后面的是设定值,#号后面是注解(一般是说明0代表什么,1代表什么,2代表什么,yes或no应该不用翻译了吧?
!
)英文后面的中文注解是我加进去的,翻译的不是很详细,但相信大家能看懂.没有翻译的就表示我根本不会或此设定不常用....嘿嘿...
sub_level:
1#Enableautomaticsubprogramsupport(启用自动支持子程式)
breakarcs:
2#Breakarcs,0=no,1=quadrants,2=180deg.maxarcs(打断圆弧方式)
1#0=IJK,1=Rnosign,2=Rsignedneg.over180(转出圆弧方式)
2#Arccenter1=abs,2=St-Ctr,3=Ctr-St,4=unsignedinc.
do_full_arc:
0#Allowfullcircleoutput?
0=no,1=no(是否转成整圆方式)
helix_arc:
0#Supporthelixarcoutput,0=no,1=allplanes,2=XYplaneonly(是否转成螺旋弧)
arccheck:
1#Checkforsmallarcs,converttolinear(是否检测小圆弧并将其转成线)
atol:
.01#Angularitytoleranceforarccheck=2(圆弧角度公差)
ltol:
.002#Lengthtoleranceforarccheck=1(圆弧长度公差)
vtol:
.1#Systemtolerance(系统公差)
maxfeedpm:
500#Limitforfeedininch/min(最大进给-英制)
ltol_m:
.05#Lengthtoleranceforarccheck=1,metric(圆弧长度公差-公制)
vtol_m:
.0025#Systemtoleranc