<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于FPGA與有限狀態(tài)機的高精度測角系統的設計與實(shí)

基于FPGA與有限狀態(tài)機的高精度測角系統的設計與實(shí)

作者: 時(shí)間:2013-04-24 來(lái)源:網(wǎng)絡(luò ) 收藏

激光跟蹤測量系統(Laser Tracker System)是工業(yè)測量系統中常用的一種的測量?jì)x器,是近十年發(fā)展起來(lái)的新型大尺寸空間測量?jì)x器,不僅對靜止目標可以測量,而且對運動(dòng)目標也可以進(jìn)行跟蹤測量。它集合了激光測距技術(shù)、光電技術(shù)、精密機械技術(shù)、計算機及控制技術(shù)等各種先進(jìn)技術(shù),對空間運動(dòng)目標進(jìn)行跟蹤并實(shí)時(shí)測量目標的空間三維坐標。它具有快速、動(dòng)態(tài)、精度高等優(yōu)點(diǎn),適合于大尺寸工件配裝測量。在航空航天、機械制造、核工業(yè)、現代軍事等測量領(lǐng)域得到廣泛的應用。該系統的跟蹤精度在很大程度上依賴(lài)于轉臺的旋轉角度的測量精度。

本文引用地址:http://dyxdggzs.com/article/189624.htm

為了提高系統轉臺旋轉角度測量的精度,本系統采用高分辨率的光電編碼器來(lái)測量角度。光電編碼器是利用光柵衍射原理實(shí)現位移數字變換的,光電編碼器作為一種的測角傳感器已普遍應用于伺服跟蹤系統中,它具有精度高、響應快、性能穩定可靠等優(yōu)點(diǎn)。光電編碼器按編碼方式主要分為兩類(lèi):增量式與絕對式。由于增量式光電編碼器成本低、測角的精度高,因此本系統的增量式光電編碼器選用Renishaw公司的圓光柵。

然而,由于機械振動(dòng)或抖動(dòng)等原因,增量式編碼器的輸出脈沖會(huì )出現抖動(dòng)毛刺的現象,因此需要在對編碼器輸出脈沖進(jìn)行計數的過(guò)程中采取有效的方法來(lái)去掉抖動(dòng)干擾。本文介紹的方法,在上可以有效消除抖動(dòng)引起的計數干擾,提高計數的精度[1]。

1 方案設計

1.1 系統組成

激光跟蹤測量系統的核心處理模塊主要由ARM處理器,組成。為了充分利用ARM9微處理器的運算能力和的高速邏輯處理能力,在設計中對功能的實(shí)現進(jìn)行了劃分。ARM9 用于運動(dòng)控制平臺的控制并且與FPGA一起形成一個(gè)完整的應用平臺。FPGA主要完成編碼器的精確計數功能、與ARM9處理器數據通信、與激光測距儀數據通信功能。系統的組成框圖如圖1所示。本文重點(diǎn)介紹在FPGA上實(shí)現編碼器的輸出脈沖計數與角度測量。

1.2 增量式編碼器原理

增量型編碼器通常有3路信號輸出:A、B和Z,每路都是差分信號,共6路信號,信號采用TTL電平,A脈沖在前,B脈沖在后,A、B脈沖相差90°,每旋轉一圈發(fā)出一個(gè)基準脈沖Z,作為參考機械零位。Z相的波形中心對準A相輸出的波形中心。利用A相B相的相位差來(lái)進(jìn)行判相,A超前B 90°為正轉,反之B超前A 90°為反轉。

由于增量式編碼器不帶記憶功能,因此對外界因素引起的干擾非常敏感,在實(shí)際應用中,由于機械振動(dòng)、工作環(huán)境,電機負載等都無(wú)可避免地會(huì )產(chǎn)生震動(dòng),編碼器會(huì )在某一相的脈沖邊緣的地方出現抖動(dòng)的情況,因此有效濾掉脈沖的抖動(dòng)和毛刺,是提高計數精度的關(guān)鍵技術(shù)。編碼器輸出真實(shí)信號的波形如圖2所示[2-3]。

2 理論分析與算法

2.1 原理

在編碼器的一個(gè)輸出周期內,A、B兩相輸出信號共產(chǎn)生4個(gè)跳變沿,在A(yíng)、B方波信號的上升沿和下降沿分別計數,從而實(shí)現四倍頻計數的操作。本文通過(guò)FSM,對原始信號進(jìn)行四倍頻采樣控制,狀態(tài)機外加的一路高速同步時(shí)鐘信號作為狀態(tài)機的驅動(dòng)時(shí)鐘信號,從而有效濾掉抖動(dòng)干擾。

有限狀態(tài)機FSM(Finite State Machine)是一種時(shí)序電路,是數字系統中實(shí)現高效率可靠性邏輯控制的重要方法。標準狀態(tài)機可分為摩爾型Moore和米利型Mealy兩種類(lèi)型。Mealy狀態(tài)機的輸出是當前狀態(tài)和輸入信號的函數。在本設計中,對編碼器輸出信號進(jìn)行計數,采用的計數器是雙向計數器,既與當前編碼器所處于的電平組合有關(guān),又與前一個(gè)狀態(tài)有關(guān)。因此本設計采用Mealy狀態(tài)機。Mealy狀態(tài)機比Moore狀態(tài)機在狀態(tài)切換時(shí)提前一個(gè)同步時(shí)鐘, 因而具有較高的實(shí)時(shí)性。A、B兩相信號轉換狀態(tài)如圖3所示[4]。

在理想情況下, 若編碼器正向旋轉,A、B 電平的值為:00-10-11-01-00 ; 若編碼器反向旋轉, 則A、B 電平的值為:00-01-11-10-00 。但是在實(shí)際應用中, 輸入脈沖含有抖動(dòng)和毛刺,A、B 相脈沖的電平狀態(tài)會(huì )在狀態(tài)機中有效地跳轉, 抖動(dòng)之后, 由于計數器能夠正反向計數,因此最終的計數值會(huì )保持不變, 輸出的結果也保持不變, 達到了去抖動(dòng)的效果。有限狀態(tài)機設置了5 個(gè)狀態(tài):IDLE (S0) ,ALBL (S1) ,AHBL (S2) ,AHBH (S3) ,ALBH (S4) 。其中IDLE 為初始狀態(tài), 用于初始化計數器的計數器狀態(tài)。狀態(tài)機的狀態(tài)空間跳轉圖如圖4 所示[5]。

fpga相關(guān)文章:fpga是什么


脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>