找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 247|回复: 0

[资料] 数控程序编制(下)

[复制链接]
发表于 2011-7-13 23:52:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

您需要 登录 才可以下载或查看,没有账号?注册会员

×
四、数控机床的最小设定单位# N! r  M8 j  s$ ~+ `% E
数控机床的最小设定单位即数控系统能实现的最小位移量。它是数控机床的一个重要技术指标,标志数控机床精度的分辨率。其值一般在0.0001—0.01mm内。在编程时,所有的编程尺寸都应转换成与最小设定单位相应的数据。
/ ?, f3 u- m4 }2 L7 i& X" f五、常用编程指令2 m5 ^5 C1 d6 P9 P
  数控加工程序是由各种功能字按照规定的格式组成的。正确地理解各个功能字的含义,恰当的使用各种功能字,按规定的程序指令编写程序,是编好数控加工程序的关键。
' H) a4 b! b$ A0 K  G. X   程序编制的规则,首先是由所采用的数控系统来决定的,所以应详细阅读数控系统编程、操作说明书,以下按常用数控系统的共性概念进行说明。
+ K. \! }# Y7 \   下面将讨论的几个问题:
; K" X- A! B4 D. |6 y  O3 R" y 200852816255.jpg 0 c1 [- R4 `' b. o, D  `+ l" @
(一)、绝对尺寸指令和增量尺寸指令
9 \9 Q& ^( B: q- V& P2 N  在加工程序中,绝对尺寸指令和增量尺寸指令有两种表达方法。0 \" g/ W  c& V9 k
   绝对尺寸指机床运动部件的坐标尺寸值相对于坐标原点给出,如图11所示。 增量尺寸指机床运动部件的坐标尺寸值相对于前一位置给出,如图12所示。
  S2 e# j$ _2 Y 2008528162621.jpg " Q' U2 _" e( n
图11 绝对尺寸
4 H' \/ P$ Z/ O% V9 X& ] 2008528162647.jpg   D- D5 h: m# z
图12 增量尺寸
" C1 S7 H" q* V4 I. \; [! v: u1. 用G功能字指定
6 w; v+ C: a: v0 g2 n- c" w% {   G90指定尺寸值为绝对尺寸。' }, R% m# k2 c  m4 D
   G91指定尺寸值为增量尺寸。
3 ~' h3 ]$ K5 w5 S+ J$ d$ X   这种表达方式的特点是同一程序段中只能用一种,不能混用;同一坐标轴方向的尺寸字的地址符是相同的。
6 `3 L8 e# k5 `1 i  F. ^$ ~! l2. 用尺寸字的地址符指定(本课程中车床部分使用)8 y2 y! r2 n( j1 X' \' p
   绝对尺寸的尺寸字的地址符用 X、Y、Z
0 B1 m: N0 \+ t" O; U* h* E) r# |2 m   增量尺寸的尺寸字的地址符用 U、V、W0 ^( ^8 ~, K5 X2 T2 S: E' N# Z" ~
   这种表达方式的特点是同一条程序段中绝对尺寸和增量尺寸可以混用,这给编程带来很大方便。1 z0 Z) Z2 v3 n
(二)、预置寄存指令G92$ `, A: \8 v/ v% F. j. h: B4 a% }
  预置寄存指令是按照程序规定的尺寸字的值通过当前刀具所在位置来设定加工坐标系的原点,不产生机床运动。- L* f+ C& P& [+ G. b4 A. B7 @
 编程格式 G92 X~Y~ Z~
- t' s5 N# f' ^' `6 ~: Y' {0 C   X、Y、Z的值是当前刀具位置相对于加工原点位置的值。/ Y1 n. l# W% r7 {) t! k# p% G& Z0 E
2008528162818.jpg % U) u5 P6 g4 e7 M
图13 设置加工坐标系9 l8 ^  C% I) @% O3 r* w
  例:建立图13所示的加工坐标系。% e9 x/ L& V% i! G1 f9 r( b/ N
   1. 当前的刀具位置点在A点:G92 X20 Y30
6 m& F: g) @2 K1 ]2 ^   2. 当前的刀具位置点在B点:G92 X10 Y10
$ H7 A4 r' `0 a# N; X% {2 T0 E注意:这种方式设置的加工原点是随刀具当前位置(起始位置)的变化而变化的。
3 P# W! }* Q5 U0 B; t0 j(三) 、坐标平面选择指令7 j  E9 F) `/ |+ @+ e
坐标平面选择指令是用来选择圆弧插补的平面和刀具补偿平面的。  a! }: k; h/ c0 H6 r- a! M
   G17表示选择 XY平面
