五軸數(shù)控機(jī)床的后置處理算法與軟件實(shí)現(xiàn)

發(fā)布日期:2011-11-25    蘭生客服中心    瀏覽:3058

該文以一種主軸復(fù)合擺動(dòng)的五軸數(shù)控機(jī)床為對(duì)象,在分析了坐標(biāo)系統(tǒng)之后,給出了聯(lián)動(dòng)時(shí)刀位軌跡的后置處理算法。文中采用面向?qū)ο缶幊碳夹g(shù)得到了五軸后置處理系統(tǒng)。



一、引言



數(shù)控機(jī)床的各種運(yùn)動(dòng)都是執(zhí)行特定數(shù)控指令的結(jié)果,完成一次加工過(guò)程需要連續(xù)執(zhí)行一連串的數(shù)控指令,即數(shù)控程序。在CAM,計(jì)算機(jī)輔助制造過(guò)程中,將CAD設(shè)計(jì)的模型,通過(guò)CAM軟件模塊計(jì)算產(chǎn)生刀位軌跡的整個(gè)過(guò)程稱為前置處理。在前置處理中,按照相對(duì)運(yùn)動(dòng)原理,將刀位軌跡計(jì)算統(tǒng)一在工件坐標(biāo)系中進(jìn)行,而不考慮具體機(jī)床結(jié)構(gòu)及指令格式,從而簡(jiǎn)化系統(tǒng)軟件。即在CAM軟件系統(tǒng)中進(jìn)行刀位軌跡編程時(shí),總假定工件是固定不動(dòng)的,所以刀位文件(CLF)中給出的是在工件坐標(biāo)系中刀具的位置數(shù)據(jù),包括刀心點(diǎn)和刀軸矢量。前置處理產(chǎn)生的是刀位文件(Cutter Location File),而不是數(shù)控程序。因此,要獲得數(shù)控機(jī)床加工程序,還需要將前置計(jì)算所得的刀位軌跡數(shù)據(jù)轉(zhuǎn)換成具體機(jī)床的程序代碼,該過(guò)程稱為后置處理(Post-Processing)。



五軸數(shù)控機(jī)床是加工復(fù)雜零件的現(xiàn)代化設(shè)備,多樣化的結(jié)構(gòu)是其發(fā)展的必然趨勢(shì)。由于五軸數(shù)控加工的復(fù)雜性,后置處理程序是必不可少的。對(duì)于不同類型運(yùn)動(dòng)關(guān)系的數(shù)控機(jī)床,其后置處理又是不同的,因此有必要針對(duì)不同結(jié)構(gòu)的機(jī)床建立其有效的后置處理程序。本文作者以德馬吉(DMG)DMU200P數(shù)控加工中心為對(duì)象,分析了它的機(jī)床結(jié)構(gòu)和后置處理方法,并采用面向?qū)ο缶幊谭椒▽?shí)現(xiàn)了其后置處理程序。



二、機(jī)床的坐標(biāo)系統(tǒng)



根據(jù)ISO的規(guī)定,數(shù)控機(jī)床采用右手直角坐標(biāo)系,其中平行于主軸的坐標(biāo)軸定義為z軸,繞x、y、z軸的旋轉(zhuǎn)坐標(biāo)分別為A、B、C。上述各坐標(biāo)軸的運(yùn)動(dòng)可由工作臺(tái),也可以由刀具的運(yùn)動(dòng)來(lái)實(shí)現(xiàn),但方向均以刀具相對(duì)于工件的運(yùn)動(dòng)方向來(lái)定義。通常五軸聯(lián)動(dòng)是指x、y、z、A、B、C中任意5個(gè)坐標(biāo)的線性插補(bǔ)運(yùn)動(dòng)。



圖1 DMU200P機(jī)床運(yùn)動(dòng)坐標(biāo)系


