當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]摘要:為了提高伺服電機(jī)的步進(jìn)精度,簡(jiǎn)化控制器結(jié)構(gòu),采用FPGA器件并運(yùn)用Verilog HDL語言設(shè)計(jì)出的插補(bǔ)控制器,不僅采用數(shù)字積分法實(shí)現(xiàn)直線插補(bǔ)控制和圓弧插補(bǔ)控制,提高了插補(bǔ)速度和插補(bǔ)精度,而且運(yùn)用多軸聯(lián)動(dòng)技術(shù),

摘要:為了提高伺服電機(jī)的步進(jìn)精度,簡(jiǎn)化控制器結(jié)構(gòu),采用FPGA器件并運(yùn)用Verilog HDL語言設(shè)計(jì)出的插補(bǔ)控制器,不僅采用數(shù)字積分法實(shí)現(xiàn)直線插補(bǔ)控制和圓弧插補(bǔ)控制,提高了插補(bǔ)速度和插補(bǔ)精度,而且運(yùn)用多軸聯(lián)動(dòng)技術(shù),實(shí)現(xiàn)輸出脈沖的均勻分配。它可接收外部處理器指令,并發(fā)出所需的脈沖到伺服電機(jī)的驅(qū)動(dòng)中,從而控制伺服電機(jī)的運(yùn)轉(zhuǎn),其結(jié)果證明了該控制器的正確性。這種結(jié)構(gòu)的控制器簡(jiǎn)化了一般數(shù)字控制器結(jié)構(gòu),具有良好的移植性能和一定的實(shí)用價(jià)值。
關(guān)鍵詞:運(yùn)動(dòng)控制;FPGA;插補(bǔ)控制器;數(shù)字積分法

0 引言
    數(shù)控系統(tǒng)的核心技術(shù)是運(yùn)動(dòng)控制技術(shù),隨著機(jī)電一體化的深入發(fā)展,運(yùn)動(dòng)控制技術(shù)已經(jīng)成為推動(dòng)機(jī)電一體化進(jìn)程的重要環(huán)節(jié),是推動(dòng)新的產(chǎn)業(yè)革命的關(guān)鍵技術(shù)碼。
    現(xiàn)代高速數(shù)控技術(shù)對(duì)運(yùn)動(dòng)控制器的速度和精度要求日益提高,與運(yùn)用軟件實(shí)現(xiàn)的控制器相比較,基于FPGA設(shè)計(jì)的插補(bǔ)控制器具有控制方便、插補(bǔ)速度快、精度高、通用性好、可移植性的特點(diǎn),并擁有可運(yùn)用硬件描述語言實(shí)現(xiàn)軟硬結(jié)合等多種優(yōu)點(diǎn)。為了提高伺服電機(jī)的精確度,本文設(shè)計(jì)了一個(gè)基于數(shù)字積分法并采用多軸聯(lián)動(dòng)技術(shù)的插補(bǔ)控制器,該控制器可實(shí)現(xiàn)三軸的直線插補(bǔ)和兩軸的圓弧插補(bǔ)。

1 插補(bǔ)控制器的總體設(shè)計(jì)
    該控制器的核心部分是DDA插補(bǔ)模塊,整個(gè)插補(bǔ)模塊可分成直線插補(bǔ)模塊和圓弧插補(bǔ)模塊兩部分。每個(gè)插補(bǔ)模塊內(nèi)都由數(shù)據(jù)緩存器、插補(bǔ)積分器和位置計(jì)數(shù)器3個(gè)部分組成。下面分別介紹各個(gè)模塊的設(shè)計(jì)及仿真。


    插補(bǔ)控制器具備三軸直線插補(bǔ)及兩軸圓弧插補(bǔ)的能力,2種插補(bǔ)均采用數(shù)字積分法實(shí)現(xiàn)。數(shù)字積分法(DDA)具有邏輯能力強(qiáng)、可實(shí)現(xiàn)多軸聯(lián)動(dòng)控制,且輸出脈沖均勻的特點(diǎn)。如圖1所示,插補(bǔ)控制器接收到外部處理器的控制信號(hào)和數(shù)據(jù),經(jīng)過譯碼及配置寄存器模塊的譯碼和配置后,根據(jù)需要選擇進(jìn)行直線插補(bǔ)或圓弧插補(bǔ),輸出指脈沖和方向信號(hào)。脈沖用于通過伺服電機(jī)驅(qū)動(dòng)控制伺服電機(jī)的轉(zhuǎn)動(dòng),方向信號(hào)則控制伺服電機(jī)的轉(zhuǎn)動(dòng)方向。

