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