如圖1所示的是DMU200P機(jī)床的運(yùn)動(dòng)坐標(biāo)系。該機(jī)床的五軸由x、y、z、B、C組成,其中B、C方向都為刀具相對(duì)于工件運(yùn)動(dòng)的方向,C軸旋轉(zhuǎn)是由工作臺(tái)旋轉(zhuǎn)實(shí)現(xiàn)的,故C軸的實(shí)際運(yùn)動(dòng)方向相反;B軸為主軸復(fù)合擺動(dòng),主軸在擺動(dòng)過(guò)程中同時(shí)實(shí)現(xiàn)兩個(gè)方向的擺動(dòng)運(yùn)動(dòng)。在圖1中,β=45°,B軸可以實(shí)現(xiàn) 0°~180°擺動(dòng)。在正常狀態(tài)下,機(jī)床的刀軸指向與z軸平行,B軸旋轉(zhuǎn)180°后,刀軸方向與y軸平行。



二、機(jī)床運(yùn)動(dòng)學(xué)求解



在多軸數(shù)控編程時(shí),CAD/CAM軟件生成的刀位文件由工件坐標(biāo)系的X、Y、Z和刀軸矢量i、j、k構(gòu)成。后置處理中的運(yùn)動(dòng)求解,主要包括轉(zhuǎn)動(dòng)角度計(jì)算和經(jīng)過(guò)轉(zhuǎn)動(dòng)后的X、Y、Z值求解。其中,轉(zhuǎn)動(dòng)角度計(jì)算就是把工件坐標(biāo)系中的刀軸矢量分解為機(jī)床兩個(gè)轉(zhuǎn)動(dòng)坐標(biāo)。



假設(shè)工件坐標(biāo)系Owxyz在加工開(kāi)始運(yùn)動(dòng)前 (B =0,C=0 )與機(jī)床坐標(biāo)系Oxyz平行,則工件上任意點(diǎn)的刀心位置在工件坐標(biāo)系中的坐標(biāo)為 (xw,yw,zw),刀軸矢量為——工件坐標(biāo)系中的單位矢量,設(shè)。如圖2中的ON表示任意刀軸經(jīng)過(guò)平移后,在機(jī)床坐標(biāo)系中的矢量。



 


圖2 DMU200P角度計(jì)算


1.轉(zhuǎn)動(dòng)角度的計(jì)算


若將圖2中的刀軸單位矢量ON首先繞Z軸旋轉(zhuǎn),再將旋轉(zhuǎn)后的ON0單位矢量繞OP旋轉(zhuǎn),其中,N點(diǎn)和N0兩點(diǎn)旋轉(zhuǎn)過(guò)程分別形成的兩個(gè)圓有交點(diǎn)M。那么,刀軸矢量ON旋轉(zhuǎn)到與Z軸方向一致時(shí),需要經(jīng)過(guò)以下兩次旋轉(zhuǎn):(1)繞Z軸旋轉(zhuǎn)到OM;(2)繞OP軸(B旋轉(zhuǎn)軸)旋轉(zhuǎn)B角度與Z軸重合。根據(jù)圖2中的向量關(guān)系,則有:


   (1)


   (2)


由(1)、(2)兩式向量關(guān)系得到:


   (3)


   (4)


同時(shí)根據(jù)向量關(guān)系,有:


   (5)


因此,DMU200P運(yùn)動(dòng)角度為:


   (6)


   (7)


2. 直角坐標(biāo)計(jì)算


隨著五軸數(shù)控機(jī)床控制系統(tǒng)的研究與發(fā)展,已經(jīng)實(shí)現(xiàn)了對(duì)旋轉(zhuǎn)坐標(biāo)轉(zhuǎn)動(dòng)之后的對(duì)刀具刀心點(diǎn)相對(duì)于工件位置的保持,即刀具中心管理功能(TCP)。在 DMU200P數(shù)控機(jī)床的HEIDENHAIN TNC430控制系統(tǒng)中,已經(jīng)提供了實(shí)現(xiàn)該功能的M代碼,從而由控制系統(tǒng)來(lái)給出經(jīng)過(guò)B、C軸旋轉(zhuǎn)之后的X、Y、Z坐標(biāo)值。此外,刀具中心管理功能的優(yōu)點(diǎn)在于,可以減少因加工時(shí)裝夾不同而造成的重復(fù)后置等問(wèn)題。



 


三、后置處理程序的實(shí)現(xiàn)與應(yīng)用