2 基于FPGA的模塊設(shè)計(jì)
    該插補(bǔ)控制器采用Altera公司的CycloneⅢ-EP3C16Q240C8,運(yùn)用Verilog HDL完成程序設(shè)計(jì),在QuartusⅡ平臺(tái)進(jìn)行編譯、綜合及下載,運(yùn)用Modeisim進(jìn)行程序的仿真和調(diào)試,最終完成整個(gè)控制器的設(shè)計(jì)(如圖1所示)。
2.1 譯碼及配置寄存器模塊
    譯碼及配置寄存器模塊主要負(fù)責(zé)譯碼和完成各寄存器間數(shù)據(jù)的分配,并且選擇需要進(jìn)行的插補(bǔ)方式。以下為各個(gè)輸入端口的定義和工作方式:cs為片選信號(hào)。
    低電平有效,外部處理器選中插補(bǔ)控制器,使其進(jìn)入待命狀態(tài);rest為復(fù)位信號(hào)。低電平有效,整個(gè)控制器處于復(fù)位狀態(tài),控制器內(nèi)部各個(gè)模塊做初始化操作;wr為寫信號(hào),低電平有效,向插補(bǔ)控制器寫入需要完成插補(bǔ)的初始點(diǎn)坐標(biāo)和終點(diǎn)坐標(biāo)的數(shù)據(jù);start為插補(bǔ)開始信號(hào),高電平有效,插補(bǔ)控制器開始進(jìn)行插補(bǔ);A3~A0為4位地址信號(hào),通過地址指針的形式,將處理器數(shù)據(jù)分配給插補(bǔ)模塊各軸的數(shù)據(jù)緩存器。其中,高位A3具有選擇插補(bǔ)方式的功能;A3位為“0”時(shí),插補(bǔ)控制器做三軸直線插補(bǔ);A3位為“1”時(shí),做兩軸圓弧插補(bǔ);data為16位數(shù)據(jù)總線端口。
2.2 DDA插補(bǔ)模塊
    DDA插補(bǔ)模塊有直線插補(bǔ)和圓弧插補(bǔ)兩部分,兩種插補(bǔ)方式在一次插補(bǔ)過程中,只能有一種處于工作狀態(tài)。直線插補(bǔ)能夠?qū)崿F(xiàn)3個(gè)軸的脈沖輸出,完成二維或三維的直線軌跡,而圓弧插補(bǔ)是實(shí)現(xiàn)兩軸的脈沖輸出,實(shí)現(xiàn)二維的圓弧軌跡。
