王福元 徐家文
1.南京航空航天大學,南京,210016 2.鹽城工學院,鹽城,224051
虛擬機床是數字化制造技術中一項重要技術內容,它的最終目標是為產品的制造建立一個虛擬加工環境,用于仿真和評估加工過程對產品質量的影響。虛擬機床是隨著虛擬制造技術的發展而提出的一個新的研究領域,它作為數字化制造系統中的一個載體,其作用是真實地模擬機床切削加工情況,產生刀具的真實運動軌跡,形成工件的加工表面,完成碰撞、干涉檢驗等功能。應用的主要領域有加工過程模擬、數控加工編程、加工測量等。目前,國內外對虛擬機床的研究主要集中在虛擬機床的結構描述、加工模型建立、加工精度等方面[1-3]。虛擬機床結構描述是對實際機床加工系統進行客觀功能的描述并對其各種功能進行綜合并模型化,其研究還處在對機床結構模型的理論研究階段。虛擬機床加工模型包括切削力、切削加工參數等諸多因素,由于影響因素較多,到目前為止還沒有一個得到大家廣泛認可的加工模型。目前,國內對于虛擬數控機床的研究還處于起步階段,其研究成果[4-6]離實用還有一定的距離。本文從實用角度出發,采用約束與尺寸驅動[7-8]等方法建立了虛擬數控機床模型并進行應用,為復雜零件的數控加工提供加工模擬、編程、程序驗證、加工干涉檢查、精度檢驗等方法。
虛擬機床由機床裝配模型、刀具庫、夾具庫、控制系統等組成,如圖1所示。機床裝配模型是機床功能實現的載體,加工模擬、運動等功能都需要通過機床的裝配模型呈現,刀具庫為機床的切削加工提供刀具,夾具庫為加工提供所需的夾具。機床裝配模型、工件、刀具、夾具等組成了一個虛擬加工環境。

圖1 虛擬數控機床組成
虛擬機床控制界面為虛擬機床的控制提供人機接口。機床運動控制、加工模擬、工藝數據提取、運動軌跡計算等操作通過控制界面實現。虛擬邏輯控制器作為機床的邏輯控制單元,其功能與實際機床的電氣控制系統相同。虛擬CNC控制器相當于實際機床的數控系統,它接受運動軌跡計算模塊的數據輸出,為虛擬機床的運動提供插補運算,分配機床運動軸的位移量。工藝數據提取模塊從工件的表面提取加工表面的型面數據,傳遞給運動軌跡計算模塊。主控系統是虛擬數控機床的核心,處理虛擬機床的一切事務,接受控制界面的操作指令,對任務進行分解,把任務分配給其他處理單元,同時接受其他模塊的輸入信號。
機床裝配模型的拓撲結構反映了機床各個部件之間的相互關系。一般來說,機床由主軸部件、工作臺部件、機床床身等部件構成。為了簡化裝配模型結構,裝配模型中可以主要考慮機床運動部件,省略機床的次要部件,例如中間傳動零件、支撐零件、連接零件等。圖2所示為某機床的拓撲結構,其工作臺由兩個直線移動軸、回轉工作臺及底座等組成,主軸部件則由立柱、Z軸等組成。
該機床模型的拓撲結構采用樹形結構表示,其中實例用來表示部件在裝配模型中的位置關系,標識用來識別機床裝配模型在數據庫中存儲的一個個對象,根據作用不同又把它分為對象標識、事例標識、實例標識、部件標識等,相互之間可以查詢。有了標識就可以對裝配模型遍歷,獲取控制對象的標識,根據控制要求對其進行控制。

