亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的變M/T歸一化測(cè)速算法研究

        2019-09-13 03:37:22李小闖
        關(guān)鍵詞:伺服電機(jī)編碼器時(shí)鐘

        李小闖 于 強(qiáng)

        1(中國(guó)科學(xué)院國(guó)家空間科學(xué)中心 北京 100190)2(中國(guó)科學(xué)院大學(xué) 北京 100049)

        0 引 言

        在我國(guó)空間材料科學(xué)實(shí)驗(yàn)的研究中,傳動(dòng)結(jié)構(gòu)往往基于步進(jìn)電機(jī)進(jìn)行;步進(jìn)電機(jī)雖然控制方式較為簡(jiǎn)單,但往往難以獲得較大的轉(zhuǎn)矩,而隨著實(shí)驗(yàn)樣品體積的增大,步進(jìn)電機(jī)逐漸難以滿足實(shí)驗(yàn)需求。而永磁同步電機(jī)雖然控制較為復(fù)雜,但因其良好的轉(zhuǎn)矩特性使其擁有更好的應(yīng)用前景。在空間材料科學(xué)實(shí)驗(yàn)中,對(duì)樣品的移動(dòng)速度及準(zhǔn)確定位要求十分嚴(yán)格,這也對(duì)永磁同步電機(jī)的速度控制提出了較高的要求。傳統(tǒng)的M/T測(cè)速法雖然能夠有效地對(duì)電機(jī)轉(zhuǎn)速進(jìn)行測(cè)量,但其在低速范圍的實(shí)時(shí)性較差。而在空間材料科學(xué)實(shí)驗(yàn)中樣品的移動(dòng)速度跨度范圍較大(5 mm/天~2 mm/min),因此對(duì)M/T測(cè)速算法的改進(jìn)勢(shì)在必行。

        本文針對(duì)永磁同步電機(jī)的測(cè)速問(wèn)題,結(jié)合FPGA特性,提出一種基于FPGA的變M/T的歸一化測(cè)速算法,從而在保持傳統(tǒng)M/T測(cè)速精度的同時(shí),改善測(cè)速的實(shí)時(shí)性。同時(shí)歸一化的設(shè)計(jì)思路能夠使得系統(tǒng)能夠適用于任何基于增量編碼器的永磁同步電機(jī)測(cè)速環(huán)境。針對(duì)設(shè)計(jì)中所需要的乘除運(yùn)算,引入Booth算法以降低設(shè)計(jì)對(duì)DSP的需求。

        1 增量編碼器工作原理

        永磁同步電機(jī)轉(zhuǎn)速測(cè)量依靠在轉(zhuǎn)子上安裝的增量編碼器進(jìn)行速度檢測(cè)。增量編碼器采用光電轉(zhuǎn)換原理,輸出兩相正交脈沖信號(hào)A、B與一路零相信號(hào)Z:A、B兩相相差90°,若A相超前B相,則電機(jī)處于正轉(zhuǎn),否則處于反轉(zhuǎn);電機(jī)旋轉(zhuǎn)一圈零相信號(hào)Z輸出一個(gè)脈沖。增量編碼器輸出時(shí)序如圖1所示[1]。

        圖1 增量編碼器時(shí)序圖

        2 測(cè)速算法原理

        2.1 M/T測(cè)速算法原理

        M/T法測(cè)速原理是M法(頻率法)和T法(周期法)的結(jié)合,其方式為在一定時(shí)間范圍內(nèi),同時(shí)對(duì)光電編碼器輸出脈沖個(gè)數(shù)M1和捕獲時(shí)鐘的個(gè)數(shù)M2進(jìn)行計(jì)數(shù),用M2計(jì)算出的時(shí)間替代定時(shí)器的時(shí)間進(jìn)行轉(zhuǎn)速的計(jì)算[1]。其測(cè)速原理如圖2所示。

        圖2 M/T測(cè)速算法測(cè)速原理

        假設(shè)時(shí)鐘脈沖頻率為fclk,編碼器分辨率為N,M1為時(shí)間Tc內(nèi)編碼器脈沖計(jì)數(shù),M2為時(shí)間Tc內(nèi)高頻時(shí)鐘周期計(jì)數(shù),則轉(zhuǎn)子的轉(zhuǎn)速v(單位:r/min)可表示為:

        (1)

        在進(jìn)行計(jì)數(shù)過(guò)程中,由于檢測(cè)時(shí)鐘脈沖計(jì)數(shù)可能出現(xiàn)±1個(gè)脈沖誤差[2],因此M/T法測(cè)得電機(jī)轉(zhuǎn)速誤差Δv為:

        (2)

        相對(duì)誤差為:

        (3)

        2.2 歸一化

        歸一化也稱(chēng)標(biāo)幺化。歸一值(標(biāo)幺值)是電力系統(tǒng)分析和工程計(jì)算中常用的數(shù)值標(biāo)記方法,表示各物理量及參數(shù)的相對(duì)值,單位為pu(也可以認(rèn)為其為無(wú)量綱)[3]。歸一化是相對(duì)于某一基準(zhǔn)值而言的。同一有名值,選取基準(zhǔn)不同,其歸一值也不同,其關(guān)系如下:

        (4)

        在伺服電機(jī)控制系統(tǒng)中,由于各種變量單位及范圍不同,在采用浮點(diǎn)類(lèi)型數(shù)據(jù)進(jìn)行表示時(shí)計(jì)算性能較差,同時(shí)耗時(shí)較長(zhǎng),也不便于算法的移植。在FPGA、DSP等設(shè)備中,往往采用定點(diǎn)數(shù)進(jìn)行數(shù)據(jù)的計(jì)算,這也就意味著采用實(shí)際值參與算法運(yùn)算的不可行性[4]。因而歸一化的引入有助于算法的定點(diǎn)化實(shí)現(xiàn),同時(shí)也便于算法移植,減少計(jì)算周期。以Q15格式(1位符號(hào)位,15位小數(shù)位)為例,變量定點(diǎn)化計(jì)算方式為:

        (5)

        基準(zhǔn)值的選取往往采用變量的額定值。經(jīng)過(guò)歸一化處理,變量取值范圍被約束在[-1,+1]區(qū)間之間,各變量運(yùn)算過(guò)程中不存在取值范圍不同的問(wèn)題。

        2.3 變M/T歸一化測(cè)速算法原理

        M/T算法方法是統(tǒng)計(jì)一段時(shí)間內(nèi)編碼器脈沖計(jì)數(shù)與高頻時(shí)鐘計(jì)數(shù)來(lái)完成測(cè)速;為了兼顧算法在低速和高速時(shí)測(cè)量的可用性,其選取的統(tǒng)計(jì)時(shí)間往往較大,以確保無(wú)論在高速還是低速情況下測(cè)速時(shí)間窗口內(nèi)均有足夠的編碼器計(jì)數(shù)脈沖。正是由于這一點(diǎn)導(dǎo)致M/T算法在低速模式下實(shí)時(shí)性較差的不足。

        結(jié)合M/T算法測(cè)速原理,當(dāng)伺服電機(jī)運(yùn)轉(zhuǎn)在低速模式下,為提高速度測(cè)量實(shí)時(shí)性,可采用縮短采樣時(shí)間的方法。假設(shè)電機(jī)轉(zhuǎn)速為v,增量編碼器分辨率為N,則增量編碼器單個(gè)脈沖周期時(shí)長(zhǎng)t(單位:s)為:

        (6)

        可見(jiàn),增量編碼器單個(gè)脈沖周期與電機(jī)轉(zhuǎn)速成反比。在低速情況下,可通過(guò)減少統(tǒng)計(jì)的編碼器脈沖個(gè)數(shù)來(lái)減少算法響應(yīng)時(shí)間。由此在系統(tǒng)運(yùn)行過(guò)程中可通過(guò)實(shí)時(shí)監(jiān)測(cè)編碼器脈沖時(shí)長(zhǎng)來(lái)動(dòng)態(tài)調(diào)節(jié)測(cè)速時(shí)間以加快系統(tǒng)響應(yīng)。

        假定轉(zhuǎn)速測(cè)量周期為T(mén),則在測(cè)量周期內(nèi)通過(guò)的增量編碼器脈沖數(shù)M1為:

        (7)

        可見(jiàn),M1與轉(zhuǎn)速v成正比。通過(guò)針對(duì)不同轉(zhuǎn)速范圍設(shè)定不同的M1值可使得伺服電機(jī)無(wú)論高速運(yùn)行還是低速運(yùn)行均能有較高的測(cè)量精度以及較短的響應(yīng)時(shí)間。同時(shí)對(duì)伺服電機(jī)轉(zhuǎn)速測(cè)量歸一化[5],式(1)將變?yōu)椋?/p>

        (8)

        式中:vrated為伺服電機(jī)的額定轉(zhuǎn)速,該處采用Q15數(shù)據(jù)格式。

        變M/T歸一化測(cè)速算法能夠在保證測(cè)量精度的同時(shí),有效改善傳統(tǒng)M/T測(cè)量算法低速實(shí)時(shí)性較差問(wèn)題,對(duì)速度的變化將更敏感,同時(shí)歸一化設(shè)計(jì)思路有利于定點(diǎn)化實(shí)現(xiàn)及算法移植。

        2.4 Booth算法

        在FPGA程序設(shè)計(jì)實(shí)現(xiàn)中,對(duì)于運(yùn)算中的乘除法操作往往基于片內(nèi)DSP運(yùn)算單元進(jìn)行。對(duì)于衛(wèi)星上設(shè)備而言,其所選用芯片型號(hào)往往資源受限較多,Booth算法[6]能夠有效降低算法對(duì)片上DSP單元的依賴。

        Booth算法采用相加減的操作計(jì)算補(bǔ)碼數(shù)據(jù)的乘積,其對(duì)乘數(shù)從最低位開(kāi)始判斷,根據(jù)后兩個(gè)數(shù)據(jù)位的情況進(jìn)行加法、減法或僅僅進(jìn)行移位操作。判斷的兩個(gè)數(shù)據(jù)位為當(dāng)前位及其右邊的位(初始時(shí)需要增加一個(gè)輔助位0),移位操作是向右移動(dòng)。假定被乘數(shù)A及乘數(shù)B位寬為N,算法實(shí)現(xiàn)思路為:

        (1) 乘數(shù)B“負(fù)一位”補(bǔ)零,乘積項(xiàng)P(2N+1位寬)寄存器清零;

        (2) 乘數(shù)B填入P低N+1位;

        (3) 按照表1對(duì)乘積項(xiàng)P低兩位進(jìn)行判定,根據(jù)判定結(jié)果對(duì)乘積項(xiàng)P高N位進(jìn)行+A、-A或無(wú)操作,無(wú)視符號(hào)位溢出;

        表1 Booth算法累加規(guī)則

        (4) 判定乘積項(xiàng)P最高位,若為0則P右移高位補(bǔ)零,反之右移一位補(bǔ)1;

        (5) 重復(fù)步驟(2)-步驟(4)N次;

        (6) 乘積項(xiàng)P前2N位即為乘積項(xiàng)計(jì)算結(jié)果。

        Booth算法能夠有效利用FPGA的移位特性、簡(jiǎn)化乘法計(jì)算步驟、對(duì)于N位乘法計(jì)算其僅需N個(gè)時(shí)鐘周期。

        同時(shí)針對(duì)式(8)中的常量乘數(shù)項(xiàng)借鑒Booth算法編碼規(guī)則可修改為:

        (9)

        通過(guò)將常量乘法轉(zhuǎn)換為移位操作能夠進(jìn)一步降低對(duì)乘法器的依賴。

        3 算法實(shí)現(xiàn)

        為加快系統(tǒng)響應(yīng),算法設(shè)計(jì)基于FPGA平臺(tái)進(jìn)行實(shí)現(xiàn)。FPGA基于LUT+FF的結(jié)構(gòu)使得算法能夠高度并行化[7]。變M/T歸一化測(cè)速算法分為預(yù)處理模塊、速度區(qū)間預(yù)測(cè)模塊及速度測(cè)量模塊。其設(shè)計(jì)框圖如圖3所示。

        圖3 變M/T歸一化測(cè)速算法設(shè)計(jì)框圖

        3.1 預(yù)處理模塊

        預(yù)處理模塊包括信號(hào)同步、正交編碼、方向預(yù)測(cè)三部分功能。

        在FPGA設(shè)計(jì)中,對(duì)于外部多比特信號(hào)的采樣牽涉到多比特信號(hào)跨時(shí)鐘域處理從而避免亞穩(wěn)態(tài)情況。但正如圖1所示,增量編碼器A、B兩相信號(hào)相差90°,在同一時(shí)間只有一個(gè)比特位發(fā)生信號(hào)跳轉(zhuǎn),類(lèi)似于格林編碼,故而信號(hào)同步邏輯可通過(guò)單比特信號(hào)跨時(shí)鐘域處理方式進(jìn)行信號(hào)的同步。相比于多比特信號(hào)跨時(shí)鐘域處理,單比特信號(hào)跨時(shí)鐘域處理采用寄存器打拍形式即可,資源消耗較少[8]。

        增量編碼器A、B兩相信號(hào)在一個(gè)脈沖周期內(nèi)分別有兩個(gè)狀態(tài)、通過(guò)正交編碼的處理,可形成四個(gè)狀態(tài)。在此處設(shè)計(jì)中采用“異或”邏輯對(duì)兩相信號(hào)處理,可獲得更高的分辨率。而方向預(yù)測(cè)單元通過(guò)A、B兩相相位關(guān)系獲得電機(jī)轉(zhuǎn)速方向。

        3.2 速度區(qū)間預(yù)測(cè)模塊

        速度區(qū)間預(yù)測(cè)模塊包括脈沖計(jì)時(shí)單元、超時(shí)保護(hù)單元及速度預(yù)測(cè)單元。

        由式(6)可知,增量編碼器單個(gè)輸出脈沖周期與轉(zhuǎn)子轉(zhuǎn)速成反比,據(jù)此可由編碼器單個(gè)脈沖周期來(lái)預(yù)判電機(jī)轉(zhuǎn)速區(qū)間范圍。

        脈沖計(jì)時(shí)單元基于系統(tǒng)時(shí)鐘對(duì)由正交編碼輸出信號(hào)單個(gè)脈沖信號(hào)進(jìn)行計(jì)時(shí),獲取單個(gè)脈沖時(shí)間,同時(shí)在超時(shí)保護(hù)單元中設(shè)置計(jì)數(shù)閾值以避免在超低速情況下脈沖計(jì)時(shí)單元長(zhǎng)時(shí)間無(wú)有效輸出的情況。

        速度預(yù)測(cè)單元根據(jù)編碼器單個(gè)脈沖時(shí)長(zhǎng)決定M/T測(cè)速法脈沖計(jì)數(shù)M1值,為節(jié)省資源開(kāi)銷(xiāo)及較少計(jì)算量,可根據(jù)脈沖時(shí)長(zhǎng)區(qū)間指定不同的M1值,而不必按照式(7)的線性關(guān)系確定。

        3.3 速度測(cè)量模塊

        速度測(cè)量模塊包括脈沖計(jì)數(shù)單元、時(shí)鐘計(jì)時(shí)單元、轉(zhuǎn)速計(jì)算單元及歸一化單元。

        速度測(cè)量模塊每完成一次速度測(cè)量則從速度區(qū)間預(yù)測(cè)模塊獲取脈沖計(jì)數(shù)值M1作為下次速度檢測(cè)時(shí)脈沖計(jì)數(shù)。脈沖計(jì)數(shù)單元?jiǎng)t完成正交編碼單元脈沖計(jì)數(shù),并由時(shí)鐘計(jì)時(shí)單元基于系統(tǒng)時(shí)鐘統(tǒng)計(jì)M1個(gè)編碼脈沖所占用的時(shí)鐘節(jié)拍M2。

        轉(zhuǎn)速計(jì)算單元與歸一化單元完成伺服電機(jī)轉(zhuǎn)速的計(jì)算及歸一化。系統(tǒng)運(yùn)行之前首先獲取電機(jī)的額定轉(zhuǎn)速值,通過(guò)式(7)完成電機(jī)的轉(zhuǎn)速歸一化化測(cè)量。

        4 仿真結(jié)果與分析

        實(shí)驗(yàn)設(shè)計(jì)采用Xilinx A7系列芯片作為系統(tǒng)主控芯片,基于VIVADO完成算法的實(shí)現(xiàn)及仿真[9]。算法設(shè)計(jì)資源占用情況及部分仿真圖如圖4、圖5所示。系統(tǒng)時(shí)鐘頻率50 MHz,編碼器分辨率為2 048線,電機(jī)額定轉(zhuǎn)速4 500 r/min。

        圖4 資源利用報(bào)告

        圖5 算法仿真波形

        從資源利用報(bào)告上看,整體設(shè)計(jì)上僅消耗2 260 LUT、5 609 FF及一個(gè)DSP運(yùn)算單元用于除法操作,相對(duì)于整體片上資源而言只占用了非常小的一部分,而B(niǎo)ooth算法的引入也極大降低了算法對(duì)DSP的依賴性。圖5顯示了當(dāng)測(cè)量轉(zhuǎn)速為+5 r/min、-5 r/min時(shí)的標(biāo)幺化輸出結(jié)果分別為0x24、0xffdc,與相應(yīng)轉(zhuǎn)速理論歸一值一致。

        針對(duì)不同轉(zhuǎn)速輸入,實(shí)驗(yàn)仿真結(jié)果及其絕對(duì)誤差分別如表2、圖6所示。

        表2 實(shí)驗(yàn)仿真結(jié)果

        圖6 絕對(duì)誤差統(tǒng)計(jì)圖

        從仿真結(jié)果來(lái)看,以歸一值表示時(shí)測(cè)量誤差在±2范圍之內(nèi),且在低速時(shí)有較高的準(zhǔn)確度。轉(zhuǎn)速測(cè)量值誤差最大不超過(guò)±0.4 r/min,而在低速范圍-200~200 r/min內(nèi),絕對(duì)誤差不超過(guò)0.1 r/min。誤差的存在主要由于:

        (1) 歸一化量化誤差。歸一化由于采用定點(diǎn)數(shù),故在進(jìn)行轉(zhuǎn)換時(shí)會(huì)引入一定誤差,誤差范圍在:

        (2) 由于定點(diǎn)化的實(shí)現(xiàn)方式,FPGA在運(yùn)算過(guò)程中會(huì)存在位寬截取情況,引入一定誤差。

        變M/T歸一化測(cè)速算法及普通M/T測(cè)速算法(取M1值為128)不同轉(zhuǎn)速下的響應(yīng)時(shí)間對(duì)比結(jié)果如圖7所示。

        圖7 響應(yīng)時(shí)間對(duì)比對(duì)數(shù)圖

        根據(jù)圖7對(duì)比,當(dāng)電機(jī)處于低速運(yùn)行時(shí),變M/T歸一化算法在響應(yīng)時(shí)間上相比于M/T算法有極大的縮減,當(dāng)轉(zhuǎn)速低于50 r/min時(shí)響應(yīng)時(shí)間能縮短25倍以上。這對(duì)于電機(jī)在低速運(yùn)行時(shí)提高系統(tǒng)的靈敏度有極大的改善和幫助。

        5 結(jié) 語(yǔ)

        本文針對(duì)伺服電機(jī)的測(cè)速問(wèn)題提出了一種基于FPGA的變M/T歸一化測(cè)速算法。通過(guò)實(shí)驗(yàn)仿真表明,該算法無(wú)論在低速范圍內(nèi)還是高速范圍內(nèi)均有較高的測(cè)速精度,同時(shí)具有快速響應(yīng)的特點(diǎn)。歸一化的設(shè)計(jì)使得算法能夠針對(duì)不同參數(shù)型號(hào)編碼器及永磁同步電機(jī)均能有較高的測(cè)量精度,也廣泛適用于伺服電機(jī)控制系統(tǒng)中的速度控制應(yīng)用,避免因不同變量的單位數(shù)制問(wèn)題引入的計(jì)算精度與計(jì)算誤差。同時(shí)Booth算法的引入也極大降低了算法對(duì)DSP的依賴性。本文算法為空間材料科學(xué)實(shí)驗(yàn)裝置中永磁同步電機(jī)的速度檢測(cè)方式提供了一種參考設(shè)計(jì)思路。

        猜你喜歡
        伺服電機(jī)編碼器時(shí)鐘
        別樣的“時(shí)鐘”
        專(zhuān)利名稱(chēng):一種適應(yīng)壓鑄環(huán)境的伺服電機(jī)
        古代的時(shí)鐘
        生產(chǎn)線中的伺服電機(jī)定位控制
        電子制作(2018年17期)2018-09-28 01:57:00
        基于FPGA的同步機(jī)軸角編碼器
        伺服電機(jī)控制技術(shù)的應(yīng)用及發(fā)展趨向分析
        基于PRBS檢測(cè)的8B/IOB編碼器設(shè)計(jì)
        有趣的時(shí)鐘
        淺說(shuō)伺服電機(jī)位置控制下的定位問(wèn)題
        時(shí)鐘會(huì)開(kāi)“花”
        久久精品国产亚洲av一般男女| 国产伦精品一区二区三区视| 久久精品成人免费观看97| 国产精品黄页免费高清在线观看| 我要看免费久久99片黄色| 超碰cao已满18进入离开官网 | 亚洲熟妇20| 男女上床视频免费网站| 久久一区二区三区少妇人妻| 九色综合九色综合色鬼| 久久久久久久99精品国产片| 1234.com麻豆性爰爱影| 午夜视频在线观看国产19| av国产传媒精品免费| 亚洲中文字幕无码永久在线| 特级毛片全部免费播放a一级| 日本一区二区三区高清视| 色欲欲www成人网站| 抽搐一进一出试看60秒体验区 | 91精品啪在线观看国产色| 中文字幕无码乱人伦| 色八a级在线观看| 人妻少妇无码中文幕久久| 老岳肥屁熟女四五十路| 把女人弄爽特黄a大片| 国产性猛交╳xxx乱大交| 午夜无码无遮挡在线视频| 亚洲中文字幕高清av| 成人国产精品一区二区网站公司| 国产精品黄网站免费观看| 91青青草在线观看视频| 国产香蕉一区二区三区在线视频| 日日碰狠狠添天天爽无码 | 亚洲精品国产一区二区免费视频 | 国产精品h片在线播放| 国产成人+亚洲欧洲+综合| 免费在线观看亚洲视频| 日韩亚洲精品国产第二页| 中文字字幕在线精品乱码| 91美女片黄在线观看| 精品福利一区二区三区|