本帖最后由 正在连接... 于 2017-12-31 15:57 编辑 L) V {5 F: A1 A& o+ G0 h$ B
& t4 `. T/ J) B0 S8 [全齿高一般是2.25,既然你齿顶高系数是1了,底径=36.5-2.5*2.25,编程的话我不知道你对宏程序了解多少。下面是一个蜗杆宏程序,你自己慢慢研究吧。9 C) a7 N5 K2 d% x
* x& v% V4 ~- V+ I v: x7 {: G
+ I# q; l m* k4 Z
D=52 d=34.4 模数4 四头, 牙型角20度,刀宽2mm 角度LE20度 ,
, m; F3 X8 |0 {& \) S" T8 ^2 d8 s a- d$ c
P=3.14159*4*4=50.26544(导程等于摸数*3.14159*头数) W=0.7M =2.8(蜗杆底部宽度) u1 K6 h' c3 C7 U0 y) b ~
$ r6 a& p' e( i8 a7 I6 [/ W
0 @ F; W" C9 w7 x
Z) C' y d4 S$ m) N. J程序: - z) L! H9 v! e( o9 M" `
$ b- U2 w) n& e1 j; T3 j) Y8 `O0001
6 A7 q0 E1 A& m* u- |6 w5 A3 L* D. ~. d$ P! t0 i2 ~8 s$ [+ I
G99M03S300
8 l& o# D0 E9 z8 ]% g; T+ E5 g6 \9 o2 F$ Y) z7 b
G97T0101M8 $ Y. S* G+ n% J& q6 c
) w7 @) Q6 z0 r
G0X56Z10
8 y$ d2 c2 ^- A7 j& m" d) x$ E8 \: x% V* }
#1=52(蜗杆大直径)
* I4 x$ [" d( Q1 e* d8 f0 B' b2 x# I) o' T6 }" N X+ a/ T
#2=34.4(蜗杆底直径) 1 E' b3 g, g6 [
# d8 z, y9 s. t7 n" m# l: N#3=0.4(底部宽度减去刀宽的一半) + X$ M: Z% ]# l( H* C3 y$ W" b
; |" s$ a; K; U# F( s0 F
#13=360000/4(算出每一头的角度) 0 h6 L& N9 O0 m% U- i. z
2 h* U7 |9 y5 x" r. j) b
N10#4=0.2(每层吃刀量)
0 }$ U6 n% u: z9 j0 }* @0 m; Z; h: q2 G/ I& m$ _: S
#1=#1-#4(大直径递减)
7 ^& f" m) _8 p' d# v. |
' B9 A' g. K/ l4 d' `' JIF[#1LT#2]THEN#1=#2(条件判断防止过切,强制赋值。当#1小于#2,那么#1等于#2)
% y% ~$ C( s* m) ^
@9 ]9 U5 Q% @) h6 Y. h( j( f; J#5=[#1-#2]/2*TAN[20]+#3(三角函数算出每层需要赶刀的宽度) 9 Q2 ?( [" X# `% Y# ^
' q: U6 G+ Z, E: Y
#6=0(赶刀初始值)
/ i6 r* ~2 T1 d' a5 W. r& @% I, R3 K' w, U* G7 [: C
N20 #12=0(Q的初始值,不能乱放)
, \# p1 |& `, c8 w1 A% k7 ?
% o$ W6 w) o& k+ @7 G#7=10+#6(计算右赶刀每次的定位) , Y' A6 A; L4 `3 M4 O7 T1 d0 `
9 W* j6 W. C8 g2 w: d4 D0 g
G0 X56 Z#7(螺纹定位) $ _5 Z' u9 w5 P' h1 y" X( ^/ s
; ]/ y+ R7 E' g3 q& i
N21G0X#1(X进刀)
" R7 e3 V" d4 i6 U& ^" U' |$ g& s! d
G32 Z-95 F50.265 Q#12(螺纹车削) ! m6 I2 Y& j- _" F' b p9 ]
( G$ d" k9 u2 m8 e+ a& v/ M. \: OG0 X56(退刀)
! e+ ^6 U4 @! ]' J% }7 W$ S* l7 ]; |3 F+ W) @$ O: O( ?# I
G0 Z#7(定位退刀到起点位置) 7 R9 E2 C! P5 o
2 N+ f+ z4 A* {2 W. h5 D, U: T
#12=#12+#13(角度递加)
2 L6 {+ x. F% F7 \
2 h) s+ P4 p' K( a" D- _- w2 |IF[#12LT360000]GOTO21(如果Q值小于360度跳到N21执行下一头) ! s( m1 l# C9 S% J w) u4 {
2 N7 Z, f/ h- x2 U7 X
IF[#6EQ#5]GOTO30(如果右边赶刀宽度到达跳出循环) # ~& G2 \7 u) Z8 y! F# G5 D, w
' b9 V+ c! K( z% o1 w- e* y5 B; m#6=#6+1.5(每刀赶刀量加1.5) 3 A) J* A" d$ `/ m# c9 C' V
9 j& a' W4 n! [2 e- u9 U5 J, @
IF[#6GT#5]THEN#6=#5(防止过切强制赋值) ( Q- }. P8 Q) z* u" ~' c) I, R, c" e
0 d* j o, G* S2 m% D! k; ~, g: ]IF[#6LE#5]GOTO20(如果右边赶刀宽度没有到达跳转N20继续循环)
Z$ F2 y. `- I" W4 u m
0 h h, _2 R" r Y9 p6 Y4 M: nN30#6=0(赶刀初始从新赋值)
* v$ C* T' L1 {0 T( a) g9 _$ O1 E b- \6 u( |, ^! ^
N40#12=0(Q的初始值,从新赋值,不能乱放)
* M' F8 n. a" @9 C$ [" L- |: _1 w6 P# S' O
#6=#6+1.5(赶刀宽度递加) / J1 e- d% G' a0 m
8 Z# m& U2 T" K: r) S
IF[#6GT#5]THEN#6=#5(防止宽度过切,强制赋值)
+ F8 Z% T: _' I+ {% e" E3 D. G5 p
#8=10-#6(计算Z定位向左赶刀)
* C- v: Y* B( I( Y ^
" e: ~9 d) _1 m" V- ~8 TG0 X56 Z#8(螺纹定位)
3 H# T* z; D4 A! A
; f2 d7 N5 `, d9 {% ?3 FN41G0X#1(X进刀)
- ^0 A9 n- T" \7 C
7 J" t6 N6 s" a3 R4 YG32 Z-95 F50.265Q#12(螺纹车削) ( Y6 C* Z" U6 t T
2 K8 g8 E, D) f$ X. {G0 X56 (螺纹退刀) 4 c# e" o5 g0 u$ k# y
' C' [# a1 ~3 d! n$ p+ q( K
Z#8(退回上一次加工起点) ( ]) y. U+ Y( K" s
1 m& o" U' r- X#12=#12+#13(左边赶刀的角度递加)
* G6 C7 T4 [* l. @$ a0 Y; Y4 R
' m$ x9 P/ ^+ C* `% _2 bIF[#12LT360000]GOTO41(如果Q值角度小于360度跳转N41继续下一头)
8 _$ S4 I$ `0 E) K' B
! K+ @ M7 e" yIF[#6EQ#5]GOTO50(防止死循环,如果宽度到达跳出循环) ) g& {. f& h3 x- X c2 i2 Z
4 E0 j. ^1 i2 ?. z* |6 E" p5 j5 f6 o
IF[#6LE#5]GOTO40(如果左边赶刀宽度没有到达跳转N40继续赶刀) & w3 ~3 N# G$ G+ i
/ O9 L- S5 n" h; j/ N
N50IF[#1EQ#2]GOTO60(如果螺纹深度到达跳出循环) / J- R: O# ~- [) e% {/ M
( ^- B" l4 m3 A& L' r3 X( RIF[#1GE#2]GOTO10(如果没有到达跳转N10继续下一层) / s$ f7 i P& `; V/ {
5 j" `: Z! Y( u9 _$ BN60G0X100.
$ {( d$ z) q2 C6 P5 m# I) R0 M8 U0 ?* S# v5 O) Z6 c
Z120.
, `% i/ k, M) q2 u; T
) `; Y' C2 m# d1 M( JM30
" X( N0 j4 M6 g+ S$ U
7 M/ J# g2 i, d" W0 O8 V 4 R1 _+ `& e" z. ^
4 ~! R" z9 P: |. T, w2 g2 w完整程序如下:
5 q; V: a! j; R, B5 l4 _, R- D# H; G
O0001
. Z. C4 N" j9 ?3 @7 i5 j# _ ~
+ C4 \" a1 _* C; u6 [! j* VG99M03S300 % [- g' k& D8 d* L) L5 x3 j" b$ e2 @
v8 s: v' \$ |2 U( O! i. ZG97T0101M8 " V& [6 t) Z1 r k9 Z+ o8 |
0 [3 { S3 ? M7 H, P' W) V4 R
G0X56Z10 ! g* M+ n( R1 Z( b* s' E; n' t% y6 s
) C* F3 J' _! U6 p5 r4 p( h+ W
#1=52
0 ]' ~8 |( o& \2 s) y: V' t/ a9 ]& A: V% W" }% u6 b
#2=34.4 $ L; P$ O U5 K9 Z3 m
; \: P# B' b- c, @* J1 R' N3 W
#3=0.4
. ~9 H& T! M2 G s9 ~; z3 i4 y' e* t9 W3 h/ g% y' o
#13=360000/4
' U2 Z; f. P6 b; C* w/ g" t4 g w% I D$ I+ I
N10#4=0.2 8 V, U4 {4 C6 L% r" R" Z0 O5 v N. J
( t7 _, W* Y/ l& G#1=#1-#4
; Y& ?: Z/ Y/ L, o n0 k3 \5 D& w3 z
IF[#1LT#2]THEN#1=#2
5 j/ P, t& d! |. i6 }1 t
6 {0 P( g8 Q" m- r- k; Y#5=[#1-#2]/2*TAN[20]+#3 $ ?" m* m6 B) g8 x- Y" e7 Y
8 J+ R. K( m1 t6 N) V/ `& D, V
#6=0 ; v: ~$ n! T, n4 D' U
; Z! S7 U* @+ k0 M) TN20#12=0 3 c% c8 w* O2 J$ l/ p% S
" n# \( U5 U" U6 r
' v3 t, h7 N, N0 _1 e
6 F% [( }0 r7 o9 ? #7=10+#6 * s* Q5 }5 Z( G |9 }4 O1 d
( D& W. j5 c+ c* G4 w$ y1 b. Y
G0 X56 Z#7
9 \3 f7 d' e5 B' J5 [8 t
) u7 m: [8 W5 ]# pN21G0X#1 @3 j+ H1 L8 n) N. a3 O' }9 W
" w8 x1 G5 d# J) R6 F5 x, F2 e- fG32 Z-95 F50.265 Q#12 ( B$ G& ~! s3 g1 p, y3 q
5 J+ ~6 U& N. c5 U
G0 X56 / D+ j: v# h! C; t
4 U b: L* E- t( i o8 d$ EG0 Z#7 7 O1 n% N; c5 c Z
$ k j+ c* b+ b# y4 J6 B#12=#12+#13
4 w, [+ c$ C. h9 F# U. K$ J% B1 v* {
IF[#12LT360000]GOTO21
# v& n& q0 p7 \4 z
3 _& F a9 {' B9 I1 v8 L$ fIF[#6EQ#5]GOTO30
; y! e8 q: z. z0 Z
1 f4 d+ K% ?; u j0 x/ Y X#6=#6+1.5 - s, o; x' [) f
' h( o' O. j) o% u: ?! xIF[#6GT#5]THEN#6=#5
6 h. ?0 ^ l' s: Q. u3 k: c, j( x/ Q, H0 s
IF[#6LE#5]GOTO20
9 ?! ^- E" X" W9 ]2 J
6 w' o; I; l+ C% B! |N30#6=0 : b7 b0 w( M$ B. [& B" m# K
8 {7 \+ C/ d9 cN40#12=0
, j( v+ m& _* N: s- v, }3 l: H! s* ~ f) K7 h3 `
#6=#6+1.5 / J0 |, w+ V, ^
. u( n' D; s# ~( v" w. [
IF[#6GT#5]THEN#6=#5
8 Z5 V5 V u) H: A2 p: X- o( w& `2 r1 T; y9 o
#8=10-#6
+ c0 O. x4 E5 J. c& j) n, p* o0 q
8 ~0 F- y, D$ m; k/ C' `9 vG0 X56 Z#8 8 j N( q; _4 a! q) L6 n( J
- @1 r5 \- a/ Z5 \
N41G0X#1
: u) z& H. A$ N9 R+ r3 J, Z* `0 i5 M2 P# q% v: k% x& \; _
G32 Z-95 F50.265Q#12
3 S1 Z% \- h6 B# x
( d3 P4 H* Z0 x I# ~1 n6 {* F" FG0 X56 # ?" X( W7 ?4 {
, _1 F9 K9 z+ z0 T2 a1 }Z#8 5 s; P- g! X' ^# q
' t: n6 F) E3 ~" y
#12=#12+#13
}: i7 }% [$ v( D! E
1 W. u$ V e3 @" T! ^. h: h% q3 WIF[#12LT360000]GOTO41 % o" \( G- U2 s. ?9 B0 L3 K( J
, s u! X. n! U; X( [, m, n p! f# _" k
IF[#6EQ#5]GOTO50
6 O1 [) n$ u% E) j/ V! k% X% a7 b' ? m
IF[#6LE#5]GOTO40 : V3 X. |4 L+ v. v1 z" A g
$ b2 r% F1 s% ]# K! bN50IF[#1EQ#2]GOTO60
, f6 U" V" r4 @/ R1 X( R
) {% m9 c5 Q3 eIF[#1GE#2]GOTO10
% N3 r7 K0 e) a8 C( A; v5 K/ |
" m( [& `) K+ r8 H I! a9 @N60G0X100.
6 V/ f, S B0 {, C- Q8 y! X l% V0 m5 y: s
Z120.
, U5 `3 X) p% d; @/ t( F# @0 h' }/ c
M30
; Z) n& X! D$ t7 s) R
O5 D6 N+ k: H |