你目前的位置>>主 頁>>AutoCAD知識
   

               用AutoCAD圖形計算刀具中心軌跡的方法

    筆者用Autolisp R12.0編寫了一個應(yīng)用程序,程序從AutoCAD圖形中獲得零件輪廓的坐標(biāo)信息,并根據(jù)這些信息和其它參數(shù)計算出刀具中心的運動軌跡,并直接生成加工代碼。

    數(shù)控銑床在加工過程中,遇到輪廓較復(fù)雜的零件時,用人工編寫數(shù)控程序需要花費大量的時間,且易出錯。筆者用Autolisp R12.0編寫了一個應(yīng)用程序,程序從AutoCAD圖形中獲得零件輪廓的坐標(biāo)信息,并根據(jù)這些信息和其它參數(shù)計算出刀具中心的運動軌跡,并直接生成加工代碼。該程序?qū)Ω纳乒ぷ髻|(zhì)量、保證編程的正確性和提高處理更復(fù)雜加工作業(yè)的能力具有較好的實用價值。
   
    一、零件輪廓坐標(biāo)信息的獲取
   
    從圖形中獲得信息,首先要把零件按實際尺寸準(zhǔn)確進(jìn)行繪制,并使圖形坐標(biāo)和機床加工坐標(biāo)一致。為了選取方便,通常要把零件輪廓線組合成一整體,對于封閉輪廓,可用Bloly命令使之形成一條多義線(Polyline),對于非封閉輪廓,可以用Pedit的子命令Join使之形成多義線。多義線是 AutoCAD中的特殊圖形實體,它由一系列首尾相連的直線和圓弧組成,在圖形數(shù)據(jù)庫中以頂點(即相連點)子實體的形式保存信息,與位置、形狀有關(guān)的信息主要有兩個:一是頂點坐標(biāo)數(shù)值,保存在10組碼中;二是頂點凸度(Bulge),保存在42組碼中。
   
    AutoCAD中約定:凸度為0是直線頂點,它與下一個頂點連接為一直線;凸度不為0是圓弧頂點,它與下一個頂點連接為一圓。煌苟戎禐樨(fù)表示順時針圓弧,凸度值為正表示逆時針圓;凸度絕對值小于1表示圓弧包角小于180°,凸度絕對值大于1表示圓弧包角大于180°。凸度與圓弧包角的關(guān)系是:圓弧包角=4×arctan|凸度值|。
   
    多義線的直線頂點和圓弧頂點都只保存了直線和圓弧的起點標(biāo)志,終點坐標(biāo)則都保存在下一個頂點中。
   
    Autolisp語言提供了讀取頂點實體組碼數(shù)據(jù)的函數(shù),因此,可以很方便地知道多義線各頂點的坐標(biāo)值和凸度值,再通過坐標(biāo)系轉(zhuǎn)換和計算,就得到了零件輪廓線上直線段的起點、終點坐標(biāo)和圓弧段的起點、終點、半徑、圓心等幾何信息。
   
    二、與刀具運動軌跡有關(guān)的因素
   
    刀具運動軌跡不僅與零件輪廓形狀有關(guān),還與該輪廓是零件的內(nèi)表面還是外表面、加工方式是順銑還是逆銑、銑刀半徑、公差尺寸、加工變形等諸因素有關(guān)。
   
    加工零件內(nèi)表面:順銑時,刀具按逆時針方向運動(主軸正轉(zhuǎn),下同)(見圖1a),逆銑時,則刀具按順時針方向運動(見圖1b)。


圖1 刀具運動與零件表面和加工方法的關(guān)系

    加工零件外表面:正好相反,順銑時,刀具順時針運動(見圖1c),逆銑時,則刀具逆時針運動(見圖1d)
   
    刀具中心與零件輪廓線的距離除了銑刀半徑外,還要考慮尺寸公差和加工時“讓刀”變形的情況,若按名義尺寸進(jìn)行加工,一般內(nèi)表面尺寸偏小,外表面尺寸偏大,因此,必須設(shè)置一個調(diào)整變量,用于對名義尺寸進(jìn)行調(diào)整。
   
    此外,對非平滑過渡的連接處,要考慮圓弧過渡方式(也可用其它過渡方式)。
   
    三、刀具中心軌跡的計算
   
    計算刀具中心軌跡是按刀具運動方向,依次取出多義線頂點實體的數(shù)據(jù)進(jìn)行計算和轉(zhuǎn)換。首先根據(jù)凸度值判斷頂點的性質(zhì),由此確定對象是直線還是圓弧。如果是直線頂點,則先取得該頂點和下一個頂點的坐標(biāo)值,再根據(jù)加工方式,用Polar函數(shù)分別把直線的兩個端點沿起點到終點方向加90°(順銑)或減90°(逆銑)后,移動刀具半徑和調(diào)整變量之差的距離,得到刀具中心的起點和終點坐標(biāo)。
   
    如果是圓弧頂點,則先取得該頂點的坐標(biāo)值和凸度值以及下一個頂點的坐標(biāo)值,計算出圓心和半徑,再把兩端點沿圓心方向(凹弧)或與圓心相反方向(凸弧)移動刀具半徑和調(diào)整變量之差的距離。
   
    一段直線或一段圓弧是上述算法,當(dāng)它們組合在一起時,情況要復(fù)雜一些,主要是判斷它們在連接處是否需要過渡圓弧以及是否重復(fù)計算。一般來講,兩直線銜接,要有過渡圓。恢本和圓弧或兩圓弧銜接,相切時不需要過渡圓弧,且相切處只需計算一點,不相切時需要過渡圓弧。
   
    特殊情況下,圓弧半徑與刀具半徑相等的凹圓弧,后接相切直線或圓弧,均可不需計算。
   
    值得注意的是,上述計算的前提是多義線的頂點排列順序與刀具運動方向是一致的。而用Bpoly命令形成的多義線的頂點在圖形數(shù)據(jù)庫中總是按逆時針方向排列保存的,且排列的起點與生成多義線時的選擇點有關(guān),因此,在計算前必須先確定刀具運動方向。當(dāng)?shù)毒呤琼槙r針運動時,則需要顛倒頂點原來的排列順序,且要改變頂點的性質(zhì),即直線頂點改為圓弧頂點,圓弧頂點改為直線頂點。
   
    四、操作對話框設(shè)計
   
    為了使用操作方便,要用DCL語言設(shè)計一個操作對話框,如圖2所示。在這個對話框中,通過按下選擇輪廓按鈕(在圖形上選取加工輪廓線,并獲得坐標(biāo)信息)、選擇零件表面和加工方式(以確定刀具的運動方向)、輸入調(diào)整參數(shù)和刀具號(確定刀具中心和輪廓線的偏移量)等操作后,就可用模擬顯示按鈕,在 AutoCAD圖形編輯器中直接進(jìn)行刀具運動的二維仿真模擬顯示;觀察滿意后,再分別輸入切削深度、每次進(jìn)刀量、切削速度、進(jìn)刀速度、精銑速度、主軸轉(zhuǎn)速等編程加工參數(shù),按下確認(rèn)按鈕,即可將完整的數(shù)控加工程序輸出到指定的文本文件中。


圖2 參數(shù)輸入對話框

    五、結(jié)束語
   
    用這種方法進(jìn)行數(shù)控編程,只要原圖正確,都能保證編程一次成功,且編程人員所要做的工作就是選擇加工對象并輸入加工參數(shù)。既能減輕勞動強度,縮短編程時間,又可減少差錯,使編程工作簡便,效率提高。

 

民眾工作室.制作   版權(quán)所有