本发明涉及一种面向侧铣加工的刀具形状优化方法,具体涉及一种复杂曲面高精度侧铣加工的刀具优化和与所生成刀具对应的加工轨迹生成方法。
背景技术:
在航空发动机的叶轮叶片等复杂曲面的加工中,常用的加工技术有端铣加工和侧铣加工。端铣加工技术存在容易产生干涉以及加工效率低等问题。侧铣加工属于线接触加工,具有较宽的加工行距,因此加工效率远大于端铣加工。侧铣加工具有较高的加工精度,一般应用于精加工阶段。侧铣加工要求在每一个时刻刀具和工件曲面相切于一条曲线,这样严格的几何约束使得侧铣加工的路径规划比较困难,因此目前侧铣加工主要用于直纹面的加工。
对非可展直纹面或者自由曲面,采用标准刀具难以得到高精度的加工结果,需要针对设计曲面计算出合适的刀具曲面形状以及相应的加工轨迹,然后定制刀具用于实际加工。已有方法可以得到离散的刀具曲面的表示,表示精度不够高,且已有侧铣加工刀具形状优化方法没有考虑运动抖动和过切的控制。
技术实现要素:
本发明的目的是提供一种复杂曲面高精度侧铣加工的刀具优化和与所生成刀具对应的加工轨迹生成方法。跟已有方法不同,本发明的方法直接优化一个b样条表示的刀具曲面,得到连续参数曲面表示的刀具形状,同时得到刀具运动路径的连续表示,且该方法能够控制过切和刀具抖动。
本发明的目的是通过以下技术方案实现的:
一种复杂曲面侧铣加工的刀具优化和加工轨迹生成方法,包括如下步骤:
步骤一、交互设计初始曲线a(t)和b(t),生成初始加工路径:
(1)用户交互指定k 1个线段,每一个线段的两个端点位于曲面s上,假设得到线段序列l0=(a0,b0),...,lk=(ak,bk),其中ai,bi,i=0,...,k表示线段的两个端点,每一个线段的长度等于l,l为刀具的长度;
(2)将(1)中得到的线段的端点ai或者bi沿着曲面法向的方向分别移动距离ra和rb,即更新为:
ai=ai n(ai)·ra;
bi=bi n(bi)·rb;
其中,n(p)表示p点的曲面法向;
(3)基于端点ai、bi,定义刀具轴线两端的轨迹曲线为:
其中,ni,d(t)是d次的b样条基函数;
连接a(t)和b(t)上相同参数点的线段表示刀具的轴线,轴线上的点定义的轴迹面r(t,s)如下:
r(t,s)=a(t)(1-s) b(t)st∈[0,1],s∈[0,l];
步骤二、生成初始的刀具形状:
(1)在轴迹面r(t,s)上取采样点ri,j:
ri,j=r(ti,sj)=a(ti)(1-sj) b(ti)sj;
其中,sj∈[0,1],j=0,...,w,是参数域s内的采样值,w 1是采样点的个数;ti∈[0,1],j=0,...,y,是参数域t内的采样值,y 1是采样点的个数;
(2)计算每一个采样点ri,j到设计曲面s的最近距离di,j,在平面直角坐标系x-y内定义数据点(sj,di,j);
(3)将数据点(sj,di,j)拟合成如下形式的函数:
其中,fi,i=0,...,nf是1维控制点,控制点个数是nf 1;ni,d(s)是d次b样条基函数;
假设刀具曲面的轴线是l(s),r(s)定义了一个平面曲线c,曲线c绕x轴旋转360度得到的旋转曲面作为初始刀具曲面;
步骤三、优化加工路径和刀具形状:
(1)在轴迹面r(t,s)上采样得到数据点r(ti,sj):
r(ti,sj),i=0,...,n1,j=0,...,n2;
其中,n1和n2是整数,分别代表了在参数t和参数s上的采样点数目;
计算采样点r(ti,sj)在设计曲面s上的垂足点s(ui,j,vi,j),计算设计曲面上点s(ui,j,vi,j)处的单位法向量n(ui,j,vi,j);
(2)求解下式定义的优化问题:
其中,(a′(ti)-b′(ti))·(b(ti)-a(ti))=0,i=0,...,n是刚体运动约束,意味着刀具轴线在运动中保持长度固定;fapprox是考虑过切控制的距离误差函数,fenergy是刀头运动的稳定性控制函数;
步骤四、误差计算:
计算r(ti,sj)在设计曲面s上的垂足点s(ui,j,vi,j),计算加工误差
步骤五、刀具曲面的计算;
以坐标系的x轴作为z轴,以任意垂直于z的向量作为x轴,以z×x(×表示向量的叉乘)作为y轴建立直角坐标系,在该坐标系下刀具曲面的参数化如下式定义:
其中,s和θ是刀具曲面的参数。
本发明中,优化问题中的变量包括曲线a(t)的控制点ai,i=0,…,k,b(t)的控制点bi,i=0,…,k(k代表控制点的数目),以及函数r(s)的控制点fi,i=0,...,nf(nf代表控制点的数目)。
相比于现有技术,本发明具有如下优点:
(1)本发明的主要贡献是提出一种计算框架,能够直接计算复杂曲面侧铣加工的刀具形状的连续参数化曲面表示,具有较高的精度和较高的计算效率。已有的方法只能计算刀具曲面的离散表示,若想得到较高的精度需要较多的变量,而较多的变量也会增加计算量,降低计算效率。
(2)本发明的计算框架直接优化刀具的加工路径,通过引入刀具抖动相关的函数,实现了对刀具抖动的控制。
(3)本发明的计算框架可以对加工中的过切进行控制,能生成无过切的加工结果。
附图说明
图1为设计曲面上的线段序列;
图2为将线段序列沿曲面法向抬高;
图3为生成初始轴迹面;
图4为一般刀具的形状定义;
图5为初始刀具形状和运动;
图6为本发明方法的流程图;
图7为本发明方法生成的加工轨迹(左)和对应的近似圆锥曲面的刀具形状(右);
图8为本发明方法生成的加工轨迹(左)和对应的凸曲面的刀具形状(右);
图9为本发明方法生成的加工轨迹(左)和对应的凹曲面的刀具形状(右)。
具体实施方式
下面结合附图对本发明的技术方案作进一步的说明,但并不局限于此,凡是对本发明技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的保护范围中。
在五轴数控加工技术中,侧铣加工采用刀具的侧面对材料进行去除。高速旋转的刀头可以看作一个旋转曲面,因此高精度的侧铣加工对应刀具旋转曲面运动生成的包络曲面高精度逼近加工曲面。本发明适用的刀具可以是铣削刀具或者是研磨刀具。
刀具曲面的形状和加工轨迹是紧密联系的两个问题,需要同时求解。已有的刀头形状方法不能直接得到连续的刀具曲面。本发明提出了一种针对给定设计曲面s的刀具曲面和加工轨迹的计算方法,如图6所示,具体包括如下步骤:
1、求解刀具曲面和加工轨迹
假设设计曲面为s,刀具曲面φ沿着加工运动轨迹生成的包络面为e。加工误差由e和s之间的距离误差衡量。刀具曲面φ(θ,s)和加工轨迹r(t,s)两者的参数共同决定了加工结果的质量。本发明的方法同时求解刀具曲面φ(θ,s)和加工轨迹r(t,s)的参数,步骤如下:
步骤1:交互设计曲线a(t)和b(t),生成初始加工路径;
设定刀具的长度l,刀具的大概宽度r等参数。该步骤包含以下子步骤:
(1)用户交互指定了k 1个线段,每一个线段的两个端点位于曲面s上,端点的位置由用户指定。假设得到线段序列l0=(a0,b0),...,lk=(ak,bk),其中ai,bi,i=0,...,k表示线段的两个端点,每一个线段的长度等于l。如图1所示。
(2)将(1)中得到的线段的端点ai或者bi沿着曲面法向的方向分别移动距离ra和rb,即更新为:
ai=ai n(ai)·ra;
bi=bi n(bi)·rb;
其中,n(p)表示p点的曲面法向。如图2所示。
(3)基于端点ai、bi,定义刀具轴线两端的轨迹曲线为:
这里采用了b样条曲线的定义,其中ni,d(t)是d次的b样条基函数。连接a(t)和b(t)上相同参数点的线段表示刀具的轴线,轴线上的点定义的轴迹面r(t,s)如公式1所示:
r(t,s)=a(t)(1-s) b(t)st∈[0,1],s∈[0,l](1);
其中,l是刀具轴线的长度。如图3所示。
步骤2:生成初始的刀具形状。该步骤包含如下子步骤:
(1)在轴迹面r(t,s)上取一些采样点ri,j:
ri,j=r(ti,sj)=a(ti)(1-sj) b(ti)sj;
其中,sj∈[0,1],j=0,...,w,是参数域s内的采样值,w 1是采样点的个数;ti∈[0,1],j=0,...,y,是参数域t内的采样值,y 1是采样点的个数。
(2)计算每一个采样点ri,j到设计曲面s的最近距离di,j,在平面直角坐标系内定义数据点(sj,di,j);
(3)对数据点(sj,di,j)拟合如公式(2)形式的函数:
其中,fi,i=0,...,nf是1维控制点,控制点个数是nf 1,ni,d(t)是d次的b样条基函数,节点矢量采用两端重节点(重复度d 1),使得曲线插值首尾的控制点。
假设刀具曲面的轴线是l(s),其中s∈[0,l]是弧长参数化,l是刀具曲面轴线的长度。公式(2)的函数r(s)表示轴线上的点l(s)到刀具曲面的最短距离,称为半径函数,则半径函数r(s)可以定义刀具曲面的轮廓线,如图4所示。r(s)定义了一个平面曲线c,曲线c绕x轴旋转360度得到的旋转曲面即刀具曲面。
这种刀具曲面的表示方法包含了一些特殊的刀具曲面,例如圆锥刀头、圆柱刀头、鼓型刀头等。例如,对于圆柱刀头,函数r(s)是一个常数,即r(s)=c;对于圆锥刀头,函数r(s)是线性函数r(s)=as b,其中形状参数a,b决定了圆锥的形状。
步骤3:优化加工路径和刀具形状。该步骤包含如下子步骤:
(1)在轴迹面r(t,s)上采样得到一些数据点r(ti,sj):
r(ti,sj),i=0,...,n1,j=0,...,n2;
其中,n1和n2是整数,分别代表了在参数t和参数s上的采样点数目。计算采样点r(ti,sj)在设计曲面s上的垂足点s(ui,j,vi,j),计算设计曲面上点s(ui,j,vi,j)处的单位法向量n(ui,j,vi,j)。
(2)求解公式(4)定义的优化问题。优化变量是曲线a(t)和b(t)的控制点ai,bi,i=0,...,k以及半径函数的控制点fi,i=0,...,nf。
其中,(a′(ti)-b′(ti))·(b(ti)-a(ti))=0,i=0,...,n是刚体运动约束,意味着刀具轴线在运动中保持长度固定,n是整数,代表在参数t上的采样个数;fapprox是实现过切控制的距离误差函数,fenergy是刀头运动的稳定性控制函数。
假设n和m分别代表在参数t和s上的采样数目,fapprox定义如下:
其中:
dapprox,ij=λdistance1d1,ij λdistance2d2,ij(5);
d1,ij=||a(ti)(1-sj) b(ti)sj-(s(uij,vij) n(uij,vij)·(h r(si)))||2(6);
d2,ij=((a(ti)(1-sj) b(ti)sj-(s(uij,vij) n(uij,vij)·(h r(si))))·n(uij,vij))2(7)。
公式(6)和公式(7)分别定义了点-点距离函数和点-面距离函数,其含义是使用设计曲面s的等距曲面作为距离约束的目标曲面,等距曲面的变换距离是h,即可以通过调整h的值实现对过切的控制,可以得到无过切的加工结果;λdistance1和λdistance2分别是点-点距离函数和点-面距离函数的权重。
刀头的运动由轴线两端点的运动曲线a(t)和b(t)表示,刀头的稳定运动可以表述为曲线a(t)和b(t)的光顺性。本发明通过曲线a(t)和b(t)的能量函数来控制运动的稳定性,减少抖动。曲线的光顺性用下面的能量函数衡量:
刀具运动的抖动可以用下面的函数来近似衡量:
一个光顺、稳定、抖动较少的运动意味着函数e1,a、e1,b、e2,a、e2,b、e3,a、e3,b的函数值较小,因此定义总的能量函数:
fenergy=λenergy1(e1,a e1,b) λenergy2(e2,a e2,b) λenergy3(e3,a e3,b);
其中,λenergy1、λenergy2、λenergy3是能量函数的权重。
步骤4:误差计算。
计算r(ti,sj)在设计曲面s上的垂足点s(ui,j,vi,j)。计算加工误差
步骤5:刀具曲面的计算。
以图4中的坐标系的x轴作为z轴,以任意垂直于z的向量作为x轴,以z×x(×表示向量的叉乘)作为y轴建立直角坐标系。在该坐标系下刀具曲面的参数化表示如公式(8)定义。
其中,s和θ是刀具曲面的参数,l刀具轴线的长度;r(s)是步骤3得到的刀具形状定义函数。图5给出了一个加工路径上一些位置的刀具曲面。
2、结果
图7、图8、图9给出了一些本发明方法得到的刀具形状和对应的侧铣加工路径,其中图7中的刀具形状近似圆锥曲面;图8中加工曲面是凹的,得到的刀具曲面是凸曲面;图9中的加工曲面是凸的,得到的刀具曲面是凹曲面。
1.一种复杂曲面侧铣加工的刀具优化和加工轨迹生成方法,其特征在于所述方法包括如下步骤:
步骤一、交互设计曲线a(t)和b(t),生成初始加工路径:
(1)用户交互指定k 1个线段,每一个线段的两个端点位于曲面s上,假设得到线段序列l0=(a0,b0),...,lk=(ak,bk),其中ai,bi,i=0,...,k表示线段的两个端点,每一个线段的长度等于l,l为刀具的长度;
(2)将(1)中得到的线段的端点ai或者bi沿着曲面法向的方向分别移动距离ra和rb,即更新为:
ai=ai n(ai)·ra;
bi=bi n(bi)·rb;
其中,n(p)表示p点的曲面法向;
(3)基于端点ai、bi,定义刀具轴线两端的轨迹曲线为:
其中,ni,d(t)是d次的b样条基函数;
连接a(t)和b(t)上相同参数点的线段表示刀具的轴线,轴线上的点定义的轴迹面r(t,s)如下:
r(t,s)=a(t)(1-s) b(t)st∈[0,1],s∈[0,l];
步骤二、生成初始的刀具形状:
(1)在轴迹面r(t,s)上取采样点ri,j:
ri,j=r(ti,sj)=a(ti)(1-sj) b(ti)sj;
其中,sj∈[0,1],j=0,...,w,是参数域s内的采样值,w 1是采样点的个数;ti∈[0,1],j=0,...,y,是参数域t内的采样值,y 1是采样点的个数;
(2)计算每一个采样点ri,j到设计曲面s的最近距离di,j,在平面直角坐标系x-y内定义数据点(sj,di,j);
(3)将数据点(sj,di,j)拟合成如下形式的函数:
其中,fi,i=0,...,nf是1维控制点,控制点个数是nf 1;ni,d(s)是d次b样条基函数;
假设刀具曲面的轴线是l(s),r(s)定义了一个平面曲线c,曲线c绕x轴旋转360度得到的旋转曲面作为初始刀具曲面;
步骤三、优化加工路径和刀具形状:
(1)在轴迹面r(t,s)上采样得到数据点r(ti,sj):
r(ti,sj),i=0,...,n1,j=0,...,n2;
其中,n1和n2是整数,分别代表了在参数t和参数s上的采样点数目;
计算采样点r(ti,sj)在设计曲面s上的垂足点s(ui,j,vi,j),计算设计曲面上点s(ui,j,vi,j)处的单位法向量n(ui,j,vi,j);
(2)求解下式定义的优化问题:
其中,(a′(ti)-b′(ti))·(b(ti)-a(ti))=0,i=0,...,n是刚体运动约束,意味着刀具轴线在运动中保持长度固定;fapprox是考虑过切控制的距离误差函数,fenergy是刀头运动的稳定性控制函数;
步骤四、误差计算:
计算r(ti,sj)在设计曲面s上的垂足点s(ui,j,vi,j),计算加工误差
步骤五、刀具曲面的计算;
以坐标系的x轴作为z轴,以任意垂直于z的向量作为x轴,以z×x作为y轴建立直角坐标系,在该坐标系下刀具曲面的参数化如下式定义:
其中,s和θ是刀具曲面的参数。
2.根据权利要求1所述的复杂曲面侧铣加工的刀具优化和加工轨迹生成方法,其特征在于所述fapprox定义如下:
其中:
dapprox,ij=λdistance1d1,ij λdistance2d2,ij;
d1,ij=||a(ti)(1-sj) b(ti)sj-(s(uij,vij) n(uij,vij)·(h r(si)))||2;
d2,ij=((a(ti)(1-sj) b(ti)sj-(s(uij,vij) n(uij,vij)·(h r(si))))·n(uij,vij))2;
n和m分别代表在参数t和s上的采样数目,λdistance1和λdistance2分别是点-点距离函数和点-面距离函数的权重。
3.根据权利要求1所述的复杂曲面侧铣加工的刀具优化和加工轨迹生成方法,其特征在于所述fenergy定义如下:
fenergy=λenergy1(e1,a e1,b) λenergy2(e2,a e2,b) λenergy3(e3,a e3,b);
其中:
λenergy1、λenergy2、λenergy3是能量函数的权重。
技术总结