世界先进制造技术论坛AMT—领先的高科技先进制造产业服务平台

发表于 2015-3-29 20:53:50 | 显示全部楼层 |阅读模式


[tr][/tr]
一 前言Mastercam是一套广泛应用于具有复杂外形零件的建模和CAM加工的软件,它可以根据已建模型产生精确可靠的刀具路径,然后经由所选的不同控制系统的后置处理程序输出不同机床用的NC加工程序。该软件提供了许多种类的后置处理程序,几乎涵盖了所有主流的数控机床(或控制系统)。由于数控机床的控制系统版本很多,直接应用软件所提供的后置处理程序产生的NC程序一般都要经过简单的改动后才能投入生产中去,虽然每次改动的工作量不大,但长此以往显得很繁琐且容易出错。经过笔者的研究发现,可以通过更改后置处理程序一劳永益的解决问题,这样还可以使产生的NC程序符合自己的编程习惯。
二 MAHO加工中心与Mastercam软件坐标系统的转换

图1
某型号MAHO加工中心为五坐标立卧转换式,默认为卧式,坐标系统如图1所示:
当使用卧式加工时主轴与Z轴方向平行,当使用立式加工时主轴与Y轴方向平行。Mastercam使用MPMAHOXY.pst后置处理G17平面下的NC程序,用MPMAHOXZ.pst后置处理G18平面平面下的NC程序,而Mastercam系统中3维加工视图的刀路平面默认是TOP面,与图1中的G17卧式加工坐标系统相吻合,所以利用MPMAHOXY.pst作为后置处理程序产生的G17下的卧式NC加工程序的坐标系统没有变化,程序相对正确,几乎不用修改。而使用MPMAHOXZ.pst作为后置处理程序产生的G18下的立式NC加工程序的坐标系统发生了变化,不能直接用于生产,需要经过一些修改才行。


图2

经过研究发现,MPMAHOXZ.pst在处理NC程序过程中仍然使用的是G17平面状态下的模型以及刀具路径,只是在生成NC程序时坐标轴的设定做了变动,变化过程如图2所示。第一步:将整个坐标系及工件绕X轴旋转-90度;第二步:将Y、Z坐标值互换,X坐标值改变方向(这样做的数控程序完全符合笛卡尔坐标系)。此时大家可以看到现在的坐标系的方向与G18立式加工平面的X、Z坐标方向相反,所以不能直接用于生产。在不修正后置处理程序的情况下,有两种方法可改动NC程序进行加工:方法一是给程序中加入坐标系旋转指令G93 B4=180,就是将整个坐标系绕现在的Y轴旋转180度;方法二是使用镜像加工指令G73 X-1 Z-1,就是分别将NC程序中的X、Z坐标值变向。虽然这样做可以达到加工的目的,但操作者反应不直观,因为指令中的走刀方向与实际的走刀方向是相反的,给操作者带来了视觉误差。所以很有必要对立式加工的后置处理程序做以修正。
三 MPMAHOXZ.pst后置处理程序中坐标变换的修正
根据以上分析,我们可以通过修正后置处理程序MPMAHOXZ.pst中的部分语句达到我们的目的,为了满足由卧铣G17模型变立铣后的坐标系统的统一,我们也可通过两步完成,第一步:将整个坐标系及工件绕X轴旋转-90度(与图2中第一步相同);第二步:将Z变为Y, Y变为Z的负方向,X坐标值不变(见图1中立式G18平面)。
原程序坐标系变化的部分程序段如下(后面方括号内的中文为解释语句,修改程序时无需加入):

# --------------------------------------------------------------------------

# Axis output formats – Linear [坐标轴输出格式—线性]

# --------------------------------------------------------------------------

fmt X 1 x # X Axis Pos [X轴名称不变]

fmt Z 1 y # Y Axis Pos [Z轴变为Y轴]

fmt Y 1 z # Z Axis Pos [Y轴变为Z轴]

# --------------------------------------------------------------------------

# Axis output formats – Circular [坐标轴输出格式—圆形]

# --------------------------------------------------------------------------

fmt I 1 xc # Arc Center X [圆心X坐标为I]

fmt K 1 yc # Arc Center Y [圆心Y坐标变为K]

fmt J 1 zc # Arc Center Z [圆心Z坐标变为J]

# --------------------------------------------------------------------------

# Formulas - Use \':\' instead of \'=\' to initialize variables [坐标值的比例]

# --------------------------------------------------------------------------

scalex : -1.0 # Scaling of .NCI at input - x,y,z,i,j,k [X坐标取负]

scaley : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k [Y符号不变]

scalez : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k [Z符号不变]

# --------------------------------------------------------------------------

现在仅需要修改坐标值的比例部分就可以使后置出来的程序坐标系统无需另外更改了,以下为改正后的内容:

# --------------------------------------------------------------------------

scalex : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k [X坐标不变]

scaley : -1.0 # Scaling of .NCI at input - x,y,z,i,j,k [Y坐标取负]

scalez : 1.0 # Scaling of .NCI at input - x,y,z,i,j,k [Z符号不变]

