国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的速度和位置測量板卡的設(shè)計與實現(xiàn)

2014-09-23 03:20:08徐博峰李秀娟
電子設(shè)計工程 2014年13期
關(guān)鍵詞:存器板卡計數(shù)器

徐博峰,李秀娟

(南京航空航天大學(xué) 江蘇 南京 210016)

基于FPGA的速度和位置測量板卡的設(shè)計與實現(xiàn)

徐博峰,李秀娟

(南京航空航天大學(xué) 江蘇 南京 210016)

針對增量式光電編碼器經(jīng)典速度測量算法M/T法低速采樣時間過長和位置測量算法精度不高的問題,本文基于定采樣周期M/T法設(shè)計實現(xiàn)了速度和位置測量板卡。采用Xilinx公司的XC3S400 FPGA為核心控制芯片進行設(shè)計,并設(shè)計PC104總線接口實現(xiàn)板卡與控制器的數(shù)據(jù)通信。該板卡接收處理光電編碼器的反饋脈沖得到速度和位置參數(shù),將數(shù)據(jù)通過PC104總線接口傳遞給控制器。實驗表明,板卡的最小采樣時間達到1 ms,并且位置測量精度可達5×10-5。

光電編碼器;速度和位置測量算法;FPGA;PC104

增量式光電編碼器作為速度和位置傳感器被廣泛應(yīng)用于伺服系統(tǒng)。理論上,光電編碼器反饋脈沖的頻率對應(yīng)被測軸轉(zhuǎn)速,反饋脈沖個數(shù)的累加值對應(yīng)位置信息。經(jīng)典的速度測量方法有M法、T法和M/T法3種:其中M法通過計取固定時間間隔內(nèi)光電編碼器的反饋脈沖數(shù)計算當前轉(zhuǎn)速,適用于高速場合;T法利用高頻脈沖測量相鄰反饋脈沖的時間間隔計算當前轉(zhuǎn)速,適用于低速場合;M/T法不僅測量固定時間間隔內(nèi)反饋脈沖的增量值,而且計數(shù)該時間內(nèi)的高頻脈沖數(shù)。雖然M/T法克服了M法和T法測速范圍有限的缺點,在高速和低速段都具有較高的分辨率及較低的測速誤差,但是存在低速采樣時間過長等問題。經(jīng)典的位置測量方法按轉(zhuǎn)向的正負對反饋脈沖進行增減計數(shù),然后將計數(shù)值乘以脈沖當量K得到當前位置信息,可見其測量精度取決于脈沖當量。

本文以定采樣周期M/T法為基礎(chǔ),它解決了經(jīng)典M/T法低速檢測時間過長的問題,保證每一固定周期都能采樣到數(shù)據(jù)。此外,該算法充分利用反饋脈沖的位置信息和時間信息,得到了比一個脈沖當量K更為精確的位置信息[1]。本文利用FPGA設(shè)計實現(xiàn)定采樣周期M/T法,并設(shè)計PC104總線接口滿足板卡與控制器數(shù)據(jù)通信的要求[2]。

1 總體方案

速度和位置測量板卡接收光電編碼器的反饋脈沖信號,通過差分電路將其轉(zhuǎn)換為單端信號消除共模干擾,然后在FPGA中對脈沖處理得到速度和位置參數(shù),最后將參數(shù)通過PC104數(shù)據(jù)接口傳遞給控制器。速度和位置測量板卡除差分電路以外的功能均通過FPGA設(shè)計實現(xiàn) (如圖1所示),因此FPGA是本板卡的核心芯片。速度和位置測量板卡主要包括倍頻辨向模塊、定采樣周期M/T法模塊和PC104數(shù)據(jù)接口模塊。

圖1 FPGA結(jié)構(gòu)框圖Fig.1 Structure diagram of FPGA

1.1 倍頻辨向模塊

光電編碼器的輸出反饋脈沖包括相位差90°的A、B信號以及零位脈沖Z。A、B之間的相位關(guān)系標志被測軸的轉(zhuǎn)向,即A相超前B相90°表示正轉(zhuǎn),滯后90°表示反轉(zhuǎn);Z脈沖起到參考零點的作用。一個周期內(nèi)A、B兩路信號的相對位置變換了4次,即正轉(zhuǎn)A、B按00-10-11-01循環(huán)輸出,反轉(zhuǎn)遵循00-01-11-10的規(guī)律。倍頻辨向模塊通過檢測A、B信號的狀態(tài)變化輸出四倍頻及方向信號,不僅提高了速度和位置測量的精度,還起到抗干擾的作用。

1.2 定采樣周期M/T法模塊

