APP下载

圆弧逼近椭圆的方法及椭圆螺纹编程研究

2022-11-17卢小燕

机械工程师 2022年10期
关键词:宏程序圆弧螺纹

卢小燕

(广州南洋理工职业学院,广州 510925)

0 引言

在零件加工中,会碰到非圆曲线加工,而现在的数控设备,一般可以直接采用直线和圆弧插补指令加工,椭圆作为具有代表性的非圆曲线,没有相应的直接插补指令应用。为了解决这种非圆曲线加工问题,加工椭圆和在椭圆上加工螺纹大家能想到的方法估计就是用宏程序加工,用宏程序加工确实很方便,但对于不会宏程序的人或会宏程序而机床不具备使用宏程序功能的,就可以采用本文介绍的直线逼近椭圆、圆弧逼近椭圆的方法,将椭圆曲线分解成若干段小直线[1],编程椭圆时,通过建立加工轮廓的节点,利用椭圆方程式和圆弧方程式计算出加工节点的坐标数据,进行编程加工。本文介绍的直线逼近椭圆、圆弧逼近椭圆的方法虽然计算量大,但它通俗易懂,而且精确度很高。

1 零件图样分析

图1所示的零件材料为铝合金,备料尺寸为φ40 mm×1000 mm,未注长度尺寸允许偏差为±0.1 mm,未注倒角为1×45°,以小批量生产首件编程,要求在FANUC 0i系统数控车床上加工椭圆面、椭圆螺纹、R20的凹圆面、φ38 mm的圆柱面。φ38 mm的圆柱面尺寸公差的上偏差为+0.03 mm,下偏差为0,φ38 mm的圆柱面的表面粗糙度为Ra3.2 μm,R20 的 圆弧面的表面粗糙度为Ra6.3 μm,其它表面粗 糙 度 为Ra12.5 μm,本文只对椭圆及椭圆螺纹的编程进行研究。

图1 零件图

2 椭圆节点的设计及坐标值计算

等间距直线逼近法是使每个程序段的某一坐标量相等,然后根据曲线的表达式求出另一坐标值,即可得到节点坐标[2]。本文采用X坐标增量相等,如图2所示,在X坐标轴上A到R之间以2 mm为单位,正向等间距取点为A、B、C、D、E、F、G、H、I、J、K、L、M、N、O、P、Q、R分别为0、2、4、6、8、10、12、14、16、18、20、22、24、26、28、30、32、34 mm,考虑到右端部分R与W之间是误差最大的部分, 所以在此段以1 mm为单位,正向等间距取点为S、T、U、V、W分别为35、36、37、38、39 mm,但为了误差更小在W与Z此段插入Y,它的等间距取0.5 mm为单位, 正向等间距取点为Y、Z分别为39.5、40.0 mm。把A到Z的X值代入椭圆标准方程,通过椭圆标准方程X2/402+Y2/182=1算出相应的各点的Y轴坐标值,计算出的各节点Y轴坐标值如表1所示。

图2 节点图

表1 各节点Y轴坐标值

3 逼近椭圆的圆心的坐标及半径的求解

把椭圆方程式求出的各节点的坐标值代入圆方程求出逼近椭圆的圆心的坐标及半径。

1)根据“不在一条直线上的三个点确定一个圆,”这个定理,把A、B 、C 、D、E、F、G、H 、I 、J、K、L、M 、N、O、P、Q 、R、S、T、U、V、W 、Y、Z 分别以A B C;C D E;E F G;G H I;I J K;K L M;M N O;O P Q;Q R S;S T U;U V W;W Y Z分成12组圆, 把A、B、C代入圆方程X2+Y2+DX+EY+F=0,则有:

