金艷玲,楊東武,姚東成
(1.中航工業(yè)西安飛行自動控制研究所,西安 710065;2.西安電子科技大學機電工程學院,西安710071)
目前,一般的數(shù)控機床只具備直線插補和圓弧插補功能。當加工由雙曲線、橢圓、擺線等非圓曲線組成的平面輪廓時,就得用若干直線段或圓弧段去逼近其輪廓,并計算出逼近線段與非圓曲線的交點或切點,即插補節(jié)點。采用直線段逼近非圓曲線,一般數(shù)學處理較簡單,但節(jié)點計算時的坐標數(shù)據(jù)較多,且由于各節(jié)點連接處存在尖角,刀具在尖角處不能連續(xù)對零件進行切削,導致零件表面出現(xiàn)硬點或刀痕,從而降低加工表面質(zhì)量。采用圓弧段逼近非圓曲線,不僅可大大減少程序段的數(shù)目,而且當采用彼此相切的圓弧段來逼近非圓曲線時,能夠使工件表面整體光滑,有利于加工表面質(zhì)量的提高。
用圓弧逼近數(shù)控加工曲線的方法分為兩大類,即細分曲線(即離散點列或列表曲線)的插值或擬合[1-2]以及自由型曲線的擬合[3-5]。自由型曲線擬合方法是在已知零件輪廓曲線方程時較常采用的插補方法,具有誤差控制精準的優(yōu)點。本文討論自由型曲線的擬合方法。
曲率圓法是對自由型曲線擬合的基本方法,有時也被稱為等誤差圓弧逼近法,其原理是通過控制所生成的插補圓弧段與實際工件輪廓曲線均位于曲率圓與偏差圓之間,以使圓弧插補的逼近誤差總小于或等于插補容差。相比與其它圓弧插補方法,它具有編程時算法設計簡單,誤差控制直接的優(yōu)點,成為數(shù)控編程類教材中圓弧插補的基本方法[6]。采用彼此相切的圓弧段來逼近非圓曲線時,能夠使工件表面整體光滑,加工質(zhì)量較高。文獻[3-4]中的整體最優(yōu)雙圓弧逼近方法計算參數(shù)多,計算量大,程序設計復雜。文獻[7-9]中變步長雙圓弧逼近方法的誤差控制采用后驗方式,即先構(gòu)造圓弧后通過在插補區(qū)間取點的方式檢驗誤差,通過誤差檢驗結(jié)果實時調(diào)整步長并重新生成圓弧;方法中的步長調(diào)整沒有規(guī)律可循,導致每個插補區(qū)間的圓弧生成與誤差檢驗可能會多次反復,數(shù)據(jù)處理過程的計算量較大。
借鑒曲率圓法中的誤差控制原理,本文給出非圓曲線輪廓的一種三圓弧逼近方法。在介紹方法基本思想的基礎上,給出圓弧插補節(jié)點及圓弧參數(shù)的計算步驟,并進行方法的可行性分析。
設平面輪廓曲線具有顯式表達式,且加工時的插補容差為δa>0。在曲率極值點、拐點以及曲率非連續(xù)點處將整個輪廓曲線劃分為多段,這樣,每一局部段就是曲率單調(diào)的。不妨設某一段曲線)AP的曲率是單調(diào)下降的,如圖1所示。
圖1 三圓弧插補節(jié)點的確定
設點B(xB,yB)為曲線上的一點,記該點的曲率圓圓心為OB,曲率半徑為RB,則曲率圓圓心OB(ξB,ηB)及半徑RB的計算公式為:
式中,yB=f(xB)為點B的縱坐標,y'B與y″B分別為曲線y=f(x)在點B處的一階和二階導數(shù)值。
記點A的坐標為(xA,yA),則點B(xB,yB)的坐標可通過求解方程式:
得到。
為求解以上非線性方程式(2),設點D(xD,yD)為曲線上的動點,且其曲率圓圓心為OD,曲率圓半徑為RD,同時,構(gòu)造函數(shù):
則函數(shù)z1的零點即為點B的橫坐標xB。
圖2 第二個插補節(jié)點的確定
式(5)和式(6)表明,當動點D由點A運動到點P的過程中,函數(shù)z1單調(diào)遞增。同時考慮到,當動點D位于點A時,函數(shù)z1的值取負值-δa。因此,只要曲線的弧長足夠,函數(shù)z1的零點存在且唯一,即就是點B存在且唯一。
點B的坐標確定后,由式(1)可求得曲率圓圓心OB(ξB,ηB)以及半徑RB。類似地,若構(gòu)造函數(shù):
且取x∈[xB,xP],則函數(shù)z2的零點即為點C的橫坐標xC。容易證明,函數(shù)z2同樣單調(diào)遞增,且在曲線的弧長足夠的情況下,在區(qū)間[xB,xP]上存在且僅存在唯一的零點。于是,點C可唯一確定。
當圓弧插補節(jié)點A和C確定后,連續(xù)相切的三個插補圓弧段分別構(gòu)造如下:
(1)第一段插補圓弧為過A點且與點A和點B處的曲率圓均相切的圓弧。
(2)第三段插補圓弧為過C點且與點C和點B處的曲率圓均相切的圓弧。
(3)設第一段與第三段插補圓弧與點B處的曲率圓分別相切于點E和點F,則點B處的曲率圓上位于點E和點F之間的圓弧段為第二段插補圓弧。
圖3 插補圓弧的構(gòu)造
如圖3所示。若記第一段和第三段插補圓弧(點線)的圓心分別為O1(ξ1,η1)和O3(ξ3,η3),半徑分別為R1和R3,且點A和點C處的曲率圓圓心分別為OA(ξA,ηA)和OC(ξC,ηC),半徑分別為RA和RC,則應有點A、OA、O1三點共線,點E、O1、OB三點共線,且點C、O3、OC三點共線,點F、OB、O3三點共線,且有:
曲率圓圓心OA和OC的坐標以及RA和RC可參照式(1)計算。插補圓弧半徑R1和R3通過求解以下兩個一元二次方程得到,方程的根僅取R1>RA和R3<RC。
插補圓弧圓心O1和O3的坐標計算公式為:
下面證明點E必位于圓弧段 內(nèi)。如前所述,輪廓曲線的漸屈線應該是凹向一致且光滑連續(xù)的。由漸屈線的性質(zhì)知:
采用反證法進行證明。假設存在過A點且與點A和點B處的曲率圓均相切的圓弧',它與點B處的曲率圓相切于點E',且點E'位于圓弧段上。記圓弧的圓心為O',且直線OO'與直線OB的A1B交點為點G,見圖4。特別地,當點E'與點B重合時,圓心O1'與點G重合。由于圓弧 與點A和點B處的曲率圓分別相切于點A和點B,因此:
結(jié)合式(13)~(15),可得:
顯然,式(16)與式(17)矛盾。
類似地,可以證明點F必位于圓弧段內(nèi)。因此,所作三圓弧的最大插補誤差在容差范圍之內(nèi),即該三圓弧逼近方法是可行的。
圖4 三圓弧相切點的位置
對于任意給定的平面輪廓曲線,三圓弧逼近的總體步驟為:首先在曲線的曲率極值點、拐點以及曲率不連續(xù)點處將整個輪廓曲線劃分為多段,并通過一定的旋轉(zhuǎn)或鏡像變換使每個曲線段都滿足曲率連續(xù)且單調(diào)遞減的條件。其次,對每個曲線段分別應用三圓弧逼近方法生成所需的擬合圓弧樣條曲線。最后,將所生成的圓弧樣條曲線做相應的反變換以連接各部分形成整體輪廓的圓弧樣條曲線。
對于每一個經(jīng)變換后的曲線段(直線段除外),三圓弧逼近的算法流程如下:
(1)記曲線段的起點為A,終點為P,并計算相應的曲率圓圓心OA(ξA,ηA)和OP(ξP,ηP),以及曲率圓半徑RA和RP。以k表示當前三圓弧樣條曲線段的序號,并令k=1。
(2)分別計算式(3)所定義的函數(shù)z1在點A及點P處的函數(shù)值,即z1(xA)和z1(xP)。若函數(shù)值z1(xA)和z1(xP)異號,則在區(qū)間[xA,xP]上求解該非線性函數(shù)的零點并計算得到相應的點B;否則,轉(zhuǎn)至第⑤步。
(3)計算點B處的曲率圓圓心OB(ξB,ηB)和半徑RB,以及式(7)所定義的函數(shù)z2在點B及點P處的函數(shù)值,即z2(xB)和z2(xP)。若函數(shù)值z2(xB)和z2(xP)異號,則在區(qū)間[xB,xP]上求解該非線性函數(shù)的零點并計算得到相應的點C;否則,轉(zhuǎn)至第⑥步。
(4)計算點C處的曲率圓圓心OC(ξC,ηC)和半徑RC;由式(9)~(12)分別計算當前三圓弧中第一段和第三段插補圓弧的半徑R1、R3以及圓心O1和O3的坐標;由OB、O1及點E的位置關(guān)系計算點E的坐標,由OB、O3及點F的位置關(guān)系計算點F的坐標,并保存R1、RB和R3以及點A、C、O1、OB、O3、E和F的信息后,令k=k+1,并將點C記作點A返回到第②步繼續(xù)執(zhí)行。
(5)將點P記作點B并依據(jù)式(9)和(11),計算R1和點O1,由OB、O1及點E的位置關(guān)系計算點E的坐標,保存R1和RB以及點A、O1、OB、和E的信息后退出。
(6)將點P記作點C并由式(9)~(12)分別計算當前三圓弧中第一段和第三段插補圓弧的半徑R1、R3以及圓心O1和O3的坐標;由OB、O1及點E的位置關(guān)系計算點E的坐標,由OB、O3及點F的位置關(guān)系計算點F的坐標,并保存R1、RB和R3以及點A、C、O1、OB、O3、E和F的信息后退出。
一橢圓曲線零件,其長半軸為50mm,短半軸為30mm,橢圓方程為:
因橢圓關(guān)于X軸和Y軸對稱,選第二象限進行圓弧插補,則所選曲線段的曲率連續(xù)且單調(diào)遞增,無需進行圖形的旋轉(zhuǎn)或鏡像變換。
設插補容差為δa=0.01mm,采用文中所提的三圓弧逼近方法,得到的三圓弧7組共20段圓弧,圓心坐標及半徑如表1所示。
表1 各圓弧段的中心及半徑 (單位:mm)
(續(xù)表)
(1)論文提出了一種三圓弧逼近非圓曲線的方法,并證明了該方法的可行性。
(2)論文所提方法采用曲率圓以及相應的偏差圓來確定插補節(jié)點并構(gòu)造連續(xù)相切的圓弧,計算簡單,誤差控制直接,便于工程應用。
[1]徐建明,劉飛,何援軍,等.離散點列的局部雙圓弧逼近[J].東華大學學報(自然科學版),2005,31(4):62 -65.
[2]樂英,韓慶瑤,王璋奇.數(shù)控加工中非圓曲線的最小二乘圓弧逼近[J].華北電力大學學報,2006,33(6):102 -104.
[3]虞銘財,楊勛年,汪國昭.整體最優(yōu)雙圓弧擬合[J].高校應用數(shù)學學報A輯,2004,19(2):225-232.
[4]蔡慧林,戴建強.基于遺傳算法的相切圓弧逼近非圓曲線算法[J].蘭州交通大學學報(自然科學版),2007,26(6):5-9.
[5]岳秋琴,蔣幸幸.數(shù)控編程中圓弧逼近非圓曲線的數(shù)據(jù)處理[J].機械研究與應用,2003,16(3):56-60.
[6]張洪江,侯書林.數(shù)控機床與編程[M].北京:北京大學出版社,2009.
[7]陳明君,趙清亮,董申,等.基于雙圓弧步長伸縮數(shù)控插補非圓曲線算法的研究[J].機械工程學報,2003(39):111-116.
[8]張莉彥,邱輝,陳虎,等.平面曲線的雙圓弧最佳逼近[J].組合機床與自動化加工技術(shù),2002(12):34-36.
[9]關(guān)耀奇.雙圓弧逼近在橢圓零件加工中節(jié)點值的求解[J].組合機床與自動化加工技術(shù),2003(1):59-60.