定采樣周期M/T法模塊分為速度測量電路和位置測量電路兩部分,圖 給出了該算法的硬件原理及時序圖。定采樣周期M/T法對高頻脈沖fc兩級鎖存的設(shè)計確保實際檢測起始點Tk超前于采樣周期Tn,這解決了M/T法在低速時檢測時間過長的問題,保證每個采樣周期內(nèi)都能成功采集到數(shù)據(jù)。

圖2 定采樣周期M/T法原理及時序圖Fig.2 Schematic and Sequence diagram of fixed sampling period M/T algorithm

速度測量硬件電路由速度計數(shù)器及其數(shù)據(jù)鎖存器Cm,以及高頻脈沖計數(shù)器及其兩級數(shù)據(jù)鎖存器Cf和Ct構(gòu)成;其中速度鎖存器Cm和高頻脈沖鎖存器Ct由采樣脈沖觸發(fā),輔助高頻脈沖鎖存器Cf由反饋脈沖觸發(fā)。通過差分處理得到當前周期Tn內(nèi)的轉(zhuǎn)速增量Cm和高頻脈沖增量Ct,并設(shè)高頻脈沖的頻率為fc,脈沖當量為K,那么計算可得轉(zhuǎn)速為:

位置測量硬件電路同樣采用高頻脈沖的兩級鎖存設(shè)計,除此之外還包括位置計數(shù)器及其數(shù)據(jù)鎖存器Cmm,以及輔助位置鎖存器Ctt。由圖2可知,dTn-1和dTn這兩個時間差所對應(yīng)的位置變化小于一個脈沖當量K,位置測量算法將上述時間差內(nèi)的位置變化加入到位置信息中,提高了位置測量的分辨率和精度。dTn通過差分當前周期輔助位置鎖存器Ctt和脈沖鎖存器Ct得到,接著將dTn乘以速度值Vn可得位置變化。位置鎖存器Cmm計取了反饋脈沖的變化值,再加上dTn-1和dTn內(nèi)位置變化,便能計算出精確的位置信息[3]。

2 各個模塊Verilog實現(xiàn)

根據(jù)速度和位置測量板卡的總體設(shè)計方案,利用Verilog設(shè)計實現(xiàn)各模塊。

2.1 倍頻辨向模塊

本模塊在FPGA系統(tǒng)時鐘clk上升沿檢測A、B的電平,并與上一clk記錄的狀態(tài)進比較:當狀態(tài)變化符合00-10、10-11、11-01、01-00時,表明A超前B相 90°,并且 A或B產(chǎn)生一個邊沿跳變,此時光電編碼器正轉(zhuǎn)那么置1方向信號,同時輸出一個計數(shù)脈沖,這樣一個周期內(nèi)將產(chǎn)生4個計數(shù)脈沖實現(xiàn)了四倍頻;當變化對應(yīng) 00-01、01-11、11-10、10-00時,標志A滯后B相 90°,光電編碼器反轉(zhuǎn)則清零方向信號,并輸出一個計數(shù)脈沖;當變化符合00-00、01-01、10-10、11-11時,說明光電編碼器處于換向階段,或者對應(yīng)正反轉(zhuǎn)的中間狀態(tài),此時保持方向信號并且不輸出計數(shù)脈沖;當變化為 00-11、01-10、10-01、11-00 時, 說明 A、B 信號受到干擾而產(chǎn)生了錯誤的狀態(tài)翻轉(zhuǎn),此時保持方向信號并且不輸出計數(shù)脈沖,達到了抗干擾的目的。

2.2 定采樣周期M/T法模塊

分析定采樣周期M/T法模塊可知,它主要由計數(shù)器和鎖存器組成,其中計數(shù)器對脈沖個數(shù)進行計數(shù),得到的計數(shù)值存于鎖存器中等待數(shù)據(jù)接口模塊讀取。

按計數(shù)方式的不同,計數(shù)器又可細分為增計數(shù)器和可逆計數(shù)器。其中高頻脈沖計數(shù)器和速度計數(shù)器都采用增計數(shù),在檢測到計數(shù)脈沖有效時加1計數(shù)值。位置計數(shù)器采用可逆計數(shù)的方式,在計數(shù)脈沖有效時通過方向脈沖決定采取增或減計數(shù)。由于對增量式光電編碼器的反饋脈沖計數(shù)只能獲得轉(zhuǎn)臺的相對位置,因此在計數(shù)器斷電或控制系統(tǒng)上電之前,都要對計數(shù)器所存數(shù)值進行校正,即歸零。為了實現(xiàn)歸零操作,計數(shù)器除可逆計數(shù)外還需具備清零以及置數(shù)等功能。

鎖存器在采樣脈沖T有效時,鎖存當前數(shù)據(jù)供接口電路讀取,其中采樣周期大小取決于控制器對速度和位置的讀取頻率??紤]到數(shù)據(jù)讀取的安全性,控制器讀操作前必須首先完成各鎖存器的數(shù)據(jù)鎖存工作,即通過控制器對板卡的寫信號產(chǎn)生采樣脈沖T觸發(fā)鎖存器的鎖存工作[4]。

