《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于三次樣條函數(shù)的數(shù)控插補(bǔ)算法研究
基于三次樣條函數(shù)的數(shù)控插補(bǔ)算法研究
來源:微型機(jī)與應(yīng)用2011年第14期
孫旭霞,張 英
(西安理工大學(xué) 自動化與信息工程學(xué)院,,陜西 西安710048)
摘要: 針對復(fù)雜輪廓的曲線,在數(shù)據(jù)采樣插補(bǔ)原理的基礎(chǔ)上,,采用了一種基于三次樣條函數(shù)的插補(bǔ)算法。該方法能精確地擬合出復(fù)雜曲線的輪廓,,且使得該曲線具有很好的連續(xù)性,。在基于ARM數(shù)控裝置上,對此算法進(jìn)行了實(shí)驗(yàn)驗(yàn)證,,驗(yàn)證了該方法的可行性,。
Abstract:
Key words :

摘  要: 針對復(fù)雜輪廓的曲線,在數(shù)據(jù)采樣插補(bǔ)原理的基礎(chǔ)上,,采用了一種基于三次樣條函數(shù)插補(bǔ)算法,。該方法能精確地擬合出復(fù)雜曲線的輪廓,且使得該曲線具有很好的連續(xù)性,。在基于ARM數(shù)控裝置上,,對此算法進(jìn)行了實(shí)驗(yàn)驗(yàn)證,驗(yàn)證了該方法的可行性,。
關(guān)鍵詞: 三次樣條函數(shù),;曲線擬合;插補(bǔ)算法,;ARM

 隨著微電子技術(shù),、計算機(jī)技術(shù)、自動控制技術(shù)和通信技術(shù)的不斷進(jìn)步,,現(xiàn)代數(shù)控系統(tǒng)的發(fā)展趨向高性能化。其中性能的完善主要體現(xiàn)在高速度,、高精度,、高可靠性、多功能化,、網(wǎng)絡(luò)化,、小型化,、多樣化、智能化和開放性等方面,。插補(bǔ)技術(shù)是數(shù)控系統(tǒng)的核心,,為使高檔數(shù)控系統(tǒng)能發(fā)揮其功能,高精度,、高速度,、高效率的插補(bǔ)算法成為目前研究需要突破的難點(diǎn)[1]。
    在數(shù)控插補(bǔ)裝置上,,針對船身外放樣時的樣條曲線,,汽車、飛機(jī)及各種產(chǎn)品的外形曲線等無法用標(biāo)準(zhǔn)代數(shù)方程描述的復(fù)雜曲線,,一般都采用直線逼近或圓弧逼近的方法來實(shí)現(xiàn)其插補(bǔ),,然而這種方法所編寫的算法較為復(fù)雜,且在計算過程中還會產(chǎn)生計算誤差及誤差的累積,,降低了插補(bǔ)的精度,。而三次樣條函數(shù)基于可使曲線各分段處保持一定程度的光滑性,其具有很好的保凸性和光順性,,且能保持曲線的連續(xù)性,。同時三次樣條函數(shù)的應(yīng)用范圍廣泛,特別是在給定型值點(diǎn)的曲線擬合方面,,如在插補(bǔ)裝置中實(shí)現(xiàn)凸輪,、汽車外輪廓等曲線。因此對于某些復(fù)雜零件,,采用三次樣條函數(shù)的插補(bǔ)方法描述其輪廓是一種極為有效的手段,。基于三次樣條函數(shù)的上述特性,,本文描述了三次樣條曲線形成曲線輪廓并在數(shù)控插補(bǔ)裝置上實(shí)現(xiàn)插補(bǔ)的過程,。該方法既能提高插補(bǔ)精度,又使計算不太復(fù)雜[2,,3],。

2 三次樣條曲線輪廓的擬合原理
    利用三次樣條函數(shù)解決復(fù)雜曲線插補(bǔ)問題的思路是:在被插補(bǔ)的復(fù)雜曲線上找到一定數(shù)量的型值點(diǎn),采用三次樣條求出插補(bǔ)中間點(diǎn),,然后利用相鄰兩端曲線交點(diǎn)處的一階導(dǎo)數(shù),、二階導(dǎo)數(shù)相等這一條件,實(shí)現(xiàn)整段曲線連續(xù)且在曲線連接處平滑過渡的效果,。


    以[xj,,xj+1]為例,該算法的插補(bǔ)過程如下:此為三次樣條曲線中第j段的插補(bǔ),x軸以xj為起點(diǎn)坐標(biāo),, x每次累加△x,,再根據(jù)函數(shù)表達(dá)式計算出Sj(x)的值,照此循環(huán)計算,,就可算出每一段函數(shù)每一點(diǎn)x所對應(yīng)的函數(shù)值,,最終得到插補(bǔ)點(diǎn)X、Y軸的坐標(biāo)值,,并輸出每一點(diǎn)的坐標(biāo)值,,直到x=xj+1,整段的插補(bǔ)即完成了,。其中△x為正整數(shù),,且其所取值必須使得(xj+1-xj)/△x為整數(shù),并確保Y坐標(biāo)值的變化量大于1,。其他段按上述原理繼續(xù)進(jìn)行相應(yīng)的插補(bǔ)計算,。
