張云飛,郝小忠,陳耿祥,劉 旭
(1. 南京航空航天大學機電學院,南京 210016; 2. 南京工業(yè)大學機械與動力工程學院,南京 210009)
高速切削加工(HSM)集信息、控制、材料、加工等技術(shù)于一體,具有高效、低能耗、高質(zhì)量、短周期等顯著優(yōu)勢,但是隨著高速切削加工的發(fā)展,加工顫振問題也緊隨而來。由于切削加工的周期性,刀具和工件之間會產(chǎn)生相對振動,當這種振動頻率在整個切削加工系統(tǒng)的固有頻率附近時,加工顫振就會發(fā)生。加工顫振嚴重限制高速切削加工技術(shù)諸多優(yōu)勢的發(fā)揮,嚴重影響工件表面質(zhì)量,同時會導致機床壽命縮短、刀具磨損加劇。現(xiàn)有方法主要通過繪制穩(wěn)定性葉瓣圖(SLD)來進行顫振抑制[1–2],而機床刀尖點頻響函數(shù)則是構(gòu)建穩(wěn)定性葉瓣圖的重要輸入[3–4]。機床刀尖點頻響函數(shù)對機床結(jié)構(gòu)的變化十分敏感,無論是機床主軸的位置或姿態(tài)改變還是刀具/刀柄改變,機床刀尖點頻響函數(shù)都可能隨之變化。因此,要得到準確的穩(wěn)定性葉瓣圖,須得到機床全工作空間下、各種刀具/刀柄組合下的刀尖點頻響函數(shù)[5]。
機床刀尖點頻響函數(shù)的獲取方法包括有限元法[6],機床子結(jié)構(gòu)響應耦合法(Receptance Coupling Substructure Analysis,RCSA)[7–9]以及錘擊試驗法。有限元法需要在仿真環(huán)境下建立機床模型,再通過模態(tài)分析即可獲得機床刀尖點頻響函數(shù),但由于機床結(jié)構(gòu)十分復雜,構(gòu)造準確的加工系統(tǒng)有限元模型非常困難,實際應用時必須進行大量的簡化,因此該類方法的準確性難以得到保證。RCSA方法將機床分解為若干個子結(jié)構(gòu),然后分別針對每個子結(jié)構(gòu)選取合適的方式獲取其頻響函數(shù),最終將這些子結(jié)構(gòu)的頻響函數(shù)進行柔性或者剛性耦合以預測機床刀尖點的頻響函數(shù)。這種方法可以比較高效地獲取機床刀尖點頻響函數(shù),但是機床子結(jié)構(gòu)之間的連接狀態(tài)模型和連接參數(shù)的辨識一直是該方法的難題。到目前為止,學者們提出了各種各樣的連接狀態(tài)模型,其中有單點彈簧阻尼模型[10],兩點彈簧阻尼模型[11],均布彈簧阻尼模型[12–13],以及彈性層面模型[14]等。相應的,連接參數(shù)的辨識方法也有很多種,包括非線性優(yōu)化算法求解[15–16],RCSA方法逆求解[17–18]等??傊?,連接狀態(tài)模型和連接參數(shù)的辨識方法還處于研究階段,距離工程應用還有一定差距,RCSA方法的準確度也有待進一步提高。
錘擊試驗法是獲取機床刀尖點頻響函數(shù)的經(jīng)典方法,基于該方法可以得到準確的測量結(jié)果。但是使用這種方法進行一次測量只能得到一個主軸位置處、一種刀柄–刀具組合狀態(tài)下的刀尖點頻響函數(shù)。如果刀柄、刀具或者機床主軸位置發(fā)生改變,就需要重新進行測量。因此,如果使用錘擊試驗法測量機床全工作空間下、各種刀具/刀柄組合下的刀尖點頻響函數(shù),必須要求機床長時間停機,這顯然難以滿足實際生產(chǎn)要求。
目前,在關(guān)于機床刀尖點頻響函數(shù)的研究中,多數(shù)學者都熱衷于發(fā)展RCSA方法,錘擊試驗法卻鮮有人問津。但事實上,近年來多種回歸算法大力發(fā)展,如果將其和錘擊試驗法相結(jié)合,便能夠在確保預測精度的同時大大減少錘擊試驗次數(shù),因此本文提出了一種基于KNN的機床刀尖點頻響函數(shù)預測方法。
機床刀尖點頻響函數(shù)是整個機床系統(tǒng)在刀尖位置的動力學特性的綜合體現(xiàn),因此機床刀尖點頻響函數(shù)對機床整體結(jié)構(gòu)的變化十分敏感。在實際加工過程中機床結(jié)構(gòu)變化主要表現(xiàn)為兩種情況,第1種是機床主軸位置和姿勢(簡稱位姿)變化,第2種則是機床刀具或者刀柄的更換。這兩種情況都會導致機床刀尖點頻響函數(shù)的變化,以下分別對前述兩種情況引起的機床刀尖點頻響函數(shù)的變化進行試驗驗證。
首先考慮第1種情況,在1臺試驗機床上(機床坐標系如圖1所示)裝夾直徑為10mm,懸伸長度(定義如圖2所示)為56mm的刀具,然后保持機床X、Y、Z、C軸不變,將A軸從0轉(zhuǎn)動到90°,期間每隔10°通過錘擊試驗法測量其刀尖點頻響函數(shù),并將這些頻響函數(shù)進行集中對比,如圖3所示。刀尖固有頻率附近區(qū)域的頻響函數(shù)對顫振抑制具有重要意義,因此本文主要考察該區(qū)域的頻響函數(shù),圖3所展示的是1000Hz附近的頻響函數(shù)曲線。
圖1 試驗機床坐標系Fig.1 Coordinate system of experimental machine tool
圖2 刀具懸伸長度和裝夾長度Fig.2 Tool overhang and clamping length
圖3 機床位姿引起的刀尖點頻響函數(shù)變化Fig.3 Change of tool tip FRF caused by varying machine tool postures
對于第2種情況,使用一系列帶螺紋的圓柱棒來研究不同刀具引起的刀尖點頻響函數(shù)的變化,如圖4所示。將圖4中左側(cè)帶外伸螺紋的圓柱棒作為刀具裝夾部分插入刀柄,其余圓柱棒則作為刀具伸出部分。保持機床位姿不變,依次更換外伸圓柱棒,并采集其刀尖點頻響函數(shù),將其對比如圖5所示。
基于以上分析和驗證可以得出結(jié)論,機床刀尖點的頻響函數(shù)隨機床結(jié)構(gòu)的變化而變化。本文擬使用回歸算法對不同機床結(jié)構(gòu)下的刀尖點頻響函數(shù)進行擬合,得到刀尖點頻響函數(shù)預測模型,從而對機床不同結(jié)構(gòu)下的刀尖點頻響函數(shù)進行預測。
由1.1節(jié)可知,刀尖點頻響函數(shù)受機床主軸位姿和刀柄/刀具影響,主軸位姿信息可以用機床坐標表示,而刀具信息中對刀尖點頻響函數(shù)影響最大的是刀具直徑和其懸伸長度,此處選取這兩個數(shù)據(jù)表示刀具信息。因此,本文數(shù)據(jù)集中的特征數(shù)據(jù)x包括刀具直徑、刀具懸伸長度以及機床主軸坐標。
圖4 螺紋連接分段圓柱棒Fig.4 Threaded segmented cylinders
圖5 不同刀具引起的刀尖點頻響函數(shù)變化Fig.5 Change of tool tip FRF caused by varying tools
而對于刀尖點頻響函數(shù)信息而言,有兩種方式可以選擇,一種是對其進行模態(tài)參數(shù)辨識,然后將得到的參數(shù)作為標簽,有一些學者已經(jīng)在研究中采用這種方式來表示頻響函數(shù)信息[6,19]。第2種方式則是直接選取固有頻率附近頻率段內(nèi)的頻響函數(shù)曲線離散點作為標簽。第1種方式的顯著優(yōu)點是數(shù)據(jù)量小,更易于回歸訓練,但無法有效表達頻響函數(shù)的模態(tài)階數(shù)。如圖3所示,在固有頻率附近頻率段內(nèi),主軸位姿不同,刀尖點頻響函數(shù)的模態(tài)階數(shù)也不盡相同,所以很難使用統(tǒng)一階數(shù)的模態(tài)參數(shù)來表示頻響函數(shù)信息。對于第2種方式,雖然作為回歸數(shù)據(jù)集的數(shù)據(jù)量較大,但其可以有效表達所有頻響函數(shù)的模態(tài)階數(shù)。綜上所述,本文選取第2種方式來表示標簽數(shù)據(jù)y,即機床刀尖點固有頻率附近頻率段內(nèi)的頻響函數(shù)曲線離散點。而最終通過回歸算法得到的刀尖點頻響函數(shù)預測模型可以表示為f:x→y。
刀尖點頻響函數(shù)是在機床整體結(jié)構(gòu)的變動范圍內(nèi)持續(xù)變化的,訓練數(shù)據(jù)集最好能夠反映機床結(jié)構(gòu)變動范圍內(nèi)刀尖點頻響函數(shù)的整體變化趨勢。另外,標簽中并不需要整個頻譜的刀尖點頻響函數(shù)曲線,只需要得到刀尖點固有頻率附近的部分曲線即可?;谝陨峡紤],本文在機床主軸可移動范圍內(nèi)均勻選取少量坐標點,并選取加工過程中使用頻率較高的刀具直徑和懸伸長度數(shù)據(jù)作為特征數(shù)據(jù),選取機床刀尖點固有頻率附近的部分頻響函數(shù)曲線段離散點作為標簽數(shù)據(jù)。
KNN算法憑借其簡單和準確的特點被廣泛應用,其基本思想是計算特征空間中樣本點之間的相似程度,并根據(jù)這種相似程度進行預測[19]。樣本點之間的相似程度是用距離表示的,而距離度量方式則是KNN算法的3個基本要素之一。
KNN算法中的距離度量通常選擇Lp距離(Lpdistance):
其中,xi,xj∈A,A是特征空間,即n維實數(shù)向量空間xi=。
當p=2時,式(1)就 是 歐 式 距 離(Euclidean distance)的表達式,即
當p=1時,式(1)就是曼哈頓距離(Manhattan distance)的表達式,即
本文采用歐式距離作為KNN算法的距離度量方式。
KNN的另外兩個基本要素是k值和回歸預測規(guī)則。k值的選擇會顯著影響KNN算法的結(jié)果,如果k值過小,預測結(jié)果受臨近點的影響就會加大,也就更容易發(fā)生過擬合。反之,如果k值過大,則容易發(fā)生欠擬合。實際應用時,一般會選擇較小的數(shù)賦給k。KNN算法的回歸預測規(guī)則一般采取平均值法或者加權(quán)平均值法。平均值法即獲得k個臨近點,將其目標值平均后作為預測值。加權(quán)平均值法則按照臨近點與待預測點的距離給每個臨近點的目標值加權(quán),一般情況下距離和權(quán)重成反比,之后再進行平均得到預測值。本文選取平均值法作為回歸預測規(guī)則。
由于本文訓練數(shù)據(jù)集的數(shù)據(jù)量較大,必須考慮臨近點搜索的效率。KNN算法中通常使用線性掃描(Linear Scan)來實現(xiàn)k個臨近點的查找,但是訓練數(shù)據(jù)量較大時,這種搜索方式的效率很低。k-dimensional樹(kd樹)可以有效提高臨近點的搜索效率。
kd樹是一種二叉樹,它可以通過一系列垂直于坐標軸的超平面將k維空間劃分成不同的區(qū)域。圖6中以2維空間kd樹的建立為例解釋其具體實現(xiàn)方式,其中圓點對應2維空間中的樣本點,直線對應區(qū)域的劃分線(即前文所述超平面)。將整個k維空間作為根結(jié)點,然后選擇切分點構(gòu)造劃分線,將整個區(qū)域進行劃分,劃分完成的每個子區(qū)域都對應一個子結(jié)點,按照此方式繼續(xù)劃分,直到所有子區(qū)域都不包含樣本點為止,將終止時的結(jié)點稱為葉節(jié)點。
構(gòu)建kd樹的偽代碼如下:
算法:建立kd樹
輸入:數(shù)據(jù)集"Data" 和其所屬空間A
輸出:kd樹
圖6 2維空間kd樹Fig.6 2D space kd tree
(1)If"Data" 為空,則返回的kd樹為空
(2)構(gòu)造子結(jié)點:
確定劃分維度:統(tǒng)計"Data" 在每個維度上的方差,方差越大表明數(shù)據(jù)在該維度上越分散,越適合數(shù)據(jù)分割。
確定切分點:將"Data" 按照所選維度進行排序,并選擇中間的數(shù)據(jù)點作為切分點。
劃分子區(qū)域:通過切分點垂直于維度坐標軸作超平面,從而將整個區(qū)域(對應根結(jié)點,即空間A)劃分成兩個子區(qū)域,在坐標軸上小于切分點的子區(qū)域成為左子結(jié)點,否則為右子結(jié)點。
(3)重復劃分區(qū)域:重復步驟(2)進一步劃分區(qū)域,直到兩個新產(chǎn)生的子區(qū)域沒有數(shù)據(jù)點存在為止,最終的子區(qū)域成為葉結(jié)點。
對于一個待預測點,首先在kd樹中找到其所屬的葉結(jié)點,并將其作為當前最鄰近點,然后以待預測點到當前最鄰近點的距離為半徑,以該待預測點為球心繪制超球體,則實際最鄰近點肯定在該超球體內(nèi)部。隨后從葉結(jié)點出發(fā),依次退回到上級結(jié)點,不斷查找并更新當前最鄰近點,直到確定沒有更鄰近的樣本點為止。可以發(fā)現(xiàn),kd樹搜索臨近點的整個過程中,只計算了待預測點和其所在的局部區(qū)域內(nèi)的樣本點的距離,大大減少了距離求解的計算量,適合訓練集數(shù)據(jù)量大的應用場景。
搜索kd樹的偽代碼如下:
算法:搜索kd樹
輸入:kd樹和目標點s
輸出:kd樹
(1)確定目標點所屬的葉結(jié)點:從根結(jié)點開始,逐步訪問下級子結(jié)點,逐個對比s和切分點的當前維度坐標,以確定前往左子結(jié)點還是右子結(jié)點,直至找到葉結(jié)點,并以此葉結(jié)點作為當前最臨近點。
(2)更新當前最臨近點:
建立搜索超球體:以s和當前最鄰近點的距離為半徑,以s為球心建立搜索超球體;
搜索更鄰近點:逐步往上級結(jié)點回退,并判斷當前結(jié)點對應的區(qū)域是否與搜索超球體相交,如果相交,就在相交區(qū)域?qū)ふ覙颖军c并更新當前最近臨近點,否則就維持當前最近臨近點不變。
(3)重復步驟(2)直到退回到根結(jié)點,并將最新的當前最鄰近點作為目標的最臨近點。
在本文的應用場景下,KNN算法步驟如下:
(2)采用式(2)所示的歐式距離為距離度量方式,對于一個測試數(shù)據(jù)集xj,此時具體的距離表達式應該為:
通過kd樹確定距離該測試集最近的k個訓練集,將這些訓練集中的目標值記為。
(3)對上述k個鄰居的目標值進行平均,并將其作為最終預測結(jié)果。
本文所提方法在一臺五軸機床上進行了試驗驗證,圖7是錘擊試驗系統(tǒng),該五軸機床包括X、Y、Z 3個平動軸,和A、C兩個轉(zhuǎn)動軸,其中C軸的可移動范圍是0~360°,A軸的可移動范圍是0~90°。初步試驗表明,該機床移動軸移動對刀尖點頻響函數(shù)的影響不大,所以此次驗證選擇在旋轉(zhuǎn)軸上進行。
驗證過程中需要用的3把刀具信息,如表1所示。
控制機床的平動軸不動,選取A軸每隔20°(從0開始),C軸每隔120°(從0開始)的主軸位姿處為待測坐標點,數(shù)量為20。在機床上分別裝夾1~3號刀具,如圖8所示。通過錘擊試驗獲得3把刀具在待測坐標點處的刀尖點頻響函數(shù)G11,tt,其中tt代表頻響函數(shù)矩陣的第1行第1列元素,即位移/力頻響函數(shù)。每次錘擊試驗都連做5次,并將其結(jié)果的平均值作為該次試驗的最終結(jié)果。將刀具直徑d,刀具懸伸長度l,機床A軸坐標a,C軸坐標c,刀尖點固有頻率附近的離散頻率w以及G11,tt的絕對值g11作為回歸訓練集,其形式為{di, li, ai, ci, wi, g11i}。將訓練數(shù)據(jù)集用基于kd樹的KNN算法進行回歸訓練,經(jīng)過交叉驗證,此處取參數(shù)k的值為5?;貧w模型訓練完畢后,保持機床移動軸坐標不變,另取4個機床坐標點:C0A10°、C60°A90°、C180°A50°以及C300°A70°,再結(jié)合上述3把驗證刀具信息以及刀尖點固有頻率附近離散頻率數(shù)據(jù),構(gòu)造成形式為{di, li, ai, ci, wi}的測試集對回歸模型進行測試。
另外,本文還使用RCSA方法,預測了驗證刀具在機床4個測試位姿處的刀尖點頻響函數(shù)。RCSA是一種可以高效獲得刀尖點頻響函數(shù)的方法。使用該方法求刀尖點頻響函數(shù)時,一般可以將機床分解成主軸–刀柄系統(tǒng)和刀具伸出部分(或者主軸–部分刀柄系統(tǒng),外伸刀柄和刀具伸出部分)。接著通過錘擊試驗法獲得主軸–刀柄系統(tǒng)頻響函數(shù),再使用有限元法或者解析法獲得刀具伸出部分的頻響函數(shù),然后再使用式(7)將各個子結(jié)構(gòu)的頻響函數(shù)耦合即可得到刀尖點頻響函數(shù)。
表1 驗證刀具Table 1 Tools for experimental verification
圖8 G11,tt測量方法Fig.8 Measurement method of G11,tt
其中,G11表示機床刀尖點的頻響函數(shù);H11和H22分別表示刀具在自由狀態(tài)下在兩頭端點處的原點頻響函數(shù);H12和H21則表示刀具在自由狀態(tài)下在兩頭端點處的跨點頻響函數(shù);H33表示耦合之前主軸–刀柄系統(tǒng)在刀柄端點處的原點頻響函數(shù),K–1則表示刀柄和刀具之間的連接處特性。
依次將1~3號刀具裝夾到機床上,利用錘擊試驗測量機床4個測試位姿處刀尖原點頻響函數(shù)G11,tt和跨點頻響函數(shù)G12,tt。在機床坐標C0A10°處,使用Park在文獻[18]中提出的IRCSA(Inverse Receptance Coupling Substructure Analysis)方法辨識連接處特性K–1,并利用所得連接處特性預測其他3個測試位姿處的刀尖點頻響函數(shù)。
隨后,將本文方法預測的刀尖點頻響函數(shù)曲線,基于RCSA方法預測曲線以及利用錘擊試驗得到的曲線進行對比,結(jié)果如圖9~11所示。圖9所示是1號刀具的測試結(jié)果,可以發(fā)現(xiàn),在圖9(a)中,本文所提方法和基于C0A10°處連接處特性使用RCSA方法(簡稱IRCSA–Park方法)的預測效果都比較好,而在圖9(b)~(d)中,本文所提方法則表現(xiàn)出了明顯的優(yōu)勢。
另外,表2中對1號刀具的試驗結(jié)果進行了定量分析,其中主要對比了本文方法、IRCSA–Park方法以及試驗法所得刀尖頻響函數(shù)的固有頻率和單/多模態(tài)(即主要模態(tài)峰的個數(shù))。對比數(shù)據(jù)表明,當試驗法得到的頻響函數(shù)曲線是單模態(tài)時,本文方法和IRCSA–Park方法的預測曲線也是單模態(tài)的,其中,和試驗頻響曲線的固有頻率相比,本文方法最大誤差是4Hz,IRCSA–Park方法最大誤差則是10Hz。當試驗頻響函數(shù)曲線為多模態(tài)時,本文方法預測曲線也是多模態(tài)的,而IRCSA–Park方法預測曲線則是單模態(tài)的,同時本文方法預測曲線和試驗曲線主要模態(tài)峰的固有頻率都相差很小。
圖10是2號刀具的測試結(jié)果,可以發(fā)現(xiàn),在圖10 (a)中,本文所提方法預測效果比基于C0A10°連接處特性使用RCSA方法的預測效果稍差,但也保持了較好的準確度。觀察圖10(b)~(d),在頻響函數(shù)的第1個峰處,本文所提方法和基于C0A10°連接處特性使用RCSA方法的預測效果都比較好,而在第2個峰處,本文所提方法預測效果更好。
圖9 1號刀具在機床4個測試位姿處的刀尖點頻響函數(shù)對比Fig.9 Comparison of tool tip FRF of No. 1 tool at 4 test positions
表2 1號刀具刀尖點頻響函數(shù)定量分析Table 2 Quantitative analysis of frequency response function of tool tip of No.1 tool
表3和表4中對2號刀具的試驗結(jié)果進行了定量分析。對比數(shù)據(jù)表明,對于頻響曲線的第1個峰,試驗曲線、本文方法預測曲線以及IRCSA–Park方法預測曲線都為單模態(tài),其中,與試驗頻響曲線的固有頻率相比,本文方法最大誤差是17Hz,IRCSA–Park方法最大誤差則是15Hz。
對于頻響曲線的第2個峰,試驗曲線和本文方法預測曲線全是單模態(tài)的,而IRCSA–Park方法預測曲線則在很多情況下都是多模態(tài)的,同時本文方法預測曲線和試驗曲線的固有頻率最大相差11Hz。
圖11所示是3號刀具的測試結(jié)果,可以發(fā)現(xiàn),在圖11(a)中,本文所提方法預測效果比基于C0A10°連接處特性使用RCSA方法的預測效果稍差,但也保持了較好的準確度。觀察圖11(b)~(d),在頻響函數(shù)的第1個峰處,相比于基于C0A10°處連接處特性的RCSA方法,本文所提方法效果更好,而在第2個峰處,兩種方法預測效果都比較好。
圖10 2號刀具在機床4個測試位姿處的刀尖點頻響函數(shù)對比Fig.10 Comparison of tool tip FRF of No. 2 tool at 4 test positions
表3 2號刀具刀尖點頻響函數(shù)第1個峰定量分析Table 3 First peak of tool tip FRF numerical analysis of No. 2 tool
圖11 3號刀具在機床4個測試位姿處的刀尖點頻響函數(shù)對比Fig.11 Comparison of tool tip FRF of No. 3 tool at 4 test positions
表4 2號刀具刀尖點頻響函數(shù)第2個峰定量分析Table 4 Second peak of tool tip FRF numerical analysis of No. 2 tool
表5和表6中對3號刀具的試驗結(jié)果進行了定量分析。對比數(shù)據(jù)表明,對于頻響曲線的第1個峰,當試驗曲線是單模態(tài)時,本文方法和IRCSA–Park方法的預測曲線也是單模態(tài)的,其中,和試驗曲線的固有頻率相比,本文方法最大誤差是7Hz,IRCSA–Park方法最大誤差則是27Hz。當試驗曲線為多模態(tài)時,本文方法預測曲線也是多模態(tài)的,而IRCSA–Park方法預測曲線則是單模態(tài)的,同時本文方法預測曲線和試驗曲線的固有頻率最大相差8Hz。
對于頻響曲線的第2個峰,試驗曲線、本文方法預測曲線以及IRCSA–Park方法預測曲線都為單模態(tài),其中,和試驗頻響曲線的固有頻率相比,本文方法最大誤差是20Hz,IRCSA–Park方法最大誤差則是13Hz。
表5 3號刀具刀尖點頻響函數(shù)第1個峰定量分析Table 5 First peak of tool tip FRF numerical analysis of No. 3 tool
表6 3號刀具刀尖點頻響函數(shù)第2個峰定量分析Table 6 Second peak of tool tip FRF numerical analysis of No. 3 tool
機床刀尖點頻響函數(shù)對機床結(jié)構(gòu)的變化十分敏感,無論是機床主軸的位置改變還是刀具/刀柄改變,機床刀尖點頻響函數(shù)都會隨之變化,導致機床刀尖點頻響函數(shù)的獲取過程十分繁復。針對這個問題,本文提出了一種基于KNN的機床刀尖點頻響函數(shù)預測方法,并在一臺五軸機床上對所提方法進行了驗證,試驗結(jié)果表明:
(1)在錘擊試驗法的基礎上,本文所提方法大幅提高了獲取刀尖點頻響函數(shù)的效率。
(2)相比于RCSA方法,本文所提方法的預測結(jié)果具有更好的準確性。