王學敏,孫大樂,孫鳳龍,吳鳳和
(1.寶山鋼鐵股份有限公司,上海 201900;2.燕山大學機械工程學院,河北 秦皇島 066004)
數(shù)控仿真技術(shù)是虛擬制造的一個重要分支和基礎,不但可以驗證數(shù)控加工程序的可靠性,而且還能夠?qū)η邢鬟^程進行預測,其終極目標是虛擬構(gòu)建一個真實的加工環(huán)境,用來仿真和評估各個加工過程對產(chǎn)品質(zhì)量的影響。在數(shù)控仿真系統(tǒng)中,加工過程的動態(tài)仿真算法是其核心部分,插補算法的選擇直接關(guān)系著數(shù)控系統(tǒng)的精度、速度和加工能力。目前數(shù)控系統(tǒng)中最常用的插補方法是逐點比較法和時間分割法[1-4]。逐點比較法算法簡單、容易實現(xiàn),但由于速度指標和精度指標都很難滿足現(xiàn)在零件的加工要求,因此在目前的數(shù)控系統(tǒng)中已很少使用。時間分割法插補精度高,誤差較低,但幾何運算復雜,編程計算量大,特別是在進行圓弧插補時,執(zhí)行速度十分緩慢。因此,設計一種方法用于簡化算法的流程,提高仿真的速度顯得尤為重要。
本文基于時間分割理論,提出一種以單位步進角為中間變量的數(shù)控加工仿真算法。并通過具體仿真實例,表明該方法可以有效簡化算法流程,提高仿真速度。
時間分割直線插補通過進給速度F和插補周期T對一個插補周期的進給步長數(shù)St進行計算,然后再計算插補點的位置[5],進給步長數(shù)的計算公式為
設要加工的直線如圖1所示,起點為A(xstart,ystart,zstart);終點為B(xend,yend,zend);將線段AB等分為k段并進行插補,下一個動點設為Pi+1;k為網(wǎng)格劃分精度;t為插補次數(shù)。
圖1 直線插補算法原理示意圖Fig.1 Linear interpolation algorithm principle diagram
直線插補具體步驟如下:
(1)根據(jù)幾何關(guān)系,各坐標軸對應的位移增量為
(2)進給步長為
(3)三個坐標方向的步長分別為
(4)每一插補周期的坐標增量為
(5)從而很容易求得下一個動點Pi+1的坐標值為
(6)終點判別:當t>St時,結(jié)束。
在對不經(jīng)過原點的直線進行插補時,需要把原來直線的起點當作坐標原點,建立一個新坐標系。由于該坐標系與原坐標系有關(guān)聯(lián),因此將插補直線從原坐標系平移到新坐標系即可,無需改動其插補程序。由此可看出時間分割直線插補是一種比較簡單的插補算法,此外其進給方向是理論直線,因此不存在理論誤差。
時間分割圓弧插補是把圓弧視為微小直線段,并用一組直線段來進行逼近,其實質(zhì)也是直線插補,因此可計算每個插補周期的坐標增量值[6]。
設所要加工的圓弧如圖2所示,將插補分為順、逆兩種情況。進給步長計算方法與直線插補相同,圓弧起點為 A(xstart,ystart,),終點為 B(xend,yend),圓弧圓心坐標為M(s,w),半徑為R,I為圓弧圓心與起點在X方向坐標的差值,J為圓弧圓心與起點在Y方向坐標的差值,Pi+1(xi+1,yi+1)為下一個動點。弦AP的長度即為每個插補周期進給的步長ΔL,其所對應的圓心角就是每次插補的角步距θ,則有θ=△L/R,并設n為劃分精度。
圖2 圓弧插補算法原理示意圖Fig.2 Circular arc interpolation algorithm principle diagram
圓弧插補具體步驟如下:
(1)A(xstart,ystart)和插補點 Pi+1(xi+1,yi+1)的坐標分別為
(2)因為θ很小,所以可以做以下近似計算,取二階近似得
(3)由式(8)、式(9)可得到如下變換,逆圓弧時
(4)順圓弧時,如圖2(b)所示,有
圓弧插補算法對各個象限的插補都適用,解決了插補象限坐標軸的變換和進給方向符號判斷問題,大大降低了程序的復雜性,此外,計算簡便,避免了三角函數(shù)的復雜運算,提高了運算速度,但需要重復迭代來計算插值剩余量,不能滿足銑削仿真實時性的要求,影響了加工過程的可靠性和高效性。
對圓弧插補算法進行改進的主要思想是:在原有的圓弧插補基礎上,使用單位步進角作為中間變量,從而在提高運算速度的同時簡化運算程序的復雜性,以提高插補速度。
(1)已知圓弧圓心坐標為M(s,w),半徑為R,則
(3)步數(shù) St為
(4)單位弧長l為
(5)設單位弧度角為θi,則
(6)逆圓弧時,如圖2a所示,有
(7)順圓弧時,如圖2b所示,有
(8)終點判別為:當t>St時,結(jié)束。
與先前圓弧插補算法相比,改進后的插補算法只有每個插補周期各坐標的進給步長的計算公式不同,其余步驟都是一樣的。因此,算法改進后,使得插補算法簡便,避免了復雜的分象限問題,幾何運算簡便、函數(shù)不需多次調(diào)用,可以較為精確快速的進行插補,插補精度可以控制,插補終點判別簡單可行,易于編程,適用于任意圓弧的插補,為插補軟件的開發(fā)提供借鑒指導。
當在工件上進行銑削加工仿真時,若加工所用的實際時間和理論數(shù)控機床加工所用的理論時間一致,則滿足加工仿真的實時性需求。在已知進給步數(shù)St和插補周期T的情況下,走St步的時間即為T×St。這個時間即為理論數(shù)控機床加工時間,將這個時間同實際秒表測量的時間比較,即可得到結(jié)果。如下將針對所提出算法以超重型銑鏜床為例予以驗證。
如圖3所示,在毛坯上進行一條直線的加工測試,已知被測工件的長、寬、高分別為9 600 mm、4 800 mm、4 200 mm。實驗過程中需要讓刀具走刀距離設置的大些,以減小測量者的反應誤差帶來的影響。S為工件上A點到B點距離,A點坐標(800,2 800,4 000)、B點坐標(8 800,2 800,4 000)。實驗加工過程如圖 4所示。
圖3 直線加工Fig.3 Linear processing
圖4 直線加工實例Fig.4 Instance for linear processing
已知周期T=0.08 s,代入公式(1)~(6),經(jīng)過計算可以求得總步長數(shù)St=200,這樣得到理論上總時間為0.08×200=16 s。經(jīng)本文直線仿真算法實際加工,得到實測時間如表1所示。
表1 實測時間Tab.1 Measured time
如圖5表示在毛坯上進行一條圓弧的加工測試,已知被測工件尺寸長、寬、高分別為8 000 mm、4 800 mm、4 200 mm。L為圓弧加工路線,已知A點坐標 (-400,7 200,3 800),B點坐標(2 400,4 400,3 800)。實際加工過程如圖6所示。
由公式(12)至(18)計算得出,加工該圓弧需要的總步長數(shù)St=110,則理論上總時間為0.08×110=8.8 s。經(jīng)本文圓弧仿真算法實際加工,得到實測時間如表2所示。
表2 實測時間Tab.2 Measured time
綜上實驗結(jié)果,加工所用的實際時間和理論數(shù)控機床加工所用的理論時間基本一致,從而證明了本文仿真算法的可行性和實時性。
本文提出的以單位步進角作為中間變量的仿真算法,充分利用了三角函數(shù)的符號性,避免了復雜的分象限問題,從而簡化了函數(shù)調(diào)用的復雜性,使得算法簡便,提高了仿真速度,仿真實驗表明,算法能夠保證加工的實時性,具有一定的應用價值。
[1]畢毓杰.機床數(shù)控技術(shù)[M].北京:機械工業(yè)出版社,2006:50-61.
[2]Yong-Kui L.Algorithm for circle approximation and generation[J].Computer - Aided Design,1993,(3):169-173.
[3]孔德彭,張國平,張玉姣.基于圓弧插補的時間分割插補算法改進[J].機械與電子,2010,(2):33-37.
[4]王忠.時間分割圓弧插補新算法[J].組合機床與自動化加工技術(shù),2006,(5):33-34.
[5]仲文祥.基于單片機的經(jīng)濟型數(shù)控系統(tǒng)逐點比較插補法的程序設計[J].科技信息,2006,12(3):56-57.
[6]許良元,桂貴生,彭丹丹.高速加工中的加減速控制[J].CAD/CAM與制造業(yè)信息化,2005,26(9):66-67.