4 在數(shù)控裝置上的實(shí)現(xiàn)
4.1 數(shù)控裝置的介紹

    本文使用以S3C2410為主芯片的ARM開發(fā)板作為數(shù)控裝置。ARM采用RISC結(jié)構(gòu),,能在一個機(jī)器周期內(nèi)執(zhí)行一條指令,。此開發(fā)板屬于ARM9處理器系列,具有ICache和DCache,,提高了存儲器訪問的效率,,具有64 MB NAND Flash和64 MB SDRAM的儲存容量。其晶振頻率為12 MHz,,而時鐘控制邏輯能夠產(chǎn)生4倍晶振頻率的PCLK時鐘信號,,即為48 MHz。用該P(yáng)CLK值計算所得的定時器輸入頻率高,,從而使得定時時間能設(shè)定得很短,。以上特性使此插補(bǔ)算法能在該裝置上得以運(yùn)行,且具有較高的插補(bǔ)速度,,以實(shí)現(xiàn)三次樣條曲線的插補(bǔ),。
    在ARM開發(fā)板上外接兩個步進(jìn)電機(jī),分別用于實(shí)現(xiàn)X軸和Y軸方向的插補(bǔ),。通過改變定時計數(shù)器的初值,,使得脈沖輸出速度不同,從而實(shí)現(xiàn)步進(jìn)電機(jī)以不同速度沿X軸和Y軸運(yùn)行,。
    三次樣條曲線的插補(bǔ)算法流程如圖1所示,。

4.2 實(shí)驗(yàn)結(jié)果及分析
    為了驗(yàn)證三次樣條函數(shù)插補(bǔ)方法的可行性,取一組滿足三次樣條函數(shù)的型值點(diǎn),,根據(jù)三次樣條函數(shù)的擬合原理編程,,擬合出如圖2所示的三次樣條曲線。

    圖2是整個三次樣條曲線的輪廓,,為了把這種方法應(yīng)用在數(shù)控插補(bǔ)上,,還必須在此基礎(chǔ)上取適當(dāng)?shù)牟逖a(bǔ)點(diǎn),在ADS1.2集成環(huán)境下,,用ARM開發(fā)板進(jìn)行調(diào)試,,在此裝置上運(yùn)行之后,使得步進(jìn)電機(jī)依插補(bǔ)結(jié)果運(yùn)轉(zhuǎn),,運(yùn)行結(jié)果如圖3所示,。

 按照以上兩圖的實(shí)現(xiàn)結(jié)果進(jìn)行如下分析:圖2是按照擬合原理擬合出來的完整三次樣條曲線的輪廓,該曲線相鄰兩端交點(diǎn)處一階導(dǎo)數(shù),、二階導(dǎo)數(shù)相等,,具有很好的光順性,且保持良好的連續(xù)性,。圖3是在三次樣條曲線基礎(chǔ)上取適當(dāng)?shù)牟逖a(bǔ)點(diǎn)進(jìn)行插補(bǔ)的結(jié)果,,取的插補(bǔ)點(diǎn)越密集,插補(bǔ)結(jié)果就越接近真實(shí)曲線,,精度也就越高,。由插補(bǔ)算法可知Y坐標(biāo)值是根據(jù)X坐標(biāo)值計算所得,最終求得y的變化量,,因此x所對應(yīng)的I/O每輸出一個脈沖,,y對應(yīng)的I/O輸出的脈沖數(shù)根據(jù)計算結(jié)果而變化。由于插補(bǔ)的每個點(diǎn)都確保在此三次樣條曲線上,,比起用直線或圓弧逼近曲線的方法,,插補(bǔ)效果在準(zhǔn)確度和精確度上明顯提高。
    在數(shù)控裝置上,,利用三次樣條函數(shù)不僅能夠進(jìn)行簡單曲線的插補(bǔ)計算,,對于無法通過直線、圓弧以及其他二次曲線來描述其輪廓的復(fù)雜零件,,同樣能實(shí)現(xiàn)其插補(bǔ),,同時具有很好的保凸性和光順性,且保證了插值函數(shù)的連續(xù)性及插補(bǔ)的精度,,增加了數(shù)控裝置的曲線應(yīng)用范圍,。本文以ARM開發(fā)板作為數(shù)控裝置,對此插補(bǔ)算法進(jìn)行了驗(yàn)證,,該方法算法簡單,,易實(shí)現(xiàn),精度較高,,插補(bǔ)效果好,。
參考文獻(xiàn)
[1] 盧勝利,王睿鵬,祝玲.現(xiàn)代數(shù)控系統(tǒng)—原理,、構(gòu)成與實(shí)例[M].北京:機(jī)械工業(yè)出版社,,2007.
[2] 包園園.三次樣條函數(shù)在自由曲線測量中的應(yīng)用研究[J].機(jī)械制造與自動化,2009,,38(2):88-89.
[3] 王茹傳,,黃海平,林巧民.計算機(jī)圖形學(xué)(第2版)[M].北京:人民郵電出版社,,2009.
[4] 聶玉峰.Lagrange插值和Hermite插值的內(nèi)在統(tǒng)一理論[J]. 高等數(shù)學(xué)研究,,2010,13(1):13-14.
[5] 鄒淑芳.三次樣條函數(shù)的基樣條法和三彎矩法之異同比較[J].云南電大學(xué)報,,2009,,11(2):93-96.
[6] Sun Ningping,AYABE T,,NISHIZAKI T.Efficient spline interpolation curve modeling[C].Intelligent Information Hiding and Multimedia Signal Processing,,2007:59-62.
[7] 許小勇,鐘太勇.三次樣條插值函數(shù)的構(gòu)造與Matlab實(shí)現(xiàn)[J].自動測量與控制,,2006,,25(11):76-78.
[8] 孫令德.計算機(jī)圖形學(xué)實(shí)踐教程(Visual C++版)[M].北京:清華大學(xué)出版社,2008.
(收稿日期:2011-01-21) 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。