找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5783|回复: 5

[MasterCAM] Mastercam后置处理文件及其设定方法详细说明

[复制链接]

14

主题

43

回帖

445

积分

机械村良民

UID
787
威望
0
机械币
84
活力
-4
发表于 2015-1-12 16:38:14 | 显示全部楼层 |阅读模式
Mastercam后置处理文件及其设定方法详细说明

Mastercam系统后置处理文件的扩展名为PST,称为PST文件,它定义了切削加工参数、NC程序格式、辅助工艺指令,设置了接口功能参数等,其结构由八个部分组成:
1. 注解
程序每一列前有“#”符号表示该列为不影响程序执行的文字注解。如:
# mi2-Absolute, or Incremental positioning
0=absolute
1=incremental
表示mi2定义编程时数值给定方式,若mi=0为绝对值编程,mi=1为增量值编程。
在这一部分里,定义了数控系统编程的所有准备功能G代码格式和辅助功能M代码格式。
2. 程序纠错
程序中可以插入文字提示来帮助纠错,并显示在屏幕上。如:
# Error messages (错误信息)
psuberror # Arc output not allowed
"ERROR-WRONG AXIS USED IN AXIS SUBSTITUTION", e
如果展开图形卷成旋转轴时,轴替换出错,则在程序中会出现上面引号中的错误提示。
3. 定义变量的数据类型、使用格式和常量赋值
如规定G代码和M代码是不带小数点的两位整数,多轴加工中心的旋转轴的地址代码是A、B和C,圆弧长度允许误差为0.002,系统允许误差为0.00005,进给速度最大值为10m/min等。
4. 定义问题
可以根据机床加工需要,插入一个问题给后置处理程序执行。
如定义NC程序的目录,定义启动和退出后置处理程序时的C-Hook程序名。
5. 字符串列表
字符串起始字母为s,可以依照数值选取字符串,字符串可以由两个或更多的字符来组成。
字符串sg17,表示指定XY加工平面,NC程序中出现的是G17,scc1表示刀具半径左补偿,NC程序中出现的是G41,字符串sccomp代表刀具半径补偿建立或取消。
6. 自定义单节
可以让使用者将一个或多个NC码作有组织的排列。
自定义单可以是公式、变量、特殊字符串等:
pwcs # G54+ coordinate setting at toolchange
if mil >1, pwcs_g54
表示用pwcs单节指代#G54+在换刀时坐标设定值,mil定义为工件坐标系(G54~G59)
7. 预先定义的单节
使用者可按照数控程序规定的格式将一个或多个NC代码作有组织的排列,编排成一条程序段。
8. 系统问答
后置处理软件提出了五组问题,供使用者回答,可按照注解文字、赋值变量、字符串等内容,根据使用的机床、数控系统进行回答。

14

主题

43

回帖

445

积分

机械村良民

UID
787
威望
0
机械币
84
活力
-4
 楼主| 发表于 2015-1-12 16:38:45 | 显示全部楼层
设计后置处理文件,一般是按照NC程序的结构模块来进行。根据NC程序的功能,后置处理文件分成六个模块如下:

