基于FPGA的數(shù)字積分法插補控制器設計與實現(xiàn)
在本插補控制器中,采用了“半加載”的方式實現(xiàn)輸出脈沖的均勻分配。半加載就是在插補運算前,在余數(shù)寄存器中預置該寄存器容量一般的值,這樣可以使在插補數(shù)據(jù)遠小于插補器位寬的情況下,使積分器更快地輸出溢出脈沖,從而使脈沖更為均勻。
積分器做插補時,無論被積函數(shù)的大小,都必須經(jīng)過216次累加才能到達終點,因此各軸輸出脈沖速度受被積函數(shù)大小影響,被積函數(shù)越大,脈沖輸出速度越高。為了讓積分器溢出速度達到最快且均勻,在插補時,把各軸被積函數(shù)寄存器中的數(shù)據(jù)同時進行左移規(guī)格化處理,使其中一軸的最高位為“1”。左移1位,相當于各軸乘2,左移2位各軸則同時乘22,以此類推。這樣,在不改變各軸數(shù)據(jù)比值的情況下,提高了各軸的脈沖溢出速度。規(guī)格化后,每累加運算2次必有1次脈沖輸出,很好地解決了小進給量輸出不均勻的問題,插補的效率和質(zhì)量大為提高。
2.2.2 圓弧插補模塊
圓弧插補模塊與直線插補相同,也由數(shù)據(jù)緩存器、插補積分器和位置計數(shù)器構成。兩模塊的數(shù)據(jù)緩存器和位置計數(shù)器功能相同,這里不再闡述。
圓弧插補積分器與直線插補積分器同樣采用狀態(tài)機的設計實現(xiàn),但它們之間有兩點區(qū)別:一是x,y軸相應坐標值存入被積函數(shù)寄存器的對應關系與直線不同,恰好是位置互調(diào)的,即y軸的被積函數(shù)寄存器中存入x值,x軸的被積函數(shù)寄存器中存入y值;二是存入的坐標值不同,直線插補時寄存的終點坐標是常數(shù),而圓弧插補時寄存的是動點坐標,在插補過程中根據(jù)其位置的變化應更改被積函數(shù)寄存器中所存的內(nèi)容。當y軸每溢出1個脈沖,x軸的被積函數(shù)寄存器加“1”;反之,當x軸每溢出1個脈沖,y軸的被積函數(shù)寄存器減“1”,減“1”的原因是x向負方向進給,動坐標不斷減少。
3 仿真實驗
為驗證設計的正確性,仿真實驗完成了二維的直線插補和圓弧插補。
(1)直線插補仿真。當給定一直線段的起點坐標為(0,0,0),終點坐標為(10,12,0),則該直線在xOy平面內(nèi)完成直線插補的仿真信號波形如圖4所示。本文引用地址:http://www.ex-cimer.com/article/190545.htm
fpga相關文章:fpga是什么
伺服電機相關文章:伺服電機工作原理
評論