|
|

楼主 |
发表于 2013-10-14 11:23:16
|
显示全部楼层
来自: 中国湖北武汉
MasterCAM9后处理的修改:" x4 T+ ?; S$ A
MasterCAM系统缺省的后处理文件为MPFAN.PST,适用于FANUC(发那科)数控代码的控制器。其它类型的控制器需选择对应的后处理文件。5 w. I* ]' X/ s" X- |0 h) U
由于实际使用需要,用缺省的后处理文件时,输出的NC文件不能直接用于加工。原因是: ) o4 n2 o) g' \! H
⑴进行模具加工时,需从G54~G59的工件坐标系指令中指定一个,最常用的是G54。部分控制器使用G92指令确定工件坐标系。对刀时需定义工件坐标原点,原点的机械坐标值保存在CNC控制器的G54~G59指令参数中。CNC控制器执行G54~G59指令时,调出相应的参数用于工件加工。采用系统缺省的后处理文件时,相关参数设置正确的情况下可输出G55~G59指令,但无法实现G54指令的自动输出。5 c1 S0 B5 L- p& C4 `' x# d
⑵FANUC.PST后处理文件针对的是4轴加工中心,而目前使用量最大的是3轴加工中心,多出了第4轴数据“A0.”。1 M8 r2 I3 m2 J& k/ m- K
⑶不带刀库的数控铣使用时要去掉刀具号、换刀指令、回参考点动作。
# V- S4 n5 g- J+ K( N+ Q" x9 J ⑷部分控制器不接受NC文件中的注释行。# n- l' D5 D1 s4 u# ^+ }1 e
⑸删除行号使NC文件进一步缩小。
' ^7 u" Y' X$ t# G: f0 v! b ⑹调整下刀点坐标值位置,以便于在断刀时对NC文件进行修改。; y/ G6 x1 u" p0 }/ o9 u
⑺普通及啄式钻孔的循环指令在缺省后处理文件中不能输出。使用循环指令时可大幅提高计算速度,缩小NC文件长度。
) y% e( F0 S7 w: ^) D( n 如果要实现以上全部要求,需对NC文件进行大量重复修改,易于出现差错,效率低下,因此必须对PST(后处理)文件进行修改。修改方法如下:2 V Q2 o5 m$ Q4 b! _4 Q2 |
1、增加G54指令(方法一):
. B$ s4 c* ]* {, [( y O 采用其他后处理文件(如MP_EZ.PST)可正常输出G54指令。由于FANUC.PST后处理文件广泛采用,这里仍以此文件为例进行所有修改。其他后处理文件内容有所不同,修改时根据实际情况调整。
( d0 ~' e7 ]+ C2 J6 { 用MC9自带的编辑软件(路径:C:\Mcam9\Common\Editors\Pfe\ PFE32.EXE)打开FANUC.PST文件(路径:C:\Mcam9\Mill\Posts\ MPFAN.PST)9 G! R! M- m7 \9 v1 f; ?- Y' X6 c
单击【edit】→【find】按钮,系统弹出查找对话框,输入“G49”。
9 e+ x9 U5 b2 Z( ^7 ~ 查找结果所在行为:
1 b1 |, L7 n% K( S. w pbld, n, *sgcode, *sgplane, "G40", "G49", "G80", *sgabsinc, e6 W S* K% k2 K# l R
插入G54指令到当前行,将其修改为:) s3 t. X8 ?7 D4 e8 f
pbld, n, *sgcode, *sgplane, "G40", "G49", "G80", *sgabsinc, "G54",e. E' t6 f1 v" @' ]) Q* {
输出的NC文件修改前对应位置指令为:
& P9 V# R1 q/ W3 A V N102G0G17G40G49G80G909 R5 r5 a/ w, Y5 y9 I7 [( @ B
修改后变为:! R L' F0 c c! Q/ _
N102G0G17G40G49G80G90G54
9 w3 K! S4 R- L$ Q' l& a- [2 F+ J 查找当前行的上一行:! Z( Q7 c+ q' J" {: h- V
pbld, n, *smetric, e2 g6 i4 a7 V* F: W
将其整行删除,或加上“#”成为注释行:
& K8 ^2 [0 }, p/ Z+ t0 D # pbld, n, *smetric, e
% n: p9 i# i9 H k( U. K! r9 g4 [ 修改后G21指令不再出现,某些控制器可不用此指令。注意修改时保持格式一致。G21指令为选择公制单位输入,对应的英制单位输入指令为G20。0 s& p3 [2 ~7 N. [" \: A% _
2、增加G54指令(方法二): " M! b+ g8 H" M+ Y
单击按钮,系统弹出查找对话框,输入“force_wcs”,单击按钮,查找结果所在行为:; l0 e$ h S2 P
force_wcs : no #Force WCS output at every toolchange?
) f6 F0 x' M7 v9 ] 将no改为yes,修改结果为:+ N: ]+ |2 \+ j- }
force_wcs : yes #Force WCS output at every toolchange?3 t8 n) ]1 I% V3 f1 A
输出的NC文件修改前对应位置指令为:7 v2 ]) V5 r7 j2 O
N106G0G90X16.Y-14.5A0.S2200M37 u5 ?8 N5 T7 ^2 n* d- R
修改后变为:6 x: U/ }4 c9 O$ A) y& {
N106G0G90G54X16.Y-14.5A0.S2200M37 w# ~( q: P, @9 h" [% m9 [$ |
前一方法为强制输出固定指令代码,如需使用G55~G59指令时,有所不便。多刀路同时输出时,只在整个程序中出现一次G54指令。后一方法同其他后处理文件产生G54指令的原理相同,多刀路同时输出时,每次换刀都会出现G54指令,也可根据参数自动转换成G55~G59指令。4 p$ n2 \. T: q* E) M }
输出三轴加工中心程序的FANUC后处理文件为MP_EZ.PST,输出4轴加工中心程序的三菱控制器后处理文件为MP520AM.PST。" b9 S( \$ N7 v( w: U
3、删除第四轴数据“A0.”,以适应三轴加工中心:! N3 W4 b" y$ } @0 ^
单击按钮,系统弹出查找对话框,输入“Rotary Axis”,单击按钮,查找结果所在行为:
0 j+ k+ I# E6 d" M 164. Enable Rotary Axis button? y! B6 c- r2 n: d9 N# Z; d% s
将其修改为:- z' }5 ~4 A, @: {
164. Enable Rotary Axis button? n3 [( r0 t% [' _# q% V# b7 ^% Q1 z
修改后第四轴数据不再出现。
! v, n. Z8 J1 [4 o 4、删除刀具号、换刀指令、回参考点指令,适应无刀库的数控铣机床:1 H! w7 w; E* d, B1 Y; }; J
单击按钮,系统弹出查找对话框,输入“M6”,单击按钮,查找结果所在行为:5 E T3 ~. z) |4 ~- |3 k" L
if stagetool >= zero, pbld, n, *t, "M6", e
, J, {3 ~3 m1 ?! ~& s$ s 将其修改为:
?1 x! x6 t; L. s if stagetool >= zero, e # pbld, n, *t, "M6",! ?4 G; ~" S7 V: `1 s3 U/ N
另一个换刀的位置所在行为:8 a- G$ P* \; ?: ~
pbld, n, *t, "M6", e0 e' Z$ z) @4 \6 R
将其删除或改为注释行:
|# |3 v5 k( c; e4 E #pbld, n, *t, "M6", e ( ~% A+ h4 j" w0 b7 l% \# v: {! U8 l
修改后换刀指令行不再出现,通常修改第一个出现“M6”指令的位置即可。
. i4 M) I1 `: I, f5 a. U 单击按钮,系统弹出查找对话框,输入“*sg28ref”,单击按钮,查找结果所在行为:
. d; Y) U( ?! U$ v! } pbld, n, sgabsinc, sgcode, *sg28ref, "Z0.",scoolant, e2 P# F8 H% a+ b3 [8 ^
pbld, n, *sg28ref, "X0.", "Y0.", protretinc, e# s+ l9 i* M8 d2 o
将其修改为:" [4 L) ]% ~0 T) h O* Y3 v+ n
pbld, n, scoolant, e0 G" n( v5 F8 Z
# pbld, n, *sg28ref, "X0.", "Y0.", protretinc, e
7 [0 Q+ u# {1 K' T) ^- g 输出的NC文件修改前对应位置指令为:6 s2 l: O+ O9 S) t! L: ]
N116G91G28Z0.M9; C& `1 b& X! j4 u! E0 z9 l) A, O
修改后变为:+ ? F. S+ p! O
N116M9
: y6 ?9 q {' R& A3 Q/ Q8 E PST文件中另有两个类似位置,如使用G92指令确定工件坐标,可对其适当修改。加工结束后,机床各轴不回参考点,便于手动换刀时节省时间。0 Z0 k2 @! _( a" L7 W6 @1 t% }" J
5、删除NC文件的程序名、注释行:) Q5 u# u" B0 N" ?
单击 按钮,系统弹出查找对话框,输入“%”,单击 按钮,查找结果所在行为:
0 u+ B8 b7 x4 E3 m' {+ ?& ~! p- i "%", e
, H6 ?1 g8 L3 D! T7 K3 I# K( m* ? *progno, e( }5 M1 S; M9 b) `; e
"(PROGRAM NAME - ", progname, ")", e9 ]! {6 O' i& K8 X; N* l9 W6 S: D
"(DATE=DD-MM-YY - ", date, " TIME=HH:MM - ", time, ")", e
3 `! l$ z7 t8 `# C. P& w; j 将其删除或改为注释行:0 e1 A' ^# w! y7 q
"%", e- J' r/ f. i6 I: u3 t c$ I+ ?) H
# *progno, e
. ]9 L, J- {. | # "(PROGRAM NAME - ", progname, ")", e, G$ h/ }- o8 n5 Z8 q
# "(DATE=DD-MM-YY - ", date, " TIME=HH:MM - ", time, ")",; @3 B' a! n3 s0 n
输出的NC文件修改前对应位置指令为:
; y- R0 f$ p' F6 H7 i O0010
, n) ^/ R0 M- `7 A (PROGRAM NAME - A2)
8 Z1 N8 I/ Z8 u0 s (DATE=DD-MM-YY - 25-12-04 TIME=HH:MM - 10:45)
' r9 a, X. X! M% \: w4 S, O* _8 a- |2 Y 修改后以上指令行不再出现。, Y2 n; ]* T/ i& {5 S$ N [
单击按钮,系统弹出查找对话框,输入“pstrtool”,单击 按钮,查找结果所在行为:
2 x! e* T/ |! ~- F "(", pstrtool, *tnote, *toffnote, *tlngnote, *tldia, ")", e+ |" A% }' J3 ]8 X
将其删除或改为注释行:
' }( I4 E* M. m! {; V #"(", pstrtool, *tnote, *toffnote, *tlngnote, *tldia, ")", e/ z3 e/ S6 V- ]4 z
输出的NC文件修改前对应位置指令为:, I, X7 j. R1 B
(D16R8.0 TOOL - 2 DIA. OFF. - 0 LEN. - 0 DIA. - 16.)
) f3 y4 Q% ~( C, ]+ n7 ] 修改后以上指令行不再出现。此注释行指明当前刀路所使用的刀具参数,可用于加工前核对加工单,建议保留。法兰克及三菱控制器可以接受注释内容。! k& G& C9 O, b4 o3 X- S& v) I
6、取消行号:/ ]# {% C d8 V( {4 r4 _' q
单击按钮,系统弹出查找对话框,输入“omitseq”,单击 按钮,查找结果所在行为:6 W7 x4 D# K( K7 |2 K H5 Q/ c( T
omitseq : no #Omit sequence no.9 B& k+ e5 l: |- L
将其修改为: ?7 Z$ R! s4 W& g8 ?' l
omitseq : yes #Omit sequence no." p) w% {6 f7 u( Y
修改后行号不再出现。
. W* A/ x2 X4 L* y 7、调整下刀点坐标值位置:/ v$ h+ m7 [ o' Z9 I7 S) \
单击按钮,系统弹出查找对话框,输入“g43”,单击 按钮,查找结果所在行为:
! [/ F& u) l( f0 y8 @" _8 U pcan1, pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout,
$ d$ Y* i7 M$ ^# i pfcout, *speed, *spindle, pgear, strcantext, e
% {: [6 T, {9 p8 A: I) f pbld, n, "G43", *tlngno, pfzout, scoolant, next_tool, e$ d x5 ~2 c+ H0 R) f0 I) R
将其修改为:) C8 t6 Y7 }% X9 g* ^
2 c' P0 v$ @! L- ] pcan1, pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, e/ J$ |+ y" s' y
pbld, n, *sgcode, pfzout, e
5 x7 j5 D& F7 r$ [& s pbld, n, *speed, *spindle, pgear, strcantext, e
5 w9 l0 G4 c6 o. a7 {8 | pbld, n, "G43", *tlngno, scoolant, next_tool, e
( [: k2 \! `" ]1 `7 J1 I 输出的NC文件修改前对应位置指令为:
1 Q/ i7 M# s L3 m2 q/ B( k. Z0 o: ] G0G90G54X16.Y-14.5S2200M3
* q* r R# Q2 y: e) Y/ q: m, _5 X G43H0Z20.M8- |% N8 I0 z! Y9 B/ b! I | H7 L
修改后变为:
2 R: m+ R. k2 ~3 e G0G90G54X16.Y-14.52# O6 J9 A- f% d( r5 O
G0Z20.
) t5 y) o8 B- c8 |! K S2200M3
, \" Y- j1 }( X' K: ]& ?% { G43H0M84 C1 u; J, H; `
新的指令顺序使下刀点(安全高度)x、y、z坐标值同其他指令分开,易于在断刀时修改。G43指令在PST文件中有两个位置,如仅使用G54指令时,修改第一个出现“G43”的位置即可。
# _3 K/ R; [/ j9 X; ^5 l 8、输出普通及啄式钻孔循环指令:
, E: `5 m; ^3 N 单击按钮,系统弹出查找对话框,输入“usecandrill”,单击 按钮,查找结果相关行为:7 L q t! v. o
usecandrill : no #Use canned cycle for drill
2 X! d1 Q, _2 U" | usecanpeck : no #Use canned cycle for Peck% \* U2 |7 h, _! Z' h# I& C
将其修改为:: i: X8 u4 }! n; v( _7 e
usecandrill : yes #Use canned cycle for drill& j3 S3 n- o2 M H m" ~
usecanpeck : yes #Use canned cycle for Peck4 8 \1 l/ Y, w# u& \
此修改适用于支持G81、G83钻孔循环指令的控制器。
8 N( x7 u6 t. ~2 u( `) a/ H |
|