王文輝,周慶兵,唐光元
(重慶理工大學(xué) 機(jī)械工程學(xué)院,重慶 400054)
數(shù)控機(jī)床熱誤差對零件的加工精度影響顯著[1],研究表明熱誤差占機(jī)床總誤差的40%至70%[2-3]。以熱誤差模型為核心的軟件補(bǔ)償方法,以其成本低、靈活度高的優(yōu)勢,成為現(xiàn)代機(jī)床熱誤差研究中的主流趨勢[4]。
數(shù)控機(jī)床熱誤差軟件補(bǔ)償?shù)暮诵氖墙㈩A(yù)測精度高、穩(wěn)健性強(qiáng)的數(shù)學(xué)模型[5]。目前,許多學(xué)者關(guān)注的算法反向傳播(Back Propagation,BP)神經(jīng)網(wǎng)絡(luò),具有較強(qiáng)的非線性映射能力和高度自學(xué)習(xí)、自適應(yīng)的能力[6],在一定程度上可以提高模型的預(yù)測精度。但是,在機(jī)床熱誤差補(bǔ)償建模中,既需要精度又需要穩(wěn)健性,而BP神經(jīng)網(wǎng)絡(luò)算法較難滿足穩(wěn)健性要求,預(yù)測精度會出現(xiàn)提高或降低的現(xiàn)象,無法滿足工程實(shí)踐應(yīng)用。
經(jīng)過研究發(fā)現(xiàn),主成分分析算法(Principal Component Analysis,PCA)可以有效的提高穩(wěn)健性。對此,本文提出在BP神經(jīng)網(wǎng)絡(luò)建模的基礎(chǔ)上增加PCA的數(shù)據(jù)前處理過程來提高模型的穩(wěn)健性,簡稱PCA-BP神經(jīng)網(wǎng)絡(luò)。用主成分變量參與BP建模,能反映原始數(shù)據(jù)中的大部分信息,保留主要的特征屬性,大大提高模型的穩(wěn)健性[7]。為驗(yàn)證所提方法的有效性和優(yōu)越性,建立了Vcenter-55型數(shù)控加工中心的PCA-BP熱誤差模型,并與傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行性能對比。
BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),模型為節(jié)點(diǎn)構(gòu)成的網(wǎng)絡(luò)結(jié)構(gòu),包含輸入層、隱含層和輸出層,BP神經(jīng)網(wǎng)絡(luò)模型如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)模型
本文建立的BP神經(jīng)網(wǎng)絡(luò)熱誤差模型中,輸入層有2個(gè)節(jié)點(diǎn),使用模糊聚類結(jié)合灰色關(guān)聯(lián)度方法選擇出溫度敏感點(diǎn),作為溫度輸入變量;隱含層有5個(gè)節(jié)點(diǎn);輸出層有1個(gè)節(jié)點(diǎn),表示機(jī)床熱誤差數(shù)據(jù)。正向傳播時(shí)輸入信號經(jīng)權(quán)值和閾值處理傳遞給隱含層,經(jīng)神經(jīng)元的傳遞函數(shù)處理后輸出,逐層傳遞,最終輸出信號。神經(jīng)元常用傳遞函數(shù)是Sigmoid型,見公式(1)。輸出信號與熱誤差之間的殘差作為誤差信號,當(dāng)誤差信號過大時(shí),則進(jìn)行反向傳播,將誤差信號沿原來的通道返回,通過修改各層節(jié)點(diǎn)的權(quán)值和閾值使誤差信號減小,重復(fù)訓(xùn)練得出網(wǎng)絡(luò)模型。
(1)
BP神經(jīng)網(wǎng)絡(luò)通過正、反向傳播控制誤差信號達(dá)到最小,擬合出各種復(fù)雜非線性溫度-熱誤差映射關(guān)系,高度自學(xué)習(xí)的能力使模型預(yù)測精度有一定的提高。但模型在訓(xùn)練過程中,無法快速獲取最佳權(quán)值和域值,使模型預(yù)測精度的穩(wěn)健性下降,而在工程實(shí)踐中,模型需同時(shí)保持精度和穩(wěn)健性,傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)存在一定的缺陷。主成分回歸算法用無相關(guān)性的主成分變量回歸建模,可以提高模型穩(wěn)健性[8]。
結(jié)合兩者算法優(yōu)點(diǎn),引出PCA-BP神經(jīng)網(wǎng)絡(luò),PCA-BP神經(jīng)網(wǎng)絡(luò)建模流程圖如圖2所示。
圖2 PCA-BP神經(jīng)網(wǎng)絡(luò)建模流程圖
該算法主要分兩步建模,第一步,對原始數(shù)據(jù)X進(jìn)行主成分算法分析:用溫度數(shù)據(jù)X=[x1x2…xm]求主成分Zi,見公式(2),再計(jì)算累計(jì)貢獻(xiàn)值Vcgg,見公式(3),選擇出Vcgg≥99%的主成分Zg;第二步,用主成分變量Zg代替原數(shù)據(jù)X作為輸入變量,建立PCA-BP模型。
(2)
式中,uij(i,j=1, 2, … ,m)為X的相關(guān)系數(shù)矩陣的特征向量。
(3)
式中,λi為X的相關(guān)系數(shù)矩陣的特征值。
以Vcenter-55型數(shù)控加工中心熱誤差為研究對象,對數(shù)控機(jī)床的熱誤差和溫度同步采集,Vcenter-55數(shù)控立式加工中心如圖3所示。
圖3 Vcenter-55數(shù)控立式加工中心
熱誤差的測量采用“五點(diǎn)測量法”,記作S1~S5,使用電渦流位移傳感器,型號為ZH3010,量程為 1 mm,五點(diǎn)測量法安放位置如圖4所示。
圖4 五點(diǎn)測量法安放位置
溫度測量方面,選取20個(gè)溫度傳感器對機(jī)床主要的熱源附近進(jìn)行測量,記作T1~T20,溫度傳感器型號為DS18B20,測量范圍在-55~125 ℃,溫度傳感器安放位置表如表1所示。
表1 溫度傳感器安放位置表
根據(jù)上述實(shí)驗(yàn)裝置測量,主軸以恒定轉(zhuǎn)速2 500 r·min-1空轉(zhuǎn),實(shí)驗(yàn)持續(xù)時(shí)間達(dá)到7 h以上,累計(jì)測量獲得6次實(shí)驗(yàn)數(shù)據(jù),記作K1~K6批次,其中K1批次部分溫度曲線圖如圖5所示。溫度持續(xù)升高,不同傳感器溫升控制在4~9 ℃之間。
圖5 K1批次部分溫度曲線圖
因機(jī)床X軸和Y軸的熱誤差較小,故本文將以Z向熱誤差為例進(jìn)行建模及預(yù)測,K1~K6批次的Z向熱誤差曲線圖如圖6所示。6次實(shí)驗(yàn)中數(shù)據(jù)采集時(shí)間長短不一,達(dá)到峰值時(shí)間有差異,分布范圍跨度較大。
圖6 K1~K6批次的Z向熱誤差曲線圖
熱誤差數(shù)據(jù)在建模使用前需要從諸多溫度監(jiān)測點(diǎn)中選擇合適的溫度敏感點(diǎn),以避免過多的輸入變量,可能存在共線性問題[9-10]。采用模糊聚類結(jié)合灰色關(guān)聯(lián)度的方法[11-12]計(jì)算出K1~K6批次數(shù)據(jù)的溫度敏感點(diǎn),溫度敏感點(diǎn)選擇如表2所示,表明溫度測點(diǎn)T1、T7與機(jī)床熱誤差之間的關(guān)聯(lián)性更大,所建模型的預(yù)測效果最佳。
表2 溫度敏感點(diǎn)選擇
圖7 PCA-BP神經(jīng)網(wǎng)絡(luò)模型
網(wǎng)絡(luò)模型設(shè)定隱含層節(jié)點(diǎn)數(shù)為5,隱含層傳遞函數(shù)為sigmoid,輸出層傳遞函數(shù)為purelin,訓(xùn)練函數(shù)為trainlm,學(xué)習(xí)率設(shè)置為0.01,得出K1批次的訓(xùn)練模型,記作“Net1”。
同時(shí),作為參照對比,建立BP神經(jīng)網(wǎng)絡(luò)模型,以溫度敏感點(diǎn)T1和T7作為輸入信號,網(wǎng)絡(luò)設(shè)定與PCA-BP模型一致,記作“Net1_BP”。并用兩種模型預(yù)測K2批次的熱誤差,K2預(yù)測結(jié)果和K2預(yù)測殘差分別如圖8和圖9所示。
圖8 K2預(yù)測結(jié)果
圖9 K2預(yù)測殘差
對比圖中預(yù)測結(jié)果,PCA-BP模型預(yù)測效果顯著優(yōu)于BP模型,殘差分布在-3~0 μm之間。計(jì)算2種模型的最大殘差(δmax)、均方根誤差(RMSE),模型預(yù)測性能評價(jià)指標(biāo)如表3所示,相比之下,PCA-BP模型的最大殘差和均方根誤差較小,分別為2.95 μm和1.27 μm,表明預(yù)測精度更好。
表3 模型預(yù)測性能評價(jià)指標(biāo)
為進(jìn)一步體現(xiàn)PCA-BP模型的穩(wěn)健性,用K1~K6批次實(shí)驗(yàn)數(shù)據(jù)之間相互預(yù)測。以BP和PCA-BP算法對某一批次數(shù)據(jù)分別建立模型,隨后用該模型依次對其他批次數(shù)據(jù)進(jìn)行預(yù)測,并計(jì)算RMSE用于模型預(yù)測穩(wěn)健性分析,2種模型預(yù)測結(jié)果分別如表4和表5所示。
表4 BP模型預(yù)測效果 (μm)
表5 PCA-BP模型預(yù)測效果 (μm)
為綜合評價(jià)模型的穩(wěn)健性,用RMSE的均值和標(biāo)準(zhǔn)差分別作為模型預(yù)測精度和穩(wěn)健性的評判標(biāo)準(zhǔn),均值和標(biāo)準(zhǔn)差越小,說明該模型的預(yù)測精度和穩(wěn)健性越強(qiáng)。分別繪制RMSE的均值和標(biāo)準(zhǔn)差條形圖,如圖10和圖11所示。
圖10 BP和PCA-BP模型RMSE均值比較
圖11 BP和PCA-BP模型RMSE標(biāo)準(zhǔn)差比較
由圖可知,BP模型最大均值和標(biāo)準(zhǔn)差分別為9.93 μm和5.61 μm;PCA-BP模型的最大均值和標(biāo)準(zhǔn)差分別為3.64 μm和1.68 μm。無論是預(yù)測精度的均值還是標(biāo)準(zhǔn)差,PCA-BP模型均低于BP模型,穩(wěn)健性得到較大提升,具有明顯的優(yōu)勢,能夠更好的表達(dá)機(jī)床熱誤差與溫度之間的規(guī)律。
BP神經(jīng)網(wǎng)絡(luò)的優(yōu)勢在于非線性映射和自學(xué)習(xí)能力,在一定程度上可以提高模型的預(yù)測精度,但是對于數(shù)控機(jī)床熱誤差補(bǔ)償缺陷在于穩(wěn)健性較差,對此本文提出PCA-BP神經(jīng)網(wǎng)絡(luò)。
建立Vcenter-55數(shù)控加工中心的熱誤差模型,多批次預(yù)測實(shí)驗(yàn)結(jié)果表明,所提PCA-BP模型可將預(yù)測結(jié)果均方根誤差的最大均值和最大標(biāo)準(zhǔn)差分別控制在3.64 μm和1.68 μm以內(nèi),PCA-BP模型穩(wěn)健性顯著優(yōu)于BP模型,所提方法對于進(jìn)一步提高熱誤差模型的精度及穩(wěn)健性具有理論指導(dǎo)意義。