基于分段擬合的機(jī)床大尺寸工作臺(tái)熱誤差補(bǔ)償模型
0 前言
在影響零件加工精度的因素中,機(jī)床熱誤差是影響加工精度的主要原因之一,在精密機(jī)床加工中由于熱因素造成的加工誤差可以占到60% ~70%。為降低或消除機(jī)床熱誤差對(duì)加工精度的影響,科研人員進(jìn)行了大量廣泛深入的研究,目前主要有兩種減小熱誤差的途徑:硬件消除法和軟件補(bǔ)償法。硬件消除法主要是通過熱結(jié)構(gòu)對(duì)稱設(shè)計(jì)、預(yù)拉伸和采用低熱膨脹系數(shù)的材料來實(shí)現(xiàn),硬件消除法缺點(diǎn)是成本較高。軟件補(bǔ)償法是通過建立能夠反映機(jī)床溫度與熱誤差關(guān)系的數(shù)學(xué)模型,在補(bǔ)償時(shí)用模型產(chǎn)生的預(yù)測值來抵消機(jī)床因溫度變化產(chǎn)生的誤差,以此達(dá)到消除熱誤差的目的。軟件補(bǔ)償法的優(yōu)點(diǎn)是,實(shí)現(xiàn)成本較低且無須對(duì)現(xiàn)有機(jī)床進(jìn)行大的改造,應(yīng)用簡便易于推廣。軟件補(bǔ)償法的關(guān)鍵是建立能夠準(zhǔn)確反映機(jī)床溫度與誤差之間的數(shù)學(xué)模型,這也是目前熱誤差補(bǔ)償研究工作的熱點(diǎn)和難點(diǎn)。補(bǔ)償模型分為離線靜態(tài)模型和在線動(dòng)態(tài)實(shí)時(shí)模型,常見靜態(tài)補(bǔ)償模型如:多元統(tǒng)計(jì)回歸、最小二乘支持向量機(jī)、灰色系統(tǒng)理論、神經(jīng)網(wǎng)絡(luò)等。如果機(jī)床使用環(huán)境和建模環(huán)境相近,靜態(tài)熱誤差模型能夠取得較好的預(yù)測效果,但是當(dāng)機(jī)床使用環(huán)境和建模環(huán)境相差比較大或環(huán)境溫度和工況變化比較大時(shí),模型預(yù)測精度會(huì)嚴(yán)重受到影響。為了提高熱誤差補(bǔ)償模型的精度和適應(yīng)能力,研究者提出了實(shí)時(shí)在線動(dòng)態(tài)補(bǔ)償模型,在線模型能夠根據(jù)加工狀況、環(huán)境溫度等的變化實(shí)時(shí)調(diào)整模型參數(shù),使模型能跟蹤機(jī)床熱誤差的變化,所以在線動(dòng)態(tài)模型具有更高的預(yù)測精度和適應(yīng)能力。
以上建模方法為熱誤差補(bǔ)償提供了有力工具,且在試驗(yàn)中取得了良好效果。機(jī)床部件受熱不僅會(huì)產(chǎn)生熱膨脹伸長,還會(huì)產(chǎn)生彎曲變形。如絲杠螺母在傳動(dòng)過程中由于摩擦作用產(chǎn)生熱,文獻(xiàn)分析了絲杠熱彈性效應(yīng)導(dǎo)致對(duì)工作臺(tái)縱向定位精度的影響。文獻(xiàn)提出一種幾何誤差和熱誤差建模方法,對(duì)熱誤差分離后,建立了不同位置不同溫度下的熱誤差補(bǔ)償模型,提高了工作臺(tái)定位精度。實(shí)際工作中絲杠螺母摩擦熱一部分傳入絲杠,還有一部分傳入工作臺(tái),傳入工作臺(tái)的這部分熱,分布不均勻?qū)?huì)導(dǎo)致工作臺(tái)熱變形?,F(xiàn)有文獻(xiàn)在熱誤差建模時(shí)對(duì)工作臺(tái)熱變形考慮較少,本文在三坐標(biāo)銑床上通過試驗(yàn)發(fā)現(xiàn)絲杠螺母傳入工作臺(tái)的熱導(dǎo)致工作臺(tái)兩側(cè)產(chǎn)生翹曲,為了對(duì)工作臺(tái)熱變形造成的熱誤差進(jìn)行補(bǔ)償,先建立工作臺(tái)不同位置熱誤差模型,再對(duì)工作臺(tái)各點(diǎn)模型預(yù)測值進(jìn)行分段擬合,實(shí)現(xiàn)對(duì)工作臺(tái)任意位置的熱誤差預(yù)測。為了增加模型的預(yù)測精度和適應(yīng)能力,通過聚類分析和逐步回歸尋找最佳測溫點(diǎn),采用粒子群優(yōu)化實(shí)時(shí)辨識(shí)動(dòng)態(tài)模型參數(shù),提高了模型魯棒性和預(yù)測精度。
1 溫度測點(diǎn)的選取及建模方法
在選取溫度測點(diǎn)時(shí)認(rèn)為不同位置溫度點(diǎn)只要溫度變化規(guī)律相似,對(duì)熱誤差模型的作用就相似,在建模時(shí)可以從相似的測點(diǎn)中選取一個(gè)作為代表變量,機(jī)床熱誤差模型可以用幾個(gè)關(guān)鍵的溫度點(diǎn)來表征?;谏鲜黾僭O(shè),可以在機(jī)床上布置大量傳感器,然后根據(jù)每點(diǎn)的溫度變化規(guī)律進(jìn)行分類,再從每個(gè)分類中選取一個(gè)溫度變量進(jìn)行熱誤差建模。這樣就減小了溫度測點(diǎn)選取的盲目性,且能利用較少的溫度變量建立熱誤差模型。本研究先用聚類分析方法對(duì)溫度變量進(jìn)行分類,再利用逐步回歸選取與熱誤差變化最相關(guān)的溫度測點(diǎn),然后根據(jù)選取的測點(diǎn)作為輸入變量,建立差分熱誤差模型。
(1)聚類分析方法。聚類分析是一種分類方法,它能將一批樣品或變量,按照它們在某種評(píng)定標(biāo)準(zhǔn)上的相似程度或遠(yuǎn)近進(jìn)行分類,目的是使同類內(nèi)對(duì)象的同質(zhì)性最大和類與類之間的對(duì)象差異性最大。為了對(duì)樣品(變量)進(jìn)行分類,一般采用兩種方法:①相似系數(shù)法,性質(zhì)越相似或越接近的它們相似系數(shù)為1,彼此無關(guān)的相似系數(shù)接近0,相似的樣品(變量)歸為一類;② 距離法,把樣品看做空間中的一個(gè)點(diǎn),然后定義距離,距離近的點(diǎn)歸為一類。常用的分類方法有5種:即最短距離法、最長距離法、類平均法、重心法、離差平方和法。
這5種聚類法的計(jì)算步驟一樣,不同的是距離的定義方法,當(dāng)采用歐氏距離時(shí)5種方法有統(tǒng)一的遞推公式中,
Dkr表示類Gk與類Gr之間的距離,
(2)逐步回歸原理。逐步回歸原理是在建立因變量和自變量回歸模型時(shí),自變量逐次引入,每引入一個(gè)自變量,對(duì)進(jìn)入的變量進(jìn)行逐個(gè)檢驗(yàn),當(dāng)原引入的變量由于后面變量的進(jìn)入而變得不再顯著時(shí),就將其剔除。引入或剔除一個(gè)變量稱為逐步回歸的一步,每步都要進(jìn)行F 檢驗(yàn),以確保新引入變量前,回歸方程中只包含顯著地變量。這個(gè)過程反復(fù)進(jìn)行,直到既無新的變量進(jìn)入回歸方程也無變量可剔除,計(jì)算停止得到逐步回歸下的最優(yōu)方程。
1.2 建模原理
(1)差分方程模型。差分方程輸出值不僅與當(dāng)前的輸入值有關(guān)還和歷史輸入有關(guān),而熱誤差的變化也與歷史熱輸入大小有關(guān),因此采用差分結(jié)構(gòu)描述熱膨脹更符合其物理意義。差分方程建模屬于動(dòng)態(tài)建模,差分方程形式如式(2)所示
式中,
(2)模型參數(shù)實(shí)時(shí)辨識(shí)方法。采用粒子群優(yōu)化算法,根據(jù)實(shí)時(shí)反饋的溫度和熱誤差數(shù)據(jù)對(duì)模型參數(shù)進(jìn)行辨識(shí)。
基于粒子群優(yōu)化算法辨識(shí)原理:粒子群優(yōu)化算法(Particle swarm optimization, PSO)是一種群體優(yōu)化算法,來源于人工生命和演化計(jì)算理論?;驹砣缦拢呵蠼鈫栴}時(shí),每個(gè)粒子都隨機(jī)設(shè)置初始位置和初始速度,初始位置表示在解空間中的一組解,速度表示搜索解空間的快慢。如在D 維空間中搜索,每個(gè)粒子就可以用D 維矢量表示,第i 個(gè)粒子的位置表示為x=(xi1,xi2,…,xiD),速度表示為vi= (vi1,vi2,…,viD)。每個(gè)粒子適應(yīng)度的優(yōu)劣由適應(yīng)度函數(shù)F 評(píng)價(jià),粒子經(jīng)過一次迭代,搜索到的個(gè)體最優(yōu)值: pi= (pi1,pi2,…,piD),群體最優(yōu)值:pg = (pg1,pg2,…,pgD),然后再跟據(jù)式(3)更新粒子位置和速度
式中,
式中,y0(t)為實(shí)際系統(tǒng)輸出;
2 熱誤差試驗(yàn)
2.1 試驗(yàn)安排
本試驗(yàn)以三坐標(biāo)銑床工作臺(tái)為研究對(duì)象,x 軸以指令G00快速移動(dòng)時(shí),測量在工作臺(tái)長度方向最左、中、最右三個(gè)點(diǎn)縱向熱變形(工作臺(tái)尺寸:長900 mm,寬410 mm)。傳感器安裝如圖3所示,T1放置在絲杠螺母附近;T2,T3 放置在伺服電機(jī)減速器上;T4放置在絲杠軸承座上;T5,T6放置在工作臺(tái)中間;T7測量環(huán)境溫度。電渦流位移傳感器分別安裝在工作臺(tái)最左、中、最右三個(gè)位置。工作臺(tái)x軸行程0~500 mm;往復(fù)移動(dòng)速度(以指令G00快速運(yùn)行);第一個(gè)升溫階段快速運(yùn)行2.5h,停止2.5h;第二個(gè)升溫階段運(yùn)行(第一階段速度的70%)2.5h,停止2.5 h;每隔5 min 對(duì)測點(diǎn)溫度和熱誤差進(jìn)行一次采樣。工作臺(tái)運(yùn)行1h后的絲杠螺母和工作臺(tái)的紅外圖像如圖4、5所示;溫度和熱誤差測量數(shù)據(jù)如圖6、7 所示。
圖4、5 表明,工作臺(tái)運(yùn)動(dòng)時(shí)絲杠螺母處溫度比較高,局部可以達(dá)到40℃,由此傳入工作臺(tái)使工作臺(tái)表面中間部位溫度高,兩側(cè)溫度低,工作臺(tái)上表面最高溫度27 ℃,說明從絲杠螺母處到工作臺(tái)上表面存在溫度梯度。
試驗(yàn)測量的溫度和熱誤差曲線圖6、7所示。從圖6和圖7看出,當(dāng)測點(diǎn)溫度隨機(jī)床工作狀態(tài)變化時(shí),工作臺(tái)縱向誤差也隨之發(fā)生改變,而且工作臺(tái)兩側(cè)和中間熱誤差變形量不同,也就是說工作臺(tái)熱變形后呈“凹狀”。根據(jù)這一現(xiàn)象,對(duì)機(jī)床縱向加工誤差進(jìn)行補(bǔ)償時(shí),不能采取固定值,而應(yīng)該隨著工作臺(tái)的位置不同而采取不同的補(bǔ)償量使之適應(yīng)工作臺(tái)面隨溫度和位置的變化。整個(gè)工作臺(tái)隨著受熱變形規(guī)律及變形量可由圖8表示。從圖8中看出工作臺(tái)在熱變形時(shí),兩側(cè)的熱變形量要大于中間的熱膨脹量且兩側(cè)變形速度大于中間位置,導(dǎo)致工作臺(tái)兩側(cè)翹曲,使臺(tái)面呈凹狀。
為了驗(yàn)證工作臺(tái)在連續(xù)往復(fù)工作時(shí)由于熱變形呈“凹狀”這一現(xiàn)象是否符合物理原理,采用有限元法進(jìn)行驗(yàn)證(由于有限元仿真邊界條件不可能完全符合實(shí)際工作條件,仿真數(shù)據(jù)可能和實(shí)測數(shù)據(jù)有差異,但是結(jié)果能夠反映該變化的趨勢,所以可以利用有限元法進(jìn)行驗(yàn)證這種現(xiàn)象),如圖9所示。有限元熱變形圖是在絲杠螺母處給定攝氏溫度60 ℃,仿真時(shí)間為20min的結(jié)果。從圖9上能明顯看出工作臺(tái)兩側(cè)發(fā)生翹曲,與試驗(yàn)結(jié)果得到的現(xiàn)象相吻合,說明試驗(yàn)觀察到的現(xiàn)象是可能發(fā)生的。
3 溫度測點(diǎn)選取及熱誤差建模
3.1 最佳溫度測點(diǎn)的選取
對(duì)7個(gè)溫度變量進(jìn)行系統(tǒng)聚類分析,采用最短距離法,平方Euclidean距離,計(jì)算出兩兩變量的近似矩陣,如表1所示。
根據(jù)計(jì)算的近似系數(shù),按圖1流程得到圖10所示聚類樹,縱坐標(biāo)是變量個(gè)數(shù),橫坐標(biāo)聚合指數(shù)是將實(shí)際的距離按照比例調(diào)整到0~25的范圍內(nèi)。7個(gè)溫度變量按照四類進(jìn)行選取,從每一類中選取一個(gè)變量得到T1、T5、T7、T2四個(gè)為基本待選變量。
方程復(fù)相關(guān)系數(shù)R = 87%,各變量因子顯著水平遠(yuǎn)小于0.05,說明各自變量與因變量線性相關(guān)程度顯著,由此選取和熱誤差有顯著關(guān)系的溫度變量為T1和T2。
3.2 差分方程階次的確定
確定方程階次是采用從1 階逐次遞增,同時(shí)考察模型預(yù)測值與測量值殘差平方和的大小來確定,當(dāng)增加階次殘差平方和變化不明顯時(shí),采用此時(shí)階次值。根據(jù)上面方法并考慮運(yùn)算簡單性,確定差分方程為二階
由于工作臺(tái)兩側(cè)和中間的變形量不一樣,因此需要3個(gè)模型分別對(duì)工作臺(tái)左側(cè)、中間和右側(cè)熱誤差進(jìn)行預(yù)測。如果工作臺(tái)左右兩側(cè)熱誤差相差很小,可以共用1個(gè)模型進(jìn)行預(yù)測。
3.3 參數(shù)模型實(shí)時(shí)辨識(shí)
確定熱誤差模型結(jié)構(gòu)后,采用粒子群優(yōu)化算法對(duì)模型參數(shù)進(jìn)行辨識(shí)。對(duì)熱誤差模型參數(shù)辨識(shí)并不是每個(gè)反饋周期都進(jìn)行,而是當(dāng)模型輸出值和熱誤差反饋值殘差超過一定范圍時(shí),再啟動(dòng)辨識(shí)算法對(duì)模型參數(shù)進(jìn)行辨識(shí)更新。辨識(shí)的輸入數(shù)據(jù)為最近的10次采樣數(shù)據(jù),使熱誤差模型始終反映機(jī)床最新的工作狀態(tài)。
3.4 擬合模型的建立
設(shè)EL(t),EM(t),ER(t)分別為工作臺(tái)左側(cè)、中間和右側(cè)在t 時(shí)刻的熱誤差模型預(yù)測值,為對(duì)工作臺(tái)左半部分行熱誤差預(yù)測,利用EL(t)和EM(t)進(jìn)行直線擬合得到擬合公式(6),由于不同時(shí)刻EL(t)和EM(t)取值不同,所以a和b是時(shí)變系數(shù)
式中,
4 熱誤差建模結(jié)果及分析
4.1 單點(diǎn)模型建模結(jié)果及分析
由于工作臺(tái)中間熱誤差模型和兩側(cè)熱誤差模型結(jié)構(gòu)形式相同,辨識(shí)算法也一樣,在此只給出工作臺(tái)左側(cè)熱誤差模型驗(yàn)證結(jié)果。采用粒子群優(yōu)化參數(shù)辨識(shí)工作臺(tái)左側(cè)模型參數(shù),辨識(shí)結(jié)果如圖11所示。
通過圖11看出,在第一個(gè)升溫階段模型預(yù)測值與測量值符合較好殘差很小,因?yàn)榇穗A段工況單一,熱誤差模型能夠進(jìn)行較好的預(yù)測;當(dāng)溫度開始下降時(shí),在第38個(gè)采樣時(shí)刻出現(xiàn)一次波動(dòng),說明熱誤差模型參數(shù)和機(jī)床狀態(tài)不匹配,殘差超出限定值需要更新模型參數(shù),更新模型參數(shù)后直到下一個(gè)升溫過程,預(yù)測值效果良好,殘差值較小。在第68個(gè)采樣時(shí)刻殘差又出現(xiàn)一次波動(dòng),模型進(jìn)行參數(shù)更新,使熱誤差模型隨著機(jī)床熱狀態(tài)的變化而實(shí)時(shí)調(diào)整。說明該算法有一定的自適應(yīng)能力,能夠根據(jù)殘差的變化實(shí)時(shí)更新模型參數(shù),模型預(yù)測結(jié)果如表2所示。
4.2 分段擬合模型驗(yàn)證及分析
通過上述辨識(shí)過程得到工作臺(tái)中間和兩側(cè)的單點(diǎn)熱誤差模型,要對(duì)工作臺(tái)整體范圍進(jìn)行熱誤差補(bǔ)償,還需要進(jìn)一步對(duì)熱誤差模型進(jìn)行擴(kuò)展,因?yàn)樯鲜鰺嵴`差模型只是描述工作臺(tái)三個(gè)位置的熱誤差狀態(tài)。為了對(duì)整個(gè)臺(tái)面的熱誤差進(jìn)行補(bǔ)償,對(duì)每一時(shí)刻預(yù)測值得到的左、中和右三個(gè)數(shù)值進(jìn)行分段擬合得到擬合公式,在補(bǔ)償時(shí)由分段擬合公式得到工作臺(tái)任意位置的熱誤差量,這樣就可以做到對(duì)整個(gè)工作臺(tái)的任意位置進(jìn)行補(bǔ)償。為驗(yàn)證這一過程,在工作臺(tái)中間傳感器和最左端傳感器中間處再放置一個(gè)位移傳感器,用來測量該位置的熱誤差值作為驗(yàn)證值。預(yù)測模型采用最左端和中間熱誤差模型的預(yù)測值做直線擬合,然后根據(jù)得到的直線模型對(duì)中間點(diǎn)進(jìn)行預(yù)測。直線分段擬合模型預(yù)測值與測量值進(jìn)行比較,結(jié)果如圖12所示,殘差指標(biāo)如表3所示。
從圖12和表3看出,采用兩點(diǎn)直線擬合公式對(duì)中間熱進(jìn)行預(yù)測,效果良好,采用直線分段擬合方法能夠?qū)崿F(xiàn)對(duì)工作臺(tái)任意位置的縱向熱誤差精確預(yù)測。根據(jù)此原理很容易建立工作臺(tái)右側(cè)部分的直線分段擬合模型。
5 結(jié)論
1.1 溫度測點(diǎn)的選取方法
Gr是Gq和Gp合并后形成的新類。
αp,αq, β, γ對(duì)不同方法有不同的取值,具體取值參見文獻(xiàn)。采用系統(tǒng)聚類法進(jìn)行分類的流程如圖1所示。
k 表示采樣時(shí)刻;
a, b 為方程系數(shù);
n 為差分方程的階次;
E(k), T(K)分別為系統(tǒng)的輸出和輸入序列。
i=1,2,…,N;
d=1,2,…,D;
c1 和c2是非負(fù)常數(shù);
r1和r2是介于[0,1]的隨機(jī)數(shù);
vid ∈[vmax,vmax ], vmax為粒子最大速度;
t為當(dāng)前迭代次數(shù)。
PSO算法流程圖如圖2所示。PSO算法進(jìn)行系統(tǒng)辨識(shí),可以看成是一優(yōu)化過程,適應(yīng)度函數(shù)取如下
y(t)為模型輸出,min為取適應(yīng)度函數(shù)的最小值。
PSO 算法進(jìn)行系統(tǒng)辨識(shí)是使一組粒子作為模型參數(shù),使式(4)取得最小值,對(duì)應(yīng)的這組粒子就是待求模型參數(shù)。
2.2 試驗(yàn)結(jié)果定性分析
x為工作臺(tái)位置,
a、b為線性方程系數(shù)。
利用式(6)可以對(duì)工作臺(tái)左側(cè)部分,進(jìn)行任意位置的縱向熱誤差預(yù)測。同理可以建立工作臺(tái)右側(cè)部分的線性預(yù)測模型。
(2)通過粒子群優(yōu)化算法,能夠根據(jù)反饋數(shù)據(jù)對(duì)二階差分模型參數(shù)進(jìn)行實(shí)時(shí)辨識(shí),使模型能夠跟蹤機(jī)床熱誤差的變化,從而使模型保持較高的預(yù)測精度。
(3)試驗(yàn)中發(fā)現(xiàn)機(jī)床工作臺(tái)兩側(cè)翹曲現(xiàn)象,通過對(duì)銑床工作臺(tái)x方向左、中、右三點(diǎn)分別建立熱誤差模型,再通過對(duì)三點(diǎn)熱誤差模型各時(shí)刻預(yù)測值進(jìn)行分段擬合,實(shí)現(xiàn)對(duì)工作臺(tái)任意位置熱誤差補(bǔ)償。為了對(duì)更大尺寸工作臺(tái)進(jìn)行熱誤差補(bǔ)償,只需要按照此原理在工作臺(tái)上布置更多的熱誤差傳感器,建立對(duì)應(yīng)點(diǎn)的熱誤差模型,然后對(duì)各模型預(yù)測值進(jìn)行分段擬合得到整個(gè)工作臺(tái)的縱向熱誤差補(bǔ)償模型。為了進(jìn)一步提高多點(diǎn)模型擬合的精度,可以采用高次多項(xiàng)進(jìn)行多點(diǎn)擬合。該方法為大尺寸工作臺(tái)縱向熱誤差補(bǔ)償提供了一種新思路。