李勇波,裴雪豐
(中國地質大學 (武漢)機械與電子信息學院,湖北武漢 430074)
三次參數樣條曲線恒線速插補的研究
李勇波,裴雪豐
(中國地質大學 (武漢)機械與電子信息學院,湖北武漢 430074)
針對非線性曲線輪廓的插補,在數據采樣插補的基礎上,研究三次參數樣條曲線恒線速插補方法,并通過構建OpenGL渲染環境,對數據進行仿真,完成了曲線恒線速插補的G代碼設計,實現了復雜零件輪廓的插補。
三次參數樣條曲線;恒線速插補;OpenGL
由于樣條曲線的二階連續性,在具有復雜輪廓的曲面機械加工中,其實現方法得到廣泛研究,其參數化實現是國內外數控和CAD/CAM技術的研究熱點[1-3]。復雜零件輪廓的加工實現,傳統的做法是通
過微小直線段來逼近曲面輪廓,為了滿足精度要求,直線段取值很小,造成NC代碼量大的問題。為了滿足復雜曲線高速、高精度加工要求,在分析數控系統數據采樣插補方法的基礎上,研究了樣條曲線的參數實現方式,并對參數方程進行微分處理,實現恒線速插補。插補實現原理如下:在已知曲線控制點坐標的前提下,將曲線分段,分別求出相鄰兩點之間的曲線
參數方程;由進給速度計算每個插補周期的進給量,由恒線速原理計算各軸向進給量,送給伺服系統實現插補。
數控系統中數據采樣插補在以直流或交流電機為執行機構的閉環和半閉環位置采樣系統中應用較多。
三次樣條插值方法數值穩定性好,曲線具有一階、二階導數連續的性質,精度與樣條函數的次數無關[4]。但也存在其局限性,如不能模擬大撓度曲線、依賴于坐標系的選擇、缺乏幾何不變性等,采用參數曲線可克服上述問題[5-7]。
對給定的一組控制點Q0,Q1,…,Qn,假設曲線由n段r(t)拼接而成。


由上節求出參數樣條曲線方程,恒線速插補即在曲線切線方向上單位進給量不變,令單位進給量為DIV。如圖1所示,圖中的點C和點D之間通過兩個插補周期即可完成,以兩段直線段來代替曲線段。

圖1 插補示意圖

Δx,Δy即為每軸單位時間內的插補進給量,曲線切線方向的單位進給量d s(t)=DIV保持恒定。
樣條曲線在數控領域應用比較廣泛,以電子凸輪為例,傳統的機械凸輪是通過凸輪實現非線性的加工軌跡,而電子凸輪則直接將軌跡點輸入到驅動器內,方便根據需求更改曲線,并且沒有機械凸輪的磨損。
例如加工出如圖2所示凸輪中間輪廓,按照輪廓參數要求設定控制點坐標 (以圓心為坐標系原點),采樣12個控制點 (單位mm):


圖2 凸輪
為了驗證計算結果的正確性,通過OpenGL對計算的數據進行仿真。OpenGL是個專業的圖形程序接口,通過調用底層圖形庫實現繪圖,同樣應用在數控仿真領域[8]。按照一定的步驟在VC++6.0開發環境下進行配置[9],令DIV=10.0 mm。按上述方法計算每段曲線的參數方程,通過恒線速處理,得到各軸向每段時間的單位時間進給量xi(t),yi(t)并描繪出來,仿真曲線如圖3所示,改變DIV=5.0 mm,插值點的個數增加,見圖4。

圖3 OpenGL仿真圖(DIV=10.0mm)

圖4 OpenGL仿真圖(DIV=5.0 mm)
圖3中標注的為控制點,其余為插值點,控制點按照在曲線上的順序依次賦值。圖5為AutoCAD所繪的非閉合樣條曲線圖 (擬合公差為0)。對比3個圖可知:用該方法得到的參數曲線通過微分處理后,將曲線分成若干小直線段,通過設置DIV來調節小直線段,進而提高精度。

圖5 AutoCAD所繪的非閉合樣條曲線圖
分析上述樣條曲線可知,所需參數如下:控制點各軸坐標、插補周期、進給速度。
在數控系統中將各控制點坐標存儲在用戶變量中,起點為上節G代碼的結束點;插補周期在以數控采樣插補為主的系統中為恒定值;進給速度由用戶定義,可以更改。因此可定義如下G代碼格式:

其中:G06為自定義G碼,可以設為其他值;Q、E分別是控制點坐標的起始、結束地址;D為坐標指定方式 (0絕對或1相對);A、B為樣條曲線結束點坐標值;F為進給速度。
設置以上G代碼格式,其執行流程如圖6所示。

圖6 樣條曲線執行流程圖
將OpenGL仿真程序稍做更改,移植到數控系統中進行描圖,并進行測試。將上述采樣數據點保存在起始地址為1000的變量中,測試G碼如下:


根據數控器程式預覽功能,得到如圖7所示的描圖軌跡。

圖7 樣條曲線測試圖
從測試可知:該方法有效地描繪了復雜曲線的軌跡,測試程序簡單,可移植性強。
綜上所述,采用建立三次參數樣條曲線方程的方法,在已知復雜曲線關鍵控制點的前提下,仿真效果明顯,并在實際數控系統中得到應用。
[1]蓋榮麗,王允森,孫一蘭,等.樣條曲線插補方法綜述[J].小型微型計算機系統,2012,33(12):2744-2748.
[2]黃建,宋愛平,陶建明,等.一種三次插值樣條曲線的插補方法研究[J].現代制造工程,2012(4):46-49.
[3]LIN Bin.Parametric Cubic Spline Method for the Solution of the Nonlinear Schrodinger Equation[J].Computer Physics Communications,2012(2):60-65.
[4]李慶揚.數值分析[M].北京:清華大學出版社,2008.
[5]張彩明.高精度三次參數樣條曲線的構造[J].計算機學報,2002,25(3):262-268.
[6]MOHANTY R K,JAIN M K,DHALL Deepika.High Accuracy Cubic Spline Approximation for Two Dimensional Quasi-linear Elliptic Boundary Value Problems[J].Applied Mathematical Modelling,2012(2):155-171.
[7]FYFED J.The Use of Cubic Splines in the Solution of Twopoint Boundary Value Problems[J].Computer Journal,1969,12(2):188-192.
[8]李琳茹,游林儒,劉少君.利用OpenGL實現數控系統加工過程的三維動態仿真[J].組合機床與自動化加工技術,2012(1):62-65.
[9]王正強.OpenGL在VC++6.0開發環境下的編程實現[J].軟件技術,2011(1):89-91.
Research on Constant Linear Velocity Interpolation of Parametric Cubic Sp line
LIYongbo,PEIXuefeng
(College of Mechanical& Electronic Information,China University of Geosciences,Wuhan Hubei430074,China)
In order to realize nonlinear curve contour interpolation,how to achieve constant linear velocity interpolation was discussed for parametric cubic spline and OpenGLwas used to do some data simulation based on data sampling interpolation,then G code of constant linear velocity interpolation was designed.Interpolation of outline of complex partswas completed.
Parametric cubic spline curves;Constant linear velocity interpolation;OpenGL
TP29
A
1001-3881(2014)10-025-3
10.3969/j.issn.1001-3881.2014.10.007
2013-04-16
李勇波 (1967—),男,碩士,副教授,研究方向為機電一體化與自動控制。E-mail:13986290039@139.com。