李志明 胡海龍 吳榮華 王培德 陳喜東
(①燕山大學(xué)信息科學(xué)與工程學(xué)院(軟件學(xué)院),河北 秦皇島066004;②河北省計算機虛擬技術(shù)與系統(tǒng)集成重點實驗室,河北 秦皇島066004;③北京機床所精密機電有限公司,北京100102)
定位精度是評價數(shù)控機床優(yōu)劣的一個重要性能指標(biāo),直接影響產(chǎn)品的加工精度。然而,數(shù)控機床本身制造或者裝配缺陷、機床溫度變化而引起熱變形、機床切削力引起力變形、傳動絲杠或?qū)к壍馁|(zhì)量、直線電動機[1]等因素都會影響到定位精度,因此必須要對數(shù)控機床的定位精度進行補償,以提高產(chǎn)品的加工精度。
現(xiàn)代數(shù)控機床定位精度誤差補償包括間隙誤差補償和螺距誤差補償。提高數(shù)控機床定位精度主要有兩種方式:一是從產(chǎn)生誤差的根源采取措施,比如:提高加工工藝水平和安裝方法上提高精度,但該方法經(jīng)濟代價高,局限性大;另一種是采取誤差補償方法,即人為產(chǎn)生一種新的誤差去抵消當(dāng)前成為問題的原始誤差,是一種提高機床定位精度既經(jīng)濟又有效的手段[2]。對于后者,主要有3 種方法,即根據(jù)所測誤差對NC 程序進行調(diào)整、借助于運動控制器補償功能[3-4]、智能方法[5]。定位精度補償有可能使數(shù)控機床加工出超過機床本身精度的工件,從而實現(xiàn)“精度進化”[6]。
本文針對自主研發(fā)的某型號精密激光切割數(shù)控機床的定位精度問題,詳細(xì)介紹了借助UMAC 的定位精度補償技術(shù)對該機床各軸實施補償?shù)脑?、步驟、數(shù)據(jù)處理方法、數(shù)據(jù)緩沖區(qū)的創(chuàng)建原則等,并對該機床實施了定位精度補償,分析了補償效果。
目前,以“IPC +運動控制器”形式架構(gòu)的數(shù)控系統(tǒng)是開放式數(shù)控系統(tǒng)的主流架構(gòu)形式,其中“IPC +UMAC 運動控制器”是此類數(shù)控平臺的典型應(yīng)用[7]。UMAC 為用戶提供了螺距補償、間隙補償、轉(zhuǎn)矩補償?shù)榷喾N補償功能[8],為便捷地對數(shù)控機床的定位精度實施補償?shù)於嘶A(chǔ)。
UMAC 運動控制器的定位精度誤差補償原理是人為地制造一個與原誤差大小相等、方向相反的誤差去修正原有誤差。
在實施補償前,首先應(yīng)通過誤差測量及相關(guān)數(shù)據(jù)處理,建立并下載螺距補償表和間隙補償表。螺距補償功能,僅在機床軸正向運動時生效。機床軸正向運動時,UMAC 會根據(jù)當(dāng)前實際位置距離零位的距離,從螺距補償表中計算匹配的校正值,然后附加到相應(yīng)電動機上。間隙補償功能,可實現(xiàn)機床軸反向運動時的補償;螺距補償與間隙補償功能的配合,可以產(chǎn)生雙向螺距補償?shù)男Ч?。螺距補償表和間隙補償表中,列出的僅是各個補償點的校正值;當(dāng)機床軸運動位置處于兩個補償點之間時,UMAC 則在兩個補償點之間以線性插值的方式求得當(dāng)前位置的修正值,并將該值附加到相應(yīng)電動機上[9]。
利用UMAC 進行定位精度補償?shù)牟襟E如下:
(1)根據(jù)機床軸的有效長度確定補償間隔;補償間隔越小,補償精度越高。此外,補償間隔應(yīng)能夠整除機床軸有效長度,這樣才能使補償點均勻地分布于驅(qū)動軸上[1]。
(2)確定補償點后,首先通過相關(guān)指令將機床軸移植補償點位置,然后再利用激光干涉儀測量機床軸的實際位置(需含正、負(fù)向行程),并將測量數(shù)據(jù)記錄在相應(yīng)表格中,最后按一定的算法計算出各補償點的螺距補償值、間隙補償值(見2.2)。
(3)按照UMAC 的語法要求,編制創(chuàng)建螺距補償表、間隙補償表的程序并下載。在下載補償表時,應(yīng)根據(jù)UMAC 用戶緩沖區(qū)的使用規(guī)則依次創(chuàng)建(見2.3)。
(4)將I51 變量設(shè)置為1,使補償表生效。
本文所述定位精度補償方法,以項目組研發(fā)的某型號精密激光切割數(shù)控機床為應(yīng)用對象。該機床的X、Y軸的有效行程為0~480 mm,光柵尺的分辨率為2000 cts/mm,位精度要求為±2 μm;Z軸有效行程為0~160 mm,編碼器分辨率為13107 cts/mm,定位精度要求為±4 μm。
X、Y、Z軸驅(qū)動機構(gòu)的相關(guān)部件詳見表1。
表1 某型號數(shù)控機床軸相關(guān)部件
由表1 可知,X、Y軸采用直線電動機作為驅(qū)動機構(gòu),Z軸采用伺服電動機及絲杠作為驅(qū)動機構(gòu)。依據(jù)該機床的定位精度要求,對X、Y軸有效行程實施48點補償,對Z軸有效行程實施16 點補償。下文僅以Y軸、Z軸為例進行說明。
采用雷尼紹XL-80 激光干涉儀測量各補償軸正向、負(fù)向行程中各點的定位精度誤差,將測量誤差記錄在如表2 所示的樣表中,并計算出螺距補償值、間隙補償值。表2 中數(shù)據(jù)為Y軸的部分補償點相關(guān)數(shù)據(jù)。
表2 Y 軸誤差數(shù)據(jù)記錄及處理
表2 中,正行程位置PP 為電動機從零點向正方向運動經(jīng)過該點時所測得的實際位置;負(fù)行程位置PN為電動機從正方向向零點運動經(jīng)過該點時所測得的實際位置;負(fù)行程零點誤差值,即為此軸的反向間隙值RBV;螺距補償值LCV的計算方法如式(1)所示;間隙補償值BCV的計算方法如式(2)所示。螺距補償值LCV列、間隙補償值BCV列即為利用UMAC 進行機床的定位精度補償所需的關(guān)鍵數(shù)據(jù)。
UMAC 為用戶提供了一塊專用的內(nèi)存空間,用以存儲用戶的運動程序、PLC 程序、各類數(shù)據(jù)的緩沖區(qū)等;其中,對于螺距補償表、矩陣補償表、間隙補償表等的創(chuàng)建與刪除過程需要遵循一定的先后順序,否則命令會失效。例如,若要重新定義間隙補償表,則需先將數(shù)據(jù)采集緩沖區(qū)、前瞻緩沖區(qū)、刀具補償緩沖區(qū)、旋轉(zhuǎn)緩沖區(qū)、轉(zhuǎn)換矩陣緩沖區(qū)、間隙補償表依次刪除,然后再定義間隙補償表。在間隙補償表、轉(zhuǎn)矩補償表、螺距補償表創(chuàng)建時,需按照電動機編號由高至低的順序依次創(chuàng)建。各類緩沖區(qū)之間創(chuàng)建與刪除的規(guī)則如圖1所示。
由圖1 可見,若由上位機軟件系統(tǒng)對UMAC 的數(shù)據(jù)緩沖區(qū)進行操作時,需要將必要的緩沖區(qū)或補償表的數(shù)據(jù)存儲于上位機中,能夠按照UMAC 的語法及圖1 所示規(guī)則自動生成刪除或創(chuàng)建各補償表的程序。創(chuàng)建、刪除螺距補償表、間隙補償表的語法可參閱文獻[1,9 -11]。
本項目組為該精密激光切割數(shù)控機床開發(fā)了一套專用數(shù)控軟件;該軟件采用基于. NET 的WPF 技術(shù)進行開發(fā),打破了采用VC + +技術(shù)開發(fā)數(shù)控軟件的傳統(tǒng),所開發(fā)的系統(tǒng)將具有更好的交互性、可操作性、美觀性,給用戶一種前所未有的全新感覺。依據(jù)上述原理,在定位精度補償功能模塊部分,實現(xiàn)了用戶緩沖區(qū)各部分?jǐn)?shù)據(jù)的記錄、UMAC 程序自動生成及下載等功能;定位精度補償部分的功能界面如圖2 所示。
為了對比補償效果,利用激光干涉儀又測量了實施定位精度補償后各補償點的正行程位置PP和負(fù)行程位置PN。利用實施補償前、后的P、PP、PN數(shù)據(jù),依據(jù)式(3)、(4)分別計算正向行程誤差PTE、負(fù)向行程誤差NTE。
利用補償前的PTE、NTE數(shù)據(jù),繪制的Y軸、Z軸定位精度誤差曲線分別如圖3、圖4 所示;利用補償后的PTE、NTE數(shù)據(jù),繪制的Y軸、Z軸定位精度誤差曲線分別如圖5、圖6 所示。
從圖3、圖4 中可以發(fā)現(xiàn),在對該數(shù)據(jù)數(shù)控機床實施補償之前,各補償點的定位精度誤差都比較大,其中Y軸最大定位精度誤差約為38 μm,Z軸最大定位精度誤差約為23 μm;由圖5、圖6 可以看出,在對該數(shù)據(jù)數(shù)控機床實施補償之后,各補償點的定位精度誤差約縮小了一個數(shù)量級,其中Y軸最大定位精度誤差縮小至1.1 μm,Z軸最大定位精度誤差縮小至2.7 μm,完全符合該機床各軸的定位精度要求。
結(jié)合某型號精密激光切割數(shù)控機床的定位精度補償問題,對UMAC 的定位精度補償技術(shù)進行了深入研究,并在此基礎(chǔ)上開發(fā)了上位機數(shù)控軟件的定位精度補償功能。以該機床的Y軸、Z軸為例,詳細(xì)說明了定位精度補償?shù)膶嵤┻^程,對比了定位精度補償效果。通過定位精度補償,將Y軸的最大定位精度誤差由38 μm減小到了1.1 μm,Z軸的最大定位誤差由23 μm 減少到了2.7 μm。本文對基于UMAC 的開放式數(shù)控機床的定位精度誤差補償問題具有一定的參考價值。
[1]吳玉厚,宋德儒. PMAC 下直線電機定位精度分析與誤差補償技術(shù)[J]. 沈陽建筑大學(xué)學(xué)報,2005,21(5):586 -589.
[2]陶曉杰,王治森. 機床誤差的補償方法探討[J]. 制造業(yè)自動化,2005,27(5):18 -24.
[3]Zhu Weidong,Wang Zhigang,Yamazaki K. Machine tool component error extraction and error compensation by incorporating statistical analysis[J]. International Journal of Machine Tools & Manufacture,2010,50:798 -806.
[4]王維,楊建國,姚曉棟,等. 數(shù)控機床幾何誤差與熱誤差綜合建模及其實時補償[J].機械工程學(xué)報,2012,48(7):165 -170,179.
[5]王福吉,賈振元,陽江源,等. 基于動態(tài)模糊神經(jīng)網(wǎng)絡(luò)的機床時變定位誤差補償[J]. 機械工程學(xué)報,2011,47(13):175 -179.
[6]楊建國,姚曉棟. 數(shù)控機床誤差補償技術(shù)現(xiàn)狀與展望[J]. 世界制造技術(shù)與裝備市場,2012(3):64 -95.
[7]李志明,胡海龍,吳榮華,等. 基于UMAC 的數(shù)控系統(tǒng)虛擬平臺及其應(yīng)用[J].制造技術(shù)與機床,2013(7):140 -143.
[8]Delta Tau Data Systems,Inc. Turbo PMAC user manual[Z]. 2008:183 -194.
[9]張麗秀,周亞靜,劉曉輝. 基于UMAC 的直線電機定位誤差補償實驗分析[J]. 沈陽建筑大學(xué)學(xué)報:自然科學(xué)版,2011,27(4):766-770.
[10]劉定強,黃玉美,吳知峰,等. 宏微進給系統(tǒng)位置精度的誤差補償[J]. 機械科學(xué)與技術(shù),2011,30(4):645 -647.
[11]Delta Tau Data Systems,Inc. Turbo PMAC/PMAC2 software reference manual[Z]. 2010:279 -293.