|
马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛
您需要 登录 才可以下载或查看,没有账号?注册会员
×
1 引言
4 A0 v& n$ o# x+ c+ G( T8 z1 K数控铣削加工中,常常要铣削一些周期性循环曲面或曲线,如波浪线等。一般都是编制一个循环周期的加工程序作为子程序,而整个曲面或曲线的程序是利用多次调用该子程序来进行编制的。例如,图中所示波浪线的铣削加工程序如下:
4 M! ~* z9 F1 d3 a, P0 P7 c5 O1 r e
, M" A+ A7 a q& S; C7 Q
主程序:
( x) l0 Q' l! LO1 *
. p& }, W8 E: a' G# m/ E& a……+ R5 o H2 d/ q' Q; N+ B! ~6 r
M98 P250002 *- N+ q7 n$ r- g4 T, \% M
……
; J- G! C% Y- P$ ?; HM00 *' ]9 `9 _3 n- s0 z
子程序:6 E% v- N, H, R: g8 x7 F! W X0 P
O2 *
8 F. y' a. l. W$ wG91 G02 X5 R3.5 F100 *2 s& y$ y( t5 k3 a7 X
G01 X5 Y-5 *+ g3 c7 ?% r/ v
G03 X5 R3.5 *. N& q- b" `% Y* a' u) t( T
G01 X5 Y5 *
4 N% e: b# F( \$ E: QM99 *6 [# |, ^3 O7 F' S7 O
2 问题的提出: E% d$ ]5 J5 |( b
由上面的程序可见,这种编程方法非常简单,所以编程人员一般都采用这种方法编制程序。但是在NT—J320A型数控铣床上加工该曲线时,我们发现曲线上各周期间的相交点A处都有一明显的刀痕,根本达不到所要求的表面质量。是什么原因造成了这样的刀痕呢,经过仔细观察发现,每当加工到各周期的相交点A时,机床都有一明显的停顿,而在其他的位置,机床都以100mm/min的进给速度进行加工。正是由于进给速度的突然变化,才造成了A处的加工刀痕。而这个停顿是因为在子程序调用过程中,每当一个周期完成后遇到M99指令时,数控系统要进行大量的计算、比较、判断和转移等内部操作。由于NT—J320A型数控铣床采用FANUC—3M系统(十几年前的产品),运算速度较慢,所以执行M99指令所需要的时间较长,造成了加工过程中的停顿。 |" _$ g3 V- U2 p! w5 h
3 解决方法9 p& N& Z2 P& J6 Q
消除或减小该切削刀痕的方法,有以下三种。
k9 B$ J, F' P(1)降低进给速度 仍采用上面的子程序调用程序,也就是说在执行M99指令时,停顿仍存在。但是由于进给速度降低了,进给速度的变化就相对减小了,因此A点的刀痕也就减小了。实验证明,当进给速度降低到20mm/min以下时,刀痕几乎看不出来,可以达到加工要求,但加工效率却下降到1/5。显然这不是最好的方法。
" x; k7 ]) {. d1 @0 j(2)逐段编程 不采用子程序调用方法编程,而是对整个曲线进行逐段编程,程序如下:( M& ^4 A3 k# ^) W
……2 B! h2 \: `& i
G91 G02 X5 R3.5 F100 *
+ s# ]3 y# e2 r: ]7 }G01 X5 Y-5 *
4 j3 h( E# l" ?2 ]7 k. K& ]G03 X5 R3.5 *
3 _' p, j" P* y" H- B5 e$ E# ^- VG01 X5 Y5 *9 I8 ] R3 Z2 ]3 ?& Z D
G02 X5 R3.5 *
5 I: ^" g, \' A7 @G01 X5 Y-5 *
3 j y8 F) }2 t0 p4 Z3 _* `G03 X5 R3.5 *! y. [ ]0 k( @# ^. ]
G01 X5 Y5 *7 `0 r" `: S, D7 W h
G02 X5 R3.5 *
. U7 {* t# ^$ l0 U8 \G01 X5 Y-5 *
" `( [% f7 H: S( x; @( n( R0 @G03 X5 R3.5 *
! T" a( B# s( k& [G01 X5 Y5 *% v4 K! l& d0 t; |! K. @7 _
……2 w+ f7 `1 |4 J9 x+ J( Z/ e7 A1 |
即将O2子程序重复25次,全部编到程序中去。这样可以完全消除停顿。但程序的长度是第一种方法的25倍,若曲线的循环次数再多,假设为50次,则程序长度将是第一种方法的50倍。这样不但会增加编程工作量,而且还可能超出系统的内存容量,显然这也不是令人满意的解决办法。6 N. B0 @3 W6 e2 v9 e
(3)宏指令编程 如同大多数系统一样FANUC-3M系统除了具有大量的基本数控指令之外,还为用户提供了宏指令。系统中利用宏指令登录的程序称为用户宏程序。在宏程序中,除通常的NC指令外,还可以使用变量、运算、判断和转移等宏指令。" k# v5 R- ^. p# `& y
若上面的曲线采用宏指令进行编程,则可以得到如下的程序:
7 d- r3 W% Y5 g) N- f6 [# \……
$ S, N- d2 C& g4 M, S5 SG65 H01 P#100 Q25 *(变量#100=25)2 x) z+ Z4 _1 j
N100 G91 G02 X5 R3.5 F100 *) U7 P8 w4 [! N; u
G01 X5 Y-5 *. w; f3 {) j, n( _5 t2 Z
G03 X5 R3.5 *
+ ]' q8 M7 t3 gG01 X5 Y5 *
8 t2 {' |( `4 n# e; s. A7 ?& BG65 H03 P#100 Q#100 R1 * (#100=#100-1)
) [" b6 o# |! }# U7 B j0 NG65 H81 P-100 Q#100 R0 * (IF #100≠0 G0 T0 N100)
6 s+ Y# Q, X6 U( c$ P, v实际加工表明,采用这种方法编程, A点看不出任何加工刀痕,完全达到了表面质量要求。而且从上面的程序可以看出,该程序很短,编程工作量很小。另外若改变变量#100的最初定义值,就可以改变曲线的循环次数,非常方便。显然,这种方法在周期性循环曲线的数控加工中,是一种比较完美的编程方法。
& i4 y" V5 Z8 [1 A" |0 m文章关键词: 宏指令编程 |
|