用待定系数解这一方程组得D=-5.553、E=-2.750、F=-2950.868;用同样的方法把C、D、E三点分别代入圆方程得D=-0.033、E=-139.160、F=-2828.995;把E、F、G三点分别代入圆方程得D=-0.767、E=-130.640、F=-2672.865;把G、H、I三点分别代入圆方程得D=-2.333、E=-118.659、F=-2448.350;把I、J、K三点分别代入圆方程得D=-6.594、E=-97.315、F=-2028.064;把K、L、M三点分别代入圆方程得D=-10.863、E=-81.584、F=-1697.459;把M、N、O三点分别代入圆方程得D=-17.544、E=-61.951、F=-1254.392;把O、P、Q三点分别代入圆方程得D=-26.952、E=-40.671、F=-717.407;把Q、R、S三点分别代入圆方程得D=-38.177、E=-21.939、F=-155.926;把S、T、U三点分别代入圆方程得D=-46.720、E=-11.412、F=234.828;把U、V、W三点分别代入圆方程得D=-54.9398、E=-3.998、F=589.636;把W、Y、Z三点分别代入圆方程得D=-62.037、E=-0.241、F=881.495。

2)把A、B、C组合为圆1,代号为O1;把C、D、E组合为圆2,代号为O2;把E、F、G组合为圆3,代号为O3;把G、H、I组合为圆4,代号为O4;把I、J、K组合为圆5,代号为O5;把K、L、M组合为圆6,代号为O6;把M、N、O组合为圆7,代号为O7;把O、P、Q组合为圆8,代号为O8;把Q、R、S组合为圆9,代号为O9;把S、T、G组合为圆10,代号为O10;把G、V、W组合为圆11,代号为O11;把W、Y、Z组合为圆12,代号为O12,根据圆的方程式(x-a)2+(y-b)2=r2与X2+Y2+DX+EY+F=0,得出各节点a、b、r的数值为a1=0.046、a2=0.017、a3=0.384、a4=1.167、a5=3.297、a6=5.432、a7=8.772、a8=13.476、a9=19.089、a10=23.36、a11=27.47、a12=31.019;b1=72.989、b2=69.58、b3=65.32、b4=59.330、b5=48.658、b6=40.792、b7=30.976、b8=20.336、b9=10.970、b10=5.706、b11=1.999、b12=0.121;r1=90.985、r2=87.581、r3=83.305、r4=77.264、r5=66.382、r6=58.232、r7=47.863、r8=36.229、r9=25.311、r10=18.532、r11=12.998、r12=8.983, 即圆弧的圆心坐标为O1(0.046,72.989)半径为90.985;O2(0.017,69.58)的半径为87.581;O3(0.384,65.32)的半径为83.305;O4(1.167,59.330)的半径为77.264;O5(3.297,48.658)的半径为66.382;O6(5.432,40.792)的半径为58.232;O7(8.772,30.976)的半径为47.863;O8(13.476,20.336) 的 半 径 为36.229;O9(19.089,10.970)的半径为25.311;O10(23.36,5.706)的半径为18.532;O11(27.47,1.999) 的 半 径 为12.998;O12(31.019,0.121)的半径为8.983。

4 拟合误差

用椭圆方程式计算出的Y1椭、Y2椭和用圆方程式计算出的Y1圆、Y2圆进行比较,得出圆弧逼近椭圆的精确度。

1)拟合误差计算以A、B、C组合为例,在A点与B点中间取X1为1,在B与C之间取X2为3,代入椭圆方程X2/402+Y2/182=1,得出Y1椭=-17.994、Y2椭=-17.949;用同样的计算方法得出C、D、E的Y1椭=-17.859、Y2椭=-17.722;E、F、G的Y1椭=-17.538、Y2椭=-17.306;G、H、I的Y1椭=-17.023、Y2椭=-16.686;I、J、K的Y1椭=-16.293、Y2椭=-15.840;K、L、M的Y1椭=-15.320、Y2椭=-14.727;M、N、O 的Y1椭= -14.051、Y2椭=-13.281;O、P、Q 的Y1椭=-12.397、Y2椭= -11.375;Q、R、S的Y1椭=-10.172、Y2椭=-9.109;S、T、U的Y1椭=-8.295、Y2椭=-7.363;U、V、W的Y1椭=-6.264、Y2椭=-4.883;W、Y、Z的Y1椭=-3.469、Y2椭=-2.009。

