(①沈陽理工大學(xué)遼寧省高速切削工程技術(shù)研究中心,遼寧 沈陽 110159;②沈陽建筑大學(xué)交通與機(jī)械工程學(xué)院,遼寧 沈陽 110168)
TX1600G鏜銑加工中心是一種將鏜床和銑床兩種功能結(jié)合于一體的復(fù)合式數(shù)控機(jī)床,其鏜軸采用了滑枕式結(jié)構(gòu),鏜床主軸直徑240 mm,滑枕行程1 200 mm。在臥軸鏜床上加工工件時(shí),由于滑枕、鏜軸及各種附件的重量,加上鏜削力的影響,使滑枕在伸出方向由于剛性不足產(chǎn)生撓曲變形,影響機(jī)床的加工精度,引起了機(jī)床的幾何誤差。
目前對(duì)于臥軸滑枕產(chǎn)生的撓度誤差,采取的方法有平衡重錘法[1]、拉桿補(bǔ)償法[2-3]、電液比例控制法[4]等。平衡重錘法是由機(jī)械平衡錘和機(jī)電補(bǔ)償裝置補(bǔ)償滑枕撓度,主要優(yōu)點(diǎn)是結(jié)構(gòu)簡單,使用方便,缺點(diǎn)是增加了機(jī)床的整機(jī)重量,對(duì)機(jī)床其他軸的進(jìn)給運(yùn)動(dòng)產(chǎn)生一定影響,對(duì)機(jī)床的剛度要求高。拉桿補(bǔ)償法在滑枕上半側(cè)安裝一組拉桿,由液壓油缸提供拉力來補(bǔ)償滑枕的撓度變形,能有效地補(bǔ)償撓度誤差,但拉桿的偏心作用將會(huì)導(dǎo)致滑枕在軸向產(chǎn)生一定量的附加變形,而且拉桿拉力的確定及精確加載問題都難確定。電液比例控制法應(yīng)用電液比例閥和壓力傳感器來控制活塞桿的壓力和位移,取得了一定的補(bǔ)償效果。拉桿補(bǔ)償法和電液比例控制法都需要液壓缸,都無法避免液壓系統(tǒng)存在的缺點(diǎn),如液壓件漏油、補(bǔ)償滯后、油液升溫等。
本文是針對(duì)滑枕的撓度變形,利用基于PMAC的開放性數(shù)控系統(tǒng)進(jìn)行撓度補(bǔ)償,該補(bǔ)償方法不需要機(jī)械和控制輔助結(jié)構(gòu),補(bǔ)償精度不受輔助結(jié)構(gòu)的影響,簡單易行,且經(jīng)濟(jì)性好。
TX1600G鏜銑加工中心是一種復(fù)合式的數(shù)控機(jī)床,主要由旋轉(zhuǎn)工作臺(tái)、刀庫、銑主軸箱、橫梁、鏜滑枕、鏜滑臺(tái)、立柱、床身等部件組成,如圖1所示。加工中心的加工對(duì)象是鋁合金材料的復(fù)雜箱體類。其鏜床中X軸行程1 750 mm,Y軸行程1 000 mm,Z軸行程1 200 mm,鏜床主軸采用方形滑枕式結(jié)構(gòu),鏜削加工中,滑臺(tái)帶動(dòng)滑枕在Y軸上運(yùn)動(dòng),確定Y軸位置,滑枕帶動(dòng)主軸和刀具在Z方向進(jìn)行鏜削。當(dāng)在Z方向加工深孔時(shí),由于滑枕伸出的長度比較大,以及滑枕、主軸的重力等的影響,滑枕在伸出方向形成了懸臂梁結(jié)構(gòu),產(chǎn)生撓度誤差。這種撓度誤差嚴(yán)重影響到機(jī)床的定位精度和加工精度,故對(duì)產(chǎn)生的撓度誤差進(jìn)行誤差補(bǔ)償對(duì)提高機(jī)床的定位精度和加工精度十分必要。
TX1600G加工中心的數(shù)控系統(tǒng)采用“NC嵌入PC”式結(jié)構(gòu),以工控機(jī)為上位機(jī),以PMAC為下位機(jī),實(shí)現(xiàn)通訊和控制功能。PMAC是美國Delta Tau公司開發(fā)的集軸運(yùn)動(dòng)控制、PLC控制和數(shù)據(jù)采集于一體的多軸運(yùn)動(dòng)控制器,它有多種型號(hào),本加工中心使用的是Turbo PMAC-PCI型卡。Turbo PMAC的處理器采用Motorola DSP56303系列數(shù)字信號(hào)處理器(80 MHz),可最多控制32軸同時(shí)運(yùn)動(dòng),而且功能很強(qiáng)大,有刀具半徑補(bǔ)償功能、螺距補(bǔ)償(一維位置補(bǔ)償)、二維位置補(bǔ)償、力矩補(bǔ)償?shù)裙δ躘5]。這些功能為開發(fā)數(shù)控系統(tǒng)提供了便利的條件,開發(fā)者需要設(shè)置相關(guān)的Ⅰ變量,把編寫的程序或補(bǔ)償表下載到PMAC中,在運(yùn)行數(shù)控程序時(shí),PMAC 會(huì)直接調(diào)用這些功能,減少了開發(fā)者的工作量。同時(shí)為了滿足不同使用用戶的操作需求,PMAC允許用戶使用如VB、C++、C#、C等多種編程語言開發(fā)數(shù)控系統(tǒng)。
滑枕端面尺寸264 mm×245 mm,總長2 540 mm,Z軸方向行程1 200 mm。材料使用灰鑄鐵HT300,彈性模量E=150 GPa,密度ρ=7 300 kg/m3,泊松比μ=0.25。
實(shí)體建模時(shí),為提高有限元模型準(zhǔn)確性,將螺紋孔、小凸臺(tái)和倒角等結(jié)構(gòu)忽略不計(jì)。對(duì)輔助系統(tǒng)等非主要的零部件(如光柵尺、拖鏈等)不進(jìn)行有限元建模,將其視為遠(yuǎn)程質(zhì)量施加在滑枕有限元模型上?;韺?shí)體模型如圖2所示?;怼⒅鬏S電動(dòng)機(jī)以及導(dǎo)軌的重力,則通過重力場施加在滑枕有限元模型上;加工過程中的計(jì)算鏜削力,通過遠(yuǎn)程載荷將其施加在主軸的內(nèi)孔面與端面。導(dǎo)軌與支撐部件的接觸面應(yīng)用全固定,與驅(qū)動(dòng)絲杠相接觸的螺母內(nèi)表面應(yīng)用全固定約束。
在SolidWorks simulation中以機(jī)床零點(diǎn)為起點(diǎn),每隔100 mm取點(diǎn),進(jìn)行仿真。通過仿真數(shù)據(jù)得出,滑枕在Z向和X向的變形量很小,在Y方向的變形量大,即撓度誤差(Y方向的變形量)是影響鏜軸精度的主要因素。在Z方向行程1 200 mm處撓度變形如圖3所示,滑枕各行程在Y向變形量如表1所示。由表1可得,隨著滑枕行程的增加,撓度誤差呈非線性增大。
表1 滑枕各行程在Y向的變形量
在鏜削加工中,由于滑枕的撓度變形使得主軸在Z軸方向產(chǎn)生同樣大小的撓度誤差。為了補(bǔ)償Z軸(基準(zhǔn)軸)方向上由于鏜軸部件重量而產(chǎn)生的撓度,Y軸(補(bǔ)償軸)的絕對(duì)位置必須被修正,因此撓度補(bǔ)償實(shí)際上是一種“軸間補(bǔ)償”方式[5]。
補(bǔ)償?shù)脑頌椋喝藶榈刂圃煲粋€(gè)與原誤差大小相等、方向相反的誤差去補(bǔ)償修正補(bǔ)償軸上原有誤差[6]。即
撓度補(bǔ)償是一種軸間補(bǔ)償,可以借助于PMAC提供的一維位置補(bǔ)償功能來實(shí)現(xiàn)。PMAC的補(bǔ)償功能是通過對(duì)補(bǔ)償軸建立一個(gè)補(bǔ)償表來實(shí)現(xiàn)的。每臺(tái)電動(dòng)機(jī)只能擁有一個(gè)屬于它的補(bǔ)償表,但是它可以作為多臺(tái)電動(dòng)機(jī)的源或目標(biāo)[7]。所以在建立新的補(bǔ)償表之前要把之前建立的表刪除。
(1)補(bǔ)償點(diǎn)數(shù)的確定。如果需要對(duì)源電動(dòng)機(jī)的n個(gè)點(diǎn)進(jìn)行補(bǔ)償,在建立補(bǔ)償表時(shí)要建立n+1個(gè),將最后一個(gè)補(bǔ)償點(diǎn)的修正值設(shè)為0,保證了補(bǔ)償后的原點(diǎn)和補(bǔ)償前的位置不變。
(2)補(bǔ)償長度的確定,補(bǔ)償長度是以源電動(dòng)機(jī)編碼計(jì)數(shù)表示的表的范圍。將補(bǔ)償長度轉(zhuǎn)化成脈沖數(shù),其數(shù)值必須為整數(shù),單位為cts。加工中心中電動(dòng)機(jī)編碼器發(fā)8 192個(gè)脈沖,電動(dòng)機(jī)旋轉(zhuǎn)1圈,假設(shè)螺距為5 mm,降速齒輪比為1。從而可計(jì)算出每毫米對(duì)應(yīng)的脈沖數(shù)為1 638。
(3)補(bǔ)償值的設(shè)定,是將誤差值轉(zhuǎn)化成目標(biāo)電動(dòng)機(jī)計(jì)數(shù)單位的1/16,單位是1/16脈沖數(shù)(即1/16 cts)。轉(zhuǎn)換后的補(bǔ)償值必須為整數(shù),作為補(bǔ)償表的入口值。如果補(bǔ)償值為負(fù),補(bǔ)償軸將沿正方向移動(dòng);反之亦然。在鏜床中,主軸會(huì)產(chǎn)生向下的撓度誤差,所以補(bǔ)償軸應(yīng)該向上移動(dòng),誤差才能得到補(bǔ)償,所以補(bǔ)償值為負(fù)。補(bǔ)償值之間用空格或回車符隔開。
(4)誤差補(bǔ)償表只有在I51設(shè)置為1時(shí),補(bǔ)償表才被激活,I51為0時(shí),補(bǔ)償表在運(yùn)動(dòng)程序中不起作用[7]。
撓度補(bǔ)償是在伺服環(huán)(伺服周期)內(nèi)被執(zhí)行的,從而獲得最大的響應(yīng)速度[8],能夠?qū)崟r(shí)地進(jìn)行撓度補(bǔ)償。
補(bǔ)償?shù)倪^程:通過測量儀器或仿真得到的主軸撓度誤差,將誤差值作為補(bǔ)償表的補(bǔ)償值,建立補(bǔ)償表,并將補(bǔ)償表激活,把建立的補(bǔ)償表下載到PMAC。數(shù)控系統(tǒng)執(zhí)行運(yùn)動(dòng)程序時(shí),當(dāng)源電動(dòng)機(jī)有位置改變時(shí),PMAC會(huì)調(diào)用補(bǔ)償表,在補(bǔ)償表中尋找該位置入口值,當(dāng)源電動(dòng)機(jī)的位置在補(bǔ)償表的入口值時(shí),PMAC會(huì)將修正值作為額外的設(shè)定值送給目標(biāo)電動(dòng)機(jī),使目標(biāo)電動(dòng)機(jī)移動(dòng)一個(gè)補(bǔ)償量的位移;當(dāng)在補(bǔ)償表的兩個(gè)入口值之間,PMAC則會(huì)在兩個(gè)入口之間通過線性插補(bǔ)計(jì)算該位置的修正值;如果源電動(dòng)機(jī)的位置處于補(bǔ)償范圍之外,在計(jì)算校正值之前源電動(dòng)機(jī)位置會(huì)被“翻轉(zhuǎn)”到該范圍之內(nèi)[9]。
補(bǔ)償表的設(shè)定是在機(jī)床坐標(biāo)系下建立的,所以在建立補(bǔ)償表之前要確定加工中心的參考點(diǎn)。加工中心機(jī)床參考點(diǎn)與零點(diǎn)重合,圖1鏜床各軸的位置是鏜床零點(diǎn)位置。由于鏜床和銑床不能同時(shí)工作,被分為2個(gè)軸組,銑床為軸組1,加工使用坐標(biāo)系1;鏜床為軸組2,加工使用坐標(biāo)系2。各軸在數(shù)控系統(tǒng)中定義如下:
軸組1#6→x#1→y#2→z;6號(hào)電動(dòng)機(jī)控制x軸,1號(hào)電動(dòng)機(jī)控制y軸,2號(hào)電動(dòng)機(jī)控制z軸。
軸組2#6→x#3→y1#5→z1
根據(jù)表1建立的補(bǔ)償表如下:
#3 DEL COMP
#3 DEFINE COMP 13,#5,#3,2 129 400
-4 -13 -57 -137 -236 -329 -454
-614 -838 -1 110 -1 464 -1 952 0
I51=1
說明:#3 DEL COMP是刪除3號(hào)電動(dòng)機(jī)以前建立的補(bǔ)償表。
第2行中#3表示3號(hào)電動(dòng)機(jī)為補(bǔ)償電動(dòng)機(jī)(Y軸)。#5表示5號(hào)電動(dòng)機(jī)為源電動(dòng)機(jī)(Z軸)。13表示補(bǔ)償表中補(bǔ)償點(diǎn)的個(gè)數(shù)為13。2 129 400表示補(bǔ)償長度0~2 129 400,單位為cts,即補(bǔ)償范圍在(0~1 300 mm)。
第3行中,-4對(duì)應(yīng)Z軸行程100 mm撓度誤差-0.15 μm。-13對(duì)應(yīng)Z軸行程200 mm撓度誤差-0.52 μm,依次類推。0對(duì)應(yīng)Z軸零點(diǎn)撓度誤差0.I51=1激活補(bǔ)償表。
把建立的補(bǔ)償表下載到PMAC,在以后的使用中,當(dāng)鏜床Z軸移動(dòng)時(shí),PMAC會(huì)根據(jù)補(bǔ)償表的值對(duì)Y軸進(jìn)行補(bǔ)償。
為了驗(yàn)證建立的撓度補(bǔ)償表是否有效,在如圖4所示的實(shí)驗(yàn)臺(tái)上進(jìn)行了調(diào)試運(yùn)行。
試驗(yàn)臺(tái)以工控機(jī)(IPC)作為上位機(jī),PMAC卡作為下位機(jī)。上位機(jī)與下位機(jī)通過PCI總線進(jìn)行數(shù)據(jù)通訊。結(jié)合撓度補(bǔ)償功能編寫了簡單的人機(jī)界面,如圖5所示。簡單人機(jī)界面是以Windows為系統(tǒng)平臺(tái),運(yùn)用高級(jí)編程語言C#建立的,通過調(diào)用DeltaTau公司提供的動(dòng)態(tài)鏈接庫Pcomm32.dll實(shí)現(xiàn)其與PMAC的通訊。PMAC可以執(zhí)行RS-274標(biāo)準(zhǔn)的NC代碼程序,先自定義G、M、T、H代碼作為子程序,下載到PMAC卡中。在執(zhí)行程序時(shí)遇到G、M時(shí),系統(tǒng)會(huì)跳到與其對(duì)應(yīng)的子程序中。
由于鏜床在軸組2中,調(diào)試前首先選擇軸組2。輸入數(shù)控程序,點(diǎn)擊啟動(dòng),試驗(yàn)臺(tái)按照程序指令運(yùn)動(dòng)。經(jīng)試驗(yàn)臺(tái)驗(yàn)證該補(bǔ)償表能夠準(zhǔn)確地進(jìn)行撓度補(bǔ)償。
人機(jī)界面還有修改機(jī)床參數(shù)和修改補(bǔ)償量的功能,可根據(jù)機(jī)床參數(shù)的變動(dòng)進(jìn)行修改,還可根據(jù)機(jī)床的具體情況對(duì)撓度補(bǔ)償量進(jìn)行修改,以保證機(jī)床的加工精度。修改補(bǔ)償量界面,如圖6所示。
該界面中補(bǔ)償量單位為μm,將補(bǔ)償點(diǎn)數(shù)設(shè)為12點(diǎn)和24點(diǎn)。補(bǔ)償點(diǎn)數(shù)為12時(shí)補(bǔ)償間距是100 mm,補(bǔ)償點(diǎn)數(shù)是24時(shí)補(bǔ)償間距是50 mm。用戶不用考慮建立補(bǔ)償表時(shí)多建一個(gè)點(diǎn),可直接將補(bǔ)償量輸入到表中,同時(shí)在輸入補(bǔ)償量時(shí)界面會(huì)提示該點(diǎn)的位置。如果建立了10個(gè)補(bǔ)償點(diǎn)可以把多余的補(bǔ)償量設(shè)為0。
修改補(bǔ)償量操作的步驟:首先單擊人機(jī)界面中的修改補(bǔ)償量按鈕,進(jìn)入修改補(bǔ)償量界面中,選擇補(bǔ)償點(diǎn)數(shù),點(diǎn)擊右上角的確定,會(huì)彈出提示補(bǔ)償間距小窗口,點(diǎn)擊確定,再將補(bǔ)償量值輸入到表中,點(diǎn)擊確定。補(bǔ)償表會(huì)以.pmc格式的文件下載到PMAC中,覆蓋以前的表并關(guān)閉該窗口。在以后加工工件時(shí),系統(tǒng)會(huì)自動(dòng)調(diào)用建立的補(bǔ)償表,進(jìn)行撓度補(bǔ)償。
(1)通過有限元分析得到滑枕等值行程的撓度變形量,該撓度變形量與滑枕行程呈非線性關(guān)系,并在1 200 mm行程處達(dá)到最大值為72.50 μm,為滑枕撓度補(bǔ)償?shù)倪M(jìn)行提供了量化依據(jù)。
(2)對(duì)于TX1600G鏜銑加工中心滑枕的撓度變形,采用了數(shù)控系統(tǒng)的軟件補(bǔ)償,經(jīng)試驗(yàn)臺(tái)驗(yàn)證,將PMAC提供的一維位置補(bǔ)償成功地應(yīng)用在滑枕的撓度補(bǔ)償,能夠?qū)崟r(shí)地按照設(shè)定的修正量進(jìn)行補(bǔ)償。
(3)修改補(bǔ)償量界面的建立很大程度上提高了TX1600G加工中心數(shù)控系統(tǒng)的開放性,為用戶的使用提供了便利。
(4)基于PMAC的開放性數(shù)控系統(tǒng)的撓度補(bǔ)償,只需在系統(tǒng)內(nèi)部建立補(bǔ)償表,可實(shí)時(shí)地進(jìn)行撓度誤差補(bǔ)償,這體現(xiàn)了基于PMAC開放性數(shù)控系統(tǒng)對(duì)于誤差補(bǔ)償?shù)慕?jīng)濟(jì)性、靈活性的優(yōu)勢,對(duì)于同類機(jī)床誤差補(bǔ)償問題的解決提供有效的途徑。
[1]孫文才.方滑枕變形處理及補(bǔ)償?shù)难芯縖D].哈爾濱:哈爾濱工業(yè)大學(xué),2010.
[2]萬東東.大型數(shù)控落地鏜銑床主軸滑枕變形分析與誤差補(bǔ)償技術(shù)的研究[D].蘇州:蘇州大學(xué),2012.
[3]吳鳳和,趙峰兵.拉桿與推桿組合式滑枕撓曲變形補(bǔ)償法[J].中國機(jī)械工程,2012,23(22):2667-2684.
[4]劉建林.具有反饋的落地銑鏜床主軸箱補(bǔ)償系統(tǒng)[J].制造技術(shù)與機(jī)床,2010(2):75-76.
[5]曹文智,王冠明,徐兆成.懸垂誤差補(bǔ)償在立式加工中心上的應(yīng)用[J].機(jī)床電器,2012(2):56-58.
[6]郭占玥.半球諧振子拋光機(jī)床UMAC數(shù)控系統(tǒng)的研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.
[7]DELTA TAU Data Systems, Inc.Turbo PMAC/PMAC2 SOFTWARE REFERENCE MANUAL[Z].2011.
[8]吳玉厚,宋德儒.PMAC下直線電機(jī)定位精度分析與誤差補(bǔ)償技術(shù)[J].沈陽建筑大學(xué)學(xué)報(bào),2005,21(5):586-589.
[9]董秋艷.基于PMAC的超精密磨床動(dòng)態(tài)特性分析及定位誤差補(bǔ)償研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.