肖 曉,張 聘,魏亞飛,汪 建,連成哲,葉文華
(1.航空工業(yè)濟南特種結(jié)構(gòu)研究所,濟南 250023;2.南京航空航天大學(xué)機電學(xué)院,南京 210016)
誤差補償技術(shù)可以有效且經(jīng)濟地提高數(shù)控機床的加工精度[1]。數(shù)控機床的誤差補償通??煞譃橐韵虏襟E[2]:誤差源的分析和檢測、誤差數(shù)學(xué)模型的建立、誤差元素的辨識和建模、誤差計算與補償。其中,誤差補償是通過刀具或工件在空間誤差的逆方向產(chǎn)生一定的位移實現(xiàn),是誤差補償技術(shù)的最終環(huán)節(jié)。
誤差實時補償方法主要分為反饋中斷法和原點平移法[3]。反饋中斷法的實現(xiàn)是將誤差的相位信號插入伺服系統(tǒng)的反饋環(huán)中,但插入相位信號比較復(fù)雜,所以該方法使用較少。原點平移法將誤差補償值發(fā)送至CNC 控制器,在加工過程中實時地將控制系統(tǒng)的參考原點向誤差反向平移,因其不影響坐標(biāo)值和加工程序的優(yōu)點,獲得了大量使用。如吳昊[4]針對雙主軸立式車床AC–300,以外接計算機為處理器搭建軟硬件平臺,通過I/O 口將誤差補償值發(fā)送至數(shù)控系統(tǒng)CNC 控制器,實現(xiàn)切削力誤差的實時補償;姜輝[5]針對FANUC 0i 數(shù)控系統(tǒng),自行研制的基于單片機的誤差補償器,與CNC 系統(tǒng)進行實時數(shù)據(jù)交互,基于外部坐標(biāo)原點偏移功能實現(xiàn)機床幾何誤差與熱誤差的實時補償;胡勝海等[6]針對數(shù)控火焰切割機提出一種在線修正加工誤差的實時補償方法,根據(jù)加工誤差綜合預(yù)測模型,建立動態(tài)補償策略,在原有加工過程中較小干擾的前提下進行補償運動。
雖然誤差實時補償技術(shù)受到越來越多學(xué)者的重視,對各類誤差研究有了很大的進步,但依然存在沒有充分利用現(xiàn)代數(shù)控系統(tǒng)本身的功能、需要開發(fā)專用補償器、開發(fā)難度大、通用性差等問題。
本文針對SIEMENS 840D 數(shù)控系統(tǒng),在深入研究數(shù)控系統(tǒng)本身具有的誤差補償方法的基礎(chǔ)上,利用溫度補償功能,結(jié)合BP 神經(jīng)網(wǎng)絡(luò),提出了一種能對力誤差、熱誤差等誤差進行綜合補償?shù)膶崟r補償方法,僅需在PLC 中加入少量程序,可在不影響機床正常運行的前提下實現(xiàn)誤差補償,并利用自行開發(fā)的誤差補償平臺驗證該方法的有效性。
數(shù)控機床誤差實時補償一般采用基于半閉環(huán)反饋的補償方式,其原理如圖1所示。在加工過程中,通過對一些能表征機床當(dāng)前加工狀態(tài)、環(huán)境變化的參量如溫度、切削力、加工位置、加工參數(shù)等進行監(jiān)測,建立機床加工誤差與這些變量之間的關(guān)系,按誤差模型實時計算當(dāng)前條件下的誤差值,并以一定手段進行誤差補償。
誤差實時補償方法中,反饋中斷法是將相位信號插入伺服回路,這種方法實現(xiàn)起來比較復(fù)雜,且容易對機床造成不可預(yù)料的影響。原點偏移法不需要對機床進行復(fù)雜的操作,只需要在PLC 中添加少量程序便可實現(xiàn),目前西門子、發(fā)那科等主流數(shù)控系統(tǒng)都提供了用原點偏移法進行熱誤差補償?shù)墓δ芙涌?。本文對西門子840D 數(shù)控系統(tǒng)進行了綜合誤差實時補償技術(shù)研究。
SIEMENS 的某些高端數(shù)控系統(tǒng)(如840D、840D sl 等)針對由環(huán)境溫度變化、切削熱傳導(dǎo)、運動部件生熱等因素引起的機床部件熱變形誤差提供了溫度補償功能[7]。對于每一個軸來說,在一定溫度下,熱誤差與位置的曲線可表示如下:
式中,Pi是i軸的當(dāng)前位置,其中i表示坐標(biāo)軸,如X、Y、Z軸;Po是i軸上熱誤差測量的參考點;ko(T)是參考點在溫度T下的誤差值;tanβ是溫度補償系數(shù)。
該功能通過測得的當(dāng)前溫度值按照溫度誤差曲線實時計算誤差值并在插補中進行補償。但由于上述溫度誤差值的計算方法過于簡單,熱誤差的計算值與實際值差異較大,難以實現(xiàn)高精度的熱誤差補償。
功能的綜合誤差實時補償方法
對式(1)表示的熱誤差計算式,SIEMENS 數(shù)控系統(tǒng)還提供了進一步簡化計算的方法:
此時,數(shù)控系統(tǒng)中生效的補償值等于變量ko(T)的值。
因此,如果將外部誤差模型計算得到的誤差補償值實時寫入該變量,即可實現(xiàn)機床誤差的實時補償。不僅可實現(xiàn)熱誤差的補償,還可以實現(xiàn)包括力誤差和其他誤差在內(nèi)的機床誤差綜合補償?;赟IEMENS 數(shù)控系統(tǒng)溫度補償功能的綜合誤差實時補償原理如圖2所示。
目前,國內(nèi)外已有大量關(guān)于機床誤差模型的研究[8],包括三角函數(shù)模型、矢量模型、二次模型、變分模型、基于運動鏈的模型、多項式回歸模型、神經(jīng)網(wǎng)絡(luò)模型等。但上述這些模型大部分只適用于幾何誤差、熱誤差等單項誤差建模。機床誤差主要包括幾何誤差、熱誤差、切削力誤差。由于機床加工過程中情況復(fù)雜,各類誤差相互耦合,要建立準(zhǔn)確的機床單項誤差模型是十分困難的??紤]到式(2)的誤差補償值是一個綜合誤差補償值,因此,本文通過建立綜合誤差模型來計算綜合誤差補償值。
圖1 誤差實時補償原理Fig.1 Principle of error real-time compensation
圖2 基于溫度補償功能的實時補償原理Fig.2 Real-time compensation principle based on temperature compensation
由于神經(jīng)網(wǎng)絡(luò)具有很強的非線性映射能力和自適應(yīng)能力[9],可以通過學(xué)習(xí)提取樣本中的規(guī)律建立輸入與輸出之間的關(guān)系,很容易建立機床加工參數(shù)與誤差之間的模型。由于單隱層BP 神經(jīng)網(wǎng)絡(luò)幾乎可以用來擬合所有的非線性函數(shù)關(guān)系[10],因此本文采用單隱層BP 神經(jīng)網(wǎng)絡(luò)建立機床綜合誤差模型。其神經(jīng)網(wǎng)絡(luò)模型的結(jié)構(gòu)如圖3所示。
基于BP 神經(jīng)網(wǎng)絡(luò)建立機床綜合誤差模型,首先需要確定神經(jīng)網(wǎng)絡(luò)的輸入?yún)?shù),要求參數(shù)可以直接或間接反映出當(dāng)前加工位置的實際誤差。參考國內(nèi)外對于各類機床誤差模型的研究結(jié)果[11–13],本文確定幾何誤差相關(guān)的輸入?yún)?shù)為機床各軸的位置坐標(biāo),熱誤差相關(guān)的輸入?yún)?shù)主要為機床關(guān)鍵溫度測點,切削力誤差相關(guān)的輸入?yún)?shù)為主軸負載、主軸轉(zhuǎn)速、切削進給量、切削深度。機床綜合誤差模型所有輸入相關(guān)參數(shù)見圖4,神經(jīng)網(wǎng)絡(luò)模型的輸出為加工過程中機床各個進給軸的綜合誤差補償值。補償值不僅包含進給軸的絲杠熱膨脹、機床導(dǎo)軌滑塊熱變形等熱誤差和機床導(dǎo)軌移動中產(chǎn)生的幾何誤差,還包括因切削力引起的進給機構(gòu)變形而產(chǎn)生的加工誤差。
ARM(Advanced RISC Machines)是目前在工控領(lǐng)域得到廣泛應(yīng)用的微處理器,基于ARM 的嵌入式系統(tǒng)不僅具有較強的數(shù)據(jù)處理能力,同時也可以搭載不同的嵌入式操作系統(tǒng),并能提供友好的人機交互。因此本文采用ARM 嵌入式系統(tǒng)作為平臺,設(shè)計開發(fā)了機床誤差實時補償系統(tǒng),在采集機床參數(shù)時建立了ARM 和數(shù)控系統(tǒng)PLC 的Modbus 通信,通過這種方式可以方便地將補償值發(fā)送給數(shù)控系統(tǒng)PLC。綜合誤差實時補償系統(tǒng)結(jié)構(gòu)如圖5所示。
采用符合機床溫升范圍的溫度傳感器對機床加工過程中關(guān)鍵點溫度變化進行實時監(jiān)測[13]。機床加工參數(shù)如主軸轉(zhuǎn)速、切削深度、主軸負載、各軸位置坐標(biāo)等可以通過ARM 與PLC 建立的Modbus 通信進行讀取。
軟件開發(fā)在Qt Creator 的集成開發(fā)環(huán)境中完成,主要實現(xiàn)機床加工過程中溫度變化監(jiān)測、機床加工參數(shù)監(jiān)測、基于神經(jīng)網(wǎng)絡(luò)的綜合誤差模型計算、補償值發(fā)送等功能。程序流程圖如圖6所示。
為了計算補償周期,計算了補償系統(tǒng)在上述配置下誤差模型的計算時間為18.41ms。同時,綜合考慮采集硬件和補償值寫入PLC 后機床執(zhí)行零點偏置所需的延時時間在8ms 左右,所以最終確定補償周期為30ms。
圖3 機床綜合誤差的神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)Fig.3 Neural network model structure of comprehensive machine error
圖4 機床綜合誤差模型輸入?yún)?shù)Fig.4 Input parameters of comprehensive machine error model
以圖7所示的基于SIEMENS 840D 數(shù)控系統(tǒng)加工中心為試驗平臺,以圖8所示的鋁合金6061 試件為切削加工對象進行綜合誤差補償試驗。驗證試驗分兩步進行,第1 步為神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練與驗證,第2 步為實時誤差補償試驗。試件上設(shè)計了左右對稱的兩組壁厚為2mm 的薄壁曲面,其中第1 組左曲面用于神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練,第1 組右曲面用于神經(jīng)網(wǎng)絡(luò)模型驗證;第2 組左曲面加工時進行實時誤差補償,第2 組右曲面加工時不進行誤差補償,用于對比。左右兩組曲面的切削條件相同,分別為切深1mm、進給量200mm/min、轉(zhuǎn)速3000r/min。
圖5 綜合誤差實時補償系統(tǒng)總體結(jié)構(gòu)Fig.5 Overall structure of comprehensive error real-time compensation system
圖6 誤差實時補償系統(tǒng)程序開發(fā)流程Fig.6 Program development flow of real-time error compensation system
圖7 SIEMENS 840D數(shù)控加工中心Fig.7 SIEMENS 840D CNC machine center
圖8 試件模型與試件Fig.8 Test part and its model
首先進行神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練與驗證試驗。模型中幾何誤差與力誤差有關(guān)的輸入?yún)?shù)與圖4相同。熱誤差有關(guān)的輸入?yún)?shù)為溫度關(guān)鍵測點,溫度關(guān)鍵測點可按一般熱誤差建模中的方法來確定。本文基于課題組以前對該機床溫度場研究,采用模糊聚類分析與灰色關(guān)聯(lián)度相結(jié)合的方法來確定機床溫度關(guān)鍵測點,即優(yōu)化選取對熱誤差影響較大的溫度變量,然后對這些溫度變量進行分類,最后在各類測點中選取具有代表性的測點作為熱誤差建模所用的溫度變量。最終確定每個移動軸進給機構(gòu)的4 個關(guān)鍵溫度測點,分別位于螺母、軸承座、電機和導(dǎo)軌上。機床溫度傳感器布置示意圖如圖9所示。模型輸出為曲面測得的X、Y、Z方向的誤差值。按上述切削條件對試件第1 組左右2 個曲面分別進行加工,并用在線測量系統(tǒng)對2 個曲面各取100 個測點進行測量。100 個測點分成X方向均布的10 組,每組又分成Z方向均布的10 個測點,見圖10。最后用左曲面的數(shù)據(jù)來訓(xùn)練BP 神經(jīng)網(wǎng)絡(luò),右曲面的數(shù)據(jù)用于神經(jīng)網(wǎng)絡(luò)模型驗證。試驗結(jié)果證明模型是有效的。
然后基于上面建立的神經(jīng)網(wǎng)絡(luò)模型進行綜合誤差實時補償試驗。按上述切削條件對試件第2 組左右2 個曲面分別進行加工,并在加工左曲面時進行綜合誤差實時補償。加工后同樣用在線測量系統(tǒng)對2 個曲面各取100 個測點進行測量,2 個曲面的Y向誤差如圖11所示。
通過測量結(jié)果可見,右曲面Y向峰值最大誤差為175.13μm,補償誤差后左曲面Y向峰值最大誤差為71.66μm,最大誤差減小了59.1%,驗證了本文所提出的誤差實時補償方法的有效性。
鑒于零件加工誤差涉及機床、刀具、工件等眾多因素,本文方法中考慮的因素相對比較簡單,尚不能滿足實際應(yīng)用需要。
本文介紹了數(shù)控機床誤差實時補償一般方法。根據(jù)SIEMENS 數(shù)控系統(tǒng)提供的溫度補償功能,結(jié)合基于BP 神經(jīng)網(wǎng)絡(luò)的綜合誤差模型,提出了一種機床綜合誤差實時補償方法,并以ARM 嵌入式為平臺開發(fā)了綜合誤差實時補償系統(tǒng)。
圖9 溫度傳感器布置示意圖Fig.9 Schematic diagram of temperature sensor arrangement
圖10 曲面測點位置Fig.10 Surface measuring point
圖11 第2組曲面左、右兩邊的Y 向誤差值對比Fig.11 Comparison of Y-direction error values of left and right sides of two sets of surfaces
以西門子840D 數(shù)控系統(tǒng)機床為試驗對象,對鋁合金6061 試件進行切削加工,并在加工過程中利用開發(fā)的綜合誤差實時補償系統(tǒng)進行機床綜合誤差實時補償,與誤差未補償時相比,試件最大誤差減小59.1%,驗證了本文所提出的補償方法的有效性。