五軸加工的幹(gàn)涉是(shì)五軸數控加(jiā)工中有待(dài)解決的技術難題之一。目前已有了(le)一些有效的解決(jué)方法(fǎ)。例(lì)如(rú), Y. Takeuchi[ 1~4] 等研製了基於實體模型的(de)五軸免幹涉控製軟件。它們是在刀具的徑向(xiàng)和軸向設置許多(duō)檢查點, 根據曲(qǔ)麵與檢查(chá)點的幹涉程度來調整刀軸矢量。這種方法(fǎ)雖精度高(gāo), 但由於不斷迭代計算時間特別長, 且(qiě)隻能在工作站上運行, 這樣(yàng)就限製了軟件的適用(yòng)性。張定華等[ 5] 對多軸端銑、側銑加(jiā)工中的幹涉現(xiàn)象進行分(fèn)析(xī), 提出了(le)一種(zhǒng)以臨界約束和刀具與曲麵(miàn)最近距離監視(shì)為基礎的防幹(gàn)涉方法。這種方法由於(yú)沒將曲麵三角化, 誤差較小, 但在計算點到曲麵的最近距離(lí)時, 對算法的可靠性要求較高, 且“傾角H”的精確調整也很(hěn)難。
本文提出一種基於曲麵模(mó)型(xíng)的免幹涉算法(fǎ), 該算法可對五軸加工進行幹涉檢查(chá)及修正,在微機上運行, 十分(fèn)有效。
1 刀具尺寸與幹涉的關係
分析幹涉的原因(yīn)可(kě)從刀具尺寸和曲麵形態(tài)的關係來考(kǎo)慮。刀具尺寸的選擇取決於被(bèi)加工表麵, 一般情況下(xià), 刀具半徑不應該大於被加工曲麵的最小(xiǎo)曲率半徑, 這樣就可(kě)以避免幹涉。由於刀具半徑變小, 對材料的去除率相應降低, 增加了加工時(shí)間; 此外, 刀具越(yuè)小, 折斷的可能性越大。因此(cǐ), 曲麵(miàn)對刀(dāo)具半徑的限製對加工(gōng)極為不利。刀具尺寸的選取既不能太大,也不能太(tài)小。通常的(de)做法是粗加(jiā)工時選取(qǔ)直徑較大的圓盤銑刀, 留有一定的加工(gōng)餘(yú)量; 精加工(gōng)時選取(qǔ)小(xiǎo)尺寸的(de)球頭刀加工到曲麵的精確尺寸。
2 算法的基本思想
首(shǒu)先(xiān)將曲(qǔ)麵按等參(cān)數三角化, 形成平麵三角(jiǎo)網格, 以此代替被(bèi)加工曲麵(miàn); 然後, 以(yǐ)不考慮幹涉所產(chǎn)生的刀位文件作為輸(shū)入數(shù)據進行處理, 最後生成(chéng)針對被(bèi)加工(gōng)曲麵的免幹涉刀位文件。本算法是基於曲麵模型, 為了使刀具具有實體特性(xìng), 特引入檢查線概念。即在刀具周向均勻分布12 條(tiáo)直線段, 直線段的起點位於刀具的頂端( 以圓柱平底銑刀為例) , 方向與刀(dāo)軸矢量方向相同, 直線段長度等於刀杆長度, 如圖(tú)1 所示。
3 算法步驟
3. 1 基本思路
首(shǒu)先從輸入數據讀取一個刀位數據, 得到一個刀位點和刀軸矢(shǐ)量, 對於給定的刀具半徑、刀具(jù)類型和刀杆長度, 檢查線自動產生, 並(bìng)存貯到數組中; 然後就檢查每(měi)條直線(xiàn)段是(shì)否與三角平麵片相交, 如果相交, 經過相應處理, 刀軸矢量就發生改(gǎi)變, 產生免幹涉的新刀位(wèi)數據。
3. 2 具體步驟
( 1) 將加工曲麵按等參(cān)數三角化, 並將三角形數據存入一個較大的數(shù)組T riang le 1。
( 2) 從輸入數據讀取(qǔ)刀位點和刀軸矢量, 根(gēn)據刀杆(gǎn)長度在XOY 平麵內投影形成一(yī)個圓(yuán), 這個圓就是可能的幹涉區(qū)域。在(zài)數組Tr iangle 1 中進行搜索, 隻要三角形中有一個頂點在XOY 平麵內的投影在圓內, 就記錄這個三角形, 形成一個針對刀(dāo)位點和刀軸矢量的新的三角形數組Tr iangle 2。這(zhè)樣就(jiù)很快地排除了根本不(bú)可能產生幹涉的三角(jiǎo)形。
( 3) 以刀(dāo)位點為原點, 以刀軸矢量為Zø軸, 建立局部坐標(biāo)係OøX øYøZø。
( 4) 計算12 個檢查(chá)線起點在局部坐標係中的坐標值。
(5) 計算局部坐標係到世界坐標係的(de)平(píng)移變換矩陣M1。
( 6) 計算(suàn)局部坐(zuò)標係向(xiàng)世界坐標係轉換的變換(huàn)矩陣M2。
( 7) 通過變換矩陣M1 , M2 , 計算檢(jiǎn)查線起點在世界坐(zuò)標係中(zhōng)的坐標值。
( 8) 根據設定的刀杆長度以及刀軸矢量, 可生成12 條(tiáo)世(shì)界坐標係下的檢查直線段。
( 9) 每條檢查直線段與三角形數組T riang le 2 中每個三(sān)角平麵片求交, 如果有(yǒu)交點, 則要記錄直(zhí)線段被截長度( 從起點算起) , 存入一個數組D 1, 此外還要計算(suàn)相交的三角平麵(miàn)片法矢( 指向刀具一側) , 存入一個數組N 1。
( 10) 求出被截長度數組D1 中最大(dà)值(zhí)dmax , 若ûdmax û< E, 則此時(shí)的刀位點(diǎn)和刀軸矢(shǐ)量是可接受的, 不需要(yào)改變; 否則轉步驟( 11) 。E為幹涉檢查精度。
( 11) 計(jì)算新的刀軸矢量, 方法是將相交(jiāo)的三角平麵片法矢加權平均, 其中權重(chóng)是相應的直線段被截長度, 公式表(biǎo)示為
( 12) 根據刀位點和上式所求得的(de)新刀軸(zhóu)矢量, 重做步驟( 2) , ( 3) , ( 4) , ( 5) , ( 6) , ( 7) , ( 8) , ( 9) , ( 10) 。若ûdmax û> E, 此(cǐ)時不重新(xīn)計算刀軸矢量, 而(ér)是沿著最新的刀軸矢量(liàng)方向抬刀,其抬刀高度為d max, 由此可(kě)得到新的刀位點。
3. 3 算法說明
上述算法中對刀軸矢量隻進行了一次計算, 當然為(wéi)了提(tí)高準確性可以進行兩次、三(sān)次等多次計算, 但事實上, 從上機實踐可以看出, 隻(zhī)要計算一次刀軸矢量, 絕(jué)大部分幹涉即可排除, 較少(shǎo)量的幹涉可通過抬刀(dāo)消除, 這樣就大大地節省運行時間(jiān)。由(yóu)於刀(dāo)具(jù)類型較多, 刀心位置也不同, 如圖2 所示。
在(zài)算法(fǎ)中, 檢查線段起始位置設定也有所不同。假設局(jú)部坐標係(xì)OøX øYøZø的原(yuán)點在刀心, Zø軸與(yǔ)刀軸(zhóu)矢量相同(tóng), 則對於端銑刀( R1= 0) , 檢查線段起始位置為(wéi)Zø= 0, 即與刀心處在同一高度。對於環銑刀( R> R1 ) 和球頭刀( R= R1 ) , 檢查線段起始位置為Zø = - 0. 5R 1, 即從(cóng)刀(dāo)心Oø向下0. 5 倍(bèi)圓角半徑處。由上可以看出, 檢查線段起始位置的設定(dìng), 對端銑刀是準確值, 而對環銑刀和球頭刀則是近似值。
4 幹(gàn)涉處理實例
本文用上述算法對如圖3 所示曲麵進行幹涉處理。
原始數據: 平底端銑(xǐ)刀, 刀具(jù)半徑R = 2. 5mm, 圓角半徑R 1= 0, 刀杆長度L = 50mm;幹涉檢查精(jīng)度E= 0. 01; 曲(qǔ)麵(miàn)三角化, U 向(xiàng)分為100 個(gè)點, nU= 100, V 向分為100 個點(diǎn), nV=100; 曲麵被( nU- 1) ( nV- 1) ×2= 18062 個平(píng)麵(miàn)三角片所逼近。在486 微機上運行, 運行時間為30min。
部分刀位點處的幹涉處理情況如表1 所(suǒ)示。可見(jiàn)刀軸矢量經過一次調整即(jí)達到精度要求。
如果您有機(jī)床行業、企業相關新聞稿件發表,或進(jìn)行資訊合作,歡迎聯(lián)係本網(wǎng)編輯部, 郵箱:skjcsc@vip.sina.com