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

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

圖2 曲線展開圖

圖3 程序流程圖
由(5)和(6)式可確定XY平面橢圓曲線上的每一點(diǎn)的坐標(biāo)。將圖1曲線沿圓周展開的曲線如圖2所示。與平面上的每一點(diǎn)所對應(yīng)的Z軸坐標(biāo)為:
由(5)(6)和(7)可確定所求曲線的空間點(diǎn)的坐標(biāo)值(x,y,z)。
2 計(jì)算機(jī)程序原理
Autolisp是AutoCAD內(nèi)嵌的編程工具,具有許多專用函數(shù),可以用于AutoCAD作二次開發(fā),實(shí)現(xiàn)圖形參數(shù)化設(shè)計(jì)。計(jì)算機(jī)繪制復(fù)雜空間曲線的程序流程如圖3所示。
運(yùn)行程序時(shí)首先要輸入有關(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é)點(diǎn)的坐標(biāo),將各節(jié)點(diǎn)用直線連接。一段曲線繪完后,調(diào)出下一段函數(shù)繼續(xù)計(jì)算和畫連線,直到所有曲線段都完成為止,本例中的曲線僅由一段曲線方程構(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)境中就會逐點(diǎn)生成所要求的整個(gè)零件的曲線輪廓, 如圖4所示。
|
 圖4 在AutoCAD中生成的曲線
|
3 生成數(shù)控代碼
由于AutoCAD軟件沒有CAM功能,必須將運(yùn)行Autolisp程序生成的圖4轉(zhuǎn)換為dxf文件格式。MasterCAM是目前機(jī)械加工行業(yè)使用很普遍的CAD/CAM軟件,它既能繪制二維和三維零件圖形,又能設(shè)置刀具路徑、刀具參數(shù)、切削用量等加工工藝參數(shù),并可模擬刀具路徑,最后生成用于多種數(shù)控機(jī)床的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ù)控程序中進(jìn)行刀具半徑左或右補(bǔ)償都是不合適的,因此要將刀具補(bǔ)償?shù)倪x項(xiàng)關(guān)閉,使刀具中心線沿曲線移動;設(shè)置參數(shù)時(shí)要將刀具選為球頭銑刀,直徑設(shè)為6mm,刀具直徑太大可能導(dǎo)致刀具過切嚴(yán)重;下刀點(diǎn)應(yīng)選在曲線的最低點(diǎn)。避免加工時(shí)出現(xiàn)意想不到的刀其垂直進(jìn)給過量;運(yùn)行生成的數(shù)控代碼正好能加工曲線一周,如果僅用此程序加工零件,在波谷處切削量太大。因此該程序只能作為子程序。還要編制一個(gè)簡單的主程序,完成Z 軸的深度進(jìn)給,即Z軸每進(jìn)給一次,調(diào)用子程序加工零件一周,直至加工出完整的曲線輪廓,主程序方結(jié)束(主程序略)。
上述處理只解決了零件上端部的復(fù)雜空間曲線的編程和加工問題作為圖1零件,還有橢圓圓柱輪廓等需要加工,但剩下的形狀在MasterCAM中是容易造型和處理的,所以可以直接用MasterCAM處理,這里不再詳敘。
4 結(jié)論
- 大部分CAD軟件都只有直線和團(tuán)弧繪圖功能,對干復(fù)雜的非圓幾何曲線,特別是空間曲線,一般只能用描點(diǎn)法去人工擬合,結(jié)果很難精確。采用直線遙近的方法,將復(fù)雜曲線編程和運(yùn)行,能自動生成滿足精度要求的圖形。
- 采用Autolisp語言編程,繪制出要求的零件輪廓曲線,再通過MasterCAM軟件選擇加工參數(shù)和后置處理,生成NC代碼,在數(shù)控機(jī)床上加工零件的方法是成功的,能確保零件的輪廓精度要求。這種方法不但可以處理平面非圓幾何曲線,也可以處理復(fù)雜的空間曲線等曲線輪廓。