本模塊設(shè)計了4個雙字鎖存器暫存速度和位置參數(shù),因此開辟4個雙字的I/O地址空間。控制器對I/O地址的讀操作實現(xiàn)鎖存器數(shù)據(jù)的讀取,寫操作為板卡提供清零、置數(shù)及采樣脈沖等信號。

2.3 PC104數(shù)據(jù)接口模塊

PC104總線是一種專為嵌入式控制而定義的工業(yè)控制總線,它具有小尺寸結(jié)構(gòu)、抗震性極佳的堆棧式連接、低功耗總線驅(qū)動等優(yōu)點,廣泛應(yīng)用于機載設(shè)備的開發(fā)中。此外,它是一個8位和16位兼容的總線,本模塊采用8位總線方式,采用以下總線信號完成通信設(shè)計:SD7~SD0:數(shù)據(jù)信號;SA9~SA0:地址信號;AEN:地址使能信號;IOR:I/O讀信號;IOW:I/O寫信號;電源信號[5]。

在PC104系統(tǒng)中,為防止I/O地址沖突,每個模塊都必須有一個單獨的基地址。速度和位置測量板卡采用10位地址譯碼,基地址通過板卡上的基地址跳線器進行設(shè)置。PC104數(shù)據(jù)接口采用I/O讀寫方式進行通信,利用狀態(tài)機設(shè)計實現(xiàn)本模塊如圖3所示。S0為空閑狀態(tài),此狀態(tài)為初始狀態(tài),一旦控制器對板卡進行操作,則進入S1狀態(tài)。S1狀態(tài)記錄控制器的地址、數(shù)據(jù)以及控制信號,并判斷控制器的操作類型。如果是讀操作進入S2狀態(tài),若是寫操作則進入S3狀態(tài)。在S2狀態(tài)中,將對應(yīng)地址的數(shù)據(jù)給到數(shù)據(jù)線,完成讀操作。在S3狀態(tài),將數(shù)據(jù)寫入對應(yīng)地址中,完成寫操作。讀操作或者寫操作完成之后,狀態(tài)又重新回到S0,等待控制器下次讀寫[6]。

圖3 PC104接口狀態(tài)機Fig.3 State Machine of PC104 interface

下面結(jié)合PC104的信號說明各狀態(tài)的作用。S0狀態(tài)檢測地址使能信號AEN,當AEN有效并且地址信號SA的高位與基地址一致,說明控制器對本板卡操作,則激活S1狀態(tài)。S1狀態(tài)記錄地址信號SA的低4位和數(shù)據(jù)信號SD,并判斷讀信號IOR或?qū)懶盘朓OW是否有效。當IOR有效說明目前進行讀操作進入S2狀態(tài),而IOW有效表明當前為寫操作進入S3狀態(tài)。S2狀態(tài)對地址進行分支選擇確定欲讀取數(shù)據(jù)的地址,輸出對應(yīng)地址的數(shù)據(jù)完成讀操作。S3狀態(tài)將數(shù)據(jù)寫入到對應(yīng)地址完成寫操作[7]。

3 測試平臺與仿真測試

用ISE軟件編程實現(xiàn)各模塊的功能,用ModelSim對其進行仿真測試,圖4為仿真結(jié)果。由圖可知,輸入的A、B信號模擬正轉(zhuǎn)、反轉(zhuǎn)及干擾三種狀態(tài),正轉(zhuǎn)和反轉(zhuǎn)下每周期都將輸出四個脈沖,并且正轉(zhuǎn)方向信號置1,反轉(zhuǎn)清零,而在干擾信號下不輸出計數(shù)脈沖,并且方向信號保持不變。速度計數(shù)器在計數(shù)脈沖有效時計數(shù),位置計數(shù)器根據(jù)方向信號對計數(shù)脈沖做增減計數(shù),速度鎖存器Cm、位置鎖存器Cmm在采樣周期有效時鎖存速度和位置值。輔助高頻脈沖鎖存器Cf及高頻脈沖鎖存器Ct對高頻脈沖進行兩級鎖存,保證實際采樣點超前于采樣周期,保證每個周期下都能采樣到數(shù)據(jù)。

圖4 仿真圖Fig.4 Simulation diagram

設(shè)計完成的速度和位置測量板卡如圖5所示,F(xiàn)PGA采用Xilinx公司的XC3S400,控制器部分選用盛博公司的SAT-1040板卡。使用36000刻線的增量式光電編碼器,高頻脈沖由40 MHz晶振提供,最小采樣周期可達1ms,在測量范圍內(nèi)速度、位置測量精度分別達到3×10-5、5×10-5。

