失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c语言编写机床宏程序 从事数控车床2年 想学宏程序

c语言编写机床宏程序 从事数控车床2年 想学宏程序

时间:2024-05-14 04:06:54

相关推荐

c语言编写机床宏程序 从事数控车床2年 想学宏程序

本帖最后由 陈明6174 于 -8-5 14:49 编辑

" i' v& A0 h1 r% |( W0 K, ]

* \, B9 S. s+ \4 j机械加工中常有由复杂曲线所构成的非圆曲线(如椭圆曲线、抛物线、双曲线和渐开线等)零件,随着工业产品性能要求的不断提高,非圆曲线零件的作用就日益重要,其加工质量往往成为生产制造的关键。数控机床的数控系统一般只具有直线插补和圆弧插补功能, 非圆曲线形状的工件在数控车削中属于较复杂的零件类别,一般运用拟合法来进行加工。而此类方法的特点是根据零件图纸的形状误差要求,把曲线用许多小段的直线来代替,根据零件图纸的形状误差,如果要求高,直线的段数就多,虽然可以凭借CAD软件来计算节点的坐标,但是节点太多也导致了加工中的不方便,如果能灵活运用宏程序,则可以方便简捷地进行编程,从而提高加工效率。

% H* j2 U0 n3 a4 e# ?2 b4 n9 F2 VO6 V. q( \. a

一、非圆曲线宏程序的使用步骤6 E5 WM) h. |4 J(1)选定自变量。非圆曲线中的X和Z坐标均可以被定义成为自变量,一般情况下会选择变化范围大的一个作为自变量,并且要考虑函数表达式在宏程序中书写的简便,为方便起见,我们事先把与Z 坐标相关的变量设为#100、#101,将X坐标相关的变量设为#200、#201等。1 q+ s! B) m& U% c& f% i

(2)确定自变量起止点的坐标值。必 须要明确该坐标值的坐标系是相对于非 圆曲线自身的坐标系,其起点坐标为自变量的初始值,终点坐标为自变量的终止值。

^! n9 {: K6 v) P(3)进行函数变换,确定因变量相对 于自变量的宏表达式。. K7 |8 w& ^. [: x6 ]; n3 T7 L

(4)确定公式曲线自身坐标系的原点相对于工件原点的代数偏移量(△X和△Z)。. OB8 }T# l3 Q

