机械必威体育网址

标题:数控模块化编程一一R刀车圆弧 [打印本页]

作者:mcsino 时间:2013-8-18 14:20
标题:数控模块化编程一一R刀车圆弧
本帖最后由 mcsino 于 2013-8-18 15:14 编辑 + x2 Y2 C4 o( m8 q2 M3 `( {
9 Z8 M# |+ j' B
由于经常加工弯管压轮模,其程序基本就是修改一下几个固定值,最近因为又需要加工一批,量比较大规格比较多,每种规格都是一件,如果做完一件修改一下程序,一来容易出错,二来效率也不高,所以想把程序模块化,加工不同零件只需调用模块,输入必要参数即可,无需修改程序,现把用切刀加工(辅助加工)以及R圆弧头加工模块(采用B型补偿)及如何调用模块附上,有时间的话把程序流程图一起附上,希望像我等初学者共同进步.
& k& h' Y0 r' v" h. @5 z) ?
h5 N7 e* f& a1 w- ~1)切刀辅助加工模块(
* C6 ?( o. X# S8 N& b0 D#1 切刀刀宽
' \+ K5 F8 Y0 N$ B+ E1 w3 b#2 圆弧弦长 1 D0 J* p% X; j" j6 M& a* r
#3 圆弧半径 # ~* `1 z4 f0 J2 O! t
#7 进级量 0 [9 u0 @ S+ k# _; T9 Y& I
#8 Z向圆弧起点 ! ?3 g/ p- v3 F. V
#9 X向圆弧起点
, r b9 c9 J, B' B模块入口参数(即调用此模块需要输入数据):#1,#2,#3,#7,#8,#9 ; E9 b5 K2 L. ]* M$ k. `( s
; B Q0 X- A. Q8 m+ |
中间变量:#5,#6,#27,#28,#29,#30,#31 ,#32 % n9 Q% r# ^ T
#29=0 ) o4 R! v. v/ N) {
#30=#2-1
/ s# U8 _' @0 E ]/ g6 W% v3 s#32=#2/2 & q& b. c; e& h( v6 j
WHILE [#29<=#30] DO1 * V& a3 X# b3 k5 e4 U! z+ m! P
#29=#29+#1*0.8 % ] V$ K+ O2 |# l" ?% \. |" e
IF[ #29>#30] GOTO3 5 L7 A4 ~' z5 ^& w: p* j& h' B
IF[#29>#32] GOTO2
* _ T/ p/ _) K#27=#32-#29 , }3 }3 [* E, _- u$ X
N1 #28=SQRT[#3*#3-#27*#27]
. N2 \, }$ p+ j, l9 B#5=#8-#29-#1-1 ( M- ?8 C6 o# ~: u( v4 _
#6=#9-#28*2
) G3 V$ H8 H' s4 J9 G#31=#9+2 $ c. y) j1 d2 n# d8 R' i; P
G0 X#31
# Z3 J' d2 t7 F: UG0 Z#5
. h/ x+ p/ t& J4 iG1 X#6 F#7 0 E) S8 @# f; M G" N7 D
G0 X#31 . d. X3 d1 l- i% f2 a
GOTO3 % L2 n6 E0 [3 D" {. l2 I2 w* V
N2 #27=#29-#32
1 y& |7 r0 q% ]% M% c+ WGOTO1
( C! S, E- D- f6 l! I1 t8 L! PN3 END1 7 F9 I1 W0 h; `! Z$ K
M99 % Z9 c' |7 e+ p1 d( E& I' b
8 M0 S) r% J6 T& g' R1 `

作者:mcsino 时间:2013-8-18 14:57
本帖最后由 mcsino 于 2013-8-18 15:38 编辑 : l5 t$ t1 {% `' {! m6 {

7 J2 M. E- Y5 S# ]2)R刀加工圆弧采用B型补偿,即采用刀心轨迹编程 O5 m% X( C# w, B- B7 @1 w
#1 X向圆弧起点 - t' A. z8 d& W6 j
#2 Z向圆弧起点
7 K0 ?# ?# d# b+ a#3 R刀半径
4 C; J) h8 O9 `+ \9 Y% n+ S#4 F进级量
: A( Y& H* S! z#5 需要加工的圆弧半径 7 q" k0 ~0 x6 M Q9 N0 s, x+ P. t! B1 g8 C
模块入口参数(即调用此模块需要输入数据):#1,#2,#3,#4,#5 8 F2 c# [6 S+ ?* h' A4 J1 [- P$ P* M0 F
中间变量:#28,#29,#30,#31 ,#32,#33 + q) l1 R: C) b2 K. t. S1 y3 e' G
O0002 2 W$ v+ n5 s) R; P6 g5 [4 |
#33=#1+2
, r, Z) ]+ R, a% p; B#32=#3*2
' M2 o4 o5 k4 d; F1 [* D7 a- m#31=#1-#32
; `% N7 y B8 o- [ w#30=#2-#32
- r- E5 W# S* _3 [#29=#5-#3 / O/ u, G ^1 C3 c6 X6 p& Z
#28=0-#29*2
, X: \5 e: |- O. qG0 X#33
+ B+ e" G$ I0 ?8 c% Z6 @G0 Z#30 2 e0 K- L% p. Z6 m2 T" k& V
G1 X#31 F#4 , y$ z3 |# ^0 M' n
G2 W#28 R#29
% {, D0 m( u, q7 | G9 k! \) e7 H0 t2 iG1 X#1
: a% {: V- m6 y. VG0 X#33 ; A9 L4 c% L: r4 J8 K+ }
M99
作者:mcsino 时间:2013-8-18 15:04
本帖最后由 mcsino 于 2013-8-18 15:41 编辑 ( r; G3 N2 K. [8 n1 t5 ~3 @7 j

; l+ \% A0 m, q- E- S- d4 i4 v4 J& E3) 如果R一次切削量过大,可以修改刀具磨损量,进行多次重复切削,修改刀补模块
4 Q( Y3 T1 I' M入口参数:#21,#23
3 x# A: [1 S" F3 `/ _: f2 l% f! PO003 ; u B3 N0 z0 s
G65 H23 P#101 Q#4120 R100; - \* l$ |! y$ S! W( p
#102=2000+#101; 获取x向刀具磨损量 3 y! r' [/ y( e- Q- Q* P* R* Q" I
#103=2100+#101; 获取z向刀具磨损量
4 U4 h( \# C6 O3 t7 @7 Z" h( U#9102=#9102+#21;修改x向刀具磨损量 ( O$ p& d2 u# ~5 W7 K6 p6 P
#9103=#9103+#23;修改z向刀具磨损量
2 \+ _& i$ v5 ]( m4 F9 PT#4120 ;更新刀补
* _8 f- M! t( P% o# ], x2 `M99;
5 Z# K& X3 m4 Z2 Q5 K) g1 v2 ^
作者:mcsino 时间:2013-8-18 15:59
本帖最后由 mcsino 于 2013-8-18 16:07 编辑 5 I: N! G' t/ s
mcsino 发表于 2013-8-18 15:04
. P* b O8 Z u. {; v, t3 S3) 如果R一次切削量过大,可以修改刀具磨损量,进行多次重复切削,修改刀补模块
u7 Z/ u0 w# B* e6 c6 P入口参数:#21,#23 - ]7 e# g1 c- L9 x
O003 ...

% g. I- r6 \1 o) x! e7 h
6 }! {6 r ~8 q$ y5 @) j4)模块调用
; |. C: Z& D2 U8 J. ]' r0 T ~假设1)需要在外径100,z向为10的地方加工一半径为15的半圆弧,切刀刀宽为3,R刀半径为6,进级量每转0.05mm,则加工程序参考如下 % t5 q. w2 k/ e, s+ f5 E' y
T0*0* ;换切刀 1 Y1 T+ j4 K* p# J( f/ Z5 {0 b0 @
G0 X120 Z2
1 A4 }& m0 b) C, NG65 P001 A3 B30 C15 D0.05 E10 F100 ||#1 切刀刀宽 A / F) E3 T' E4 z' I3 \
||#2 圆弧弦长 B ; `5 i5 m: @, ]4 w4 h
||#3 圆弧半径 C 5 W0 g+ O( l$ `& w/ Y8 X/ z. \0 h
||#7 进级量 D 7 U: P' s2 w4 p5 k1 H$ J
||#8 Z向圆弧起点 E ; A: h! H" y& e7 Y0 C
||#9 X向圆弧起点 F
9 _& M3 t6 M% d, U& h$ h) m' \G0 X* Z* ;退出到换刀安全距离
; I* x, }; Y! b) WT0*0* ;换R刀 2 |) s6 R) i& L* x
G0 X120 Z2 0 _! l. J+ G; s* k' q
G65 P002 A100 B10 C6 I0.05 J15 ||#1 X向圆弧起点 A
$ M; f/ B6 w/ e( Y' ]: r1 n8 O||#2 Z向圆弧起点 B - t- X9 Q( s0 J T7 l$ _
||#3 R刀半径 C
9 s/ E. D: }: D* p* J- c% \||#4 F进级量 I 3 t8 Q/ [; J5 n0 o& S
||#5 需要加工的圆弧半径 J - m8 b: D- i6 l7 S7 H
7 T: b. e( F: J0 B4 B, m0 s

: h9 v1 C$ Q4 Y2 b: _+ T ( f0 J2 z: K1 ]: c* L
假设2)需要在外径200,z向为70的地方加工一半径为20的半圆弧,切刀刀宽为4,R刀半径为2,进级量为每转0.08mm,则加工程序参考如下
# z) v9 s6 T9 H6 V8 f# IT0*0* ;换切刀 & \$ K/ z, A8 E9 j$ l# C
G0 X220 Z2 . d. i, B; u. G }
G65 P001 A4 B40 C20 D0.08 E70 F200 ||#1 切刀刀宽 A $ i1 C2 [$ N9 g' V8 Y. H% s- P
||#2 圆弧弦长 B
; g9 `. {) u3 a# {4 I( c||#3 圆弧半径 C
* G7 \: a. @' t7 N$ |- {$ z||#7 进级量 D
f; N1 Q* z8 D||#8 Z向圆弧起点 E / C" T# G. N# ~8 Q! |
||#9 X向圆弧起点 F
' R0 h% o: Y* ]0 E5 Y. RG0 X* Z* ;退出到换刀安全距离 { H* {8 {' d0 w$ }& g
T0*0* ;换R刀
, y0 S+ S+ G8 F3 n) }G0 X120 Z2
. j1 ]; F- u: H/ l6 q+ }G65 P002 A200 B70 C2 I0.08 J20 ||#1 X向圆弧起点 A 3 G6 b" X5 U, f; d6 r3 X6 _
||#2 Z向圆弧起点 B 2 L1 D1 n* m$ }- p& s
||#3 R刀半径 C ' Y6 B$ {' p0 s) ~/ A2 K) R
||#4 F进级量 I
% y7 h6 a3 G0 W; F* {||#5 需要加工的圆弧半径 J 3 o8 f% o2 A; n* b' ?

{ o8 T* L5 z ) a# V% _. f% `1 l
5 c& A8 w4 R/ d
, x# d' K" D. p4 `: `6 N

4 D5 A0 [1 j9 s& g, K 7 p3 W( a& w5 a, g* f

作者:mjypc009 时间:2013-8-18 16:59
太累了吧,直接电脑编程省事,而且安全
作者:祭奠那岁月 时间:2013-8-18 19:42
宏程序的主要用途之一 相同类型 相同工艺 修改几个赋值用同一程序做不同尺寸的工件 方便 高效
作者:mcsino 时间:2013-8-18 22:55
mjypc009 发表于 2013-8-18 16:59
H5 v/ n N' k6 k3 M 太累了吧,直接电脑编程省事,而且安全
5 G% k& y1 ?5 o7 N7 t
直接电脑编应该也没有模块化来得快
作者:onelee 时间:2013-8-19 10:28
认真学习了




欢迎光临 机械必威体育网址 (//www.szfco.com/) Powered by Discuz! X3.4