2.2.1 直線插補(bǔ)模塊
    當(dāng)選中直線插補(bǔ)模塊時(shí),該模塊進(jìn)入工作狀態(tài)。直線插補(bǔ)模塊由數(shù)據(jù)緩存器、插補(bǔ)積分器和位置計(jì)數(shù)器3個(gè)部分組成。下面分別介紹各部分的設(shè)計(jì)及其功能。
    (1)數(shù)據(jù)緩存器
    數(shù)據(jù)緩存器共由6個(gè)16位寄存器構(gòu)成,它們分別存儲(chǔ)x,y,z三個(gè)軸的初始點(diǎn)坐標(biāo)值及終點(diǎn)坐標(biāo)值。數(shù)據(jù)緩存模塊將直線插補(bǔ)的數(shù)據(jù)進(jìn)行自動(dòng)加載,以便于直線插補(bǔ)積分器調(diào)用模塊內(nèi)的數(shù)據(jù)。進(jìn)行緩存的目的是為了保持?jǐn)?shù)據(jù)的流暢性,確保直線插補(bǔ)不因?yàn)閿?shù)據(jù)的轉(zhuǎn)變而出現(xiàn)中斷的情況。這樣大大地提高直線插補(bǔ)的效率,同時(shí)減少因?yàn)闀r(shí)序問題所帶來的誤差。當(dāng)積分器加載緩存器中的數(shù)據(jù)完畢以后,積分器接收到start信號(hào),積分器開始進(jìn)行數(shù)字積分直線插補(bǔ)。當(dāng)數(shù)據(jù)緩存器接收到rest信號(hào)時(shí),緩存器中所有數(shù)據(jù)全部做復(fù)位操作。
    (2)位置計(jì)數(shù)器
    位置計(jì)數(shù)器有3個(gè)寄存器,分別對(duì)應(yīng)于三個(gè)軸。其初始值為需要插補(bǔ)的脈沖數(shù)目。當(dāng)積分器每輸出一個(gè)脈沖,計(jì)數(shù)器便做減“1”。當(dāng)位置計(jì)數(shù)器為零時(shí),則表示到達(dá)終點(diǎn)坐標(biāo)位置,插補(bǔ)結(jié)束。
    (3)插補(bǔ)積分器
    插補(bǔ)積分器是直線插補(bǔ)的核心模塊,由余數(shù)寄存器和被積函數(shù)寄存器構(gòu)成。被積函數(shù)寄存器中存放由數(shù)據(jù)緩存器提供的終點(diǎn)坐標(biāo)值,每當(dāng)脈沖源發(fā)出1個(gè)插補(bǔ)迭代脈沖時(shí),被積函數(shù)寄存器與余數(shù)寄存器的值累加1次,并將累加結(jié)果存放余數(shù)寄存器中,當(dāng)累加結(jié)果超出余數(shù)寄存器容量(216)時(shí),溢出1個(gè)脈沖。經(jīng)過N=216次累加后,每個(gè)坐標(biāo)軸的溢出脈沖總數(shù)就等于該坐標(biāo)的被積函數(shù)值。在余數(shù)寄存器的容量一定的情況下,其輸出脈沖頻率與終點(diǎn)坐標(biāo)值的大小成正比。控制器采用三軸聯(lián)動(dòng),則同時(shí)有3個(gè)積分器同時(shí)進(jìn)行插補(bǔ)運(yùn)算。在該插補(bǔ)控制器的設(shè)計(jì)中,采用有限狀態(tài)機(jī)的原理完成直線插補(bǔ)的實(shí)現(xiàn),如圖2所示,共有3個(gè)狀態(tài)存在:


    (1)狀態(tài)IDLE:空閑狀態(tài),等待插補(bǔ)信號(hào);
    (2)狀態(tài)S1:剩余插補(bǔ)脈沖數(shù)寄存;
    (3)狀態(tài)S2:積分累加狀態(tài)。
    其工作過程為:當(dāng)沒有啟動(dòng)信號(hào)時(shí),系統(tǒng)繼續(xù)保持在空閑狀態(tài)IDLE;當(dāng)有啟動(dòng)信號(hào)start時(shí),系統(tǒng)則從數(shù)據(jù)緩存器中讀入初始數(shù)據(jù),將插補(bǔ)脈沖數(shù)寄存在狀態(tài)S1中,若插補(bǔ)脈沖數(shù)不為零則轉(zhuǎn)至積分累加狀態(tài)S2中,在此狀態(tài)中將被積函數(shù)寄存器的值與余數(shù)寄存器的值進(jìn)行累加,結(jié)果送余數(shù)寄存器,若有脈沖溢出,則轉(zhuǎn)入狀態(tài)S1,此時(shí)輸出插補(bǔ)脈沖,且狀態(tài)S1中剩余脈沖數(shù)減“1”;若無脈沖溢出,則狀態(tài)S2繼續(xù)進(jìn)行積分累加。最終,狀態(tài)S1中的剩余脈沖為零時(shí),返回空閑狀態(tài),插補(bǔ)結(jié)束。
    數(shù)字積分法直線插補(bǔ)運(yùn)用硬件描述語言VerilogHDL進(jìn)行程序編寫的流程圖如圖3所示。


    在本插補(bǔ)控制器中,采用了“半加載”的方式實(shí)現(xiàn)輸出脈沖的均勻分配。半加載就是在插補(bǔ)運(yùn)算前,在余數(shù)寄存器中預(yù)置該寄存器容量一般的值,這樣可以使在插補(bǔ)數(shù)據(jù)遠(yuǎn)小于插補(bǔ)器位寬的情況下,使積分器更快地輸出溢出脈沖,從而使脈沖更為均勻。
    積分器做插補(bǔ)時(shí),無論被積函數(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所示。


    現(xiàn)分別給出了在xOy平面內(nèi),該直線與另外兩條直線構(gòu)成三角形的多角度的直線插補(bǔ)軌跡(如圖5所示),三角形的頂點(diǎn)坐標(biāo)分別為(0,0),(10,12)和(15,6)。由插補(bǔ)軌跡圖可見,各個(gè)角度的直線插補(bǔ)軌跡(各點(diǎn)連線)與實(shí)際直線(實(shí)線)的擬合度良好,直線交界處完全吻合,完成了預(yù)期的封閉圖形。


    (2)圓弧插補(bǔ)模塊仿真如圖6所示為位于第一象限,在xOy平面內(nèi),起點(diǎn)坐標(biāo)為(15,0),終點(diǎn)坐標(biāo)為(0,15)的逆時(shí)針圓弧的插補(bǔ)仿真結(jié)果。


    圖7展示了在xOy平面內(nèi),起點(diǎn)坐標(biāo)分別為(5,0),(8,0)和(15,0)的逆時(shí)針圓弧的插補(bǔ)軌跡(各點(diǎn)連線)與實(shí)際圓弧(實(shí)線)的比較。由圖可見,隨著軌跡點(diǎn)的增加,圓弧軌跡與實(shí)際圓弧的擬合度越高。

4 結(jié)語
    基于數(shù)字積分法和多軸聯(lián)動(dòng)技術(shù)設(shè)計(jì)的伺服電機(jī)插補(bǔ)控制器,其在直線插補(bǔ)中不僅實(shí)現(xiàn)了直線的精確步進(jìn),而且通過不同方位的運(yùn)動(dòng)很好的得到了原點(diǎn)的回復(fù)。在圓弧運(yùn)動(dòng)中,隨著精細(xì)的插補(bǔ),圓弧的擬合精度提高。隨著運(yùn)動(dòng)控制系統(tǒng)朝著通用化、智能化、微型化的方向發(fā)展的趨勢(shì),插補(bǔ)控制器是運(yùn)動(dòng)控制系統(tǒng)飛速發(fā)展的重要基石。本文研究的插補(bǔ)控制器不僅實(shí)現(xiàn)三軸直線插補(bǔ)及兩軸的圓弧插補(bǔ),而且采用多軸聯(lián)動(dòng),插補(bǔ)精度得到提高,脈沖輸出均勻。這種設(shè)計(jì)優(yōu)化了結(jié)構(gòu),易于操作,便于與外部處理器擴(kuò)展和鏈接,以構(gòu)成完整的運(yùn)動(dòng)控制系統(tǒng)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