(5)计算工件坐标系下的非圆曲线上各点的X坐标值(#201)时,判别宏变量#200的正负号。以编程轮廓中的公式曲线自身坐标原点为原点,绘制对应的曲线坐标系的X ′和Z ′坐标轴,以其Z ′坐标为分界 线,将轮廓分为正负两种轮廓,编程轮廓在X ′正方向称为正轮廓,编程轮廓在X ′负方向为负轮廓。( U4 E# u% Q" G' A7 u7 ?) t

如果编程中使用的公式曲线是正轮廓,则在计算工件坐标系下的X坐标值(#201)时,宏变量#200的前面应冠以正号;如公式曲线是负轮廓,则宏变量#200的前面应冠以负号,即#201=±#200+△X 。+ u0 y" S8 L0 T& B/ r! @8 _1 j# I; w

(6)设计非圆曲线宏程序的模板。设Z坐标为自变量#100,X坐标为因变量#200,自变量步长为△w,△X为曲线本身坐标系原点在工件坐标系下X方向偏移量,△Z为曲线本身坐标系原点在工件坐标系下Z方向偏移量,则公式曲线段的加工程序宏指令编程模板如下。- P% {( C6 b4 K; b4 W4 j0 P

#100=Z1 (定义自变量的起点Z坐标)

) L. D2 u1 e4 K3 b5 D8 WWHILE [ #100 GE Z2]DO 10 k8 iP3 c& d5 W( J4 H7 @

(加工控制)9 S+ ~5 A; V* }' A8 Z: }

#200=f(#100) (建立自变量与因变量函数关系式)0 j6 Y$ a. a1 c# W1 }3 x( k

#201=±#200+△X4 u+ h& r7 T1 l' L0 L* u

(计算曲线上点在加工坐标系的X坐标)

% |- f( `3 \{$ K0 w#101=#100+△Z(计算曲线上点在加工坐标系的Z坐标)

( V: H# Q, J3 }7 k: D@6 x. ^G01 X[2*#201] Z[#101]F

! K/ x4 L7 \$ Q: a( l(曲线加工)- ~5 p0 U# |/ O

#100=#100-△w (自变量减小一个步距)* ?, n0 C$ J: s- P* z

END1 (加工结束)" \& V; f' x2 Z

& x$ g% _! }/ X' f8 P- m$ y3 ?2 Z; t

二、非圆曲线宏程序的具体应用实例

$ ~) L- ^$ y& a3 [8 H/ j' _运用以上非圆曲线宏程序模板,就可以快速准确实现零件公式曲线轮廓的编程和加工。下面介绍一个具体应用示例。加工图1所示椭圆轮廓,棒料Φ45,编程零点放在工件右端面。' {* Z' X' w! o( T1 c

(1)分析零件尺寸,确定正负轮廓及代数偏移量(△X 和△Z)。

: e& t, s5 m* A. A6 z1 {$ h) v% Q$ E6 a* P* S

由图可知,该图中的椭圆曲线为凸状,编程轮廓在X ′轴正方向为正轮廓,在计算工件坐标系下的X 坐标值(#3、#201)时,宏变量#200的前面应冠以正号,公式曲线自身坐标系的原点相对于 工件原点的偏移量为(X0,Z-60)。- E4 [. ^6 h3 j+ I: JX0 X) L

(2)零件的外轮廓粗精加工参考程序如下(粗加工用直角方程,精加工用极坐标方程)。

! ?3 H, {- Z: kO9988

( D, _- u& L) |kG98 S700 M3; T0101;

s2 e7 B! @& M' A( V. gG0 X41 Z2;

4 ~) v" j9 F; aG1 Z-100 F150; (粗加工开始) G0 X42;' E1 F9 v* H* x

Z2;9 V% W1 o1 R# U( C' [

#1=20*20*4; (4a2)5 a) G1 s9 V" G2 ~* u. g4 ~* [1 P8 }

#2=60; (b)

6 \" |: d) W5 Q3 V#3=35 ; (X初值(直径值)) WHILE[ #3 GE 0] DO1; (粗加工控制)( ^/ T2 P% c# d, ~8 M

#100=#2*SQRT[1-#3*#3/#1]; (Z)3 A1 H( y, X! h/ X

#101=#100-60+0.2

6 W8 ^8 o5 a. f% B' G# WG0 X[#3+1] ; (进刀); C# B4 }0 A6 |0 r1 F& L& D3 X# r

G1 Z[#101] F150; (切削)

3 y( }+ ~; i6 _; jG0 U1; (退刀) Z2; (返回)

~$ i+ `( g, U( Y6 |I4 b7 P* u#3=#3-4; (下一刀切削直径) END1;d; B; W# v$ s3 C, q4 G

#10=0.8; (X向精加工余量)" P8 O, R2 E1 d

#11=0.1; (Z向精加工余量) WHILE[ #10 GE 0] DO1; (半精、精加工控制)& I: o- x" `8 L- o) n6 [' U+ A

G0 X0 S800; (进刀,准备精加工)5 T& A) J0 [; S2 y4 C- P+ d

#20=0 ; (角度初值) WHILE [#20 LE 90] DO2; (曲线加工范围)

" z% k" d8 b7 |1 v7 P2 X#200=2*20*SIN[#20]; (X)

# J/ j( R+ e9 b4 x. Y: @6 q3 U5 N- ~' `#201=#200+#10

" z) sp& P6 l. F3 w+ ]3 f5 L#100=60*COS[#20]; (Z)

# u# U% X& ~' P0 |) q- ^) B; \4 s#101=#100+#11-601 u: ~( [`2 F. n6 {- |- }9 C8 S6 ~' I0 j

G1X[#201]Z[#101] F100; (曲线 精加工)

1 Y+ J1 B- e: z# X#20=#20+1; END2;

( d2 o) b& n) `$ N|G1 Z-100; G0 X45 Z2;% z# D' e& V) ^

#10=#10-0.8;1 u% L( c8 o: J9 E. t

#11=#11-0.1;- a7 w* M( Z8 ?: G7 \

END1;

4 F9 L6 @; K. k6 K5 M# yG0 X100 Z200; M30;

8 |9 |! M9 t$ P! h$ \5 s(3)运用数控仿真软件,可得到加工仿真校验图如图2所示。5 j* ]9 L: I2 S/ {) }

7 z& H" R& [7 }1 `5 O|% p% F7 t) q. M

三、结束语

( `: Y5 V1 e! S$ h. Y4 i通过实例可知宏程序是从工件外不断逼近直至最后加工成型,解决了非圆曲线不能用子程序的相对编程方式的矛盾,因此加工非圆曲线的工件灵活使 用宏程序,实现了数控加工方便快捷之目的。3 k$ l$ Y7 ?# Z( x) j

' }! C! _6 s* H2 A. o( g- x

如果觉得《c语言编写机床宏程序 从事数控车床2年 想学宏程序》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。