王 琦,王桂榮
(中國計量大學 機電工程學院,浙江 杭州 310018)
在航空航天、汽車領域的復雜零件的高精高速加工中,NURBS(non-uniform rational B-splines)插補應用廣泛[1]。NURBS插補是在以NURBS曲線構成的待加工軌跡上,進行刀具進給速度規(guī)劃,再計算每個插補周期的目標點坐標。其中,對NURBS曲線的進給速度規(guī)劃對加工時間及質量有重要影響。
進給速度規(guī)劃算法分為固定模式的加減速算法,如應用廣泛且可實時進行的S型加減速算法[2,3],以及最優(yōu)時間速度規(guī)劃算法;其先建立數(shù)學最優(yōu)模型,再采用線性規(guī)劃[4]、粒子群算法(particle swarm optimization, PSO)[5]、啟發(fā)式算法[6]等求解滿足約束條件的速度曲線。最優(yōu)算法往往需要較長時間迭代,一般用于離線速度規(guī)劃,再進行實時插補。相比固定模式的加減速算法,最優(yōu)算法搜索空間更大,可找到滿足各種約束下的加工時間更少的速度曲線。速度曲線的高階運動性質對加工有重要影響,羅亮等[7]指出加加速度越平滑,工作臺振動幅值的增加量就越小。傳統(tǒng)的加減速算法通過構造連續(xù)的加加速度曲線,如三次多項式的速度曲線[8],即可容易實現(xiàn)加加速度曲線的連續(xù)。然而,對于最優(yōu)算法,一般通過限定加加速度上界來約束,速度曲線光順性不足,加加速度曲線振蕩幅度大,速度曲線上的一些小尖峰雖然加快了加工速度,以充分發(fā)揮機床的加減速性能,但是造成了加加速度的急劇變化,造成了振動。因此有必要對最優(yōu)算法得到的進給速度曲線進行光順。趙洋[9]將CAGD(computer aided geometric design)領域的能量光順法應用到了速度曲線的光順問題中,但未直接針對最優(yōu)速度曲線,且光順調整過程未考慮到可能引起的違反約束問題,光順和曲線演化一起迭代進行,有很多重復的計算工作。
本文在采用啟發(fā)式時間最優(yōu)速度規(guī)劃得到最優(yōu)速度曲線的基礎上,抓主要矛盾,提出固定部分區(qū)域光順的方法,采用數(shù)學建模方法,基于能量光順法對進給速度曲線的光順性和時間性進行建模,利用最優(yōu)化理論進行求解,為最優(yōu)速度曲線的光順性提供直接的改善方法,使加工時間和加工質量得到較好折衷。
二維待加工軌跡可直接用NURBS曲線表示,對于直線圓弧或離散點構成的待加工軌跡可用NURBS曲線進行擬合,由于NURBS曲線具有可微性,可實現(xiàn)待加工軌跡的光順。
NURBS曲線的定義[10]為:
(1)
式中:u—無量綱曲線參數(shù);[x(u),y(u)]—u所對應的曲線上一點的坐標值;Pi—二維控制點i的坐標;wi—Pi對應的權因子;Ni,p(u)—節(jié)點向量U上的p次B樣條基函數(shù),其中,U=[u0,u1,…,un+p+1]。
u對應待加工軌跡的一點[x(u),y(u)],這一點的一維進給速度記為v(u),v(u)-u可表示為曲線的形式,v(u)用p次一維B樣條來表示,即:
(2)
式中:Vi—等間隔u對應的一維控制點序列中序號為i的控制點,i=0~n。
可通過調整控制點的值來調整速度曲線。B樣條曲線具有可微性,在節(jié)點區(qū)間內部是無限次可微的,有利于速度曲線的光順性;同時,B樣條曲線又具有局部性,即調整一個控制點,僅對其周圍的曲線有影響,有利于局部調整曲線與約束檢查。
此處的B樣條次數(shù)取3次。
進給速度規(guī)劃一般受以下3類約束限制:
(1)弦高誤差約束:
(3)
式中:ρ—曲率半徑;Ts—插補周期;emax—加工允許的最大弦高誤差;v—當前進給速度。
(2)工藝限制約束:
(4)
式中:vu—v(u)對參數(shù)u的導數(shù);Pu—待加工軌跡P(u)對u的一階弧微分;au—a(u)對參數(shù)u的導數(shù);Vmax,Amax,Jmax—工藝要求的刀具速度、加速度、加加速度極限。
(3)機床驅動限制約束:
(5)
對于給定的NURBS待加工軌跡P(u),進給速度規(guī)劃的目標是在滿足上述式(3~5)約束的前提下,盡可能提高速度,以減小加工時間。
決策變量是速度曲線v(u)的控制點值,目標函數(shù)為加工時間的最小化,即:
(6)
為降低機床加工時的振動,提高工件的加工質量,時間最優(yōu)的進給速度需要光順。光順性的定義較為模糊,一般認為光順曲線不存在奇點和多余拐點、曲率連續(xù),且變化較小、應變能較小。進給速度的光順指提高對應加工軌跡的進給速度曲線的光順性。
本文面向時間最優(yōu)的速度曲線進行光順,首先由啟發(fā)式速度規(guī)劃獲得時間最優(yōu)的速度曲線,然后對于已接近加工時間最優(yōu)的速度曲線:
(1)由于能量光順法是沒有方向性的,任一點的速度都可能變大或變小,容易超過約束限制;
(2)另外,加工時間的最優(yōu)性不能因為改善光順性而大量下降。
基于以上兩方面,筆者提出固定部分區(qū)域的光順算法。
可由啟發(fā)式算法來獲得時間最優(yōu)的進給速度曲線,算法步驟為:
(1)生成初始的B樣條速度曲線,需確定控制點數(shù)量n、曲線次數(shù)p、節(jié)點向量U,控制點初始值為單個插補周期能從零達到的滿足約束的最大速度;
(2)對控制點進行一輪調整,依次調整第2~n-1個控制點值,單個控制點采用二分法迭代[11]調整;
(3)計算本輪調整后的平均速度與上一輪的差值,若小于閾值,則獲得時間最優(yōu)的速度曲線,控制點向量記為V0,結束;否則,返回(2)。
2.2.1 算法思路
部分區(qū)域首先指速度極小值區(qū)域,其次指固定極小值區(qū)域進行光順后出現(xiàn)的超限區(qū)域。低速區(qū)域的速度大小對加工時間的影響非常重要,將低速區(qū)域固定,保持低速區(qū)域的最優(yōu)性,在此基礎上通過設置較大的逼近因子,使其余區(qū)域的最優(yōu)性大致保留。
此外,部分區(qū)域固定,其余區(qū)域的速度曲線整體會向固定區(qū)域靠近,這使得固定速度極小值區(qū)域后,速度的調整大致為向下調整,從而使超限的情況大量減少。對于光順后出現(xiàn)的超限區(qū)域,也將其作為固定區(qū)域,這樣光順前后這塊速度曲線與原來相同,則滿足約束。
2.2.2 固定部分區(qū)域光順的優(yōu)化模型
能量法是曲線光順常用的一種方法,本文算法在此基礎上進行,通過曲線的應變能來反映光順性,曲線應變能越小光順性越好,光順后曲線應變能為:
(7)
式中:α—曲線的光順因子;k—曲線曲率。
曲率k可近似為B樣條速度曲線對參數(shù)的二階導,即:
(8)
式中:v(u)—光順后u處的進給速度值。
將式(8)代入式(7),經(jīng)計算可得:
(9)
此外,光順后的速度曲線要與原來的時間最優(yōu)速度曲線相差盡可能小,曲線光順前后的偏離量記為:
(10)
決策變量是控制點序列的值。目標函數(shù)為E1、E2都需要最小化,將雙目標加權合為單目標。固定部分區(qū)域通過對相應控制點保持光順前后不變來實現(xiàn),在優(yōu)化模型中作為約束條件出現(xiàn)。
現(xiàn)將固定部分區(qū)域的速度曲線光順的優(yōu)化模型表示如下:
決策變量:
V=[V0…Vj…Vm+2]T
(11)
(1)目標函數(shù):
(12)
(2)約束函數(shù):
(13)
式中:l—固定區(qū)域的控制點序號。
(3)優(yōu)化模型的求解
以上是有等式約束的凸優(yōu)化問題,一般用拉格朗日乘子法解決,但該問題中,約束函數(shù)中能確定一些變量即固定控制點的最終值,那么問題可以看作比原來少一些變量的無約束凸優(yōu)化問題,可直接對變量求偏導得到最優(yōu)值。
方程的通用形式為:
(14)
對式(14)進行化簡,且將α拓展為αi可得:
(15)
若控制點Vi需要固定,可將αi置為0,則有:
(16)
將式(14)中的Vj(j=0~m+2)提出到列向量中,m+3個等式寫成矩陣形式,即:
AV=C
(17)
式中:V—待求的控制點列向量,V=(Vi)m+3,1;A,C—m+3個等式中V提出后得到的矩陣、向量,A=(aij)m+3,m+3,C=(Ci)m+3,1。
其中:
(18)
式(18)的積分可采用梯形法計算,V的求解可采用高斯消元法。這樣通用形式求解的V與固定的控制點作為常量,其余控制點作為變量的無約束凸優(yōu)化問題同解,也與式(11~13)的等式約束的凸優(yōu)化問題同解。
2.2.3 算法步驟
(1)掃描控制點值確定多個極小值和極大值,將極小值對應的控制點索引加入G,極大值的加入M;G代表固定的控制點的索引集合;
(2)對每個極小值左右相鄰的一個控制點,若該控制點的索引不屬于G或M,則加入G;此時G所代表的控制點成為極小值區(qū)域;
(3)將G對應的控制點的光順因子αi置為0,實現(xiàn)光順算法中最小值區(qū)域的固定;
(4)進行固定區(qū)域的能量光順,即對式(17)構成的矩陣方程求解V;
(5)將求出的V構成B樣條曲線,檢查超限區(qū)域,將超限區(qū)域附近的控制點值置為時間最優(yōu)規(guī)劃的結果值,將這些控制點依次加入G,轉入(4),直到滿足約束或超限區(qū)域全部控制點加入G。
為驗證本文方法的正確性和有效性,筆者在MATLAB上進行仿真分析,在加工時間上和速度曲線的光順性方面,將所提算法與啟發(fā)式時間最優(yōu)算法進行比較;在加工時間上,與三角函數(shù)型加減速算法[12]進行比較。
所提算法與啟發(fā)式算法需要設置的參數(shù)如下:
B樣條曲線參數(shù):曲線次數(shù)p=3,控制點數(shù)量n=201,節(jié)點向量采用準均勻的B樣條曲線進行生成;
啟發(fā)式算法:二分最大次數(shù)Ns=10,收縮因子Rf=0.68,結束迭代閾值為1,檢測步長0.000 1。
能量光順中,光順因子初始化為2×10-8,逼近因子初始化為9.8×10-7。得到進給速度后,插補方法使用二階泰勒展開法[13],得到插補步數(shù)后,計算加工時間。
筆者在相同的數(shù)控加工參數(shù)下和相同的待加工軌跡上運行不同的算法。
數(shù)控加工參數(shù)如表1所示。
表1 數(shù)控加工參數(shù)
待加工蝴蝶形NURBS軌跡如圖1所示。
圖1 待加工蝴蝶形NURBS軌跡
按以上參數(shù),本文所提算法與時間最優(yōu)法規(guī)劃的進給速度對比如圖2所示。
圖2 所提算法與時間最優(yōu)法規(guī)劃的進給速度對比圖
圖2中,本文算法規(guī)劃的進給速度符合小于250 mm·s-1的約束,兩條曲線基本重合,說明保留了時間最優(yōu)性,但振蕩處進行了光順(詳見圖2中的放大處)。
所提算法與時間最優(yōu)法進給加速度對比如圖3所示。
圖3 所提算法與時間最優(yōu)法規(guī)劃的進給加速度對比圖
由圖3可知:本文所提算法的進給加速度符合小于800 mm·s-2的約束;且相比于時間最優(yōu)法,一些尖峰值減小,振蕩區(qū)域幅度也減小。
本文所提算法與時間最優(yōu)法進給加加速度對比如圖4所示。
圖4 所提算法與時間最優(yōu)法進給加加速度對比圖
由圖4可知:本文所提算法的進給加加速度符合小于26 400 mm·s-3的約束;且相比于時間最優(yōu)法,多處尖峰值明顯減小,振蕩區(qū)域幅度也減小。
本文所提算法與時間最優(yōu)法單軸加加速度對比如圖5所示。
圖5 所提算法與時間最優(yōu)規(guī)劃法單軸加加速度對比圖
由圖5可知:本文所提算法的單軸加加速度符合小于26 400 mm·s-3的約束,相比于時間最優(yōu)法,多處尖峰值明顯減小,振蕩區(qū)域幅度也減小;此外,弦高誤差、單軸速度、單軸加速度都符合表1約束。
結合圖(2~5)可知:本文所提算法通過平緩速度振蕩較大的區(qū)域而其他區(qū)域基本不變,使得相應的加速度、加加速度及單軸的加速度和加加速度振蕩幅度減小,從而降低了機床加工時的振動,且保留時間最優(yōu)性。
筆者使用加速度、加加速度的平均采樣步長改變量來表示振蕩程度,采樣步長0.000 1。
兩種算法單軸運動性質光順性對比如表2所示。
表2 兩種算法單軸運動性質光順性對比
由表2可知:與啟發(fā)式時間最優(yōu)法相比,本文所提算法的x、y軸加速度曲線的平均采樣步長改變量平均下降8.34%,x、y軸加加速度曲線的平均采樣步長改變量平均下降16.37%;由此可見,單軸運動性能的光順性得到了較大改善。
在蝴蝶形NURBS待加工軌跡上,不同算法加工時間如表3所示。
表3 不同算法加工時間對比表
由表3可知:本文算法比啟發(fā)式時間最優(yōu)規(guī)劃算法僅多用了0.22%的加工時間,比三角函數(shù)型加減速算法少了19.8%的加工時間;可見,經(jīng)本文的算法光順后,保留了大部分的時間最優(yōu)性。
本文對數(shù)控加工速度規(guī)劃的加工時間和加工質量的平衡問題,進行了時間最優(yōu)速度曲線的光順研究,提出了固定部分區(qū)域的光順算法,經(jīng)仿真實驗結果表明,在滿足速度規(guī)劃約束和保留大部分時間最優(yōu)性的前提下,可以實現(xiàn)進給速度曲線的光順;同時,可以減小加速度、加加速度及單軸相應性質的振蕩程度,有利于實現(xiàn)高速高精加工。
該算法中,目前對速度極小值區(qū)域的范圍界定方法簡單,因此,如何更精細地確定范圍以獲得更好的時間性和光順性,這是下一步需要進行的研究。同時,該方法還有待與其他的時間最優(yōu)性算法相結合;所面向的二維NURBS加工曲線還有待于向三維曲面加工方向進行拓展。