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

        ?

        基于FPGA和PCI的高精度測速板卡的設計與實現(xiàn)

        2010-04-12 00:00:00李新安,李秀娟
        現(xiàn)代電子技術 2010年21期

        摘 要:經(jīng)典的碼盤數(shù)字測速方法有M法、T法、M/T法,但都有一定的不足。為了克服原有方法的不足,設計并實現(xiàn)了一種在較大速度范圍都有良好精度和良好快速性的測速方法。電路采用FPGA實現(xiàn),測速得到的數(shù)據(jù)通過PCI總線從設備控制器實現(xiàn)與控制計算機通信。從而根據(jù)實際傳輸?shù)男枰?,簡化了PCI從設備控制器,實現(xiàn)了PCI總線I/O普通讀與猝發(fā)讀數(shù)據(jù)的功能。

        關鍵詞:測速; FPGA; PCI; M/T

        中圖分類號:TN710-34文獻標識碼:A

        文章編號:1004-373X(2010)21-0131-04

        Design and Implementation of High Accuracy Tachometer Card Based on FPGA and PCI

        LI Xin-an, LI Xiu-juan

        (Automation Engineering College, Nanjing University of Aeronautics Astronautics, Nanjing 210016, China)

        Abstract: The classical digital tachometer methods contain M method, T method and M/T method, which have some disadvantages. An enhanced method, which has higher accuracy and better rapidity in large velocity range is designed and implemented to overcome the disadvantages of these methods. The electric circuit is achieved by FPGA, and the data of tachometer communicates with the control computer by PCI-slave device controller. According to the actual requirement, the PCI device controller implements the function of I/O operation which includes ordinary read and burst read.

        Keywords: tachometer; FPGA; PCI; M/T

        0 引 言

        增量式碼盤是一種原理簡單,抗干擾能力強,可靠性高,適合于長距離傳輸?shù)奈恢门c速度測量裝置,已成功應用于大量的控制系統(tǒng)中,極大地提高了其位置控制精度。理論上,只要測得碼盤輸出信號的頻率,即可得到被測軸的轉速,并且可以得到比模擬方法更高的測量精度。本文以增量式碼盤為基礎,設計實現(xiàn)一種在較寬速度范圍都有較高精度并且有良好反應速度的速度、位置測量裝置。

        利用增量式碼盤的反饋脈沖信號測量速度的典型方法有3種:M法、T法和M/T法。其中,M法是直接計取給定采樣周期內的反饋脈沖數(shù)來測量速度的,低速時會因為脈沖數(shù)少而影響測速精度;T法是通過測量兩個相鄰反饋脈沖的間隔時間來測量速度的,高速時則因為脈沖間隔短而導致精度不高;M/T法結合了前兩種方法的優(yōu)點,在大致相等的采樣間隔內,計取Cm個反饋脈沖,并同時計取這Cm個反饋脈沖間隔內插入的高頻時標信號數(shù)Cf,經(jīng)計算得到速度測量值。M/T法雖然克服了前兩種方法的缺點,但仍存在低速時采樣時機不確定,精度不高等問題,這給定周期采樣的數(shù)字伺服控制系統(tǒng)帶來很大的不便,所以又出現(xiàn)了變M/T法等方法,以進一步改善M/T法的性能和實用性[1-2]。

        本文利用FPGA實現(xiàn)了一種改進的M/T法,克服經(jīng)典M/T法的不足,其測速電路與控制器間的數(shù)據(jù)接口形式有PCI總線和雙端口RAM,便于在高性能控制系統(tǒng)中使用。

        1 總體方案

        根據(jù)控制系統(tǒng)的實際情況,所設計的測速板具有位置測量和速度測量功能,如圖1所示,由倍頻辨向模塊、改進M/T法測速模塊、PCI從設備控制器三個部分組成。

        圖1 總體設計方案

        1.1 倍頻辨向

        增量式碼盤的典型輸出是兩個相位差為90°的方波信號A,B以及零位脈沖信號Z(見圖2)。

        圖2 增量式碼盤輸出

        A,B之間的相位關系標志被測軸的轉向,即當正轉時A相超前B相90°,反轉時B相超前A相90°。對于每個確定的碼盤,其脈沖周期T對應的碼盤角位移固定為θ,故其量化誤差為θ/2 。如果能將A,B信號四倍頻,則計數(shù)脈沖的周期將減小到T/4,量化誤差下降為θ/8,從而使增量式碼盤的角位移測量精度提高4倍。從圖2可知,根據(jù)A,B兩方波信號之間相位關系的4次變化,即可產生四倍頻信號和辨向信號,這樣就可以實現(xiàn)增量式碼盤測量精度的提高[3]。

        1.2 改進的M/T測速算法

        圖3展示了改進M/T法的電路原理,這是實現(xiàn)高精度的硬件基礎。圖4為改進M/T法的時序圖。

        圖3 改進M/T法電路原理圖

        圖4 改進M/T法時序圖

        對圖3及其時序圖4的分析可以看出:本測速電路在每個反饋脈沖時鎖存高頻時鐘的計數(shù)值,兩個采樣周期間的高頻時標增量值Ct實際表示為T2前一個反饋脈沖上升沿到T4前一個反饋脈沖上升沿的高頻時標增量,而在采樣周期內每個反饋脈沖到來都對反饋脈沖計數(shù)器計數(shù),兩個采樣脈沖采得反饋脈沖增量值Cm實際表示為T1~T3之間的反饋脈沖增量值,位置的反饋脈沖增量值

        Cm′則是在Cm的基礎上考慮方向得到的,那么結合32位浮點運算,這種測速方法就解決了采樣時機不確定的缺點。

        根據(jù)上述分析,通過差分處理就可得到當前實際采樣間隔內的反饋脈沖增量值Cm和高頻時標增量值Ct:

        Cm=Cm(n)-Cm(n-1)

        Ct=Ct(n)-Ct(n-1)

        這樣得到的速度是當前實際采樣間隔內的平均速度:

        Vn=KRf0Cm/Ct

        式中:KR為反饋信號脈沖當量;f0為高頻時標頻率。

        在實際采樣點T2處,高頻時標信號f0的邊沿不能總與反饋脈沖信號plus的邊沿保持一致,因而會產生±1個高頻時標當量的計數(shù)誤差,從而影響這種測速算法的測速精度。因此高精度數(shù)字測速算法的測速相對誤差為:

        εv=v-v′v=kRf0Cm/Ct-kRf0Cm/(Ct±1)kRf0Cm/Ct=1f0T

        動態(tài)位置算法不僅關注已經(jīng)發(fā)生的反饋脈沖數(shù)量,也關注反饋脈沖的發(fā)生時刻,其硬件基礎是依據(jù)圖3所示邏輯電路的。根據(jù)當前有效采樣周期的定周期采樣點和實際采樣點之間的時間差:

        ΔT(n)=(Ct′(n)-Ct(n))/f0

        并根據(jù)改進的M/T法得到被測對象的平均速度vn,由vn和ΔTn相乘就可以計算出時間差ΔT(n)中所包含的動態(tài)位置信息,因此由當前有效采樣周期內的增量式高精度動態(tài)位置信息可以得出位置量:

        Pn=kRCm′+vnΔTn-vn-1ΔTn-1

        可根據(jù)這種方法完成測位置的功能[4-6]。

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

        根據(jù)圖1的總體設計方案,使用VHDL語言設計實現(xiàn)如下幾個模塊。

        2.1 倍頻辨向模塊

        為便于使用VHDL語言描述,對圖2的碼盤信號作如下分析:

        (1) 當碼盤正轉時,在一個周期T內,A,B兩相信號共有4次相對變化:00→10→11→01。這樣,根據(jù)前一次和當前的信號,就可以判斷方向,并產生四倍頻脈沖。

        (2) 同理當碼盤反轉時,也根據(jù)A,B兩相信號的4次相對變化:00→01→11→10,可以判斷方向,并產生四倍頻脈沖信號。

        (3) 當線路受到干擾或出現(xiàn)故障時,則可能出現(xiàn)其他狀態(tài)轉換過程,此時不產生脈沖。

        根據(jù)上述分析就可以設計出測速辨向模塊,當判斷正轉時,把方向輸出置‘1’,反向時置‘0’。

        2.2 改進M/T法測速模塊

        如圖3所示可以看出,本部分的VHDL設計分成兩個模塊:計數(shù)器模塊與鎖存器模塊。

        其中,計數(shù)器模塊分為兩種:高頻時標計數(shù)器和反饋脈沖計數(shù)器。高頻時標計數(shù)器在每個高頻時標的上升沿都做+1計數(shù),在每個反饋脈沖的上升沿對計數(shù)值鎖存。反饋脈沖計數(shù)器,需要兩個輸出:反饋脈沖計數(shù)值Cm、位置反饋脈沖計數(shù)值Cm′。其中,Cm的增量值用于速度的計算,所以在每一個反饋脈沖到來時,計數(shù)器都+1;Cm′的計數(shù)值用于位置的計算,所以它是在Cm的基礎上考慮了碼盤方向得到的計數(shù)值,在正轉時反饋脈沖計數(shù)器+1,反轉時-1,當零位脈沖Z有效時,對其置0。然后分別輸出Cm,Cm′,由此就可以得到反饋脈沖計數(shù)器模塊。

        在每個采樣周期的上升沿還要鎖存Cm,Ct的增量值和Ct′與Ct的差值,由于都做了差分處理,所以這三個鎖存器使用雙字就能滿足設計要求,而Cm′鎖存器在零位信號Z后不進行差分處理,若采用36 000刻增量式碼盤,并進行10 000倍頻,位置范圍為±720°,那么需要的最大計數(shù)值為:

        (36 000×10 000×720×2)/360=1 440 000 000

        可見,雙字鎖存器也能滿足設計要求。

        綜上所述,本設計設置了4個雙字信號鎖存器Cm,Cm′,Ct,Ct′,同時還需要對其控制輸出,所以在PCI從設備控制器中為I/O分配4個雙字的地址空間。然后根據(jù)PCI總線給出的地址信號PCI_AD[3:2]和數(shù)據(jù)輸出使能信號DATA_EN對這4個雙字寄存器尋址輸出[2,7]。

        2.3 PCI接口控制器

        PCI的時序規(guī)則和PCI的總線協(xié)議由PCI接口控制器實現(xiàn),同時它還負責傳遞地址和數(shù)據(jù)輸出使能信號給測速模塊,實現(xiàn)I/O口的基本讀與猝發(fā)讀數(shù)據(jù)功能。

        從設備控制器包括2個部分:奇偶校驗模塊和PCI從設備狀態(tài)機。

        2.3.1 奇偶校驗模塊

        PCI的奇偶校驗提供了一種機制來決定一件作業(yè)。該作業(yè)判斷主設備是否成功地尋址相應的從設備,且數(shù)據(jù)是否正確地在它們之間傳輸。通過該模塊完成數(shù)據(jù)傳輸過程中PCI_AD和PCI_CBE的偶校驗。偶校驗的輸出信號在地址和數(shù)據(jù)周期有效,其產生的規(guī)則是使偶校驗輸出、PCI_CBE、PCI_AD各位的‘1’的個數(shù)為偶數(shù)。那么采用把PCI_AD與PCI_CBE各位異或的方法,就可以實現(xiàn)偶校驗的功能。

        2.3.2 PCI從設備狀態(tài)機

        PCI從設備控制器是PCI接口設計的核心模塊,按功能來說,它要產生奇偶校驗和數(shù)據(jù)的使能信號,并根據(jù)PCI_AD和PCI_CBE產生讀地址,完成主從設備的握手信號,并且實現(xiàn)從設備狀態(tài)機在各個狀態(tài)之間的轉換。

        由于本設計只需要完成I/O讀操作,本狀態(tài)機設計配置空間的功能放在了從設備控制器來完成,同時刪去了PCI操作中對存儲器空間、配置空間的操作,結合PCI總線的傳輸時序,如圖5給出了其基本結構。

        (1) 空閑狀態(tài)為PCI從設備的初始狀態(tài),在沒有任何操作的時候,PCI從設備將始終保持這個狀態(tài);

        (2) 每次數(shù)據(jù)傳輸時首先傳出地址和命令字,根據(jù)地址和命令字確定是不是對本設備的訪問,并確定訪問的首地址;從設備則從命令字中識別該訪問是讀操作還是寫操作;

        (3) 讀訪問只有在信號IRDY,TRDY,DEVSEL都為低狀態(tài)時才能進行;

        (4) 猝發(fā)傳輸需要通過地址遞增邏輯來實現(xiàn)地址的自動遞加,其地址遞增的周期為數(shù)據(jù)周期和最后傳輸周期總和,在等待周期暫停遞增;

        (5) 主從設備中任一方?jīng)]有準備好,操作中都需要能夠引起等待狀態(tài)插入的活動;

        (6) 讀操作還有一個中間準備過程[8-10]。

        圖5 讀狀態(tài)機結構

        那么完成本狀態(tài)機需要6個狀態(tài):idle表示空閑狀態(tài);addr表示地址周期;turnad表示讀轉換周期;data表示數(shù)據(jù)傳輸周期;lasttra表示最后傳輸周期;wait表示等待周期;在各個狀態(tài)到來時還要對中間信號、輸出信號和本地信號執(zhí)行相應的操作:

        (1) idle,addr,turnad周期對PCI_TRDYn和PCI_DEVSELn置高電平;addr周期依據(jù)地址信號確定是否選中本機,識別是否為讀操作;addr周期輸出PCI_AD[3:2]對寄存器進行尋址,實現(xiàn)讀操作。

        (2) data,lasttra周期對PCI_TRDYn和PCI_DEVSELn置低電平;data,lasttra周期置DATA_EN有效并輸出。

        (3) addr,data,lasttra周期置奇偶校驗有效。

        (4) 等待周期置PCI_TRDYn和PCI_DEVSELn低電平。

        根據(jù)對PCI總線傳輸時序的分析,影響各個狀態(tài)相互轉化的因素是:幀同步信號PCI_FRAMEn、主設備準備好信號PCI_IRDYn、讀識別信號READn。其中,READn用來標識狀態(tài)addr產生的中間識別信號。

        3 測試平臺與仿真測試

        這種改進M/T數(shù)字測速及位置檢測算法的硬件采用Xilinx公司的FPGA XC3S400。使用36 000刻的增量式碼盤,速度環(huán)采樣周期T設定為1 ms,高頻時標信號的頻率為40 MHz,結合PC運算的數(shù)字測速算法可以在速度0.001~150(°)/s的范圍內獲得±2.5×10-5 s的測速精度。與此同時,高精度動態(tài)位置檢測算法可以使位置反饋的動態(tài)測量分辨率提高到10-2~10-5個脈沖當量。

        對編寫好的VHDL程序采用ISE進行綜合,并編寫測試平臺,用ModelSim對其進行仿真測試。圖6為PCI控制器的仿真圖,圖中state表示狀態(tài)機在內部轉換的過程,狀態(tài)1表示空閑狀態(tài),狀態(tài)2表示地址周期,狀態(tài)4表示讀轉換周期,狀態(tài)8表示最后傳輸周期,狀態(tài)9表示猝發(fā)讀寫周期。

        圖6 I/O讀操作

        該I/O讀操作,將地址為1的寄存器讀出。這里設定I/O地址為0X200~0X20F這4個雙字空間,那么在地址周期中地址0X204的2~3位尋址于寄存器的第一個雙字,其后緊跟的是讀的轉換周期,猝發(fā)讀寫周期和最后一位讀寫周期。可以看出,這兩個周期都對這個寄存器進行了讀操作。

        4 結 語

        本文介紹了使用FPGA設計和實現(xiàn)基于PCI總線傳輸?shù)母倪M型M/T法測速電路,它克服了經(jīng)典測速方法的幾個缺點,在較大速度范圍內都具有良好的精度。同時使用FPGA設計和實現(xiàn)了PCI從設備控制器,使得測速電路的設計與PCI總線的設計成為一個整體,節(jié)省了板上器件,也使得整個設計信號在FPGA內部流動,具有更加良好的抗干擾能力和穩(wěn)定性。

        參考文獻

        [1]趙巖.編碼器測速方法的研究[D].長春:中國科學院長春光學精密機械與物理研究所,2002.

        [2]何勇,范永坤,王濤,等.基于FPGA的增量式光電編碼器計數(shù)電路設計[J].儀器儀表用戶,2008,15(3):90-92.

        [3]韓壯志,李偉王,田苗,等.光電碼盤四倍頻分析[J].自動化與儀器儀表,2000(12):38-40.

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

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

        [6]LORENZ R D. High-resolution velocity estimation for all-digital, AC servo drives [J]. IEEE Trans. Industry Applications, 1991, 27(4): 701-705.

        [7]李勇,艾竹君,史亞彬,等.基于FPGA的脈沖信號發(fā)生器的設計[J].低溫與超導,2006,34(6):478-480.

        [8]王麗媛.基于FPGA的PCI總線接口控制器的設計[D].南京:南京航空航天大學,2008.

        [9]怯肇乾.簡易通用型PCI接口的VHDL-CPLD設計[J].國外電子元器件,2003(11):57-61.

        [10]PCI Special Interest Group. PCI local bus specification[S]. [2008-12-09]. http://www.elecfans.com.

        [11]孫紹功,張文明,劉兆甲,等.基于CPLD的電機數(shù)字測速及顯示[J].大電機技術,2009(1):64-66.

        作者簡介: 李新安 男,1986年出生,江西貴溪人,在讀研究生。主要研究方向為信號檢測與控制技術。

        av网站免费线看精品| 日韩精品视频免费福利在线观看| 国产一区二区精品在线观看| 激情人妻网址| 国产精品视频白浆免费看| 亚洲女同av在线观看| 狠狠躁夜夜躁av网站中文字幕 | 精品极品视频在线观看| 久久精品亚洲熟女av蜜謦| 国产乱国产乱老熟300部视频 | 日本成本人片视频免费| 熟妇人妻无码中文字幕| 亚洲香蕉毛片久久网站老妇人 | 国产女人精品视频国产灰线| 日韩精品久久久久久免费| 日本在线观看| 亚洲AV成人无码久久精品在| 男女动态视频99精品| 亚洲精品乱码久久久久蜜桃| 国自产偷精品不卡在线| 69国产成人综合久久精| 日本免费久久高清视频| 人妻无码中文字幕| 开心婷婷五月激情综合社区 | 亚洲一二三四五区中文字幕| 亚洲国产成人久久精品一区| 亚洲av日韩av在线观看| 精品国内自产拍在线视频| 久久精品国产亚洲av成人网| 国产一区二区三区我不卡| 忘忧草社区www日本高清| 国产农村妇女毛片精品久久久| 久久无人码人妻一区二区三区| 成年美女黄网站色大免费视频| 欧美亚洲日本国产综合在线| 国产啪精品视频网站免| 亚洲中文字幕久久在线| 99久久婷婷国产综合精品电影| 久久国产免费观看精品| 国产免费网站在线观看不卡| 亚洲视频在线观看|