运用宏程序车削旋转椭圆

时间:2022-04-07 12:15:58

运用宏程序车削旋转椭圆

摘 要: 本文以数控车床上加工旋转椭圆为例,分析旋转椭圆的基本思路、方法和技巧。关键解决椭圆旋转一定角度后以长半轴和短半轴为坐标轴建立的坐标系中,起点和终点坐标值,以及离心角的计算。主要介绍了数控车床中运用宏程序加工旋转椭圆的几种方法。

关键词: 宏程序 数控车削 旋转椭圆 离心角

椭圆是数控加工常遇到的曲线之一,特别在数控大赛实操试题中更为常见。对于这种曲线,利用普通程序来编程时计算量往往较大,而且易出错;如用CAM软件进行自动编程相对简单,不但生成的程序很大,所占数控系统内存大,而且缺乏灵活性和通用性;使用宏程序编程,用户可以利用变量进行算术运算、逻辑运算、条件转移和循环控制等操作,使编程人员从繁琐的计算工作中解放出来,而且提高了零件的加工精度。目前在数控车床上加工正椭圆已不是难事,其解决方案多见于各类文献,但对旋转椭圆零件的加工方面研究较少。对于如图1所示的旋转椭圆零件,已在FANUC0i系统的数控车床验证成功。

1.应用举例

使用数控车床切削零件图,毛坯尺寸为Φ50*48mm,以右端面和轴线的交点为工件原点。

图1

图2

(1)计算椭圆起点A和终点B旋转后在Z′OX′坐标系(也即椭圆起点和终点没旋转前)的坐标值或计算椭圆起点A和终点B旋转后在Z′OX′坐标系的离心角。

1)建立坐标系

如图1所示中以椭圆中心为坐标原点,以水平和竖直方向为坐标轴建立ZOX坐标系,以椭圆长轴和短轴为坐标轴建立Z′OX′坐标系。

2)利用两式子即可求得

Z=Zcosα+XsinαZ=acosθ

例如,如图1所示中,椭圆长半轴a=25,短半轴b=15。在ZOX坐标系中:

椭圆起点A(Z20,X14.585)

椭圆终点B(Z-8.33,X12.5)

在Z′OX′坐标系中,求:

旋转后椭圆起点A:Z■=Zcosα+Xsinα=20*cos30+14.585*sin30=24.6125

旋转后椭圆终点B:Z■=Zcosα+Xsinα=-8.33*cos30+12.5*sin30=-0.964

利用公式计算离心角:Z=acosθ

则椭圆起点A的离心角:θ=arcos(Z■/a)=arcos(24.6125/25)=10.1°

椭圆终点B的离心角:θ=arcos(Z■/a)=arcos(-0.964/25)=92.2°

离心角如图3所示。

图3 图4

(2)车床中旋转公式为:X′=Zsinα+XcosαZ′=Zcosα-Xsinα

其中,X、Z为椭圆旋转后在ZOX坐标系中的坐标值;X′、Z′为椭圆旋转后在Z′O′X′坐标系的坐标值;α为旋转角度(椭圆逆时针旋转时,α取正值,顺时针旋转时,α取负值)。

2.旋转椭圆的编程思路

在实际应用中,数控系统在对输入的有限点(例如起点、终点),根据线段的特征,运用一定的算法,自动地在这些特征点之间插入一系列的中间点,即所谓“数据密化”,然后依据“数据密化”得到的坐标点值驱使刀具依次逼近理想轨迹线。

旋转椭圆编程时,就是依据“数据密化”原理,根据椭圆旋转的曲线公式,密集地计算出曲线上的坐标点值,然后驱使刀具沿着这些坐标点依次移动。用户宏程序利用变量赋值、算术运算和循环语句功能,有助于我们计算出曲线上的点,从而满足加工精度的要求。

3.编写加工程序

说明:1号刀为粗车35菱形刀。其他程序略,只编写工件右端的程序。直角坐标编程如下:(针对于FANUC 0i数控系统)

(1)O0001;

T0101;

G00 X52 Z5

G73 U12 W0 R7