8 |+ C( P0 F. r3 X& U/ U6 i   G18表示选择 ZX平面, E8 a: d/ D3 }( e' j& t
   G19表示选择 YZ平面
7 I) i8 |) [/ s 200852816291.gif
1 l3 P4 j% x9 n' _7 J- {2 L图14 坐标平面选择6 T1 |; \3 e1 q7 M
 各坐标平面如图14所示。一般,数控车床默认在ZX平面内加工,数控铣床默认在XY平面内加工。* [! y1 k% X2 F' o+ M3 Q
(四)、快速点定位指令! g8 j6 _5 @- l; U
2008528163037.jpg 8 @' q: k6 b  r. N
图15 快速点定位
& t0 [0 ^2 x3 X0 J% [  快速点定位指令控制刀具以点位控制的方式快速移动到目标位置,其移动速度由参数来设定。指令执行开始后,刀具沿着各个坐标方向同时按参数设定的速度移动,最后减速到达终点,如图15a所示。注意:在各坐标方向上有可能不是同时到达终点。刀具移动轨迹是几条线段的组合,不是一条直线。例如,在FANUC系统中,运动总是先沿45度角的直线移动,最后再在某一轴单向移动至目标点位置,如图15b所示。编程人员应了解所使用的数控系统的刀具移动轨迹情况,以避免加工中可能出现的碰撞。
! C# C8 g7 `# E5 r7 W; Q  编程格式 G00 X~ Y~ Z~1 r- y9 q: J5 }5 Q# Q# W
   X、Y、Z的值是快速点定位的终点坐标值
7 }% w; J5 D0 I- r/ A   例:从A点到B点快速移动的程序段为:; K& A+ `* ~5 Z: B; ]( B
   G90 G00 X20 Y30# S7 x0 |9 _- K, s% X
   其运动情况见图15。
" M( f1 P' b& Y0 k. q1 {(五)、直线插补指令( N1 X- E# F% O# e: Y( C) l
直线插补指令用于产生按指定进给速度F实现的空间直线运动。
; S1 \* _: B$ K) @  [程序格式 G01 X~ Y~ Z~ F~
4 K- z2 y7 _. x, ~4 e, m, Y8 Z其中:X、Y、Z的值是直线插补的终点坐标值。
) H* E$ p! Y- E' c! L/ l 2008528163551.jpg ; e: L- _$ `% T) m  t! P
图16 直线插补运动
, t' w8 G% m3 m; a2 C例:实现图16中从A点到B点的直线插补运动,其程序段为
. o& M. r2 E3 ^2 W绝对方式编程:G90 G01 X10 Y10 F1003 v" S+ E! {" _/ s+ B, ]
增量方式编程:G91 G01 X-10 Y-20 F1007 [7 A( [" l  a4 r
(六)、圆弧插补指令
$ Y& Y/ H0 V5 g* Z5 }7 l) |  G02为按指定进给速度的顺时针圆弧插补。2 k4 B; K8 U1 R; S  m  J; n% {
  G03为按指定进给速度的逆时针圆弧插补。0 X  N: c- t/ J# H  o5 {/ i
  圆弧顺逆方向的判别:沿着不在圆弧平面内的坐标轴,由正方向向负方向看,顺时针方向G02,逆时针方向G03。
. v$ k% }! j' {/ a+ c9 r0 T程序格式为: 
( Q2 v/ c& ~/ |  H5 OXY平面:0 d" o- s+ P( c3 B
G17 G02 X~ Y~ I~ J~ (R~) F~$ A& g; `* b3 E
G17 G03 X~ Y~ I~ J~ (R~) F~3 h7 y" K4 h+ V4 o+ K" q$ `
ZX平面:9 Q) V) r2 R5 J9 C1 h* v3 v- [
G18 G02 X~ Z~ I~ K~ (R~) F~
8 N! x  x7 V0 s: K5 z1 DG18 G03 X~ Z~ I~ K~ (R~) F~
; O& v+ ?3 k1 z! \* aYZ平面:. a" _7 Y% F1 S$ E5 M1 Y
G19 G02 Z~ Y~ J~ K~ (R~) F~
$ g0 Y$ w5 I* M3 z" X* CG19 G03 Z~ Y~ J~ K~ (R~) F~. L1 T4 Y) R/ n& Y. e
2008528163917.jpg 3 A7 ?) ^" L* m5 x2 _0 B9 }/ T% s
2008528163935.jpg 7 T4 R5 F1 U, e! s( A
2008528163953.jpg + V- n/ G4 h- b# z4 d
图17a XY平面圆弧
( V: X) o- v# Z0 _) C! }8 t5 c图17b ZX平面圆弧; L/ @' z! k: B* |5 \* a, ^' a2 ]
图17c YZ平面圆弧6 f3 ^+ h* ~& D' D( h
其中:X、Y、Z的值是指圆弧插补 的终点坐标值;I、J、K是指圆弧起点到圆心的增量坐标,与G90,G91无关;R为指定圆弧半径,当圆弧的圆心角≤180度时,R值为正,当圆弧的圆心角>180度时,R值为负。图17a表示XY平面的圆弧插补,图17b表示ZX平面圆弧插补,图17c表示YZ平面插补。! X2 V& r1 k$ i6 J6 c. H
200852816418.jpg
8 F' y* }- P6 [$ B; p* d# i图18 圆弧插补应用7 p/ J* x8 m' }$ [- b7 s
例:在图18中,当圆弧A的起点为P1,终点为P2,圆弧插补程序段这
: A3 l" Q7 T  L8 j8 PG02 X321.65 Y280 I40 J140 F50
( M+ ?( K% C# K: ?2 ~- j/ y或:G02 X321.65 Y280 R-145.6 F50
  `0 C2 B6 K0 u' V当圆弧A的起点为P2,终点为P1时,圆弧插补程序段为* M" H) q" ^7 Y* R1 O4 p. M
G03 X160 Y60 I-121.65 J-80 F50* o  W* f1 W4 x7 W, H" F
或:G03 X160 Y60 R-145.6 F505 g$ {3 F1 O5 T
(七)、刀具半径补偿指令
% Q2 p+ j/ t- j  在零件轮廓铣削加工时,由于刀具半径尺寸影响,刀具的中心轨迹与零件轮廓往往不一致。为了避免计算刀具中心轨迹,直接按零件图样上的轮廓尺寸编程,数控系统提供了刀具半径补偿功能。
6 U% ]) s  t5 O; `1。编程格式
# [" r5 \# `1 n, p  G41为左偏刀具半径补偿,定义为假设工件不动,沿刀具运动方向向前看,刀具在零件左侧的刀具半径补偿。# u9 X0 a- ?4 }6 ?
  G42为右偏刀具半径补偿,定义为假设工件不动,沿刀具运动方向向前看,刀具在零件右侧的刀具半径补偿。
5 M1 B( t$ I, q7 n, j( H- j1 Q  G40 为补偿撤消指令
% `# I) s! @! b7 `  程序格式为:
. @3 `- ]7 M2 t# R: `- X6 K   G00/G01 G41/G42 X~ Y~ H~  建立补偿程序段" `# A# p3 W+ |
   ……             轮廓切削程序段
3 s6 M' p7 }$ Q! y- q) s5 g2 L   ……6 X- {1 b, Y* B- Z4 j. _- o' q$ r
   G00/G01 G40 X~ Y~        补偿撤消程序段1 n& G) l, d2 C! D! _6 W
其中:
7 b9 F  R$ c8 x7 `' F6 n   G41/G42程序段中的X、Y值是建立补偿直线段的终点坐标值;
1 f+ `  D: B" b" W   G40程序段中的X、Y值是撤消补偿直线段的终点坐标;
* Y3 M; m  S7 n0 z9 g   H为刀具半径补偿代号地址字,后面一般用两位数字表示代号,代号与刀具半径值一一对应。刀具半径值可用CRT/MDI方式输入,即在设置时,H~ = R。如果用H00也可取消刀具半径补偿。
* Y8 R2 N7 j& Z2 ?2.工作过程9 K. v; j! O4 C2 ]( Z
   以下各图表示的刀具半径补偿的工作过程。其中,实线表示编程轨迹;点划线表示刀具中心轨迹;r等于刀具半径,表示偏移向量。
- s1 @8 G3 }- k5 r; V: J/ L(1)刀具半径补偿建立时,一般是直线且为空行程,以防过切。以G42为例,其刀具半径补偿建立见。
$ E. N$ c- C# p+ Y$ l/ ?$ D0 ~(2)刀具半径补偿一般只能平面补偿,其补偿运动情况。
" r( E8 c+ o) D2 C/ h(3)刀具半径补偿结束用G40撤销,撤销时同样要防止过切。
& S7 k4 \9 X! E9 I* G/ ?应注意的是:
8 C0 E' E/ E  z* u7 n6 B3 V$ V. I建立补偿程序段,必须是在补偿平面内不为零的直线移动。
/ L/ Q3 A# q3 z9 e+ W* p( [; n建立补偿程序段,一般应在切入工件之前完成。
' P" p* l+ K" y3 |+ B# b撤销补偿程序段,一般应在切出工件之后完成。
( w$ K! B8 u# ?+ P: k3 u8 J- b3.刀具半径补偿量的改变
- h! V6 `$ `# t/ A( T  一般刀具半径补偿量的改变,是在补偿撤销的状态下重新设定刀具半径补偿量。如果在已补偿的状态下改变补偿量,则程序段的终点是按该程序段所设定的补偿量来计算的。 如图19所示。
9 b/ y! Z- F$ m* \$ [5 w 2008528164414.gif $ w7 Q1 y  c* a4 I( Y0 x: E( s- |
图19 刀具半径补偿量的改变0 K( k, i- z1 g3 j9 ~" G; w- |
4.刀具半径补偿量的符号; C5 J2 k1 o; ^, i+ d
  一般刀具半径补偿量的符号为正,若取为负值时,会引起刀具半径补偿指令G41与G42的相互转化。( J7 y) B* x4 X# K6 U
5.过切
) K' b& x1 Z4 i% O9 Q  通常过切由以下两种情况:
- ?1 L; c7 f& @: L( g$ ~(1)刀具半径大于所加工工件内轮廓转角时产生的过切。
5 C8 P( P% ^1 G5 ^0 o, J& B4 E(2)刀具直径大于所加工沟槽时产生的过切。
; V  X5 I& v: S+ @# @1 B6.刀具半径补偿的其它应用* ~5 D2 G4 Z9 \& `* k
   应用刀具半径补偿指令加工时,刀具的中心始终与工件轮廓相距一个刀具半径距离。当刀具磨损或刀具重磨后,刀具半径变小,只需在刀具补偿值中输入改变后的刀具半径,而不必修改程序。在采用同一把半径为R的刀具,并用同一个程序进行粗、精加工时,设精加工余量为△,则粗加工时设置的刀具半径补偿量为R+△,精加工时设置的刀具半径补偿量为R,就能在粗加工后留下精加工余量△,然后。在精加工时完成切削。运动情况见图20。$ T, m+ F0 |. y/ A% F3 `1 n
2008528164541.gif
$ O( X6 r$ f. Z) N+ h" E图20 刀具半径补偿的应用实例: j0 N! P: d9 O( w. @( T
(八)、刀具长度补偿指令" P# _6 V& c9 Z6 Y* X
  使用刀具长度补偿指令,在编程时就不必考虑刀具的实际长度及各把刀具不同的长度尺寸。加工时,用MDI方式输入刀具的长度尺寸,即可正确加工。当由于刀具磨损、更换刀具等原因引起刀具长度尺寸变化时,只要修正刀具长度补偿量,而不必调整程序或刀具。
! v) R- p/ U3 y2 u* j0 b0 {) r: g9 M   G43 为正补偿,即将Z坐标尺寸字与H代码中长度补偿的量相加,按其结果进行Z轴运动。% H8 h1 X6 |# |/ ]# G. g" B  W
   G44 为负补偿,即将Z坐标尺寸字与H中长度补偿的量相减,按其结果进行Z轴运动。9 `* k7 p, r( R3 m
   G49为撤消补偿。
7 L  F+ W8 Q, @3 p' c" G: s9 C 2008528164616.gif
" t# A5 h7 B2 \! |; j4 n; |a                         b
+ d) X& i9 z2 _' Y" s: |图21 刀具长度补偿
2 l( u0 ~: w. o- s2 x  编程格式
  n" E; C. x* {% R+ \$ E  G01 G43/G44 Z~H~// 建立补偿程序段
- F  v( x; ]" Y; }   ……       // 切削加工程序段
4 k  ?* {, m5 ?   ……
; {% M$ ]- z% f8 U+ S& h) `+ P  G49       // 补偿撤消程序段* f- o# _" Y! B
例:图21a中左图所对应的程序段为 G01 G43 Zs H~, }+ q4 e  n' ~/ i+ @
图21b中对应的程序段为 G01 G44 Zs H~
1 H; r. X9 O, E其中:  x8 c6 |$ v. R0 o
   S 为Z向程序指令点;
  |( J% J' s6 T5 X6 u   H~ 的值为长度补偿量,即H~ =△。! E4 `: A* g. u7 T( l
   H 刀具长度补偿代号地址字,后面一般用两位数字表示代号,代号与长度补偿量一一对应。刀具长度补偿量可用CRT/MDI方式输入。如果用H00则取消刀具长度补偿。$ e8 z( A5 A8 p. k/ c' ]0 ]5 g
编程实例
# n+ Y" B" [2 V下面介绍车削实例,图2-24为图例,表2、5为相应的加工程序单。
0 E; s& T3 g4 U0 v5 I, p" J9 b2 c 200852816484.gif 3 B' Z" c, O1 h
程序段1:g00表示刀具快速移至对刀点,即为程序的起点;G90表示该程序段按绝对坐标方式编程,其后各程序段如不重新设定G91时,Gg0一直有效;G42为右刀补指令,脉冲当量在Z方向为0.001nm/脉冲,z方向则为直径的脉冲数,而不是半径的脉冲数。其中,X40000表示直径为40mm的圆柱,:坐标为165mm,即α点的当前位置。F50表示进给速度为50.0mm/min;s07表示主轴选7号转速,其转速值为355r/min(不同的机床,此转速值有可能不同);T33表示选3号车刀,用3号拨码盘进行到刀补;M03表示主轴顺时针旋转;LF表示程序段结束。
" n: Y. ?! X4 Q# K8 q+ [程序段2:G01表示直线插补加工Ф40的圆柱面,刀具行程用增量坐标G91方式表示,本段程序的刀具行程坐标增量为△x=0,△z=-35mm。
* y, q5 @- b. k% u; f, A程序段3:G03表示逆时针圆弧插补加工,刀具行程仍按G91方式表示,本段程序的刀具行程坐标增量为△x=40mm,△z=20mm;IO及K20000表示圆弧起点相对于圆心坐标值在x方向为O,在z方向为20mm。' V$ |" q% @4 F8 v5 \  Q) z
程序段4:G01表示直线插补加工Ф80的圆柱面,刀具行程仍按G91方式表示,本段程厅的刀具行程坐标增量为△X=O,△z=30mm。
# N, @  L! e% S程序段5:G02表示顺时针圆弧插补加工,刀具行程仍按G91方式表示,本段程序的刀具行程坐标增量为△x=60mm,△z=-30mm;圆弧起点相对于圆心坐标值在x方向为—30mm,在z方向为0。
+ ]1 q. k: p" R5 p' T  r3 C8 W) ^程序段6:G01表示直线插补加工Ф140的圆柱面,刀具行程仍按G91方式表示,本段程序的刀具行程终点为B,坐标增量为△x=O,△z=-30mm。
. l* d5 @+ ?* o程序段7:G90表示刀具行程按绝对坐标G90方式编程,刀具行程坐标增量在x方向同程序段5,即x=x1+△x3+△x5=(40十40+60)mm=140mm(式中下标分别表示程序段1、3、5中x值),刀具按绝对坐标走到z=o处。
( B* A& @1 B0 G4 m程序段8:G00表示刀具快速移至距机床原点为x=170mm、z=O处。
/ Y7 C( Q- ^5 h. Q程序段9:M02表示程序结束,主轴停转,进给停止,冷却液停,机床复位。
. c1 T; i0 ?% K5 @( r' r" u* ]文章关键词: 数控程序
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2025-4-28 21:33 , Processed in 0.175286 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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