數(shù)控加工中復(fù)雜空間曲線的編程處理
時間:2011-02-27 11:04:01 來源:
在采用數(shù)控機床加工零件時,往往會遇到零件形狀是由復(fù)雜的空間曲線構(gòu)成。已知條件是曲線的方程,這些方程可能是直接得到的,或者是通過輪廓形狀上的一些關(guān)鍵點,通過似合的方法得到近似的曲線方程。數(shù)控加工的目的在于按照已知的曲線方程加工出零件,因此將曲線轉(zhuǎn)換為數(shù)控機床需要的數(shù)控代碼是很重要的一個環(huán)節(jié)。生成復(fù)雜零件數(shù)控代碼的工作一般都通過編程軟件來實現(xiàn),而廣大普通用戶使用的編程軟件一般不具備根據(jù)用戶方程自動畫出零件曲線的功能。所以實際只能在編程軟件中根據(jù)曲線方程求解出盡可能多的節(jié)點并逐點連接成曲線。手工從事這部分工作既麻煩又難以保證曲線的準確,對于復(fù)雜的空間曲線,手工操作難以勝任。筆者采用Autolisp語言根據(jù)已知空間曲線方程編寫繪圖程序,在AutoCAD中實現(xiàn)曲線參數(shù)化設(shè)計,自動生成曲線,然后通過dxf文件格式,輸人到MasterCAM軟件中,再設(shè)置刀具路徑等工藝參數(shù)和后置處理,最后生成NC代碼,供數(shù)控機床加工零件。

圖1 鋼管焊接靠模曲線
1 空間復(fù)雜曲線方程
已知空間曲線如圖1所示。該零件是自動焊接鋼管時所用的靠模,在焊接加工中利用它控制焊槍的兩個方向作運動,一個是水平運動,例如X方向當(dāng)琴件繞2軸回轉(zhuǎn)時,橢圓的圓柱輪廓象一個平面凸輪,使與它配合的焊槍水平移動焊槍的另一個運動是沿著Z軸。從圖1可見,零件的上端部輪廓由余弦曲線構(gòu)成,能使焊槍垂直上下移動空間曲線在XY平面的投影是一個橢圓,用極坐標表示XY平面的橢圓數(shù)學(xué)表達式為:
其中除t是變量外,r也是變量。已知橢圓方程為
式中a和b分別是橢圓的長短半軸。將(1)和(2)式代入(3),并整理后得變量r的表達式為:
再將(4)式代入(1)和(2)式,得到投影到XY平面并用極坐標表示的橢圓方程:
| x= |
abcost |
|
| (a2sin2t+b2cos2t)½ | |
(5) |
| y= |
absint |
|
| (a2sin2t+b2cos2t)½ | |
(6) |

圖2 曲線展開圖

圖3 程序流程圖
由(5)和(6)式可確定XY平面橢圓曲線上的每一點的坐標。將圖1曲線沿圓周展開的曲線如圖2所示。與平面上的每一點所對應(yīng)的Z軸坐標為:
由(5)(6)和(7)可確定所求曲線的空間點的坐標值(x,y,z)。
2 計算機程序原理
Autolisp是AutoCAD內(nèi)嵌的編程工具,具有許多專用函數(shù),可以用于AutoCAD作二次開發(fā),實現(xiàn)圖形參數(shù)化設(shè)計。計算機繪制復(fù)雜空間曲線的程序流程如圖3所示。
運行程序時首先要輸入有關(guān)參數(shù)變量,包括每段曲線自變量的初始值、終值和步距,如:t0、te1、te2…ten和dt,接著軸入每段曲線的函數(shù)x1(t)、x2(t)、…、xn(t),y1(t)、y2(t)、…、yn(t),z1(t)、z2(t),…、zn(t),以及其他參數(shù)。然后程序便自動按dt自變量,求出相應(yīng)曲線上各節(jié)點的坐標,將各節(jié)點用直線連接。一段曲線繪完后,調(diào)出下一段函數(shù)繼續(xù)計算和畫連線,直到所有曲線段都完成為止,本例中的曲線僅由一段曲線方程構(gòu)成。因此按順序分別輸入t0=0,te1=360,x1(t)、y1(t)和z1(t)分別為式(5)、(6)和(7),dt=0.5,以及a=16,b=13,h=10等輸入?yún)?shù)的工作完成后,在AutoCAD環(huán)境中就會逐點生成所要求的整個零件的曲線輪廓, 如圖4所示。
|
 圖4 在AutoCAD中生成的曲線
|
3 生成數(shù)控代碼
由于AutoCAD軟件沒有CAM功能,必須將運行Autolisp程序生成的圖4轉(zhuǎn)換為dxf文件格式。MasterCAM是目前機械加工行業(yè)使用很普遍的CAD/CAM軟件,它既能繪制二維和三維零件圖形,又能設(shè)置刀具路徑、刀具參數(shù)、切削用量等加工工藝參數(shù),并可模擬刀具路徑,最后生成用于多種數(shù)控機床的NC代碼具體步驟如下:
- File-Converters-dxf讀取圖4圖形文件;
- Toolpath-Contour選擇輪廓加工模式為外形加工;
- Chain方法定義外形,加工路徑用串連的連線確定;
- 輸入刀具和外形銑削參數(shù)(如選擇刀具直徑、主軸轉(zhuǎn)速、切削深度等加工參數(shù));
- 顯示刀具路徑;
- NC-Utils-Backplot刀具路徑模擬以檢查刀具和切削參數(shù)是否合理;
- NC-Utils-Post Proc-Run刀具路徑經(jīng)后置處理生成可加工圖1零件的數(shù)控代碼。
以下僅列出典型位置的代碼:

由于要求在零件端面輪廓上加工出一條曲線。所以數(shù)控程序中進行刀具半徑左或右補償都是不合適的,因此要將刀具補償?shù)倪x項關(guān)閉,使刀具中心線沿曲線移動;設(shè)置參數(shù)時要將刀具選為球頭銑刀,直徑設(shè)為6mm,刀具直徑太大可能導(dǎo)致刀具過切嚴重;下刀點應(yīng)選在曲線的最低點。避免加工時出現(xiàn)意想不到的刀其垂直進給過量;運行生成的數(shù)控代碼正好能加工曲線一周,如果僅用此程序加工零件,在波谷處切削量太大。因此該程序只能作為子程序。還要編制一個簡單的主程序,完成Z 軸的深度進給,即Z軸每進給一次,調(diào)用子程序加工零件一周,直至加工出完整的曲線輪廓,主程序方結(jié)束(主程序略)。
上述處理只解決了零件上端部的復(fù)雜空間曲線的編程和加工問題作為圖1零件,還有橢圓圓柱輪廓等需要加工,但剩下的形狀在MasterCAM中是容易造型和處理的,所以可以直接用MasterCAM處理,這里不再詳敘。
4 結(jié)論
- 大部分CAD軟件都只有直線和團弧繪圖功能,對干復(fù)雜的非圓幾何曲線,特別是空間曲線,一般只能用描點法去人工擬合,結(jié)果很難精確。采用直線遙近的方法,將復(fù)雜曲線編程和運行,能自動生成滿足精度要求的圖形。
- 采用Autolisp語言編程,繪制出要求的零件輪廓曲線,再通過MasterCAM軟件選擇加工參數(shù)和后置處理,生成NC代碼,在數(shù)控機床上加工零件的方法是成功的,能確保零件的輪廓精度要求。這種方法不但可以處理平面非圓幾何曲線,也可以處理復(fù)雜的空間曲線等曲線輪廓。