您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > MASTERCAM后处理修改
1MASTERCAM后处理修改Mstercam的的默认后处理是MPFAN.PST(M的后处理的扩展名为PST),其中定义了NC程序的格式,工艺参数,接口的一些功能等,有些东西是不能改动的,其实我们主要改动的就是几个方面:1程序的开头和结尾。系统不一样,他的程序的开头和结尾可能就存在不同2三轴和四轴的添加和改动3刀具的设置(不好意思,这是我觉得需要改的原因,大家不要扔西瓜皮)首先用记事本打开MPFAN.PST文件(这个文件在D:\Mcam9\Mill\Posts中)如图22下面主要讲讲程序的开头的改动:(1)G54的改动按CTRL+F查出StartofFileandToolchangeSetup这一选项:你会在下面的程序中找到pbld,n,*sgcode,*sgplane,G40,G49,G80,*sgabsinc,e将其改为pbld,n,*sgcode,*sgplane,G40,G49,G80,*sgabsinc,“G54,e程序将由G0G17G40G49G80G90改为G0G17G40G49G80G90G54其中“”表示强制输出(2)G21的改动找到pbld,n,*smetric,e程序行在其前面加一#将他设置为注释部分,即可不输出G21代码大家应该都明白G21是代表公制,G20是代表英制(3)时间和程序名的改动大家可以搜索DATE=DD-MM-YY,这一行大家一看就明白了吧,自己想用什么代替就用什么代替,然后出一个程序一看就明白了4)刀具的设置MASTER默认的POST的刀具是不显示刀具的半径和角部圆角的,在文件中加入下面的语句,就可以在程序的开头出现刀具的半径表示,方便检查刀具与程序中的刀具设置是否一致!3模具加工一边情况下用不上四轴,所以在程序中可以取消A代码:查找结果所在行为:ifstagetool=zero,pbld,n,*t,M6,e将其修改为:ifstagetool=zero,e#pbld,n,*t,M6,另一个换刀的位置所在行为:pbld,n,*t,M6,e将其删除或改为注释行4进行模具加工时,需从G54~G59的工件坐标系指令中指定一个,最常用的是G54。部分控制器使用G92指令确定工件坐标系。对刀时需定义工件坐标原点,原点的机械坐标值保存在CNC控制器的G54~G59指令参数中。CNC控制器执行G54~G59指令时,调出相应的参数用于工件加工。采用系统缺省的后处理文件时,相关参数设置正确的情况下可输出G55~G59指令,但无法实现G54指令的自动输出。单击查找按钮,系统弹出查找对话框,输入“force_wcs”,单击按钮,查找结果所在行为:force_wcs:no#ForceWCSoutputateverytoolchange?将no改为yes,修改结果为:force_wcs:yes#ForceWCSoutputateverytoolchange?输出的NC文件修改前对应位置指令为:N106G0G90X16.Y-14.5A0.S2200M3修改后变为:N106G0G90G54X16.Y-14.5A0.S2200M3MP-编写后处理的语言。是Mastercam大牛自己写的一种语言喔。它的好处是,结构简单,功能强大。缺点是,文档少,功能复杂抽象,学起来实在不容易。真正从头到尾了解MP语言的,全世界找不出20个。5整数-不用我说了吧。实数-带小数点的。字符串-也就是一串字符,ABCDE123这样的后处理块-后处理的基本功能模块,就是一系列实现某一个或一些功能的后处理指令,写在一起,给起个名字,以后用起来方便。后处理块分两种,Mastercam系统预定义的,和用户自定义的。在X版以前,这两种后处理块在外观上没啥区别,要查看手册才能知道到底属于哪一种。从X版开始,系统预定义的后处理块后面加了个$,像psof$,pcomment$。这样就容易区分了,而且,如果用Mastercam自带的文本编辑器打开,预定义后处理块会用蓝色字符显示。后处理块中的每一行叫做后处理命令行。整数,实数和字符串变量也有系统预定义的和用户自定义的,在X版里区别也是一样,系统预定义的后面有个$,像e$。逻辑表达式,返回值为0或1。NCI文件,嗯,这个比较重要,是Mastercam输出机器代码时生成的一个中间文件,文本格式的。Mastercam输出的所有刀路信息都在这里面了。这个文件就是后处理器的输入,而数控控制器所能用的程序就是后处理器的输出。说白了,后处理器就是一个从NCI到机器程序的翻译器,因为同一个NCI。在X以前的版本里,有NCI就搞定一切,但从X版本开始,由于Mastercam系统里加入了机器定义(MachineDefinition)和控制器定义(ControlDefinition),MP语言还要和这两个东东发生关系。NCI。这个NCI么,其实结构是非常简单的。打开一个NCI文件,会发现它是以每两行作为一个功能结构。MP语言在读取NCI的时候也是两行两行的读取的。例如:1411.52.5-0.1253.2每两行中的第一行,只有一个参数,而且和控制器代码(GCode)有不少相似之处,比方说,1代表直线移动,0代表快速移动,2代表顺时针圆弧移动,81代表钻孔过程开始等等。但是不可将这两种GCode混淆起来。两行中的第二行,就是对应第一行GCode的参数行。每个GCode所对应的参数各不相同,而且同一个GCode在不同的加工过程(车削,铣削等)中参数也不相同。在上面的例子中,具体的每个参数的意义如下:铣削参数含义对应系统变量预定值1刀径补偿cc/ccomp40-取消41-左补偿42-右补偿140-最后移动时取消2X位置x/xnci3Y位置y/ynci4Z位置z/znci5进刀速率fr正值-速率-1-不变-2-快速移动6(可选)控制标志cur_cflg6车削参数含义对应系统变量预定值1刀径补偿cc/ccomp40-取消41-左补偿42-右补偿140-最后移动时取消2Z位置z/znci3X位置x/xnci4置空5进刀速率fr正值-每分钟进给量负值-每周进给量6(可选)控制标志cur_cflgMP语言在处理刀路信息的时候,先读取NCI的GCode,然后根据读取到的GCode去调用相应的预定义后处理块。比方说,如果读到的GCode是0,就会调用prapid或pzrapid。然后,第二行的参数就会储存到相应的系统预定义变量中,用来输出或做相关的计算。大体上这就是Mstercam用后处理把NCI翻译成机器代码的简要过程。不过,说起来挺容易,具体里面怎么跑的可没法子一句话说得清楚。这么多的NCI代码,这么多的后处理块,看起来都TMD头晕。如果各位老大不怕头晕的话,嘿嘿,下面我来讲怎么输出相关信息来了解这整个翻译的过程。用文本编辑器打开后处理器,找到这一块:fastmode:yes#EnableQuickPostProcessing,(settonofordebug)bug1:2#0=Nodisplay,1=Genericlistbox,2=Editorbug2:40#Appendpostlinelabels,non-zeroiscolumnposition?bug3:0#AppendwhatlinenumbertoeachNCline?bug4:1#AppendNCIlinenumbertoeachNCline?bug1,不要动他,2就好了。bug2比较重要。如果是一个非零正值的话,在输出机器代码的时候,会把输出这一行所被调用的第一个后处理块的名称附上。因为一个后处理块可以调用其他的后处理块,所以如果还有其他的后处理块被调用的话,最后一个被调用的后处理块的名称也会被附上。这些附加信息输出的起始列数就是所属入的非零正值数。在上面的例子中,第一个和最后一个被调用的后处理块名称输出开始于第四十列。如果是一个非零负值的话,所有被调用的后处理块名称都会被输出,不论有没有输出机器代码。这是非常有用的,有助于了解后处理里面的逻辑是怎么跑的,但是,结果有时候会变得非常非常的长。当然,如果bug2是零的话这些附加信息就没有了。bug3,不要管他,没啥用,历史原因留在这里,保持零就好了bug4,另一个很重要的参数。如果为1的话,会输出当前所到的NCI文件的行数。对比NCI文件就可以知道后处理逻辑跑到什么地方了。设为其他值另有用处,以后再说。以上这些调试信息,如果fastmode是yes或1的时候是不会出现的。把fastmode改为no或0,调试信息就会出现在输出里面了。这是V9版本的。如果用的是X的话,改fastmode是没有用的。X和V9很大的不同就是很多后处理开关变量被移到机器定义(MachineDefinition)和控制器定义(ControlDefinitoin)中了,fastmode就是其中之一。改动ControlDefiniton-NCOutput-PostDebugInformation来输出调试信息。还有,如果是X的话,所有预定义变量名和后处理块后面都要加$。Mastercam软件是由美国CNCSOFTWARE公司研制开发的基于微机的CAD(计算机辅助设计)和CAM(计算机辅助制造)系统。自1984年诞生以来,就以其强大的加工功能闻名于世。由于其较好的性能价格比(对硬件的要求不高,操作灵活,易学易用,能使企业很快见到效益),7是工业界和学校广泛采用的CAD和CAM系统。后置处理文件简称后处理文件,是一种可以由用户以回答问题的形式自行修改的文件,其扩展名为.PST。NC程序的生成受软件的后置处理程序的控制,不同数控系统的数控机床对应于不同的后置处理程序。Mastercam的后置处理程序内定成适应日本FANUC控制器的通用格式。在具体应用软件进行编程之前,一般要对当前的后处理程序进行修改和设定。国产的数控系统一般在Mastercam中没有对应的.PST后处理文件。我校的数控铣床采用的是国产的数控系统(HX2000M数控系统),同样在Mastercam中也没有对应的.PST后处理文件。Mastercam生成的NC代码需经多处修改后才能使用,极为不便。在数控教学的实践中我渐渐有这样的想法,能不能针对我校的数控系统开发专用的Mastercam后处理程序,更好地进行数控实习教学呢?经过一段时间的摸索,我尝试着对Mastercam的后处理程序进行了相应的修改。我使用的是Mastercam7.1的版本。首先分析了学校采用HX2000M系统的数控铣床的特点和它的G、M代码的格式。该系统不具有换刀功能,而且圆弧只能以I、J、K的形式编程。接着我反复比较Mastercam内置的几十种后处理程序所生成的NC程序,发现其中由MP-EZ.PST后处理程序生成的NC程序与HX2000M编程格式最为相近。我想格式相同之处越多,后处理程序修改的地方也就相对越少。于是我确定把MP-EZ.PST后处理程序作为我尝试修改的后处理程序。我用WINDOWS自带的写字板,打开MP-EZ.PST后处理程序,进行编辑修改。Mastercam7.1系统的MP-EZ.PST后处理文件由下面几个模块组成。1、Annotation(注释)。对后处理文件及其设定方法作一般性介绍,此部分内容一般都不需要修改。2、DEBUG/PROGRAMSWITCHES,debuggingandprogramswitches(系统程序规划)。此部分是MASTERCAM的后处理系统规划,一般不需要修改。3、Workcoordinateoutput,userdefined(工作设定)。把其中的pg92_sof#G92coordinatesettingatstart(G92的设定)/,n,G91,G28,Z0.,e/,n,G28,X0.,Y0.,e/,n,*sgwcs,*xh,*yh,*zh,e改成:pg92_sof#G92coordinatesettingatstartn,*sgwcs,*xh,*yh,*zh,e(设定工件坐标系)n,*speed,*spdlon,prange(设定主轴转速)删除了HX2000M数控
本文标题:MASTERCAM后处理修改
链接地址:https://www.777doc.com/doc-4079532 .html