圖5 速度和位置測量板卡Fig.5 Speed and position measurement card

4 結(jié)束語

文中以FPGA為核心控制芯片設(shè)計實現(xiàn)了速度和位置測量板卡,它以定采樣周期M/T法為基礎(chǔ)對光電編碼器的反饋脈沖處理得到表征速度和位置的參數(shù),通過PC104總線接口將數(shù)據(jù)傳遞給控制器計算得到精確的速度和位置信息。整個設(shè)計在FPGA內(nèi)完成,故硬件結(jié)構(gòu)簡介,可靠性強,抗干擾能力強;板卡的最小采樣時間達到1 ms,確保每一周期下都能采樣到可靠數(shù)據(jù),并將位置測量精度提高至5×10-5。

[1]石忠東,陳培正,陳定積,等.高精度數(shù)字測速及動態(tài)位置檢測算法[J].清華大學(xué)學(xué)報,2004,44(8):1021-1024.

SHI Zhong-dong,CHEN Pei-zheng,CHEN Ding-ji,et al.High resolution digitalvelocitydetection and dynamic position detection methods[J].J Tsinghua Univ,2004,44(8):1021-1024.

[2]徐文波,田耕.Xilinx FPGA開發(fā)實用教程[M].北京:清華大學(xué)出版社,2008.

[3]Richard C K.An enhanced constant sample-time digital tachometer through oversampling [J].Transactions of the Institute of Measurement and Control,2004,26(2):83-98.

[4]丁磊,馮永晉,張海笑.數(shù)字邏輯與EDA設(shè)計[M].西安:西安電子科技大學(xué),2012.

[5]潘啟勇,盧達.基于FPGA的電腦橫機控制器PC104總線接口設(shè)計[J].東南大學(xué)學(xué)報,2008,38(17):154-157.

PAN Qi-yong,LU Da.Design of PC104 bus interface for FPGA-based computerized flat knitter controller[J].Journal of Southeast University,2008,38(17):154-157.

[6]吳小虎.基于FPGA的PC/104和多路UART擴展系統(tǒng)的研究與發(fā)現(xiàn)[D].安徽:安徽大學(xué),2011.

[7]PC/104 Specification Version 2.6[S].PC/104 Embedded Consortium,2008.

Design and implementation of speed and position measurement card based on FPGA

XU Bo-feng,LI Xiu-juan
(Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China)

To figure out the disadvantages of long sampling period of classical speed algorithm M/T method under low speed and low precision of classical position algorithm,the speed and position measurement card is designed,which is based on fixed sampling period M/T algorithm.Adopts X3CS400 FPGA as the core control chip,and designs PC104 interface through which the board can communicates with the controller.After receiving and processing feedback pulse of optical encoder,the card transmits the speed and position data to the controller via PC104 interface.The result of experiments shows that the minimum sampling period can reach 1ms,and the precision of position measurement comes to 5×10-5.

optical encoder;speed and position algorithm;FPGA;PC104

TN310-34

A

1674-6236(2014)13-0149-03

2013-10-07 稿件編號:201310010

徐博峰(1990—),男,浙江樂清人,碩士。研究方向:信號檢測與控制技術(shù)。

猜你喜歡
存器板卡計數(shù)器
低面積與低延遲開銷的三節(jié)點翻轉(zhuǎn)容忍鎖存器設(shè)計
一種低成本的四節(jié)點翻轉(zhuǎn)自恢復(fù)鎖存器設(shè)計
采用虛擬計數(shù)器的電子式膜式燃氣表
煤氣與熱力(2022年2期)2022-03-09 06:29:30
一種低功耗的容軟錯誤鎖存器設(shè)計
基于PCI9054的多總線通信板卡的研制
基于FPGA的多通道模擬量采集/輸出PCI板卡的研制
一種基于光纖數(shù)據(jù)傳輸?shù)亩喟蹇ㄜ浖绦驘龑懠夹g(shù)
計數(shù)器競爭冒險及其處理的仿真分析
Grain型級聯(lián)反饋移存器的非奇異性判定
計算機工程(2014年3期)2014-06-02 07:48:40
一種通用模擬量及開關(guān)量信號采集板卡的設(shè)計
保亭| 都匀市| 洛南县| 大厂| 婺源县| 涿州市| 平武县| 上高县| 南丹县| 关岭| 定南县| 汉寿县| 子长县| 北票市| 辽阳市| 依兰县| 农安县| 乌拉特后旗| 开远市| 彰化市| 永胜县| 济宁市| 高青县| 灌南县| 曲周县| 望谟县| 会同县| 抚顺县| 合水县| 金溪县| 平泉县| 上蔡县| 江孜县| 东光县| 黄冈市| 榆中县| 图们市| 平武县| 剑川县| 耿马| 阳朔县|