在數控系統中,插補算法是生成加工軌跡的一個*基本的子程序,在很大程度上決定了數控機床的加工精度和*大進給速度。傳統DDA圓弧插補計算過程簡單,但是用切線逼近圓弧造成誤差。本文提出了一種新的圓弧DDA插補算法,該改進算法使用割線逼近圓弧,可以降低徑向誤差,插補精度較高,誤差分析結果表明DDA圓弧插補改進算法具明顯的優勢,可以有效提高計算精度和計算效率。
1傳統DDA圓弧插補算法在用戶編制的零件程序中,對于圓弧插補的程序段,提供了圓弧在XZ平面中的起點、終點以及圓心相對于起點的偏移量I 0、K 0值?,F以**象限的順圓為例,說明傳統DDA圓弧插補算法的實現。
在機床XZ坐標系中,設圓弧起點為A,圓心為C,坐標軸原點平移A點后構成IK坐標系。IK坐標系原點A即切割槍位置,隨著切割槍而移動,圓心C相對于原點A的坐標值為(K,I)。第i次迭代之后,切割槍按照插補命令移動到A i點,這時圓心C的坐標為(K i,I i)。在第i+1次迭代中,切割槍將沿著切線A i C′方向移動,于是將按斜率為-K i/I i的切線進行插補迭代一步,切割槍移動到A i+1點。此時圓心C相對于A i+1,的坐標為(I i+1,K i+1)。
式(1)X和Z軸的進給步長可以根據編程速度按斜率為-K i/I i;的直線A i C′計算如下:△X i+1=v(3)因此,**象限順圓的傳統DDA圓弧插補迭代公式如下式(4)I i=I i-1-△X i K i=K i-1-△Z i)式(5)X i=X i-1-△X i Z i=Z i-1-△Z i)式(6)上述公式中**個公式用來計算第I次插補周期中坐標軸的進給步長,第二個公式用來修正圓心相對于切割槍位置的現時坐標,第三個公式用來計算切割槍應該達到的命令位置。圖2中軌跡是根據傳統DDA圓弧插補算法形成的軌跡曲線,包括8個插補點。由切線逼近圓弧的插補算法本身的誤差所引起的徑向誤差較大。
2DDA圓弧插補改進算法及其實現傳統DDA圓弧插補計算過程簡單,但是用切線逼近圓弧造成誤差。該改進算法使用割線逼近圓弧,可以降低徑向誤差。改進算法的思想如圖3所示,下面以順圓為例說明。
IK坐標系原點A即切割槍位置,隨著切割槍而移動,圓心C相對于原點A的坐標值為(K,I)。第i次迭代之后,切割槍按照插補命令移動到A i點,這時圓心C的坐標為(K i,I i)。
在第i+l次迭代中,切割槍將移動到A i+1點。A i A i+1是輔助圓A i DA i+1的割線和輔助圓EBF的切線,R 1、R 2分別是輔助圓A i DA i+1和EBF的半徑。
R是插補圓弧的半徑,因為內外均差割線可以降低徑向誤差,所以由DDA圓弧插補原理可得G點坐標(Z g,X g)Z x=Z i+A i G因為G、B、C在一條直線上,C點在ZX坐標系下坐標為(Z c,X c},所以B點坐標(Z b,X b)為Z b=Z c+Z g式(15)因為B為A i A i+1的中點,所以A i+1的坐標(Z i+1,X i+1)為Z i+1=2Z b-Z i X i+1=2b-X i)式(16)如圖4所示在插補的開始和結束位置,根據DDA插補原理,使用插補圓弧的切線連接插補圓弧和逼近圓弧的割線。
設圓弧插補起點為P o(Z o,X o),終點為P e(Z e,X e),圓心相對于圓弧起點的偏差為K 0和I 0,圓心相對于圓弧終點的偏差為K e和I e,圓弧半徑為R,進給速度為v,插補周期為T,則改進圓弧插補算法為(1)計算輔助圓半徑R 1和R 2 R 1=R2)計算插補圓弧起點和終點處的切線斜率在起點處:k 0=-k 0/I 0式(19)在終點處:k e=-k e/I e式(20)(3)計算插補圓弧起點和終點的切線與外側輔助圓的交點A 1和A n的坐標A 1的坐標:Z 1=R 1 2-R 2K 0/R+Z 0 X 1=-R 1 2-R I 0/R+X 0
式(22)(4)計算**步進給量△Z 1=Z 1-Z 0式(23)△X 1=X 1-X 0式(24)(5)修正圓心坐標K 1=K i-1-Z i I 1=I i-1-X i(式(25)(6)計算算輔助插補步長L=vTR 1 2R 2式(26)(7)根據式(13-16)計算第i步的命令位置A i(Z i,X i)(8)計算進給量△Z i=Z i-Z i-1式(27)△X i=X i-X i-1式(28)(9)判別是否到達終點A n,若是,轉項(10),否則i加1后轉項(5)(10)結束軌跡是改進后的DDA圓弧插補算法形成的軌跡曲線,對比可知改進后的DDA圓弧插補算法的徑向誤差比原算法小。
3DDA圓弧插補改進算法誤差分析以下的誤差分析主要針對DDA圓弧插補改進算法的徑向誤差與弦線逼近圓弧的弦線誤差進行比較。在相同的步長δ和相同的圓弧半徑R條件下,e r1為弦線逼近圓弧的弦線誤差,e r2為DDA圓弧插補改進算法的徑向誤差。如所示,在弦線逼近圓弧時e r1的計算公式為e r1=R(1-δ2 4R 2)式(29)如所示,在DDA圓弧插補改進算法中的計算公式為e r2=Rδ2 8R 2式(30)令△e r=e r1-e r2 R=1-1-δ2 4R 2 "-δ2 8R 2式(31)K=δR式(32)則△e r=1-1-k 2 4-k 2 8式(33)函數圖像如所示。當0<k≤2時,△e r>0,即DDA圓弧插補改進算法的徑向誤差小于弦線逼近圓弧的弦線誤差。而且在k>1時,即切割小半徑圓弧時前者有明顯的優勢。另外在DDA圓弧插補改進算法中不包含超越函數,可以有效提高計算精度和計算效率。
4小結本文介紹了數控系統所使用的圓弧插補算法。
其中提出了一個基于傳統DDA圓弧插補算法的改進算法,并通過比較證明了該算法相對于弦線插補算法的優越性。實踐表明DDA圓弧插補改進算法精簡了計算步驟,提高了計算速度。