# --------------------------------------------------------------------------
(因为Y轴后来变为了Z轴的负方向,所以这里给Y坐标取了负号)
四 后置处理程序中程序头尾的完善
以MPMAHOXZ.pst程序为例,说明完善的过程。
因MAHO加工中心也具有加工图形模拟显示功能,所以在数控加工程序前要加入MAHO用的工件毛坯尺寸,而工件的毛坯尺寸要调用Mastercam中的毛坯尺寸的某些值,这些值的定义和计算的程序段要加入到定义参数项的行后,程序段如下:

fmt 9 stck_x [定义Mastercam中毛坯中心点X坐标]

fmt 9 stck_y [定义Mastercam中毛坯中心点Y坐标]

fmt 9 stck_z [定义Mastercam中毛坯中心点Z坐标]

fmt 9 stck_ht [定义Mastercam中毛坯长度]

fmt 9 stck_wdth [定义Mastercam中毛坯宽度]

fmt 9 stck_thck [定义Mastercam中毛坯高度]

fmt 9 blk_xmin [定义MAHO立式状态下毛坯起点X坐标]

fmt 9 blk_ymin [定义MAHO立式状态下毛坯起点Y坐标]

fmt 9 blk_zmin [定义MAHO立式状态下毛坯起点Z坐标]

fmt 9 blk_hztwd [定义MAHO立式状态下毛坯高度增量]

blk_xmin=stck_x-stck_ht/2 [计算MAHO立式状态下毛坯起点X坐标值]

blk_zmin=-(stck_y-stck_wdth/2) [计算MAHO立式状态下毛坯起点Z坐标值]

blk_ymin=stck_z-stck_thck [计算MAHO立式状态下毛坯起点Y坐标值]

blk_hztwd=-stck_wdth [计算MAHO立式状态下毛坯高度方向的增量]
设定出毛坯尺寸后就可以改动输出部分的程序了,经过改动后的部分程序如下:

pheader

"%PM"

progno

n, "M54" [加入立铣头回位指令]

n, "G18" [加入G18平面指令]

n, "G54" [由G52改为G54,G52只是参考点的暂存值,很容易被误修改]

n, "G98","X",blk_xmin,"Y",blk_ymin,"Z",blk_zmin,"I",stck_ht, "J",stck_thck,"K",blk_hztwd [加入切削模拟范围指令]

n, "G99","X",blk_xmin,"Y",blk_ymin,"Z",blk_zmin,"I",stck_ht, "J",stck_thck,"K",blk_hztwd [加入毛坯范围指令]

n, "G90" [加入绝对坐标指令]

psof0 # Start of file for tool zero

pinit

n, "G0 A0 B0 M13" [加入A、B坐标回零指令]

n, pcoolon

psof # Start of file for non-zero tool number

pinit

n, ss, t, "M6","(D",tldia,")" [加入刀具直径辅助说明]

n, "G0 A0 B0 M13" [换刀后A、B坐标再次回零,防止操作者换刀后检测工件后误动作A、B坐标,确保在下一刀时参考点回位]

……

n, "G53" [撤消G54参考点]

n, "G0 X780 Y450 Z450" [机床回到检测工件位置]

n, "G0 A0 B0" [在机床坐标系统下回零]

n, "M30"
同理,MPMAHOXY.pst也可以参考上面的程序进行完善。
五 结论
Mastercam的后置处理程序很全面,但在对特定的数控系统使用时还需要进行一些小的改动。另外在改动过程中一定要做好原程序的备份,还要反复比较改动后输出的NC程序是否正确,努力使修改过的NC程序符合自己的编程习惯。

回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

主题 1 | 回复: 1

QQ|联系我们|法律声明|用户协议|AMT咨询|商务合作|会员入驻|积分充值|积分商城|积分奖励规则|TradEx全球购|加入QQ技术群|添加企业微信|加入微信技术群| 世界先进制造技术论坛™(简称AMT™, 制造知网™) ( 沪ICP备12020441号-3 )

GMT+8, 2024-11-18 02:29 , Processed in 0.035006 second(s), 35 queries , Redis On.

论坛声明: 世界先进制造技术论坛(制造知网) 属纯技术性非赢利性论坛,请勿发布非法言论、非法广告等信息,多谢合作。
本论坛言论纯属发表者个人意见且会员单独承担发表内容的法律责任,与本论坛立场无关;会员参与本论坛讨论必须遵守中华人民共和国法律法规,凡涉及政治言论、色情、毒品、违法枪支销售等信息一律删除,并将积极配合和协助有关执法机关的调查,请所有会员注意!
本论坛资源由会员在本论坛发布,版权属于原作者;论坛所有资源为会员个人学习使用,请勿涉及商业用途并请在下载后24小时删除;如有侵犯原作者的版权和知识产权,请来信告知,我们将立即做出处理和回复,谢谢合作!

合作联系: 双日QQ客服:3419347041    单日QQ客服:3500763653    电话021-37709287    合作问题投诉:QQ:2969954637    邮箱:info@amtbbs.org    微信公众号:AMTBBS

 

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