王海濤 趙東標 陸永華 劉 凱
南京航空航天大學(xué),南京,210016
目前,參數(shù)曲線(曲面)廣泛應(yīng)用于航空、模具等制造領(lǐng)域中,復(fù)雜曲線、曲面的造型技術(shù)發(fā)展迅猛。對于復(fù)雜參數(shù)曲線的插補,傳統(tǒng)數(shù)控系統(tǒng)在規(guī)劃復(fù)雜參數(shù)曲線加工軌跡時,必須將曲線加工刀具路徑處理成大量離散的直線段來編制數(shù)控加工程序[1-2],此種處理方法會導(dǎo)致編程復(fù)雜,效率低,造成數(shù)控代碼在傳輸過程中誤碼率上升,加工狀態(tài)不穩(wěn)定。為了解決這一問題,很多學(xué)者采用泰勒展開式的方法進行直接插補[3],此方法大大簡化了編程,提高了效率,但是由于速度有波動而很難保證精度。Yong等[4]綜合了系統(tǒng)允許輪廓誤差條件下進給速度的變化情況,采用二分法設(shè)計插補中加減速控制方法,保證了插補時加速度在系統(tǒng)允許范圍內(nèi),缺點在于這種方法只針對特定的加減速特性曲線,不能適應(yīng)曲線復(fù)雜多變的特性。Nam等[5]提出了加加速度限制條件下的進給速度的加減速變化控制方法,當加速度、加加速度超過系統(tǒng)性能的允許范圍時,采用均勻變化的加速度曲線來控制進給速度的突變,減少了速度的突變對系統(tǒng)性能的影響,但有些情況下加工誤差仍然難以滿足精度要求。Du等[6]提出了一種自適應(yīng)的前瞻插補算法,在對速度進行自適應(yīng)控制的同時進行前瞻控制,找出速度變化超過允許范圍的敏感點,提前進行加減速規(guī)劃,盡量避免速度變化過大對機床產(chǎn)生沖擊,但是這種方法沒有對加加速度進行控制。曹宇男等[7]設(shè)計了一種基于S形加減速的前瞻控制算法,算法中設(shè)定了最大前瞻段數(shù),并根據(jù)實際插補軌跡的幾何特性實現(xiàn)了加減速的控制。但是在對復(fù)雜曲線進行加減速控制時,其前瞻距離的確定有一定的困難。
本文在以上研究基礎(chǔ)上,提出了一種實時參數(shù)曲線插補的柔性加減速前瞻算法,首先根據(jù)插補精度進行速度自適應(yīng)控制,通過將曲線劃分為曲率上升點和曲率下降點來對曲線進行前瞻處理,在加減速過程中,在使用S形柔性加減速算法的同時,在曲率頻繁變化處對加減速進行重新規(guī)劃,然后通過自行開發(fā)的數(shù)控系統(tǒng)驗證了算法的可行性。
參數(shù)曲線的方程可以表示成如下形式[8](以三維曲線為例,u為參變量):
C(u)=(x(u),y(u),z(u))
(1)
其中,u∈[0,1],通過泰勒展開,經(jīng)過變化,可以近似得到插補中參變量的計算方程:
(2)
式中,T為插補周期;v為進給速度。
在插補過程中,限定弓高誤差為δ,限定系統(tǒng)的最大進給速度為vmax,插補點的實際弓高誤差為ρi,當遇到大曲率點,以vmax加工超過限定弓高誤差時,就需要進行減速,則相應(yīng)插補點的進給速度V(ui)為
(3)
因此,進給速度V(ui)就隨δ和ρi的變化自適應(yīng)地調(diào)整,調(diào)整規(guī)則如下:
(4)
但是對于曲率急劇變化的點,按照此種規(guī)則調(diào)整就會引起速度的急劇變化,給機床帶來沖擊。
為了解決上述問題,就需要在曲率變化點對速度進行前瞻控制,使進給速度在滿足弓高誤差的同時滿足柔性加減速的要求。
S形加減速方法作為一種數(shù)控系統(tǒng)插補的柔性加減速方法,能夠有效地避免速度和加速度的突變,提高數(shù)控系統(tǒng)的加工精度,但是S形加減速算法比較復(fù)雜,特別對于一些變化復(fù)雜的曲線,頻繁地加減速會加大系統(tǒng)的計算量,因此,本文使用三角函數(shù)加減速方法對曲線上頻繁加減速區(qū)域進行規(guī)劃。
對于頻繁加減速區(qū)域的速度規(guī)劃有以下兩種情況:加速+減速→加速,如圖1所示;加速+減速→減速,如圖2所示。
圖1 參數(shù)曲線前瞻加速規(guī)劃前
圖2 參數(shù)曲線前瞻減速規(guī)劃前
2.1.1加速+減速→加速情況
在曲率頻繁變化處使用S形加減速方法規(guī)劃速度曲線如圖1所示,此時速度頻繁變化,S形加減速方法計算復(fù)雜,容易加重系統(tǒng)負荷。如果采用三角函數(shù)的加減速方法,如圖3所示,則可以大大簡化加減速計算,其具體方法如下。
圖3 參數(shù)曲線前瞻加速規(guī)劃后
在曲線的規(guī)劃中采用的三角函數(shù)曲線為
(5)
分析整個規(guī)劃過程,其速度變化方程為
(6)
式中,ta_act為規(guī)劃后實際加速時間。
則其加速度、加加速度為
(7)
(8)
在三角函數(shù)加速過程中,其加加速度和加速度的最大值為
(9)
(10)
由于速度規(guī)劃前和速度規(guī)劃后兩點間的距離是不變的,且其速度規(guī)劃兩點間的距離Li可由規(guī)劃前的加減速方程得到,即
(11)
則可得到加速時間ta_act:
(12)
2.1.2加速+減速→減速情況
在加速+減速→減速的規(guī)劃中,使用的三角函數(shù)的減速特性曲線為
(13)
前瞻減速規(guī)劃前參數(shù)曲線如圖2所示,規(guī)劃后如圖4所示。
圖4 參數(shù)曲線前瞻減速規(guī)劃后
所謂前瞻,就是對要插補的參數(shù)曲線進行預(yù)插補處理,通過預(yù)插補找出插補路徑上的速度敏感點及其對應(yīng)的進給速度以及插補距離,然后對進給速度進行規(guī)劃,以便提早進行加減速處理,以滿足誤差及機床的性能要求。
在前瞻的插補預(yù)處理中,將曲線分為兩種情況——曲率上升和曲率下降。曲率上升時說明在插補過程中要遇到拐點,需要進行減速處理,而曲率下降說明從拐點開始速度開始增大。因此將前瞻的預(yù)插補分為曲率上升模塊和曲率下降模塊。當前瞻開始時的速度vstart (1)前瞻中曲率上升模塊。當前瞻的初始速度vstart=vmax時,說明此時預(yù)插補的加工速度處于最大階段,在預(yù)插補的過程中有可能出現(xiàn)曲率上升階段,當曲率上升時,弓高誤差變大,進給速度就要減小,進入減速階段;另外也有可能在預(yù)插補過程中曲線形狀不發(fā)生大的變化,進給速度也不發(fā)生變化,因此,對于此種情況其前瞻預(yù)讀距離也根據(jù)曲線形狀動態(tài)變化,如果加工速度不發(fā)生變化,則預(yù)讀距離為從vmax減速到0所需要的距離,如果此時遇到拐點,曲率發(fā)生變化,則前瞻距離預(yù)讀至整個拐點的曲率最大處。在前瞻過程中首先通過預(yù)插補分析各個插補點,以最大加工速度vmax來計算各個插補點的位置,然后求出其弓高誤差,并且比較所得弓高誤差與系統(tǒng)允許最大弓高誤差δ的差值,如果在允許范圍內(nèi),則繼續(xù)比較下一個插補點;否則,根據(jù)式(4)確定此點的最大加工速度,并且分析此點是否仍舊處于曲率增大的范圍,如果是,則繼續(xù)分析比較下一個插補點,直到找到曲率最大點,并且記錄此點的位置ui及最大的約束速度vend。如果在前瞻預(yù)讀的從vmax減速到0所需要的距離中,沒有出現(xiàn)曲率波動點,則記錄最后前瞻插補點ui。其具體前瞻過程如圖5所示。 圖5 參數(shù)曲線柔性加減速曲率上升前瞻模塊 (2)前瞻中的曲率下降模塊。當前瞻的初始速度vstart 首先以速度v=vmax預(yù)插補并分析各個插補點的弓高誤差,因為此時處于曲率下降的階段,所以弓高誤差應(yīng)該是一個變小的過程,所以,通過計算可以找到一個v=vmax且滿足弓高誤差(即ρi<δ)的插補點,這樣就可以把曲率下降的加工路徑的速度規(guī)劃出來了。但是當插補路徑變化復(fù)雜,需要頻繁加減速的時候,有時弓高誤差約束速度還未達到vmax,可能又會有新的拐點出現(xiàn),曲率就會轉(zhuǎn)而變大。如果出現(xiàn)這種情況,則找到新的敏感點的最大曲率處,表明此段前瞻路徑是速度頻繁加減速區(qū)域,設(shè)定Fv_plan=1,表明此路徑需要根據(jù)上文使用三角函數(shù)加減速方法對速度進行規(guī)劃。因此,其前瞻距離的大小隨曲線曲率的變化自適應(yīng)改變,具體的前瞻過程如圖6所示。圖5和圖6中,L為前瞻預(yù)讀距離,本文中選取S形加減速從vmax減到0的距離;uend為前瞻結(jié)束后尋找到的速度敏感點,如果在此段前瞻距離上沒有拐點,則該點就是前瞻距離的最后插補點;vend為滿足弓高誤差的速度敏感點的速度;vi為預(yù)插補點上的進給速度;s為實際前瞻的距離;l為每個插補周期內(nèi)的位移量;ρi為預(yù)插補點上的弓高誤差;ρmax為記錄的前瞻預(yù)插補過程中的最大曲率;Fv_plan為速度重新規(guī)劃標志,當需要對頻繁加減速區(qū)域進行重新速度規(guī)劃時,F(xiàn)v_plan=1,否則Fv_plan=0。 圖6 參數(shù)曲線柔性加減速曲率下降前瞻模塊 這樣,就可以得到整個前瞻路徑上的曲率變化的特征,并且據(jù)此來對速度進行規(guī)劃。 為了驗證算法的可行性,仿真加工一段三次有理樣條曲線(圖7)。插補周期設(shè)為4ms,最大速度vmax=100mm/s,最大加速度amax=1m/s2,最大加加速度jmax=20m/s3,曲線的控制頂點數(shù)據(jù)如表1所示。 圖7 加工的NURBS曲線 表1 加工路徑數(shù)據(jù)點 如圖8所示,采用自適應(yīng)插補方法能將弓高誤差控制在允許范圍之內(nèi),但是為了控制誤差,未使用前瞻插補算法和使用前瞻插補算法,速度的變化是不相同的。在未使用前瞻插補算法時,不能提前知道曲線的拐點,因此無法使用S形加減速算法,其速度變化如圖9a所示,當遇到高曲率點時其速度突然變小,因此帶來了很大的加速度變化,如圖10a所示,其最大加速度竟然接近10m/s2,整整超出了限定值的9倍多,這必然會給機床帶來很大沖擊。 圖8 參數(shù)曲線加減速弓高誤差變化曲線 通過圖9b使用前瞻算法的速度變化圖、圖10b使用前瞻算法的加速度變化圖和圖11可以看出,使用具有前瞻功能的插補算法,在良好控制弓高誤差的同時,速度、加速度、加加速度都在限定范圍內(nèi),滿足了機床性能要求。 (a)未用前瞻算法(b)使用前瞻算法圖9 參數(shù)曲線加減速速度變化曲線 (a)未用前瞻算法的加速度曲線(b)使用前瞻算法的加速度曲線圖10 參數(shù)曲線加減速加速度變化曲線 圖11 參數(shù)曲線加減速加加速度變化曲線 在加工過程中,使用自主研發(fā)的基于RT-linux的數(shù)控系統(tǒng),采用R2.5mm的高速鋼球頭銑刀,在此相同的加工參數(shù)下,圖12a為未采用前瞻控制算法得到的加工零件圖,圖12b為采用前瞻控制算法得到的加工零件圖。選取其中兩處進行放大比較,如圖13、圖14所示。 (a)未采用前瞻控制算法(b)采用前瞻控制算法圖12 加工試件 (a)未采用前瞻控制算法(b)采用前瞻控制算法圖13 試件1處局部放大圖 (a)未采用前瞻控制算法(b)采用前瞻控制算法圖14 試件2處局部放大圖 圖13a和圖14a所示為使用傳統(tǒng)的加減速方法加工的零件。可以看出其加工軌跡上有加工缺陷,表面比較粗糙,并且有明顯接刀痕。而采用前瞻控制算法加工獲得的試件如圖13b和圖14b所示,相比傳統(tǒng)方法而言,使用前瞻控制算法加工獲得的試件,其加工質(zhì)量提高了,加工缺陷減少了,加工表面也更加光滑了。 本文提出了一種參數(shù)曲線的S形加減速和三角函數(shù)加減速的混合型柔性加減速前瞻控制方法,在前瞻控制中以S形加減速為基礎(chǔ),并在曲率頻繁變化處使用三角函數(shù)的加減速方法來簡化計算。在前瞻過程中,采用將路徑根據(jù)曲率變化分為曲率上升段和曲率下降段的方法來對前瞻路徑進行劃分,這樣不僅僅能適應(yīng)參數(shù)曲線的復(fù)雜變化,而且降低了計算的復(fù)雜性,滿足了數(shù)控系統(tǒng)的實時性要求。通過仿真和實驗可知,此種前瞻方法提高了加工質(zhì)量,取得了較為理想的結(jié)果。 [1] 茍琪.MasterCAM五軸加工方法[M]. 北京: 機械工業(yè)出版社, 2005. [2] 吳光琳. 組合曲面實時插補關(guān)鍵技術(shù)研究[D]. 上海: 上海交通大學(xué), 2000. [3] Shpitalni M, Koren Y, Lob C C. Realtime Curve Interpolators[J]. Computer-Aided Design, 1994, 26(11): 832-838. [4] Yong T, Narayanasami R. A Parametric Interpolation with Confined Chord Error Acceleration and Deceleration for NC Machining[J]. Computer-Aided Design, 2003, 35(13): 1249-1259. [5] Nam S H, Yang M Y. A Study on a Generalized Parametric Interpolator with Real-time Jerk-limited Acceleration[J]. Computer-Aided Design, 2004, 36(1): 27-36. [6] Du Daoshan, Liu Yadong, Yan Cunliang,et al. An Accurate Adaptive Parametirc Curve Interpolator for NURBS Curve Interpolation[J]. Int. Adv. Manuf. Technol.,2007,32:999-1008. [7] 曹宇男,王田苗,陳友東, 等. 插補前S加減速在CNC前瞻中的應(yīng)用[J].北京航空航天大學(xué)學(xué)報,2007,33(5):594-599. [8] 施法中. 計算機輔助幾何設(shè)計與非均勻有理B樣條 [M]. 北京:高等教育出版社,2001.3 參數(shù)曲線柔性加減速前瞻控制算法仿真與實驗
4 結(jié)語