| zz1983 |
2006-05-10 01:32 |
Mastercam系统配置后置处理说明
Mastercam系统配置的是适应单一类型控制系统的通用后置处理,该后置处理提供了一种功能数据库模型,用户根据数控机床和数控系统的具体情况,可以对其数据库进行修改和编译,定制出适应某一数控机床的专用后置处理程序。 aS{n8P6vW Mastercam系统后置处理文件的扩展名为PST,称为PST文件,它定义了切削加工参数、NC程序格式、辅助工艺指令,设置了接口功能参数等,其结构由八个部分组成: EZy)A$| 1. 注解 !&ayYu##{ 程序每一列前有“#”符号表示该列为不影响程序执行的文字注解。如: ceh j; # mi2-Absolute, or Incremental positioning ?U5{Wa85D 0=absolute # 448-8x 1=incremental |\<`Ib4j 表示mi2定义编程时数值给定方式,若mi=0为绝对值编程,mi=1为增量值编程。 ;R5`"` 在这一部分里,定义了数控系统编程的所有准备功能G代码格式和辅助功能M代码格式。 qL&[K>2z 2. 程序纠错 ?'Xj
g#}< 程序中可以插入文字提示来帮助纠错,并显示在屏幕上。如: H*QIB_ # Error messages (错误信息) .TMs bZ|j psuberror # Arc output not allowed U;V7 u/{ "ERROR-WRONG AXIS USED IN AXIS SUBSTITUTION", e }QcCS2)Ud 如果展开图形卷成旋转轴时,轴替换出错,则在程序中会出现上面引号中的错误提示。 S)k*?dQ##R 3. 定义变量的数据类型、使用格式和常量赋值 ] =xE 如规定G代码和M代码是不带小数点的两位整数,多轴加工中心的旋转轴的地址代码是A、B和C,圆弧长度允许误差为0.002,系统允许误差为0.00005,进给速度最大值为10m/min等。 3yY}04[9< 4. 定义问题 >#;.n(y 可以根据机床加工需要,插入一个问题给后置处理程序执行。 Av$^ 如定义NC程序的目录,定义启动和退出后置处理程序时的C-Hook程序名。 m
)zUU 5. 字符串列表 i]y<|W)Q3 字符串起始字母为s,可以依照数值选取字符串,字符串可以由两个或更多的字符来组成。 +p_CN*10H 字符串sg17,表示指定XY加工平面,NC程序中出现的是G17,scc1表示刀具半径左补偿,NC程序中出现的是G41,字符串sccomp代表刀具半径补偿建立或取消。 =wHVsdNCN 6. 自定义单节 axRV:w;E< 可以让使用者将一个或多个NC码作有组织的排列。 /k6MzFoid 自定义单可以是公式、变量、特殊字符串等: VT%NO'0 pwcs # G54+ coordinate setting at toolchange TJpD{p} if mil >1, pwcs_g54 OwUhdiG 表示用pwcs单节指代#G54+在换刀时坐标设定值,mil定义为工件坐标系(G54~G59) ,I$`-$_' 7. 预先定义的单节 vNY{j7l/W 使用者可按照数控程序规定的格式将一个或多个NC代码作有组织的排列,编排成一条程序段。 [f-?ymmT 8. 系统问答 9ni1f{k 后置处理软件提出了五组问题,供使用者回答,可按照注解文字、赋值变量、字符串等内容,根据使用的机床、数控系统进行回答。 .E1rqB G r
CHl?J 设计后置处理文件,一般是按照NC程序的结构模块来进行。根据NC程序的功能,后置处理文件分成六个模块如下: } FlT%>Gw [0[i5'K: 1. 文件头 s1$nvTzBr 文件头部分设定程序名称和编号,此外,SINUMERIK 810D系统还必须指定NC程序存放路径,并按照以下格式输出: ZW8vza “%_N_(程序名及编号)_(路径)”。 He/8=$c% NC程序可存放在主程序、子程序和工作程序目录下,扩展名分别为:MPF、SPF、WPD,一般放在工作程序目录下。因此经修改的Pst文件格式为: hh)`645=x Pheader # Start of file N1S{suic " %_N_", progname, "_WPD" (程序名、存放目录) uR4z&y 2. 程序起始 E`0? 在程序开始,要完成安全设定、刀具交换、工件坐标系的设定、刀具长度补偿、主轴转速控制、冷却液控制等,并可显示编程者、编程曰期、时间等注解。 p* (JjH 修改后的有刀具号Pst文件开头格式如下: 2K6qY)/_ # Start of file for non-zero tool number /?'FE 7Y ...... o>i4CCU+ pspindle (主轴转速计算) q&-`,8# pcom_movbtl (移动设备) k&q;JyUi ptoolcomment (刀具参数注解) K5VWt)Z# ...... 7P5)Z-K[ pbld, n, *sgcode, *sgplane, "G40", "G80", *sgabsinc Z1f8/?`W (快进、XY加工平面、取消刀补、取消固定循环、绝对方式编程) ,~$p,ALwN7 if mil <=one, pg92_rtrnz, pg92_rtrn, pg92_g92 (返回参考点) n;C
:0 ...... wY%} pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, *speed, *spindle, pgear, pcan1 m@F`!qY~Y\ (快进至某位置、坐标系编置、主轴转速等) EHIF>@TZ pbld, n, pfzout, *tlngno, scoolant, [ if stagetool=one, *next_tool] Y%aCMP9j~9 (安全高度、刀长补偿、开冷却液) @|m/djN5x pcom_movea (加工过程) FP`b>E qOH 3. 刀具交换 v2\FA(BPn 刀具交换执行前,须完成返回参考点、主轴停止动作,然后换刀,接着完成刀具长度补偿、安全设定、主轴转速控制。 Y;Dp3v! Pst文件中用自定义单节ptlchg指代换刀过程,编辑修改后的程序如下: =tn)}Y.<e Ptlchg # Tool change rgv?gaQ> ...... o5O#vW2Il& ptoolcomment (新刀参数注解) \gGW8Q; comment (插入注解) 7\[@m3s if stagetool <> two, pbld, n, *t, e (判断、选刀) ;_I8^? d n, "M6" (换刀) vjCu4+w($Z pindex (输出地址) <C iSK! pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, *speed, *spindle, pgear, pcan1 8)3*6+D (快进至某位置、坐标系偏置、主轴转速等) "5!oi]@>( pbld, n, pfzout, *tlngno, "M7", [if stagetool=one, *next_tool] |\t-g"~sN (安全高度、刀长补偿号、开冷却液) *?>T,gx} pcom_movea (加工过程) [`[|l
4. 加工过程 uEP*iPLD@ 这一过程是快速移动、直线插补、圆弧插补、刀具半径补偿等基本加工动作。 J#(LlCs?@c 对于几乎所有系统,这些加工动作的程序指令基本相同。只是注意SINUMERIK 810D系统的刀具长度补偿值由字母D后加两位数字调用,不需要G43/G44指令;而半径补偿值则由G41/G42调用,不需要再接地址代码。用G40取消刀具长度和刀具半径补偿。 mh#a#< 5. 切削循环 mb3"U"ohs Mastercam软件提供了6种内定的孔加工固定循环方式:一般钻削(Drill/Cbore)、深孔啄钻(Peck Drill)、断屑钻(Chip Break)、右攻丝(Tap)、精镗孔(Bore#1)、粗镗孔(Bore #2),通过杂项选项(Misc #1/Misc #2)可设定左攻丝、背镗孔、盲孔镗孔、盲孔铰孔等循环,并采用G73~G89代码来表示。 IGQFtO/x 如对于深孔钻削固定循环,Mastercam采用的格式为:G83 X_Y_Z_R_Q_F;而SINUMERIK 810D系统用CYCLE83指代深孔钻削循环,其NC程序要求给出循环加工所有参数,输出格式为: 7#a-u<HF" CYCLE83(RTP,RFP,SDIS,DP,DPR,FDEP,FDPR,DAM,DTB,DTS,FRF,VARI) rJTa 在pst文件中需按SINUMERIK 810D系统格式进行定义、修改和编写。 6ex/TySM 6. 程序结尾 9};8?mucr 程序结尾一般情况下是取消刀补、关冷却液、主轴停止、执行回参考点,程序停止等动作。下面是修改后的pst程序结尾: ZzpUUH/r Ptoolend_t #End of tool path, toolchange 70nqD>M4 ...... (D&3G;0tK pbld, n, sccomp, "M5", *scoolant, e (取消刀补、主轴停止、关冷却液) P=Jo+4O pbld, n, *sg74, "Z1=0. X1=0. Y1=0.", e (返回参考点) n\'4 if mi2=one, pbld, n, *sg74, "X1=0.", "Y1=0.", protretinc, e XJ\DVZ else, protretabs (程序结束)
|
|