林偉鋮,尹玲,張斐,呂崢
(1.東莞理工學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,廣東東莞 523808;2.東莞理工學(xué)院中法聯(lián)合學(xué)院,廣東東莞 523808;3.湖南科技大學(xué)機(jī)械設(shè)備健康維護(hù)湖南省重點(diǎn)實(shí)驗(yàn)室,湖南湘潭 411201;4.東莞理工學(xué)院機(jī)械工程學(xué)院,廣東東莞 523808)
數(shù)控機(jī)床熱誤差是機(jī)床主要誤差源,占機(jī)床總誤差的40%~70%[1-3]。近年來(lái),眾多學(xué)者將人工智能算法引入到熱誤差建模中,提高熱誤差模型的預(yù)測(cè)精度。
王子涵等[4]提出一種基于貝葉斯神經(jīng)網(wǎng)絡(luò)的熱誤差建模方法。GUO 等[5]采用基于人工智能的神經(jīng)網(wǎng)絡(luò)建立熱誤差模型。神經(jīng)網(wǎng)絡(luò)模型解決了溫度與熱誤差的非線性映射問(wèn)題,提高了預(yù)測(cè)精度,但基于人工神經(jīng)網(wǎng)絡(luò)的模型易陷入局部極值[6]。
為了解決模型陷入局部極值問(wèn)題,一些學(xué)者將具有強(qiáng)大非線性映射能力的神經(jīng)網(wǎng)絡(luò)結(jié)合智能優(yōu)化算法的全局尋優(yōu)能力,建立熱誤差模型。例如,遺傳算法優(yōu)化反向傳播神經(jīng)網(wǎng)絡(luò)[7]、基于雞群算法的徑向基神經(jīng)網(wǎng)絡(luò)[8]、遺傳算法優(yōu)化Elman神經(jīng)網(wǎng)絡(luò)[9]和遺傳算法結(jié)合小波基神經(jīng)網(wǎng)絡(luò)[10]等建模方法。但這類模型的輸入通常為多個(gè)溫度測(cè)量點(diǎn)的數(shù)據(jù),模型內(nèi)部的參數(shù)與溫度測(cè)量點(diǎn)的個(gè)數(shù)呈倍數(shù)關(guān)系,不利于嵌入到機(jī)床的數(shù)控系統(tǒng)進(jìn)行應(yīng)用。
美國(guó)學(xué)者M(jìn) A DONMEY等提出主軸熱變形誤差通用模型[11]:
ΔEi=a0+a1ΔTi+a2(ΔTi)2+a3(ΔTi)3
(1)
式中:ΔEi為i時(shí)刻的熱誤差變化量的預(yù)測(cè)值;a0、a1、a2、a3為參數(shù);ΔTi為i時(shí)刻的溫度變化量。
該模型為熱誤差的補(bǔ)償建模提供了一種思路,它是冪函數(shù)的近似逼近。且該模型只需單個(gè)溫度傳感器數(shù)據(jù),其內(nèi)部參數(shù)僅有4個(gè),易于嵌入數(shù)控系統(tǒng),但該模型為三階冪函數(shù),泛化能力較差,其輸入的溫度數(shù)據(jù)取決于當(dāng)前時(shí)刻的溫度數(shù)據(jù),沒(méi)有考慮機(jī)床熱特性和熱滯后等問(wèn)題。
為了解決該模型上述問(wèn)題,本文作者修正該模型,將三階冪函數(shù)修改成變階冪函數(shù),使得模型的泛化能力更好,結(jié)合滿兵等人[12]和屈力剛等[13]對(duì)溫度數(shù)據(jù)的優(yōu)化分析,將模型的輸入增加前一時(shí)刻的溫度數(shù)據(jù),一定程度上解決了熱滯后問(wèn)題,同時(shí),保留該模型只需單個(gè)溫度傳感器數(shù)據(jù)的特點(diǎn)。
文中修正模型(T模型)結(jié)合智能優(yōu)化算法,利用智能優(yōu)化的遺傳算法全局尋優(yōu),避免模型陷入局部極值,設(shè)計(jì)混合編碼使得遺傳算法能同步辨識(shí)T模型的所有參數(shù),加快建模效率?;谏鲜鏊枷?,提出一種遺傳算法優(yōu)化T模型的主軸熱誤差辨識(shí)模型(GA-T主軸熱誤差辨識(shí)模型)。
將提到的通用模型加入前一時(shí)刻的溫度變化量,將三階冪函數(shù)修正為變階冪函數(shù),其修正模型如下:
(2)
式中:αj、βk、C為參數(shù);ΔTi-1為i-1時(shí)刻的溫度變化量。T模型考慮了上一時(shí)刻的溫度變化量,能夠更好地處理機(jī)床熱滯后問(wèn)題。
遺傳算法通過(guò)模擬自然進(jìn)化的過(guò)程,根據(jù)自然界適者生存的機(jī)制,使種群不斷進(jìn)化,從而得到全局最優(yōu)解或接近全局最優(yōu)解的解。其算法流程如圖1所示。
圖1 遺傳算法流程
從圖1可以看出:遺傳算法主要由4個(gè)操作(父代選擇、交叉、變異和更新種群)和1個(gè)收斂條件組成。其中每個(gè)操作都影響物種多樣性,物種多樣性保持得好,算法就不易于陷入局部極值,而收斂條件決定了算法的效率和精度。
如公式(2)所示,T模型只需要單個(gè)溫度傳感器數(shù)據(jù)即可預(yù)測(cè)主軸軸向熱誤差,模型內(nèi)部參數(shù)個(gè)數(shù)為n+m+3,能夠適用于寄存器較少的數(shù)控系統(tǒng)。
由公式(2)得知,T模型需要辨識(shí)的參數(shù)有正整數(shù)n、m,向量α、β和實(shí)數(shù)C。為了使遺傳算法和T模型結(jié)合,設(shè)計(jì)混合編碼作為遺傳算法的個(gè)體基因,定義為(n,m,α1,α2,…,αn,β1,β2,…,βm,C)。
由圖1得知,進(jìn)行父代選擇時(shí),需要計(jì)算個(gè)體適應(yīng)值。文中將預(yù)測(cè)的熱誤差變化量累加得到當(dāng)前時(shí)刻機(jī)床主軸軸向熱誤差的預(yù)測(cè)值E,再將預(yù)測(cè)值E與實(shí)際值的最大殘差的倒數(shù)作為個(gè)體適應(yīng)值,讓預(yù)測(cè)值與實(shí)際值的最大殘差降到最低,提高模型預(yù)測(cè)機(jī)床熱誤差的穩(wěn)定性,從而提高機(jī)床平均加工精度。當(dāng)前時(shí)刻的機(jī)床主軸軸向熱誤差預(yù)測(cè)值函數(shù)和遺傳算法的個(gè)體適應(yīng)值函數(shù)如公式(3)和公式(4)所示:
(3)
式中:Ej為j時(shí)刻機(jī)床主軸軸向熱誤差的預(yù)測(cè)值。
(4)
式中:fk為個(gè)體k的適應(yīng)值;ek{N}為個(gè)體k的所有預(yù)測(cè)殘差。
遺傳算法的種群經(jīng)過(guò)若干代進(jìn)化后,選擇最佳個(gè)體(個(gè)體適應(yīng)值最大的個(gè)體),解碼后作為T模型的參數(shù),其流程如圖2所示。
圖2 GA-T模型流程
為了使GA-T模型的精度更高,建模速度更快,文中對(duì)遺傳算法進(jìn)一步優(yōu)化。
圖2所示的GA-T模型中,交叉操作是影響模型精度的關(guān)鍵因素,而收斂條件對(duì)模型的效率和精度都有直接影響。文中優(yōu)化交叉操作以及收斂條件的設(shè)置。
1.3.1 基于物種多樣性保持的交叉操作優(yōu)化方法
在交叉操作中,應(yīng)保持物種多樣性,避免收斂到局部最優(yōu)。本文作者設(shè)計(jì)了基于物種多樣性保持的交叉操作優(yōu)化方法,根據(jù)個(gè)體適應(yīng)值進(jìn)行父代選擇,得到兩個(gè)父代個(gè)體,并進(jìn)行隨機(jī)交叉生成兩個(gè)子代個(gè)體,使兩個(gè)子代個(gè)體基因的并集等于兩個(gè)父代個(gè)體基因的并集,保持了物種多樣性,再計(jì)算兩個(gè)子代個(gè)體的適應(yīng)值,選出較優(yōu)的子代個(gè)體作為下一代。其流程如圖3所示。
圖3 交叉操作流程
圖中,由選擇操作得到兩個(gè)父代個(gè)體,對(duì)兩個(gè)父代個(gè)體的每位基因進(jìn)行隨機(jī)交叉,生成子代個(gè)體。
1.3.2 自適應(yīng)收斂條件
收斂條件決定了遺傳算法的進(jìn)化次數(shù)。通常,將固定進(jìn)化次數(shù)作為遺傳算法的收斂條件,但由于無(wú)法判斷算法何時(shí)收斂,故只能適當(dāng)增加進(jìn)化次數(shù),提高模型精度。
文中設(shè)計(jì)自適應(yīng)收斂條件,即當(dāng)種群連續(xù)進(jìn)化若干代后,仍未有更好的個(gè)體(最佳適應(yīng)值沒(méi)有更新)出現(xiàn)時(shí),結(jié)束遺傳算法。
訓(xùn)練自適應(yīng)收斂條件的GA-T模型時(shí),無(wú)需提前設(shè)置進(jìn)化次數(shù)。對(duì)比固定進(jìn)化次數(shù)的收斂條件,自適應(yīng)收斂條件可以讓模型的效率變高,面對(duì)不同熱誤差數(shù)據(jù)時(shí)泛化性更強(qiáng)。
以某型號(hào)三軸數(shù)控機(jī)床為研究對(duì)象,搭建了熱誤差建模與實(shí)驗(yàn)驗(yàn)證平臺(tái)。機(jī)床實(shí)切加工,將加工好的工件用三坐標(biāo)測(cè)量?jī)x測(cè)量加工誤差。利用溫度傳感器采集主軸前端溫度,如圖4、圖5所示。
圖4 加工工件
圖5 溫度傳感器布置位置
從圖4可知:工件每個(gè)凹槽有兩個(gè)深度,其中較深的深度標(biāo)準(zhǔn)值為7 mm,另一個(gè)為5 mm。
圖4所示的每個(gè)凹槽的加工時(shí)間為3 min,故每3 min記錄一次溫度數(shù)據(jù),共加工123 min。機(jī)床加工結(jié)束后,將在三坐標(biāo)測(cè)量?jī)x測(cè)量整個(gè)工件每個(gè)凹槽的深度,再將測(cè)量數(shù)據(jù)整理成熱誤差數(shù)據(jù)。熱誤差數(shù)據(jù)和溫度數(shù)據(jù)如圖6所示。
圖6 機(jī)床溫度、熱誤差數(shù)據(jù)
圖6為機(jī)床實(shí)切采集的一組數(shù)據(jù),溫度從23.7 ℃升溫到28.4 ℃,熱誤差從0 μm增長(zhǎng)到59 μm。
2.3.1 GA-T熱誤差建模
GA-T模型里,遺傳算法種群規(guī)模為30,高斯分布初始化,變異率為0.1,收斂條件為自適應(yīng)收斂條件。
為了評(píng)估模型,引入了平均絕對(duì)誤差(MAE)、最大絕對(duì)殘差(MAX)和擬合優(yōu)度(R2)。其公式如下:
(5)
eMAX=max (e{N})
(6)
式中:e{N}為絕對(duì)殘差集合。
(7)
訓(xùn)練好的GA-T模型,其預(yù)測(cè)熱誤差與實(shí)際熱誤差的曲線如圖7所示。
圖7 GA-T模型預(yù)測(cè)值與實(shí)際值曲線
從圖7可知:GA-T模型的擬合能力很強(qiáng),最大絕對(duì)殘差為3.41 μm,平均絕對(duì)誤差為1.57 μm。
2.3.2 神經(jīng)網(wǎng)絡(luò)熱誤差建模
神經(jīng)網(wǎng)絡(luò)采用2-10-1的網(wǎng)絡(luò)架構(gòu),訓(xùn)練次數(shù)為1 000,進(jìn)步率為0.01,采用Adam優(yōu)化器,訓(xùn)練集與GA-T模型的訓(xùn)練集一致,其預(yù)測(cè)熱誤差與實(shí)際熱誤差的曲線如圖8所示。
圖8中:神經(jīng)網(wǎng)絡(luò)模型的最大絕對(duì)殘差為14.28 μm,平均絕對(duì)誤差為9.45 μm。
2.3.3 兩個(gè)模型的訓(xùn)練對(duì)比小結(jié)
由圖7和圖8可以看出:模型輸入為單溫度傳感器的數(shù)據(jù)時(shí),GA-T模型的平均誤差和最大誤差皆小于神經(jīng)網(wǎng)絡(luò)模型,GA-T模型預(yù)測(cè)精度高,擬合能力強(qiáng)。
在某型號(hào)三軸機(jī)床上,采集兩組工件實(shí)切數(shù)據(jù),用上述訓(xùn)練好的兩個(gè)模型做4組實(shí)驗(yàn)。第1組和第2組使用第1組機(jī)床實(shí)切采集的溫度數(shù)據(jù)作為模型輸入,分別使用神經(jīng)網(wǎng)絡(luò)模型和GA-T模型預(yù)測(cè)機(jī)床熱誤差,計(jì)算實(shí)際值與預(yù)測(cè)值的MAE和MAX。第3組和第4組使用第2組機(jī)床實(shí)切采集的溫度數(shù)據(jù)作為模型輸入,其余與第1組和第2組一致。對(duì)比結(jié)果如表1所示。
表1 兩個(gè)模型測(cè)試對(duì)比 單位:μm
從表1可以看出:GA-T模型對(duì)機(jī)床主軸軸向熱誤差的預(yù)測(cè)遠(yuǎn)優(yōu)于神經(jīng)網(wǎng)絡(luò)模型,GA-T模型最大預(yù)測(cè)誤差均在10 μm,而神經(jīng)網(wǎng)絡(luò)模型在20 μm左右。
(1)針對(duì)基于單個(gè)溫度傳感器數(shù)據(jù)的熱誤差模型現(xiàn)存的問(wèn)題,提出了GA-T模型。設(shè)計(jì)混合編碼,使遺傳算法和T模型相結(jié)合。該模型利用遺傳算法全局尋優(yōu),更好地避免陷入局部最小值。設(shè)計(jì)基于物種多樣性保持的交叉操作優(yōu)化方法,提高模型精度。設(shè)計(jì)自適應(yīng)收斂條件,加快建模效率。
(2)GA-T模型的輸入只需單個(gè)溫度傳感器數(shù)據(jù),且模型自身的參數(shù)少,易于嵌入機(jī)床數(shù)控系統(tǒng)。
(3)通過(guò)某型號(hào)三軸機(jī)床熱誤差測(cè)試平臺(tái)搭建與實(shí)切實(shí)驗(yàn),針對(duì)機(jī)床主軸軸向熱誤差,進(jìn)行實(shí)際建模分析與對(duì)比,GA-T模型各項(xiàng)性能指標(biāo)均大幅領(lǐng)先神經(jīng)網(wǎng)絡(luò)模型,且具有泛化性強(qiáng)、建模時(shí)間短、參數(shù)可選范圍廣和預(yù)測(cè)精度高等優(yōu)點(diǎn)。