圖2 機床裝配模型的拓撲結構
在實物機床中,機床部件相互之間利用定位元件定位、連接件相連,實現位置約束。在虛擬環境中,機床之間的拓撲、運動關系采用約束來實現。機床模型中運動關系的建立以各運動軸為中心,首先設置機床的各運動軸,然后在各運動軸與之相關聯的部件之間建立約束關系。在圖2所示的機床中,Y軸滑臺裝配在X軸滑臺上,跟隨X軸滑臺一起移動,C1軸回轉工作臺安裝在Y軸滑臺上,跟隨Y軸滑臺一起運動,那么就需要在X軸滑臺、Y軸滑臺、C1軸回轉臺之間建立約束關系,如孔中心對齊、面貼合、平行、垂直等,當約束關系建立之后,在裝配模型中只要控制 X、Y、Z、C1軸運動即可,其余與之相關聯的部件通過約束關系完成相應的運動。
為了操縱裝配模型中的部件運動,需建立一個與裝配幾何模型相一致的虛擬裝配數據模型,利用該數據模型把裝配模型的相關信息加載到數據模型中,實現位姿矩陣的變換運算、數據存儲。我們建立的虛擬裝配數據模型的數據結構如下:
Typedef struct MC_Assembly
{
MC_Component *head_comp; //部件節點
MC_Movement *move; //運動節點
}
Typedef struct MC_Component
{
int instance_tag; //實例標識
int occurence_tag; //事例標識
char workpiece_name[130]; //部件名稱
char instance_name[80]; //實例名稱
Pos_Matrix ini_pos; //部件的位姿矩陣
double origin[3]; //零件的原點坐標
double csys_matrix[9]; //部件坐標系
struct MC_Component*children; //子部件
struct MC_Component*next;//同級相鄰部件
struct MC_Component*parent;//父部件
………………
}MC_Component;
在裝配數據模型 MC_Assembl中,MC_Component為部件節點,它承載了部件的靜態特性,如部件名稱屬性、在裝配空間中的位置屬性、與其他相鄰部件關系屬性等,MC_Movement則承載部件的動態特性。
通常機床的運動包括直線移動、旋轉運動。若要對機床部件進行驅動,必須確定運動部件在裝配空間的位置關系。為了表示部件在裝配空間的位置,需要用兩個坐標系,即裝配空間坐標系OXYZ與部件本身坐標系OwXcYcZc,它在空間的位姿表示如圖3所示。部件在裝配空間運動可以描述為部件在裝配空間內的移動和部件繞自身坐標系的轉動。裝配模型組件運動還需要獲取移動組件的標識與它的位姿矩陣。位姿矩陣是用來描述裝配部件在裝配模型空間的位置與姿態的,它包括X 、Y 、Z軸的i、j、k分量以及部件自身坐標系在裝配空間中的X、Y、Z分量。

圖3 裝配模型中的部件位姿
在以上建立的裝配模型空間中,運動部件的位姿矩陣表示為

式中,Torign為部件在裝配模型空間中的位置矩陣;Tcsys為部件在自身坐標系中的位姿矩陣;Tpos為部件在裝配空間中的位姿矩陣。
根據以上矩陣就可以對部件進行運動變換。
矩陣變換是實現各運動軸移動或旋轉的基礎,該矩陣根據組件的直線位移量或旋轉角度組合得到,該變換矩陣所需的參數矩陣為
T=[xdisydiszdisα β γ]
式中,xdis、ydis、zdis分別為部件在 X、Y 、Z 方向上的移動分量;α、β、γ分別為部件繞X 、Y 、Z 軸旋轉的角度。
則組合得到的運動部件變換矩陣為

利用變換矩陣Ttrans對組件的原位姿矩陣Tpos進行變換,變換過程為

通過以上變換便得到新的位姿態矩陣,利用新的位姿矩陣更新部件的原位姿矩陣,具體采用定位函數對部件進行重新定位,使部件在裝配模型空間中移動到新的位置。在具體實現時,還需要編寫矩陣的轉置、相乘、組合等矩陣基本運算函數。
虛擬數控機床中各運動軸的運動采用尺寸驅動方法實現。在數控機床中,由CNC系統完成加工路徑的插補運算,分配各運動軸運動的脈沖數,再通過驅動器、步進電機或伺服電機、傳動機構對工作臺、主軸進行驅動,利用傳感器對實際位移量進行反饋。虛擬數控機床中各運動軸驅動與實物機床運動軸驅動相似,同樣需要插補運算,為各運動軸分配運動位移量,再通過矩陣變換技術對運動軸驅動,運動部件的驅動過程如圖4所示。

圖4 運動部件尺寸驅動過程
虛擬數控插補運算類似于數控系統中軟件插補方法,在單位時間內對加工路徑進行插補運算。虛擬 CNC插補模塊完成對加工路徑的插補運算,輸出各個運動軸的脈沖序列。為了獲得與實際加工同樣的加工效果,采用定時模塊對脈沖輸出進行分配,獲得脈沖序列,再通過矩陣變換、重新定位過程實現運動軸驅動。
加工模擬不僅要模擬工件、刀具的運動,還要模擬加工后的工件表面形狀與表面質量。為了真實地模擬出加工后的表面,在運動過程中使工件與刀具連續做切割運動,并移除工件與刀具相交部分,形成加工表面,加工模擬的實現過程如圖5所示。

