徐祐民,陳秀梅,涂怡蓉
(北京信息科技大學 機電工程學院,北京 100192)
作為數(shù)控機床的主要傳動部件之一,滾珠絲杠在運行中與絲杠兩端的軸承以及絲杠螺母發(fā)生摩擦,其溫度不斷升高并發(fā)生熱變形。滾珠絲杠的熱變形會嚴重影響到零件的加工精度[1-2]。有資料顯示,由發(fā)熱導致的誤差占機床加工整體誤差的40%~70%[3-6],因此通過熱評價對數(shù)控機床狀態(tài)進行評估是十分必要的。
隨著人工智能技術(shù)的廣泛應用,國內(nèi)外學者將神經(jīng)網(wǎng)絡應用于滾珠絲杠發(fā)熱問題的研究。辛宗霈等[7]針對機床進給系統(tǒng)熱誤差,使用BP神經(jīng)網(wǎng)絡提出了一種復合預測方法,該方法預測精度比直接法提高了126%;靳增鋒等[8]利用神經(jīng)網(wǎng)絡模型對熱誤差進行建模,使最大預測誤差降低到2 μm;Yang等[9]使用神經(jīng)網(wǎng)絡對電主軸的熱誤差進行預測,準確率可達86%。以上研究多集中于數(shù)控機床熱誤差的模型建立與預測,對數(shù)控機床的熱評價研究較少。本文利用粒子群優(yōu)化支持向量機神經(jīng)網(wǎng)絡(PSO-SVM)、分數(shù)階粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(FPSO-BP)、普通BP神經(jīng)網(wǎng)絡3種神經(jīng)網(wǎng)絡建立滾珠絲杠的熱評價模型,對數(shù)控機床進行熱評價,為數(shù)控機床熱評價體系研究提供方法。
支持向量機(support vector machine,SVM)是由Vapnik等[10]提出的一種機器學習算法,其目的是在高維空間中設計一種分離特征平面的方法,該算法利用高維特征空間中的核函數(shù),尋找支持向量及其相應的系數(shù),構(gòu)造一個最優(yōu)的分離平面。
對于線性不可分的數(shù)據(jù)集,可以利用核函數(shù)將低維度的數(shù)據(jù)轉(zhuǎn)化到高維度,使用平面進行分類。徑向基核函數(shù)(RBF)為
K(x,xi)=exp(-γ‖x-xi‖2)γ>0
(1)
式中:xi(i=1,2,…,M)為數(shù)據(jù)集的特征向量;γ為拉格朗日乘子。此核函數(shù)中通過歐氏距離判斷兩個實例的相似性[11]。在RBF函數(shù)中,支持向量個數(shù)、權(quán)值和閾值均由支持向量機訓練算法自動生成,具有良好的分類效果。
BP神經(jīng)網(wǎng)絡是由Rumerlhart等在20世紀80年代提出的一種逆向傳輸?shù)亩鄬由窠?jīng)網(wǎng)絡,其基本結(jié)構(gòu)如圖1所示。
圖1 神經(jīng)網(wǎng)絡結(jié)構(gòu)
BP神經(jīng)網(wǎng)絡的魯棒性好、容錯能力強,在機器學習中得到廣泛應用,但是它也存在算法收斂速度慢、過早收斂等缺點。本文在使用BP神經(jīng)網(wǎng)絡建立評價模型時,針對BP神經(jīng)網(wǎng)絡的缺點采用分數(shù)階粒子群(FPSO)優(yōu)化BP神經(jīng)網(wǎng)絡建立評價模型。
粒子群算法是一種類似于遺傳算法的基于群體協(xié)作的隨機搜索算法。假設D維空間中,有m個粒子組成初始種群,粒子在當前空間進行搜索時,Xi表示粒子在空間中的位置,Vi表示粒子在當前空間的速度,通過式(2)、(3)不斷更新粒子的速度和位置,并且計算粒子的適應度值:
Vi(t+1)=Vi(t)+c1r1(pbesti-xi(t))+
c2r2(gbesti-xi(t))
(2)
xi(t+1)=xi(t)+Vi(t+1)
(3)
式中:Pbesti表示粒子的歷史最優(yōu)位置,gbesti表示粒子全局最優(yōu)位置。當粒子群的尋優(yōu)結(jié)果滿足預先設置的要求或達到最大搜尋次數(shù)時,停止搜尋。本文利用PSO這種基于群體的智能算法,對SVM模型的懲罰因子C和核函數(shù)參數(shù)g進行尋優(yōu),以提高模型的分類精確度。
分數(shù)階微分具有良好的魯棒性、抗干擾性和記憶性。利用分數(shù)階微分可將粒子群算法的速度公式更新為[12]:
c1r1(qij(t)-xij(t))+c2r2(qjk(t)-xij(t))
(4)
式中α為分數(shù)階次。更新后的公式將1個參考項增加為3個,使得粒子個體和群體的速度和位置的更新變化更為準確,記憶信息更加豐富。
基于神經(jīng)網(wǎng)絡的數(shù)控機床滾珠絲杠熱評價模型建立流程如圖2所示。
圖2 熱評價模型建立流程
為建立滾珠絲杠的溫變預測模型,需要采集數(shù)控機床運行中滾珠絲杠的溫度。由于在數(shù)控機床運行中,滾珠絲杠做旋轉(zhuǎn)運動,因此要直接測量絲杠的溫度變化數(shù)據(jù)比較困難。考慮到滾珠絲杠系統(tǒng)中左、右端軸承和絲杠螺母產(chǎn)生的熱量大部分傳遞到絲杠中,雖有一定溫差,但整體變化趨勢相同,本實驗采集滾珠絲杠兩端軸承套和絲杠螺母上的溫度數(shù)據(jù)并取平均值對模型進行驗證。傳感器貼裝位置如圖3所示。
圖3 傳感器貼裝位置
設定使用1~5年的數(shù)控機床為“優(yōu)”等級,使用6~10年的數(shù)控機床為“良”等級,使用11~15年的數(shù)控機床為“中”等級,使用16~20年的數(shù)控機床為“差”等級。以正常使用狀況下同一類型、不同年限的16臺數(shù)控機床為研究對象,每種等級選取4臺,在滾珠絲杠空載、進給速度為3 000 r/min、潤滑脂潤滑、室溫24 ℃條件下,分別采集這4種年限的機床滾珠絲杠系統(tǒng)的前軸承、后軸承和絲杠螺母套的溫度。每種等級的每臺數(shù)控機床采集60組數(shù)據(jù),將滾珠絲杠兩端以及絲杠螺母套上的數(shù)據(jù)取平均值作為滾珠絲杠的溫度變化數(shù)據(jù)。
取得的初始數(shù)據(jù)較為雜亂,為保證訓練后的模型精度,對數(shù)據(jù)進行預處理。本文使用最小二乘法對收集的數(shù)據(jù)做3次多項式擬合,設置最小二乘法擬合數(shù)據(jù)作為“過濾器”,取每組數(shù)據(jù)中誤差小于等于0.1并且靠近擬合曲線的50個數(shù)據(jù)作為數(shù)據(jù)集。
以采集的數(shù)據(jù)建立數(shù)據(jù)集,對數(shù)據(jù)進行劃分并處理。抽取每個等級的前40組作為訓練樣本,后10組作為測試樣本。對數(shù)據(jù)進行歸一化處理,消除特征之間差別導致的影響。構(gòu)建滾珠絲杠熱評價模型后,使用訓練樣本進行訓練,使用測試樣本進行仿真。
設定不同的PSO參數(shù)對熱評價模型進行訓練,經(jīng)過多次實驗,最終設定PSO基本參數(shù),如表1所示。
表1 PSO基本參數(shù)設定
通過Matlab編寫程序,利用設定好參數(shù)的PSO算法對SVM參數(shù)進行優(yōu)化得到以下結(jié)果:最佳懲罰參數(shù)c=2.768 2,最佳核參數(shù)g=90.532 9,在CV意義下分類準確率為100%。粒子群適應度曲線如圖4所示。
圖4 粒子群(PSO)適應度曲線
使用最佳懲罰參數(shù)和最佳核參數(shù)對模型進行訓練,利用處理后的數(shù)據(jù)進行仿真,得到測試集實際分類和預測分類如圖5所示。在圖5中,橫坐標代表測試集數(shù)據(jù)序號,縱坐標代表機床滾珠絲杠分級,其中1~4依次為優(yōu)、良、中、差等級滾珠絲杠。當代表預測測試數(shù)據(jù)的“*”與代表實際分類的“○”重合時,說明預測分類與實際分類相同。PSO-SVM滾珠絲杠熱評價模型分類準確率為92.5%(37/40),在中等級滾珠絲杠分類中出現(xiàn)3處誤差。
圖5 PSO-SVM熱評價模型仿真結(jié)果
在保持訓練集和測試集與PSO-SVM模型相同的情況下,建立BP神經(jīng)網(wǎng)絡滾珠絲杠熱評價模型,并進行仿真。普通BP神經(jīng)網(wǎng)絡建立的數(shù)控機床滾珠絲杠熱評價模型仿真結(jié)果如圖6所示。
從圖6可以看出,普通BP神經(jīng)網(wǎng)建立的模型分類的準確率只有75%,出現(xiàn)了多處誤差。
沿用PSO-SVM模型和BP神經(jīng)網(wǎng)絡的數(shù)據(jù)集建立分數(shù)階粒子群優(yōu)化BP神經(jīng)網(wǎng)絡熱評價模型(FPSO-BP)。通過設置不同F(xiàn)PSO參數(shù),進行多次試驗后,設置種群數(shù)量為30,迭代次數(shù)為20,具有最優(yōu)效果,分數(shù)階粒子群迭代結(jié)果如圖7所示。使用最優(yōu)參數(shù)對BP神經(jīng)網(wǎng)絡的權(quán)值和閾值進行優(yōu)化,建立基于FPSO-BP神經(jīng)網(wǎng)絡的滾珠絲杠熱評價模型,利用建立好的數(shù)據(jù)集進行仿真驗證,仿真結(jié)果如圖8所示。
圖7 粒子群迭代結(jié)果
圖8 FPSO-BP熱評價模型仿真結(jié)果
由圖7可知,粒子適應度值在16代時達到預期。由圖8可知,F(xiàn)PSO-BP模型準確率達到97.5%,僅在良等級分類中出現(xiàn)了1處誤差,分類效果較好。
對于3個模型預測分類出現(xiàn)的誤差,分析其可能的原因如下:1)受到訓練時間和計算機內(nèi)存的限制,使用訓練數(shù)據(jù)的數(shù)量不能使模型訓練達到理想效果;2)數(shù)據(jù)間差距不明顯,仿真計算時出現(xiàn)誤差;3)在整理結(jié)果取整時出現(xiàn)誤差。
由以上仿真分析可知,PSO-SVM模型與FPSO-BP神經(jīng)網(wǎng)絡模型都表現(xiàn)出較好的準確性;BP神經(jīng)網(wǎng)絡模型準確率較低,在解決分類問題時表現(xiàn)不好。
根據(jù)軸承座的溫度變化趨勢和滾珠絲杠的溫度變化趨勢相同,采用軸承座及絲杠螺母的溫度變化數(shù)據(jù)取平均值作為滾珠絲杠溫度的替代,利用3種不同網(wǎng)絡建立了滾珠絲杠熱評價模型。通過對3種不同網(wǎng)絡在相同數(shù)據(jù)集下進行訓練和仿真,得出PSO-SVM和FPSO-BP神經(jīng)網(wǎng)絡模型具有較高的準確率。本文僅以溫度作為參數(shù),未考慮機床的熱變形、冷卻條件、環(huán)境等因素,因此提出的模型仍有缺陷,在今后的研究中應對模型進行全面考慮,建立更貼近實際工況的熱評價模型。