G73 P10 Q20 U0.5 W0 F0.3

N10 G00 X29.17

G01 Z0 F0.1

#1=24.6125 (椭圆旋转前在ZOX坐标系起点的Z坐标值)

N50 #2=15*SQRT[1-#1*#1/625] (根据椭圆方程计算出起点的X坐标值)

#3=#1*SIN[30]+#2*COS[30] (椭圆旋转30°后起点在Z′O′X′坐标系的X坐标值)

#4=#1*COS[30]-#2*SIN[30] (椭圆旋转30°后起点在Z′O′X′坐标系的Z坐标值)

#5=2*[#3] (椭圆旋转30°后起点在工件坐标系的X坐标值)

#6=[#4-20] (椭圆旋转30°后起点在工件坐标系的Z坐标值)

G01 X#5 Z#6

#1=#1-0.1 (变量重新赋值)

IF[[#1]GE-0.964] GO TO50 (判断椭圆是否到达终点)

G01 Z-31

G02 U6 W-3 R3

N20 G01 X52

G70 P10 Q20

G00 X100 Z100

M05

M30

(2)当然,椭圆旋转也可用参数方程编程。椭圆的参数方程:Z=acosθX=bsinθ

只编写椭圆部分(其他部分程序略),参考程序如下:

#1=10.1 (椭圆旋转前在ZOX坐标系中起点的离心角)

N50 #2=25*COS[#1] (椭圆旋转前在ZOX坐标系起点的Z坐标值)

#3=15*SIN[#1] (椭圆旋转前在ZOX坐标系起点的X坐标值)

#4=#2*SIN[30]+#3*COS[30]

#5=#2*COS[30]-#3*SIN[30]

#6=2*[#4] (椭圆旋转30°后起点在工件坐标系的X坐标值)

#7=[#5-20] (椭圆旋转30°后起点在工件坐标系的Z坐标值)

G01 X#6 Z#7

#1=#1+1 (变量重新赋值)

IF[[#1]LE92.2] GO TO50 (判断椭圆是否到达终点)

(3)或使用WHILE循环语句,直角坐标编程为:

#1=24.6125

WHILE [ [#1] GE -0.964 ] DO 1 (判断椭圆是否到达终点)

#2=15*SQRT[1-#1*#1/625]

#3=#1*SIN[30]+#2*COS[30]

#4=#1*COS[30]-#2*SIN[30]

#5=2*[#3]

#6=[#4-20]

G01 X#5 Z#6

G01 X2*[#3] Z[#4-20]

#1=#1-0.1 (变量重新赋值)

END 1

(4)使用WHILE循环语句,参数编程如下:

#1=10.1

WHILE[[#1] LE 92.2] DO 1

#2=25*COS[#1]

#3=15*SIN[#1]

#4=#2*SIN[30]+#3*COS[30]

#5=#2*COS[30]-#3*SIN[30]

#6=2*[#4]

#7=[#5-20]

G01 X#6 Z#7

#1=#1+1

END 1

本实例在利用宏程序加工旋转椭圆方面进行了分析和探索,给出了切实可行的编程方法,为解决类似问题提供了借鉴。

参考文献:

[1]徐昆鹏,张欣.数控加工中宏程序的应用技巧[M].化学工业出版社,2006.

[2]胡友树.数控车床编程、操作及实训[M].合肥工业大学出版社,2007.

[3]周宏.数控编程与操作[M].陕西:西安电子科技大学,2007.

[4]张振.数控车床加工椭圆的宏程序[J].金属加工,2009.

[5]张国政.案例教学法在数控加工工艺课程中的应用[J].中国现代教育装备,2008(8).

[6]叶海见.斜椭圆宏程序在数控车床上的应用[J].机床与液压,2009(1).

[7]黄冬英,叶耀军.车削倾斜椭圆的宏程序[J].机械制造工程师,2009(11).

安徽机电职业技术学院2010年5月院级项目机器人制作的项目论文。

上一篇:班级管理中“特殊学生”的教育策略 下一篇:建构主义理论指导下的农村初中英语课堂教学