馮 偉 ,王建軍
(1.中國一拖集團(tuán)有限公司,河南 洛陽471004;2.西安交通大學(xué)機(jī)械工程學(xué)院,陜西 西安710049)
熱誤差是機(jī)床的主要誤差源,研究表明熱誤差占機(jī)床總誤差的40%~70%[1],尤其在精密機(jī)床中所占比例更大。主軸是機(jī)床的關(guān)鍵部件,由溫度導(dǎo)致的主軸熱變形會嚴(yán)重影響機(jī)床的加工精度[2]。對熱誤差進(jìn)行準(zhǔn)確的預(yù)測并實(shí)施補(bǔ)償,對于提高機(jī)床的加工精度具有重要意義。
國內(nèi)外在熱誤差建模方面做了大量研究[3],已經(jīng)發(fā)展了諸如多元線性回歸[4]、人工神經(jīng)網(wǎng)絡(luò)[5]、時間序列[6]、灰色理論[7]、動態(tài)神經(jīng)網(wǎng)絡(luò)[8]等多種熱誤差模型。人工神經(jīng)網(wǎng)絡(luò)具有較強(qiáng)的非線性預(yù)測能力,因此能夠更好的預(yù)測機(jī)床熱誤差。BP神經(jīng)網(wǎng)絡(luò)是應(yīng)用最廣的神經(jīng)網(wǎng)絡(luò),但存在收斂速度慢容易陷入局部最優(yōu)解的缺點(diǎn)。王春暖等[8]建立了基于改進(jìn)粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的機(jī)床熱誤差模型,能夠避免預(yù)測結(jié)果陷入局部最優(yōu)解,且預(yù)測的精度優(yōu)于普通BP神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)。但輸入神經(jīng)網(wǎng)絡(luò)的時間序列中存在較大的隨機(jī)性和不確定性,遺傳算法采用概率的變遷規(guī)則指導(dǎo)搜素方向,能夠很好處理BP神經(jīng)網(wǎng)絡(luò)權(quán)重初始化的隨機(jī)性問題,Huang等[9]采用遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)進(jìn)行熱誤差建模,預(yù)測的精度得到很大提高。然而,遺傳算法存在編程實(shí)現(xiàn)復(fù)雜的缺點(diǎn),為此本文提出基于粒子群優(yōu)化灰色神經(jīng)網(wǎng)絡(luò)的建模方法,采用灰色神經(jīng)網(wǎng)絡(luò)(GNN)修正網(wǎng)絡(luò)的權(quán)值閾值,然后利用粒子群算法(PSO)獲取最優(yōu)權(quán)值閾值得到主軸熱誤差模型,從而進(jìn)一步提高模型預(yù)測的精度。
通過對溫度測點(diǎn)進(jìn)行優(yōu)化,減少溫度測點(diǎn)個數(shù),提高模型運(yùn)算效率和精度。在這里計算各溫度測點(diǎn)與熱誤差之間的相關(guān)系數(shù),在同組中得出對熱誤差影響最大的點(diǎn)。
設(shè)溫度測點(diǎn)序列 T={T1,T2,…Tm},Ti={Ti1,Ti2,Ti3,…Tin},其中m為總共溫度測點(diǎn)數(shù),n為時序上的總共測量次數(shù),熱誤差測量序列為E={E1,E2,…En},通過相關(guān)系數(shù)公式可以計算得出各溫度測點(diǎn)和熱誤差之間的相關(guān)系數(shù)。
BP神經(jīng)網(wǎng)絡(luò)是在工業(yè)上應(yīng)用最廣的神經(jīng)網(wǎng)絡(luò),具有反向誤差傳播結(jié)構(gòu),可以對網(wǎng)絡(luò)的權(quán)值閾值進(jìn)行修正。BP神經(jīng)網(wǎng)絡(luò)可以看作非線性擬合函數(shù),在BP網(wǎng)絡(luò)中首先要對網(wǎng)絡(luò)進(jìn)行訓(xùn)練,使其具有聯(lián)想和預(yù)測能力,然后輸入要預(yù)測的數(shù)據(jù)進(jìn)行預(yù)測。
在該網(wǎng)絡(luò)中具有輸入層、隱含層和輸出層三層結(jié)構(gòu)。在這里設(shè)置網(wǎng)絡(luò)的結(jié)構(gòu)為3-7-2,其中隱藏層節(jié)點(diǎn)數(shù)7是根據(jù)Kolmogorov定理進(jìn)行選擇,最大迭代次數(shù)設(shè)置為1000,學(xué)習(xí)目標(biāo)設(shè)置為0.1,學(xué)習(xí)率設(shè)置為較大值時會加快網(wǎng)絡(luò)收斂,但在最佳值時會產(chǎn)生震蕩使之無法收斂,應(yīng)設(shè)置為較小值,這里設(shè)置為0.25,動量因子設(shè)置為0.9,輸入層到隱藏層的傳遞函數(shù)設(shè)置為‘tansig',隱藏層到輸出層設(shè)置為‘purelin'。
灰色模型可以對缺少規(guī)律的問題進(jìn)行白化處理,挖掘數(shù)據(jù)深層次的有用信息去揭示未知信息,在灰色神經(jīng)網(wǎng)絡(luò)中采用了BP神經(jīng)網(wǎng)絡(luò)的誤差反向傳播的結(jié)構(gòu),可以有效地修正網(wǎng)絡(luò)的權(quán)值閾值[10]。
在灰色神經(jīng)網(wǎng)絡(luò)中,需要對原始數(shù)列進(jìn)行一次累加處理,得到呈指數(shù)增長的數(shù)據(jù)序列。從而可以以一個微分方程的形式進(jìn)行數(shù)據(jù)的擬合和預(yù)測。n個輸入?yún)?shù)的微分方程表達(dá)式如下:
其中 a,b1,…,bn-1為網(wǎng)絡(luò)的 n 個輸入?yún)?shù);y2,…,yn為系統(tǒng)輸入?yún)?shù);y1為系統(tǒng)的輸出參數(shù)。得到的微分方程的時間響應(yīng)式為:
變換后的式(4)映射到拓展的BP神經(jīng)網(wǎng)絡(luò)可以得到n個輸入一個輸出的灰色神經(jīng)網(wǎng)絡(luò)。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 灰色神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
PSO算法最早是由Kennedy和Eberhart根據(jù)鳥類捕食行為提出,在PSO算法中每個粒子都作為鳥群中的鳥的角色,每個粒子的位置信息都作為問題的可能解。在算法中每一個粒子都通過適應(yīng)度函數(shù)得出的適應(yīng)度值來判斷自身位置的好壞,在PSO算法中每個粒子還必須具有記憶功能,用以記錄自己所經(jīng)過的位置,通過社會共享行為來進(jìn)行自身速度和方向的調(diào)整來獲得最優(yōu)位置[11]。
在PSO算法中尋優(yōu)公式如下:
在灰色神經(jīng)網(wǎng)絡(luò)中因?yàn)殡S機(jī)賦值,導(dǎo)致網(wǎng)絡(luò)容易陷入局部最優(yōu)解。在PSO優(yōu)化的灰色神經(jīng)網(wǎng)絡(luò)中用PSO算法對初始參數(shù)進(jìn)行優(yōu)化,有效的避免灰色神經(jīng)網(wǎng)絡(luò)在迭代過程中陷入局部最優(yōu),在PSO優(yōu)化的網(wǎng)絡(luò)中選擇灰色神經(jīng)網(wǎng)絡(luò)的預(yù)測值和實(shí)際測量值的絕對誤差作為適應(yīng)度函數(shù),流程圖如圖2所示。
圖2 PSO優(yōu)化灰色神經(jīng)網(wǎng)絡(luò)流程圖
在PSO優(yōu)化的灰色神經(jīng)網(wǎng)絡(luò)中設(shè)置學(xué)習(xí)因子c1、c2為 2.05,粒子長度設(shè)置為 4,種群規(guī)模(粒子數(shù))設(shè)置為30,PSO算法優(yōu)化部分設(shè)置為100代,最大限制速度設(shè)置為5,權(quán)值最大值和最小值分別設(shè)置為0.9、0.4,在優(yōu)化的灰色神經(jīng)網(wǎng)絡(luò)中迭代次數(shù)設(shè)置為100代。
該實(shí)驗(yàn)以XK63100機(jī)床為研究對象,采用NI公司數(shù)據(jù)采集系統(tǒng)實(shí)時獲取主軸系統(tǒng)溫度及熱變形數(shù)據(jù),如圖3所示。測點(diǎn)溫度由磁K型熱電偶測量,主軸熱漂移量由電渦流傳感器測量。用7個熱電偶獲取機(jī)床主軸的溫度場,主軸主要熱源為軸承,由于后軸承封在主軸齒輪箱中,因此主要測前軸承、主軸部分溫度,環(huán)境溫度作為參考,溫度測點(diǎn)布置如表1所示。采用五個電渦流傳感器分別測量主軸熱伸長及徑向傾斜,熱變形測量示意圖如圖4所示,溫度和熱變形測量現(xiàn)場如圖5所示。
圖3 實(shí)驗(yàn)測量系統(tǒng)
表1 溫度傳感器布置
圖4 熱變形測量示意圖
圖5 主軸溫度場和熱變形測量
主軸轉(zhuǎn)速按照熱機(jī)時的轉(zhuǎn)速(800 r/min)從冷態(tài)開始加熱210 min,模擬實(shí)際加工過程中主軸轉(zhuǎn)速變化,設(shè)定主軸轉(zhuǎn)速在0~1 500 r/min范圍內(nèi)按階梯變化并設(shè)定每15 min變換1次轉(zhuǎn)速,共連續(xù)運(yùn)行135 min,主軸轉(zhuǎn)速圖如圖6所示。
圖6 主軸轉(zhuǎn)速圖
通過五點(diǎn)法采集的熱變形數(shù)據(jù)可計算得出主軸俯仰角 θy和偏擺角 θx, 計算公式如下:
主軸熱特性實(shí)驗(yàn)獲得的溫度場如圖7(a)所示。隨著主軸轉(zhuǎn)速增加,各測點(diǎn)溫度總體不斷增大,約250 min主軸前端和前軸承溫度達(dá)到最高,其中前軸承發(fā)熱最為嚴(yán)重,最高溫度達(dá)到49.8℃,主軸前端和后端最高溫度分別為37℃和31.1℃。主軸后端溫度在250 min時還在緩慢上升,在310 min時達(dá)到最高31.1℃。由于結(jié)構(gòu)限制,無法得到主軸內(nèi)部的溫度,測點(diǎn)溫度只是一種近似,但測量結(jié)果也能反映溫度隨時間變化情況。另外,車間室溫隨外部環(huán)境溫度變化也略有變化,但變化不大,在2~3℃左右。
圖7 主軸熱性能
實(shí)驗(yàn)獲得的主軸熱變形如圖7(b)所示。隨著溫度的升高,主軸熱變形逐漸增大。約經(jīng)過250 min主軸軸向伸長最大達(dá)到210.9 μm,主軸前端垂直方向最大偏移89.7 μm,后端垂直方向最大偏移量82.2 μm,主軸在垂直方向表現(xiàn)出“抬頭”現(xiàn)象。主軸前端水平方向最大偏移58.0 μm,后端水平方向最大偏移量55.6 μm,主軸在水平方向發(fā)生傾斜。通過轉(zhuǎn)速圖、主軸溫度場圖和主軸熱變形圖的對比,可知主軸轉(zhuǎn)速、熱變形與溫度呈近似比例變化,然而熱變形相對于溫度場存在滯后現(xiàn)象,這主要是由于主軸結(jié)構(gòu)熱慣性的存在。試驗(yàn)獲得的主軸熱傾角如圖8所示。
圖8 主軸熱傾角
該數(shù)據(jù)在采集時已經(jīng)進(jìn)行分組,從圖7(a)中可以看出溫度數(shù)據(jù)分為三組,只需相關(guān)系數(shù)計算即可,在這里選擇軸向熱誤差進(jìn)行相關(guān)系數(shù)的計算,經(jīng)過式(1)計算得出溫度測點(diǎn)相關(guān)系數(shù)值如表2所示。
表2 溫度變量相關(guān)系數(shù)
對比各組相關(guān)系數(shù)值選出三個溫度測點(diǎn)T1、T4、T5,用這三個溫度測點(diǎn)進(jìn)行網(wǎng)絡(luò)訓(xùn)練。
選擇優(yōu)化后的三個溫度測點(diǎn)作為各個網(wǎng)絡(luò)的輸入,軸向熱變形和俯仰角θy作為網(wǎng)絡(luò)的輸出,將選擇的的溫度數(shù)據(jù)、熱變形數(shù)據(jù)和熱傾角數(shù)據(jù)進(jìn)行歸一化處理,以加快網(wǎng)絡(luò)收斂。并在每個網(wǎng)絡(luò)中用所選數(shù)據(jù)的前260 min對應(yīng)的數(shù)據(jù)進(jìn)行訓(xùn)練,用剩下的85 min數(shù)據(jù)預(yù)測。軸向熱誤差預(yù)測如圖9(a)所示,俯仰角 θy預(yù)測如圖 9(b)所示。
圖9 模型預(yù)測
PSO優(yōu)化灰色神經(jīng)網(wǎng)絡(luò)值得到的最優(yōu)初始參數(shù)分別為 a1=0.530 2,b1=0.384 6,b2=0.453 2,b3=0.637 0,得到的個體適應(yīng)度曲線如圖10所示。
圖10 最優(yōu)個體適應(yīng)度
通過對預(yù)測數(shù)據(jù)和實(shí)際數(shù)據(jù)做差可以得到殘差圖,軸向熱變形殘差如圖11(a)所示,俯仰角θy殘差如圖11(b)所示。通過殘差圖可以看出PSO優(yōu)化灰色神經(jīng)網(wǎng)絡(luò)預(yù)測殘差波動范圍相比于其他的兩個網(wǎng)絡(luò)較小,計算得出PSO優(yōu)化網(wǎng)絡(luò)得出的軸向熱伸長和俯仰角θy平均殘差分別為2.293 μm和0.134 μm;灰色神經(jīng)網(wǎng)絡(luò)的出的平均殘差分別為3.075 μm和0.181 μm;BP神經(jīng)網(wǎng)絡(luò)得出的平均殘差分別為3.546 μm 和 0.215 μm。
圖11 網(wǎng)絡(luò)預(yù)測殘差
計算預(yù)測值與實(shí)際值的平均相對誤差得出PSO優(yōu)化的灰色神經(jīng)網(wǎng)絡(luò)預(yù)測軸向熱誤差和熱傾角的相對誤差分別為1.55%和0.72%;灰色神經(jīng)網(wǎng)絡(luò)預(yù)測的平均相對誤差分別為1.91%和0.99%;BP神經(jīng)網(wǎng)絡(luò)預(yù)測平均相對誤差分別為2.21%和1.20%。從這些平均殘差和相對誤差中也可以看出PSO優(yōu)化后的網(wǎng)絡(luò)預(yù)測精度得到了改善,有效的避免了局部最優(yōu)解的出現(xiàn)。
本文建立了PSO優(yōu)化的灰色神經(jīng)網(wǎng)絡(luò)的軸向伸長和俯仰角模型,并將該模型的預(yù)測性能與灰色神經(jīng)網(wǎng)絡(luò)BP網(wǎng)絡(luò)進(jìn)行對比,得出以下結(jié)論:
(1)該網(wǎng)絡(luò)預(yù)測得出的軸向熱伸長和俯仰角θy平均殘差分別為2.293 μm和0.134 μm。
(2)計算該網(wǎng)絡(luò)預(yù)測得出數(shù)據(jù)的平均相對誤差分別為1.55%和0.72%,均小于灰色神經(jīng)網(wǎng)絡(luò)和BP網(wǎng)絡(luò)的預(yù)測平均相對誤差。
(3)PSO算法能夠?qū)崿F(xiàn)對灰色神經(jīng)網(wǎng)絡(luò)的初始參數(shù)進(jìn)優(yōu)化,并能有效提高網(wǎng)絡(luò)模型的收斂性和預(yù)測精度。為主軸熱誤差補(bǔ)償模型提供了一種新的方法。