專利名稱:樣條曲線實(shí)時插補(bǔ)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)控系統(tǒng)的速度處理技術(shù),具體地說是一種樣條曲線實(shí)時插補(bǔ)方法。
背景技術(shù):
在商用 CAD/CAM(computer-aided design/ computer-aidedmanufacturing, 電腦輔助設(shè)計與電腦輔助制造)軟件中,自由型曲線曲面是由樣條來表示的。但是 CNC(Computer numerical control,計算機(jī)數(shù)字控制)系統(tǒng)的發(fā)展要滯后于CAD/CAM系統(tǒng), 傳統(tǒng)的CNC系統(tǒng)只具備圓弧和直線插補(bǔ)功能,限制了數(shù)控加工精度和效率的進(jìn)一步提高。 為了克服傳統(tǒng)的直線、圓弧插補(bǔ)帶來的弊端,需要在數(shù)控裝置中直接對CAD/CAM裝置輸出 的樣條曲線進(jìn)行插補(bǔ)計算。與小線段相比,樣條曲線的形狀更為復(fù)雜,它的曲率是不斷變化的,且存在曲率不 連續(xù)點(diǎn),這就給速度規(guī)劃帶來了很多問題。首先,減速點(diǎn)難以精確計算。在對小線段進(jìn)行速 度規(guī)劃時,我們一般先求出當(dāng)前規(guī)劃段路徑的總長度,然后根據(jù)剩余路徑長度進(jìn)行速度規(guī) 劃,求出減速點(diǎn)。對樣條曲線進(jìn)行實(shí)時插補(bǔ)時,是用實(shí)際步長去逼近原有的樣條曲線,不同 的逼近方法計算出來的路徑長度也不同,而具體的逼近方法又與速度規(guī)劃相關(guān),因此難以 精確求出減速點(diǎn)位置。同時在速度規(guī)劃過程中,在每一個插補(bǔ)點(diǎn)首先根據(jù)加工精度求出當(dāng) 前曲率下允許的最大速度值,然后根據(jù)機(jī)床的加減速能力進(jìn)行調(diào)整。但是樣條曲線中存在 曲率的突變點(diǎn)(曲率不連續(xù)的點(diǎn)),這也就造成了所求的速度會發(fā)生突變。采用預(yù)處理的方 法可以提前求出速度和加速度的突變點(diǎn),并規(guī)劃出速度曲線。但在加工過程中進(jìn)行修調(diào)操 作時,會導(dǎo)致規(guī)劃出的速度曲線失效,需要重新計算,不能實(shí)時響應(yīng)用戶的需求。采用實(shí)時 前瞻的方法可以實(shí)時響應(yīng)修調(diào)等操作,但由于樣條曲線計算量大,速度規(guī)劃復(fù)雜,所有計算 完全靠實(shí)時前瞻完成,難以滿足實(shí)時性要求。近年來,國內(nèi)外已有大量相關(guān)的理論研究并取得了較大的進(jìn)展。樣條曲線的實(shí)時 插補(bǔ)技術(shù)經(jīng)歷了恒定進(jìn)給速度、自動調(diào)節(jié)進(jìn)給速度和預(yù)處理這幾個階段。所考慮的問題也 從最初的加工效率、精度擴(kuò)展到機(jī)床的實(shí)際加減速能力。但是這些算法存在計算量大,難以 滿足實(shí)時性要求,減速點(diǎn)計算不夠準(zhǔn)確以及不能實(shí)時處理加工過程中出現(xiàn)的修調(diào)等問題, 因此不能直接移植到現(xiàn)有數(shù)控系統(tǒng)中。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中存在的上述不足之處,本發(fā)明要解決的技術(shù)問題是提供一種能夠 實(shí)現(xiàn)速度平滑過渡的樣條曲線實(shí)時插補(bǔ)算法,以保證各運(yùn)動軸的平穩(wěn)運(yùn)行,從而滿足柔性 化加工的要求。為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案是本發(fā)明一種樣條曲線實(shí)時插補(bǔ)方法包括以下步驟樣條曲線段預(yù)處理對加工程序進(jìn)行樣條曲線段預(yù)處理,得到曲線長度和突變點(diǎn) fn息;
實(shí)時前瞻根據(jù)上述曲線長度和突變點(diǎn)信息進(jìn)行速度規(guī)劃,得到加工速度;插補(bǔ)計算根據(jù)得到的加工速度計算下一點(diǎn)坐標(biāo),輸出至伺服控制裝置。所述對加工程序進(jìn)行樣條曲線段預(yù)處理包括以下步驟輸入加工程序,設(shè)置當(dāng)前曲線段的初始速度;根據(jù)誤差約束、加速度約束以及加加速度約束規(guī)劃當(dāng)前速度;判斷規(guī)劃的當(dāng)前速度是否是突變點(diǎn)?如果是突變點(diǎn),則將該突變點(diǎn)加入突變點(diǎn)數(shù)組;求出下一插補(bǔ)點(diǎn)坐標(biāo);判斷當(dāng)前曲線段是否結(jié)束;如結(jié)束,將處理結(jié)果輸出至實(shí)時插補(bǔ)模塊,并讀入加工程序的下一段;返回設(shè)置當(dāng)前程序段的初始速度步驟。所述實(shí)時前瞻包括以下步驟設(shè)置加工的初始速度;根據(jù)誤差約束、加速度約束、加加速度約束及編程進(jìn)給速度約束條件計算加工的 約束速度;根據(jù)約束速度求下一點(diǎn)位置;根據(jù)編程進(jìn)給速度更新突變點(diǎn)數(shù)組;判斷下一點(diǎn)位置與所有突變點(diǎn)之間的剩余路徑長度是否均大于所需的減速距 罔;如上述判斷結(jié)果為否,則從當(dāng)前點(diǎn)開始減速,并重新計算當(dāng)前速度;將當(dāng)前速度輸出至插補(bǔ)計算步驟,并轉(zhuǎn)至根據(jù)誤差約束、加速度約束、加加速度約 束及編程進(jìn)給速度約束條件計算加工的約束速度步驟。判斷下一點(diǎn)位置與所有突變點(diǎn)之間的剩余路徑長度是否均大于所需的減速距離 包括以下步驟從突變點(diǎn)數(shù)組中依次取出突變點(diǎn);根據(jù)預(yù)處理得到的曲線長度信息計算從下一點(diǎn)位置到該突變點(diǎn)的距離;根據(jù)下一點(diǎn)的加速度和速度、突變點(diǎn)的加速度和速度依次判斷下一點(diǎn)位置與突變 點(diǎn)之間的剩余路徑長度是否大于所需的減速距離。如果一點(diǎn)位置與所有突變點(diǎn)之間的剩余路徑長度均大于所需的減速距離,則接續(xù) 將當(dāng)前速度輸出至插補(bǔ)計算步驟,并轉(zhuǎn)至根據(jù)誤差約束、加速度約束、加加速度約束及編程 進(jìn)給速度約束條件計算加工的約束速度步驟。如果當(dāng)前曲線段沒有結(jié)束,則轉(zhuǎn)至根據(jù)誤差約束、加速度約束以及加加速度約束 規(guī)劃當(dāng)前速度步驟。如果不是突變點(diǎn),則直接進(jìn)入求出下一插補(bǔ)點(diǎn)坐標(biāo)步驟。本發(fā)明具有以下有益效果及優(yōu)點(diǎn)1.實(shí)時性好。結(jié)合前瞻和預(yù)處理的優(yōu)點(diǎn),采用預(yù)處理+前瞻的實(shí)現(xiàn)方式,把計算量 大且不受修調(diào)操作影響的工作放在預(yù)處理完成,從而減少了實(shí)時前瞻的計算量,使每個周 期的前瞻段數(shù)足夠長,能夠保證每個插補(bǔ)周期實(shí)時輸出一個可靠的插補(bǔ)點(diǎn)。2.所求減速點(diǎn)精度高。采用避免誤差累計和實(shí)時前瞻等技術(shù)使所求減速點(diǎn)的位置更加精確,不會出現(xiàn)因減速距離不夠而造成部分點(diǎn)不滿足加工精度的現(xiàn)象。3.可交互性好,能實(shí)時響應(yīng)修調(diào)操作。
圖1為本發(fā)明方法流程圖;圖2樣條曲線中的曲率不連續(xù)點(diǎn)示例;
圖3是樣條預(yù)處理模塊流程圖;圖4實(shí)時插補(bǔ)模塊流程圖;圖5待加工曲線示例圖;圖6期望的加速度曲線;圖7(a) 7(d)為從當(dāng)前速度、加速度減速到突變點(diǎn)的速度、加速度的可能過渡方 式(一) (四);圖8加工樣件示圖;圖9本發(fā)明方法的誤差曲線效果圖;圖10本發(fā)明方法的速度曲線效果圖;圖11本發(fā)明方法的加速度曲線圖;圖12本發(fā)明方法的加速度曲線部分放大效果圖。
具體實(shí)施例方式下面結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)說明。本發(fā)明方法包括以下步驟樣條曲線段預(yù)處理對加工程序進(jìn)行樣條曲線段預(yù)處理,得到曲線長度和突變點(diǎn) fn息;實(shí)時前瞻根據(jù)上述曲線長度和突變點(diǎn)信息進(jìn)行速度規(guī)劃,得到加工速度;插補(bǔ)計算根據(jù)得到的加工速度計算下一點(diǎn)坐標(biāo),輸出至伺服控制裝置。如圖1所示,在本實(shí)施方式中,從CAD/CAM裝置中輸出的加工程序首先進(jìn)入數(shù)控裝 置的解釋器,解釋器分為加工程序解釋和樣條曲線段預(yù)處理兩部分,它對加工程序進(jìn)行解 釋并預(yù)處理,并將處理好數(shù)據(jù)通過共享緩存發(fā)給運(yùn)動控制器。運(yùn)動控制器是實(shí)時的,每個插 補(bǔ)周期它通過實(shí)時前瞻和插補(bǔ)計算進(jìn)行速度規(guī)劃并計算出下一個插補(bǔ)點(diǎn)坐標(biāo),最后將該坐 標(biāo)發(fā)送給伺服裝置,驅(qū)動電機(jī)運(yùn)動。參照圖2所示,樣條曲線中存在曲率不連續(xù)的點(diǎn),而且當(dāng)曲率變化過快時,也會出 現(xiàn)超出機(jī)床減速能力的點(diǎn)。為了保證實(shí)際加工時在這些點(diǎn)加速度是連續(xù)的,需要在樣條曲 線段預(yù)處理階段將這些點(diǎn)記錄下來。樣條曲線段預(yù)處理的系統(tǒng)流程圖如圖3所示,所述對加工程序進(jìn)行樣條曲線段預(yù) 處理包括以下步驟Sl 輸入加工程序,設(shè)置當(dāng)前曲線段的初始速度;S2 根據(jù)誤差約束、加速度約束以及加加速度約束規(guī)劃當(dāng)前速度;S3 判斷規(guī)劃的當(dāng)前速度是否是突變點(diǎn)?如果是突變點(diǎn),則將該突變點(diǎn)加入突變 點(diǎn)數(shù)組;
S4 求出下一插補(bǔ)點(diǎn)坐標(biāo);S5 判斷當(dāng)前曲線段是否結(jié)束;S6:如結(jié)束,將處理結(jié)果輸出至實(shí)時插補(bǔ)模塊,并讀入加工程序的下一段,返回設(shè) 置當(dāng)前程序段的初始速度步驟。由于樣條曲線是分段的,而曲率的突變點(diǎn)大多存在于分段鏈接處,為了避免由于 修調(diào)等操作導(dǎo)致的預(yù)處理結(jié)果失效問題,我們在預(yù)處理時將樣條曲線看成是分段獨(dú)立的。在每一個分段起點(diǎn),步驟Sl認(rèn)為初始速度為上一分段最后一點(diǎn)誤差允許的最大 速度。設(shè)ER(Ui),P (Ui)和V(Ui)分別是插補(bǔ)點(diǎn)Ui處的弓高誤差、曲率半徑和速度,Ts是機(jī) 床的插補(bǔ)周期,ER為允許的弓高誤差最大值,Jmax為允許的最大加加速度,Amax為允許的最 大加速度。Ui處誤差、最大加速度、加加速度允許的最大速度Ve(Ui)、Va(Ui) ^P Vj (Ui)分別 為
2ι_誤差約束公式:Ve(u,)=〒氺P(U1)ER-ER2( 1 )
S加速度約束公式=Va(Ui)=V (Uh)+AmaxTs(2)加加速度約束公式=Vj(Ui) = V (Uh) + (a ( )+JmaxTs) Ts (3)在步驟S2根據(jù)上述各公式求約束速度時,不考慮編程進(jìn)給速度約束,當(dāng)前速度為 V(Ui) =min(Ve(Ui), Va(Ui), Vj(Ui))。同時記錄下該點(diǎn)的節(jié)點(diǎn)矢量,加速度、速度和起點(diǎn)到 該點(diǎn)的累積路徑長度。步驟S3將同時滿足以下條件的點(diǎn)判定為突變點(diǎn)1)根據(jù)加工精度、 最大加速度、加加速度等約束條件求出的速度取最小值作為當(dāng)前點(diǎn)速度,該速度與前一點(diǎn) 速度相比超出機(jī)床加減速能力;2)當(dāng)前點(diǎn)速度小于前一點(diǎn)速度,需要減速。若當(dāng)前插補(bǔ)點(diǎn) 為突變點(diǎn),則將該點(diǎn)的節(jié)點(diǎn)信息,速度、加速度等信息記錄到另一個數(shù)組中,按插補(bǔ)順序在 突變點(diǎn)數(shù)組中依次添加。所述實(shí)時前瞻包括以下步驟Pl 設(shè)置加工的初始速度;根據(jù)誤差約束、加速度約束、加加速度約束及編程進(jìn)給 速度約束條件計算加工的約束速度;P2 根據(jù)約束速度求下一點(diǎn)位置;P3 根據(jù)編程進(jìn)給速度更新突變點(diǎn)數(shù)組;P4:判斷下一點(diǎn)位置與所有突變點(diǎn)之間的剩余路徑長度是否均大于所需的減速距 罔;P5 如上述判斷結(jié)果為否,則從當(dāng)前點(diǎn)開始減速,并重新計算當(dāng)前速度;P6 將當(dāng)前速度輸出至插補(bǔ)計算步驟,并轉(zhuǎn)至根據(jù)誤差約束、加速度約束、加加速 度約束及編程進(jìn)給速度約束條件計算加工的約束速度步驟。實(shí)時前瞻根據(jù)預(yù)處理記錄下來的信息進(jìn)行精確的速度規(guī)劃,如圖4所示,設(shè)置初 始速度為0,假設(shè)編程進(jìn)給速度為F,每個周期首先根據(jù)誤差、編程進(jìn)給速度、最大加速度、 加加速度等約束條件計算約束速度V (Ui) = min (F,Ve (Ui),Va (Ui),Vj (Ui)),并根據(jù)該速度求
出下一點(diǎn)位置Pi+1。由于在實(shí)時前瞻中要根據(jù)編程進(jìn)給速度對實(shí)時插補(bǔ)速度進(jìn)行限制,會產(chǎn)生新的突 變點(diǎn),因此需要在步驟P3中更新突變點(diǎn)數(shù)組,即增加新的突變點(diǎn)。因?yàn)檫@種突變點(diǎn)只可能 在速度的極大值點(diǎn)附近會出現(xiàn),所以具體實(shí)現(xiàn)方法為記第一個超過編程進(jìn)給速度的點(diǎn)為
7入點(diǎn),最后一個超過編程進(jìn)給速度的點(diǎn)為出點(diǎn)。把入點(diǎn)和出點(diǎn)的加速度設(shè)為零,速度設(shè)為編 程進(jìn)給速度。如果入點(diǎn)或出點(diǎn)的下一個點(diǎn)的加速度變化量絕對值大于JmaxT,則將其加入到 突變點(diǎn)數(shù)組中。步驟P4是判斷Pi+1點(diǎn)與前瞻曲線段上的所有突變點(diǎn)之間的剩余路徑長度是否滿 足所需的減速距離,具體判定方法如下首先計算所需的減速距離,假設(shè)圖5是一段待加工樣條曲線,其中Ui是樣條曲線 段預(yù)處理時得到的一個突變點(diǎn),它的下一個插補(bǔ)點(diǎn)加速度為ai+1,Uj是采樣點(diǎn)Ui的減速點(diǎn), 它的前一個插補(bǔ)點(diǎn)加速度為a^。要實(shí)現(xiàn)整個加工過程加速度的連續(xù)性,如圖6所示,需要 保證減速段起點(diǎn)和終點(diǎn)加速度都是連續(xù)的。因此在步驟P2是根據(jù)從當(dāng)前的速度和加速度 過渡到突變點(diǎn)的速度和加速度所需的最小加工路徑長度與它們之間的剩余路徑長度之間 的關(guān)系來判斷是否需要減速的。所需的最小加工路徑長度的計算方法如下所示假設(shè)當(dāng)前速度為Vi,加速度為a”突變點(diǎn)所需的速度為、,加速度為…。從當(dāng)前的 速度和加速度過渡到突變點(diǎn)的速度和加速度可能存在圖7(a) (d)所示的四種過渡方式。 如果突變點(diǎn)為如圖7 (a)所示的加速度突變點(diǎn),從Vi過渡到Ni所需的距離S和時間t為+ -Ijma/(4)
I ο
Cll-CI1t = ——( 5 )
max如果從當(dāng)前點(diǎn)過渡到突變點(diǎn)加速度曲線如圖7 (b)所示,從Vi過渡到Vi所需的距 離S和時間t為S^v;+ ^-a;2+^ JmJ(6)
Z ο
a. - a,,.t = ~~(7)
max如果從該突變點(diǎn)與當(dāng)前點(diǎn)的速度變化較大,則減速時存在圖7(c)和圖7(d)兩種 情況。首先來看存在以加速度-Amax勻減速的情況,為了保證加速度的連續(xù)性,整個減速過 程分為加加速度為-Jmax的變加速、加速度為-Amax勻加速和加加速度為Jmax的變加速過程。 其中加加速度為-Jmax的變加速階段的位移Si,終點(diǎn)速度V1和時間、分別為
(8)
L ο
K=Vt+attx-^JmJ(9)
麗( ο)
Jmax加速度為-Amax勻加速階段的位移S2和終點(diǎn)速度V2分別為
H 去 C22(H)
V2 = YrAmaxI2 (12)加加速度為Jmax的變加速階段的位移S3和該階段持續(xù)時間t3為
S3= Vlt3-^-AiriJ2i+^JmJ3 (13) 2 6
# aJ +Anax
(14)
J j
max每個階段的速度增量之和滿足如下關(guān)系式
ah - \ JmJl — KJl - 4 ax^3 + \ JmJl =Vj-V,( 15)因此可得第二階段的時間t2
全去腿(π)減速所需的總位移S等于S = S1+S2+S3(16)如圖7 (d)所示,當(dāng)沒有加速度-Amax勻減速段時,假設(shè)第一階段結(jié)束時加速度值為 ap,則上述公式應(yīng)改寫為
,a,-aP( ΛΠλh =(17)
maxS2= Vxt2 + \ a/2 JmJ32 (18)
Lο
a, -an,
-jY^( 19)
max
^ 嚴(yán)-2 公 d(20)S = S^S2(21)分別求出從當(dāng)前點(diǎn)的速度和加速度過渡到所有突變點(diǎn)的速度和加速度所需的最 小加工路徑后,若發(fā)現(xiàn)存在當(dāng)前點(diǎn)到任意突變點(diǎn)間的剩余路徑長度小于所需的減速距離, 則證明需要從第i周期開始減速;否則,按照步驟Pi規(guī)劃的速度運(yùn)行。最后將規(guī)劃好的速 度發(fā)給插補(bǔ)計算模塊,計算出下一插補(bǔ)點(diǎn)的位置,發(fā)給伺服裝置,驅(qū)動電機(jī)運(yùn)動。本發(fā)明方法結(jié)合預(yù)處理和實(shí)時前瞻的優(yōu)點(diǎn),采用預(yù)處理加前瞻的方法,將計算量 大但不受修調(diào)影響的數(shù)據(jù)放在預(yù)處理中計算,實(shí)時前瞻根據(jù)預(yù)處理計算出的數(shù)據(jù)進(jìn)行精確 的速度規(guī)劃,以同時滿足實(shí)時性和實(shí)時響應(yīng)修調(diào)操作的要求。同時實(shí)時前瞻根據(jù)預(yù)處理時 記錄下來的每個插補(bǔ)點(diǎn)的路徑長度信息動態(tài)修正當(dāng)前點(diǎn)與突變點(diǎn)之間的剩余路徑長度,可 以有效避免累計誤差的產(chǎn)生,提高所求減速點(diǎn)的精度。由于樣條曲線是分段的,而曲率的突變點(diǎn)大多存在于分段鏈接處,為了避免由于 修調(diào)操作導(dǎo)致的預(yù)處理結(jié)果失效問題,在預(yù)處理時將樣條曲線看成是分段獨(dú)立的,并且認(rèn)
9為每一段的初始速度是上一分段最后一點(diǎn)誤差允許的最大速度。這樣需要減速且超出機(jī)床 加減速能力時,將該點(diǎn)作為速度突變點(diǎn)記錄下來;若需要加速,則按照機(jī)床的實(shí)際加減速能 力向上加速。這樣求出的路徑長度既不受修調(diào)操作影響,又盡可能地貼近實(shí)際加工路徑長度。從上面可以看出,預(yù)處理的目的并不是規(guī)劃出實(shí)際的速度曲線,只是計算出實(shí)時 插補(bǔ)時所需要知道的突變點(diǎn)信息和較為精確的路徑長度,便于在實(shí)時前瞻中進(jìn)行速度規(guī) 劃。在實(shí)時前瞻模塊的每個插補(bǔ)周期,根據(jù)加工精度和加速度、加加速度約束求出當(dāng)前插補(bǔ) 周期的速度Vi,以保證加速度的連續(xù)性。假設(shè)前瞻k段樣條曲線,則認(rèn)為第k段曲線的終點(diǎn)速度為0。判斷從位置點(diǎn)Pi+1與 所有突變點(diǎn)以及第k段曲線終點(diǎn)之間的剩余路徑長度是否滿足所需的減速距離,若存在任 意兩點(diǎn)間的剩余路徑長度小于所需的減速距離,則證明需要第i個周期開始減速;否則,按 照上面求出的速度運(yùn)行,進(jìn)入下一個插補(bǔ)周期。由于預(yù)處理所求路徑長度小于實(shí)際路徑長度,雖然能夠保證不會出現(xiàn)減速距離不 夠的問題,但可能會過早進(jìn)入減速區(qū)。為了減少提前減速給加工效率帶來的負(fù)面影響,前瞻 階段根據(jù)預(yù)處理時保存的每個插補(bǔ)點(diǎn)的累計路徑信息來計算當(dāng)前點(diǎn)的剩余路徑,可以消除 加工路徑的累計誤差。這樣在實(shí)際加工時就能夠及時發(fā)現(xiàn)過早減速問題并對其動態(tài)修正。本發(fā)明方法的測試是在三軸數(shù)控銑床,通過加工具有代表性的工件測試程序來完 成的。所用裝置采用編碼器反饋,形成全閉環(huán)控制系統(tǒng),驅(qū)動交流伺服電機(jī)。裝置的主要參 數(shù)如下數(shù)控系統(tǒng)CPUPentium M_l. 6GHz、RAM-512M、HD-40G、I/0_32/24、編碼器輸入-4, D/A輸出-4、顯示-10. 4”彩色液晶顯示;安川Σ _2伺服與電機(jī);進(jìn)給率F = 24m/min ;最大加速度Amax = 5000m/s2 ;最大加加速度Jmax = 500m/ S3 ; ·插補(bǔ)周期 T = Ims ; ·輪廓誤差 Emax = 0. 000001m。本發(fā)明方法及實(shí)現(xiàn)裝置效果的評價以加工圖8所示的曲線為評測依據(jù)。而采用本 發(fā)明方法與實(shí)現(xiàn)裝置,誤差曲線如圖9所示,速度規(guī)劃曲線如圖10所示,加速度曲線及部分 放大圖如圖11所示。從上述加工效果圖中可以看到1.所述的樣條插補(bǔ)方法能夠滿足加工精度的要求,較好的處理了速度突變點(diǎn),解 決了由于減速距離不夠造成的部分點(diǎn)加工精度超出允許值的問題;2.如圖11中加速度曲線的部分放大圖即圖12所示,所述方法采用消除累計誤差 的方法提高所求減速點(diǎn)精度,當(dāng)發(fā)現(xiàn)提前進(jìn)入減速區(qū)時,能不斷及時修正當(dāng)前速度;3.所述方法得到的加速度曲線基本連續(xù),速度曲線平滑。
權(quán)利要求
一種樣條曲線實(shí)時插補(bǔ)方法,其特征在于包括以下步驟樣條曲線段預(yù)處理對加工程序進(jìn)行樣條曲線段預(yù)處理,得到曲線長度和突變點(diǎn)信息;實(shí)時前瞻根據(jù)上述曲線長度和突變點(diǎn)信息進(jìn)行速度規(guī)劃,得到加工速度;插補(bǔ)計算根據(jù)得到的加工速度計算下一點(diǎn)坐標(biāo),輸出至伺服控制裝置。
2.按權(quán)利要求1所述的樣條曲線實(shí)時插補(bǔ)方法,其特征在于所述對加工程序進(jìn)行樣 條曲線段預(yù)處理包括以下步驟輸入加工程序,設(shè)置當(dāng)前曲線段的初始速度;根據(jù)誤差約束、加速度約束以及加加速度約束規(guī)劃當(dāng)前速度;判斷規(guī)劃的當(dāng)前速度是否是突變點(diǎn)?如果是突變點(diǎn),則將該突變點(diǎn)加入突變點(diǎn)數(shù)組;求出下一插補(bǔ)點(diǎn)坐標(biāo);判斷當(dāng)前曲線段是否結(jié)束;如結(jié)束,將處理結(jié)果輸出至實(shí)時插補(bǔ)模塊,并讀入加工程序的下一段; 返回設(shè)置當(dāng)前程序段的初始速度步驟。
3.按權(quán)利要求2所述的樣條曲線實(shí)時插補(bǔ)方法,其特征在于所述實(shí)時前瞻包括以下 步驟設(shè)置加工的初始速度;根據(jù)誤差約束、加速度約束、加加速度約束及編程進(jìn)給速度約束條件計算加工的約束 速度;根據(jù)約束速度求下一點(diǎn)位置; 根據(jù)編程進(jìn)給速度更新突變點(diǎn)數(shù)組;判斷下一點(diǎn)位置與所有突變點(diǎn)之間的剩余路徑長度是否均大于所需的減速距離; 如上述判斷結(jié)果為否,則從當(dāng)前點(diǎn)開始減速,并重新計算當(dāng)前速度; 將當(dāng)前速度輸出至插補(bǔ)計算步驟,并轉(zhuǎn)至根據(jù)誤差約束、加速度約束、加加速度約束及 編程進(jìn)給速度約束條件計算加工的約束速度步驟。
4.按權(quán)利要求3所述的樣條曲線實(shí)時插補(bǔ)方法,其特征在于判斷下一點(diǎn)位置與所有 突變點(diǎn)之間的剩余路徑長度是否均大于所需的減速距離包括以下步驟從突變點(diǎn)數(shù)組中依次取出突變點(diǎn);根據(jù)預(yù)處理得到的曲線長度信息計算從下一點(diǎn)位置到該突變點(diǎn)的距離; 根據(jù)下一點(diǎn)的加速度和速度、突變點(diǎn)的加速度和速度依次判斷下一點(diǎn)位置與突變點(diǎn)之 間的剩余路徑長度是否大于所需的減速距離。
5.按權(quán)利要求3所述的樣條曲線實(shí)時插補(bǔ)方法,其特征在于如果一點(diǎn)位置與所有突 變點(diǎn)之間的剩余路徑長度均大于所需的減速距離,則接續(xù)將當(dāng)前速度輸出至插補(bǔ)計算步 驟,并轉(zhuǎn)至根據(jù)誤差約束、加速度約束、加加速度約束及編程進(jìn)給速度約束條件計算加工的 約束速度步驟。
6.按權(quán)利要求2所述的樣條曲線實(shí)時插補(bǔ)方法,其特征在于如果當(dāng)前曲線段沒有結(jié) 束,則轉(zhuǎn)至根據(jù)誤差約束、加速度約束以及加加速度約束規(guī)劃當(dāng)前速度步驟。
7.按權(quán)利要求2所述的樣條曲線實(shí)時插補(bǔ)方法,其特征在于如果不是突變點(diǎn),則直接進(jìn)入求出下一插補(bǔ)點(diǎn)坐標(biāo)步驟。
全文摘要
本發(fā)明涉及一種樣條曲線實(shí)時插補(bǔ)方法,包括對加工程序進(jìn)行樣條曲線段預(yù)處理,得到曲線長度和突變點(diǎn)信息;根據(jù)上述曲線長度和突變點(diǎn)信息進(jìn)行速度規(guī)劃,得到加工速度;根據(jù)得到的加工速度計算下一點(diǎn)坐標(biāo),輸出至伺服控制裝置;樣條曲線段預(yù)處理包括輸入加工程序,設(shè)置當(dāng)前曲線段的初始速度;根據(jù)誤差約束、加速度約束以及加加速度約束規(guī)劃當(dāng)前速度;規(guī)劃的當(dāng)前速度如果是突變點(diǎn),則將該突變點(diǎn)加入突變點(diǎn)數(shù)組;求出下一插補(bǔ)點(diǎn)坐標(biāo);如結(jié)束,將處理結(jié)果輸出至實(shí)時插補(bǔ)模塊,并讀入加工程序的下一段;返回設(shè)置當(dāng)前程序段的初始速度步驟。本發(fā)明能夠保證每個插補(bǔ)周期實(shí)時輸出一個可靠的插補(bǔ)點(diǎn),所求減速點(diǎn)精度高,可交互性好,能實(shí)時響應(yīng)修調(diào)操作。
文檔編號G05B19/41GK101957611SQ20091001258
公開日2011年1月26日 申請日期2009年7月16日 優(yōu)先權(quán)日2009年7月16日
發(fā)明者于東, 孫玉娥, 張曉輝, 李建偉, 林滸 申請人:中國科學(xué)院沈陽計算技術(shù)研究所有限公司;沈陽高精數(shù)控技術(shù)有限公司