|
要做后置处理程序,你首先要理解你的刀位文件的含义,首先你自己要知道怎么把这些刀位转化为NC代码,如果你读不懂刀位文件,那么你不可能成为一个后置处理高手。下面我们简单分析一下以下一段由ug产生的刀位文件的每一行是什么意思。1、RAPID; g% i5 V8 ^# U" h5 D4 x
2、GOTO/-13.0000,-5.7446,3.0000,0.0000000,0.0000000,1.0000000
1 p5 g1 d8 t% z4 R' A. ?/ u3、PAINT/COLOR,42/ w- x0 `5 f* `$ F
4、FEDRAT/MMPM,250.0000
5 v" u W2 O* g* ^/ C+ o# |8 i5、GOTO/-13.0000,-5.7446,0.0000
, f7 G( {5 @7 C( z1 } W6 ]6、CIRCLE/-17.0000,0.0000,0.0000,0.0000000,0.0000000,-1.0000000,7.0000,0.0600,0.5000,20.0000,3.0000 I4 x* }( Y# F7 T9 ]
7、GOTO/-10.0000,0.0000,0.0000/
, |, a4 A1 b3 b5 [- p8、PAINT/COLOR,31
7 c2 {$ Z# m+ n* D. w" G9、GOTO/-10.0000,220.0000,0.0000 s o% H+ ], @7 K
10、CIRCLE/-17.0000,220.0000,0.0000,0.0000000,0.0000000,-1.0000000,7.0000,0.0600,0.5000,20.0000,3.0000
! V3 [, F- s3 g9 t# ]: h `% O$ ~" s11、GOTO/-13.0000,225.7446,0.00005F/
3 x1 g) l2 N t- l! Y/ S$ m我们从第1行开始看,在UG刀位文件里RAPID代表快速进给,它将影响下一行的走刀方式
* m0 k" X% ]$ D. ~) c第2行GOTO语句,后面跟的是点的坐标,前三位为X,Y,Z坐标,后三位为刀轴的方向矢量,由于上一行有RAPID指令,所以这一句处理成NC代码就应该为G00X-13.0000Y5.7446Z3.0000,如果是五轴设备,则应该处理成G00X-13.0000Y5.7446Z3.0000A0.000B0.000或G00X-13.0000Y5.7446Z3.0000A0.000C0.000等,根据设备的结构不同而不同。8 q% [9 ~; j( `# b
第3行是着色语句,只对UG自身起作用,不用也不能转化为NC。& M. z2 D2 E! U: y. Q t
第4行为FEDRAT/MMPM,250.000,这一行是给定进给速度,也就是说从这一行以后的走刀进给速度都为250mmpm。# Q/ s; X: c0 |% G7 u
{因此第5行转化为NC代码就应该是G01X-13.0000Y-5.7446Z0.0000F250。
) D$ v2 l3 F6 F; o$ ~2 M第6行CIRCLE开头,表明即将走一段圆弧,前三位-17.0000,0.0000,0.0000是圆心坐标,接下来三位0.0000000,0.0000000,-1.0000000表明圆弧的矢量方向,可以决定圆弧所在的平面和圆弧走刀的方向,后面的几位数字是刀具信息和精度等相关信息,我们在这里可以忽略。由于圆弧的矢量方向为0,0,-1,所以该圆弧所在平面与XY平面平行,因此是一个三坐标圆弧,由于是0,0,-1,所以其圆弧插补指令也就确定为G03,如果是0,0,1则应该为G02。 }" K' A: f& o
接下来第7行是圆弧的终点坐标,所以第6句和第7句可以一起转化为NC代码
& w5 m2 p( [) i: B$ D+ SG03X-10.000Y0.000I____J_____4 c% S" ?( |. ~! T' T
其中X-10.000Y0.000是终点X,Y坐标,Z由于与上一句相同可省略,那么I,J后面的值怎么确定呢,这是由系统决定的。% U" m* m5 u) q: ~. X8 z( t
对于FIDIA系统,I,J后面的值分别应该是圆心的X,Y坐标,所以对于FIDIA系统,NC代码应为:
0 w0 g# d$ V2 @; ? YG03X-10.000Y0.000I-17.000J0.000
+ R$ r7 Z9 c! Z' x) k# Z而多与FANUC或SIEMENS系统,I,J值是圆心的X,Y值相对于起点的坐标值,即I=圆心X-起点X,而J=圆心Y-起点Y,所以,对应的NC代码为:
7 Z: B6 b" k6 i. PG03X-10.000Y0.000I-4.000J5.7446
5 ]" |6 J5 D5 z0 q1 R3 \; V当然你也可以转化为别的表达方式,比如R之类,这里就不一一介绍了。9 l1 m0 ]! N& u7 K
后面几行以此类推,所以最后后置应当处理为:
$ E% P7 T' {; S, iFIDIA系统# Z8 Q/ q& o. d U) e( G0 ~1 I
N1G00X-13.000Y-5.745Z3.0001 X" j8 }" g& D4 ^
N2G01Z0.000F2504?;EX6]0[F_c6s_d
1 \0 M+ [/ m1 ~( {8 r; R$ `' wN3G03X-10.000Y0.000I-17.000J0.000
9 I( \& V* e# O. F: @+ JN4G01Y220.000
, `- x v- \: V0 B. H- EN5G03X-13.000Y225.745I-17.000J220.0003 x% {3 Z9 u% W' i% m5 r
FANUC、SIEMENS系统 N& F) U3 q: \
N1G00X-13.000Y-5.745Z3.000
9 d2 [! o0 T- k: \% ZN2G01Z0.000F250* j" K# |! w1 N) \" i8 I
N3G03X-10.000Y0.000I-4.000J5.7446: Q: [1 R$ l r. U' W7 R; Z( D- m4 R
N4G01Y220.000# y; G& J3 h, n
N5G03X-13.000Y225.745I-7.000J0.000. |
|