面向轴向误差约束的小线段过渡算法
2018-10-26孙树杰李备备郎言书
孙树杰,于 东,林 浒,李备备,3,郎言书,3
1(烟台大学 机电汽车工程学院,山东 烟台 264005)2(中国科学院 沈阳计算技术研究所,沈阳110168)3(中国科学院大学,北京 100049)
1 引 言
在复杂曲面的数控加工过程中,CAM系统根据加工参数,用小线段覆盖曲面.在小线段的连续加工方面,SUN等[1]提出了速高精的路径动态前瞻规划算法:将路径规划过程与速度规划过程进行结合,根据速度规划方法优化路径规划过程,但速度规划过程中没有对加加速度进行限制,机床与刀具产生的振动会降低加工质量与加工速度.为了提高加工质量与加工速度,可以将辅助运动轨迹规划问题归结为作业调度问题[2],并在此基础上基于人工智能算法[3]进行加工路径规划,但是,这种以寻找总的最短空行程为优化目标的路径规划方法,并不能确保缩短加工时间,不能有效提高加工效率和加工质量.与此同时,张晓辉等[4]提出五次样条曲线过渡算法,SUN等[5]提出了基于时间函数的B样条曲线过渡算法,DUAN等[6]提出NURBS曲线拐角过渡方法,同时,参数样条曲线[7]和NURBS曲线[8-10]也被广泛用于描述刀具路径.但是,采用样条曲线进行进行加工路径过渡与逼近存在一些缺点.首先,曲线的拟合与插补计算复杂,其次,拟合或插值产生的曲线可能存在尖点与二重点[11],实时加工过程中难以发现并作出适当处理.
上述算法在进行路径规划时,设置唯一的轮廓误差值,未考虑轴向轮廓误差的要求.为此,SIMENS[12]提出了基于轴向误差的连续路径运行(G64-G645系列指令)概念,通过相关参数(MD33100)设置各个线性轴允许的最大轴向误差,在轴向误差的限制下进行路径规划,但相关技术和方法尚未见公开文献进行讨论.
基于以上分析,本文提出了一种基于轴向误差的轮廓误差确定方法,给出了三轴与五轴数控系统在路径规划时允许的最大轮廓误差的解析式,在路径规划时将轴向误差限定在系统要求的范围内.综合采用间除冗余点和多周期的圆弧过渡方法对小线段路径进行规划,从而达到缩短加工时间和提高加工质量的目的.
2 基于轴向误差的小线段过渡算法
2.1 确定最大轮廓误差值
三轴数控加工系统中,假设系统允许的x,y,z轴的轴向误差最大值分别为errox_max、erroy_max、erroz_max,如图1所示.由x,y,z轴轴向误差决定的系统允许的最大误差为erromax_x,erromax_y,erromax_z,则系统在OP方向上允许的最大误差为erromax,如公式(1)、公式(2)所示.
图1 系统允许的最大轮廓误差Fig.1 Maximum error allowed by the system
(1)
erromax=min(erromax_x,erromax_y,erromax_z)
(2)
在五轴数控系统的加工过程中,路径过渡时所允许的轮廓误差不仅涉及x,y,z轴,同时与旋转轴密切相关.如图2,以BC转台为例,工件坐标系中的点(x,y,z)与机床坐标系的点(X,Y,Z)对应关系如公式(3)所示,其中x0、y0、z0表示机床坐标系原点在工件坐标系中的位置,B、C表示旋转轴的旋转角度.
图2 BC双转台五轴数控机床示意图Fig.2 Illustration of five-axes machine tools with two tables
(3)
式(3)对X,Y,Z求偏导,可得由x,y,z轴轴向误差决定的加工路径所允许的系统轮廓误差errox_max_new,erroy_max_new,erroz_max_new.如公式(4-6)所示,系统允许的轮廓误差为erromax.
errox_max_new=cos(B)cos(C)errox_max+cos(C)erroy_max-
sin(B)cos(C)erroz_max
erroy_max_new=-cos(B)sin(C)errox_max+cos(C)erroy_max+
sin(B)cos(C)erroz_max
erroz_max_new=sin(B)errox_max+cos(B)erroz_max
(4)
(5)
erromax=min(min(erromax_x),min(erromax_y),min(erromax_z))
(6)
2.2 确定最大轮廓误差值
CAD系统生成加工工件的模型,CAM系统在一定精度的要求下将模型数据离散生成刀具路径.但当实际加工过程中所需的精度要求低于CAM系统时,加工路径上会产生冗余的指令点.因此,在轮廓误差允许的范围内,将冗余点去除掉,可以有效减少加工数据,在保证加工质量的基础上,提高加工速度.
图3 冗余点间除示意图Fig.3 Reduction of the command points
如图3,Pn到Pm为待加工点,Pi(n2.3 过渡模型
图4为相邻线段PnPm与PmPq的过渡模型,点Pi(n
图4 圆弧过渡模型Fig.4 Circle transition method
2.4 圆弧半径初始值的确定
由公式(1)、(2)确定系统在PmPn、PmPq方向上允许的最大误差erroPmPn、erroPmPq,则系统在∠PnPmPq的平分线PmO方向上允许的最大误差为erroPmO,其值如下公式(7)所示:
erroPmO=min(2erroPmPnsinθ,2erroPmPqsinθ)
(7)
在图4中,有如下公式成立
(8)
erromax为系统在PmO方向上所允许的最大轮廓误差,即erroPmO,将erroPmO带入公式(8)可得过渡圆弧的半径r,如下公式所示:
r=tanθLpmQ1
(9)
其中,
LpmQ1_1=cosθ/(1-sinθ)erroPmO
LpmQ1_2=min(Lpmpq/2,Lpnpm/2)
LpmQ1=min(LpmQ1_1,LpmQ1_2)
2.5 半径的修订
定理:PmPn,PmPq为相邻线段,PmPn,PmPq方向上系统允许的最大轮廓误差分别为erroPmPn,erroPmPq,平分线PmO方向上系统允许的最大轮廓误差值为erroPmO,由erroPmO确定的过渡圆弧圆心为O,则在圆弧插补过程中产生的轮廓误差,符合系统对轴向误差的要求.
证明:图5为圆弧插补模型,P6为PmO与圆弧的交点,当前插补点为P5,作P5P2平行于PmPq交PmPn于P2.
线段P5P2的长度LP5P2,LP5P2为当前插补点的轮廓误差在PmPq方向上的分量,如下所示:
LP5P2=LP5P3/sinα
当插补点在点P4、P6间的圆弧上由P6向P4移动时,LP5P3逐渐减小,α保持不变,因此LP5P2减小,符合系统轴向轮廓误差的要求.
图5 轮廓误差示意图Fig.5 Illustration of machining error
线段P1P2的长度LP1P2,LP1P2为当前插补点的轮廓误差在PmPn方向上的分量,如下所示:
LP1P2=LP5P3/(1/sinβ-1/sinα)
当插补点在点P4、P6间的圆弧上由P6向P4移动时,LP5P3、β逐渐减小,α保持不变,因此LP1P2减小,符合系统轴向轮廓误差的要求.
同理,可证当插补点在点P7、P6间的圆弧上,插补的轮廓误差符合系统要求.
推论:Pm-1为间除点,当插补过程中PmO、Pm-1O处的轮廓误差满足系统要求时,由线段PmPm-1产生的轮廓误差满足系统要求.
证明:直线OP8垂直PmPm-1交PmPm-1于P8,交过渡圆弧于P9.由定理知,当插补过程中PmO、Pm-1O处的轮廓误差满足系统要求时,点P6、P9间的过渡圆弧以及点P10、P9间的过渡圆弧在插补过程中产生的轮廓误差,符合系统对轴向误差的要求,推论得证.
由定理的推论可知,当过渡圆弧满足PmO方向上的误差要求时,由于冗余点的存在,Pi(n
1)对PnPm间的冗余点进行检查,从当前点Pi(i=m-1)开始,直到点Ps为止,Ps满足∠PsOPm≤∠Q1OPm且∠Q1OPm≤∠Ps+1OPm.
图6 过渡圆弧半径修订示意图Fig.6 Adjustment of the transition circle
(10)
(11)
4)如果i≥s转(2),否则结束PnPm间的冗余点进行检查,转(5).
5)对PmPq间的冗余点进行检查,方法如同(1)、(4),不同之处在于,每次调整过渡圆弧半径后需要再次对PmPn间的冗余点进行检查,直到检查完毕.
3 实验与分析
为了验证算法的性能,采用SMTCL VMC850E加工中心对图7(a)所示的刀具路径进行加工.
试验中输入的初始路径如图7(a)示,包含59个指令点.间除冗余点前加工路径包含117个路径段,在间除冗余点后含有89个路径段,间除冗余点减少了加工路径的数据量.图7(b)为实际加工结果,未间除冗余点时,加工用了294ms,间除冗余点后用了196ms,间除冗余点算法减少了加工时间.
图7 加工实验Fig.7 Experiments
将图7(b)中矩形所示的区域放大,结果如图8所示,可以看出间除冗余点后,工件的加工质量更高.这是由于间除冗余点后加工路径的数据量减少、单条路径的长度增长,平滑的加工速度减少了刀具振动,提高了加工质量.
图8 局部加工结果放大图Fig.8 Enlarged experimental results
记录图7(a)对应刀具路径在加工过程中得到的数据,得到表1和表2.
表1 加工路径数据量对比
Table 1 Comparison of the information of tool path
加工数据初始加工路径段数间除冗余点前路径段数间除冗余点后路径段数加工数据减少率图7(a)591178923.9%
表2 加工时间对比
Table 2 Comparison of machining time
加工数据间除冗余点前加工时间/ ms间除冗余点后加工时间/ ms效率提升率图7(a)2592175432.3%
从表1中数据的对比可以看出,间除冗余点算法可以有效减少加工路径的数据量.从表2中数据的对比可以看出,加工路径数据量的减少,提高了速度规划效率,减少了加工时间.
实验证明,基于轴向误差进行冗余点间除的小线段过渡算法能有效减少加工时间,提高加工质量.
4 结 论
1)提出的轮廓误差计算方法和冗余点间除方法,在保证加工精度的基础上,可有效地减少待加工路径的数据量.
2)以基于轴向误差的圆弧轨迹规划方法和基于冗余点的圆弧参数调整方法为基础,进行加工路径规划,可以有效减少加工时间,提高加工效率和加工质量.