2)以A、B、C为例,将所取得的X1=1、X2=3代入圆的方程式X2+Y2+DX+EY+F=0得Y1圆=-17.991、Y2圆=-17.948;用同样的计算方法得出C、D、E的Y1圆=-17.859、Y2圆=-17.722;E、F、G的Y1圆=-17.538、Y2圆=-17.306;G、H、I的Y1圆=-17.023、Y2圆=-16.686;I、J、K 的Y1圆=-16,294、Y2圆=-15.840;K、L、M 的Y1圆=-15.320、Y2圆=-14.726;M、N、O的Y1圆=-14.052、Y2圆=-13.280;O、P、Q的Y1圆=-12.399、Y2圆=-11.373;Q、R、S的Y1圆=-10.175、Y2圆=-9.108;S、T、U 的Y1圆=-8.295、Y2圆=-7.362;U、V、W 的Y1圆=-6,267、Y2圆=-4.876;W、Y、Z的Y1圆=-3.472、Y2圆=-1.984。

3)拟合误差计算。

综上所述,所组合的12个圆中W、Y、Z的ΔY2误差最大,但也未超过0.03,所以由它们组合的轮廓很逼近椭圆,读者可根据自己的需要, 假如椭圆尺寸误差可大点的话各节点的间距可取大点,反之各节点的间距可取小点。上面所介绍的第1到第3步为逼近椭圆的圆的计算, 第4步拟合误差为所取圆和椭圆的误差计算,此误差计算只是为了证明用圆逼近椭圆的方法的精确度,读者可以不必花时间做第4步拟合误差计算。

5 椭圆的编程

将图2的原坐标的X轴改为Z轴,Y轴改为X轴, 变换后的X值因为要进行的是直径编程,所以此时的各节点的X值是原来各节点的Y值的2倍,原点改在工件右端面与X轴交点处, 所整理后的坐标如表2所示。加工椭圆的程序如表3所示。

表2 各节点坐标值

表3 椭圆的参考程序

6 加工椭圆螺纹的过程

1)椭圆螺纹走刀路线的设计。

在X坐标轴上从Z-4开始取点记为A,从A到G之间以6 mm为单位,正向等间距取点为B、C、D、E、F、G,每一段都走9刀,前8刀的背吃刀量为0.316,最后一刀作为椭圆螺纹的精加工背吃刀量为0.072,走刀路线如图3所示。

图3 椭圆螺纹走刀路线示意图1

2)各节点的计算。

A、B、C、D、E、F、G的节点可以用上面介绍的椭圆标准方程X2/402+Y2/182=1计算,在此就不重复了,会画图软件的可以用软件辅助找节点,走9刀的各节点坐标值、椭圆螺纹走刀节点坐标值如表4所示。

表4 椭圆螺纹走刀节点坐标值1 mm

3)椭圆螺纹的编程。

A~B以直螺纹方式走刀,B~C以圆弧方式走刀,C~D、D~E、E~F、F~G以圆锥螺纹方式走刀,每一段都走9刀,前8刀的背吃刀量为0.316,最后一刀背吃刀量为0.072。A~B以直螺纹方式走刀其用意是为了B~C段的圆弧过渡,它本身不是为了加工螺纹,而是为了B~C段螺纹的精定位。从图3椭圆螺纹走刀路线示意图的图形来看A~B段会加工到工件,但实际上因为螺距为2,前面6刀都不会碰到工件,而后面3刀螺纹的点也是在落在B点右边很近的地方,所以A~B段螺纹走刀不影响椭圆螺纹的美观。B~C段以圆弧方式走刀是因为此段是所有走螺纹之间误差率最大的线段,用圆弧走刀误差率会比直线小,最后几段因为误差率都不大所以用圆锥螺纹方式走刀,其中误差率可以按本文上面介绍椭圆节点的方式计算,在此就不做重复介绍了。椭圆螺纹的编程如表5所示。