后置處理的主要內(nèi)容包括:數(shù)控指令的輸出、格式轉(zhuǎn)換輸出和機(jī)床運(yùn)動(dòng)學(xué)求解處理等方面的內(nèi)容。其中,數(shù)控系統(tǒng)控制指令的輸出涉及到機(jī)床種類、機(jī)床配置、機(jī)床的定位、插補(bǔ)、主軸、進(jìn)給、暫停、冷卻、刀具補(bǔ)償、固定循環(huán)、程序頭尾輸出等方面的控制;格式轉(zhuǎn)換輸出包括數(shù)據(jù)類型轉(zhuǎn)換、字符串處理和輸出地址字符等方面的內(nèi)容;運(yùn)動(dòng)學(xué)算法處理即后置處理算法設(shè)計(jì),主要針對(duì)多坐標(biāo)加工時(shí)的坐標(biāo)轉(zhuǎn)換、機(jī)床運(yùn)動(dòng)學(xué)定義、跨象限處理和進(jìn)給速度控制等幾何運(yùn)動(dòng)變換計(jì)算。


后置處理過(guò)程原則上是解釋執(zhí)行,即每讀出刀位數(shù)據(jù)文件中的一個(gè)完整的記錄行,就根據(jù)所選機(jī)床進(jìn)行坐標(biāo)變換或文件代碼轉(zhuǎn)換,生成一個(gè)完整的數(shù)控程序段,并寫(xiě)到數(shù)控程序文件中,直到刀位數(shù)據(jù)文件結(jié)束。采用面向?qū)ο蠹夹g(shù),建立了記錄刀位文件信息的數(shù)據(jù)結(jié)構(gòu)和處理格式轉(zhuǎn)換輸出的方法,從而實(shí)現(xiàn)了后置處理系統(tǒng),后置處理流程如圖3所示。


 


圖3 后置處理流程


后置處理程序由6個(gè)模塊組成:刀位文件讀入、后置參數(shù)設(shè)置、后置方式判斷、數(shù)據(jù)轉(zhuǎn)換、加工程序輸出和數(shù)據(jù)顯示模塊組成。其中,后置處理方式判斷模塊,實(shí)現(xiàn)對(duì)刀位文件是何種加工方式的判斷;刀位文件讀入模塊則要根據(jù)刀位文件的特性,逐條讀入刀軌中刀具中心的坐標(biāo)值和刀軸向量值,以及刀位文件中所包含的其他信息;數(shù)據(jù)轉(zhuǎn)換模塊實(shí)現(xiàn)了后置處理算法中的角度計(jì)算以及必要的直線坐標(biāo)值的計(jì)算。


基于面向?qū)ο蟮募夹g(shù),使得我們?cè)谠黾有碌亩噍S后置處理系統(tǒng)時(shí),只要對(duì)其中的數(shù)據(jù)轉(zhuǎn)換模塊進(jìn)行變化,即可實(shí)現(xiàn)了多臺(tái)多軸數(shù)控機(jī)床的后置處理的快速建立,實(shí)現(xiàn)了代碼重用性。圖4給出了采用該后置處理系統(tǒng)在DMU200P數(shù)控機(jī)床上進(jìn)行的應(yīng)用,在窗口左側(cè)顯示的是刀位文件,右側(cè)顯示的是經(jīng)過(guò)后置處理的 NC數(shù)據(jù)文件。


 


圖4 后置處理系統(tǒng)應(yīng)用


四、結(jié)論


(1) 本文圍繞一種運(yùn)動(dòng)形式復(fù)雜的五軸數(shù)控機(jī)床的后置處理,進(jìn)行了較為詳細(xì)的運(yùn)動(dòng)學(xué)算法論述,并且實(shí)現(xiàn)了該機(jī)床的五軸后置處理的程序。在該設(shè)備上的應(yīng)用表明,采用該方法實(shí)現(xiàn)的后置處理系統(tǒng)是可靠有效的。


(2) 采用面向?qū)ο蠹夹g(shù)實(shí)現(xiàn)的后置處理系統(tǒng),能夠滿足工廠新增設(shè)備多軸后置處理系統(tǒng)的快速配置開(kāi)發(fā)。

更多相關(guān)信息