專利名稱:數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法
技術(shù)領域:
本發(fā)明涉及數(shù)控機床系統(tǒng)領域,特別涉及數(shù)控機床運動控制技術(shù)領域,具體是指一種數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法。
背景技術(shù):
制造業(yè)是國民經(jīng)濟的基礎產(chǎn)業(yè),制造業(yè)的水平高低是衡量一個國家工業(yè)發(fā)達程度的重要標志。數(shù)控機床質(zhì)量水平的高低,關系著國家制造業(yè)水平的高低。
同時,非均勻有理B樣條(Nurbs,Non-Uniform Rational B-Spline)曲線是一種具有局部性的、形式簡單的描述空間中曲線的方法,其在CAD軟件和CAM軟件中經(jīng)常用于曲線曲面造型設計。
雖然在實際生產(chǎn)中,數(shù)控機床對形狀的加工,都是采用“線段構(gòu)成平面”的方法,但是目前還沒有成熟的技術(shù)將該Nurbs曲線方法用于數(shù)控系統(tǒng)的插補部分。因為現(xiàn)有技術(shù)中,將該方法用于曲線曲面造型的時候,主要關注點在于對于形狀的刻畫,而不像將其用于制造加工時需要關心其實際的使用環(huán)境。而在進行數(shù)控機床刀路的插補過程中,需要考慮速度、加速度規(guī)劃和精度控制的要求。這些方面目前還沒有一個比較好的方法,這樣就給人們的生產(chǎn)和工作帶來了一定的不便。
發(fā)明內(nèi)容
本發(fā)明的目的是克服了上述現(xiàn)有技術(shù)中的缺點,提供一種能夠巧妙利用Nurbs曲線對刀路進行控制、過程快速高效、操作簡單快捷、工作性能穩(wěn)定可靠、適用范圍較為廣泛的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法。
為了實現(xiàn)上述的目的,本發(fā)明的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法如下 該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其主要特點是,所述的方法包括以下步驟 (1)將數(shù)控機床系統(tǒng)所需要加工的形狀采用非均勻有理B樣條曲線進行描述; (2)將所述的非均勻有理B樣條曲線在滿足系統(tǒng)預設的精度要求的條件下進行離散化,并形成一位置點列; (3)對所述的位置點列中的各點在滿足系統(tǒng)預設的加速度和精度要求的條件下進行速度規(guī)劃,并得到各點所對應的速度; (4)根據(jù)所述的位置點列和其中各點所對應的速度形成插補序列; (5)根據(jù)所述的插補序列產(chǎn)生刀路控制信號并發(fā)送給數(shù)控機床系統(tǒng)中的動力裝置。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的非均勻有理B樣條曲線根據(jù)以下公式表示為一分段有理多項式矢函數(shù) 其中,p(u)為位置矢量,di為控制頂點,n為控制頂點總數(shù),ωi為與控制頂點di相聯(lián)系的權(quán)因子,k為非均勻有理B樣條曲線的階次,Ni,k(u)為由節(jié)點矢量V={v0,v1,…,vn+k+1}按以下的德布爾考克斯遞推公式?jīng)Q定的k次規(guī)范B樣條基函數(shù)
其中,對V={V0,v1,...,Vn+k+1}中的元素進行單位化后得到0=v0≤…≤vi ≤vi+1≤…≤vn+k+1=1,u為參數(shù),且0≤u≤1。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的將非均勻有理B樣條曲線進行離散化并形成一位置點列,包括以下步驟 (21)根據(jù)以下公式得到初始參數(shù)序列 U0={0,d,2d,3d,…,(N-1)d,1}; 其中,為步長,N為正整數(shù),該序列的通項為ui=u(i)=(i-1)d,i=1,2,...N; (22)將所述的初始參數(shù)序列U0作為節(jié)點矢量,根據(jù)所述的非均勻有理B樣條曲線的分段有理多項式矢函數(shù)計算得到初始參數(shù)序列U0所對應的初始位置點列 P0={p(u1),p(u2),p(u3),…,p(un)},ui∈U,0<i<n; (23)依次遍歷每個ui,根據(jù)以下公式計算ui,i+1 (24)根據(jù)所述的非均勻有理B樣條曲線的分段有理多項式矢函數(shù)計算得到ui,i+1所對應的位置p(ui,i+1) (25)判斷p(ui,i+1)到p(ui)和p(ui+1)之間的連線的距離是否小于系統(tǒng)預設的精度誤差ε; (26)如果是,則表明ui和ui+1的選取合理,對ui的處理結(jié)束; 如果否,則將ui,i+1加入初始參數(shù)序列中,得到 U={...,ui,ui,i+1,ui+1…}; 同時,將p(ui,i+1)加入初始位置點列中,得到 P={…,p(ui),p(ui,i+1),p(ui+1),…}; 然后用ui+1代替ui,i+1。
重復上述步驟(23)~(26),直到找到一個ui,i+1,使得p(ui,i+1)到p(ui)和p(ui+1)之間的連線的距離小于系統(tǒng)預設的精度誤差ε; (27)重復上述步驟(23),直到遍歷所有的ui,并將得到的P作為位置點列返回。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的精度誤差ε為0.001毫米~0.05毫米。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的對位置點列中的各點進行速度規(guī)劃并得到對應的速度,包括以下步驟 (31)根據(jù)以下公式計算出所述的位置點列P中每個點p(ui)所對應的曲率半徑ri 其中,a、b、c分別為由p(ui-1)、p(ui)、p(ui+1)所構(gòu)成的三角形的三邊長度, (32)根據(jù)以下關系式計算出所述的位置點列P中每個點p(ui)所對應的最大運行速度vix 其中,r0為參考半徑,v0為r0情況下所允許最大參考速度。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的根據(jù)位置點列和其中各點所對應的速度形成插補序列,包括以下步驟 (1)使用以下公式表示所述的位置點列中的相鄰兩點之間的插補段增量信息 (p(ui+1)-p(ui),vix);其中i=0,1,…,n-1; (2)根據(jù)各個插補段增量信息形成插補序列Sn Sn={(p(u1)-p(u0),v0x),(p(u2)-p(u1),v1x),(p(u3)-p(u2),v2x),…,(p(un)-p(un-1),v(n-1)x)}。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的根據(jù)插補序列產(chǎn)生刀路控制信號,包括以下步驟 (1)依次在每個系統(tǒng)預設的控制周期內(nèi)將位置增量信息p(ui+1)-p(ui)轉(zhuǎn)換為脈沖當量的整數(shù)倍,其中i=0,1,…,n-1; (2)再將位置增量信息轉(zhuǎn)換為脈沖信號。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的控制周期為0.0005秒~0.005秒。
該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中的動力裝置可以為步進電機或者伺服驅(qū)動器。
采用了該發(fā)明的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,由于其將數(shù)控機床所加工的對象的形狀采用多條三次非均勻有理B樣條(Nurbs)曲線來描述,并在滿足精度要求的情況下將Nurbs解析曲線離散化為位置點列,并在滿足位置精度和加速度要求的情況下指定了位置點列中各點所在位置的最大速度,從而確保了加工過程中刀路的最大偏差不會超過允許的范圍,并使得各點的運行速度受到有效約束,不僅過程快速高效,操作簡單快捷,而且工作性能穩(wěn)定可靠,適用范圍較為廣泛,為數(shù)控機床控制技術(shù)的進一步發(fā)展奠定了堅實的基礎。
圖1為本發(fā)明的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法中判斷p(u′)到p(ui)和p(ui+1)之間的連線的距離是否小于系統(tǒng)預設的精度誤差ε的示意圖。
具體實施例方式 為了能夠更清楚地理解本發(fā)明的技術(shù)內(nèi)容,特舉以下實施例詳細說明。
首先,對本發(fā)明中的與數(shù)控機床技術(shù)領域相關的幾個名詞解釋如下 NURBS曲線——非均勻有理B樣條(Non-Uniform Rational B-Spline)曲線。
刀路——在制造業(yè)中,人們使用G/M代碼或其他能用來描述加工軌跡的文件格式來描述的一條加工軌跡,該軌跡就稱為刀路。
插補——對刀路的細化過程。人們在數(shù)控加工中描述的往往只是刀路的起點、終點,并不描述機床是如何從起點運動到終點的,這個運動過程需要機床控制系統(tǒng)(簡稱數(shù)控系統(tǒng))來完成。一般思想是將刀路細化為一系列小的線段,通過控制機床通過這些小線段的端點,也就等效于讓機床從起點運動到終點,這個細化的過程就稱為插補。
解析曲線——能用函數(shù)表達式刻畫的曲線方程。如y=x+1表示一條二維空間中的直線。
動力裝置——為機床提供驅(qū)動力的裝置。一般使用步進電機、伺服驅(qū)動器。
控制周期——數(shù)控系統(tǒng)在跟動力裝置進行數(shù)據(jù)交換的時候,總是把時間分成一個一個小的片斷,該片斷的長度稱為控制周期。控制周期一般取0.0005~0.005秒。數(shù)控系統(tǒng)通過控制在每個控制周期中向動力裝置發(fā)送的數(shù)據(jù)量來控制機床的運行速度和路徑。
脈沖當量——機床能分辨的最小距離。機床的任何運動距離都是脈沖當量的整數(shù)倍。
請參閱圖1所示,該數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,包括以下步驟 (1)將數(shù)控機床系統(tǒng)所需要加工的形狀采用非均勻有理B樣條曲線進行描述;該非均勻有理B樣條曲線根據(jù)以下公式表示為一分段有理多項式矢函數(shù) 其中,p(u)為位置矢量,di為控制頂點,n為控制頂點總數(shù),ωi為與控制頂點di相聯(lián)系的權(quán)因子,k為非均勻有理B樣條曲線的階次,Ni,k(u)為由節(jié)點矢量V={v0,v1,…,vn+k+1}按以下的德布爾考克斯遞推公式?jīng)Q定的k次規(guī)范B樣條基函數(shù)
其中,對V={v0,v1,...,vn+k+1}中的元素進行單位化后得到0=v0≤…≤vi≤vi+1≤…≤vn+k+1=1,u為參數(shù),且0≤u≤1。
(2)將所述的非均勻有理B樣條曲線在滿足系統(tǒng)預設的精度要求的條件下進行離散化,并形成一位置點列,包括以下步驟 (a)根據(jù)以下公式得到初始參數(shù)序列 U0={0,d,2d,3d,…,(N-1)d,1}; 其中,為步長,N為正整數(shù),該序列的通項為ui=u(i)=(i-1)d,i=1,2,...N; (b)將所述的初始參數(shù)序列U0作為節(jié)點矢量,根據(jù)所述的非均勻有理B樣條曲線的分段有理多項式矢函數(shù)計算得到初始參數(shù)序列U0所對應的初始位置點列 P0={p(u1),p(u2),p(u3),…,p(un)},ui∈U,0<i<n; (c)依次遍歷每個ui,根據(jù)以下公式計算ui,i+1 (d)根據(jù)所述的非均勻有理B樣條曲線的分段有理多項式矢函數(shù)計算得到ui,i+1所對應的位置p(ui,i+1) (e)判斷p(ui,i+1)到p(ui)和p(ui+1)之間的連線的距離是否小于系統(tǒng)預設的精度誤差ε; (f)如果是,說明ui和ui+1的選取合理,對ui的處理結(jié)束。
如果否,則將ui,i+1加入初始參數(shù)序列中,得到U={…,ui,ui,i+1,ui+1,…}; 同時,將p(ui,i+1)加入初始位置點列中,得到P={…,p(ui),p(ui,i+1),p(ui+1),…}; 然后用ui+1代替ui,i+1。
重復上述步驟(c)~(f),直到找到一個ui,i+1,使得p(ui,i+1)到p(ui)和p(ui+1)之間的連線的距離小于系統(tǒng)預設的精度誤差ε; (g)重復上述步驟(c),直到遍歷所有的ui,并將得到的P作為位置點列返回。
(3)對所述的位置點列中的各點在滿足系統(tǒng)預設的加速度和精度要求的條件下進行速度規(guī)劃,并得到各點所對應的速度,包括以下步驟 (a)根據(jù)以下公式計算出所述的位置點列P中每個點p(ui)所對應的曲率半徑ri 其中,a、b、c分別為由p(ui-1)、p(ui)、p(ui+1)所構(gòu)成的三角形的三邊長度, (b)根據(jù)以下關系式計算出所述的位置點列P中每個點p(ui)所對應的最大運行速度vix 其中,r0為參考半徑,v0為r0情況下所允許最大參考速度; (4)根據(jù)所述的位置點列和其中各點所對應的速度形成插補序列,包括以下步驟 (a)使用以下公式表示所述的位置點列中的相鄰兩點之間的插補段增量信息 (p(ui+1)-p(ui),vix);其中i=0,1,…,n-1; (b)根據(jù)各個插補段增量信息形成插補序列Sn Sn={(p(u1)-p(u0),v0x),(p(u2)-p(u1),v1x),(p(u3)-p(u2),v2x),…,(p(un)-p(un-1),v(n-1)x)}; (5)根據(jù)所述的插補序列產(chǎn)生刀路控制信號并發(fā)送給數(shù)控機床系統(tǒng)中的動力裝置,該根據(jù)插補序列產(chǎn)生刀路控制信號,包括以下步驟 (a)依次在每個系統(tǒng)預設的控制周期內(nèi)將位置增量信息p(ui+1)-p(ui)轉(zhuǎn)換為脈沖當量的整數(shù)倍,其中i=0,1,…,n-1,該控制周期為0.0005秒~0.005秒; (b)再將位置增量信息轉(zhuǎn)換為脈沖信號。
其中,所述的動力裝置可以為步進電機或者伺服驅(qū)動器。
在實際生產(chǎn)中,由于數(shù)控機床系統(tǒng)對形狀的加工,都是采用“線段構(gòu)成平面”的方法,故可以采用使用多條三次非均勻有理B樣條曲線來描述一個形狀的方法。
這樣在每次插補的時候,實際上需要處理的是一條條的NURBS曲線。
采用本發(fā)明的方法的基本思路如下 (1)先將NURBS曲線在滿足精度要求的情況下離散化,形成一位置點列,該點列在給定精度條件下等價于未離散化前的解析曲線。
(2)規(guī)劃位置點列中各點的速度。規(guī)劃過程中需要考慮滿足加速度和精度要求。
(3)將計算出來的位置點列和對應速度使用某種數(shù)據(jù)格式以增量方式描述出來形成一個數(shù)據(jù)列,該數(shù)據(jù)列即為插補序列;一般情況下,該插補序列是一個增量序列。所謂增量序列,是指該序列中后一個元素的值是相對于前一個元素的值而言的。
(4)將插補序列按控制周期以增量方式發(fā)送給動力裝置,便達到了讓機床以一定的速度按NURBS曲線描述的路徑運動到指定地點的目的。
首先,Nurbs曲線的解析描述如下 一條K次NURBS曲線可以表示為一分段有理多項式矢函數(shù) 其中di(i=0,1,...,n)、ωi(i=0,1,...,n)和V=v0,v1,...,vn+k+1}分別可以由計算機輔助制造(CAM,Computer-aided manufacturing)軟件計算后給出。
di(i=0,1,…,n)為控制頂點。ωi(i=0,1,...,n)稱為權(quán)或權(quán)因子(weights),分別與控制頂點di(i=0,1,...,n)相聯(lián)系。Ni,k(u)是由節(jié)點矢量V={v0,v1,…,vn+k+1}按德布爾考克斯遞推公式?jīng)Q定的K次規(guī)范B樣條基函數(shù)
在使用過程中,一般先用節(jié)點矢量序列V={v0,v1,…,vn+k+1}中最大的一個元素去除序列V中的每一個元素,使得V中的任一個元素的值都小于1 V={v0,v1,…,vn+k+1},其中v0=0,vn+k+1=1,0=v0≤…≤vi ≤vi+1≤…≤vn+k+1=1 使用(1.1)、(1.2)式,只要給出了任意的u(0≤u≤1),就可以得到對應的位置p(u)。
關于上述結(jié)論的詳細理論推導過程,請參閱以下文獻 施法中,計算機輔助幾何設計與非均勻有理B樣條,高等教育出版社,2001年8月第1版。
在本發(fā)明的方法中,首先將NURBS解析曲線按照以下方式離散化為位置序列 從前面的討論可知,假設有如下的參數(shù)數(shù)列U, U={u1,u2,…,un},其中,u1=0,un=1,0≤ui<ui+1≤1,1<i<n……(1.3) 那么通過(1.1)式就很容易求得對應的位置序列為 P={p(u1),p(u2),p(u3),…,p(un)},ui∈U,0<i<n……(1.4) 所以在將NURBS解析曲線離散化時,問題的關鍵是如何得到滿足要求的參數(shù)數(shù)列U。下面是本發(fā)明所使用的一種方法 先給出一粗略的參數(shù)序列U={u0,…,ui,ui+1,…,un},然后考查ui和ui+1之間是否需要插入新的元素來提高離散后的精度,如果不需要,繼續(xù)考查ui+1和ui+2;如果需要,那么插入ui,j+1,使得U變?yōu)閁={u0,…,ui,ui,i+1,ui+1,…,un},接著考查ui和ui,i+1,重復上面的過程,最后必能得到一新的參數(shù)序列U(l),將該序列中的元素ui,(i=1,2,…,M,M為序列中元素個數(shù))代入(1.1)式就可以得到滿足精度要求的位置序列。具體請參閱圖1所示,其中如果C到經(jīng)過AB的直線的距離小于ε,就使用AB來近似表示圖1中的曲線;反之,首先使用ACB來表示曲線,進而采用判斷AB的方法分別來判斷AC和CB。
舉例如下 取某一正整數(shù)N(通常情況下取100),取步長得到一參數(shù)序列 U={0,d,2d,3d,…,(N-1)d,1} ……(1.5) 該數(shù)列的通項可以表示為u(i)=(i-1)d i=1,2,…,n。
對任意的0<i<N,為了使經(jīng)過p(ui)和p(ui+1)的線段與解析曲線的最大距離不超過精度要求ε(ε為一任意小正數(shù),實際應用中一般取0.05~0.001毫米),通過(1.1)式計算出所對應的位置p(ui,i+1)到p(ui)和p(ui+1)的連線的距離是否小于ε,如果是,那么說明ui和ui+1的選取合乎要求,如果不滿足要求,則首先將ui,i+1歸入U中,使得U成為U={u0,…,ui,ui,i+1,ui+1,…,un},然后使用前面完全一樣的過程考查ui和ui,i+1。最后總能得到一個參數(shù)序列U={u0,…,ui,ui+1,…,um}。
接下來是進行速度計算 使用樣條曲線的曲率計算公式計算出位置列表中各點的曲率,然后采用向心加速度約束該位置允許的最大速度。
計算出位置序列P中每個元素對應的曲率半徑。
要計算出P中元素P(i)的曲率半徑,需要使用p(i-1)、p(i)、p(i+1)的信息。這三個點確定了唯一的一個圓(即三點所確定的三角形的外接圓),我們把該圓的半徑R近似作為p(i)的曲率半徑。
使用如下公式計算R(詳情見《數(shù)學手冊》,高等教育出版社,1979年5月第1版)。
其中a、b、c為三角形三邊長 對參數(shù)序列U中的每一個元素p(i),總可以通過上面的步驟尋找到曲率半徑ri。如果給出在指定的參考半徑r0的情況下的允許最大參考速度為v0,那么使用向心加速度約束可以得到在曲率半徑為ri時允許的最大運行速度vm,如下式 vix就是當實際曲率半徑為ri時允許的最大運行速度。其中r0為參考半徑,v0為參考速度,意思是當曲率半徑為r0時允許的最大運行速度為v0,在實際應用中,一般取r0為5毫米,v0為500~1500毫米/分鐘。
通過對位置列表中每個元素的計算,可以得到整個位置序列中各元素對應的最大運行速度。所有位置的速度構(gòu)成速度序列 Vel={v0,v1,...vn}……(1.8) 對于插補的過程,具體如下 該階段的主要工作是對位置序列P和對應的速度序列Vel做一個包裝,使用一種數(shù)據(jù)結(jié)構(gòu)表示出來送到能識別該結(jié)構(gòu)的硬件或者動力裝置即可。
下面是在此種思想下的一種實現(xiàn)方法 使用距離和速度來描述位置序列中的相鄰兩段,形如(d,v)。整個位置序列可以描述成 Sn={(p1-p0,v0),(p2-p1,v1),(p3-p2,v2),…,(pn-pn-1,vn-1)}……(1.9) 該序列就是插補后的最終結(jié)果。
最后是和機床動力系統(tǒng)的交互處理,具體如下 該部分的工作是將插補序列轉(zhuǎn)換為電信號發(fā)送給機床的動力裝置以便驅(qū)動機床運動。采用在每個控制周期內(nèi)將插補序列中的一個元素發(fā)送給驅(qū)動系統(tǒng)的方法進行。
例如,在(1.9)式所示的位置序列中,每個控制周期內(nèi)都將d轉(zhuǎn)換為脈沖當量的整數(shù)倍后(使用四舍五入的方法整數(shù)化),再轉(zhuǎn)換為脈沖信號發(fā)送給機床的動機系統(tǒng)。
同時需要指出的是,本發(fā)明的方法主要采用了數(shù)值計算,對解析曲線的離散化過程需要進行數(shù)學迭代,這會帶來時間和空間代價,由于現(xiàn)代計算機的運算速度和存儲資源相對較豐富,這樣的數(shù)學迭代運算是非常容易完成的。
采用了上述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,由于其將數(shù)控機床所加工的對象的形狀采用多條三次非均勻有理B樣條(Nurbs)曲線來描述,并在滿足精度要求的情況下將Nurbs解析曲線離散化為位置點列,并在滿足位置精度和加速度要求的情況下指定了位置點列中各點所在位置的最大速度,從而確保了加工過程中刀路的最大偏差不會超過允許的范圍,并使得各點的運行速度受到有效約束,不僅過程快速高效,操作簡單快捷,而且工作性能穩(wěn)定可靠,適用范圍較為廣泛,為數(shù)控機床控制技術(shù)的進一步發(fā)展奠定了堅實的基礎。
在此說明書中,本發(fā)明已參照其特定的實施例作了描述。但是,很顯然仍可以作出各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說明書和附圖應被認為是說明性的而非限制性的。
權(quán)利要求
1.一種數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的方法包括以下步驟
(1)將數(shù)控機床系統(tǒng)所需要加工的形狀采用非均勻有理B樣條曲線進行描述;
(2)將所述的非均勻有理B樣條曲線在滿足系統(tǒng)預設的精度要求的條件下進行離散化,并形成一位置點列;
(3)對所述的位置點列中的各點在滿足系統(tǒng)預設的加速度和精度要求的條件下進行速度規(guī)劃,并得到各點所對應的速度;
(4)根據(jù)所述的位置點列和其中各點所對應的速度形成插補序列;
(5)根據(jù)所述的插補序列產(chǎn)生刀路控制信號并發(fā)送給數(shù)控機床系統(tǒng)中的動力裝置。
2.根據(jù)權(quán)利要求1所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的非均勻有理B樣條曲線根據(jù)以下公式表示為一分段有理多項式矢函數(shù)
其中,p(u)為位置矢量,di為控制頂點,n為控制頂點總數(shù),ωi為與控制頂點di相聯(lián)系的權(quán)因子,k為非均勻有理B樣條曲線的階次,Ni,k(u)為由節(jié)點矢量V={v0,v1,…,vn+k+1}按以下的德布爾考克斯遞推公式?jīng)Q定的k次規(guī)范B樣條基函數(shù)
其中,對V={v0,v1,...,vn+k+1}中的元素進行單位化后得到0=v0≤…≤vi≤vi+1≤…≤vn+k+1=1,u為參數(shù),且0≤u≤1。
3.根據(jù)權(quán)利要求2所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的將非均勻有理B樣條曲線進行離散化并形成一位置點列,包括以下步驟
(21)根據(jù)以下公式得到初始參數(shù)序列
U0={0,d,2d,3d,…,(N-1)d,1};
其中,為步長,N為正整數(shù),該序列的通項為ui=u(i)=(i-1)d,i=1,2,...N;
(22)將所述的初始參數(shù)序列U0作為節(jié)點矢量,根據(jù)所述的非均勻有理B樣條曲線的分段有理多項式矢函數(shù)計算得到初始參數(shù)序列U0所對應的初始位置點列
P0={p(u1),p(u2),p(u3),…,p(un)},ui∈U,0<i<n;
(23)依次遍歷每個ui,根據(jù)以下公式計算ui,i+1
(24)根據(jù)所述的非均勻有理B樣條曲線的分段有理多項式矢函數(shù)計算得到ui,i+1所對應的位置p(ui,i+1)
(25)判斷p(ui,i+1)到p(ui)和p(ui+1)之間的連線的距離是否小于系統(tǒng)預設的精度誤差ε;
(26)如果是,則表明ui和ui+1的選取合理,對ui的處理結(jié)束;
如果否,則將ui,i+1加入初始參數(shù)序列中,得到
U={…,ui,ui,i+1,ui+1,…};
同時,將p(ui,i+1)加入初始位置點列中,得到
P={…,p(ui),p(ui,i+1),p(ui+1),…};
然后用ui+1代替ui,i+1。
重復上述步驟(23)~(26),直到找到一個ui,i+1,使得p(ui,i+1)到p(ui)和p(ui+1)之間的連線的距離小于系統(tǒng)預設的精度誤差ε;
(27)重復上述步驟(23),直到遍歷所有的ui,并將得到的P作為位置點列返回。
4.根據(jù)權(quán)利要求3所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的精度誤差ε為0.001毫米~0.05毫米。
5.根據(jù)權(quán)利要求3所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的對位置點列中的各點進行速度規(guī)劃并得到對應的速度,包括以下步驟
(31)根據(jù)以下公式計算出所述的位置點列P中每個點p(ui)所對應的曲率半徑ri
其中,a、b、c分別為由p(ui-1)、p(ui)、p(ui+1)所構(gòu)成的三角形的三邊長度,
(32)根據(jù)以下關系式計算出所述的位置點列P中每個點p(ui)所對應的最大運行速度vix
其中,r0為參考半徑,v0為r0情況下所允許最大參考速度。
6.根據(jù)權(quán)利要求5所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的根據(jù)位置點列和其中各點所對應的速度形成插補序列,包括以下步驟
(1)使用以下公式表示所述的位置點列中的相鄰兩點之間的插補段增量信息
(p(ui+1)-p(ui),vix);其中i=0,1,…,n-1;
(2)根據(jù)各個插補段增量信息形成插補序列Sn
Sn={(p(u1)-p(u0),v0x),(p(u2)-p(u1),v1x),(p(u3)-p(u2),v2x),…,(p(un)-p(un-1),v(n-1)x)}。
7.根據(jù)權(quán)利要求6所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的根據(jù)插補序列產(chǎn)生刀路控制信號,包括以下步驟
(1)依次在每個系統(tǒng)預設的控制周期內(nèi)將位置增量信息p(ui+1)-p(ui)轉(zhuǎn)換為脈沖當量的整數(shù)倍,其中i=0,1,…,n-1;
(2)再將位置增量信息轉(zhuǎn)換為脈沖信號。
8.根據(jù)權(quán)利要求7所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的控制周期為0.0005秒~0.005秒。
9.根據(jù)權(quán)利要求1至8中任一項所述的數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,其特征在于,所述的動力裝置為步進電機或者伺服驅(qū)動器。
全文摘要
本發(fā)明涉及一種數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,包括將所加工的形狀用Nurbs曲線描述、將Nurbs曲線在滿足預設精度條件下離散化形成位置點列、對位置點列中各點在滿足預設加速度和精度條件下進行速度規(guī)劃得到對應速度、根據(jù)位置點列和各點對應速度形成插補序列、根據(jù)插補序列產(chǎn)生刀路控制信號并發(fā)送給數(shù)控機床動力裝置。采用該種數(shù)控機床系統(tǒng)中實現(xiàn)對刀路進行插補控制的方法,在滿足位置精度和加速度要求的條件下確保了加工過程中刀路的最大偏差不會超過允許的范圍,并使得各點的運行速度受到有效約束,過程快速高效,操作簡單快捷,工作性能穩(wěn)定可靠,適用范圍較為廣泛,為數(shù)控機床控制技術(shù)的進一步發(fā)展奠定了堅實的基礎。
文檔編號G05B19/41GK101178594SQ20071017156
公開日2008年5月14日 申請日期2007年11月30日 優(yōu)先權(quán)日2007年11月30日
發(fā)明者牟鳳林, 汪永生, 鄭之開, 湯同奎 申請人:上海奈凱電子科技有限公司