第一次加工零件是在晚上,在螺纹刀走到点C处刀具有停顿现象,加工结果是B~C段的螺纹出现乱牙且螺距偏小。笔者分析了一下原因,从程序来看G03用G99进给,且每转进给与螺纹螺距一致,按道理应该螺距与锥螺纹的一致才对,笔者仔细思考它们的不同点,G03用G99指令走刀,此走刀与转速及F值有关,锥螺纹和G03的走刀所用的转速一样,F值也一样,是哪里出现问题呢?转速一致,因此不可能是转速有问题,F值与进给倍率有关,笔者认真看了一下进给倍率,进给倍率只用了40%,用螺纹指令走刀只受转速和螺距控制,进给倍率对它没影响,而用G03指令走刀除了受F值影响外还受进给倍率影响,找到问题后,事情就好解决了,笔者把进给倍率调为100%,重新加工工件,此时B~C段螺纹的螺距问题没了,但在B~C段还是存在乱牙现象。看来用G03指令走螺纹还是不靠谱,还是用螺纹指令可靠。但在B~C段误差较大,为了减少误差,在此段笔者把步距取为3 mm,也就是在B~C段的中间取节点H,调整后的节点如图4所示。走9刀的H的节点从大到小为X26.246、X25.93、X25.614、X25.3、X24.984、X24.668、X24.35、X24.034、X23.824,重新整理螺纹走刀节点坐标值,整理出的坐标值如表6所示。

图4 椭圆螺纹走刀路线示意图2

表6 椭圆螺纹走刀节点坐标值2 mm

在编制程序时,如果存在一组程序段在一个程序中重复出现,可以把这组程序段弄成子程序[3]。因为表5的螺纹程序太长,输入面板不方便,且螺纹程序已经加工成功,所以为了书写方便,笔者改成螺纹粗加工用子程序,如表7所示。

表5 椭圆螺纹的参考程序1

表7 椭圆螺纹的参考程序2

用子程序编程时要注意核对最后的X、Z轴的退刀总量,为了确保粗车螺纹的背吃刀量都是0.316 mm,X轴的退刀总量加上X轴的所有移动总量应等于-0.316(粗车螺纹每刀背吃刀量),Z轴的退刀总量加上Z轴的所有移动总量应等于0。

7 结语

在数控教学中,学生对宏程序的掌握很困难,即使老师讲解得很详细,也只有个别学生能掌握宏程序编程。直接用宏程序进行零件的粗加工,背吃刀量不易控制,工件无法加工或不能达到零件的技术要求。怎样在数控车床上加工椭圆零件呢?通常可以用直线、圆弧逼近椭圆,根据椭圆方程式先用直线逼近方法求出各节点的坐标,然后再用圆的方程式求出圆心的坐标及半径。选择逼近线段时,应该在保证精度的前提下,使节点数目尽量少,这样不仅计算简单,程序段数目也少。掌握本文所介绍的数学计算方法计算圆弧节点,用圆弧逼近椭圆的方法加工椭圆,在不能用宏程序或不会用宏程序的情况下加工椭圆就不存在问题了,而且精确度还很高。通过对椭圆螺纹的加工,发现在螺纹刀走到点C处刀具有停顿现象,加工结果是B~C段的螺纹出现乱牙且螺距偏小,不用子程序的椭圆螺纹程序太长,程序达到88段,输入面板不方便,椭圆螺纹程序用子程序才37段,程序简短了一半以上,节约了程序输入面板的时间。最后经过研究和加工验证得出:G03走椭圆螺纹不可靠,用螺纹指令走刀比较理想,在误差较大的弧段需要再加入节点,以此保证加工精度。本文介绍的用直线、 圆弧逼近椭圆的方法在不能用宏程序的情况下是行之有效的。本文介绍的椭圆面上椭圆螺纹的走刀路线的设计及编程方法,便于同行借鉴使用,又可以延伸到其它类型异型螺纹的编程,在生产加工中有着实际意义。

猜你喜欢

宏程序圆弧螺纹
螺纹短轴零件机械加工工艺设计探索
浅析圆弧段高大模板支撑体系设计与应用
椭球槽宏程序编制及其Vericut仿真
浅论数控铣螺纹加工的应用
半圆与半圆弧
宏程序在加工中心生产中的应用
如何让学生更好地掌握圆弧连接的画法
数控车编程教学中宏程序嵌套的应用
西门子R参数编程车削异型螺纹