基于加強(qiáng)樸素貝葉斯網(wǎng)絡(luò)的機(jī)床熱誤差補(bǔ)償方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及一種機(jī)床熱誤差補(bǔ)償方法,具體設(shè)及一種基于加強(qiáng)樸素貝葉斯網(wǎng)絡(luò)的 機(jī)床熱誤差補(bǔ)償方法。
【背景技術(shù)】
[0002] 在影響零件加工精度的因素中,機(jī)床熱誤差是影響加工精度的主要原因之一,在 精密機(jī)床加工中由于溫度變化造成的加工誤差可W占到60% -70%,因此有效地檢測(cè)出機(jī) 床熱誤差并對(duì)其補(bǔ)償,將可W大幅提高加工精度。
[0003] 現(xiàn)有的數(shù)控機(jī)床熱誤差建模和補(bǔ)償研究,主要集中于建立機(jī)床關(guān)鍵部件的溫度與 機(jī)床整體熱誤差的映射模型,實(shí)現(xiàn)對(duì)機(jī)床的準(zhǔn)靜態(tài)熱誤差進(jìn)行補(bǔ)償?shù)哪康?。然而,現(xiàn)有模型 較少考慮不同工況(主軸轉(zhuǎn)速、進(jìn)給速度、切削載荷、零件形狀等)對(duì)熱誤差的影響。最新 的研究表明采用不同的工況條件,即使在機(jī)床部件的溫度場(chǎng)分布相似的情況下,機(jī)床熱誤 差也產(chǎn)生明顯的變化。在工況時(shí)變性較強(qiáng)的實(shí)際加工應(yīng)用中,上述模型的精度和魯椿性都 很難滿足高速高精的現(xiàn)實(shí)加工需求。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明要解決的技術(shù)問題是提供一種可有效提高機(jī)床加工精度的基于加強(qiáng)樸素 貝葉斯網(wǎng)絡(luò)的機(jī)床熱誤差補(bǔ)償方法。
[0005] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是;基于加強(qiáng)樸素貝葉斯網(wǎng)絡(luò)的機(jī)床熱 誤差補(bǔ)償方法,包括下列步驟:
[0006] 步驟一,在機(jī)床上的熱關(guān)鍵點(diǎn)附近布置多個(gè)傳感器;
[0007] 步驟二,通過傳感器采集多組不同工況下的溫度信號(hào),并抽取其中四分之一W上 的溫度信號(hào)作為模型的訓(xùn)練信號(hào),將剩余溫度信號(hào)作為檢驗(yàn)信號(hào);
[000引步驟S,構(gòu)造樸素貝葉斯網(wǎng)絡(luò)分類模型,并根據(jù)訓(xùn)練信號(hào)中的數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)學(xué)習(xí); 構(gòu)造樸素貝葉斯網(wǎng)絡(luò)分類模型的步驟為:
[0009] (1)、選取網(wǎng)絡(luò)節(jié)點(diǎn),確定變量集;選擇熱關(guān)鍵點(diǎn)和工況類別作為貝葉斯網(wǎng)絡(luò)節(jié)點(diǎn), 貝葉斯網(wǎng)絡(luò)節(jié)點(diǎn)的取值對(duì)應(yīng)變量集G=找1,X2,…,X",C},其中,Xi是第i處熱關(guān)鍵點(diǎn)的溫 度信號(hào)值,i= (1,2,…,n),n為熱關(guān)鍵點(diǎn)總數(shù);(X。X,,…,X。)表示集合G中一組溫度信號(hào) 的實(shí)際值;C表示工況類別變量,Ck表示C的值,k= (1,2,…,m),m為工況類別總數(shù);
[0010] (2)、確定網(wǎng)絡(luò)結(jié)構(gòu),根據(jù)變量之間存在的因果關(guān)系勾畫出從因變量到果變量之間 的連接;
[0011] (3)、確定局部概率分布;類Ck的后驗(yàn)概率可由W下公式計(jì)算得到:
[0012]
[001引公式(1)中,P(Ck|Xi,X2,…,X。)是類Ck的后驗(yàn)概率;P(Ck)是類Ck的先驗(yàn)概率;P(Xi, X2,…,xjck)是類Ck的似然度;P(x。X2,…,X。,Ck)是熱關(guān)鍵點(diǎn)節(jié)點(diǎn)和工況類別節(jié)點(diǎn)的 聯(lián)合概率;因?yàn)閜 (Ck I Xi,X,,…,X。)對(duì)各個(gè)工況類別都是常數(shù),故有:
[0014] P(CkIX。X2,…,X。)P(X。X2,…,X。,Ck)公式(2)
[0015] 根據(jù)鏈規(guī)則得到熱關(guān)鍵點(diǎn)節(jié)點(diǎn)和工況類別節(jié)點(diǎn)的聯(lián)合概率為:
[0016]
公式(3)
[0017] 公式(3)中,31 (Xi)為節(jié)點(diǎn)Xi的父節(jié)點(diǎn)集合;
[001引步驟四,構(gòu)造BAN的網(wǎng)絡(luò)結(jié)構(gòu);
[0019] (1)、樸素貝葉斯網(wǎng)絡(luò)分類模型根據(jù)后驗(yàn)概率最大的準(zhǔn)則進(jìn)行分類,即將類Ck賦 值為max{p(Ck|xi,X2,…,X。)};兩個(gè)熱關(guān)鍵點(diǎn)節(jié)點(diǎn)間的互信息定義為;
[002引公式(4)和公式妨中,X郝Xj.表示第i處和第j處熱關(guān)鍵點(diǎn)的溫度信號(hào)值;p(Xi) 表示Xi的滴;P (Xi,yi)表示Xi,X斯聯(lián)合滴;
[0024] 似、判斷Xi,Xj廝代表的兩個(gè)節(jié)點(diǎn)是否條件獨(dú)立;設(shè)定闊值e,如果兩節(jié)點(diǎn)間的互 信息I化,Xj) <e,則Xi和XJ是邊緣獨(dú)立的姻果I(X。XjIC) <e,則X郝XJ是條件獨(dú) 立的;
[0025](3)、利用條件獨(dú)立性測(cè)試方法來確定BAN的網(wǎng)絡(luò)結(jié)構(gòu);
[0026] 步驟五,根據(jù)訓(xùn)練信號(hào)和BAN的網(wǎng)絡(luò)結(jié)構(gòu)通過概率統(tǒng)計(jì)的方法計(jì)算得出條件概率 表;
[0027] 步驟六,由條件概率表和檢驗(yàn)信號(hào)完成分類;
[002引步驟走,通過上述分類可W將每組溫度送入到不同工況類別下建立的誤差模型, 從而得到機(jī)床熱誤差的預(yù)測(cè)值,并控制機(jī)床進(jìn)行相應(yīng)的補(bǔ)償調(diào)節(jié)。
[0029] 進(jìn)一步的是,所述熱關(guān)鍵點(diǎn)包括左軸承、右軸承、螺母、電機(jī)、導(dǎo)軌W及工作臺(tái)與Y 方向摩擦連接處。
[0030] 進(jìn)一步的是,步驟二中,每一工況類別下的溫度采集時(shí),應(yīng)該等到機(jī)床部件完全冷 卻后再進(jìn)行采集。
[0031] 進(jìn)一步的是,步驟二中,通過傳感器每間隔兩分鐘進(jìn)行一次采集,每次采集50組 W上溫度信號(hào),共采集200組W上溫度信號(hào);在200組W上溫度信號(hào)中抽取50組W上作為 模型的訓(xùn)練信號(hào),將剩余溫度信號(hào)作為檢測(cè)信號(hào)。
[0032] 進(jìn)一步的是,步驟四中,確定BAN的網(wǎng)絡(luò)結(jié)構(gòu)的過程為:
[0033] ①、建立草圖;根據(jù)公式(4)計(jì)算出每個(gè)節(jié)點(diǎn)對(duì)間的互信息,在互信息大于e的 節(jié)點(diǎn)對(duì)間添加連接,畫出網(wǎng)絡(luò)結(jié)構(gòu)草圖;
[0034] ②、添加或去掉連接邊;根據(jù)公式(5)計(jì)算出每個(gè)節(jié)點(diǎn)對(duì)間的條件互信息,并對(duì)每 個(gè)節(jié)點(diǎn)對(duì)進(jìn)行條件獨(dú)立性分析,如果不滿足條件獨(dú)立則在節(jié)點(diǎn)對(duì)間增加連接邊,如果滿足 條件獨(dú)立則去掉節(jié)點(diǎn)對(duì)間的連接邊;
[0035] ⑨、最后,確定所有的連接邊的方向。
[0036] 本發(fā)明的有益效果是:
[0037] 1)、通過建立樸素貝葉斯網(wǎng)絡(luò)分類模型和BAN的網(wǎng)絡(luò)結(jié)構(gòu),實(shí)現(xiàn)了具體工況下的 機(jī)床熱誤差預(yù)測(cè),使得誤差預(yù)測(cè)更具精確性,確保了機(jī)床熱誤差補(bǔ)償?shù)木?,有效地提高機(jī) 床加工精度。
[003引2)、基于BAN的分類模型,相較于傳統(tǒng)的樸素貝葉斯和樹形貝葉斯網(wǎng)絡(luò)分類模型 具有更好的健壯性和可靠性。
[0039] 3)、BAN網(wǎng)絡(luò)分類是一種機(jī)器學(xué)習(xí)方法,易于實(shí)現(xiàn)實(shí)時(shí)預(yù)測(cè)。
【附圖說明】
[0040] 圖1是本發(fā)明的工作流程圖;
[0041] 圖2是構(gòu)造BAN的網(wǎng)絡(luò)結(jié)構(gòu)的工作流程圖;
【具體實(shí)施方式】
[0042] 下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說明。
[0043] 結(jié)合圖1所示,基于加強(qiáng)樸素貝葉斯網(wǎng)絡(luò)的機(jī)床熱誤差補(bǔ)償方法,包括下列步驟:
[0044] 步驟一,在機(jī)床上的熱關(guān)鍵點(diǎn)附近布置多個(gè)傳感器;通常在機(jī)床上設(shè)置多個(gè)溫度 傳感器和位置傳感器,布置在熱關(guān)鍵點(diǎn)附近的傳感器為溫度傳感器,傳感器的布置是本領(lǐng) 域技術(shù)人員所掌握的常規(guī)手段,溫度傳感器的布置位置一般W能夠準(zhǔn)確測(cè)量熱關(guān)鍵點(diǎn)的溫 度為準(zhǔn);多個(gè)為兩個(gè)W上;熱關(guān)鍵點(diǎn)主要包括左軸承、右軸承、電機(jī)、導(dǎo)軌、工作臺(tái)與Y方向 摩擦連接處、機(jī)床床身、主軸前軸承、主軸后軸承、X軸螺母、Y軸螺母和Z軸螺母等等;熱 關(guān)鍵點(diǎn)可根據(jù)機(jī)床的類別進(jìn)行具體選取,當(dāng)應(yīng)用到其他類別機(jī)床時(shí),可W增加其他熱關(guān)鍵 占. '?、、 ?
[0045] 步驟二,通過傳感器采集多組不同工況下的溫度信號(hào),并抽取其中四分之一W上 的溫度信號(hào)作為模型的訓(xùn)練信號(hào),將剩余溫度信號(hào)作為檢驗(yàn)信號(hào);其中,多組通常指50組 W上;工況類別主要包括主軸轉(zhuǎn)速、進(jìn)給速度、切削載荷、零件形狀等;每一工況類別下的 溫度采集時(shí),應(yīng)該等到機(jī)床部件完全冷卻后再進(jìn)行采集;通常,通過傳感器每間隔兩分鐘進(jìn) 行一次采集,每次采集50組W上溫度信號(hào),共采集200組W上溫度信號(hào);在200組W上溫度 信號(hào)中抽取50組W上作為模型的訓(xùn)練信號(hào),將剩余溫度信號(hào)作為檢測(cè)信號(hào);
[0046] 步驟S,構(gòu)造樸素貝葉斯網(wǎng)絡(luò)分類模型,并根據(jù)訓(xùn)練信號(hào)中的數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)學(xué)習(xí); 構(gòu)造樸素貝葉斯網(wǎng)絡(luò)分類模型的步驟為:
[0047] (1)、選取網(wǎng)絡(luò)節(jié)點(diǎn),確定變量集;選擇熱關(guān)鍵點(diǎn)和工況類別作為貝葉斯網(wǎng)絡(luò)節(jié)點(diǎn), 貝葉斯網(wǎng)絡(luò)節(jié)點(diǎn)的取值對(duì)應(yīng)變量集G=