1. 文件头
文件头部分设定程序名称和编号,此外,SINUMERIK 810D系统还必须指定NC程序存放路径,并按照以下格式输出:
“%_N_(程序名及编号)_(路径)”。
NC程序可存放在主程序、子程序和工作程序目录下,扩展名分别为:MPF、SPF、WPD,一般放在工作程序目录下。因此经修改的Pst文件格式为:
Pheader # Start of file
" %_N_", progname, "_WPD" (程序名、存放目录)
2. 程序起始
在程序开始,要完成安全设定、刀具交换、工件坐标系的设定、刀具长度补偿、主轴转速控制、冷却液控制等,并可显示编程者、编程日期、时间等注解。
修改后的有刀具号Pst文件开头格式如下:
# Start of file for non-zero tool number
......
pspindle (主轴转速计算)
pcom_movbtl (移动设备)
ptoolcomment (刀具参数注解)
......
pbld, n, *sgcode, *sgplane, "G40", "G80", *sgabsinc
(快进、XY加工平面、取消刀补、取消固定循环、绝对方式编程)
if mil <=one, pg92_rtrnz, pg92_rtrn, pg92_g92 (返回参考点)
......
pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, *speed, *spindle, pgear, pcan1
(快进至某位置、坐标系编置、主轴转速等)
pbld, n, pfzout, *tlngno, scoolant, [ if stagetool=one, *next_tool]
(安全高度、刀长补偿、开冷却液)
pcom_movea (加工过程)
3. 刀具交换
刀具交换执行前,须完成返回参考点、主轴停止动作,然后换刀,接着完成刀具长度补偿、安全设定、主轴转速控制。
Pst文件中用自定义单节ptlchg指代换刀过程,编辑修改后的程序如下:
Ptlchg # Tool change
......
ptoolcomment (新刀参数注解)
comment (插入注解)
if stagetool <> two, pbld, n, *t, e (判断、选刀)
n, "M6" (换刀)
pindex (输出地址)
pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, *speed, *spindle, pgear, pcan1
(快进至某位置、坐标系偏置、主轴转速等)
pbld, n, pfzout, *tlngno, "M7", [if stagetool=one, *next_tool]
(安全高度、刀长补偿号、开冷却液)
pcom_movea (加工过程)
4. 加工过程
这一过程是快速移动、直线插补、圆弧插补、刀具半径补偿等基本加工动作。
对于几乎所有系统,这些加工动作的程序指令基本相同。只是注意SINUMERIK 810D系统的刀具长度补偿值由字母D后加两位数字调用,不需要G43/G44指令;而半径补偿值则由G41/G42调用,不需要再接地址代码。用G40取消刀具长度和刀具半径补偿。
5. 切削循环
Mastercam软件提供了6种内定的孔加工固定循环方式:一般钻削(Drill/Cbore)、深孔啄钻(Peck Drill)、断屑钻(Chip Break)、右攻丝(Tap)、精镗孔(Bore#1)、粗镗孔(Bore #2),通过杂项选项(Misc #1/Misc #2)可设定左攻丝、背镗孔、盲孔镗孔、盲孔铰孔等循环,并采用G73~G89代码来表示。
如对于深孔钻削固定循环,Mastercam采用的格式为:G83 X_Y_Z_R_Q_F;而SINUMERIK 810D系统用CYCLE83指代深孔钻削循环,其NC程序要求给出循环加工所有参数,输出格式为:
CYCLE83(RTP,RFP,SDIS,DP,DPR,FDEP,FDPR,DAM,DTB,DTS,FRF,VARI)
在pst文件中需按SINUMERIK 810D系统格式进行定义、修改和编写。

14

主题

43

回帖

445

积分

机械村良民

UID
787
威望
0
机械币
84
活力
-4
 楼主| 发表于 2015-1-12 16:38:58 | 显示全部楼层
6. 程序结尾
程序结尾一般情况下是取消刀补、关冷却液、主轴停止、执行回参考点,程序停止等动作。下面是修改后的pst程序结尾:
Ptoolend_t #End of tool path, toolchange
......
pbld, n, sccomp, "M5", *scoolant, e (取消刀补、主轴停止、关冷却液)
pbld, n, *sg74, "Z1=0. X1=0. Y1=0.", e (返回参考点)
if mi2=one, pbld, n, *sg74, "X1=0.", "Y1=0.", protretinc, e
else, protretabs (程序结束)
# POST 名称 : wgkG54
# 类型 : MILL
# 机床名称 : GENERIC FANUC
# 控制器名称 : GENERIC FANUC
# 描述 : GENERIC FANUC 3 AXIS MILL POST
# Associated Post : NONE
# 车/铣复合 : NO
# 4-axis/Axis subs. : NO
# 五轴 : NO
# 子程序支持 : NO
# 自动换刀 : NO
# 工作坐标系 : G54
# Executable : MP 8.00
#
#
#
# 这个POST支持FANUC控制器普通三轴铣床的的G 代码输出,
# 不支持自动换刀,有最大圆弧报警
# 它来源于MP-EZ.PST
# 是针对Mastercam Mill V8的特征而设计的
#
#
# 欢迎各位试用此后处理程序,提供意见反馈,
# 地址: 福建漳州新华北路56号 力佳股份有限公司 吴桂凯
# 电话: 0596-2931417 (19:00-23:30)
# E-MAIL: wwggkk@21cn.com
# wwggkk@sina.com

# --------------------------------------------------------------------------
# 修改日志:
# --------------------------------------------------------------------------
# Programmers Note:
# CNC 05/01/00 - Initial post setup, jce
# 2002-10-11 - 去掉自动换刀,吴桂凯
# 2002-10-12 - 增加中文注释,吴桂凯
# 2002-10-21 - 增加最大圆弧警告,吴桂凯
# 2002-11-05 - 修改坐标系为G54,吴桂凯
# --------------------------------------------------------------------------
# 特征:
# --------------------------------------------------------------------------
#
#
# 下列 Misc.(杂项) 必须使用整数:
#
# mi2 - 绝对或增量坐标 at top level
# 0 = 绝对
# 1 = 增量
#
# mi3 - 选择G28或G30来执行参考点回归.
# 0 = G28, 1 = G30
#
# Canned text:
# 在轮廓点里插入"cantext".以允许/禁止 下列Mastercam里许可的功能,
# Entering cantext on a contour point from within Mastercam allows the
# following functions to enable/disable.

# Cantext 值:
# 1 = Stop = 输出 "M00" 停止码
# 2 = Ostop = 输出 "M01" 选择停止码
# 3 = Bld on = 在 NC 单节打开 单节删除码(\)
# 4 = bLd off = 在 NC 单节关闭 单节删除码(\)
#
#
# 钻孔:
# 在这个 POST 里支持所有的钻孔方法.
#
# 附加注意事项:
# 1) G54 calls are generated where the work offset entry of 0 = G54,
# 1 = G55, etc.
# 2) 由NCI变量"met_tool"决定是否使用米制
#
# 3) 以增量方式从换刀起始位置计算运动量.
# 起始位置通常定义为所有换刀时刀具所处的最后位置
# Incremental mode calculates motion from home position at toolchanges.
# The home position is used to define the last position of the tool
# for all toolchanges.
# 4) 变量 'absinc' 现已被预先定义, 设定 mi2 (杂项整数)以定义
# 绝对/增量程序输出.
#
# --------------------------------------------------------------------------
# Debugging and Factory Set Programtches 调试和加工设置程序切换
# --------------------------------------------------------------------------
m_one : -1 #定义常数
zero : 0 #定义常数
one : 1 #定义常数
two : 2 #定义常数
three : 3 #定义常数
four : 4 #定义常数
five : 5 #定义常数
c9k : 9999 #定义常数

fastmode : 1 #Posting 速度最佳化
bug1 : 2 #0=不显示, 1=普通列表框, 2=编辑器
bug2 : -30 #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 #不执行 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 #忽视 cantext 入口 on move with tlchng_aft
newglobal : 1 #全局变量错误检测
getnextop : 0 #建立下一个变量表

1

主题

21

回帖

112

积分

机械村良民

UID
50399
威望
0
机械币
18
活力
10
发表于 2017-7-15 16:06:57 | 显示全部楼层

0

主题

6

回帖

5

积分

初入机械村

UID
50606
威望
0
机械币
1
活力
2
发表于 2017-7-23 18:20:13 | 显示全部楼层
本人菜鸟一个,来和大神学习一下

0

主题

86

回帖

4

积分

初入机械村

UID
65612
威望
0
机械币
1
活力
4
发表于 2019-12-28 18:45:00 | 显示全部楼层
谢谢楼主!!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|机械村 ( 渝ICP备17010994号-1 )

GMT+8, 2024-4-26 09:37 , Processed in 0.047469 second(s), 3 queries , Gzip On, Redis On.

Powered by Jixiecun.com

Copyright © 2012-2024

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