圖5 加工模擬的實現過程
在UG裝配模型空間中,兩個幾何實體之間的邏輯運算只能進行一次,而加工仿真需要進行若干次相交運算才能形成工件的表面。為解決以上問題,采用WAVE技術實現,其步驟為:首先對裝配樹進行遍歷獲取工件與陰極的標識,然后把工件設置為工作部件,查詢它的原型標識,再對原型標識進行遍歷,查找到與之進行相交運算的刀具實體標識,用同樣的方法得到工件的實體標識。在獲取陰極與工件的實體標識后,再經過建立變換矩陣,建立鏈接實體,查詢鏈接實體特征,隱藏鏈接實體,斷開鏈接實體等步驟,最后作兩個實體的相交運算。在以上實現的過程中,必須正確運用二次開發函數,對函數的功能、參數、返回值做出正確判斷,相交運算才能夠實現。
我們利用上述技術建立了五坐標數控電解加工機床的裝配模型,如圖6所示。本裝配模型是在UG NX軟件裝配環境中建立的,機床由工作臺、床身、主軸等部件組成,運動軸包括 X、Y、Z、C w、C t 5個運動軸。

圖6 五坐標虛擬數控電解加工機床裝配模型
整體葉輪加工是一個世界性的難題,在上述虛擬數控機床技術基礎上建立電解加工機床模型,利用它完成整體葉輪葉片加工仿真、加工路徑規劃、數控加工程序編程、加工干涉檢查等工作,為整體葉輪的加工提供數字化制造技術。該整體葉輪葉片電解加工采用數控展成法實現,電解加工與切削加工不同之處在于電解加工中陰極(刀具)不需要做旋轉運動,其他運動與數控切削加工相同。利用葉片專用模塊計算葉片加工的運動路徑,通過虛擬CNC模塊生成各運動軸的運動分量,其加工運動由虛擬機床的X、Y、Z、C w四軸運動合成,利用該虛擬五坐標數控機床加工的葉片如圖7所示。

圖7 整體葉輪葉片虛擬加工結果
通過在虛擬數控機床中的加工模擬,對加工路徑進行規劃,對運動過程中的運動干涉進行檢查,最后通過數控后處理程序生成機床的數控加工程序。利用上述模擬結果及生成的數控加工程序加工的葉片形狀如圖8所示。

圖8 整體葉輪葉片加工試驗結果
由加工結果可知,實際電解加工的結果與葉片模擬結果相一致。本虛擬數控機床采用的運動軸驅動、動態去除材料、運動軸位移實時分配等技術可用于其他領域的數控加工仿真技術中,可以解決零件制造中的技術難題,特別是復雜零件的數控加工,其應用前景較好。
(1)建立了由機械部件、控制系統、人機接口等模塊組成的虛擬數控機床模型;采用裝配約束與尺寸驅動技術實現了對機床各運動軸的驅動。
(2)利用WAVE技術在裝配空間與建模空間之間進行對象鏈接、復制,相交運算;采用軟件插補技術進行運動軸移動量分配,實現加工的動態模擬,虛擬加工過程與實際加工過程相同,加工后的表面質量與實際加工結果一致。
(3)建立了五坐標虛擬數控機床模型,并將其應用于整體葉輪葉片的數控電解加工,成功地解決了葉片加工中的加工模擬、加工路徑計算、加工自動編程、運動干涉檢查等工作,該模型具有操作方便、過程直觀等優點,能提高工作效率,其應用對實際加工具有指導意義。
[1] 楊海成.基于虛擬樣機的系統仿真技術[J].中國機械工程,1998,9(11):66-67.
[2] Waurzyniak P.CAD/CAM Software Advances[J].Manufacturing Engineering,2006,137(5):91-97.
[3] Schultz D F.Enhancing Multiple-axis Software[J].Cutting Tool Engineering,2008,60(7):36-38.
[4] 高峰,要艷紅,李艷,等.基于ObjectARX的車銑復合數控機床虛擬加工仿真研究[J].系統仿真學報,2008,20(12):3183-3187.
[5] 徐新勝,方水良,李強,等.裝配產品的變型設計研究[J].浙江大學學報,2006,40(9):1652-1656.
[6] 武殿梁,羊潤黨,馬登哲,等.虛擬裝配環境中的裝配模型表達技術研究[J].計算機集成制造系統CIMS,2004,10(11):1364-1369.
[7] 路懿.用CAD約束和尺寸驅動技術分析平面機構的運動[J].計算機輔助設計與圖形學學報,2002,14(10):972-976.
[8] 李群,陳五一,王瑞秋.基于UG二次開發的葉輪刀位軌跡生成[J].計算機集成制造系統,2007,13(3):548-552.